ngx-techlify-core 18.75.0 → 18.76.0

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.
@@ -1,45 +1,42 @@
1
1
  import { OnInit } from "@angular/core";
2
+ import { DatePipe } from "@angular/common";
2
3
  import { MatDialogRef } from "@angular/material/dialog";
3
- import { UntypedFormGroup, UntypedFormBuilder } from "@angular/forms";
4
+ import { UntypedFormBuilder } from "@angular/forms";
4
5
  import { EntityFileService } from '../entity-file.service';
5
6
  import { FileDropperConfig } from '../../file-dropper/file-dropper.model';
6
7
  import { ViewerConfig } from '../../document-viewer/viewer-config.model';
7
8
  import { FormValidatorService } from '../../core/form-validator.service';
8
- import { AlertService } from "../../core/alert.service";
9
+ import { TechlifyFormComponent } from '../../base-model';
10
+ import { FormConfigurationFormService } from '../../form-configuration/form-configuration-form.service';
11
+ import { FormConfigurationUtilityService } from '../../form-configuration/form-configuration-utility.service';
9
12
  import { TechlifyTaggerTagFormConfigModel } from "../../tag/techlify-tagger-tag-form-field/techlify-tagger-tag-form-config.model";
10
13
  import * as i0 from "@angular/core";
