@colijnit/sharedcomponents 1.0.7 → 1.0.10

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 (77) hide show
  1. package/bundles/colijnit-sharedcomponents.umd.js +746 -0
  2. package/bundles/colijnit-sharedcomponents.umd.js.map +1 -0
  3. package/colijnit-sharedcomponents.d.ts +6 -0
  4. package/colijnit-sharedcomponents.metadata.json +1 -0
  5. package/esm2015/colijnit-sharedcomponents.js +7 -0
  6. package/esm2015/lib/components/docsign/component/signature/signature.component.js +75 -0
  7. package/esm2015/lib/components/docsign/component/signatures/signatures.component.js +44 -0
  8. package/esm2015/lib/components/docsign/docsign.component.js +225 -0
  9. package/esm2015/lib/components/docsign/docsign.module.js +23 -0
  10. package/esm2015/public-api.js +6 -0
  11. package/fesm2015/colijnit-sharedcomponents.js +372 -0
  12. package/fesm2015/colijnit-sharedcomponents.js.map +1 -0
  13. package/lib/components/docsign/component/signature/signature.component.d.ts +16 -0
  14. package/{src/lib → lib}/components/docsign/component/signature/style/_layout.scss +0 -0
  15. package/{src/lib → lib}/components/docsign/component/signature/style/_material-definition.scss +0 -0
  16. package/{src/lib → lib}/components/docsign/component/signature/style/_theme.scss +0 -0
  17. package/{src/lib → lib}/components/docsign/component/signature/style/material.scss +0 -0
  18. package/lib/components/docsign/component/signatures/signatures.component.d.ts +12 -0
  19. package/{src/lib → lib}/components/docsign/component/signatures/style/_layout.scss +0 -0
  20. package/{src/lib → lib}/components/docsign/component/signatures/style/_material-definition.scss +0 -0
  21. package/{src/lib → lib}/components/docsign/component/signatures/style/_theme.scss +0 -0
  22. package/{src/lib → lib}/components/docsign/component/signatures/style/material.scss +0 -0
  23. package/lib/components/docsign/docsign.component.d.ts +92 -0
  24. package/lib/components/docsign/docsign.module.d.ts +2 -0
  25. package/{src/lib → lib}/components/docsign/style/_layout.scss +0 -0
  26. package/{src/lib → lib}/components/docsign/style/_material-definition.scss +0 -0
  27. package/{src/lib → lib}/components/docsign/style/_theme.scss +0 -0
  28. package/{src/lib → lib}/components/docsign/style/material.scss +0 -0
  29. package/{src/lib → lib}/style/_mixin.scss +0 -0
  30. package/{src/lib → lib}/style/_variables.scss +0 -0
  31. package/package.json +25 -15
  32. package/public-api.d.ts +2 -0
  33. package/.browserslistrc +0 -16
  34. package/colijnit-sharedcomponents-1.0.7.tgz +0 -0
  35. package/karma.conf.js +0 -44
  36. package/ng-package.json +0 -17
  37. package/src/lib/components/docsign/component/signature/signature.component.ts +0 -82
  38. package/src/lib/components/docsign/component/signatures/signatures.component.ts +0 -50
  39. package/src/lib/components/docsign/docsign.component.ts +0 -252
  40. package/src/lib/components/docsign/docsign.module.ts +0 -22
  41. package/src/lib/components/send-method-dialog/enums/send-option.ts +0 -6
  42. package/src/lib/components/send-method-dialog/send-method-dialog.component.ts +0 -215
  43. package/src/lib/components/send-method-dialog/send-method-dialog.module.ts +0 -27
  44. package/src/lib/components/send-method-dialog/style/_layout.scss +0 -186
  45. package/src/lib/components/send-method-dialog/style/_material-definition.scss +0 -1
  46. package/src/lib/components/send-method-dialog/style/_theme.scss +0 -7
  47. package/src/lib/components/send-method-dialog/style/material.scss +0 -4
  48. package/src/lib/components/stock/stock-information/stock-information.component.ts +0 -59
  49. package/src/lib/components/stock/stock-information-grid/stock-information-grid.component.ts +0 -278
  50. package/src/lib/components/stock/stock-location/stock-location.component.ts +0 -82
  51. package/src/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.ts +0 -4
  52. package/src/lib/components/stock/stock-transfer/stock-transfer.component.ts +0 -111
  53. package/src/lib/components/stock/stock.component.ts +0 -78
  54. package/src/lib/components/stock/stock.module.ts +0 -47
  55. package/src/lib/components/stock/style/_layout.scss +0 -206
  56. package/src/lib/components/stock/style/_material-definition.scss +0 -20
  57. package/src/lib/components/stock/style/_theme.scss +0 -8
  58. package/src/lib/components/stock/style/material.scss +0 -4
  59. package/src/lib/enum/icon.enum.ts +0 -22
  60. package/src/lib/factory/business-object-factory.ts +0 -120
  61. package/src/lib/factory/decorators/boolean.decorator.ts +0 -113
  62. package/src/lib/factory/decorators/complex-array.decorator.ts +0 -61
  63. package/src/lib/factory/decorators/complex-field.decorator.ts +0 -63
  64. package/src/lib/factory/decorators/date-field.decorator.ts +0 -41
  65. package/src/lib/factory/decorators/string-number.decorator.ts +0 -48
  66. package/src/lib/model/business-object.ts +0 -85
  67. package/src/lib/model/icon-svg.ts +0 -22
  68. package/src/lib/service/icon-cache.service.ts +0 -51
  69. package/src/lib/service/ione-connector-adapter.service.ts +0 -113
  70. package/src/lib/service/stock.service.ts +0 -35
  71. package/src/lib/utils/array-utils.ts +0 -202
  72. package/src/lib/utils/is-nill.function.ts +0 -4
  73. package/src/public-api.ts +0 -10
  74. package/src/test.ts +0 -27
  75. package/tsconfig.lib.json +0 -18
  76. package/tsconfig.lib.prod.json +0 -10
  77. package/tsconfig.spec.json +0 -17
