qms-angular 1.1.33 → 1.1.35

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. package/bundles/qms-angular.umd.js +913 -417
  2. package/bundles/qms-angular.umd.js.map +1 -1
  3. package/esm2015/lib/common/enum/document-field-status.js +7 -0
  4. package/esm2015/lib/common/models/qms-flat-node.model.js +1 -1
  5. package/esm2015/lib/common/models/qms-tree-node.model.js +1 -1
  6. package/esm2015/lib/components/qms-stepper/models/qms-stepper.model.js +4 -2
  7. package/esm2015/lib/components/qms-stepper/qms-stepper.component.js +5 -3
  8. package/esm2015/lib/components/related/common/video.const.js +4 -0
  9. package/esm2015/lib/components/related/model/popup-data.model.js +1 -1
  10. package/esm2015/lib/components/related/popup/related-popup.component.js +30 -12
  11. package/esm2015/lib/components/select-access-dialog/select-access-dialog.component.js +1 -1
  12. package/esm2015/lib/components/select-department/model/select-department-popup-data.model.js +1 -1
  13. package/esm2015/lib/components/select-department/select-department.component.js +103 -16
  14. package/esm2015/lib/components/select-department/select-department.module.js +4 -2
  15. package/esm2015/lib/components/select-department-tree/model/select-department-tree.config.js +4 -1
  16. package/esm2015/lib/components/select-department-tree/select-department-tree.component.js +405 -183
  17. package/esm2015/lib/components/select-department-tree/select-department-tree.module.js +4 -2
  18. package/esm2015/lib/components/select-department-tree/service/select-department-tree-global.service.js +41 -10
  19. package/esm2015/lib/components/select-process-document/select-process-document.component.js +1 -1
  20. package/esm2015/lib/components/tree/model/tree-node.model.js +1 -1
  21. package/esm2015/lib/components/tree/tree.component.js +75 -42
  22. package/esm2015/lib/components/tree/tree.function.js +2 -1
  23. package/esm2015/lib/model/en.js +5 -2
  24. package/esm2015/lib/model/no.js +8 -5
  25. package/esm2015/lib/qms-ckeditor-components/common/classes/qmsUploadAdapter.js +1 -5
  26. package/esm2015/lib/qms-ckeditor-components/common/constants/iconSvg.constants.js +2 -1
  27. package/esm2015/lib/qms-ckeditor-components/common/functions/common.function.js +3 -3
  28. package/esm2015/lib/qms-ckeditor-components/common/models/qms-ckeditor-data.model.js +1 -1
  29. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-bpmn/qms-ckeditor-bpmn.component.js +3 -3
  30. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-imagemap/qms-ckeditor-imagemap.component.js +2 -2
  31. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-link/qms-ckeditor-link.component.js +15 -3
  32. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-link-simple/qms-ckeditor-link-simple.component.js +2 -1
  33. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-load-template/qms-ckeditor-load-template.component.js +14 -9
  34. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-relation/qmsckeditor-related.component.js +17 -47
  35. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-template/qms-ckeditor-template.component.js +68 -27
  36. package/esm2015/lib/qms-ckeditor-components/models/qms-ckeditor-template.model.js +3 -2
  37. package/esm2015/lib/qms-ckeditor-components/qms-ckeditor.component.js +14 -10
  38. package/esm2015/lib/qms-ckeditor-components/qms-ckeditor.module.js +3 -1
  39. package/esm2015/lib/qms-ckeditor-components/services/qms-ckeditor-upload.service.js +5 -2
  40. package/esm2015/lib/qms-ckeditor-components/services/qms-ckedtior-template.service.js +8 -5
  41. package/fesm2015/qms-angular.js +825 -381
  42. package/fesm2015/qms-angular.js.map +1 -1
  43. package/lib/common/enum/document-field-status.d.ts +5 -0
  44. package/lib/common/models/qms-flat-node.model.d.ts +4 -0
  45. package/lib/common/models/qms-tree-node.model.d.ts +3 -0
  46. package/lib/components/qms-stepper/models/qms-stepper.model.d.ts +3 -1
  47. package/lib/components/qms-stepper/qms-stepper.component.d.ts +2 -0
  48. package/lib/components/related/common/video.const.d.ts +3 -0
  49. package/lib/components/related/model/popup-data.model.d.ts +2 -0
  50. package/lib/components/related/popup/related-popup.component.d.ts +5 -2
  51. package/lib/components/select-access-dialog/select-access-dialog.component.d.ts +1 -1
  52. package/lib/components/select-department/model/select-department-popup-data.model.d.ts +2 -0
  53. package/lib/components/select-department/select-department.component.d.ts +45 -11
  54. package/lib/components/select-department-tree/model/select-department-tree.config.d.ts +10 -7
  55. package/lib/components/select-department-tree/select-department-tree.component.d.ts +45 -16
  56. package/lib/components/select-department-tree/service/select-department-tree-global.service.d.ts +2 -5
  57. package/lib/components/tree/model/tree-node.model.d.ts +1 -0
  58. package/lib/components/tree/tree.component.d.ts +2 -1
  59. package/lib/model/en.d.ts +3 -0
  60. package/lib/model/no.d.ts +3 -0
  61. package/lib/qms-ckeditor-components/common/classes/qmsUploadAdapter.d.ts +0 -1
  62. package/lib/qms-ckeditor-components/common/constants/iconSvg.constants.d.ts +1 -0
  63. package/lib/qms-ckeditor-components/common/models/qms-ckeditor-data.model.d.ts +3 -0
  64. package/lib/qms-ckeditor-components/components/qms-ckeditor-link/qms-ckeditor-link.component.d.ts +1 -0
  65. package/lib/qms-ckeditor-components/components/qms-ckeditor-load-template/qms-ckeditor-load-template.component.d.ts +4 -2
  66. package/lib/qms-ckeditor-components/components/qms-ckeditor-relation/qmsckeditor-related.component.d.ts +1 -1
  67. package/lib/qms-ckeditor-components/components/qms-ckeditor-template/qms-ckeditor-template.component.d.ts +17 -3
  68. package/lib/qms-ckeditor-components/models/qms-ckeditor-template.model.d.ts +3 -1
  69. package/lib/qms-ckeditor-components/services/qms-ckeditor-upload.service.d.ts +1 -1
  70. package/lib/qms-ckeditor-components/services/qms-ckedtior-template.service.d.ts +2 -1
  71. package/package.json +1 -1
  72. package/qms-angular.metadata.json +1 -1
  73. package/src/assets/qms-ckeditor-plugin/build/ckeditor.js +1 -1
  74. package/src/assets/qms-ckeditor-plugin/build/ckeditor.js.map +1 -1
  75. package/src/assets/qms-ckeditor-plugin/src/plugins/anchor/autoanchor.js +17 -17
  76. package/src/assets/qms-ckeditor-plugin/src/plugins/link/autolink.js +17 -17
  77. package/src/assets/qms-ckeditor-plugin/src/plugins/link/linkui.js +1 -1
  78. package/src/assets/qms-ckeditor-plugin/src/plugins/table/converters/downcast.js +2 -2
  79. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableproperties/tablepropertiesediting.js +2 -1
  80. package/src/lib/components/qms-stepper/qms-stepper.component.scss +7 -0
  81. package/src/lib/components/select-department/select-department.component.scss +17 -0
  82. package/src/lib/components/select-department-tree/select-department-tree.component.scss +11 -159
  83. package/src/lib/components/select-process-document/select-process-document.component.scss +3 -0
  84. package/src/lib/qms-ckeditor-components/components/qms-ckeditor-bpmn/qms-ckeditor-bpmn.component.scss +26 -0
  85. package/src/lib/qms-ckeditor-components/components/qms-ckeditor-load-template/qms-ckeditor-load-template.component.scss +5 -0
  86. package/src/lib/qms-ckeditor-components/components/qms-ckeditor-template/qms-ckeditor-template.component.scss +21 -0