11
- export declare class EntityFileFormComponent implements OnInit {
14
+ export declare class EntityFileFormComponent extends TechlifyFormComponent implements OnInit {
12
15
  dialogRef: MatDialogRef<EntityFileFormComponent>;
13
16
  data: any;
14
- private formValidatorService;
17
+ protected formValidatorService: FormValidatorService;
18
+ protected service: EntityFileService;
15
19
  private fb;
16
- private entityFileService;
17
- private alertService;
18
- entityFileGroup: UntypedFormGroup;
19
- assignmentFileFirstAttempt: boolean;
20
- updateMode: boolean;
20
+ private formConfigService;
21
+ private datePipe;
22
+ errorMessages: any;
21
23
  fileConfig: FileDropperConfig;
22
24
  fileList: any[];
23
25
  viewerConfig: ViewerConfig;
24
26
  hideTitleAndDetails: boolean;
25
- isSaving: boolean;
26
- /**
27
- * Should we allow tagging entity-files?
28
- */
29
27
  useTechlifyTags: boolean;
30
28
  techlifyTagCategories: string[];
31
29
  techlifyTagConfig: TechlifyTaggerTagFormConfigModel;
32
- constructor(dialogRef: MatDialogRef<EntityFileFormComponent>, data: any, formValidatorService: FormValidatorService, fb: UntypedFormBuilder, entityFileService: EntityFileService, alertService: AlertService);
33
- /** Method to create a form **/
30
+ formConfigurationUtilityService: FormConfigurationUtilityService;
31
+ isFormConfigurationLoaded: boolean;
32
+ constructor(dialogRef: MatDialogRef<EntityFileFormComponent>, data: any, formValidatorService: FormValidatorService, service: EntityFileService, fb: UntypedFormBuilder, formConfigService: FormConfigurationFormService, datePipe: DatePipe);
34
33
  private createForm;
35
34
  ngOnInit(): void;
36
- submit(): Promise<void>;
35
+ private initializeFormConfiguration;
36
+ submit(model?: any): void;
37
+ finalisedResponse(response: any): void;
37
38
  fileChanged(event: any): Promise<void>;
38
39
  removeFile(): Promise<void>;
39
- /**Method to evaluate form fields*/
40
- isFieldValid(field: string): any;
41
- /**Method to find error in form fields*/
42
- getErrorMessage(field: string): any;
43
40
  static ɵfac: i0.ɵɵFactoryDeclaration<EntityFileFormComponent, never>;
44
41
  static ɵcmp: i0.ɵɵComponentDeclaration<EntityFileFormComponent, "entity-file-form", never, {}, {}, never, never, false, never>;
45
42
  }
@@ -0,0 +1,67 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { EntityFileFormComponent } from '../entity-file-form/entity-file-form.component';
3
+ import { EntityFileService } from '../entity-file.service';
4
+ import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
5
+ import { AlertService } from '../../core/alert.service';
6
+ import { ViewerConfig } from '../../document-viewer/viewer-config.model';
7
+ import { FileDropperConfig } from '../../file-dropper';
8
+ import { ErrorHandlerService } from '../../core/error-handler.service';
9
+ import { TechlifyTaggerTagFormConfigModel } from "../../tag/techlify-tagger-tag-form-field/techlify-tagger-tag-form-config.model";
10
+ import { TechlifyListComponent } from '../../base-model';
11
+ import { NgxPermissionsService } from 'ngx-permissions';
12
+ import * as i0 from "@angular/core";
13
+ /**
14
+ * We are using both app-entity-file-list and app-entity-files-view-all
15
+ * to ensure backward compatibility with older projects `ngx-techlify-documents, ngx-techlify-checksheets`
16
+ * etc. `app-entity-files-view-all` will be removed by `v18.80.0`
17
+ */
18
+ export declare class EntityFileListComponent extends TechlifyListComponent implements OnInit {
19
+ service: EntityFileService;
20
+ private alertService;
21
+ private fb;
22
+ private errorHandler;
23
+ private permissionsService;
24
+ entityId: number;
25
+ entityType: string;
26
+ viewOnly: boolean;
27
+ removeSearch: boolean;
28
+ hideTitleAndDetails: boolean;
29
+ displayMode: boolean;
30
+ allowMultipleFiles: boolean;
31
+ allowBulkUpdate: boolean;
32
+ viewMode: 'list' | 'timeline';
33
+ fileDropperHeight: string;
34
+ isShowDragDropSection: boolean;
35
+ set isFilterPatchFromRoute(value: boolean);
36
+ get isFilterPatchFromRoute(): boolean;
37
+ /**
38
+ * Should we allow tagging entity-files?
39
+ */
40
+ useTechlifyTags: boolean;
41
+ techlifyTagCategories: string[];
42
+ techlifyTagConfig: TechlifyTaggerTagFormConfigModel;
43
+ entityFileForm: import("@angular/core").WritableSignal<typeof EntityFileFormComponent>;
44
+ formData: Record<string, any>;
45
+ viewerConfig: ViewerConfig;
46
+ title: string;
47
+ displayedColumns: string[];
48
+ fileConfig: FileDropperConfig;
49
+ updateRowForm: UntypedFormGroup;
50
+ isShowCreateAction: boolean;
51
+ isShowUpdateAction: boolean;
52
+ isShowDeleteAction: boolean;
53
+ isShowReadAction: boolean;
54
+ permission: {
55
+ create: string;
56
+ update: string;
57
+ delete: string;
58
+ read: string;
59
+ };
60
+ constructor(service: EntityFileService, alertService: AlertService, fb: UntypedFormBuilder, errorHandler: ErrorHandlerService, permissionsService: NgxPermissionsService);
61
+ ngOnInit(): Promise<void>;
62
+ loadData(): void;
63
+ fileChanged(event: any): Promise<void>;
64
+ bulkUpdate(fieldName: any): Promise<void>;
65
+ static ɵfac: i0.ɵɵFactoryDeclaration<EntityFileListComponent, never>;
66
+ static ɵcmp: i0.ɵɵComponentDeclaration<EntityFileListComponent, "app-entity-file-list, app-entity-files-view-all", never, { "entityId": { "alias": "entityId"; "required": false; }; "entityType": { "alias": "entityType"; "required": false; }; "viewOnly": { "alias": "viewOnly"; "required": false; }; "removeSearch": { "alias": "removeSearch"; "required": false; }; "hideTitleAndDetails": { "alias": "hideTitleAndDetails"; "required": false; }; "displayMode": { "alias": "displayMode"; "required": false; }; "allowMultipleFiles": { "alias": "allowMultipleFiles"; "required": false; }; "allowBulkUpdate": { "alias": "allowBulkUpdate"; "required": false; }; "viewMode": { "alias": "viewMode"; "required": false; }; "fileDropperHeight": { "alias": "fileDropperHeight"; "required": false; }; "isShowDragDropSection": { "alias": "isShowDragDropSection"; "required": false; }; "isFilterPatchFromRoute": { "alias": "isFilterPatchFromRoute"; "required": false; }; "useTechlifyTags": { "alias": "useTechlifyTags"; "required": false; }; "techlifyTagCategories": { "alias": "techlifyTagCategories"; "required": false; }; "techlifyTagConfig": { "alias": "techlifyTagConfig"; "required": false; }; "title": { "alias": "title"; "required": false; }; "permission": { "alias": "permission"; "required": false; }; }, {}, never, never, false, never>;
67
+ }
@@ -0,0 +1,15 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./entity-file-form/entity-file-form.component";
3
+ import * as i2 from "./entity-file-list/entity-file-list.component";
4
+ import * as i3 from "../shared.module";
5
+ import * as i4 from "../file-dropper/file-dropper.module";
6
+ import * as i5 from "../document-viewer/document-viewer.module";
7
+ import * as i6 from "../tag/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.module";
8
+ import * as i7 from "../read-more/read-more.module";
9
+ import * as i8 from "../pipes/wrap.pipe";
10
+ import * as i9 from "../pipes/file-size.pipe";
11
+ export declare class EntityFileListModule {
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<EntityFileListModule, never>;
13
+ static ɵmod: i0.ɵɵNgModuleDeclaration<EntityFileListModule, [typeof i1.EntityFileFormComponent, typeof i2.EntityFileListComponent], [typeof i3.SharedModule, typeof i4.FileDropperModule, typeof i5.DocumentViewerModule, typeof i6.TechlifyTaggerTagFormFieldModule, typeof i7.ReadMoreModule, typeof i8.WrapPipe, typeof i9.FileSizePipe], [typeof i2.EntityFileListComponent]>;
14
+ static ɵinj: i0.ɵɵInjectorDeclaration<EntityFileListModule>;
15
+ }
@@ -1,3 +1,3 @@
1
- export * from './entity-files-view-all.component';
1
+ export * from './entity-file-list/entity-file-list.component';
2
2
  export * from './entity-file-form/entity-file-form.component';
3
3
  export * from './entity-file.service';
@@ -0,0 +1,7 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class FileSizePipe implements PipeTransform {
4
+ transform(bytes: any): string;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<FileSizePipe, never>;
6
+ static ɵpipe: i0.ɵɵPipeDeclaration<FileSizePipe, "fileSize", true>;
7
+ }
@@ -0,0 +1,15 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "ngx-infinite-scroll";
3
+ import * as i2 from "./delete-button/techlify-delete-button.component";
4
+ import * as i3 from "./form-button/techlify-form-button.component";
5
+ import * as i4 from "@angular/common";
6
+ import * as i5 from "./form-configuration/form-configuration-for-form/form-configuration-for-form.module";
7
+ import * as i6 from "@angular/forms";
8
+ import * as i7 from "./material.module";
9
+ import * as i8 from "./searchable-selector/searchable-selector.module";
10
+ import * as i9 from "./techlify-icon/techlify-icon.module";
11
+ export declare class SharedModule {
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<SharedModule, never>;
13
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SharedModule, never, [typeof i1.InfiniteScrollDirective, typeof i2.TechlifyDeleteButtonComponent, typeof i3.TechlifyFormButtonComponent], [typeof i4.CommonModule, typeof i5.FormConfigurationForFormModule, typeof i6.FormsModule, typeof i1.InfiniteScrollDirective, typeof i7.MaterialModule, typeof i6.ReactiveFormsModule, typeof i8.SearchableSelectorModule, typeof i2.TechlifyDeleteButtonComponent, typeof i3.TechlifyFormButtonComponent, typeof i9.TechlifyIconModule]>;
14
+ static ɵinj: i0.ɵɵInjectorDeclaration<SharedModule>;
15
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ngx-techlify-core",
3
- "version": "18.75.0",
3
+ "version": "18.76.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": ">=18",
6
6
  "@angular/core": ">=18",
package/public-api.d.ts CHANGED
@@ -15,7 +15,9 @@ export * from './lib/core/core.module';
15
15
  export * from './lib/action-popup/action-popup.module';
16
16
  export * from './lib/data-table/data-table.module';
17
17
  export * from './lib/document-viewer/document-viewer.module';
18
- export * from './lib/entity-files/entity-files-view-all.module';
18
+ export * from './lib/entity-files/entity-file-list.module';
19
+ /** @deprecated use EntityFileListModule — kept because ngx-techlify-checksheet still imports the old name */
20
+ export { EntityFileListModule as EntityFilesViewAllModule } from './lib/entity-files/entity-file-list.module';
19
21
  export * from './lib/file-dropper/file-dropper.module';
20
22
  export * from './lib/note/note.module';
21
23
  export * from './lib/searchable-selector/searchable-selector.module';