@@ -0,0 +1,23 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { DocsignComponent } from "./docsign.component";
4
+ import { SignatureComponent } from "./component/signature/signature.component";
5
+ import { SignaturesComponent } from "./component/signatures/signatures.component";
6
+ export class DocsignModule {
7
+ }
8
+ DocsignModule.decorators = [
9
+ { type: NgModule, args: [{
10
+ imports: [
11
+ CommonModule
12
+ ],
13
+ declarations: [
14
+ DocsignComponent,
15
+ SignatureComponent,
16
+ SignaturesComponent
17
+ ],
18
+ exports: [
19
+ DocsignComponent
20
+ ]
21
+ },] }
22
+ ];
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jc2lnbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9kb2NzaWduL2RvY3NpZ24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzdFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBZWhGLE1BQU0sT0FBTyxhQUFhOzs7WUFiekIsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxZQUFZO2lCQUNiO2dCQUNELFlBQVksRUFBRTtvQkFDWixnQkFBZ0I7b0JBQ2hCLGtCQUFrQjtvQkFDbEIsbUJBQW1CO2lCQUNwQjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsZ0JBQWdCO2lCQUNqQjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHtEb2NzaWduQ29tcG9uZW50fSBmcm9tIFwiLi9kb2NzaWduLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1NpZ25hdHVyZUNvbXBvbmVudH0gZnJvbSBcIi4vY29tcG9uZW50L3NpZ25hdHVyZS9zaWduYXR1cmUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7U2lnbmF0dXJlc0NvbXBvbmVudH0gZnJvbSBcIi4vY29tcG9uZW50L3NpZ25hdHVyZXMvc2lnbmF0dXJlcy5jb21wb25lbnRcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIERvY3NpZ25Db21wb25lbnQsXHJcbiAgICBTaWduYXR1cmVDb21wb25lbnQsXHJcbiAgICBTaWduYXR1cmVzQ29tcG9uZW50XHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBEb2NzaWduQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRG9jc2lnbk1vZHVsZSB7XHJcblxyXG59XHJcbiJdfQ==
@@ -0,0 +1,6 @@
1
+ /*
2
+ * Public API Surface of sharedcomponents
3
+ */
4
+ export * from './lib/components/docsign/docsign.component';
5
+ export * from './lib/components/docsign/docsign.module';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZGNvbXBvbmVudHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMseUNBQXlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygc2hhcmVkY29tcG9uZW50c1xyXG4gKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZG9jc2lnbi9kb2NzaWduLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZG9jc2lnbi9kb2NzaWduLm1vZHVsZSc7XHJcbiJdfQ==
@@ -0,0 +1,372 @@
1
+ import { __awaiter } from 'tslib';
2
+ import { EventEmitter, Component, ViewEncapsulation, ViewChild, ElementRef, Input, Output, HostBinding, NgModule } from '@angular/core';
3
+ import { trigger, state, style, transition, animate } from '@angular/animations';
4
+ import { PDFDocument } from 'pdf-lib';
5
+ import * as PDFJS from 'pdfjs-dist/legacy/build/pdf';
6
+ import pdfjsWorker from 'pdfjs-dist/build/pdf.worker.entry';
7
+ import { CommonModule } from '@angular/common';
8
+ import SignaturePad from 'signature_pad';
9
+
10
+ class DocsignComponent {
11
+ constructor() {
12
+ this.saveButtonLabel = 'SAVE';
13
+ this.clearButtonLabel = 'CLEAR';
14
+ this.signDocumentButtonLabel = 'SIGN_DOCUMENT';
15
+ this.cancelButtonLabel = 'CANCEL';
16
+ this.pdfSaved = new EventEmitter();
17
+ this.cancelClick = new EventEmitter();
18
+ this.showSignaturePopup = false;
19
+ this.showSigBuyer = false;
20
+ this.showSigSeller = false;
21
+ this.showSignatures = false;
22
+ }
23
+ /**
24
+ * Load an existing [[PDFDocument]]. The input data can be provided in
25
+ * multiple formats:
26
+ *
27
+ * | Type | Contents |
28
+ * | ------------- | ------------------------------------------------------ |
29
+ * | `string` | A base64 encoded string (or data URI) containing a PDF |
30
+ * | `Uint8Array` | The raw bytes of a PDF |
31
+ * | `ArrayBuffer` | The raw bytes of a PDF |
32
+ *
33
+ * For example:
34
+ * ```js
35
+ * import { PDFDocument } from 'pdf-lib'
36
+ *
37
+ * // pdf=string
38
+ * const base64 =
39
+ * 'JVBERi0xLjcKJYGBgYEKCjUgMCBvYmoKPDwKL0ZpbHRlciAvRmxhdGVEZWNvZGUKL0xlbm' +
40
+ * 'd0aCAxMDQKPj4Kc3RyZWFtCniccwrhMlAAwaJ0Ln2P1Jyy1JLM5ERdc0MjCwUjE4WQNC4Q' +
41
+ * '6cNlCFZkqGCqYGSqEJLLZWNuYGZiZmbkYuZsZmlmZGRgZmluDCQNzc3NTM2NzdzMXMxMjQ' +
42
+ * 'ztFEKyuEK0uFxDuAAOERdVCmVuZHN0cmVhbQplbmRvYmoKCjYgMCBvYmoKPDwKL0ZpbHRl' +
43
+ * 'ciAvRmxhdGVEZWNvZGUKL1R5cGUgL09ialN0bQovTiA0Ci9GaXJzdCAyMAovTGVuZ3RoID' +
44
+ * 'IxNQo+PgpzdHJlYW0KeJxVj9GqwjAMhu/zFHkBzTo3nCCCiiKIHPEICuJF3cKoSCu2E8/b' +
45
+ * '20wPIr1p8v9/8kVhgilmGfawX2CGaVrgcAi0/bsy0lrX7IGWpvJ4iJYEN3gEmrrGBlQwGs' +
46
+ * 'HHO9VBX1wNrxAqMX87RBD5xpJuddqwd82tjAHxzV1U5LPgy52DKXWnr1Lheg+j/c/pzGVr' +
47
+ * 'iqV0VlwZPXGPCJjElw/ybkwUmeoWgxesDXGhHJC/D/iikp1Av80ptKU0FdBEe25pPihAM1' +
48
+ * 'u6ytgaaWfs2Hrz35CJT1+EWmAKZW5kc3RyZWFtCmVuZG9iagoKNyAwIG9iago8PAovU2l6' +
49
+ * 'ZSA4Ci9Sb290IDIgMCBSCi9GaWx0ZXIgL0ZsYXRlRGVjb2RlCi9UeXBlIC9YUmVmCi9MZW' +
50
+ * '5ndGggMzgKL1cgWyAxIDIgMiBdCi9JbmRleCBbIDAgOCBdCj4+CnN0cmVhbQp4nBXEwREA' +
51
+ * 'EBAEsCwz3vrvRmOOyyOoGhZdutHN2MT55fIAVocD+AplbmRzdHJlYW0KZW5kb2JqCgpzdG' +
52
+ * 'FydHhyZWYKNTEwCiUlRU9G'
53
+ *
54
+ * const dataUri = 'data:application/pdf;base64,' + base64
55
+ *
56
+ * const pdfDoc1 = await PDFDocument.load(base64)
57
+ * const pdfDoc2 = await PDFDocument.load(dataUri)
58
+ *
59
+ * // pdf=Uint8Array
60
+ * import fs from 'fs'
61
+ * const uint8Array = fs.readFileSync('with_update_sections.pdf')
62
+ * const pdfDoc3 = await PDFDocument.load(uint8Array)
63
+ *
64
+ * // pdf=ArrayBuffer
65
+ * const url = 'https://pdf-lib.js.org/assets/with_update_sections.pdf'
66
+ * const arrayBuffer = await fetch(url).then(res => res.arrayBuffer())
67
+ * const pdfDoc4 = await PDFDocument.load(arrayBuffer)
68
+ *
69
+ * ```
70
+ *
71
+ * @param pdf The input data containing a PDF document.
72
+ * @param options The options to be used when loading the document.
73
+ * @returns Resolves with a document loaded from the input.
74
+ */
75
+ set pdf(value) {
76
+ if (value) {
77
+ this._pdf = value;
78
+ this._openPDF();
79
+ }
80
+ }
81
+ get pdf() {
82
+ return this._pdf;
83
+ }
84
+ showClass() {
85
+ return true;
86
+ }
87
+ saveFirstSignature(sig) {
88
+ this._saveSignature(sig, this.sigBuyerPosition);
89
+ this.showSigBuyer = false;
90
+ this._savePdf();
91
+ }
92
+ saveSecondSignature(sig) {
93
+ this._saveSignature(sig, this.sigSellerPosition);
94
+ this.showSigSeller = false;
95
+ this._savePdf();
96
+ }
97
+ _openPDF() {
98
+ return __awaiter(this, void 0, void 0, function* () {
99
+ // first create reader to check signatures
100
+ this._checkSignatures();
101
+ this.pdfDoc = yield PDFDocument.load(this._pdf, {
102
+ updateMetadata: false
103
+ });
104
+ const pdfDataUri = yield this.pdfDoc.saveAsBase64({ dataUri: true });
105
+ this.iframe.nativeElement.src = pdfDataUri;
106
+ });
107
+ }
108
+ _savePdf() {
109
+ return __awaiter(this, void 0, void 0, function* () {
110
+ if (!this.showSigBuyer && !this.showSigSeller) {
111
+ // ready, save the pdf and emit result
112
+ const result = yield this.pdfDoc.saveAsBase64();
113
+ this.pdfSaved.next(result);
114
+ }
115
+ });
116
+ }
117
+ _checkSignatures() {
118
+ return __awaiter(this, void 0, void 0, function* () {
119
+ let pdfWorkerSrc;
120
+ if (window.hasOwnProperty('pdfWorkerSrc') &&
121
+ typeof window.pdfWorkerSrc === 'string' &&
122
+ window.pdfWorkerSrc) {
123
+ pdfWorkerSrc = window.pdfWorkerSrc;
124
+ }
125
+ else {
126
+ pdfWorkerSrc = pdfjsWorker;
127
+ }
128
+ PDFJS.GlobalWorkerOptions.workerSrc = pdfWorkerSrc;
129
+ const pdfReader = yield PDFJS.getDocument(this._pdf).promise;
130
+ const numPages = pdfReader.numPages;
131
+ for (let i = 0; i < numPages; i++) {
132
+ const page = yield pdfReader.getPage(i + 1);
133
+ const text = yield page.getTextContent();
134
+ page.cleanup();
135
+ if (this.firstSignatureField) {
136
+ this.sigBuyerPosition = this._getPositionSignature(text, this.firstSignatureField);
137
+ if (this.sigBuyerPosition.width > 0 && this.sigBuyerPosition.height > 0) {
138
+ this.sigBuyerPosition.page = i;
139
+ this.showSigBuyer = true;
140
+ }
141
+ }
142
+ if (this.secondSignatureField) {
143
+ this.sigSellerPosition = this._getPositionSignature(text, this.secondSignatureField);
144
+ if (this.sigSellerPosition.width > 0 && this.sigSellerPosition.height > 0) {
145
+ this.sigSellerPosition.page = i;
146
+ this.showSigSeller = true;
147
+ }
148
+ }
149
+ }
150
+ });
151
+ }
152
+ _getPositionSignature(textItem, signatureField) {
153
+ const sigItem = textItem.items.find((i) => i.str.toLowerCase() === signatureField.toLowerCase());
154
+ if (sigItem) {
155
+ textItem.items.slice(textItem.items.indexOf(sigItem), 1);
156
+ return {
157
+ x: sigItem.transform[4],
158
+ y: sigItem.transform[5],
159
+ width: sigItem.width,
160
+ height: sigItem.height,
161
+ page: 0
162
+ };
163
+ }
164
+ return { x: 0, y: 0, width: 0, height: 0, page: 0 };
165
+ }
166
+ _saveSignature(sig, dimensions) {
167
+ return __awaiter(this, void 0, void 0, function* () {
168
+ const jpgImage = yield this.pdfDoc.embedPng(sig);
169
+ const page = yield this.pdfDoc.getPage(dimensions.page);
170
+ page.drawImage(jpgImage, {
171
+ x: ((dimensions.x + (dimensions.width / 2)) - (200 / 2)),
172
+ y: ((dimensions.y + (dimensions.height / 2)) - (100 / 2)),
173
+ width: 200,
174
+ height: 100
175
+ });
176
+ });
177
+ }
178
+ }
179
+ DocsignComponent.decorators = [
180
+ { type: Component, args: [{
181
+ selector: "ione-docsign",
182
+ template: `
183
+ <iframe #iframe></iframe>
184
+ <ione-signatures *ngIf="showSignatures" @showHideSignature
185
+ [showFirstSignature]="showSigBuyer"
186
+ [firstSignatureTitle]="firstSignatureLabel"
187
+ [showSecondSignature]="showSigSeller"
188
+ [secondSignatureTitle]="secondSignatureLabel"
189
+ [saveButtonLabel]="saveButtonLabel"
190
+ [clearButtonLabel]="clearButtonLabel"
191
+ (saveFirstSignature)="saveFirstSignature($event)"
192
+ (saveSecondSignature)="saveSecondSignature($event)"
193
+ ></ione-signatures>
194
+ <input type="button" *ngIf="(showSigBuyer || showSigSeller) && !showSignatures" class="button button-sign-document"
195
+ [value]="signDocumentButtonLabel"
196
+ (click)="showSignatures = true"
197
+ />
198
+ <input type="button" class="button button-cancel"
199
+ [value]="cancelButtonLabel"
200
+ (click)="cancelClick.emit($event)"
201
+ />
202
+ `,
203
+ animations: [
204
+ trigger("showHideSignature", [
205
+ state("void", style({ transform: "translate(-50%, -50%) scale(0)" })),
206
+ state("*", style({ transform: "translate(-50%, -50%) scale(1)" })),
207
+ transition("void <=> *", animate("200ms ease-in-out")),
208
+ ])
209
+ ],
210
+ encapsulation: ViewEncapsulation.None
211
+ },] }
212
+ ];
213
+ DocsignComponent.propDecorators = {
214
+ iframe: [{ type: ViewChild, args: ["iframe", { read: ElementRef },] }],
215
+ pdf: [{ type: Input }],
216
+ firstSignatureLabel: [{ type: Input }],
217
+ firstSignatureField: [{ type: Input }],
218
+ secondSignatureLabel: [{ type: Input }],
219
+ secondSignatureField: [{ type: Input }],
220
+ saveButtonLabel: [{ type: Input }],
221
+ clearButtonLabel: [{ type: Input }],
222
+ signDocumentButtonLabel: [{ type: Input }],
223
+ cancelButtonLabel: [{ type: Input }],
224
+ pdfSaved: [{ type: Output }],
225
+ cancelClick: [{ type: Output }],
226
+ showClass: [{ type: HostBinding, args: ['class.ione-docsign',] }]
227
+ };
228
+
229
+ class SignatureComponent {
230
+ constructor() {
231
+ this.saveButtonLabel = 'SAVE';
232
+ this.clearButtonLabel = 'CLEAR';
233
+ this.save = new EventEmitter();
234
+ }
235
+ set content(content) {
236
+ if (content) {
237
+ this.signatureCanvas = content;
238
+ this._initCanvas();
239
+ }
240
+ }
241
+ showClass() {
242
+ return true;
243
+ }
244
+ handleSave(event) {
245
+ // save canvas as svg
246
+ // const sig: string = this.signature.toDataURL("image/svg+xml");
247
+ const sig = this.signature.toDataURL("image/png");
248
+ // emit signature string
249
+ this.save.next(sig);
250
+ }
251
+ handleClear(event) {
252
+ if (this.signature) {
253
+ this.signature.clear();
254
+ }
255
+ }
256
+ _initCanvas() {
257
+ if (this.signatureCanvas && this.signatureCanvas.nativeElement) {
258
+ this.signature = new SignaturePad(this.signatureCanvas.nativeElement);
259
+ setTimeout(() => {
260
+ this._resizeSignatureCanvas(this.signature, this.signatureCanvas);
261
+ });
262
+ }
263
+ }
264
+ _resizeSignatureCanvas(signature, signatureCanvas) {
265
+ const imageBeforeResize = signature.toDataURL();
266
+ const ratio = Math.max(window.devicePixelRatio || 1, 1);
267
+ signatureCanvas.nativeElement.width = signatureCanvas.nativeElement.offsetWidth * ratio;
268
+ signatureCanvas.nativeElement.height = signatureCanvas.nativeElement.offsetHeight * ratio;
269
+ signatureCanvas.nativeElement.getContext("2d").scale(ratio, ratio);
270
+ signature.fromDataURL(imageBeforeResize);
271
+ }
272
+ }
273
+ SignatureComponent.decorators = [
274
+ { type: Component, args: [{
275
+ selector: "ione-signature",
276
+ template: `
277
+ <div class="signature-wrapper">
278
+ <div class="signature-header">
279
+ <span *ngIf="title" class="title" [textContent]="title"></span>
280
+ <div class="button-wrapper">
281
+ <input type="button" (click)="handleSave($event)" [value]="saveButtonLabel"/>
282
+ <input type="button" (click)="handleClear($event)" [value]="clearButtonLabel">
283
+ </div>
284
+ </div>
285
+ <div class="canvas">
286
+ <canvas #signature></canvas>
287
+ </div>
288
+ </div>
289
+ `,
290
+ encapsulation: ViewEncapsulation.None
291
+ },] }
292
+ ];
293
+ SignatureComponent.propDecorators = {
294
+ content: [{ type: ViewChild, args: ["signature", { read: ElementRef },] }],
295
+ title: [{ type: Input }],
296
+ saveButtonLabel: [{ type: Input }],
297
+ clearButtonLabel: [{ type: Input }],
298
+ save: [{ type: Output }],
299
+ showClass: [{ type: HostBinding, args: ["class.ione-signature",] }]
300
+ };
301
+
302
+ class SignaturesComponent {
303
+ constructor() {
304
+ this.showFirstSignature = false;
305
+ this.showSecondSignature = false;
306
+ this.saveButtonLabel = 'SAVE';
307
+ this.clearButtonLabel = 'CLEAR';
308
+ this.saveFirstSignature = new EventEmitter();
309
+ this.saveSecondSignature = new EventEmitter();
310
+ }
311
+ showClass() {
312
+ return true;
313
+ }
314
+ }
315
+ SignaturesComponent.decorators = [
316
+ { type: Component, args: [{
317
+ selector: "ione-signatures",
318
+ template: `
319
+ <ione-signature *ngIf="showFirstSignature"
320
+ [title]="firstSignatureTitle"
321
+ [saveButtonLabel]="saveButtonLabel"
322
+ [clearButtonLabel]="clearButtonLabel"
323
+ (save)="saveFirstSignature.emit($event)"></ione-signature>
324
+ <ione-signature *ngIf="showSecondSignature"
325
+ [title]="secondSignatureTitle"
326
+ [saveButtonLabel]="saveButtonLabel"
327
+ [clearButtonLabel]="clearButtonLabel"
328
+ (save)="saveSecondSignature.emit($event)"></ione-signature>
329
+ `,
330
+ encapsulation: ViewEncapsulation.None
331
+ },] }
332
+ ];
333
+ SignaturesComponent.propDecorators = {
334
+ showFirstSignature: [{ type: Input }],
335
+ firstSignatureTitle: [{ type: Input }],
336
+ showSecondSignature: [{ type: Input }],
337
+ secondSignatureTitle: [{ type: Input }],
338
+ saveButtonLabel: [{ type: Input }],
339
+ clearButtonLabel: [{ type: Input }],
340
+ saveFirstSignature: [{ type: Output }],
341
+ saveSecondSignature: [{ type: Output }],
342
+ showClass: [{ type: HostBinding, args: ["class.ione-signatures",] }]
343
+ };
344
+
345
+ class DocsignModule {
346
+ }
347
+ DocsignModule.decorators = [
348
+ { type: NgModule, args: [{
349
+ imports: [
350
+ CommonModule
351
+ ],
352
+ declarations: [
353
+ DocsignComponent,
354
+ SignatureComponent,
355
+ SignaturesComponent
356
+ ],
357
+ exports: [
358
+ DocsignComponent
359
+ ]
360
+ },] }
361
+ ];
362
+
363
+ /*
364
+ * Public API Surface of sharedcomponents
365
+ */
366
+
367
+ /**
368
+ * Generated bundle index. Do not edit.
369
+ */
370
+
371
+ export { DocsignComponent, DocsignModule, SignatureComponent as ɵa, SignaturesComponent as ɵb };
372
+ //# sourceMappingURL=colijnit-sharedcomponents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colijnit-sharedcomponents.js","sources":["../../../projects/sharedcomponents/src/lib/components/docsign/docsign.component.ts","../../../projects/sharedcomponents/src/lib/components/docsign/component/signature/signature.component.ts","../../../projects/sharedcomponents/src/lib/components/docsign/component/signatures/signatures.component.ts","../../../projects/sharedcomponents/src/lib/components/docsign/docsign.module.ts","../../../projects/sharedcomponents/src/public-api.ts","../../../projects/sharedcomponents/src/colijnit-sharedcomponents.ts"],"sourcesContent":["import {Component, ElementRef, EventEmitter, HostBinding, Input, Output, ViewChild, ViewEncapsulation} from \"@angular/core\";\r\nimport {animate, state, style, transition, trigger} from \"@angular/animations\";\r\nimport {PDFDocument} from \"pdf-lib\";\r\nimport * as PDFJS from \"pdfjs-dist/legacy/build/pdf\";\r\nimport pdfjsWorker from \"pdfjs-dist/build/pdf.worker.entry\";\r\nimport {TextItem} from \"pdfjs-dist/types/src/display/api\";\r\n\r\nexport interface TextDimension {\r\n x: number,\r\n y: number,\r\n width: number,\r\n height: number,\r\n page: number\r\n}\r\n\r\n@Component({\r\n selector: \"ione-docsign\",\r\n template: `\r\n <iframe #iframe></iframe>\r\n <ione-signatures *ngIf=\"showSignatures\" @showHideSignature\r\n [showFirstSignature]=\"showSigBuyer\"\r\n [firstSignatureTitle]=\"firstSignatureLabel\"\r\n [showSecondSignature]=\"showSigSeller\"\r\n [secondSignatureTitle]=\"secondSignatureLabel\"\r\n [saveButtonLabel]=\"saveButtonLabel\"\r\n [clearButtonLabel]=\"clearButtonLabel\"\r\n (saveFirstSignature)=\"saveFirstSignature($event)\"\r\n (saveSecondSignature)=\"saveSecondSignature($event)\"\r\n ></ione-signatures>\r\n <input type=\"button\" *ngIf=\"(showSigBuyer || showSigSeller) && !showSignatures\" class=\"button button-sign-document\"\r\n [value]=\"signDocumentButtonLabel\"\r\n (click)=\"showSignatures = true\"\r\n />\r\n <input type=\"button\" class=\"button button-cancel\"\r\n [value]=\"cancelButtonLabel\"\r\n (click)=\"cancelClick.emit($event)\"\r\n />\r\n `,\r\n animations: [\r\n trigger(\"showHideSignature\", [\r\n state(\"void\", style({transform: \"translate(-50%, -50%) scale(0)\"})),\r\n state(\"*\", style({transform: \"translate(-50%, -50%) scale(1)\"})),\r\n transition(\"void <=> *\", animate(\"200ms ease-in-out\")),\r\n ])\r\n ],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class DocsignComponent {\r\n @ViewChild(\"iframe\", { read: ElementRef })\r\n public iframe: ElementRef;\r\n\r\n /**\r\n * Load an existing [[PDFDocument]]. The input data can be provided in\r\n * multiple formats:\r\n *\r\n * | Type | Contents |\r\n * | ------------- | ------------------------------------------------------ |\r\n * | `string` | A base64 encoded string (or data URI) containing a PDF |\r\n * | `Uint8Array` | The raw bytes of a PDF |\r\n * | `ArrayBuffer` | The raw bytes of a PDF |\r\n *\r\n * For example:\r\n * ```js\r\n * import { PDFDocument } from 'pdf-lib'\r\n *\r\n * // pdf=string\r\n * const base64 =\r\n * 'JVBERi0xLjcKJYGBgYEKCjUgMCBvYmoKPDwKL0ZpbHRlciAvRmxhdGVEZWNvZGUKL0xlbm' +\r\n * 'd0aCAxMDQKPj4Kc3RyZWFtCniccwrhMlAAwaJ0Ln2P1Jyy1JLM5ERdc0MjCwUjE4WQNC4Q' +\r\n * '6cNlCFZkqGCqYGSqEJLLZWNuYGZiZmbkYuZsZmlmZGRgZmluDCQNzc3NTM2NzdzMXMxMjQ' +\r\n * 'ztFEKyuEK0uFxDuAAOERdVCmVuZHN0cmVhbQplbmRvYmoKCjYgMCBvYmoKPDwKL0ZpbHRl' +\r\n * 'ciAvRmxhdGVEZWNvZGUKL1R5cGUgL09ialN0bQovTiA0Ci9GaXJzdCAyMAovTGVuZ3RoID' +\r\n * 'IxNQo+PgpzdHJlYW0KeJxVj9GqwjAMhu/zFHkBzTo3nCCCiiKIHPEICuJF3cKoSCu2E8/b' +\r\n * '20wPIr1p8v9/8kVhgilmGfawX2CGaVrgcAi0/bsy0lrX7IGWpvJ4iJYEN3gEmrrGBlQwGs' +\r\n * 'HHO9VBX1wNrxAqMX87RBD5xpJuddqwd82tjAHxzV1U5LPgy52DKXWnr1Lheg+j/c/pzGVr' +\r\n * 'iqV0VlwZPXGPCJjElw/ybkwUmeoWgxesDXGhHJC/D/iikp1Av80ptKU0FdBEe25pPihAM1' +\r\n * 'u6ytgaaWfs2Hrz35CJT1+EWmAKZW5kc3RyZWFtCmVuZG9iagoKNyAwIG9iago8PAovU2l6' +\r\n * 'ZSA4Ci9Sb290IDIgMCBSCi9GaWx0ZXIgL0ZsYXRlRGVjb2RlCi9UeXBlIC9YUmVmCi9MZW' +\r\n * '5ndGggMzgKL1cgWyAxIDIgMiBdCi9JbmRleCBbIDAgOCBdCj4+CnN0cmVhbQp4nBXEwREA' +\r\n * 'EBAEsCwz3vrvRmOOyyOoGhZdutHN2MT55fIAVocD+AplbmRzdHJlYW0KZW5kb2JqCgpzdG' +\r\n * 'FydHhyZWYKNTEwCiUlRU9G'\r\n *\r\n * const dataUri = 'data:application/pdf;base64,' + base64\r\n *\r\n * const pdfDoc1 = await PDFDocument.load(base64)\r\n * const pdfDoc2 = await PDFDocument.load(dataUri)\r\n *\r\n * // pdf=Uint8Array\r\n * import fs from 'fs'\r\n * const uint8Array = fs.readFileSync('with_update_sections.pdf')\r\n * const pdfDoc3 = await PDFDocument.load(uint8Array)\r\n *\r\n * // pdf=ArrayBuffer\r\n * const url = 'https://pdf-lib.js.org/assets/with_update_sections.pdf'\r\n * const arrayBuffer = await fetch(url).then(res => res.arrayBuffer())\r\n * const pdfDoc4 = await PDFDocument.load(arrayBuffer)\r\n *\r\n * ```\r\n *\r\n * @param pdf The input data containing a PDF document.\r\n * @param options The options to be used when loading the document.\r\n * @returns Resolves with a document loaded from the input.\r\n */\r\n @Input()\r\n public set pdf(value: any) {\r\n if (value) {\r\n this._pdf = value;\r\n this._openPDF();\r\n }\r\n }\r\n\r\n public get pdf(): any {\r\n return this._pdf;\r\n }\r\n\r\n @Input()\r\n public firstSignatureLabel: string;\r\n\r\n @Input()\r\n public firstSignatureField: string;\r\n\r\n @Input()\r\n public secondSignatureLabel: string;\r\n\r\n @Input()\r\n public secondSignatureField: string;\r\n\r\n @Input()\r\n public saveButtonLabel: string = 'SAVE';\r\n\r\n @Input()\r\n public clearButtonLabel: string = 'CLEAR';\r\n\r\n @Input()\r\n public signDocumentButtonLabel: string = 'SIGN_DOCUMENT';\r\n\r\n @Input()\r\n public cancelButtonLabel: string = 'CANCEL';\r\n\r\n @Output()\r\n public pdfSaved: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n @Output()\r\n public cancelClick: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();\r\n\r\n @HostBinding('class.ione-docsign')\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n public showSignaturePopup: boolean = false;\r\n public showSigBuyer: boolean = false;\r\n public sigBuyerPosition: TextDimension;\r\n public showSigSeller: boolean = false;\r\n public sigSellerPosition: TextDimension;\r\n public showSignatures: boolean = false;\r\n\r\n public pdfDoc: PDFDocument;\r\n\r\n private _pdf: any;\r\n\r\n public saveFirstSignature(sig: string): void {\r\n this._saveSignature(sig, this.sigBuyerPosition);\r\n this.showSigBuyer = false;\r\n this._savePdf();\r\n }\r\n\r\n public saveSecondSignature(sig: string): void {\r\n this._saveSignature(sig, this.sigSellerPosition);\r\n this.showSigSeller = false;\r\n this._savePdf();\r\n }\r\n\r\n private async _openPDF(): Promise<void> {\r\n // first create reader to check signatures\r\n this._checkSignatures();\r\n\r\n this.pdfDoc = await PDFDocument.load(this._pdf, {\r\n updateMetadata: false\r\n });\r\n const pdfDataUri = await this.pdfDoc.saveAsBase64({ dataUri: true });\r\n this.iframe.nativeElement.src = pdfDataUri;\r\n }\r\n\r\n private async _savePdf(): Promise<void> {\r\n if (!this.showSigBuyer && !this.showSigSeller) {\r\n // ready, save the pdf and emit result\r\n const result = await this.pdfDoc.saveAsBase64();\r\n this.pdfSaved.next(result);\r\n }\r\n }\r\n\r\n private async _checkSignatures(): Promise<void> {\r\n let pdfWorkerSrc;\r\n if (window.hasOwnProperty('pdfWorkerSrc') &&\r\n typeof (window as any).pdfWorkerSrc === 'string' &&\r\n (window as any).pdfWorkerSrc) {\r\n pdfWorkerSrc = (window as any).pdfWorkerSrc;\r\n }\r\n else {\r\n pdfWorkerSrc = pdfjsWorker;\r\n }\r\n PDFJS.GlobalWorkerOptions.workerSrc = pdfWorkerSrc;\r\n const pdfReader = await PDFJS.getDocument(this._pdf).promise;\r\n const numPages = pdfReader.numPages;\r\n for (let i = 0; i < numPages; i++) {\r\n const page = await pdfReader.getPage(i + 1);\r\n const text = await page.getTextContent();\r\n page.cleanup();\r\n if (this.firstSignatureField) {\r\n this.sigBuyerPosition = this._getPositionSignature(text, this.firstSignatureField);\r\n if (this.sigBuyerPosition.width > 0 && this.sigBuyerPosition.height > 0) {\r\n this.sigBuyerPosition.page = i;\r\n this.showSigBuyer = true;\r\n }\r\n }\r\n if (this.secondSignatureField) {\r\n this.sigSellerPosition = this._getPositionSignature(text, this.secondSignatureField);\r\n if (this.sigSellerPosition.width > 0 && this.sigSellerPosition.height > 0) {\r\n this.sigSellerPosition.page = i;\r\n this.showSigSeller = true;\r\n }\r\n }\r\n }\r\n }\r\n\r\n private _getPositionSignature(textItem: any, signatureField: string): TextDimension {\r\n const sigItem: TextItem = <TextItem>textItem.items.find((i: any) => i.str.toLowerCase() === signatureField.toLowerCase());\r\n if (sigItem) {\r\n textItem.items.slice(textItem.items.indexOf(sigItem), 1);\r\n return {\r\n x: sigItem.transform[4],\r\n y: sigItem.transform[5],\r\n width: sigItem.width,\r\n height: sigItem.height,\r\n page: 0\r\n };\r\n }\r\n return {x: 0, y: 0, width: 0, height: 0, page: 0}\r\n }\r\n\r\n private async _saveSignature(sig: string, dimensions: TextDimension): Promise<void> {\r\n const jpgImage = await this.pdfDoc.embedPng(sig);\r\n const page = await this.pdfDoc.getPage(dimensions.page);\r\n page.drawImage(jpgImage, {\r\n x: ((dimensions.x + (dimensions.width / 2)) - (200 / 2)),\r\n y: ((dimensions.y + (dimensions.height / 2)) - (100 / 2)),\r\n width: 200,\r\n height: 100\r\n });\r\n }\r\n}\r\n","import {Component, ElementRef, EventEmitter, HostBinding, Input, OnInit, Output, ViewChild, ViewEncapsulation} from \"@angular/core\";\r\nimport SignaturePad from \"signature_pad\";\r\n\r\n@Component({\r\n selector: \"ione-signature\",\r\n template: `\r\n <div class=\"signature-wrapper\">\r\n <div class=\"signature-header\">\r\n <span *ngIf=\"title\" class=\"title\" [textContent]=\"title\"></span>\r\n <div class=\"button-wrapper\">\r\n <input type=\"button\" (click)=\"handleSave($event)\" [value]=\"saveButtonLabel\"/>\r\n <input type=\"button\" (click)=\"handleClear($event)\" [value]=\"clearButtonLabel\">\r\n </div>\r\n </div>\r\n <div class=\"canvas\">\r\n <canvas #signature></canvas>\r\n </div>\r\n </div>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SignatureComponent {\r\n @ViewChild(\"signature\", {read: ElementRef}) set content(content: ElementRef) {\r\n if (content) {\r\n this.signatureCanvas = content;\r\n this._initCanvas();\r\n }\r\n }\r\n\r\n @Input()\r\n public title: string;\r\n\r\n @Input()\r\n public saveButtonLabel: string = 'SAVE';\r\n\r\n @Input()\r\n public clearButtonLabel: string = 'CLEAR';\r\n\r\n @Output()\r\n public save: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n @HostBinding(\"class.ione-signature\")\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n public signature: SignaturePad;\r\n public signatureCanvas: ElementRef;\r\n\r\n public handleSave(event: MouseEvent): void {\r\n // save canvas as svg\r\n // const sig: string = this.signature.toDataURL(\"image/svg+xml\");\r\n const sig: string = this.signature.toDataURL(\"image/png\");\r\n // emit signature string\r\n this.save.next(sig);\r\n }\r\n\r\n public handleClear(event: MouseEvent): void {\r\n if (this.signature) {\r\n this.signature.clear();\r\n }\r\n }\r\n\r\n private _initCanvas(): void {\r\n if (this.signatureCanvas && this.signatureCanvas.nativeElement) {\r\n this.signature = new SignaturePad(this.signatureCanvas.nativeElement);\r\n setTimeout(() => {\r\n this._resizeSignatureCanvas(this.signature, this.signatureCanvas);\r\n });\r\n }\r\n }\r\n\r\n private _resizeSignatureCanvas(signature: SignaturePad, signatureCanvas: ElementRef): void {\r\n const imageBeforeResize: string = signature.toDataURL();\r\n const ratio: number = Math.max(window.devicePixelRatio || 1, 1);\r\n signatureCanvas.nativeElement.width = signatureCanvas.nativeElement.offsetWidth * ratio;\r\n signatureCanvas.nativeElement.height = signatureCanvas.nativeElement.offsetHeight * ratio;\r\n signatureCanvas.nativeElement.getContext(\"2d\").scale(ratio, ratio);\r\n signature.fromDataURL(imageBeforeResize);\r\n }\r\n\r\n}\r\n","import {Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation} from \"@angular/core\";\r\n\r\n@Component({\r\n selector: \"ione-signatures\",\r\n template: `\r\n <ione-signature *ngIf=\"showFirstSignature\"\r\n [title]=\"firstSignatureTitle\"\r\n [saveButtonLabel]=\"saveButtonLabel\"\r\n [clearButtonLabel]=\"clearButtonLabel\"\r\n (save)=\"saveFirstSignature.emit($event)\"></ione-signature>\r\n <ione-signature *ngIf=\"showSecondSignature\"\r\n [title]=\"secondSignatureTitle\"\r\n [saveButtonLabel]=\"saveButtonLabel\"\r\n [clearButtonLabel]=\"clearButtonLabel\"\r\n (save)=\"saveSecondSignature.emit($event)\"></ione-signature>\r\n `,\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SignaturesComponent {\r\n\r\n @Input()\r\n public showFirstSignature: boolean = false;\r\n\r\n @Input()\r\n public firstSignatureTitle: string;\r\n\r\n @Input()\r\n public showSecondSignature: boolean = false;\r\n\r\n @Input()\r\n public secondSignatureTitle: string;\r\n\r\n @Input()\r\n public saveButtonLabel: string = 'SAVE';\r\n\r\n @Input()\r\n public clearButtonLabel: string = 'CLEAR';\r\n\r\n @Output()\r\n public saveFirstSignature: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n @Output()\r\n public saveSecondSignature: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n @HostBinding(\"class.ione-signatures\")\r\n public showClass() {\r\n return true;\r\n }\r\n\r\n}\r\n","import {NgModule} from \"@angular/core\";\r\nimport {CommonModule} from \"@angular/common\";\r\nimport {DocsignComponent} from \"./docsign.component\";\r\nimport {SignatureComponent} from \"./component/signature/signature.component\";\r\nimport {SignaturesComponent} from \"./component/signatures/signatures.component\";\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n DocsignComponent,\r\n SignatureComponent,\r\n SignaturesComponent\r\n ],\r\n exports: [\r\n DocsignComponent\r\n ]\r\n})\r\nexport class DocsignModule {\r\n\r\n}\r\n","/*\r\n * Public API Surface of sharedcomponents\r\n */\r\n\r\nexport * from './lib/components/docsign/docsign.component';\r\nexport * from './lib/components/docsign/docsign.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {SignatureComponent as ɵa} from './lib/components/docsign/component/signature/signature.component';\nexport {SignaturesComponent as ɵb} from './lib/components/docsign/component/signatures/signatures.component';"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { ElementRef, EventEmitter } from "@angular/core";
2
+ import SignaturePad from "signature_pad";
3
+ export declare class SignatureComponent {
4
+ set content(content: ElementRef);
5
+ title: string;
6
+ saveButtonLabel: string;
7
+ clearButtonLabel: string;
8
+ save: EventEmitter<string>;
9
+ showClass(): boolean;
10
+ signature: SignaturePad;
11
+ signatureCanvas: ElementRef;
12
+ handleSave(event: MouseEvent): void;
13
+ handleClear(event: MouseEvent): void;
14
+ private _initCanvas;
15
+ private _resizeSignatureCanvas;
16
+ }
@@ -0,0 +1,12 @@
1
+ import { EventEmitter } from "@angular/core";
2
+ export declare class SignaturesComponent {
3
+ showFirstSignature: boolean;
4
+ firstSignatureTitle: string;
5
+ showSecondSignature: boolean;
6
+ secondSignatureTitle: string;
7
+ saveButtonLabel: string;
8
+ clearButtonLabel: string;
9
+ saveFirstSignature: EventEmitter<string>;
10
+ saveSecondSignature: EventEmitter<string>;
11
+ showClass(): boolean;
12
+ }
@@ -0,0 +1,92 @@
1
+ import { ElementRef, EventEmitter } from "@angular/core";
2
+ import { PDFDocument } from "pdf-lib";
3
+ export interface TextDimension {
4
+ x: number;
5
+ y: number;
6
+ width: number;
7
+ height: number;
8
+ page: number;
9
+ }
10
+ export declare class DocsignComponent {
11
+ iframe: ElementRef;
12
+ /**
13
+ * Load an existing [[PDFDocument]]. The input data can be provided in
14
+ * multiple formats:
15
+ *
16
+ * | Type | Contents |
17
+ * | ------------- | ------------------------------------------------------ |
18
+ * | `string` | A base64 encoded string (or data URI) containing a PDF |
19
+ * | `Uint8Array` | The raw bytes of a PDF |
20
+ * | `ArrayBuffer` | The raw bytes of a PDF |
21
+ *
22
+ * For example:
23
+ * ```js
24
+ * import { PDFDocument } from 'pdf-lib'
25
+ *
26
+ * // pdf=string
27
+ * const base64 =
28
+ * 'JVBERi0xLjcKJYGBgYEKCjUgMCBvYmoKPDwKL0ZpbHRlciAvRmxhdGVEZWNvZGUKL0xlbm' +
29
+ * 'd0aCAxMDQKPj4Kc3RyZWFtCniccwrhMlAAwaJ0Ln2P1Jyy1JLM5ERdc0MjCwUjE4WQNC4Q' +
30
+ * '6cNlCFZkqGCqYGSqEJLLZWNuYGZiZmbkYuZsZmlmZGRgZmluDCQNzc3NTM2NzdzMXMxMjQ' +
31
+ * 'ztFEKyuEK0uFxDuAAOERdVCmVuZHN0cmVhbQplbmRvYmoKCjYgMCBvYmoKPDwKL0ZpbHRl' +
32
+ * 'ciAvRmxhdGVEZWNvZGUKL1R5cGUgL09ialN0bQovTiA0Ci9GaXJzdCAyMAovTGVuZ3RoID' +
33
+ * 'IxNQo+PgpzdHJlYW0KeJxVj9GqwjAMhu/zFHkBzTo3nCCCiiKIHPEICuJF3cKoSCu2E8/b' +
34
+ * '20wPIr1p8v9/8kVhgilmGfawX2CGaVrgcAi0/bsy0lrX7IGWpvJ4iJYEN3gEmrrGBlQwGs' +
35
+ * 'HHO9VBX1wNrxAqMX87RBD5xpJuddqwd82tjAHxzV1U5LPgy52DKXWnr1Lheg+j/c/pzGVr' +
36
+ * 'iqV0VlwZPXGPCJjElw/ybkwUmeoWgxesDXGhHJC/D/iikp1Av80ptKU0FdBEe25pPihAM1' +
37
+ * 'u6ytgaaWfs2Hrz35CJT1+EWmAKZW5kc3RyZWFtCmVuZG9iagoKNyAwIG9iago8PAovU2l6' +
38
+ * 'ZSA4Ci9Sb290IDIgMCBSCi9GaWx0ZXIgL0ZsYXRlRGVjb2RlCi9UeXBlIC9YUmVmCi9MZW' +
39
+ * '5ndGggMzgKL1cgWyAxIDIgMiBdCi9JbmRleCBbIDAgOCBdCj4+CnN0cmVhbQp4nBXEwREA' +
40
+ * 'EBAEsCwz3vrvRmOOyyOoGhZdutHN2MT55fIAVocD+AplbmRzdHJlYW0KZW5kb2JqCgpzdG' +
41
+ * 'FydHhyZWYKNTEwCiUlRU9G'
42
+ *
43
+ * const dataUri = 'data:application/pdf;base64,' + base64
44
+ *
45
+ * const pdfDoc1 = await PDFDocument.load(base64)
46
+ * const pdfDoc2 = await PDFDocument.load(dataUri)
47
+ *
48
+ * // pdf=Uint8Array
49
+ * import fs from 'fs'
50
+ * const uint8Array = fs.readFileSync('with_update_sections.pdf')
51
+ * const pdfDoc3 = await PDFDocument.load(uint8Array)
52
+ *
53
+ * // pdf=ArrayBuffer
54
+ * const url = 'https://pdf-lib.js.org/assets/with_update_sections.pdf'
55
+ * const arrayBuffer = await fetch(url).then(res => res.arrayBuffer())
56
+ * const pdfDoc4 = await PDFDocument.load(arrayBuffer)
57
+ *
58
+ * ```
59
+ *
60
+ * @param pdf The input data containing a PDF document.
61
+ * @param options The options to be used when loading the document.
62
+ * @returns Resolves with a document loaded from the input.
63
+ */
64
+ set pdf(value: any);
65
+ get pdf(): any;
66
+ firstSignatureLabel: string;
67
+ firstSignatureField: string;
68
+ secondSignatureLabel: string;
69
+ secondSignatureField: string;
70
+ saveButtonLabel: string;
71
+ clearButtonLabel: string;
72
+ signDocumentButtonLabel: string;
73
+ cancelButtonLabel: string;
74
+ pdfSaved: EventEmitter<string>;
75
+ cancelClick: EventEmitter<MouseEvent>;
76
+ showClass(): boolean;
77
+ showSignaturePopup: boolean;
78
+ showSigBuyer: boolean;
79
+ sigBuyerPosition: TextDimension;
80
+ showSigSeller: boolean;
81
+ sigSellerPosition: TextDimension;
82
+ showSignatures: boolean;
83
+ pdfDoc: PDFDocument;
84
+ private _pdf;
85
+ saveFirstSignature(sig: string): void;
86
+ saveSecondSignature(sig: string): void;
87
+ private _openPDF;
88
+ private _savePdf;
89
+ private _checkSignatures;
90
+ private _getPositionSignature;
91
+ private _saveSignature;
92
+ }
@@ -0,0 +1,2 @@
1
+ export declare class DocsignModule {
2
+ }
File without changes
File without changes