@acorex/connectivity 19.2.12 → 19.2.16
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/api/lib/api-storage.service.d.ts +1 -1
- package/fesm2022/acorex-connectivity-api.mjs +2 -2
- package/fesm2022/acorex-connectivity-api.mjs.map +1 -1
- package/fesm2022/acorex-connectivity-mock.mjs +1155 -65
- package/fesm2022/acorex-connectivity-mock.mjs.map +1 -1
- package/mock/lib/application-management/application.seeder.d.ts +1 -1
- package/mock/lib/conversation/chat/chat.seeder.d.ts +1 -1
- package/mock/lib/conversation/comments/comment.seeder.d.ts +1 -1
- package/mock/lib/document-management/document-type/document-type.mock.d.ts +2 -0
- package/mock/lib/document-management/document-type/document-type.seeder.d.ts +8 -0
- package/mock/lib/document-management/file/file.seeder.d.ts +8 -0
- package/mock/lib/document-management/file/file.service.d.ts +24 -0
- package/mock/lib/document-management/folder/folder.mock.data.d.ts +3 -0
- package/mock/lib/document-management/folder/folder.seeder.d.ts +8 -0
- package/mock/lib/document-management/folder/folder.service.d.ts +22 -0
- package/mock/lib/document-management/folder/index.d.ts +1 -0
- package/mock/lib/form-template-management/category.seeder.d.ts +2 -1
- package/mock/lib/mock.module.d.ts +2 -1
- package/mock/lib/mock.strategy.d.ts +1 -0
- package/mock/lib/notification-management/template.seeder.d.ts +1 -1
- package/mock/lib/organization-management/organization-management.seeder.d.ts +1 -1
- package/mock/lib/platform-management/app-term/app-term.seeder.d.ts +1 -1
- package/mock/lib/platform-management/app-version/app-version.seeder.d.ts +1 -1
- package/mock/lib/platform-management/common/regional-util.service.d.ts +1 -1
- package/mock/lib/platform-management/global-variables/global-variable.seeder.d.ts +1 -1
- package/mock/lib/platform-management/metadata/metadata.mock.d.ts +2 -0
- package/mock/lib/platform-management/metadata/metadata.seeder.d.ts +8 -0
- package/mock/lib/scheduler-job-management/scheduler-job.seeder.d.ts +1 -1
- package/mock/lib/security-management/datasource-provider.mock.service.d.ts +4 -0
- package/mock/lib/security-management/mock-data.d.ts +28 -0
- package/mock/lib/security-management/role.seeder.d.ts +10 -0
- package/mock/lib/security-management/security-management-mock.module.d.ts +6 -0
- package/mock/lib/security-management/user.seeder.d.ts +9 -0
- package/mock/lib/text-template-management/category.seeder.d.ts +1 -1
- package/mock/lib/text-template-management/template.seeder.d.ts +1 -1
- package/package.json +1 -1
@@ -1,24 +1,27 @@
|
|
1
1
|
import { APPLICATION_SOURCE_NAME, MODULE_SOURCE_NAME, ENTITY_SOURCE_NAME, FEATURE_SOURCE_NAME, PERMISSION_SOURCE_NAME, PROPERTY_SOURCE_NAME, AXPModuleDesignerService } from '@acorex/modules/application-management';
|
2
|
-
import { RootConfig
|
2
|
+
import { RootConfig, AXMFolderServiceImpl, AXMDocumentServiceImpl, AXMFolderService, AXMDocumentService } from '@acorex/modules/document-management';
|
3
|
+
import { RootConfig as RootConfig$3, AXMNotificationEntityService } from '@acorex/modules/notification-management';
|
3
4
|
import * as i1$1 from '@acorex/platform/auth';
|
4
|
-
import { AXPSessionService, AXPAuthModule } from '@acorex/platform/auth';
|
5
|
-
import { AXPDataGenerator,
|
5
|
+
import { AXPSessionService, AXPPermissionProviderService, AXPAuthModule } from '@acorex/platform/auth';
|
6
|
+
import { AXPDataGenerator, AXPRegionalService, AXPFileStorageStatus, AXPFileStorageService, AXP_SEARCH_PROVIDER } from '@acorex/platform/common';
|
7
|
+
import { AXPDexieEntityStorageService, AXPEntityDefinitionRegistryService, AXP_DATA_SEEDER_TOKEN, AXPEntityStorageService } from '@acorex/platform/layout/entity';
|
6
8
|
import * as i0 from '@angular/core';
|
7
9
|
import { inject, Injectable, NgModule } from '@angular/core';
|
8
|
-
import { AXPEntityDefinitionRegistryService } from '@acorex/platform/layout/entity';
|
9
10
|
import * as i1 from '@acorex/modules/conversation';
|
10
11
|
import { AXMConverstionModuleConst, AXMChatServiceImpl, AXMCommentServiceImpl, AXMChatModule, AXMChatService } from '@acorex/modules/conversation';
|
12
|
+
import { AXPDataGenerator as AXPDataGenerator$1 } from '@acorex/platform/core';
|
11
13
|
import Dexie from 'dexie';
|
12
14
|
import { AXP_WIDGET_DATASOURCE_PROVIDER } from '@acorex/platform/layout/builder';
|
15
|
+
import { RootConfig as RootConfig$1 } from '@acorex/modules/form-template-management';
|
13
16
|
import { convertArrayToDataSource } from '@acorex/components/common';
|
14
|
-
import { RootConfig } from '@acorex/modules/
|
15
|
-
import { AXMOrganizationNodeType, RootConfig as RootConfig$
|
16
|
-
import { RootConfig as RootConfig$
|
17
|
+
import { RootConfig as RootConfig$2 } from '@acorex/modules/security-management';
|
18
|
+
import { AXMOrganizationNodeType, RootConfig as RootConfig$4 } from '@acorex/modules/organization-management';
|
19
|
+
import { RootConfig as RootConfig$5 } from '@acorex/modules/platform-management';
|
17
20
|
import { AXTranslationService } from '@acorex/core/translation';
|
18
21
|
import { firstValueFrom } from 'rxjs';
|
19
22
|
import { AXFileService } from '@acorex/core/file';
|
20
|
-
import { RootConfig as RootConfig$
|
21
|
-
import { RootConfig as RootConfig$
|
23
|
+
import { RootConfig as RootConfig$6 } from '@acorex/modules/scheduler-job-management';
|
24
|
+
import { RootConfig as RootConfig$7 } from '@acorex/modules/text-template-management';
|
22
25
|
|
23
26
|
const APPLICATIONS = Array.from({ length: 5 }).map((_, i) => {
|
24
27
|
const source = ['appOne', 'appTwo', 'appThree', 'myCoolApp', 'awesomeApp', 'superApp'];
|
@@ -547,6 +550,573 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
547
550
|
}]
|
548
551
|
}] });
|
549
552
|
|
553
|
+
const DocumentTypeMocks = [
|
554
|
+
{
|
555
|
+
id: AXPDataGenerator$1.uuid(),
|
556
|
+
name: 'OHS',
|
557
|
+
title: 'Occupational Health and Safety Policy',
|
558
|
+
maxSize: 5000,
|
559
|
+
isEncrypted: false,
|
560
|
+
meta: [
|
561
|
+
{
|
562
|
+
name: 'checkbox',
|
563
|
+
title: 'Check Box',
|
564
|
+
interface: '{"type":"document-layout","children":[{"type":"page-layout","children":[{"type":"checkbox-editor","name":"checkbox-editor1","options":{"label":"i accept","readonly":false,"disabled":false},"defaultValue":false,"path":"accept-check-box"}],"name":"page-layout1"}],"name":"document"}',
|
565
|
+
},
|
566
|
+
],
|
567
|
+
type: {
|
568
|
+
selectedItems: [
|
569
|
+
{
|
570
|
+
name: 'image.jpg',
|
571
|
+
title: 'Image/JPEG',
|
572
|
+
icon: 'fa-light fa-image ax-text-purple-500',
|
573
|
+
},
|
574
|
+
{
|
575
|
+
name: 'image.png',
|
576
|
+
title: 'Image/PNG',
|
577
|
+
icon: 'fa-light fa-image ax-text-purple-500',
|
578
|
+
},
|
579
|
+
{
|
580
|
+
name: 'image.gif',
|
581
|
+
title: 'Image/GIF',
|
582
|
+
icon: 'fa-light fa-image ax-text-purple-500',
|
583
|
+
},
|
584
|
+
],
|
585
|
+
context: {
|
586
|
+
image: {
|
587
|
+
width: '22',
|
588
|
+
height: '33',
|
589
|
+
},
|
590
|
+
gift: {
|
591
|
+
duration: '11',
|
592
|
+
},
|
593
|
+
},
|
594
|
+
},
|
595
|
+
},
|
596
|
+
{
|
597
|
+
id: AXPDataGenerator$1.uuid(),
|
598
|
+
name: 'WHS',
|
599
|
+
title: 'Workplace Health and Safety Guidelines',
|
600
|
+
maxSize: 10000,
|
601
|
+
isEncrypted: true,
|
602
|
+
meta: [{ name: 'external', title: 'External', interface: '' }],
|
603
|
+
type: {
|
604
|
+
selectedItems: [
|
605
|
+
{
|
606
|
+
name: 'audio.mp3',
|
607
|
+
title: 'MP3',
|
608
|
+
icon: 'fa-light fa-file-audio ax-text-green-500',
|
609
|
+
},
|
610
|
+
{
|
611
|
+
name: 'audio.wav',
|
612
|
+
title: 'WAV',
|
613
|
+
icon: 'fa-light fa-file-audio ax-text-green-500',
|
614
|
+
},
|
615
|
+
],
|
616
|
+
context: {
|
617
|
+
audio: {
|
618
|
+
bitrate: '320',
|
619
|
+
duration: '180',
|
620
|
+
},
|
621
|
+
},
|
622
|
+
},
|
623
|
+
},
|
624
|
+
];
|
625
|
+
|
626
|
+
class AXCDocumentTypeDataSeeder {
|
627
|
+
constructor() {
|
628
|
+
this.storageService = inject(AXPDexieEntityStorageService);
|
629
|
+
}
|
630
|
+
async seed() {
|
631
|
+
await this.storageService.initial(`${RootConfig.module.name}.${RootConfig.entities.documentType.name}`, DocumentTypeMocks);
|
632
|
+
}
|
633
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCDocumentTypeDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
634
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCDocumentTypeDataSeeder }); }
|
635
|
+
}
|
636
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCDocumentTypeDataSeeder, decorators: [{
|
637
|
+
type: Injectable
|
638
|
+
}] });
|
639
|
+
|
640
|
+
const allFolders = [];
|
641
|
+
const allFiles = [];
|
642
|
+
const rootFolder = {
|
643
|
+
id: AXPDataGenerator$1.uuid(),
|
644
|
+
name: 'WHS Documentation',
|
645
|
+
color: '#FFFFFF',
|
646
|
+
description: 'Root folder for WHS/OHS Documentation',
|
647
|
+
parentId: undefined,
|
648
|
+
isSystem: true,
|
649
|
+
isHidden: false,
|
650
|
+
isDeleted: false,
|
651
|
+
createdAt: new Date(),
|
652
|
+
updatedAt: new Date(),
|
653
|
+
createdBy: 'system',
|
654
|
+
updatedBy: 'system',
|
655
|
+
folders: [],
|
656
|
+
documents: [],
|
657
|
+
};
|
658
|
+
// Updated sample file types with WHS/OHS specific examples
|
659
|
+
const sampleFileTypes = [
|
660
|
+
{
|
661
|
+
ext: 'pdf',
|
662
|
+
titles: ['Risk Assessment Report', 'Safety Audit Checklist', 'Emergency Response Plan', 'Safety Training Manual'],
|
663
|
+
},
|
664
|
+
{
|
665
|
+
ext: 'docx',
|
666
|
+
titles: ['Incident Investigation Form', 'Safety Meeting Minutes', 'Hazard Report Template', 'Safe Work Procedure'],
|
667
|
+
},
|
668
|
+
{
|
669
|
+
ext: 'xlsx',
|
670
|
+
titles: ['Incident Statistics', 'Safety Training Matrix', 'PPE Inventory List', 'Risk Register'],
|
671
|
+
},
|
672
|
+
{
|
673
|
+
ext: 'jpg',
|
674
|
+
titles: ['Hazard Photo', 'Safety Signage', 'Emergency Exit Plan', 'PPE Requirements Chart'],
|
675
|
+
},
|
676
|
+
{
|
677
|
+
ext: 'png',
|
678
|
+
titles: ['Safety Infographic', 'Evacuation Map', 'Incident Scene Photo', 'Safety Procedure Diagram'],
|
679
|
+
},
|
680
|
+
{
|
681
|
+
ext: 'pptx',
|
682
|
+
titles: ['Safety Induction', 'WHS Training Module', 'Safety Committee Presentation', 'Toolbox Talk'],
|
683
|
+
},
|
684
|
+
];
|
685
|
+
const sites = ['Main Factory', 'Warehouse Complex', 'Office Building', 'Construction Site'];
|
686
|
+
const whsFolders = [
|
687
|
+
{
|
688
|
+
name: 'Policies and Procedures',
|
689
|
+
subFolders: ['Safety Policies', 'Standard Operating Procedures', 'Emergency Procedures', 'Work Instructions'],
|
690
|
+
commonFiles: [
|
691
|
+
'WHS Policy Manual.pdf',
|
692
|
+
'Emergency Response Plan.pdf',
|
693
|
+
'Safety Management System.docx',
|
694
|
+
'Risk Management Framework.pdf',
|
695
|
+
],
|
696
|
+
},
|
697
|
+
{
|
698
|
+
name: 'Risk Management',
|
699
|
+
subFolders: ['Risk Assessments', 'Hazard Reports', 'Control Measures', 'Safety Audits'],
|
700
|
+
commonFiles: [
|
701
|
+
'Risk Assessment Matrix.xlsx',
|
702
|
+
'Hazard Register.xlsx',
|
703
|
+
'Control Measure Checklist.pdf',
|
704
|
+
'Audit Schedule.xlsx',
|
705
|
+
],
|
706
|
+
},
|
707
|
+
{
|
708
|
+
name: 'Incident Management',
|
709
|
+
subFolders: ['Incident Reports', 'Investigations', 'Corrective Actions', 'Statistics'],
|
710
|
+
commonFiles: [
|
711
|
+
'Incident Report Form.docx',
|
712
|
+
'Investigation Guidelines.pdf',
|
713
|
+
'Corrective Action Register.xlsx',
|
714
|
+
'Monthly Statistics.xlsx',
|
715
|
+
],
|
716
|
+
},
|
717
|
+
{
|
718
|
+
name: 'Training and Compliance',
|
719
|
+
subFolders: ['Training Records', 'Certifications', 'Competency Assessments', 'Toolbox Talks'],
|
720
|
+
commonFiles: [
|
721
|
+
'Training Matrix.xlsx',
|
722
|
+
'Induction Package.pdf',
|
723
|
+
'Competency Framework.docx',
|
724
|
+
'Training Calendar.xlsx',
|
725
|
+
],
|
726
|
+
},
|
727
|
+
{
|
728
|
+
name: 'Safety Equipment',
|
729
|
+
subFolders: ['PPE Records', 'Equipment Inspections', 'Maintenance Records', 'Safety Data Sheets'],
|
730
|
+
commonFiles: [
|
731
|
+
'PPE Register.xlsx',
|
732
|
+
'Equipment Maintenance Schedule.xlsx',
|
733
|
+
'Safety Equipment Inventory.xlsx',
|
734
|
+
'PPE Guidelines.pdf',
|
735
|
+
],
|
736
|
+
},
|
737
|
+
];
|
738
|
+
sites.forEach((site) => {
|
739
|
+
const siteFolderId = AXPDataGenerator$1.uuid();
|
740
|
+
const siteFolder = {
|
741
|
+
id: siteFolderId,
|
742
|
+
name: site,
|
743
|
+
color: '#FFFFFF',
|
744
|
+
description: `WHS Documentation for ${site}`,
|
745
|
+
parentId: rootFolder.id,
|
746
|
+
isSystem: false,
|
747
|
+
isHidden: false,
|
748
|
+
isDeleted: false,
|
749
|
+
createdAt: new Date(),
|
750
|
+
updatedAt: new Date(),
|
751
|
+
createdBy: 'system',
|
752
|
+
updatedBy: 'system',
|
753
|
+
tenantId: site,
|
754
|
+
userId: undefined,
|
755
|
+
folders: [],
|
756
|
+
documents: [],
|
757
|
+
};
|
758
|
+
const safetyRoles = ['Safety Officer', 'Site Supervisor', 'WHS Representative'];
|
759
|
+
safetyRoles.forEach((role) => {
|
760
|
+
const roleFolderId = AXPDataGenerator$1.uuid();
|
761
|
+
const roleFolder = {
|
762
|
+
id: roleFolderId,
|
763
|
+
name: role,
|
764
|
+
color: '#FFFFFF',
|
765
|
+
description: `${role} Documentation`,
|
766
|
+
parentId: siteFolder.id,
|
767
|
+
isSystem: false,
|
768
|
+
isHidden: false,
|
769
|
+
isDeleted: false,
|
770
|
+
createdAt: new Date(),
|
771
|
+
updatedAt: new Date(),
|
772
|
+
createdBy: 'system',
|
773
|
+
updatedBy: 'system',
|
774
|
+
tenantId: site,
|
775
|
+
userId: role.toLowerCase().replace(/\s+/g, '_'),
|
776
|
+
folders: [],
|
777
|
+
documents: [],
|
778
|
+
};
|
779
|
+
sampleFileTypes.forEach((fileType) => {
|
780
|
+
fileType.titles.forEach((title) => {
|
781
|
+
if (Math.random() > 0.5) {
|
782
|
+
const file = {
|
783
|
+
id: AXPDataGenerator$1.uuid(),
|
784
|
+
name: `${title.toLowerCase().replace(/\s+/g, '-')}.${fileType.ext}`,
|
785
|
+
title: title,
|
786
|
+
parentId: roleFolderId,
|
787
|
+
};
|
788
|
+
allFiles.push(file);
|
789
|
+
roleFolder.documents?.push(file);
|
790
|
+
}
|
791
|
+
});
|
792
|
+
});
|
793
|
+
siteFolder.folders?.push(roleFolder);
|
794
|
+
allFolders.push(roleFolder);
|
795
|
+
});
|
796
|
+
whsFolders.forEach((dept) => {
|
797
|
+
const deptFolderId = AXPDataGenerator$1.uuid();
|
798
|
+
const deptFolder = {
|
799
|
+
id: deptFolderId,
|
800
|
+
name: dept.name,
|
801
|
+
color: '#' + Math.floor(Math.random() * 16777215).toString(16),
|
802
|
+
description: `${dept.name} documentation`,
|
803
|
+
parentId: siteFolder.id,
|
804
|
+
isSystem: false,
|
805
|
+
isHidden: false,
|
806
|
+
isDeleted: false,
|
807
|
+
createdAt: new Date(),
|
808
|
+
updatedAt: new Date(),
|
809
|
+
createdBy: 'system',
|
810
|
+
updatedBy: 'system',
|
811
|
+
tenantId: site,
|
812
|
+
folders: [],
|
813
|
+
documents: [],
|
814
|
+
};
|
815
|
+
dept.commonFiles.forEach((fileName) => {
|
816
|
+
const file = {
|
817
|
+
id: AXPDataGenerator$1.uuid(),
|
818
|
+
name: fileName,
|
819
|
+
title: fileName.split('.')[0],
|
820
|
+
parentId: deptFolderId,
|
821
|
+
};
|
822
|
+
allFiles.push(file);
|
823
|
+
deptFolder.documents?.push(file);
|
824
|
+
});
|
825
|
+
dept.subFolders.forEach((subFolderName) => {
|
826
|
+
const subFolderId = AXPDataGenerator$1.uuid();
|
827
|
+
const subFolder = {
|
828
|
+
id: subFolderId,
|
829
|
+
name: subFolderName,
|
830
|
+
color: '#' + Math.floor(Math.random() * 16777215).toString(16),
|
831
|
+
description: `${subFolderName} documentation`,
|
832
|
+
parentId: deptFolderId,
|
833
|
+
isSystem: false,
|
834
|
+
isHidden: false,
|
835
|
+
isDeleted: false,
|
836
|
+
createdAt: new Date(),
|
837
|
+
updatedAt: new Date(),
|
838
|
+
createdBy: 'system',
|
839
|
+
updatedBy: 'system',
|
840
|
+
tenantId: site,
|
841
|
+
folders: [],
|
842
|
+
documents: [],
|
843
|
+
};
|
844
|
+
sampleFileTypes.forEach((fileType) => {
|
845
|
+
fileType.titles.forEach((title) => {
|
846
|
+
if (Math.random() > 0.7) {
|
847
|
+
const file = {
|
848
|
+
id: AXPDataGenerator$1.uuid(),
|
849
|
+
name: `${title.toLowerCase().replace(/\s+/g, '-')}.${fileType.ext}`,
|
850
|
+
title: title,
|
851
|
+
parentId: subFolderId,
|
852
|
+
};
|
853
|
+
allFiles.push(file);
|
854
|
+
subFolder.documents?.push(file);
|
855
|
+
}
|
856
|
+
});
|
857
|
+
});
|
858
|
+
deptFolder.folders?.push(subFolder);
|
859
|
+
allFolders.push(subFolder);
|
860
|
+
});
|
861
|
+
siteFolder.folders?.push(deptFolder);
|
862
|
+
allFolders.push(deptFolder);
|
863
|
+
});
|
864
|
+
rootFolder.folders?.push(siteFolder);
|
865
|
+
allFolders.push(siteFolder);
|
866
|
+
});
|
867
|
+
allFolders.push(rootFolder);
|
868
|
+
const FOLDER_MOCK_DATA = allFolders;
|
869
|
+
const FILE_MOCK_DATA = allFiles;
|
870
|
+
|
871
|
+
class AXCFileDataSeeder {
|
872
|
+
constructor() {
|
873
|
+
this.storageService = inject(AXPDexieEntityStorageService);
|
874
|
+
}
|
875
|
+
async seed() {
|
876
|
+
await this.storageService.initial(`${RootConfig.module.name}.${RootConfig.entities.document.name}`, FILE_MOCK_DATA);
|
877
|
+
}
|
878
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCFileDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
879
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCFileDataSeeder }); }
|
880
|
+
}
|
881
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCFileDataSeeder, decorators: [{
|
882
|
+
type: Injectable
|
883
|
+
}] });
|
884
|
+
|
885
|
+
class AXMFolderMockService extends AXMFolderServiceImpl {
|
886
|
+
async updateParentFolders(folder) {
|
887
|
+
if (folder.parentId) {
|
888
|
+
const parent = await this.getOne(folder.parentId);
|
889
|
+
if (parent && parent.id) {
|
890
|
+
if (!parent.folders) {
|
891
|
+
parent.folders = [];
|
892
|
+
}
|
893
|
+
const existingIndex = parent.folders.findIndex((f) => f.id === folder.id);
|
894
|
+
if (existingIndex === -1) {
|
895
|
+
parent.folders.push(folder);
|
896
|
+
}
|
897
|
+
else {
|
898
|
+
parent.folders[existingIndex] = folder;
|
899
|
+
}
|
900
|
+
await super.updateOne(parent.id, { folders: parent.folders });
|
901
|
+
await this.updateParentFolders(parent);
|
902
|
+
}
|
903
|
+
}
|
904
|
+
}
|
905
|
+
async removeFromParent(folder) {
|
906
|
+
if (folder.parentId) {
|
907
|
+
const parent = await this.getOne(folder.parentId);
|
908
|
+
if (parent && parent.id && parent.folders) {
|
909
|
+
parent.folders = parent.folders.filter((f) => f.id !== folder.id);
|
910
|
+
await super.updateOne(parent.id, { folders: parent.folders });
|
911
|
+
await this.updateParentFolders(parent);
|
912
|
+
}
|
913
|
+
}
|
914
|
+
}
|
915
|
+
async insertOne(request) {
|
916
|
+
const newId = await super.insertOne(request);
|
917
|
+
const folderData = {
|
918
|
+
...request,
|
919
|
+
id: newId,
|
920
|
+
};
|
921
|
+
await this.updateParentFolders(folderData);
|
922
|
+
return newId;
|
923
|
+
}
|
924
|
+
async updateOne(id, values) {
|
925
|
+
const currentFolder = await this.getOne(id);
|
926
|
+
const updatedFolder = await super.updateOne(id, values);
|
927
|
+
if (currentFolder && values.parentId !== undefined && currentFolder.parentId !== values.parentId) {
|
928
|
+
await this.removeFromParent(currentFolder);
|
929
|
+
}
|
930
|
+
await this.updateParentFolders(updatedFolder);
|
931
|
+
return updatedFolder;
|
932
|
+
}
|
933
|
+
async deleteOne(id) {
|
934
|
+
const folderToDelete = await this.getOne(id);
|
935
|
+
if (folderToDelete) {
|
936
|
+
await this.removeFromParent(folderToDelete);
|
937
|
+
await super.deleteOne(id);
|
938
|
+
}
|
939
|
+
}
|
940
|
+
async getPath(folderId) {
|
941
|
+
const path = [];
|
942
|
+
let currentId = folderId;
|
943
|
+
while (currentId) {
|
944
|
+
const folder = await this.getOne(currentId);
|
945
|
+
if (!folder) {
|
946
|
+
// Folder not found in persisted storage
|
947
|
+
break;
|
948
|
+
}
|
949
|
+
path.push(folder);
|
950
|
+
currentId = folder.parentId ?? null;
|
951
|
+
}
|
952
|
+
return path.reverse();
|
953
|
+
}
|
954
|
+
/**
|
955
|
+
* جستجوی فولدرها با نام مشخص شده با استفاده از روش بازگشتی
|
956
|
+
* @param searchTerm عبارت جستجو
|
957
|
+
* @param rootFolderId شناسه فولدر ریشه برای شروع جستجو
|
958
|
+
*/
|
959
|
+
async searchFolders(searchTerm, rootFolderId) {
|
960
|
+
const result = [];
|
961
|
+
await this.searchFoldersRecursive(searchTerm, rootFolderId, result);
|
962
|
+
return result;
|
963
|
+
}
|
964
|
+
/**
|
965
|
+
* جستجوی بازگشتی فولدرها
|
966
|
+
* @param searchTerm عبارت جستجو
|
967
|
+
* @param folderId شناسه فولدر فعلی
|
968
|
+
* @param result آرایه نتایج
|
969
|
+
*/
|
970
|
+
async searchFoldersRecursive(searchTerm, folderId, result) {
|
971
|
+
try {
|
972
|
+
// دریافت فولدر فعلی
|
973
|
+
const currentFolder = await this.getOne(folderId);
|
974
|
+
if (!currentFolder) {
|
975
|
+
return;
|
976
|
+
}
|
977
|
+
// بررسی زیرفولدرها
|
978
|
+
const subFolders = currentFolder.folders || [];
|
979
|
+
// افزودن فولدرهایی که با عبارت جستجو مطابقت دارند
|
980
|
+
for (const folder of subFolders) {
|
981
|
+
if (folder.name.toLowerCase().includes(searchTerm.toLowerCase())) {
|
982
|
+
result.push(folder);
|
983
|
+
}
|
984
|
+
// جستجوی بازگشتی در زیرفولدرها
|
985
|
+
if (folder.id) {
|
986
|
+
await this.searchFoldersRecursive(searchTerm, folder.id, result);
|
987
|
+
}
|
988
|
+
}
|
989
|
+
}
|
990
|
+
catch (error) {
|
991
|
+
console.error('Error searching folders:', error);
|
992
|
+
}
|
993
|
+
}
|
994
|
+
}
|
995
|
+
|
996
|
+
class AXMFileMockService extends AXMDocumentServiceImpl {
|
997
|
+
constructor() {
|
998
|
+
super();
|
999
|
+
this.folderService = new AXMFolderMockService();
|
1000
|
+
}
|
1001
|
+
async updateParentFolder(file) {
|
1002
|
+
if (!file.parentId) {
|
1003
|
+
throw new Error('File must have a parent folder');
|
1004
|
+
}
|
1005
|
+
const parent = await this.folderService.getOne(file.parentId);
|
1006
|
+
if (parent && parent.id) {
|
1007
|
+
if (!parent.documents) {
|
1008
|
+
parent.documents = [];
|
1009
|
+
}
|
1010
|
+
const existingIndex = parent.documents.findIndex((f) => f.id === file.id);
|
1011
|
+
if (existingIndex === -1) {
|
1012
|
+
parent.documents.push(file);
|
1013
|
+
}
|
1014
|
+
else {
|
1015
|
+
parent.documents[existingIndex] = file;
|
1016
|
+
}
|
1017
|
+
await this.folderService.updateOne(parent.id, { documents: parent.documents });
|
1018
|
+
}
|
1019
|
+
}
|
1020
|
+
async removeFromParent(file) {
|
1021
|
+
if (!file.parentId) {
|
1022
|
+
throw new Error('File must have a parent folder');
|
1023
|
+
}
|
1024
|
+
const parent = await this.folderService.getOne(file.parentId);
|
1025
|
+
if (parent && parent.id && parent.documents) {
|
1026
|
+
parent.documents = parent.documents.filter((f) => f.id !== file.id);
|
1027
|
+
await this.folderService.updateOne(parent.id, { documents: parent.documents });
|
1028
|
+
}
|
1029
|
+
}
|
1030
|
+
async insertOne(request) {
|
1031
|
+
if (!request.parentId) {
|
1032
|
+
throw new Error('File must have a parent folder');
|
1033
|
+
}
|
1034
|
+
const newId = await super.insertOne(request);
|
1035
|
+
const fileData = {
|
1036
|
+
...request,
|
1037
|
+
id: newId,
|
1038
|
+
};
|
1039
|
+
await this.updateParentFolder(fileData);
|
1040
|
+
return newId;
|
1041
|
+
}
|
1042
|
+
async updateOne(id, values) {
|
1043
|
+
const currentFile = await this.getOne(id);
|
1044
|
+
const updatedFile = await super.updateOne(id, values);
|
1045
|
+
if (currentFile && values.parentId !== undefined && currentFile.parentId !== values.parentId) {
|
1046
|
+
await this.removeFromParent(currentFile);
|
1047
|
+
}
|
1048
|
+
await this.updateParentFolder(updatedFile);
|
1049
|
+
return updatedFile;
|
1050
|
+
}
|
1051
|
+
async deleteOne(id) {
|
1052
|
+
const fileToDelete = await this.getOne(id);
|
1053
|
+
if (fileToDelete) {
|
1054
|
+
await this.removeFromParent(fileToDelete);
|
1055
|
+
await super.deleteOne(id);
|
1056
|
+
}
|
1057
|
+
}
|
1058
|
+
async getPath(documentId) {
|
1059
|
+
const file = await this.getOne(documentId);
|
1060
|
+
if (!file) {
|
1061
|
+
throw new Error('File not found');
|
1062
|
+
}
|
1063
|
+
return await this.folderService.getPath(file.parentId);
|
1064
|
+
}
|
1065
|
+
/**
|
1066
|
+
* جستجوی فایلها با نام مشخص شده با استفاده از روش بازگشتی
|
1067
|
+
* @param searchTerm عبارت جستجو
|
1068
|
+
* @param rootFolderId شناسه فولدر ریشه برای شروع جستجو
|
1069
|
+
*/
|
1070
|
+
async searchFiles(searchTerm, rootFolderId) {
|
1071
|
+
const result = [];
|
1072
|
+
await this.searchFilesRecursive(searchTerm, rootFolderId, result);
|
1073
|
+
return result;
|
1074
|
+
}
|
1075
|
+
/**
|
1076
|
+
* جستجوی بازگشتی فایلها
|
1077
|
+
* @param searchTerm عبارت جستجو
|
1078
|
+
* @param folderId شناسه فولدر فعلی
|
1079
|
+
* @param result آرایه نتایج
|
1080
|
+
*/
|
1081
|
+
async searchFilesRecursive(searchTerm, folderId, result) {
|
1082
|
+
try {
|
1083
|
+
const currentFolder = await this.folderService.getOne(folderId);
|
1084
|
+
if (!currentFolder) {
|
1085
|
+
return;
|
1086
|
+
}
|
1087
|
+
const files = currentFolder.documents || [];
|
1088
|
+
for (const file of files) {
|
1089
|
+
if (file.name.toLowerCase().includes(searchTerm.toLowerCase())) {
|
1090
|
+
result.push(file);
|
1091
|
+
}
|
1092
|
+
}
|
1093
|
+
const subFolders = currentFolder.folders || [];
|
1094
|
+
for (const folder of subFolders) {
|
1095
|
+
if (folder.id) {
|
1096
|
+
await this.searchFilesRecursive(searchTerm, folder.id, result);
|
1097
|
+
}
|
1098
|
+
}
|
1099
|
+
}
|
1100
|
+
catch (error) {
|
1101
|
+
console.error('Error searching files:', error);
|
1102
|
+
}
|
1103
|
+
}
|
1104
|
+
}
|
1105
|
+
|
1106
|
+
class AXCFolderDataSeeder {
|
1107
|
+
constructor() {
|
1108
|
+
this.storageService = inject(AXPDexieEntityStorageService);
|
1109
|
+
}
|
1110
|
+
async seed() {
|
1111
|
+
await this.storageService.initial(`${RootConfig.module.name}.${RootConfig.entities.folder.name}`, FOLDER_MOCK_DATA);
|
1112
|
+
}
|
1113
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCFolderDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
1114
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCFolderDataSeeder }); }
|
1115
|
+
}
|
1116
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCFolderDataSeeder, decorators: [{
|
1117
|
+
type: Injectable
|
1118
|
+
}] });
|
1119
|
+
|
550
1120
|
class EntitySearchProvider {
|
551
1121
|
async search(text) {
|
552
1122
|
const db = new Dexie('ACoreXPlatform');
|
@@ -561,11 +1131,16 @@ class EntitySearchProvider {
|
|
561
1131
|
return filteredRecords.map((record) => ({
|
562
1132
|
group: `Module.${record.entityName}`,
|
563
1133
|
data: record,
|
564
|
-
|
565
|
-
'open-entity': {
|
1134
|
+
command: {
|
1135
|
+
// 'open-entity': {
|
1136
|
+
// entity: record.entityName,
|
1137
|
+
// data: record,
|
1138
|
+
// },
|
1139
|
+
name: 'open-entity',
|
1140
|
+
options: {
|
566
1141
|
entity: record.entityName,
|
567
1142
|
data: record,
|
568
|
-
}
|
1143
|
+
}
|
569
1144
|
},
|
570
1145
|
}));
|
571
1146
|
}
|
@@ -588,6 +1163,83 @@ class EntitySearchProvider {
|
|
588
1163
|
}
|
589
1164
|
}
|
590
1165
|
|
1166
|
+
class AXPFormTemplateCategoryDataSeeder {
|
1167
|
+
constructor() {
|
1168
|
+
this.storageService = inject(AXPDexieEntityStorageService);
|
1169
|
+
}
|
1170
|
+
async seed() {
|
1171
|
+
await this.storageService.initial(`${RootConfig$1.module.name}.${RootConfig$1.entities.category.name}`, this.generateCategories());
|
1172
|
+
}
|
1173
|
+
generateCategories() {
|
1174
|
+
const categories = [];
|
1175
|
+
const rootCategories = [
|
1176
|
+
'Risk Assessment',
|
1177
|
+
'Servicing',
|
1178
|
+
'Checklists',
|
1179
|
+
'Incident Reporting',
|
1180
|
+
'Emergency Procedures',
|
1181
|
+
'Hazardous Materials',
|
1182
|
+
'PPE (Personal Protective Equipment)',
|
1183
|
+
'Workplace Ergonomics',
|
1184
|
+
'Equipment Safety',
|
1185
|
+
'Fire Safety',
|
1186
|
+
'First Aid',
|
1187
|
+
'Manual Handling',
|
1188
|
+
'Electrical Safety',
|
1189
|
+
'Confined Spaces',
|
1190
|
+
'Chemical Safety',
|
1191
|
+
];
|
1192
|
+
rootCategories.forEach((title) => {
|
1193
|
+
const categoryId = AXPDataGenerator.uuid();
|
1194
|
+
categories.push({ id: categoryId, title, parentId: undefined });
|
1195
|
+
});
|
1196
|
+
const childCategories = [
|
1197
|
+
{
|
1198
|
+
parent: 'Risk Assessment',
|
1199
|
+
children: ['Job Safety Analysis', 'Task Risk Assessment', 'General Hazard Identification'],
|
1200
|
+
},
|
1201
|
+
{ parent: 'Incident Reporting', children: ['Near Miss Reports', 'Accident Reports', 'Injury Logs'] },
|
1202
|
+
{
|
1203
|
+
parent: 'Emergency Procedures',
|
1204
|
+
children: ['Fire Evacuation', 'Medical Emergencies', 'Chemical Spill Response'],
|
1205
|
+
},
|
1206
|
+
{
|
1207
|
+
parent: 'Hazardous Materials',
|
1208
|
+
children: ['Material Safety Data Sheets', 'Storage & Handling', 'Hazardous Waste Disposal'],
|
1209
|
+
},
|
1210
|
+
{
|
1211
|
+
parent: 'PPE (Personal Protective Equipment)',
|
1212
|
+
children: ['Protective Gloves', 'Eye Protection', 'Hearing Protection'],
|
1213
|
+
},
|
1214
|
+
{ parent: 'Workplace Ergonomics', children: ['Seating Arrangements', 'Lifting Techniques', 'Workstation Setup'] },
|
1215
|
+
{ parent: 'Equipment Safety', children: ['Machine Guarding', 'Lockout/Tagout', 'Inspection Procedures'] },
|
1216
|
+
{ parent: 'Fire Safety', children: ['Fire Extinguishers', 'Fire Drills', 'Smoke Alarms'] },
|
1217
|
+
{ parent: 'First Aid', children: ['CPR Training', 'First Aid Kits', 'Emergency Contacts'] },
|
1218
|
+
{ parent: 'Manual Handling', children: ['Proper Lifting', 'Load Limits', 'Back Injury Prevention'] },
|
1219
|
+
{
|
1220
|
+
parent: 'Electrical Safety',
|
1221
|
+
children: ['Grounding & Wiring', 'High Voltage Procedures', 'Portable Equipment Checks'],
|
1222
|
+
},
|
1223
|
+
{ parent: 'Confined Spaces', children: ['Permit-Required Spaces', 'Ventilation Protocols', 'Rescue Plans'] },
|
1224
|
+
{ parent: 'Chemical Safety', children: ['Chemical Labeling', 'Exposure Limits', 'Emergency Showers'] },
|
1225
|
+
];
|
1226
|
+
childCategories.forEach(({ parent, children }) => {
|
1227
|
+
const parentId = categories.find((c) => c.title === parent)?.id;
|
1228
|
+
if (parentId) {
|
1229
|
+
children.forEach((title) => {
|
1230
|
+
categories.push({ id: AXPDataGenerator.uuid(), title, parentId });
|
1231
|
+
});
|
1232
|
+
}
|
1233
|
+
});
|
1234
|
+
return categories;
|
1235
|
+
}
|
1236
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPFormTemplateCategoryDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
1237
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPFormTemplateCategoryDataSeeder }); }
|
1238
|
+
}
|
1239
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPFormTemplateCategoryDataSeeder, decorators: [{
|
1240
|
+
type: Injectable
|
1241
|
+
}] });
|
1242
|
+
|
591
1243
|
class AXPMockWidgetDataSourceProvider {
|
592
1244
|
async items() {
|
593
1245
|
return [
|
@@ -635,33 +1287,6 @@ class AXPMockWidgetDataSourceProvider {
|
|
635
1287
|
}
|
636
1288
|
}
|
637
1289
|
|
638
|
-
class AXPFormTemplateCategoryDataSeeder {
|
639
|
-
constructor() {
|
640
|
-
this.storageService = inject(AXPDexieEntityStorageService);
|
641
|
-
}
|
642
|
-
async seed() {
|
643
|
-
await this.storageService.initial(`${RootConfig.module.name}.${RootConfig.entities.category.name}`, [
|
644
|
-
{
|
645
|
-
id: AXPDataGenerator.uuid(),
|
646
|
-
title: 'Risk Assessment'
|
647
|
-
},
|
648
|
-
{
|
649
|
-
id: AXPDataGenerator.uuid(),
|
650
|
-
title: 'Servicing'
|
651
|
-
},
|
652
|
-
{
|
653
|
-
id: AXPDataGenerator.uuid(),
|
654
|
-
title: 'Checklists'
|
655
|
-
}
|
656
|
-
]);
|
657
|
-
}
|
658
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPFormTemplateCategoryDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
659
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPFormTemplateCategoryDataSeeder }); }
|
660
|
-
}
|
661
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPFormTemplateCategoryDataSeeder, decorators: [{
|
662
|
-
type: Injectable
|
663
|
-
}] });
|
664
|
-
|
665
1290
|
class AXCFormTemplateManagementMockModule {
|
666
1291
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCFormTemplateManagementMockModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
667
1292
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.3", ngImport: i0, type: AXCFormTemplateManagementMockModule }); }
|
@@ -700,11 +1325,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
700
1325
|
}] });
|
701
1326
|
|
702
1327
|
class MOCKStrategy {
|
703
|
-
constructor() {
|
1328
|
+
constructor() {
|
1329
|
+
this.entityRegistery = inject(AXPEntityDefinitionRegistryService);
|
1330
|
+
}
|
704
1331
|
get name() {
|
705
1332
|
return 'user-pass';
|
706
1333
|
}
|
707
1334
|
async signin(credentials) {
|
1335
|
+
const entityRef = await this.entityRegistery.resolve(RootConfig$2.module.name, RootConfig$2.entities.users.name);
|
1336
|
+
const accessToken = 'access_token';
|
1337
|
+
const refreshToken = 'refresh_token';
|
708
1338
|
try {
|
709
1339
|
if (credentials.username == 'root' && credentials.password == '123') {
|
710
1340
|
const user = {
|
@@ -713,8 +1343,6 @@ class MOCKStrategy {
|
|
713
1343
|
title: 'Root User',
|
714
1344
|
avatar: 'https://avatar.iran.liara.run/public/29',
|
715
1345
|
};
|
716
|
-
const accessToken = 'access_token';
|
717
|
-
const refreshToken = 'refresh_token';
|
718
1346
|
return {
|
719
1347
|
succeed: true,
|
720
1348
|
data: { user, accessToken, refreshToken },
|
@@ -727,8 +1355,6 @@ class MOCKStrategy {
|
|
727
1355
|
title: 'Admin User',
|
728
1356
|
avatar: 'https://avatar.iran.liara.run/public/47',
|
729
1357
|
};
|
730
|
-
const accessToken = 'access_token';
|
731
|
-
const refreshToken = 'refresh_token';
|
732
1358
|
return {
|
733
1359
|
succeed: true,
|
734
1360
|
data: { user, accessToken, refreshToken },
|
@@ -748,6 +1374,25 @@ class MOCKStrategy {
|
|
748
1374
|
data: { user, accessToken, refreshToken },
|
749
1375
|
};
|
750
1376
|
}
|
1377
|
+
else {
|
1378
|
+
const func = entityRef?.queries.list?.execute;
|
1379
|
+
const users = await func({
|
1380
|
+
skip: 0,
|
1381
|
+
take: 1000,
|
1382
|
+
});
|
1383
|
+
const currentUser = users.items.find((u) => u.username === credentials.username && u.password === credentials.password);
|
1384
|
+
if (currentUser) {
|
1385
|
+
const user = {
|
1386
|
+
id: currentUser.id,
|
1387
|
+
name: currentUser.username,
|
1388
|
+
title: `${currentUser.firstname} ${currentUser.lastname}`,
|
1389
|
+
};
|
1390
|
+
return {
|
1391
|
+
succeed: true,
|
1392
|
+
data: { user, accessToken, refreshToken },
|
1393
|
+
};
|
1394
|
+
}
|
1395
|
+
}
|
751
1396
|
return {
|
752
1397
|
succeed: false,
|
753
1398
|
};
|
@@ -866,7 +1511,7 @@ class AXCNotificationTemplateDataSeeder {
|
|
866
1511
|
this.storageService = inject(AXPDexieEntityStorageService);
|
867
1512
|
}
|
868
1513
|
async seed() {
|
869
|
-
await this.storageService.initial(`${RootConfig$
|
1514
|
+
await this.storageService.initial(`${RootConfig$3.module.name}.${RootConfig$3.entities.template.name}`, NOTIFICATION_TEMPLATES);
|
870
1515
|
}
|
871
1516
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCNotificationTemplateDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
872
1517
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCNotificationTemplateDataSeeder }); }
|
@@ -1421,7 +2066,7 @@ class AXCOrganizationManagementDataSeeder {
|
|
1421
2066
|
async seed() {
|
1422
2067
|
const uuid = AXPDataGenerator.uuid;
|
1423
2068
|
// Departments
|
1424
|
-
await this.storageService.initial(RootConfig$
|
2069
|
+
await this.storageService.initial(RootConfig$4.entities.department.source, [
|
1425
2070
|
{
|
1426
2071
|
id: uuid(),
|
1427
2072
|
title: 'Engineering Division',
|
@@ -1439,7 +2084,7 @@ class AXCOrganizationManagementDataSeeder {
|
|
1439
2084
|
},
|
1440
2085
|
]);
|
1441
2086
|
// Divisions
|
1442
|
-
await this.storageService.initial(RootConfig$
|
2087
|
+
await this.storageService.initial(RootConfig$4.entities.division.source, [
|
1443
2088
|
{
|
1444
2089
|
id: uuid(),
|
1445
2090
|
title: 'Software Development',
|
@@ -1457,7 +2102,7 @@ class AXCOrganizationManagementDataSeeder {
|
|
1457
2102
|
},
|
1458
2103
|
]);
|
1459
2104
|
// Branches
|
1460
|
-
await this.storageService.initial(RootConfig$
|
2105
|
+
await this.storageService.initial(RootConfig$4.entities.branch.source, [
|
1461
2106
|
{
|
1462
2107
|
id: uuid(),
|
1463
2108
|
title: 'San Francisco Office',
|
@@ -1475,7 +2120,7 @@ class AXCOrganizationManagementDataSeeder {
|
|
1475
2120
|
},
|
1476
2121
|
]);
|
1477
2122
|
// Positions
|
1478
|
-
await this.storageService.initial(RootConfig$
|
2123
|
+
await this.storageService.initial(RootConfig$4.entities.position.source, [
|
1479
2124
|
{
|
1480
2125
|
id: uuid(),
|
1481
2126
|
title: 'Backend Developer',
|
@@ -1508,7 +2153,7 @@ class AXCOrganizationManagementDataSeeder {
|
|
1508
2153
|
},
|
1509
2154
|
]);
|
1510
2155
|
// Employment Types
|
1511
|
-
await this.storageService.initial(RootConfig$
|
2156
|
+
await this.storageService.initial(RootConfig$4.entities.employmentType.source, [
|
1512
2157
|
{
|
1513
2158
|
id: uuid(),
|
1514
2159
|
title: 'Full-Time',
|
@@ -1536,7 +2181,7 @@ class AXCOrganizationManagementDataSeeder {
|
|
1536
2181
|
},
|
1537
2182
|
]);
|
1538
2183
|
// Employees
|
1539
|
-
await this.storageService.initial(RootConfig$
|
2184
|
+
await this.storageService.initial(RootConfig$4.entities.employee.source, [
|
1540
2185
|
{ id: uuid(), firstname: 'Jane', lastname: 'Smith', birthDate: new Date('1985-02-15'), employeeID: 'EMP002' },
|
1541
2186
|
{
|
1542
2187
|
id: uuid(),
|
@@ -1560,11 +2205,11 @@ class AXCOrganizationManagementDataSeeder {
|
|
1560
2205
|
{ id: uuid(), firstname: 'Vikram', lastname: 'Singh', birthDate: new Date('1982-07-14'), employeeID: 'EMP007' },
|
1561
2206
|
]);
|
1562
2207
|
// Store Chart Data
|
1563
|
-
await this.storageService.initial(RootConfig$
|
2208
|
+
await this.storageService.initial(RootConfig$4.entities.chart.source, [
|
1564
2209
|
{
|
1565
2210
|
id: uuid(),
|
1566
2211
|
version: '1.0',
|
1567
|
-
data:
|
2212
|
+
data: SOFTWARE_COMPANY_ORGANIZATION,
|
1568
2213
|
},
|
1569
2214
|
]);
|
1570
2215
|
}
|
@@ -1686,7 +2331,7 @@ class AXCAppTermDataSeeder {
|
|
1686
2331
|
this.storageService = inject(AXPDexieEntityStorageService);
|
1687
2332
|
}
|
1688
2333
|
async seed() {
|
1689
|
-
await this.storageService.initial(`${RootConfig$
|
2334
|
+
await this.storageService.initial(`${RootConfig$5.module.name}.${RootConfig$5.entities.appTerm.name}`, APP_TERMS);
|
1690
2335
|
}
|
1691
2336
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCAppTermDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
1692
2337
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCAppTermDataSeeder }); }
|
@@ -1697,7 +2342,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
1697
2342
|
|
1698
2343
|
const changeLog = [];
|
1699
2344
|
for (let i = 0; i < 10; i++) {
|
1700
|
-
changeLog.push(`This is a detailed description of the changes made in version 1.
|
2345
|
+
changeLog.push(`This is a detailed description of the changes made in version 1.6.0${i}.
|
1701
2346
|
It includes various updates, bug fixes, and improvements.
|
1702
2347
|
The changes are extensive and cover multiple aspects of the application,
|
1703
2348
|
ensuring better performance, enhanced security, and a more user-friendly interface.
|
@@ -1709,7 +2354,7 @@ const APP_VERSIONS = Array.from({ length: 10 }).map((element, i) => {
|
|
1709
2354
|
publishDate.setDate(publishDate.getDate() - i * 7); // Subtract i weeks from the current date
|
1710
2355
|
return {
|
1711
2356
|
id: AXPDataGenerator.uuid(),
|
1712
|
-
versionNumber: `1.
|
2357
|
+
versionNumber: `1.6.0${i}`,
|
1713
2358
|
changeLog: changeLog[i],
|
1714
2359
|
publishDate: publishDate.toString(),
|
1715
2360
|
showFirstTimePopup: true,
|
@@ -1721,7 +2366,7 @@ class AXCAppVersionDataSeeder {
|
|
1721
2366
|
this.storageService = inject(AXPDexieEntityStorageService);
|
1722
2367
|
}
|
1723
2368
|
async seed() {
|
1724
|
-
await this.storageService.initial(`${RootConfig$
|
2369
|
+
await this.storageService.initial(`${RootConfig$5.module.name}.${RootConfig$5.entities.appVersion.name}`, APP_VERSIONS);
|
1725
2370
|
}
|
1726
2371
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCAppVersionDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
1727
2372
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCAppVersionDataSeeder }); }
|
@@ -1752,7 +2397,7 @@ class AXCGlobalVariablesDataSeeder {
|
|
1752
2397
|
this.storageService = inject(AXPDexieEntityStorageService);
|
1753
2398
|
}
|
1754
2399
|
async seed() {
|
1755
|
-
await this.storageService.initial(`${RootConfig$
|
2400
|
+
await this.storageService.initial(`${RootConfig$5.module.name}.${RootConfig$5.entities.globalVariable.name}`, GLOBAL_VARIABLES);
|
1756
2401
|
}
|
1757
2402
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCGlobalVariablesDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
1758
2403
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCGlobalVariablesDataSeeder }); }
|
@@ -1781,11 +2426,11 @@ class AXCRegionalServiceImpl extends AXPRegionalService {
|
|
1781
2426
|
}
|
1782
2427
|
});
|
1783
2428
|
}
|
1784
|
-
async getProvinces(
|
2429
|
+
async getProvinces(countryId) {
|
1785
2430
|
const lang = await firstValueFrom(this.languageService.langChanges$);
|
1786
2431
|
const country = await this.getCountries();
|
1787
2432
|
const data = country
|
1788
|
-
.filter((c) => !
|
2433
|
+
.filter((c) => !countryId || c.code === countryId)
|
1789
2434
|
.flatMap((c) => c.provinces?.map((province) => {
|
1790
2435
|
if (lang == c.regional) {
|
1791
2436
|
return {
|
@@ -1981,6 +2626,39 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
1981
2626
|
type: Injectable
|
1982
2627
|
}], ctorParameters: () => [] });
|
1983
2628
|
|
2629
|
+
const checkbox = '{"type":"document-layout","children":[{"type":"page-layout","children":[{"type":"checkbox-editor","name":"checkbox-editor1","options":{"label":"i accept","readonly":false,"disabled":false},"defaultValue":false,"path":"accept-check-box"}],"name":"page-layout1"}],"name":"document"}';
|
2630
|
+
const color = '{"type":"document-layout","children":[{"type":"page-layout","children":[{"type":"block-layout","name":"block-layout1","options":{"flexDirection":{"id":"ax-flex-row"},"flexJustifyContent":{"id":"ax-justify-normal"},"flexAlignItems":{"id":"ax-items-start"},"gap":2,"flexWrap":{"id":"ax-flex-nowrap"},"spacing":{"margin":"0px 0px 0px 0px","padding":"0px 0px 0px 0px"},"border":{"width":"0px","radius":"0px","color":"#000000","style":"none"},"flexOptions":{"gap":"0px","flexDirection":"row","flexWrap":"nowrap","justifyContent":"flex-start","alignItems":"flex-start"}}},"children":[{"type":"color-editor","name":"color-editor1","options":{"readonly":false,"disabled":false,"validations":{"required":{"rule":"required","message":"This field is required."}},"placeholder":"pick color"},"path":"color-box"}]}],"name":"page-layout1"}],"name":"document"}';
|
2631
|
+
const METADATA_MOCK = [
|
2632
|
+
{
|
2633
|
+
id: AXPDataGenerator$1.uuid(),
|
2634
|
+
name: 'checkbox',
|
2635
|
+
title: 'Checkbox',
|
2636
|
+
defaultValue: false,
|
2637
|
+
interface: checkbox,
|
2638
|
+
},
|
2639
|
+
{
|
2640
|
+
id: AXPDataGenerator$1.uuid(),
|
2641
|
+
name: 'color',
|
2642
|
+
title: 'Color',
|
2643
|
+
defaultValue: '#000000',
|
2644
|
+
interface: color,
|
2645
|
+
},
|
2646
|
+
];
|
2647
|
+
|
2648
|
+
class AXCMetaDataDefinitionDataSeeder {
|
2649
|
+
constructor() {
|
2650
|
+
this.storageService = inject(AXPDexieEntityStorageService);
|
2651
|
+
}
|
2652
|
+
async seed() {
|
2653
|
+
await this.storageService.initial(`${RootConfig$5.module.name}.${RootConfig$5.entities.metaDataDefinition.name}`, METADATA_MOCK);
|
2654
|
+
}
|
2655
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCMetaDataDefinitionDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
2656
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCMetaDataDefinitionDataSeeder }); }
|
2657
|
+
}
|
2658
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCMetaDataDefinitionDataSeeder, decorators: [{
|
2659
|
+
type: Injectable
|
2660
|
+
}] });
|
2661
|
+
|
1984
2662
|
const SCHEDULER_JOB = [
|
1985
2663
|
{
|
1986
2664
|
id: AXPDataGenerator.uuid(),
|
@@ -2003,7 +2681,7 @@ class AXCSchedulerJobDataSeeder {
|
|
2003
2681
|
this.storageService = inject(AXPDexieEntityStorageService);
|
2004
2682
|
}
|
2005
2683
|
async seed() {
|
2006
|
-
await this.storageService.initial(`${RootConfig$
|
2684
|
+
await this.storageService.initial(`${RootConfig$6.module.name}.${RootConfig$6.entities.schedulerJob.name}`, SCHEDULER_JOB);
|
2007
2685
|
}
|
2008
2686
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCSchedulerJobDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
2009
2687
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCSchedulerJobDataSeeder }); }
|
@@ -2012,6 +2690,359 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
2012
2690
|
type: Injectable
|
2013
2691
|
}] });
|
2014
2692
|
|
2693
|
+
class AXPSecurityManagementMockWidgetDataSourceProvider {
|
2694
|
+
async items() {
|
2695
|
+
return [
|
2696
|
+
{
|
2697
|
+
name: 'mock.securityUsers',
|
2698
|
+
title: 'Security Users',
|
2699
|
+
valueField: 'id',
|
2700
|
+
textField: 'displayName',
|
2701
|
+
columns: [
|
2702
|
+
{
|
2703
|
+
name: 'id',
|
2704
|
+
title: 'Id',
|
2705
|
+
},
|
2706
|
+
{
|
2707
|
+
name: 'username',
|
2708
|
+
title: 'Username',
|
2709
|
+
},
|
2710
|
+
{
|
2711
|
+
name: 'displayName',
|
2712
|
+
title: 'Display Name',
|
2713
|
+
},
|
2714
|
+
],
|
2715
|
+
samples: [
|
2716
|
+
{
|
2717
|
+
id: '1',
|
2718
|
+
username: 'johndoe',
|
2719
|
+
displayName: 'John Doe',
|
2720
|
+
},
|
2721
|
+
{
|
2722
|
+
id: '2',
|
2723
|
+
username: 'janesmith',
|
2724
|
+
displayName: 'Jane Smith',
|
2725
|
+
},
|
2726
|
+
],
|
2727
|
+
source: () => convertArrayToDataSource([
|
2728
|
+
{
|
2729
|
+
id: '1',
|
2730
|
+
username: 'johndoe',
|
2731
|
+
displayName: 'John Doe',
|
2732
|
+
},
|
2733
|
+
{
|
2734
|
+
id: '2',
|
2735
|
+
username: 'janesmith',
|
2736
|
+
displayName: 'Jane Smith',
|
2737
|
+
},
|
2738
|
+
{
|
2739
|
+
id: '3',
|
2740
|
+
username: 'mikeross',
|
2741
|
+
displayName: 'Mike Ross',
|
2742
|
+
},
|
2743
|
+
]),
|
2744
|
+
},
|
2745
|
+
{
|
2746
|
+
name: 'mock.securityRoles',
|
2747
|
+
title: 'Security Roles',
|
2748
|
+
valueField: 'id',
|
2749
|
+
textField: 'title',
|
2750
|
+
columns: [
|
2751
|
+
{
|
2752
|
+
name: 'id',
|
2753
|
+
title: 'Id',
|
2754
|
+
},
|
2755
|
+
{
|
2756
|
+
name: 'title',
|
2757
|
+
title: 'Title',
|
2758
|
+
},
|
2759
|
+
],
|
2760
|
+
samples: [
|
2761
|
+
{
|
2762
|
+
id: 'admin',
|
2763
|
+
title: 'Administrator',
|
2764
|
+
},
|
2765
|
+
{
|
2766
|
+
id: 'user',
|
2767
|
+
title: 'Regular User',
|
2768
|
+
},
|
2769
|
+
],
|
2770
|
+
source: () => convertArrayToDataSource([
|
2771
|
+
{
|
2772
|
+
id: 'admin',
|
2773
|
+
title: 'Administrator',
|
2774
|
+
},
|
2775
|
+
{
|
2776
|
+
id: 'manager',
|
2777
|
+
title: 'Manager',
|
2778
|
+
},
|
2779
|
+
{
|
2780
|
+
id: 'user',
|
2781
|
+
title: 'Regular User',
|
2782
|
+
},
|
2783
|
+
]),
|
2784
|
+
},
|
2785
|
+
];
|
2786
|
+
}
|
2787
|
+
}
|
2788
|
+
|
2789
|
+
// Now we only define role structure without permissions
|
2790
|
+
const mockRoleDefinitions = [
|
2791
|
+
{
|
2792
|
+
id: '1001',
|
2793
|
+
name: 'admin',
|
2794
|
+
title: 'Administrator',
|
2795
|
+
description: 'Full system access with all administrative privileges',
|
2796
|
+
permissions: [], // Will be filled dynamically
|
2797
|
+
},
|
2798
|
+
{
|
2799
|
+
id: '1002',
|
2800
|
+
name: 'manager',
|
2801
|
+
title: 'Manager',
|
2802
|
+
description: 'Manages users and has access to most system features',
|
2803
|
+
permissions: [],
|
2804
|
+
},
|
2805
|
+
{
|
2806
|
+
id: '1003',
|
2807
|
+
name: 'user',
|
2808
|
+
title: 'Regular User',
|
2809
|
+
description: 'Standard user with basic system access',
|
2810
|
+
permissions: [],
|
2811
|
+
},
|
2812
|
+
{
|
2813
|
+
id: '1004',
|
2814
|
+
name: 'readonly',
|
2815
|
+
title: 'Read Only',
|
2816
|
+
description: 'View-only access to specific system areas',
|
2817
|
+
permissions: [],
|
2818
|
+
},
|
2819
|
+
{
|
2820
|
+
id: '1005',
|
2821
|
+
name: 'support',
|
2822
|
+
title: 'Support Staff',
|
2823
|
+
description: 'Customer support and ticket management access',
|
2824
|
+
permissions: [],
|
2825
|
+
},
|
2826
|
+
{
|
2827
|
+
id: '1006',
|
2828
|
+
name: 'hr',
|
2829
|
+
title: 'Human Resources',
|
2830
|
+
description: 'Access to HR-related features and user management',
|
2831
|
+
permissions: [],
|
2832
|
+
},
|
2833
|
+
{
|
2834
|
+
id: '1007',
|
2835
|
+
name: 'finance',
|
2836
|
+
title: 'Finance',
|
2837
|
+
description: 'Access to financial reports and invoicing features',
|
2838
|
+
permissions: [],
|
2839
|
+
},
|
2840
|
+
{
|
2841
|
+
id: '1008',
|
2842
|
+
name: 'dev',
|
2843
|
+
title: 'Developer',
|
2844
|
+
description: 'Technical access to development and debugging features',
|
2845
|
+
permissions: [],
|
2846
|
+
},
|
2847
|
+
];
|
2848
|
+
const mockUsers = [
|
2849
|
+
{
|
2850
|
+
username: 'johndoe',
|
2851
|
+
firstname: 'John',
|
2852
|
+
lastname: 'Doe',
|
2853
|
+
nationalCode: '1234567890',
|
2854
|
+
mobile: '555-123-4567',
|
2855
|
+
roleIds: [
|
2856
|
+
{ id: '1001', title: 'Administrator' },
|
2857
|
+
{ id: '1002', title: 'Manager' },
|
2858
|
+
],
|
2859
|
+
},
|
2860
|
+
{
|
2861
|
+
username: 'janesmith',
|
2862
|
+
firstname: 'Jane',
|
2863
|
+
lastname: 'Smith',
|
2864
|
+
nationalCode: '0987654321',
|
2865
|
+
mobile: '555-987-6543',
|
2866
|
+
roleIds: [
|
2867
|
+
{ id: '1002', title: 'Manager' },
|
2868
|
+
{ id: '1006', title: 'Human Resources' },
|
2869
|
+
],
|
2870
|
+
},
|
2871
|
+
{
|
2872
|
+
username: 'mikeross',
|
2873
|
+
firstname: 'Mike',
|
2874
|
+
lastname: 'Ross',
|
2875
|
+
nationalCode: '2468135790',
|
2876
|
+
mobile: '555-246-8135',
|
2877
|
+
roleIds: [
|
2878
|
+
{ id: '1008', title: 'Developer' },
|
2879
|
+
{ id: '1005', title: 'Support Staff' },
|
2880
|
+
],
|
2881
|
+
},
|
2882
|
+
{
|
2883
|
+
username: 'emilyparker',
|
2884
|
+
firstname: 'Emily',
|
2885
|
+
lastname: 'Parker',
|
2886
|
+
nationalCode: '1357924680',
|
2887
|
+
mobile: '555-135-7924',
|
2888
|
+
roleIds: [{ id: '1003', title: 'Regular User' }],
|
2889
|
+
},
|
2890
|
+
{
|
2891
|
+
username: 'robertjohnson',
|
2892
|
+
firstname: 'Robert',
|
2893
|
+
lastname: 'Johnson',
|
2894
|
+
nationalCode: '9876543210',
|
2895
|
+
mobile: '555-987-6542',
|
2896
|
+
roleIds: [{ id: '1007', title: 'Finance' }],
|
2897
|
+
},
|
2898
|
+
{
|
2899
|
+
username: 'sarahwilliams',
|
2900
|
+
firstname: 'Sarah',
|
2901
|
+
lastname: 'Williams',
|
2902
|
+
nationalCode: '5678901234',
|
2903
|
+
mobile: '555-567-8901',
|
2904
|
+
roleIds: [{ id: '1004', title: 'Read Only' }],
|
2905
|
+
},
|
2906
|
+
{
|
2907
|
+
username: 'davidbrown',
|
2908
|
+
firstname: 'David',
|
2909
|
+
lastname: 'Brown',
|
2910
|
+
nationalCode: '3456789012',
|
2911
|
+
mobile: '555-345-6789',
|
2912
|
+
roleIds: [
|
2913
|
+
{ id: '1003', title: 'Regular User' },
|
2914
|
+
{ id: '1005', title: 'Support Staff' },
|
2915
|
+
],
|
2916
|
+
},
|
2917
|
+
{
|
2918
|
+
username: 'lisadavis',
|
2919
|
+
firstname: 'Lisa',
|
2920
|
+
lastname: 'Davis',
|
2921
|
+
nationalCode: '7890123456',
|
2922
|
+
mobile: '555-789-0123',
|
2923
|
+
roleIds: [{ id: '1006', title: 'Human Resources' }],
|
2924
|
+
},
|
2925
|
+
{
|
2926
|
+
username: 'michaelwilson',
|
2927
|
+
firstname: 'Michael',
|
2928
|
+
lastname: 'Wilson',
|
2929
|
+
nationalCode: '6789012345',
|
2930
|
+
mobile: '555-678-9012',
|
2931
|
+
roleIds: [
|
2932
|
+
{ id: '1002', title: 'Manager' },
|
2933
|
+
{ id: '1007', title: 'Finance' },
|
2934
|
+
],
|
2935
|
+
},
|
2936
|
+
{
|
2937
|
+
username: 'amandamiller',
|
2938
|
+
firstname: 'Amanda',
|
2939
|
+
lastname: 'Miller',
|
2940
|
+
nationalCode: '4567890123',
|
2941
|
+
mobile: '555-456-7890',
|
2942
|
+
roleIds: [{ id: '1008', title: 'Developer' }],
|
2943
|
+
},
|
2944
|
+
];
|
2945
|
+
|
2946
|
+
class AXPSecurityManagementRoleDataSeeder {
|
2947
|
+
constructor() {
|
2948
|
+
this.storageService = inject(AXPDexieEntityStorageService);
|
2949
|
+
this.permissionService = inject(AXPPermissionProviderService);
|
2950
|
+
}
|
2951
|
+
async seed() {
|
2952
|
+
const permissions = await this.permissionService.permissions();
|
2953
|
+
const permissionKeys = permissions.map((p) => p.name);
|
2954
|
+
// Generate roles with random permissions from the actual permission list
|
2955
|
+
const roles = mockRoleDefinitions.map((role) => ({
|
2956
|
+
...role,
|
2957
|
+
permissions: this.getRandomPermissions(permissionKeys, 2, 5), // Get 2-5 random permissions
|
2958
|
+
}));
|
2959
|
+
await this.storageService.initial(`${RootConfig$2.module.name}.${RootConfig$2.entities.roles.name}`, roles);
|
2960
|
+
}
|
2961
|
+
getRandomPermissions(permissions, min, max) {
|
2962
|
+
const count = Math.floor(Math.random() * (max - min + 1)) + min;
|
2963
|
+
const shuffled = [...permissions].sort(() => 0.5 - Math.random());
|
2964
|
+
return shuffled.slice(0, count);
|
2965
|
+
}
|
2966
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPSecurityManagementRoleDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
2967
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPSecurityManagementRoleDataSeeder }); }
|
2968
|
+
}
|
2969
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPSecurityManagementRoleDataSeeder, decorators: [{
|
2970
|
+
type: Injectable
|
2971
|
+
}] });
|
2972
|
+
|
2973
|
+
class AXPSecurityManagementUserDataSeeder {
|
2974
|
+
constructor() {
|
2975
|
+
this.storageService = inject(AXPDexieEntityStorageService);
|
2976
|
+
}
|
2977
|
+
async seed() {
|
2978
|
+
await this.storageService.initial(`${RootConfig$2.module.name}.${RootConfig$2.entities.users.name}`, this.generateUsers());
|
2979
|
+
}
|
2980
|
+
generateUsers() {
|
2981
|
+
return mockUsers.map((user) => ({
|
2982
|
+
id: AXPDataGenerator.uuid(),
|
2983
|
+
username: user.username,
|
2984
|
+
firstname: user.firstname,
|
2985
|
+
lastname: user.lastname,
|
2986
|
+
nationalCode: user.nationalCode,
|
2987
|
+
mobile: user.mobile,
|
2988
|
+
password: '123',
|
2989
|
+
roles: user.roleIds,
|
2990
|
+
}));
|
2991
|
+
}
|
2992
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPSecurityManagementUserDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
2993
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPSecurityManagementUserDataSeeder }); }
|
2994
|
+
}
|
2995
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPSecurityManagementUserDataSeeder, decorators: [{
|
2996
|
+
type: Injectable
|
2997
|
+
}] });
|
2998
|
+
|
2999
|
+
class AXCSecurityManagementMockModule {
|
3000
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCSecurityManagementMockModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
3001
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.3", ngImport: i0, type: AXCSecurityManagementMockModule }); }
|
3002
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCSecurityManagementMockModule, providers: [
|
3003
|
+
{
|
3004
|
+
provide: AXP_WIDGET_DATASOURCE_PROVIDER,
|
3005
|
+
useClass: AXPSecurityManagementMockWidgetDataSourceProvider,
|
3006
|
+
multi: true,
|
3007
|
+
},
|
3008
|
+
{
|
3009
|
+
provide: AXP_DATA_SEEDER_TOKEN,
|
3010
|
+
useClass: AXPSecurityManagementUserDataSeeder,
|
3011
|
+
multi: true,
|
3012
|
+
},
|
3013
|
+
{
|
3014
|
+
provide: AXP_DATA_SEEDER_TOKEN,
|
3015
|
+
useClass: AXPSecurityManagementRoleDataSeeder,
|
3016
|
+
multi: true,
|
3017
|
+
},
|
3018
|
+
] }); }
|
3019
|
+
}
|
3020
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCSecurityManagementMockModule, decorators: [{
|
3021
|
+
type: NgModule,
|
3022
|
+
args: [{
|
3023
|
+
imports: [],
|
3024
|
+
exports: [],
|
3025
|
+
declarations: [],
|
3026
|
+
providers: [
|
3027
|
+
{
|
3028
|
+
provide: AXP_WIDGET_DATASOURCE_PROVIDER,
|
3029
|
+
useClass: AXPSecurityManagementMockWidgetDataSourceProvider,
|
3030
|
+
multi: true,
|
3031
|
+
},
|
3032
|
+
{
|
3033
|
+
provide: AXP_DATA_SEEDER_TOKEN,
|
3034
|
+
useClass: AXPSecurityManagementUserDataSeeder,
|
3035
|
+
multi: true,
|
3036
|
+
},
|
3037
|
+
{
|
3038
|
+
provide: AXP_DATA_SEEDER_TOKEN,
|
3039
|
+
useClass: AXPSecurityManagementRoleDataSeeder,
|
3040
|
+
multi: true,
|
3041
|
+
},
|
3042
|
+
],
|
3043
|
+
}]
|
3044
|
+
}] });
|
3045
|
+
|
2015
3046
|
const TEXT_TEMPLATE_CATEGORY = [
|
2016
3047
|
{
|
2017
3048
|
id: AXPDataGenerator.uuid(),
|
@@ -2134,7 +3165,7 @@ class AXCTextTemplateCategoryDataSeeder {
|
|
2134
3165
|
this.storageService = inject(AXPDexieEntityStorageService);
|
2135
3166
|
}
|
2136
3167
|
async seed() {
|
2137
|
-
await this.storageService.initial(`${RootConfig$
|
3168
|
+
await this.storageService.initial(`${RootConfig$7.module.name}.${RootConfig$7.entities.category.name}`, TEXT_TEMPLATE_CATEGORY);
|
2138
3169
|
}
|
2139
3170
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCTextTemplateCategoryDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
2140
3171
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCTextTemplateCategoryDataSeeder }); }
|
@@ -2148,7 +3179,7 @@ class AXCTextTemplateDataSeeder {
|
|
2148
3179
|
this.storageService = inject(AXPDexieEntityStorageService);
|
2149
3180
|
}
|
2150
3181
|
async seed() {
|
2151
|
-
await this.storageService.initial(`${RootConfig$
|
3182
|
+
await this.storageService.initial(`${RootConfig$7.module.name}.${RootConfig$7.entities.template.name}`, TEXT_TEMPLATES);
|
2152
3183
|
}
|
2153
3184
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCTextTemplateDataSeeder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
2154
3185
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCTextTemplateDataSeeder }); }
|
@@ -2161,7 +3192,8 @@ class AXCMockModule {
|
|
2161
3192
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCMockModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
2162
3193
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.3", ngImport: i0, type: AXCMockModule, imports: [i1$1.AXPAuthModule, AXCFormTemplateManagementMockModule,
|
2163
3194
|
AXCFOrganizationManagementMockModule,
|
2164
|
-
AXCConversationMockModule
|
3195
|
+
AXCConversationMockModule,
|
3196
|
+
AXCSecurityManagementMockModule] }); }
|
2165
3197
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCMockModule, providers: [
|
2166
3198
|
AXPDexieEntityStorageService,
|
2167
3199
|
{
|
@@ -2212,11 +3244,31 @@ class AXCMockModule {
|
|
2212
3244
|
useClass: AXCAppTermDataSeeder,
|
2213
3245
|
multi: true,
|
2214
3246
|
},
|
3247
|
+
{
|
3248
|
+
provide: AXP_DATA_SEEDER_TOKEN,
|
3249
|
+
useClass: AXCMetaDataDefinitionDataSeeder,
|
3250
|
+
multi: true,
|
3251
|
+
},
|
2215
3252
|
{
|
2216
3253
|
provide: AXP_DATA_SEEDER_TOKEN,
|
2217
3254
|
useClass: AXCAppTermDataSeeder,
|
2218
3255
|
multi: true,
|
2219
3256
|
},
|
3257
|
+
{
|
3258
|
+
provide: AXP_DATA_SEEDER_TOKEN,
|
3259
|
+
useClass: AXCFolderDataSeeder,
|
3260
|
+
multi: true,
|
3261
|
+
},
|
3262
|
+
{
|
3263
|
+
provide: AXP_DATA_SEEDER_TOKEN,
|
3264
|
+
useClass: AXCDocumentTypeDataSeeder,
|
3265
|
+
multi: true,
|
3266
|
+
},
|
3267
|
+
{
|
3268
|
+
provide: AXP_DATA_SEEDER_TOKEN,
|
3269
|
+
useClass: AXCFileDataSeeder,
|
3270
|
+
multi: true,
|
3271
|
+
},
|
2220
3272
|
{
|
2221
3273
|
provide: AXPModuleDesignerService,
|
2222
3274
|
useClass: AXCModuleDesignerService,
|
@@ -2229,6 +3281,14 @@ class AXCMockModule {
|
|
2229
3281
|
provide: AXPRegionalService,
|
2230
3282
|
useClass: AXCRegionalServiceImpl,
|
2231
3283
|
},
|
3284
|
+
{
|
3285
|
+
provide: AXMFolderService,
|
3286
|
+
useClass: AXMFolderMockService,
|
3287
|
+
},
|
3288
|
+
{
|
3289
|
+
provide: AXMDocumentService,
|
3290
|
+
useClass: AXMFileMockService,
|
3291
|
+
},
|
2232
3292
|
{
|
2233
3293
|
provide: AXP_SEARCH_PROVIDER,
|
2234
3294
|
useClass: EntitySearchProvider,
|
@@ -2239,7 +3299,8 @@ class AXCMockModule {
|
|
2239
3299
|
}),
|
2240
3300
|
AXCFormTemplateManagementMockModule,
|
2241
3301
|
AXCFOrganizationManagementMockModule,
|
2242
|
-
AXCConversationMockModule
|
3302
|
+
AXCConversationMockModule,
|
3303
|
+
AXCSecurityManagementMockModule] }); }
|
2243
3304
|
}
|
2244
3305
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXCMockModule, decorators: [{
|
2245
3306
|
type: NgModule,
|
@@ -2251,6 +3312,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
2251
3312
|
AXCFormTemplateManagementMockModule,
|
2252
3313
|
AXCFOrganizationManagementMockModule,
|
2253
3314
|
AXCConversationMockModule,
|
3315
|
+
AXCSecurityManagementMockModule,
|
2254
3316
|
],
|
2255
3317
|
exports: [],
|
2256
3318
|
declarations: [],
|
@@ -2304,11 +3366,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
2304
3366
|
useClass: AXCAppTermDataSeeder,
|
2305
3367
|
multi: true,
|
2306
3368
|
},
|
3369
|
+
{
|
3370
|
+
provide: AXP_DATA_SEEDER_TOKEN,
|
3371
|
+
useClass: AXCMetaDataDefinitionDataSeeder,
|
3372
|
+
multi: true,
|
3373
|
+
},
|
2307
3374
|
{
|
2308
3375
|
provide: AXP_DATA_SEEDER_TOKEN,
|
2309
3376
|
useClass: AXCAppTermDataSeeder,
|
2310
3377
|
multi: true,
|
2311
3378
|
},
|
3379
|
+
{
|
3380
|
+
provide: AXP_DATA_SEEDER_TOKEN,
|
3381
|
+
useClass: AXCFolderDataSeeder,
|
3382
|
+
multi: true,
|
3383
|
+
},
|
3384
|
+
{
|
3385
|
+
provide: AXP_DATA_SEEDER_TOKEN,
|
3386
|
+
useClass: AXCDocumentTypeDataSeeder,
|
3387
|
+
multi: true,
|
3388
|
+
},
|
3389
|
+
{
|
3390
|
+
provide: AXP_DATA_SEEDER_TOKEN,
|
3391
|
+
useClass: AXCFileDataSeeder,
|
3392
|
+
multi: true,
|
3393
|
+
},
|
2312
3394
|
{
|
2313
3395
|
provide: AXPModuleDesignerService,
|
2314
3396
|
useClass: AXCModuleDesignerService,
|
@@ -2321,6 +3403,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
2321
3403
|
provide: AXPRegionalService,
|
2322
3404
|
useClass: AXCRegionalServiceImpl,
|
2323
3405
|
},
|
3406
|
+
{
|
3407
|
+
provide: AXMFolderService,
|
3408
|
+
useClass: AXMFolderMockService,
|
3409
|
+
},
|
3410
|
+
{
|
3411
|
+
provide: AXMDocumentService,
|
3412
|
+
useClass: AXMFileMockService,
|
3413
|
+
},
|
2324
3414
|
{
|
2325
3415
|
provide: AXP_SEARCH_PROVIDER,
|
2326
3416
|
useClass: EntitySearchProvider,
|