libey-ng-component-library 0.0.35 → 0.0.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/bundles/libey-ng-component-library.umd.js +2521 -0
  2. package/bundles/libey-ng-component-library.umd.js.map +1 -0
  3. package/esm2015/lib/cpm-indicator/libey-ng-cpm-indicator.component.js +193 -0
  4. package/esm2015/lib/cpm-indicator/libey-ng-cpm-indicator.module.js +26 -0
  5. package/esm2015/lib/icons/icons.module.js +26 -0
  6. package/esm2015/lib/icons/libey-ng-icons/libey-ng-icons.component.js +52 -0
  7. package/esm2015/lib/libey-ng-component-library.component.js +26 -0
  8. package/esm2015/lib/libey-ng-component-library.module.js +60 -0
  9. package/esm2015/lib/libey-ng-component-library.service.js +14 -0
  10. package/esm2015/lib/signature/libey-ng-signature/libey-ng-signature.component.js +197 -0
  11. package/esm2015/lib/signature/libey-ng-signature.module.js +57 -0
  12. package/esm2015/lib/table/directives/libey-column.directive.js +59 -0
  13. package/esm2015/lib/table/libey-ng-table.component.js +249 -0
  14. package/esm2015/lib/table/libey-ng-table.module.js +21 -0
  15. package/esm2015/libey-ng-component-library.js +5 -0
  16. package/esm2015/public-api.js +23 -0
  17. package/esm2015/utils/CpmIndicator/cpm-indicator-types.js +25 -0
  18. package/esm2015/utils/SigWeb/SigWeb.js +1442 -0
  19. package/fesm2015/libey-ng-component-library.js +2416 -0
  20. package/fesm2015/libey-ng-component-library.js.map +1 -0
  21. package/lib/cpm-indicator/libey-ng-cpm-indicator.component.d.ts +66 -0
  22. package/lib/cpm-indicator/libey-ng-cpm-indicator.module.d.ts +8 -0
  23. package/lib/icons/icons.module.d.ts +8 -0
  24. package/lib/icons/libey-ng-icons/libey-ng-icons.component.d.ts +19 -0
  25. package/lib/libey-ng-component-library.component.d.ts +8 -0
  26. package/lib/libey-ng-component-library.module.d.ts +13 -0
  27. package/lib/libey-ng-component-library.service.d.ts +6 -0
  28. package/lib/signature/libey-ng-signature/libey-ng-signature.component.d.ts +40 -0
  29. package/lib/signature/libey-ng-signature.module.d.ts +13 -0
  30. package/lib/table/directives/libey-column.directive.d.ts +24 -0
  31. package/lib/table/libey-ng-table.component.d.ts +64 -0
  32. package/lib/table/libey-ng-table.module.d.ts +10 -0
  33. package/libey-ng-component-library.d.ts +5 -0
  34. package/package.json +24 -17
  35. package/{src/public-api.ts → public-api.d.ts} +0 -4
  36. package/utils/CpmIndicator/cpm-indicator-types.d.ts +40 -0
  37. package/utils/SigWeb/SigWeb.d.ts +219 -0
  38. package/karma.conf.js +0 -44
  39. package/ng-package.json +0 -13
  40. package/src/lib/cpm-indicator/libey-ng-cpm-indicator.component.css +0 -216
  41. package/src/lib/cpm-indicator/libey-ng-cpm-indicator.component.html +0 -201
  42. package/src/lib/cpm-indicator/libey-ng-cpm-indicator.component.spec.ts +0 -25
  43. package/src/lib/cpm-indicator/libey-ng-cpm-indicator.component.ts +0 -203
  44. package/src/lib/cpm-indicator/libey-ng-cpm-indicator.module.ts +0 -19
  45. package/src/lib/icons/icons.component.css +0 -9
  46. package/src/lib/icons/icons.module.ts +0 -16
  47. package/src/lib/icons/libey-ng-icons/libey-ng-icons.component.html +0 -1831
  48. package/src/lib/icons/libey-ng-icons/libey-ng-icons.component.ts +0 -36
  49. package/src/lib/libey-ng-component-library.component.spec.ts +0 -25
  50. package/src/lib/libey-ng-component-library.component.ts +0 -20
  51. package/src/lib/libey-ng-component-library.module.ts +0 -32
  52. package/src/lib/libey-ng-component-library.service.spec.ts +0 -16
  53. package/src/lib/libey-ng-component-library.service.ts +0 -9
  54. package/src/lib/signature/libey-ng-signature/libey-ng-signature.component.css +0 -7
  55. package/src/lib/signature/libey-ng-signature/libey-ng-signature.component.html +0 -41
  56. package/src/lib/signature/libey-ng-signature/libey-ng-signature.component.spec.ts +0 -25
  57. package/src/lib/signature/libey-ng-signature/libey-ng-signature.component.ts +0 -214
  58. package/src/lib/signature/libey-ng-signature.module.ts +0 -30
  59. package/src/lib/table/directives/libey-column.directive.ts +0 -29
  60. package/src/lib/table/libey-ng-table.component.css +0 -249
  61. package/src/lib/table/libey-ng-table.component.html +0 -122
  62. package/src/lib/table/libey-ng-table.component.ts +0 -234
  63. package/src/lib/table/libey-ng-table.module.ts +0 -13
  64. package/src/test.ts +0 -28
  65. package/src/utils/CpmIndicator/cpm-indicator-types.ts +0 -63
  66. package/src/utils/SigWeb/SigWeb.ts +0 -1906
  67. package/tsconfig.lib.json +0 -20
  68. package/tsconfig.lib.prod.json +0 -10
  69. package/tsconfig.spec.json +0 -17