@@ -0,0 +1,5 @@
1
+ export declare enum DocumentFieldStatus {
2
+ Normal = 1,
3
+ Mandatory = 2,
4
+ Deleted = 3
5
+ }
@@ -15,4 +15,8 @@ export declare class QMSFlatNodeTree {
15
15
  groupId?: string;
16
16
  isLoading?: boolean;
17
17
  path?: string[];
18
+ childCount?: number;
19
+ markedGetChildCountRecurrsive?: boolean;
20
+ selectedChildCount?: number;
21
+ isIncludeChildWhenChecked?: boolean;
18
22
  }
@@ -16,6 +16,9 @@ export interface QMSTreeNode {
16
16
  groupId?: string;
17
17
  expandable?: boolean;
18
18
  path?: string[];
19
+ selectedChildCount?: number;
20
+ markedGetChildCountRecurrsive?: boolean;
21
+ isIncludeChildWhenChecked?: boolean;
19
22
  }
20
23
  export declare class QMSTreeModel implements QMSTreeNode {
21
24
  id: string;
@@ -1,7 +1,9 @@
1
+ import { DocumentFieldStatus } from "../../../common/enum/document-field-status";
1
2
  export declare class StepModel {
2
3
  id: string;
3
4
  name: string;
4
5
  disabled: boolean;
5
6
  selected: boolean;
6
- constructor(id: string, name: string, disabled: boolean, selected: boolean);
7
+ documentFieldStatus?: DocumentFieldStatus;
8
+ constructor(id: string, name: string, disabled: boolean, selected: boolean, documentFieldStatus?: DocumentFieldStatus);
7
9
  }
@@ -1,5 +1,6 @@
1
1
  import { ChangeDetectorRef, EventEmitter, OnInit } from '@angular/core';
2
2
  import { StepModel } from './models/qms-stepper.model';
3
+ import { DocumentFieldStatus } from '../../common/enum/document-field-status';
3
4
  export declare class QmsStepperComponent implements OnInit {
4
5
  private changeDetector;
5
6
  stepper: any;
@@ -10,6 +11,7 @@ export declare class QmsStepperComponent implements OnInit {
10
11
  currentStep: number;
11
12
  labelPosition: string;
12
13
  selectionChangeEvent: EventEmitter<number>;
14
+ documentFieldStatus: typeof DocumentFieldStatus;
13
15
  constructor(changeDetector: ChangeDetectorRef);
14
16
  ngOnInit(): void;
15
17
  changeStep(selectedIndex: number): void;
@@ -0,0 +1,3 @@
1
+ export declare class VideoConst {
2
+ static DEFAUL_MAX_VIDEO_THUMBNAIL_SIZE_KB: number;
3
+ }
@@ -15,5 +15,7 @@ export declare class PopupData {
15
15
  maxSelectItemCount?: number;
16
16
  canOnlySelectItem?: boolean;
17
17
  canUploadImage?: boolean;
18
+ maxFileSizeMB?: number;
19
+ maxVideoThumbnailSizeKB?: number;
18
20
  constructor();
19
21
  }
@@ -1,7 +1,7 @@
1
1
  import { AfterViewChecked, ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, OnInit, QueryList } from '@angular/core';
2
2
  import { FormControl } from '@angular/forms';
3
3
  import { MatAutocompleteTrigger } from '@angular/material/autocomplete';
4
- import { MatDialogRef } from '@angular/material/dialog';
4
+ import { MatDialogRef, MatDialog } from '@angular/material/dialog';
5
5
  import { MatIconRegistry } from '@angular/material/icon';
6
6
  import { DomSanitizer } from '@angular/platform-browser';
7
7
  import { Subject } from 'rxjs';
@@ -29,6 +29,7 @@ export declare class RelatedPopupComponent implements OnInit, OnDestroy, AfterVi
29
29
  private appIconService;
30
30
  private elem;
31
31
  private uploadService;
32
+ dialog: MatDialog;
32
33
  data: PopupData;
33
34
  ngUnsubscribe: Subject<void>;
34
35
  LANG: any;
@@ -73,13 +74,15 @@ export declare class RelatedPopupComponent implements OnInit, OnDestroy, AfterVi
73
74
  parentNodeSelected: TreeFlatNode;
74
75
  treeControlNodeProcess: any;
75
76
  treeControlNodeDocument: any;
77
+ acceptExtensions: string[];
76
78
  qmsInputImageType: FormControl;
77
79
  qmsInputImageFile: QMSFileAttachment;
78
80
  isLoadingImageFile: boolean;
79
81
  imageUpload: HTMLImageElement;
82
+ maxVideoThumbnailSizeKB?: number;
80
83
  dataTrees: QueryList<TreeComponent>;
81
84
  autoComplete: MatAutocompleteTrigger;
82
- constructor(cdRef: ChangeDetectorRef, translate: TranslateLibraryService, dialogRef: MatDialogRef<RelatedPopupComponent>, globalService: QMSRelatedGlobalService, iconRegistry: MatIconRegistry, sanitizer: DomSanitizer, appIconService: QMSIconRegistryService, elem: ElementRef, uploadService: QMSCKEditorUploadService, data: PopupData);
85
+ constructor(cdRef: ChangeDetectorRef, translate: TranslateLibraryService, dialogRef: MatDialogRef<RelatedPopupComponent>, globalService: QMSRelatedGlobalService, iconRegistry: MatIconRegistry, sanitizer: DomSanitizer, appIconService: QMSIconRegistryService, elem: ElementRef, uploadService: QMSCKEditorUploadService, dialog: MatDialog, data: PopupData);
83
86
  ngOnDestroy(): void;
84
87
  onMessage(event: any): void;
85
88
  ngOnInit(): void;
@@ -29,7 +29,7 @@ export declare class QMSSelectAccessDialogComponent implements OnInit, OnDestroy
29
29
  OPTION_ENUM: typeof OptionSelectAccessEnum;
30
30
  options: OptionSelectAccessModel[];
31
31
  private _departmentSelected;
32
- get selectedDepartments(): QMSTreeNode[];
32
+ get selectedDepartments(): QMSFlatNodeTree[];
33
33
  personForm: FormGroup;
34
34
  userGroupForm: FormControl;
35
35
  getLoading$: BehaviorSubject<boolean>;
@@ -1,6 +1,8 @@
1
+ import { QMSTreeNode } from "../../../common/models/qms-tree-node.model";
1
2
  import { QMSSelectDepartmentTreeConfig } from "../../select-department-tree";
2
3
  export declare class SelectDepartmentPopupData {
3
4
  headerName: string;
4
5
  config: QMSSelectDepartmentTreeConfig;
6
+ formatTooltipItemResult?: (node: QMSTreeNode) => string;
5
7
  constructor();
6
8
  }
@@ -27,6 +27,7 @@ export declare class SelectDepartmentComponent implements OnInit, OnDestroy, Aft
27
27
  item: DepartmentSearchResultModel;
28
28
  }>;
29
29
  onCheckAllItemSearchEvent: EventEmitter<boolean>;
30
+ toggleIncludeChildEvent: EventEmitter<boolean>;
30
31
  resultSearch: QMSFlatNodeTree[];
31
32
  isActiveViewSearch: boolean;
32
33
  get isIncludeChild(): boolean;
@@ -35,11 +36,16 @@ export declare class SelectDepartmentComponent implements OnInit, OnDestroy, Aft
35
36
  onCloseDialog(): void;
36
37
  ngOnInit(): void;
37
38
  ngOnDestroy(): void;
39
+ get currentTreeData(): QMSTreeNode[];
38
40
  displayWhenSelectDepartmentOption($event: any): string | null;
39
41
  onScrollToNode(node: QMSTreeNode): void;
40
42
  onRemoveNode(node: QMSTreeNode): void;
43
+ /**
44
+ * Gets a list of the data node's subtree of descendent data nodes.
45
+ */
41
46
  getChildrenNode(node: QMSFlatNodeTree): QMSFlatNodeTree[];
42
47
  onResultDepartmentChange(data: QMSTreeNode[]): void;
48
+ defaultFormatTooltipNode(node: QMSTreeNode): string;
43
49
  generateTootip(node: QMSTreeNode): string;
44
50
  updateResultSearch(data: QMSDepartmentPagingModel<QMSFlatNodeTree>): void;
45
51
  private formatString;
@@ -49,21 +55,22 @@ export declare class SelectDepartmentComponent implements OnInit, OnDestroy, Aft
49
55
  * @param data list children to update node.
50
56
  * @param mode default is update that replace current list children by new list children , if mode = 'insert' will insert new value to list children existed before.
51
57
  */
52
- updateChildOfNode(node: QMSFlatNodeTree, data: QMSTreeNode[], mode?: 'insert' | 'update'): void;
53
- addRootTree(data?: QMSTreeNode[]): void;
58
+ updateChildOfNode(node: QMSFlatNodeTree, data: QMSFlatNodeTree[], mode?: 'insert' | 'update'): void;
59
+ addRootTree(data?: QMSFlatNodeTree[]): void;
54
60
  /**
55
- * This function handle check node of tree
56
- * @param node node of tree
57
- * @param callback do something before handle check node
58
- * @returns
59
- */
60
- handleCheckNode(node: QMSFlatNodeTree, callback?: (node: QMSFlatNodeTree) => void): void;
61
+ * This function handle check node of tree
62
+ * @param node node of tree
63
+ * @param callback do something before handle check node
64
+ * @returns
65
+ */
66
+ onBeforeCheckNode(node: QMSFlatNodeTree, callback?: (node: QMSFlatNodeTree) => void | Promise<void>): Promise<void>;
67
+ handleCheckNode(node: QMSFlatNodeTree): void;
61
68
  /**
62
69
  * This method use for lazy mode, do some thing before init list node selected
63
70
  * @param callback
64
71
  * @returns
65
72
  */
66
- onBeforeInitNodeSelected(callback?: () => void): Promise<void>;
73
+ onBeforeInitNodeSelected(callback?: () => void | Promise<void>): Promise<void>;
67
74
  /**
68
75
  * Get node by id of node
69
76
  * @param nodeId id of node
@@ -75,11 +82,38 @@ export declare class SelectDepartmentComponent implements OnInit, OnDestroy, Aft
75
82
  * @param callback
76
83
  * @returns
77
84
  */
78
- onBeforeCheckAllSearch(callback?: (data: any) => void): Promise<void>;
85
+ onBeforeCheckAllSearch(callback?: (data: any) => void | Promise<void>): Promise<void>;
79
86
  /**
80
87
  * This method use for lazy mode, do some thing before check item result
81
88
  * @param callback
82
89
  * @returns
83
90
  */
84
- onBeforeCheckItemSearch(item: DepartmentSearchResultModel, callback?: (item: DepartmentSearchResultModel) => void): void;
91
+ onBeforeCheckItemSearch(item: DepartmentSearchResultModel, callback?: (item: DepartmentSearchResultModel) => void | Promise<void>): void;
92
+ setLoadingStateNode(isLoading: any, nodeId: string): void;
93
+ /**
94
+ * Select a value or an array of values.
95
+ */
96
+ onSelectNode(...nodeIds: string[]): void;
97
+ /**
98
+ * Deselects a value or an array of values.
99
+ */
100
+ onDeselectNode(...nodeIds: string[]): void;
101
+ /**
102
+ * Toggles a value between selected and deselected.
103
+ */
104
+ onToggleNode(nodeId: string): void;
105
+ getNodeById(nodeId: string): QMSFlatNodeTree;
106
+ isNodeLoading(nodeId: string): boolean;
107
+ setLoadingMore(state: boolean): void;
108
+ setLoading(state: boolean): void;
109
+ setLoadingNode(nodeId: string, state: boolean): void;
110
+ updateTreeData(data?: QMSTreeNode[]): void;
111
+ onDestroyLoadMore(): void;
112
+ setSelectedListData(data: any): void;
113
+ getCheckedStatusNode(node: QMSFlatNodeTree): boolean;
114
+ updateNodeInformation(node: QMSFlatNodeTree): void;
115
+ updateSelectedResultData(node: QMSFlatNodeTree): void;
116
+ getAllParentNode(node: QMSFlatNodeTree): QMSFlatNodeTree[];
117
+ onCheckNode(node: QMSFlatNodeTree, fireEventCheckNode?: boolean): void;
118
+ getChildrenSelected(node: QMSFlatNodeTree): QMSFlatNodeTree[];
85
119
  }
@@ -1,18 +1,18 @@
1
- import { QMSTreeNode } from "../../../common/models/qms-tree-node.model";
1
+ import { QMSFlatNodeTree } from "../../../common/models/qms-flat-node.model";
2
2
  import { ModeDepartmentTreeeViewEnum } from "../enum/mode-department-tree-view.enum";
3
3
  export declare class QMSSelectDepartmentTreeConfig {
4
4
  selectIncludeLabel: string;
5
- treeData: Array<QMSTreeNode>;
5
+ treeData: Array<QMSFlatNodeTree>;
6
6
  disabledList?: Array<any>;
7
- selectedList?: Array<QMSTreeNode>;
7
+ selectedList?: Array<QMSFlatNodeTree>;
8
8
  enableIncludeChild?: boolean;
9
9
  enableTreeSearch: boolean;
10
10
  enablePagingSearch: boolean;
11
- checkSearchMappingTree: boolean;
11
+ checkSearchMappingTree?: boolean;
12
12
  isSelectOne: boolean;
13
- activeViewSearch: boolean;
14
- height: string;
15
- customClass: string;
13
+ activeViewSearch?: boolean;
14
+ height?: string;
15
+ customClass?: string;
16
16
  headerName: {
17
17
  treeName: string;
18
18
  externalName: string;
@@ -22,5 +22,8 @@ export declare class QMSSelectDepartmentTreeConfig {
22
22
  modeView: ModeDepartmentTreeeViewEnum;
23
23
  isMobile: boolean;
24
24
  lazy: boolean;
25
+ resetToggleIncludeChildWhenChangeView?: boolean;
26
+ isIncludeChildren?: boolean;
27
+ tooltipIncludeLabel?: string;
25
28
  constructor();
26
29
  }
@@ -28,9 +28,9 @@ export declare class SelectDepartmentTreeComponent implements OnInit, AfterViewI
28
28
  private iconRegistry;
29
29
  private eleRef;
30
30
  trans: TranslateLibraryService;
31
- private treeDepartmentGlobalService;
32
31
  overlay: Overlay;
33
32
  viewContainerRef: ViewContainerRef;
33
+ private treeDepartmentService;
34
34
  LANG: any;
35
35
  readonly spinnerArr: any[];
36
36
  arrSkeleton: any[];
@@ -53,6 +53,7 @@ export declare class SelectDepartmentTreeComponent implements OnInit, AfterViewI
53
53
  item: DepartmentSearchResultModel;
54
54
  }>;
55
55
  onCheckAllItemSearchEvent: EventEmitter<boolean>;
56
+ toggleIncludeChildEvent: EventEmitter<boolean>;
56
57
  cdkVirtualScrollViewport: CdkVirtualScrollViewport;
57
58
  paginatorSearch: QMSPaginatorComponent;
58
59
  readonly MODE_VIEW_ENUM: typeof ModeDepartmentTreeeViewEnum;
@@ -72,6 +73,7 @@ export declare class SelectDepartmentTreeComponent implements OnInit, AfterViewI
72
73
  activeNode: string;
73
74
  readonly PAGINATION_SIZE: typeof PaginationSize;
74
75
  PAGE_SIZE_OPTION: number[];
76
+ CURRENT_PAGESIZE: number;
75
77
  readonly nestedTreeNodeMap: Map<QMSTreeNode, QMSFlatNodeTree>;
76
78
  readonly flatTreeNodeMap: Map<QMSFlatNodeTree, QMSTreeNode>;
77
79
  readonly checkListSelection: SelectionModel<QMSFlatNodeTree>;
@@ -80,44 +82,57 @@ export declare class SelectDepartmentTreeComponent implements OnInit, AfterViewI
80
82
  treeFlattener: MatTreeFlattener<QMSTreeNode, QMSFlatNodeTree>;
81
83
  dataSource: MatTreeFlatDataSource<QMSTreeNode, QMSFlatNodeTree>;
82
84
  dataSourceTreeSearch: MatTreeFlatDataSource<QMSTreeNode, QMSFlatNodeTree>;
85
+ private _selectedList;
86
+ private readonly selectedListAfterDataNodeChange$;
83
87
  formSearchControl: FormControl;
84
88
  readonly getLoading$: BehaviorSubject<boolean>;
85
89
  readonly getLoadingMore$: BehaviorSubject<boolean>;
86
- readonly afterOnCheckNode: Subject<QMSFlatNodeTree>;
87
- private readonly onBeforeInitNodeSelected$;
88
- textResultSearch: string;
90
+ readonly untilDestroyLoadMore$: Subject<void>;
91
+ readonly onBeforeInitNodeSelected$: Subject<void>;
92
+ readonly textSearchSubject$: BehaviorSubject<string>;
89
93
  itemIconType: typeof ItemIconType;
90
94
  private readonly _transformer;
91
95
  private readonly getLevel;
92
96
  private readonly _getChild;
93
97
  private readonly isExpandable;
94
98
  hasChild: (_: number, node: QMSFlatNodeTree) => boolean;
95
- constructor(cdRef: ChangeDetectorRef, domSanitizer: DomSanitizer, appIconService: QMSIconRegistryService, iconRegistry: MatIconRegistry, eleRef: ElementRef, trans: TranslateLibraryService, treeDepartmentGlobalService: QMSSelectDepartmentTreeGlobalService, overlay: Overlay, viewContainerRef: ViewContainerRef);
99
+ private readonly _handlingLazyObject;
100
+ constructor(cdRef: ChangeDetectorRef, domSanitizer: DomSanitizer, appIconService: QMSIconRegistryService, iconRegistry: MatIconRegistry, eleRef: ElementRef, trans: TranslateLibraryService, overlay: Overlay, viewContainerRef: ViewContainerRef, treeDepartmentService: QMSSelectDepartmentTreeGlobalService);
96
101
  ngAfterContentInit(): void;
97
102
  ngAfterViewInit(): void;
98
103
  ngOnInit(): void;
99
104
  ngOnDestroy(): void;
105
+ onDestroyLoadMore(): void;
100
106
  private _initTreeData;
101
- private _convertToTreeData;
102
- private _initCheckListSelected;
107
+ private _handleListSelected;
108
+ private _initListSelected;
109
+ private _handleAfterDataNodeChangeEvent;
103
110
  /**
104
111
  * This method use for lazy mode, do some thing before init list node selected
105
112
  * @param callback
106
113
  * @returns
107
114
  */
108
- onBeforeInitNodeSelected(callback?: () => void): Promise<void>;
115
+ onBeforeInitNodeSelected(callback?: () => void | Promise<void>): Promise<void>;
109
116
  private _handleItemSelectionChanged;
110
117
  private _onSelectionNodeChangeEvent;
111
118
  private _handleSearchEvent;
112
119
  private _handleActiveNodeEvent;
113
120
  updateDataTree(data: QMSTreeNode[]): void;
121
+ setLoadingStateNode(isLoading: boolean, nodeId: string): void;
114
122
  onExpandNode(node: QMSFlatNodeTree): void;
115
123
  onOptionSearchSelected(value: QMSFlatNodeTree): void;
116
124
  onCheckAllRootTreeNode(): void;
117
- onCheckNode(node: QMSFlatNodeTree): void;
125
+ onCheckNode(node: QMSFlatNodeTree, fireEventCheckNode?: boolean): void;
118
126
  private _handleSelectOne;
119
127
  onExpandAllParent(node: QMSFlatNodeTree): void;
120
128
  onRemoveNode(nodeId: string): void;
129
+ onSelectNode(...nodeIds: string[]): void;
130
+ onDeselectNode(...nodeIds: string[]): void;
131
+ /**
132
+ * Toggles a value between selected and deselected.
133
+ * @param nodeId :id of node
134
+ */
135
+ onToggleNode(nodeId: string): void;
121
136
  isIndeterminate(node: QMSFlatNodeTree): boolean;
122
137
  isCheckAll(node: QMSFlatNodeTree): boolean;
123
138
  /**
@@ -126,16 +141,22 @@ export declare class SelectDepartmentTreeComponent implements OnInit, AfterViewI
126
141
  * @param callback do something before handle check node
127
142
  * @returns
128
143
  */
129
- handleCheckNode(node: QMSFlatNodeTree, callback?: (node: QMSFlatNodeTree) => void): Promise<void>;
144
+ onBeforeCheckNode(node: QMSFlatNodeTree, callback?: (node: QMSFlatNodeTree) => void | Promise<void>): Promise<void>;
145
+ handleCheckNode(node: QMSFlatNodeTree): void;
130
146
  private resetNode;
131
147
  isSelectedNode(node: QMSFlatNodeTree): boolean;
132
148
  getChildrenSelected(node: QMSFlatNodeTree): QMSFlatNodeTree[];
149
+ /**
150
+ * Gets a list of the data node's subtree of descendent data nodes.
151
+ * @param node
152
+ * @returns
153
+ */
133
154
  getListChildrenOfNode(node: QMSFlatNodeTree): QMSFlatNodeTree[];
134
155
  private _mapToNestedListNode;
135
156
  convertToNestedNode(node: QMSFlatNodeTree): QMSTreeNode;
136
157
  convertToFlatNode(node: QMSTreeNode): QMSFlatNodeTree;
137
- private _getAllParentNode;
138
- private _getParentNode;
158
+ getAllParentNode(node: QMSFlatNodeTree): QMSFlatNodeTree[];
159
+ getParentNode(node: QMSFlatNodeTree): QMSFlatNodeTree | undefined;
139
160
  getItemIconType(item: QMSFlatNodeTree): ItemIconType.name | ItemIconType.path | ItemIconType.svg;
140
161
  private onScrollIntoNode;
141
162
  onSearch(): void;
@@ -143,8 +164,8 @@ export declare class SelectDepartmentTreeComponent implements OnInit, AfterViewI
143
164
  onClickResultItem(item: DepartmentSearchResultModel): void;
144
165
  onBreadCrumbItemClick(item: DepartmentLocationBreadCrumb): void;
145
166
  onCheckItemSearchResult(item: DepartmentSearchResultModel): void;
146
- onBeforeCheckItemSearch(item: DepartmentSearchResultModel, callback?: (item: DepartmentSearchResultModel) => void): Promise<void>;
147
- onBeforeCheckAllSearch(callback?: (data: any) => void): Promise<void>;
167
+ onBeforeCheckItemSearch(item: DepartmentSearchResultModel, callback?: (item: DepartmentSearchResultModel) => void | Promise<void>): Promise<void>;
168
+ onBeforeCheckAllSearch(callback?: (data: any) => void | Promise<void>): Promise<void>;
148
169
  canHandleItemSearchResult(item: DepartmentSearchResultModel): boolean;
149
170
  private _mapToResultSearch;
150
171
  private _handleCheckResutlSearch;
@@ -165,6 +186,14 @@ export declare class SelectDepartmentTreeComponent implements OnInit, AfterViewI
165
186
  * @param data list children to update node.
166
187
  * @param mode default is update that replace current list children by new list children , if mode = 'insert' will insert new values to list children existed before.
167
188
  */
168
- updateChildOfNode(node: QMSFlatNodeTree, data?: QMSTreeNode[], mode?: 'insert' | 'update'): void;
169
- addRootTree(data?: QMSTreeNode[]): void;
189
+ updateChildOfNode(node: QMSFlatNodeTree, data?: QMSFlatNodeTree[], mode?: 'insert' | 'update'): void;
190
+ private _reUpdateSelectionNode;
191
+ checkLoadingOfParent(node: QMSFlatNodeTree): void;
192
+ getNodeById(id: string): QMSFlatNodeTree | undefined;
193
+ getRootOfNode(node: QMSFlatNodeTree): QMSFlatNodeTree | undefined;
194
+ addRootTree(data?: QMSFlatNodeTree[]): void;
195
+ getCheckedStatusNode(node: QMSFlatNodeTree): boolean;
196
+ updateNodeInformation(node: QMSFlatNodeTree): void;
197
+ updateSelectedResultData(node: QMSFlatNodeTree): void;
198
+ callCheckNodeOutside(node: QMSFlatNodeTree): void;
170
199
  }
@@ -1,9 +1,6 @@
1
- import { BehaviorSubject, Subject } from "rxjs";
2
1
  import { QMSFlatNodeTree } from "../../../common/models/qms-flat-node.model";
3
2
  import { QMSTreeNode } from "../../../common/models/qms-tree-node.model";
4
3
  export declare class QMSSelectDepartmentTreeGlobalService {
5
- getDataTree$: BehaviorSubject<QMSTreeNode[]>;
6
- searchDepartment$: Subject<QMSFlatNodeTree[]>;
7
- updateDataTree(data: QMSTreeNode[]): void;
8
- setResultSearch(data: QMSFlatNodeTree[]): void;
4
+ convertToTreeData(data: QMSFlatNodeTree[]): QMSTreeNode[];
5
+ getDescendantsOfNode(root: QMSTreeNode): QMSTreeNode[];
9
6
  }
@@ -5,4 +5,5 @@ export declare class TreeNode {
5
5
  parentId?: string;
6
6
  levelType?: number;
7
7
  markedGetChildren?: boolean;
8
+ disabled?: boolean;
8
9
  }
@@ -7,8 +7,8 @@ import { QMSIconRegistryService } from '../app-icon/icon-registry.service';
7
7
  import { DataType } from '../related/common/data-type.enum';
8
8
  import { ItemIconType } from '../related/common/item-icon-type.enum';
9
9
  import { TreeConfig } from './model/tree-config.model';
10
- import { TreeModel } from './model/tree.model';
11
10
  import { TreeFlatNode } from './model/tree-flat-node.model';
11
+ import { TreeModel } from './model/tree.model';
12
12
  interface TreeNode {
13
13
  id: string;
14
14
  name: string;
@@ -16,6 +16,7 @@ interface TreeNode {
16
16
  parentId?: string;
17
17
  levelType?: number;
18
18
  markedGetChildren?: boolean;
19
+ disabled?: boolean;
19
20
  }
20
21
  interface ICheckedNode {
21
22
  id: string;
package/lib/model/en.d.ts CHANGED
@@ -68,6 +68,7 @@ export declare const en: {
68
68
  SEARCH_WITH_NAME: string;
69
69
  RESULT_SEARCH_FOR: string;
70
70
  TOOLTIP_INCLUDE_SUB_DEPARTMENT: string;
71
+ TOOLTIP_INCLUDE_SUB_ITEM: string;
71
72
  NO_RESULT: string;
72
73
  ITEM_NOT_MATCH_TO_TREE: string;
73
74
  ERROR: {
@@ -165,6 +166,8 @@ export declare const en: {
165
166
  SELECT_VIDEO_FROM_ARCHIVE: string;
166
167
  SELECT_VIDEO_IMAGE: string;
167
168
  DOCUMENT_HEADER: string;
169
+ ADD_IMAGE: string;
170
+ IMAGE_INFO: string;
168
171
  };
169
172
  ABOUT: {
170
173
  ABOUT_CKEDITOR: string;
package/lib/model/no.d.ts CHANGED
@@ -68,6 +68,7 @@ export declare const no: {
68
68
  SEARCH_WITH_NAME: string;
69
69
  RESULT_SEARCH_FOR: string;
70
70
  TOOLTIP_INCLUDE_SUB_DEPARTMENT: string;
71
+ TOOLTIP_INCLUDE_SUB_ITEM: string;
71
72
  NO_RESULT: string;
72
73
  ITEM_NOT_MATCH_TO_TREE: string;
73
74
  ERROR: {
@@ -165,6 +166,8 @@ export declare const no: {
165
166
  SELECT_VIDEO_FROM_ARCHIVE: string;
166
167
  SELECT_VIDEO_IMAGE: string;
167
168
  DOCUMENT_HEADER: string;
169
+ ADD_IMAGE: string;
170
+ IMAGE_INFO: string;
168
171
  };
169
172
  ABOUT: {
170
173
  ABOUT_CKEDITOR: string;
@@ -2,7 +2,6 @@ export interface QmsUploadAdapterConfig {
2
2
  apiUrl: string;
3
3
  LANG: any;
4
4
  imageUploadTypes: string;
5
- maxFileSizeMB: number;
6
5
  }
7
6
  export declare class QmsUploadAdapter {
8
7
  loader: any;
@@ -4,4 +4,5 @@ export declare class IconSvg {
4
4
  static VECTOR_CIRCLE: string;
5
5
  static VECTOR_POLYGON: string;
6
6
  static VECTOR_REMOVE: string;
7
+ static UPLOAD_ICON: string;
7
8
  }
@@ -13,4 +13,7 @@ export declare class QMSCKEditorData {
13
13
  maxFileSizeMB?: number;
14
14
  fullScreenClass?: string;
15
15
  hideImgOptions?: string;
16
+ uploadVideoAllowMultipleCheck?: boolean;
17
+ enableTemplate?: boolean;
18
+ maxVideoThumbnailSizeKB?: number;
16
19
  }
@@ -83,5 +83,6 @@ export declare class QMSCKEditorLinkComponent extends QMSCKEditorBaseComponent i
83
83
  getUrlToSetProtocol(): void;
84
84
  changeUrlAndSelectedProtocol(protocolType: number, protocolName: string): void;
85
85
  getProtocolName(): any;
86
+ setLinkUrlType($event?: Event): void;
86
87
  }
87
88
  export {};
@@ -11,12 +11,14 @@ export declare class QMSCKEditorLoadTemplateComponent extends QMSCKEditorBaseCom
11
11
  private templateService;
12
12
  private commonService;
13
13
  dialogRef: MatDialogRef<QMSCKEditorLoadTemplateComponent>;
14
- data: string;
14
+ data: any;
15
15
  ckEditor: any;
16
16
  LANG: any;
17
17
  templates: QMSCKEditorTemplate[];
18
18
  isReplace: boolean;
19
- constructor(dialog: MatDialog, translate: TranslateLibraryService, templateService: QMSCKEditorTemplateService, commonService: QMSCKEditorCommonService, dialogRef: MatDialogRef<QMSCKEditorLoadTemplateComponent>, data: string);
19
+ enableEditTemplate?: boolean;
20
+ stream_image: string;
21
+ constructor(dialog: MatDialog, translate: TranslateLibraryService, templateService: QMSCKEditorTemplateService, commonService: QMSCKEditorCommonService, dialogRef: MatDialogRef<QMSCKEditorLoadTemplateComponent>, data: any);
20
22
  ngOnInit(): void;
21
23
  onCloseDialog(): void;
22
24
  getTemplate(): void;
@@ -60,11 +60,11 @@ export declare class QMSCKEditorRelatedComponent extends QMSCKEditorBaseComponen
60
60
  selectProcessNode(id: string): void;
61
61
  selectDocumentNode(id: string): void;
62
62
  selectHandbookNode(id: string): void;
63
- isMatchTrue(arr: any[], arr2: any[]): boolean;
64
63
  onSearchRelated(_val: string): Related[];
65
64
  displayRelated(related?: Related): string | undefined;
66
65
  selectRelated(id: string, type: number): void;
67
66
  setResultHeight(arr?: Related[]): void;
68
67
  hideSearchResult(): void;
69
68
  showSearchResult(): void;
69
+ createSearchItem(result: Related[], data: any, documentType: QMSCKEditorDocumentType, searchKey: string): void;
70
70
  }
@@ -6,6 +6,10 @@ import { QMSCKEditorTemplate } from '../../models/qms-ckeditor-template.model';
6
6
  import { QMSCKEditorBaseComponent } from '../../qms-ckeditor-base.component';
7
7
  import { QMSCKEditorCommonService } from '../../services/qms-ckeditor-common.services';
8
8
  import { QMSCKEditorTemplateService } from '../../services/qms-ckedtior-template.service';
9
+ import { MatIconRegistry } from '@angular/material/icon';
10
+ import { DomSanitizer } from '@angular/platform-browser';
11
+ import { QMSFileAttachment } from '../../../directives/file-upload/qms-file-upload-attachment.model';
12
+ import { QMSCKEditorUploadService } from '../../services/qms-ckeditor-upload.service';
9
13
  interface ITemplate {
10
14
  id: number;
11
15
  title: string;
@@ -17,7 +21,10 @@ export declare class QMSCKEditorTemplateComponent extends QMSCKEditorBaseCompone
17
21
  private templateService;
18
22
  private commonService;
19
23
  dialogRef: MatDialogRef<QMSCKEditorTemplateComponent>;
20
- data: QMSCKEditorTemplate;
24
+ private iconRegistry;
25
+ private sanitizer;
26
+ private uploadService;
27
+ data: any;
21
28
  ckEditor: any;
22
29
  LANG: any;
23
30
  templateFormGroup: FormGroup;
@@ -28,7 +35,12 @@ export declare class QMSCKEditorTemplateComponent extends QMSCKEditorBaseCompone
28
35
  template: QMSCKEditorTemplate;
29
36
  selectedId: number;
30
37
  isEdit: boolean;
31
- constructor(cdr: ChangeDetectorRef, dialog: MatDialog, translate: TranslateLibraryService, templateService: QMSCKEditorTemplateService, commonService: QMSCKEditorCommonService, dialogRef: MatDialogRef<QMSCKEditorTemplateComponent>, data: QMSCKEditorTemplate);
38
+ qmsInputImageFile: QMSFileAttachment;
39
+ isLoadingImageFile: boolean;
40
+ imageUpload: HTMLImageElement;
41
+ acceptExtensions: any;
42
+ imageInfo: string;
43
+ constructor(cdr: ChangeDetectorRef, dialog: MatDialog, translate: TranslateLibraryService, templateService: QMSCKEditorTemplateService, commonService: QMSCKEditorCommonService, dialogRef: MatDialogRef<QMSCKEditorTemplateComponent>, iconRegistry: MatIconRegistry, sanitizer: DomSanitizer, uploadService: QMSCKEditorUploadService, data: any);
32
44
  ngOnInit(): void;
33
45
  ngAfterViewChecked(): void;
34
46
  onCloseDialog(): void;
@@ -36,8 +48,10 @@ export declare class QMSCKEditorTemplateComponent extends QMSCKEditorBaseCompone
36
48
  addNoneTemplate(template: ITemplate[]): void;
37
49
  onSelectChange(): void;
38
50
  deleteTemplate(): void;
39
- saveTemplate(): void;
51
+ saveTemplate(): Promise<void>;
40
52
  cancelTemplate(): void;
41
53
  updateTemplate(): void;
54
+ clearQMSInputImageFile(): void;
55
+ onChangeImage(event: any): void;
42
56
  }
43
57
  export {};
@@ -2,9 +2,11 @@ export declare class QMSCKEditorTemplate {
2
2
  id: number;
3
3
  title: string;
4
4
  description: string;
5
- content: string;
5
+ html: string;
6
+ imageId: number;
6
7
  deleted: boolean;
7
8
  createdBy: number;
8
9
  edit: boolean;
10
+ imageUrl?: string;
9
11
  constructor();
10
12
  }
@@ -1,5 +1,5 @@
1
1
  import { Observable } from 'rxjs';
2
2
  import { QMSCKEditorBaseService } from './qms-ckeditor-base.service';
3
3
  export declare class QMSCKEditorUploadService extends QMSCKEditorBaseService {
4
- uploadImage(file: File, imageHeight?: number, imageWidth?: number): Observable<string>;
4
+ uploadImage(file: File, imageHeight?: number, imageWidth?: number, description?: string): Observable<string>;
5
5
  }
@@ -2,7 +2,8 @@ import { Observable } from 'rxjs';
2
2
  import { QMSCKEditorTemplate } from '../models/qms-ckeditor-template.model';
3
3
  import { QMSCKEditorBaseService } from './qms-ckeditor-base.service';
4
4
  export declare class QMSCKEditorTemplateService extends QMSCKEditorBaseService {
5
- deleteTemplate(id: number): Observable<boolean>;
5
+ deleteTemplate(ids: number[]): Observable<boolean>;
6
6
  getTemplate(): Observable<QMSCKEditorTemplate[]>;
7
7
  modifyTemplate(template: QMSCKEditorTemplate): Observable<boolean>;
8
+ getImageIdByExtraId(extraId: string): Observable<number>;
8
9
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "qms-angular",
3
- "version": "1.1.33",
3
+ "version": "1.1.35",
4
4
  "dependencies": {
5
5
  "tslib": "^2.0.0"
6
6
  },