@@ -0,0 +1,26 @@
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class LibeyNgComponentLibraryComponent {
4
+ constructor() { }
5
+ ngOnInit() {
6
+ }
7
+ }
8
+ LibeyNgComponentLibraryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgComponentLibraryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
9
+ LibeyNgComponentLibraryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: LibeyNgComponentLibraryComponent, selector: "lib-libey-ngComponent-library", ngImport: i0, template: `
10
+ <p>
11
+ libey-ng-component-library works!
12
+ </p>
13
+ `, isInline: true });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgComponentLibraryComponent, decorators: [{
15
+ type: Component,
16
+ args: [{
17
+ selector: 'lib-libey-ngComponent-library',
18
+ template: `
19
+ <p>
20
+ libey-ng-component-library works!
21
+ </p>
22
+ `,
23
+ styles: []
24
+ }]
25
+ }], ctorParameters: function () { return []; } });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZXktbmctY29tcG9uZW50LWxpYnJhcnkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFZbEQsTUFBTSxPQUFPLGdDQUFnQztJQUUzQyxnQkFBZ0IsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzs7OEhBTFUsZ0NBQWdDO2tIQUFoQyxnQ0FBZ0MscUVBUmpDOzs7O0dBSVQ7NEZBSVUsZ0NBQWdDO2tCQVY1QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwrQkFBK0I7b0JBQ3pDLFFBQVEsRUFBRTs7OztHQUlUO29CQUNELE1BQU0sRUFBRSxFQUNQO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWxpYmV5LW5nQ29tcG9uZW50LWxpYnJhcnknLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8cD5cclxuICAgICAgbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkgd29ya3MhXHJcbiAgICA8L3A+XHJcbiAgYCxcclxuICBzdHlsZXM6IFtcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMaWJleU5nQ29tcG9uZW50TGlicmFyeUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -0,0 +1,60 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule, DatePipe } from '@angular/common';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { LibeyNgTableModule } from './table/libey-ng-table.module';
5
+ import { LibeyNgSignatureModule } from './signature/libey-ng-signature.module';
6
+ import { SignaturePadModule } from 'angular2-signaturepad';
7
+ import { IconsModule } from './icons/icons.module';
8
+ import { LibeyNgCpmIndicatorModule } from './cpm-indicator/libey-ng-cpm-indicator.module';
9
+ import * as i0 from "@angular/core";
10
+ export class LibeyNgComponentLibraryModule {
11
+ }
12
+ LibeyNgComponentLibraryModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgComponentLibraryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
+ LibeyNgComponentLibraryModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgComponentLibraryModule, imports: [CommonModule,
14
+ FormsModule,
15
+ LibeyNgTableModule,
16
+ LibeyNgSignatureModule,
17
+ SignaturePadModule,
18
+ IconsModule,
19
+ LibeyNgCpmIndicatorModule], exports: [LibeyNgTableModule,
20
+ LibeyNgSignatureModule,
21
+ SignaturePadModule,
22
+ IconsModule,
23
+ LibeyNgCpmIndicatorModule] });
24
+ LibeyNgComponentLibraryModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgComponentLibraryModule, providers: [DatePipe], imports: [[
25
+ CommonModule,
26
+ FormsModule,
27
+ LibeyNgTableModule,
28
+ LibeyNgSignatureModule,
29
+ SignaturePadModule,
30
+ IconsModule,
31
+ LibeyNgCpmIndicatorModule,
32
+ ], LibeyNgTableModule,
33
+ LibeyNgSignatureModule,
34
+ SignaturePadModule,
35
+ IconsModule,
36
+ LibeyNgCpmIndicatorModule] });
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgComponentLibraryModule, decorators: [{
38
+ type: NgModule,
39
+ args: [{
40
+ declarations: [],
41
+ imports: [
42
+ CommonModule,
43
+ FormsModule,
44
+ LibeyNgTableModule,
45
+ LibeyNgSignatureModule,
46
+ SignaturePadModule,
47
+ IconsModule,
48
+ LibeyNgCpmIndicatorModule,
49
+ ],
50
+ exports: [
51
+ LibeyNgTableModule,
52
+ LibeyNgSignatureModule,
53
+ SignaturePadModule,
54
+ IconsModule,
55
+ LibeyNgCpmIndicatorModule
56
+ ],
57
+ providers: [DatePipe]
58
+ }]
59
+ }] });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZXktbmctY29tcG9uZW50LWxpYnJhcnkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sK0NBQStDLENBQUM7O0FBd0IxRixNQUFNLE9BQU8sNkJBQTZCOzsySEFBN0IsNkJBQTZCOzRIQUE3Qiw2QkFBNkIsWUFqQnRDLFlBQVk7UUFDWixXQUFXO1FBQ1gsa0JBQWtCO1FBQ2xCLHNCQUFzQjtRQUN0QixrQkFBa0I7UUFDbEIsV0FBVztRQUNYLHlCQUF5QixhQUd6QixrQkFBa0I7UUFDbEIsc0JBQXNCO1FBQ3RCLGtCQUFrQjtRQUNsQixXQUFXO1FBQ1gseUJBQXlCOzRIQUloQiw2QkFBNkIsYUFGN0IsQ0FBQyxRQUFRLENBQUMsWUFoQlo7WUFDUCxZQUFZO1lBQ1osV0FBVztZQUNYLGtCQUFrQjtZQUNsQixzQkFBc0I7WUFDdEIsa0JBQWtCO1lBQ2xCLFdBQVc7WUFDWCx5QkFBeUI7U0FDMUIsRUFFQyxrQkFBa0I7UUFDbEIsc0JBQXNCO1FBQ3RCLGtCQUFrQjtRQUNsQixXQUFXO1FBQ1gseUJBQXlCOzRGQUloQiw2QkFBNkI7a0JBckJ6QyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUNiO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsa0JBQWtCO3dCQUNsQixzQkFBc0I7d0JBQ3RCLGtCQUFrQjt3QkFDbEIsV0FBVzt3QkFDWCx5QkFBeUI7cUJBQzFCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxrQkFBa0I7d0JBQ2xCLHNCQUFzQjt3QkFDdEIsa0JBQWtCO3dCQUNsQixXQUFXO3dCQUNYLHlCQUF5QjtxQkFDMUI7b0JBQ0QsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDO2lCQUN0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTGliZXlOZ1RhYmxlTW9kdWxlIH0gZnJvbSAnLi90YWJsZS9saWJleS1uZy10YWJsZS5tb2R1bGUnO1xyXG5pbXBvcnQgeyBMaWJleU5nU2lnbmF0dXJlTW9kdWxlIH0gZnJvbSAnLi9zaWduYXR1cmUvbGliZXktbmctc2lnbmF0dXJlLm1vZHVsZSc7XHJcbmltcG9ydCB7IFNpZ25hdHVyZVBhZE1vZHVsZSB9IGZyb20gJ2FuZ3VsYXIyLXNpZ25hdHVyZXBhZCc7XHJcbmltcG9ydCB7IEljb25zTW9kdWxlIH0gZnJvbSAnLi9pY29ucy9pY29ucy5tb2R1bGUnO1xyXG5pbXBvcnQgeyBMaWJleU5nQ3BtSW5kaWNhdG9yTW9kdWxlIH0gZnJvbSAnLi9jcG0taW5kaWNhdG9yL2xpYmV5LW5nLWNwbS1pbmRpY2F0b3IubW9kdWxlJztcclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBMaWJleU5nVGFibGVNb2R1bGUsXHJcbiAgICBMaWJleU5nU2lnbmF0dXJlTW9kdWxlLFxyXG4gICAgU2lnbmF0dXJlUGFkTW9kdWxlLFxyXG4gICAgSWNvbnNNb2R1bGUsXHJcbiAgICBMaWJleU5nQ3BtSW5kaWNhdG9yTW9kdWxlLFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgTGliZXlOZ1RhYmxlTW9kdWxlLFxyXG4gICAgTGliZXlOZ1NpZ25hdHVyZU1vZHVsZSxcclxuICAgIFNpZ25hdHVyZVBhZE1vZHVsZSxcclxuICAgIEljb25zTW9kdWxlLFxyXG4gICAgTGliZXlOZ0NwbUluZGljYXRvck1vZHVsZVxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbRGF0ZVBpcGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMaWJleU5nQ29tcG9uZW50TGlicmFyeU1vZHVsZSB7IH1cclxuIl19
@@ -0,0 +1,14 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class LibeyNgComponentLibraryService {
4
+ constructor() { }
5
+ }
6
+ LibeyNgComponentLibraryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgComponentLibraryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
7
+ LibeyNgComponentLibraryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgComponentLibraryService, providedIn: 'root' });
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgComponentLibraryService, decorators: [{
9
+ type: Injectable,
10
+ args: [{
11
+ providedIn: 'root'
12
+ }]
13
+ }], ctorParameters: function () { return []; } });
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZXktbmctY29tcG9uZW50LWxpYnJhcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sOEJBQThCO0lBRXpDLGdCQUFnQixDQUFDOzs0SEFGTiw4QkFBOEI7Z0lBQTlCLDhCQUE4QixjQUY3QixNQUFNOzRGQUVQLDhCQUE4QjtrQkFIMUMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMaWJleU5nQ29tcG9uZW50TGlicmFyeVNlcnZpY2Uge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,197 @@
1
+ import { Component, ViewChild, Output, EventEmitter, Input, } from '@angular/core';
2
+ import { SigWebTablet } from '../../../utils/SigWeb/SigWeb';
3
+ import { Subject } from 'rxjs';
4
+ import { SignaturePad } from 'angular2-signaturepad';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@ng-select/ng-select";
7
+ import * as i2 from "angular2-signaturepad";
8
+ import * as i3 from "@angular/forms";
9
+ import * as i4 from "@angular/common";
10
+ class OutputMessage {
11
+ }
12
+ export class LibeyNgSignatureComponent {
13
+ constructor() {
14
+ this.OutputSignature = new EventEmitter();
15
+ this.DeviceType = 'mousepad';
16
+ this._destroy$ = new Subject();
17
+ this.widthView = 440;
18
+ this.heightView = 250;
19
+ this.widthRender = 440;
20
+ this.heightRender = 250;
21
+ this.signaturePadOptions = {
22
+ minWidth: 5,
23
+ canvasWidth: this.widthView,
24
+ canvasHeight: this.heightView,
25
+ };
26
+ this.FileValidated = false;
27
+ this.NotDriver = false;
28
+ this.UploadFile = null;
29
+ }
30
+ ngAfterViewInit() {
31
+ this.InitDevice();
32
+ }
33
+ ngOnDestroy() {
34
+ this.closingSigWeb();
35
+ this._destroy$.next(true);
36
+ }
37
+ ChangeDevice() {
38
+ this.NotDriver = false;
39
+ this.UploadFile = null;
40
+ this.File = null;
41
+ setTimeout(() => {
42
+ this.InitDevice();
43
+ }, 200);
44
+ }
45
+ InitDevice() {
46
+ if (this.DeviceType == 'pinpad') {
47
+ this.cnvContext = (this.canvas.nativeElement).getContext('2d');
48
+ }
49
+ if (this.DeviceType == 'mousepad') {
50
+ this.signaturePad.set('minWidth', 5);
51
+ this.signaturePad.clear();
52
+ }
53
+ }
54
+ closingSigWeb() {
55
+ SigWebTablet.ClearTablet();
56
+ SigWebTablet.SetTabletState(0, this.tmr, null);
57
+ }
58
+ onSign() {
59
+ this.NotDriver = false;
60
+ this.UploadFile = null;
61
+ var driver = SigWebTablet.GetVersionString();
62
+ if (driver == null) {
63
+ this.NotDriver = true;
64
+ }
65
+ else {
66
+ this.NotDriver = false;
67
+ console.log('onSign Clicked!');
68
+ SigWebTablet.SetDisplayXSize(this.widthRender);
69
+ SigWebTablet.SetDisplayYSize(this.heightRender);
70
+ SigWebTablet.SetTabletState(0, this.tmr, null);
71
+ SigWebTablet.SetJustifyMode(0);
72
+ SigWebTablet.ClearTablet();
73
+ if (this.tmr == null) {
74
+ this.tmr = SigWebTablet.SetTabletState(1, this.cnvContext, 50);
75
+ }
76
+ else {
77
+ SigWebTablet.SetTabletState(0, this.tmr, null);
78
+ this.tmr = null;
79
+ this.tmr = SigWebTablet.SetTabletState(1, this.cnvContext, 50);
80
+ }
81
+ }
82
+ }
83
+ onClear() {
84
+ if (this.UploadFile == null) {
85
+ if (this.DeviceType == 'pinpad') {
86
+ SigWebTablet.ClearTablet();
87
+ if (this.cnvContext) {
88
+ this.cnvContext.clearRect(0, 0, this.canvas.nativeElement.width, this.canvas.nativeElement.height);
89
+ }
90
+ }
91
+ if (this.DeviceType == 'mousepad') {
92
+ this.signaturePad.clear();
93
+ }
94
+ }
95
+ else {
96
+ this.File = null;
97
+ this.UploadFile = null;
98
+ this.ChangeDevice();
99
+ }
100
+ }
101
+ onDone() {
102
+ var result = new OutputMessage();
103
+ if (this.UploadFile == null) {
104
+ if (this.DeviceType == 'pinpad') {
105
+ // if (Number(SigWebTablet.NumberOfTabletPoints()) === 0) {
106
+ // alert('Por favor firme antes de continuar');
107
+ // } else {
108
+ SigWebTablet.SetTabletState(0, this.tmr, null);
109
+ SigWebTablet.SetSigCompressionMode(1);
110
+ result.bioSigData = SigWebTablet.GetSigString();
111
+ result.sigImgData = SigWebTablet.GetSigString();
112
+ SigWebTablet.SetImageXSize(this.widthRender);
113
+ SigWebTablet.SetImageYSize(this.heightRender);
114
+ SigWebTablet.SetImagePenWidth(5);
115
+ SigWebTablet.GetSigImageB64((base64) => {
116
+ result.sigString = "data:image/png;base64," + base64;
117
+ this.OutputSignature.emit(result);
118
+ });
119
+ // }
120
+ }
121
+ if (this.DeviceType == 'mousepad') {
122
+ var result = new OutputMessage();
123
+ result.sigString = this.signaturePad.toDataURL();
124
+ this.OutputSignature.emit(result);
125
+ }
126
+ }
127
+ else {
128
+ result.sigString = this.UploadFile;
129
+ this.OutputSignature.emit(result);
130
+ }
131
+ }
132
+ fileEvent(event) {
133
+ this.UploadFile = null;
134
+ this.FileValidated = false;
135
+ const file = event.target.files[0];
136
+ if (file.type == 'image/jpeg' || file.type == 'image/png') {
137
+ this.FileValidated = false;
138
+ const newWidth = this.widthRender;
139
+ const newHeight = this.heightRender;
140
+ this.resizeImage(file, newWidth, newHeight)
141
+ .then((resizedImageDataUrl) => {
142
+ this.UploadFile = resizedImageDataUrl;
143
+ })
144
+ .catch((error) => {
145
+ console.error('Error al redimensionar la imagen:', error);
146
+ });
147
+ }
148
+ else {
149
+ this.File = null;
150
+ this.UploadFile = null;
151
+ this.FileValidated = true;
152
+ }
153
+ }
154
+ resizeImage(image, newWidth, newHeight) {
155
+ return new Promise((resolve, reject) => {
156
+ const reader = new FileReader();
157
+ reader.onload = (e) => {
158
+ const img = new Image();
159
+ img.src = e.target.result;
160
+ img.onload = () => {
161
+ const canvas = document.createElement('canvas');
162
+ const ctx = canvas.getContext('2d');
163
+ canvas.width = newWidth;
164
+ canvas.height = newHeight;
165
+ ctx.drawImage(img, 0, 0, newWidth, newHeight);
166
+ const resizedImageDataUrl = canvas.toDataURL(image.type);
167
+ resolve(resizedImageDataUrl);
168
+ };
169
+ img.onerror = (error) => {
170
+ reject(error);
171
+ };
172
+ };
173
+ reader.readAsDataURL(image);
174
+ });
175
+ }
176
+ }
177
+ LibeyNgSignatureComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgSignatureComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
178
+ LibeyNgSignatureComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: LibeyNgSignatureComponent, selector: "lib-libey-ng-signature", inputs: { DeviceType: "DeviceType" }, outputs: { OutputSignature: "OutputSignature" }, viewQueries: [{ propertyName: "canvas", first: true, predicate: ["sigImg"], descendants: true }, { propertyName: "signaturePad", first: true, predicate: SignaturePad, descendants: true }], ngImport: i0, template: "<div class=\"mb-3\">\r\n <div class=\"row mb-5\">\r\n <div class=\"col-md-12 justify-align-center mb-3\">\r\n <input type=\"file\" (change)=\"fileEvent($event)\" [(ngModel)]=\"File\" class=\"form-control form-control-ph\"\r\n accept=\"image/png, image/jpeg\" style=\"border: none; min-width: 410px; width: auto;\">\r\n <label *ngIf=\"FileValidated\" [ngClass]=\"'text-danger'\">Archivo requerido. Formatos permitidos (jpeg, jpg, png)</label>\r\n </div>\r\n <div class=\"col-md-12\">\r\n <ng-select [(ngModel)]=\"DeviceType\" class=\"ng-select-single ng-select-border-0\" placeholder=\"Seleccionar\" [clearable]=\"false\"\r\n (change)=\"ChangeDevice()\">\r\n <ng-option [value]=\"'pinpad'\">Pinpad</ng-option>\r\n <ng-option [value]=\"'mousepad'\">Mousepad</ng-option>\r\n </ng-select>\r\n <label *ngIf=\"NotDriver\" [ngClass]=\"'text-danger'\">No tiene el driver instalado</label>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"UploadFile==null\">\r\n <div *ngIf=\"DeviceType=='pinpad'\" style=\"border: 1px ridge #D6DEE5;border-radius: 10px; width: 440px;\">\r\n <canvas (click)=\"onSign()\" #sigImg [width]=\"widthView\" [height]=\"heightView\"></canvas>\r\n </div>\r\n <div *ngIf=\"DeviceType=='mousepad'\" style=\"border: 1px ridge #D6DEE5;border-radius: 10px; width: 440px;\">\r\n <signature-pad [options]=\"signaturePadOptions\"></signature-pad>\r\n </div>\r\n </div>\r\n <div *ngIf=\"UploadFile!=null\" style=\"border: 1px ridge #D6DEE5;border-radius: 10px; width: 440px;\">\r\n <img [src]=\"UploadFile\" [width]=\"widthView\" [height]=\"heightView\" />\r\n </div>\r\n\r\n <div class=\"col-md-12 mt-3\">\r\n <button type=\"button\" class=\"btn btn-light-primary-sm border-none text-black\" (click)=\"onClear()\">\r\n <i class=\"icon-trash-blue me-3\"></i> Borrar firma\r\n </button>\r\n </div>\r\n</div>\r\n\r\n<div class=\"modal-footer\">\r\n <button type=\"button\" class=\"btn btn-primary btn-save-rp\" (click)=\"onDone()\">\r\n <i class=\"icon-save-white\"></i> Guardar\r\n </button>\r\n</div>", styles: [".container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}\n"], components: [{ type: i1.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { type: i1.NgOptionComponent, selector: "ng-option", inputs: ["value", "disabled"] }, { type: i2.SignaturePad, selector: "signature-pad", inputs: ["options"], outputs: ["onBeginEvent", "onEndEvent"] }], directives: [{ type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
179
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgSignatureComponent, decorators: [{
180
+ type: Component,
181
+ args: [{
182
+ selector: 'lib-libey-ng-signature',
183
+ templateUrl: './libey-ng-signature.component.html',
184
+ styleUrls: ['./libey-ng-signature.component.css'],
185
+ }]
186
+ }], ctorParameters: function () { return []; }, propDecorators: { OutputSignature: [{
187
+ type: Output
188
+ }], DeviceType: [{
189
+ type: Input
190
+ }], canvas: [{
191
+ type: ViewChild,
192
+ args: ['sigImg', { static: false }]
193
+ }], signaturePad: [{
194
+ type: ViewChild,
195
+ args: [SignaturePad]
196
+ }] } });
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZXktbmctc2lnbmF0dXJlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvc2lnbmF0dXJlL2xpYmV5LW5nLXNpZ25hdHVyZS9saWJleS1uZy1zaWduYXR1cmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi9zaWduYXR1cmUvbGliZXktbmctc2lnbmF0dXJlL2xpYmV5LW5nLXNpZ25hdHVyZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUdULFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxFQUNaLEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFNUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7OztBQU9yRCxNQUFNLGFBQWE7Q0FJbEI7QUFPRCxNQUFNLE9BQU8seUJBQXlCO0lBdUJwQztRQXRCVSxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFrQixDQUFDO1FBQ3RELGVBQVUsR0FBVyxVQUFVLENBQUM7UUFFakMsY0FBUyxHQUFxQixJQUFJLE9BQU8sRUFBVyxDQUFDO1FBTTdELGNBQVMsR0FBVyxHQUFHLENBQUM7UUFDeEIsZUFBVSxHQUFXLEdBQUcsQ0FBQztRQUN6QixnQkFBVyxHQUFXLEdBQUcsQ0FBQztRQUMxQixpQkFBWSxHQUFXLEdBQUcsQ0FBQztRQUMzQix3QkFBbUIsR0FBVztZQUM1QixRQUFRLEVBQUUsQ0FBQztZQUNYLFdBQVcsRUFBRSxJQUFJLENBQUMsU0FBUztZQUMz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ICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBPbkRlc3Ryb3ksXHJcbiAgVmlld0NoaWxkLFxyXG4gIE91dHB1dCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNpZ1dlYlRhYmxldCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL1NpZ1dlYi9TaWdXZWInO1xyXG5pbXBvcnQgeyBGb3JtLCBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBTaWduYXR1cmVQYWQgfSBmcm9tICdhbmd1bGFyMi1zaWduYXR1cmVwYWQnO1xyXG5pbnRlcmZhY2UgSU91dHB1dE1lc3NhZ2Uge1xyXG4gIGJpb1NpZ0RhdGE6IHN0cmluZztcclxuICBzaWdJbWdEYXRhOiBzdHJpbmc7XHJcbiAgc2lnU3RyaW5nOiBzdHJpbmc7XHJcbn1cclxuXHJcbmNsYXNzIE91dHB1dE1lc3NhZ2UgaW1wbGVtZW50cyBJT3V0cHV0TWVzc2FnZSB7XHJcbiAgYmlvU2lnRGF0YTogc3RyaW5nO1xyXG4gIHNpZ0ltZ0RhdGE6IHN0cmluZztcclxuICBzaWdTdHJpbmc6IHN0cmluZztcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItbGliZXktbmctc2lnbmF0dXJlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbGliZXktbmctc2lnbmF0dXJlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9saWJleS1uZy1zaWduYXR1cmUuY29tcG9uZW50LmNzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTGliZXlOZ1NpZ25hdHVyZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XHJcbiAgQE91dHB1dCgpIE91dHB1dFNpZ25hdHVyZSA9IG5ldyBFdmVudEVtaXR0ZXI8SU91dHB1dE1lc3NhZ2U+KCk7XHJcbiAgQElucHV0KCkgRGV2aWNlVHlwZTogc3RyaW5nID0gJ21vdXNlcGFkJztcclxuXHJcbiAgcHJpdmF0ZSBfZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xyXG4gIEBWaWV3Q2hpbGQoJ3NpZ0ltZycsIHsgc3RhdGljOiBmYWxzZSB9KVxyXG4gIGNhbnZhcyE6IEVsZW1lbnRSZWY8SFRNTENhbnZhc0VsZW1lbnQ+O1xyXG4gIEBWaWV3Q2hpbGQoU2lnbmF0dXJlUGFkKSBzaWduYXR1cmVQYWQ6IFNpZ25hdHVyZVBhZDtcclxuICBjbnZDb250ZXh0OiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ7XHJcbiAgdG1yOiBhbnk7XHJcbiAgd2lkdGhWaWV3OiBudW1iZXIgPSA0NDA7XHJcbiAgaGVpZ2h0VmlldzogbnVtYmVyID0gMjUwO1xyXG4gIHdpZHRoUmVuZGVyOiBudW1iZXIgPSA0NDA7XHJcbiAgaGVpZ2h0UmVuZGVyOiBudW1iZXIgPSAyNTA7XHJcbiAgc2lnbmF0dXJlUGFkT3B0aW9uczogT2JqZWN0ID0ge1xyXG4gICAgbWluV2lkdGg6IDUsXHJcbiAgICBjYW52YXNXaWR0aDogdGhpcy53aWR0aFZpZXcsXHJcbiAgICBjYW52YXNIZWlnaHQ6IHRoaXMuaGVpZ2h0VmlldyxcclxuICB9O1xyXG4gIEZpbGVWYWxpZGF0ZWQgPSBmYWxzZTtcclxuICBOb3REcml2ZXIgPSBmYWxzZTtcclxuICBVcGxvYWRGaWxlOiBzdHJpbmcgPSBudWxsO1xyXG4gIEZpbGU6IGFueTtcclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuSW5pdERldmljZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmNsb3NpbmdTaWdXZWIoKTtcclxuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBDaGFuZ2VEZXZpY2UoKSB7XHJcbiAgICB0aGlzLk5vdERyaXZlciA9IGZhbHNlO1xyXG4gICAgdGhpcy5VcGxvYWRGaWxlID0gbnVsbDtcclxuICAgIHRoaXMuRmlsZSA9IG51bGw7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5Jbml0RGV2aWNlKCk7XHJcbiAgICB9LCAyMDApO1xyXG4gIH1cclxuXHJcbiAgSW5pdERldmljZSgpIHtcclxuICAgIGlmICh0aGlzLkRldmljZVR5cGUgPT0gJ3BpbnBhZCcpIHtcclxuICAgICAgdGhpcy5jbnZDb250ZXh0ID0gKDxIVE1MQ2FudmFzRWxlbWVudD4oXHJcbiAgICAgICAgdGhpcy5jYW52YXMubmF0aXZlRWxlbWVudFxyXG4gICAgICApKS5nZXRDb250ZXh0KCcyZCcpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuRGV2aWNlVHlwZSA9PSAnbW91c2VwYWQnKSB7XHJcbiAgICAgIHRoaXMuc2lnbmF0dXJlUGFkLnNldCgnbWluV2lkdGgnLCA1KTtcclxuICAgICAgdGhpcy5zaWduYXR1cmVQYWQuY2xlYXIoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNsb3NpbmdTaWdXZWIoKSB7XHJcbiAgICBTaWdXZWJUYWJsZXQuQ2xlYXJUYWJsZXQoKTtcclxuICAgIFNpZ1dlYlRhYmxldC5TZXRUYWJsZXRTdGF0ZSgwLCB0aGlzLnRtciwgbnVsbCk7XHJcbiAgfVxyXG5cclxuICBvblNpZ24oKSB7XHJcbiAgICB0aGlzLk5vdERyaXZlciA9IGZhbHNlO1xyXG4gICAgdGhpcy5VcGxvYWRGaWxlID0gbnVsbDtcclxuICAgIHZhciBkcml2ZXIgPSBTaWdXZWJUYWJsZXQuR2V0VmVyc2lvblN0cmluZygpO1xyXG4gICAgaWYoZHJpdmVyID09IG51bGwpe1xyXG4gICAgICB0aGlzLk5vdERyaXZlciA9IHRydWU7XHJcbiAgICB9ZWxzZXtcclxuICAgICAgdGhpcy5Ob3REcml2ZXIgPSBmYWxzZTtcclxuICAgICAgY29uc29sZS5sb2coJ29uU2lnbiBDbGlja2VkIScpO1xyXG4gICAgICBTaWdXZWJUYWJsZXQuU2V0RGlzcGxheVhTaXplKHRoaXMud2lkdGhSZW5kZXIpO1xyXG4gICAgICBTaWdXZWJUYWJsZXQuU2V0RGlzcGxheVlTaXplKHRoaXMuaGVpZ2h0UmVuZGVyKTtcclxuICAgICAgU2lnV2ViVGFibGV0LlNldFRhYmxldFN0YXRlKDAsIHRoaXMudG1yLCBudWxsKTtcclxuICAgICAgU2lnV2ViVGFibGV0LlNldEp1c3RpZnlNb2RlKDApO1xyXG4gICAgICBTaWdXZWJUYWJsZXQuQ2xlYXJUYWJsZXQoKTtcclxuXHJcbiAgICAgIGlmICh0aGlzLnRtciA9PSBudWxsKSB7XHJcbiAgICAgICAgdGhpcy50bXIgPSBTaWdXZWJUYWJsZXQuU2V0VGFibGV0U3RhdGUoMSwgdGhpcy5jbnZDb250ZXh0LCA1MCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgU2lnV2ViVGFibGV0LlNldFRhYmxldFN0YXRlKDAsIHRoaXMudG1yLCBudWxsKTtcclxuICAgICAgICB0aGlzLnRtciA9IG51bGw7XHJcbiAgICAgICAgdGhpcy50bXIgPSBTaWdXZWJUYWJsZXQuU2V0VGFibGV0U3RhdGUoMSwgdGhpcy5jbnZDb250ZXh0LCA1MCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uQ2xlYXIoKSB7XHJcbiAgICBpZih0aGlzLlVwbG9hZEZpbGUgPT0gbnVsbCl7XHJcbiAgICAgIGlmICh0aGlzLkRldmljZVR5cGUgPT0gJ3BpbnBhZCcpIHtcclxuICAgICAgICBTaWdXZWJUYWJsZXQuQ2xlYXJUYWJsZXQoKTtcclxuICAgICAgICBpZiAodGhpcy5jbnZDb250ZXh0KSB7XHJcbiAgICAgICAgICB0aGlzLmNudkNvbnRleHQuY2xlYXJSZWN0KFxyXG4gICAgICAgICAgICAwLFxyXG4gICAgICAgICAgICAwLFxyXG4gICAgICAgICAgICB0aGlzLmNhbnZhcy5uYXRpdmVFbGVtZW50LndpZHRoLFxyXG4gICAgICAgICAgICB0aGlzLmNhbnZhcy5uYXRpdmVFbGVtZW50LmhlaWdodFxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuRGV2aWNlVHlwZSA9PSAnbW91c2VwYWQnKSB7XHJcbiAgICAgICAgdGhpcy5zaWduYXR1cmVQYWQuY2xlYXIoKTtcclxuICAgICAgfVxyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMuRmlsZSA9IG51bGw7XHJcbiAgICAgIHRoaXMuVXBsb2FkRmlsZSA9IG51bGw7XHJcbiAgICAgIHRoaXMuQ2hhbmdlRGV2aWNlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkRvbmUoKSB7XHJcbiAgICB2YXIgcmVzdWx0ID0gbmV3IE91dHB1dE1lc3NhZ2UoKTtcclxuICAgIGlmKHRoaXMuVXBsb2FkRmlsZSA9PSBudWxsKXtcclxuICAgICAgaWYgKHRoaXMuRGV2aWNlVHlwZSA9PSAncGlucGFkJykge1xyXG4gICAgICAgIC8vIGlmIChOdW1iZXIoU2lnV2ViVGFibGV0Lk51bWJlck9mVGFibGV0UG9pbnRzKCkpID09PSAwKSB7XHJcbiAgICAgICAgLy8gICBhbGVydCgnUG9yIGZhdm9yIGZpcm1lIGFudGVzIGRlIGNvbnRpbnVhcicpO1xyXG4gICAgICAgIC8vIH0gZWxzZSB7XHJcbiAgICAgICAgU2lnV2ViVGFibGV0LlNldFRhYmxldFN0YXRlKDAsIHRoaXMudG1yLCBudWxsKTtcclxuXHJcbiAgICAgICAgU2lnV2ViVGFibGV0LlNldFNpZ0NvbXByZXNzaW9uTW9kZSgxKTtcclxuICAgICAgICByZXN1bHQuYmlvU2lnRGF0YSA9IFNpZ1dlYlRhYmxldC5HZXRTaWdTdHJpbmcoKTtcclxuICAgICAgICByZXN1bHQuc2lnSW1nRGF0YSA9IFNpZ1dlYlRhYmxldC5HZXRTaWdTdHJpbmcoKTtcclxuICAgICAgICBTaWdXZWJUYWJsZXQuU2V0SW1hZ2VYU2l6ZSh0aGlzLndpZHRoUmVuZGVyKTtcclxuICAgICAgICBTaWdXZWJUYWJsZXQuU2V0SW1hZ2VZU2l6ZSh0aGlzLmhlaWdodFJlbmRlcik7XHJcbiAgICAgICAgU2lnV2ViVGFibGV0LlNldEltYWdlUGVuV2lkdGgoNSk7XHJcbiAgICAgICAgU2lnV2ViVGFibGV0LkdldFNpZ0ltYWdlQjY0KChiYXNlNjQ6IHN0cmluZykgPT4ge1xyXG4gICAgICAgICAgcmVzdWx0LnNpZ1N0cmluZyA9IFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LFwiICsgYmFzZTY0O1xyXG4gICAgICAgICAgdGhpcy5PdXRwdXRTaWduYXR1cmUuZW1pdChyZXN1bHQpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5EZXZpY2VUeXBlID09ICdtb3VzZXBhZCcpIHtcclxuICAgICAgICB2YXIgcmVzdWx0ID0gbmV3IE91dHB1dE1lc3NhZ2UoKTtcclxuICAgICAgICByZXN1bHQuc2lnU3RyaW5nID0gdGhpcy5zaWduYXR1cmVQYWQudG9EYXRhVVJMKCk7XHJcbiAgICAgICAgdGhpcy5PdXRwdXRTaWduYXR1cmUuZW1pdChyZXN1bHQpO1xyXG4gICAgICB9XHJcbiAgICB9ZWxzZXtcclxuICAgICAgcmVzdWx0LnNpZ1N0cmluZyA9IHRoaXMuVXBsb2FkRmlsZTtcclxuICAgICAgdGhpcy5PdXRwdXRTaWduYXR1cmUuZW1pdChyZXN1bHQpO1xyXG4gICAgfVxyXG4gIH1cclxuICBmaWxlRXZlbnQoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5VcGxvYWRGaWxlID0gbnVsbDtcclxuICAgIHRoaXMuRmlsZVZhbGlkYXRlZCA9IGZhbHNlO1xyXG4gICAgY29uc3QgZmlsZSA9IGV2ZW50LnRhcmdldC5maWxlc1swXTtcclxuICAgIGlmIChmaWxlLnR5cGUgPT0gJ2ltYWdlL2pwZWcnIHx8IGZpbGUudHlwZSA9PSAnaW1hZ2UvcG5nJykge1xyXG4gICAgICB0aGlzLkZpbGVWYWxpZGF0ZWQgPSBmYWxzZTtcclxuICAgICAgY29uc3QgbmV3V2lkdGggPSB0aGlzLndpZHRoUmVuZGVyO1xyXG4gICAgICBjb25zdCBuZXdIZWlnaHQgPSB0aGlzLmhlaWdodFJlbmRlcjtcclxuICAgICAgdGhpcy5yZXNpemVJbWFnZShmaWxlLCBuZXdXaWR0aCwgbmV3SGVpZ2h0KVxyXG4gICAgICAgIC50aGVuKChyZXNpemVkSW1hZ2VEYXRhVXJsKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLlVwbG9hZEZpbGUgPSByZXNpemVkSW1hZ2VEYXRhVXJsO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xyXG4gICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgYWwgcmVkaW1lbnNpb25hciBsYSBpbWFnZW46JywgZXJyb3IpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMuRmlsZSA9IG51bGw7XHJcbiAgICAgIHRoaXMuVXBsb2FkRmlsZSA9IG51bGw7XHJcbiAgICAgIHRoaXMuRmlsZVZhbGlkYXRlZCA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlc2l6ZUltYWdlKGltYWdlOiBGaWxlLCBuZXdXaWR0aDogbnVtYmVyLCBuZXdIZWlnaHQ6IG51bWJlcik6IFByb21pc2U8c3RyaW5nPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xyXG4gICAgICByZWFkZXIub25sb2FkID0gKGUpID0+IHtcclxuICAgICAgICBjb25zdCBpbWcgPSBuZXcgSW1hZ2UoKTtcclxuICAgICAgICBpbWcuc3JjID0gZS50YXJnZXQucmVzdWx0IGFzIHN0cmluZztcclxuICAgICAgICBpbWcub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7XHJcbiAgICAgICAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTtcclxuICAgICAgICAgIGNhbnZhcy53aWR0aCA9IG5ld1dpZHRoO1xyXG4gICAgICAgICAgY2FudmFzLmhlaWdodCA9IG5ld0hlaWdodDtcclxuICAgICAgICAgIGN0eC5kcmF3SW1hZ2UoaW1nLCAwLCAwLCBuZXdXaWR0aCwgbmV3SGVpZ2h0KTtcclxuICAgICAgICAgIGNvbnN0IHJlc2l6ZWRJbWFnZURhdGFVcmwgPSBjYW52YXMudG9EYXRhVVJMKGltYWdlLnR5cGUpO1xyXG4gICAgICAgICAgcmVzb2x2ZShyZXNpemVkSW1hZ2VEYXRhVXJsKTtcclxuICAgICAgICB9O1xyXG4gICAgICAgIGltZy5vbmVycm9yID0gKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICByZWplY3QoZXJyb3IpO1xyXG4gICAgICAgIH07XHJcbiAgICAgIH07XHJcbiAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGltYWdlKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibWItM1wiPlxyXG4gIDxkaXYgY2xhc3M9XCJyb3cgbWItNVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBqdXN0aWZ5LWFsaWduLWNlbnRlciBtYi0zXCI+XHJcbiAgICAgIDxpbnB1dCB0eXBlPVwiZmlsZVwiIChjaGFuZ2UpPVwiZmlsZUV2ZW50KCRldmVudClcIiBbKG5nTW9kZWwpXT1cIkZpbGVcIiBjbGFzcz1cImZvcm0tY29udHJvbCBmb3JtLWNvbnRyb2wtcGhcIlxyXG4gICAgICBhY2NlcHQ9XCJpbWFnZS9wbmcsIGltYWdlL2pwZWdcIiBzdHlsZT1cImJvcmRlcjogbm9uZTsgbWluLXdpZHRoOiA0MTBweDsgd2lkdGg6IGF1dG87XCI+XHJcbiAgICAgIDxsYWJlbCAqbmdJZj1cIkZpbGVWYWxpZGF0ZWRcIiBbbmdDbGFzc109XCIndGV4dC1kYW5nZXInXCI+QXJjaGl2byByZXF1ZXJpZG8uIEZvcm1hdG9zIHBlcm1pdGlkb3MgKGpwZWcsIGpwZywgcG5nKTwvbGFiZWw+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTJcIj5cclxuICAgICAgICA8bmctc2VsZWN0IFsobmdNb2RlbCldPVwiRGV2aWNlVHlwZVwiIGNsYXNzPVwibmctc2VsZWN0LXNpbmdsZSBuZy1zZWxlY3QtYm9yZGVyLTBcIiBwbGFjZWhvbGRlcj1cIlNlbGVjY2lvbmFyXCIgW2NsZWFyYWJsZV09XCJmYWxzZVwiXHJcbiAgICAgICAgKGNoYW5nZSk9XCJDaGFuZ2VEZXZpY2UoKVwiPlxyXG4gICAgICAgICAgICA8bmctb3B0aW9uIFt2YWx1ZV09XCIncGlucGFkJ1wiPlBpbnBhZDwvbmctb3B0aW9uPlxyXG4gICAgICAgICAgICA8bmctb3B0aW9uIFt2YWx1ZV09XCInbW91c2VwYWQnXCI+TW91c2VwYWQ8L25nLW9wdGlvbj5cclxuICAgICAgICA8L25nLXNlbGVjdD5cclxuICAgICAgICA8bGFiZWwgKm5nSWY9XCJOb3REcml2ZXJcIiBbbmdDbGFzc109XCIndGV4dC1kYW5nZXInXCI+Tm8gdGllbmUgZWwgZHJpdmVyIGluc3RhbGFkbzwvbGFiZWw+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiAqbmdJZj1cIlVwbG9hZEZpbGU9PW51bGxcIj5cclxuICAgIDxkaXYgKm5nSWY9XCJEZXZpY2VUeXBlPT0ncGlucGFkJ1wiIHN0eWxlPVwiYm9yZGVyOiAxcHggcmlkZ2UgI0Q2REVFNTtib3JkZXItcmFkaXVzOiAxMHB4OyB3aWR0aDogNDQwcHg7XCI+XHJcbiAgICAgIDxjYW52YXMgIChjbGljayk9XCJvblNpZ24oKVwiICNzaWdJbWcgW3dpZHRoXT1cIndpZHRoVmlld1wiIFtoZWlnaHRdPVwiaGVpZ2h0Vmlld1wiPjwvY2FudmFzPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiRGV2aWNlVHlwZT09J21vdXNlcGFkJ1wiIHN0eWxlPVwiYm9yZGVyOiAxcHggcmlkZ2UgI0Q2REVFNTtib3JkZXItcmFkaXVzOiAxMHB4OyB3aWR0aDogNDQwcHg7XCI+XHJcbiAgICAgIDxzaWduYXR1cmUtcGFkIFtvcHRpb25zXT1cInNpZ25hdHVyZVBhZE9wdGlvbnNcIj48L3NpZ25hdHVyZS1wYWQ+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpuZ0lmPVwiVXBsb2FkRmlsZSE9bnVsbFwiIHN0eWxlPVwiYm9yZGVyOiAxcHggcmlkZ2UgI0Q2REVFNTtib3JkZXItcmFkaXVzOiAxMHB4OyB3aWR0aDogNDQwcHg7XCI+XHJcbiAgICA8aW1nIFtzcmNdPVwiVXBsb2FkRmlsZVwiIFt3aWR0aF09XCJ3aWR0aFZpZXdcIiBbaGVpZ2h0XT1cImhlaWdodFZpZXdcIiAvPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyIG10LTNcIj5cclxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1saWdodC1wcmltYXJ5LXNtIGJvcmRlci1ub25lIHRleHQtYmxhY2tcIiAoY2xpY2spPVwib25DbGVhcigpXCI+XHJcbiAgICAgIDxpIGNsYXNzPVwiaWNvbi10cmFzaC1ibHVlIG1lLTNcIj48L2k+IEJvcnJhciBmaXJtYVxyXG4gICAgPC9idXR0b24+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlclwiPlxyXG4gIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zYXZlLXJwXCIgKGNsaWNrKT1cIm9uRG9uZSgpXCI+XHJcbiAgICAgIDxpIGNsYXNzPVwiaWNvbi1zYXZlLXdoaXRlXCI+PC9pPiBHdWFyZGFyXHJcbiAgPC9idXR0b24+XHJcbjwvZGl2PiJdfQ==
@@ -0,0 +1,57 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
4
+ import { LibeyNgSignatureComponent } from './libey-ng-signature/libey-ng-signature.component';
5
+ import { SignaturePadModule } from 'angular2-signaturepad';
6
+ import { NgSelectModule } from '@ng-select/ng-select';
7
+ import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
8
+ import { IconsModule } from '../icons/icons.module';
9
+ import * as i0 from "@angular/core";
10
+ export class LibeyNgSignatureModule {
11
+ }
12
+ LibeyNgSignatureModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgSignatureModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
+ LibeyNgSignatureModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgSignatureModule, declarations: [LibeyNgSignatureComponent], imports: [FormsModule,
14
+ ReactiveFormsModule,
15
+ SignaturePadModule,
16
+ CommonModule,
17
+ NgSelectModule,
18
+ NgbModule], exports: [LibeyNgSignatureComponent,
19
+ SignaturePadModule,
20
+ NgSelectModule,
21
+ NgbModule,
22
+ IconsModule] });
23
+ LibeyNgSignatureModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgSignatureModule, imports: [[
24
+ FormsModule,
25
+ ReactiveFormsModule,
26
+ SignaturePadModule,
27
+ CommonModule,
28
+ NgSelectModule,
29
+ NgbModule
30
+ ], SignaturePadModule,
31
+ NgSelectModule,
32
+ NgbModule,
33
+ IconsModule] });
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyNgSignatureModule, decorators: [{
35
+ type: NgModule,
36
+ args: [{
37
+ declarations: [
38
+ LibeyNgSignatureComponent
39
+ ],
40
+ imports: [
41
+ FormsModule,
42
+ ReactiveFormsModule,
43
+ SignaturePadModule,
44
+ CommonModule,
45
+ NgSelectModule,
46
+ NgbModule
47
+ ],
48
+ exports: [
49
+ LibeyNgSignatureComponent,
50
+ SignaturePadModule,
51
+ NgSelectModule,
52
+ NgbModule,
53
+ IconsModule
54
+ ]
55
+ }]
56
+ }] });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZXktbmctc2lnbmF0dXJlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvc2lnbmF0dXJlL2xpYmV5LW5nLXNpZ25hdHVyZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRyxNQUFNLHVCQUF1QixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQXNCcEQsTUFBTSxPQUFPLHNCQUFzQjs7b0hBQXRCLHNCQUFzQjtxSEFBdEIsc0JBQXNCLGlCQWxCL0IseUJBQXlCLGFBR3pCLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLFlBQVk7UUFDWixjQUFjO1FBQ2QsU0FBUyxhQUdULHlCQUF5QjtRQUN6QixrQkFBa0I7UUFDbEIsY0FBYztRQUNkLFNBQVM7UUFDVCxXQUFXO3FIQUdGLHNCQUFzQixZQWhCeEI7WUFDUCxXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLGtCQUFrQjtZQUNsQixZQUFZO1lBQ1osY0FBYztZQUNkLFNBQVM7U0FDVixFQUdDLGtCQUFrQjtRQUNsQixjQUFjO1FBQ2QsU0FBUztRQUNULFdBQVc7NEZBR0Ysc0JBQXNCO2tCQXBCbEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1oseUJBQXlCO3FCQUMxQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsWUFBWTt3QkFDWixjQUFjO3dCQUNkLFNBQVM7cUJBQ1Y7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHlCQUF5Qjt3QkFDekIsa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLFNBQVM7d0JBQ1QsV0FBVztxQkFDWjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBMaWJleU5nU2lnbmF0dXJlQ29tcG9uZW50IH0gZnJvbSAnLi9saWJleS1uZy1zaWduYXR1cmUvbGliZXktbmctc2lnbmF0dXJlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNpZ25hdHVyZVBhZE1vZHVsZSAgfSBmcm9tICdhbmd1bGFyMi1zaWduYXR1cmVwYWQnO1xyXG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcclxuaW1wb3J0IHsgTmdiTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBJY29uc01vZHVsZSB9IGZyb20gJy4uL2ljb25zL2ljb25zLm1vZHVsZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgTGliZXlOZ1NpZ25hdHVyZUNvbXBvbmVudFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgU2lnbmF0dXJlUGFkTW9kdWxlLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgTmdTZWxlY3RNb2R1bGUsXHJcbiAgICBOZ2JNb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIExpYmV5TmdTaWduYXR1cmVDb21wb25lbnQsXHJcbiAgICBTaWduYXR1cmVQYWRNb2R1bGUsXHJcbiAgICBOZ1NlbGVjdE1vZHVsZSxcclxuICAgIE5nYk1vZHVsZSxcclxuICAgIEljb25zTW9kdWxlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTGliZXlOZ1NpZ25hdHVyZU1vZHVsZSB7IH1cclxuIl19
@@ -0,0 +1,59 @@
1
+ import { ContentChild, Directive, Input, TemplateRef } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class LibeyColumnDirective {
4
+ constructor() {
5
+ this.view = true;
6
+ this.isAutoClose = () => true;
7
+ this.expandedByDefault = () => false;
8
+ this.rowspan = () => 0;
9
+ }
10
+ getCellTemplate() {
11
+ return this.cellTemplate || this.defaultTemplate;
12
+ }
13
+ }
14
+ LibeyColumnDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyColumnDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
15
+ LibeyColumnDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: LibeyColumnDirective, selector: "libey-ng-column", inputs: { header: "header", property: "property", width: "width", view: "view", arrayMap: "arrayMap", isArray: "isArray", expandable: "expandable", class: "class", classHeader: "classHeader", childTableTemplate: "childTableTemplate", isAutoClose: "isAutoClose", expandedByDefault: "expandedByDefault", rowspan: "rowspan", isRowspan: "isRowspan" }, queries: [{ propertyName: "headerTemplate", first: true, predicate: ["headerTemplate"], descendants: true, static: true }, { propertyName: "cellTemplate", first: true, predicate: ["cellTemplate"], descendants: true, static: true }, { propertyName: "defaultTemplate", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0 });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: LibeyColumnDirective, decorators: [{
17
+ type: Directive,
18
+ args: [{
19
+ selector: 'libey-ng-column'
20
+ }]
21
+ }], propDecorators: { header: [{
22
+ type: Input
23
+ }], property: [{
24
+ type: Input
25
+ }], width: [{
26
+ type: Input
27
+ }], view: [{
28
+ type: Input
29
+ }], arrayMap: [{
30
+ type: Input
31
+ }], isArray: [{
32
+ type: Input
33
+ }], expandable: [{
34
+ type: Input
35
+ }], class: [{
36
+ type: Input
37
+ }], classHeader: [{
38
+ type: Input
39
+ }], childTableTemplate: [{
40
+ type: Input
41
+ }], isAutoClose: [{
42
+ type: Input
43
+ }], expandedByDefault: [{
44
+ type: Input
45
+ }], rowspan: [{
46
+ type: Input
47
+ }], isRowspan: [{
48
+ type: Input
49
+ }], headerTemplate: [{
50
+ type: ContentChild,
51
+ args: ['headerTemplate', { static: true }]
52
+ }], cellTemplate: [{
53
+ type: ContentChild,
54
+ args: ['cellTemplate', { static: true }]
55
+ }], defaultTemplate: [{
56
+ type: ContentChild,
57
+ args: [TemplateRef, { static: true }]
58
+ }] } });
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliZXktY29sdW1uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvdGFibGUvZGlyZWN0aXZlcy9saWJleS1jb2x1bW4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzVFLE1BQU0sT0FBTyxvQkFBb0I7SUFIakM7UUFPVyxTQUFJLEdBQVksSUFBSSxDQUFDO1FBT3JCLGdCQUFXLEdBQTJCLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQztRQUNqRCxzQkFBaUIsR0FBMkIsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ3hELFlBQU8sR0FBMEIsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO0tBVW5EO0lBTEMsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQ25ELENBQUM7O2tIQXBCVSxvQkFBb0I7c0dBQXBCLG9CQUFvQiw4cEJBaUJqQixXQUFXOzRGQWpCZCxvQkFBb0I7a0JBSGhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUI7OEJBRVUsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDNEMsY0FBYztzQkFBL0QsWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ0EsWUFBWTtzQkFBM0QsWUFBWTt1QkFBQyxjQUFjLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNELGVBQWU7c0JBQTNELFlBQVk7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnRDaGlsZCwgRGlyZWN0aXZlLCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnbGliZXktbmctY29sdW1uJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTGliZXlDb2x1bW5EaXJlY3RpdmUge1xyXG4gIEBJbnB1dCgpIGhlYWRlciE6IHN0cmluZztcclxuICBASW5wdXQoKSBwcm9wZXJ0eSE6IHN0cmluZztcclxuICBASW5wdXQoKSB3aWR0aCE6IG51bWJlcjtcclxuICBASW5wdXQoKSB2aWV3OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBhcnJheU1hcD86IHN0cmluZztcclxuICBASW5wdXQoKSBpc0FycmF5PzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBleHBhbmRhYmxlPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjbGFzcz86IHN0cmluZztcclxuICBASW5wdXQoKSBjbGFzc0hlYWRlcj86IHN0cmluZztcclxuICBASW5wdXQoKSBjaGlsZFRhYmxlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQElucHV0KCkgaXNBdXRvQ2xvc2U6IChpdGVtOiBhbnkpID0+IGJvb2xlYW4gPSAoKSA9PiB0cnVlO1xyXG4gIEBJbnB1dCgpIGV4cGFuZGVkQnlEZWZhdWx0OiAoaXRlbTogYW55KSA9PiBib29sZWFuID0gKCkgPT4gZmFsc2U7XHJcbiAgQElucHV0KCkgcm93c3BhbjogKGl0ZW06IGFueSkgPT4gbnVtYmVyID0gKCkgPT4gMDtcclxuICBASW5wdXQoKSBpc1Jvd3NwYW4/OiBib29sZWFuO1xyXG4gIEBDb250ZW50Q2hpbGQoJ2hlYWRlclRlbXBsYXRlJywgeyBzdGF0aWM6IHRydWUgfSkgaGVhZGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQENvbnRlbnRDaGlsZCgnY2VsbFRlbXBsYXRlJywgeyBzdGF0aWM6IHRydWUgfSkgY2VsbFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+OyAgXHJcbiAgQENvbnRlbnRDaGlsZChUZW1wbGF0ZVJlZiwgeyBzdGF0aWM6IHRydWUgfSkgZGVmYXVsdFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIGdldENlbGxUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlZjxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmNlbGxUZW1wbGF0ZSB8fCB0aGlzLmRlZmF1bHRUZW1wbGF0ZTtcclxuICB9XHJcblxyXG4gIFxyXG59Il19