@mintplayer/ng-bootstrap 16.1.2 → 16.2.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.
@@ -0,0 +1,2 @@
1
+ export * from './src';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NpZ25hdHVyZS1wYWQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NyYyc7XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludHBsYXllci1uZy1ib290c3RyYXAtc2lnbmF0dXJlLXBhZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc2lnbmF0dXJlLXBhZC9taW50cGxheWVyLW5nLWJvb3RzdHJhcC1zaWduYXR1cmUtcGFkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -0,0 +1,110 @@
1
+ import { Component, ElementRef, EventEmitter, HostBinding, HostListener, Input, Output, ViewChild } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
+ import * as i0 from "@angular/core";
5
+ class BsSignaturePadComponent {
6
+ constructor() {
7
+ //#region Signature
8
+ this.signature$ = new BehaviorSubject({ strokes: [] });
9
+ this.signatureChange = new EventEmitter();
10
+ //#endregion
11
+ this.width = 500;
12
+ this.height = 300;
13
+ this.classes = true;
14
+ this.isDrawing = false;
15
+ this.context = null;
16
+ this.minHeight = 5;
17
+ this.signature$.pipe(takeUntilDestroyed()).subscribe((signature) => {
18
+ this.signatureChange.emit(signature);
19
+ });
20
+ }
21
+ get signature() {
22
+ return this.signature$.value;
23
+ }
24
+ set signature(value) {
25
+ this.signature$.next(value);
26
+ }
27
+ ngAfterViewInit() {
28
+ this.context = this.canvas.nativeElement.getContext('2d', { willReadFrequently: true });
29
+ }
30
+ onTouchMove(ev) {
31
+ if (this.isDrawing) {
32
+ ev.preventDefault();
33
+ }
34
+ }
35
+ onPointerStart(ev) {
36
+ ev.preventDefault();
37
+ this.isDrawing = true;
38
+ if (this.context) {
39
+ this.signature.strokes.push({
40
+ points: [{ x: ev.offsetX, y: ev.offsetY }]
41
+ });
42
+ this.signatureChange.emit(this.signature);
43
+ this.context.fillStyle = 'black';
44
+ this.context.beginPath();
45
+ this.context.moveTo(ev.offsetX, ev.offsetY);
46
+ }
47
+ }
48
+ onPointerMove(ev) {
49
+ if (this.isDrawing && this.context) {
50
+ ev.preventDefault();
51
+ // this.context.moveTo(this.points.at(-1)!.x, this.points.at(-1)!.y);
52
+ // // ctx.arc(x, y, width, 0, 2 * Math.PI, false);
53
+ // // this.context.arc(ev.offsetX, ev.offsetY, 2, 0, 2 * Math.PI, false);
54
+ // // this.context.arcTo(ev.offsetX, ev.offsetY,)
55
+ // this.context.closePath();
56
+ // this.context.fill();
57
+ this.signature.strokes.at(-1)?.points.push({ x: ev.offsetX, y: ev.offsetY });
58
+ this.signatureChange.emit(this.signature);
59
+ this.context.lineTo(ev.offsetX, ev.offsetY);
60
+ this.context.stroke();
61
+ }
62
+ }
63
+ onPointerEnd(ev) {
64
+ if (this.isDrawing && this.context) {
65
+ ev.preventDefault();
66
+ this.isDrawing = false;
67
+ this.signatureChange.emit(this.signature);
68
+ }
69
+ }
70
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: BsSignaturePadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
71
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: BsSignaturePadComponent, selector: "bs-signature-pad", inputs: { signature: "signature", width: "width", height: "height" }, outputs: { signatureChange: "signatureChange" }, host: { listeners: { "touchmove": "onTouchMove($event)", "pointerdown": "onPointerStart($event)", "pointermove": "onPointerMove($event)", "window:pointerup": "onPointerEnd($event)" }, properties: { "class.border": "this.classes", "class.d-inline-block": "this.classes", "style.min-height.rem": "this.minHeight" } }, viewQueries: [{ propertyName: "canvas", first: true, predicate: ["canvas"], descendants: true }], ngImport: i0, template: "<canvas [width]=\"width\" [height]=\"height\" class=\"d-block\" #canvas></canvas>", styles: [""] }); }
72
+ }
73
+ export { BsSignaturePadComponent };
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: BsSignaturePadComponent, decorators: [{
75
+ type: Component,
76
+ args: [{ selector: 'bs-signature-pad', template: "<canvas [width]=\"width\" [height]=\"height\" class=\"d-block\" #canvas></canvas>" }]
77
+ }], ctorParameters: function () { return []; }, propDecorators: { signatureChange: [{
78
+ type: Output
79
+ }], signature: [{
80
+ type: Input
81
+ }], width: [{
82
+ type: Input
83
+ }], height: [{
84
+ type: Input
85
+ }], classes: [{
86
+ type: HostBinding,
87
+ args: ['class.border']
88
+ }, {
89
+ type: HostBinding,
90
+ args: ['class.d-inline-block']
91
+ }], canvas: [{
92
+ type: ViewChild,
93
+ args: ['canvas']
94
+ }], minHeight: [{
95
+ type: HostBinding,
96
+ args: ['style.min-height.rem']
97
+ }], onTouchMove: [{
98
+ type: HostListener,
99
+ args: ['touchmove', ['$event']]
100
+ }], onPointerStart: [{
101
+ type: HostListener,
102
+ args: ['pointerdown', ['$event']]
103
+ }], onPointerMove: [{
104
+ type: HostListener,
105
+ args: ['pointermove', ['$event']]
106
+ }], onPointerEnd: [{
107
+ type: HostListener,
108
+ args: ['window:pointerup', ['$event']]
109
+ }] } });
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmF0dXJlLXBhZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NpZ25hdHVyZS1wYWQvc3JjL2NvbXBvbmVudC9zaWduYXR1cmUtcGFkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvc2lnbmF0dXJlLXBhZC9zcmMvY29tcG9uZW50L3NpZ25hdHVyZS1wYWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhJLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBSWhFLE1BS2EsdUJBQXVCO0lBQ2xDO1FBTUEsbUJBQW1CO1FBQ25CLGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBWSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ25ELG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQWEsQ0FBQztRQU8xRCxZQUFZO1FBRUgsVUFBSyxHQUFHLEdBQUcsQ0FBQztRQUNaLFdBQU0sR0FBRyxHQUFHLENBQUM7UUFJdEIsWUFBTyxHQUFHLElBQUksQ0FBQztRQUVmLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFbEIsWUFBTyxHQUFvQyxJQUFJLENBQUM7UUFNWCxjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBL0JqRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsU0FBUyxFQUFF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OUQsdUJBQXVCOzJGQUF2Qix1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0Usa0JBQWtCOzBFQWFsQixlQUFlO3NCQUF4QixNQUFNO2dCQUlhLFNBQVM7c0JBQTVCLEtBQUs7Z0JBS0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFJTixPQUFPO3NCQUZOLFdBQVc7dUJBQUMsY0FBYzs7c0JBQzFCLFdBQVc7dUJBQUMsc0JBQXNCO2dCQUlkLE1BQU07c0JBQTFCLFNBQVM7dUJBQUMsUUFBUTtnQkFPa0IsU0FBUztzQkFBN0MsV0FBVzt1QkFBQyxzQkFBc0I7Z0JBQ0ksV0FBVztzQkFBakQsWUFBWTt1QkFBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBS0ksY0FBYztzQkFBdEQsWUFBWTt1QkFBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBY0UsYUFBYTtzQkFBckQsWUFBWTt1QkFBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBa0JPLFlBQVk7c0JBQXpELFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTaWduYXR1cmUgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3NpZ25hdHVyZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFBvaW50IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9wb2ludCc7XG5pbXBvcnQgeyBTdHJva2UgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3N0cm9rZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JzLXNpZ25hdHVyZS1wYWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2lnbmF0dXJlLXBhZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NpZ25hdHVyZS1wYWQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQnNTaWduYXR1cmVQYWRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5zaWduYXR1cmUkLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpLnN1YnNjcmliZSgoc2lnbmF0dXJlKSA9PiB7XG4gICAgICB0aGlzLnNpZ25hdHVyZUNoYW5nZS5lbWl0KHNpZ25hdHVyZSk7XG4gICAgfSk7XG4gIH1cblxuICAvLyNyZWdpb24gU2lnbmF0dXJlXG4gIHNpZ25hdHVyZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFNpZ25hdHVyZT4oeyBzdHJva2VzOiBbXSB9KTtcbiAgQE91dHB1dCgpIHNpZ25hdHVyZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8U2lnbmF0dXJlPigpO1xuICBwdWJsaWMgZ2V0IHNpZ25hdHVyZSgpIHtcbiAgICByZXR1cm4gdGhpcy5zaWduYXR1cmUkLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgc2lnbmF0dXJlKHZhbHVlOiBTaWduYXR1cmUpIHtcbiAgICB0aGlzLnNpZ25hdHVyZSQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbiAgQElucHV0KCkgd2lkdGggPSA1MDA7XG4gIEBJbnB1dCgpIGhlaWdodCA9IDMwMDtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmJvcmRlcicpXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZC1pbmxpbmUtYmxvY2snKVxuICBjbGFzc2VzID0gdHJ1ZTtcblxuICBpc0RyYXdpbmcgPSBmYWxzZTtcbiAgQFZpZXdDaGlsZCgnY2FudmFzJykgY2FudmFzITogRWxlbWVudFJlZjxIVE1MQ2FudmFzRWxlbWVudD47XG4gIGNvbnRleHQ6IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCB8IG51bGwgPSBudWxsO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmNvbnRleHQgPSB0aGlzLmNhbnZhcy5uYXRpdmVFbGVtZW50LmdldENvbnRleHQoJzJkJywgeyB3aWxsUmVhZEZyZXF1ZW50bHk6IHRydWUgfSk7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1pbi1oZWlnaHQucmVtJykgbWluSGVpZ2h0ID0gNTtcbiAgQEhvc3RMaXN0ZW5lcigndG91Y2htb3ZlJywgWyckZXZlbnQnXSkgb25Ub3VjaE1vdmUoZXY6IFRvdWNoRXZlbnQpIHtcbiAgICBpZiAodGhpcy5pc0RyYXdpbmcpIHtcbiAgICAgIGV2LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG4gIEBIb3N0TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgWyckZXZlbnQnXSkgb25Qb2ludGVyU3RhcnQoZXY6IFBvaW50ZXJFdmVudCkge1xuICAgIGV2LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5pc0RyYXdpbmcgPSB0cnVlO1xuICAgIGlmICh0aGlzLmNvbnRleHQpIHtcbiAgICAgIHRoaXMuc2lnbmF0dXJlLnN0cm9rZXMucHVzaCh7XG4gICAgICAgIHBvaW50czogW3sgeDogZXYub2Zmc2V0WCwgeTogZXYub2Zmc2V0WSB9XVxuICAgICAgfSk7XG4gICAgICB0aGlzLnNpZ25hdHVyZUNoYW5nZS5lbWl0KHRoaXMuc2lnbmF0dXJlKTtcblxuICAgICAgdGhpcy5jb250ZXh0LmZpbGxTdHlsZSA9ICdibGFjayc7XG4gICAgICB0aGlzLmNvbnRleHQuYmVnaW5QYXRoKCk7XG4gICAgICB0aGlzLmNvbnRleHQubW92ZVRvKGV2Lm9mZnNldFgsIGV2Lm9mZnNldFkpO1xuICAgIH1cbiAgfVxuICBASG9zdExpc3RlbmVyKCdwb2ludGVybW92ZScsIFsnJGV2ZW50J10pIG9uUG9pbnRlck1vdmUoZXY6IFBvaW50ZXJFdmVudCkge1xuICAgIGlmICh0aGlzLmlzRHJhd2luZyAmJiB0aGlzLmNvbnRleHQpIHtcbiAgICAgIGV2LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBcbiAgICAgIC8vIHRoaXMuY29udGV4dC5tb3ZlVG8odGhpcy5wb2ludHMuYXQoLTEpIS54LCB0aGlzLnBvaW50cy5hdCgtMSkhLnkpO1xuICAgICAgLy8gLy8gY3R4LmFyYyh4LCB5LCB3aWR0aCwgMCwgMiAqIE1hdGguUEksIGZhbHNlKTtcbiAgICAgIC8vIC8vIHRoaXMuY29udGV4dC5hcmMoZXYub2Zmc2V0WCwgZXYub2Zmc2V0WSwgMiwgMCwgMiAqIE1hdGguUEksIGZhbHNlKTtcbiAgICAgIC8vIC8vIHRoaXMuY29udGV4dC5hcmNUbyhldi5vZmZzZXRYLCBldi5vZmZzZXRZLClcbiAgICAgIC8vIHRoaXMuY29udGV4dC5jbG9zZVBhdGgoKTtcbiAgICAgIC8vIHRoaXMuY29udGV4dC5maWxsKCk7XG5cbiAgICAgIHRoaXMuc2lnbmF0dXJlLnN0cm9rZXMuYXQoLTEpPy5wb2ludHMucHVzaCh7IHg6IGV2Lm9mZnNldFgsIHk6IGV2Lm9mZnNldFkgfSk7XG4gICAgICB0aGlzLnNpZ25hdHVyZUNoYW5nZS5lbWl0KHRoaXMuc2lnbmF0dXJlKTtcblxuICAgICAgdGhpcy5jb250ZXh0LmxpbmVUbyhldi5vZmZzZXRYLCBldi5vZmZzZXRZKTtcbiAgICAgIHRoaXMuY29udGV4dC5zdHJva2UoKTtcbiAgICB9XG4gIH1cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnBvaW50ZXJ1cCcsIFsnJGV2ZW50J10pIG9uUG9pbnRlckVuZChldjogUG9pbnRlckV2ZW50KSB7XG4gICAgaWYgKHRoaXMuaXNEcmF3aW5nICYmIHRoaXMuY29udGV4dCkge1xuICAgICAgZXYucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuaXNEcmF3aW5nID0gZmFsc2U7XG4gICAgICB0aGlzLnNpZ25hdHVyZUNoYW5nZS5lbWl0KHRoaXMuc2lnbmF0dXJlKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxjYW52YXMgW3dpZHRoXT1cIndpZHRoXCIgW2hlaWdodF09XCJoZWlnaHRcIiBjbGFzcz1cImQtYmxvY2tcIiAjY2FudmFzPjwvY2FudmFzPiJdfQ==
@@ -0,0 +1,4 @@
1
+ export * from './signature-pad.module';
2
+ export * from './component/signature-pad.component';
3
+ export * from './interfaces';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NpZ25hdHVyZS1wYWQvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2lnbmF0dXJlLXBhZC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnQvc2lnbmF0dXJlLXBhZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzJzsiXX0=
@@ -0,0 +1,4 @@
1
+ export * from './point';
2
+ export * from './stroke';
3
+ export * from './signature';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NpZ25hdHVyZS1wYWQvc3JjL2ludGVyZmFjZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3Ryb2tlJztcbmV4cG9ydCAqIGZyb20gJy4vc2lnbmF0dXJlJzsiXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NpZ25hdHVyZS1wYWQvc3JjL2ludGVyZmFjZXMvcG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgUG9pbnQge1xuICAgIHg6IG51bWJlcjtcbiAgICB5OiBudW1iZXI7XG59Il19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmF0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zaWduYXR1cmUtcGFkL3NyYy9pbnRlcmZhY2VzL3NpZ25hdHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3Ryb2tlIH0gZnJvbSBcIi4vc3Ryb2tlXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmF0dXJlIHtcbiAgICBzdHJva2VzOiBTdHJva2VbXTtcbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Ryb2tlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9zaWduYXR1cmUtcGFkL3NyYy9pbnRlcmZhY2VzL3N0cm9rZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9pbnQgfSBmcm9tIFwiLi9wb2ludFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFN0cm9rZSB7XG4gICAgcG9pbnRzOiBQb2ludFtdO1xufSJdfQ==
@@ -0,0 +1,19 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { BsSignaturePadComponent } from './component/signature-pad.component';
4
+ import * as i0 from "@angular/core";
5
+ class BsSignaturePadModule {
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: BsSignaturePadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.4", ngImport: i0, type: BsSignaturePadModule, declarations: [BsSignaturePadComponent], imports: [CommonModule], exports: [BsSignaturePadComponent] }); }
8
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: BsSignaturePadModule, imports: [CommonModule] }); }
9
+ }
10
+ export { BsSignaturePadModule };
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: BsSignaturePadModule, decorators: [{
12
+ type: NgModule,
13
+ args: [{
14
+ declarations: [BsSignaturePadComponent],
15
+ imports: [CommonModule],
16
+ exports: [BsSignaturePadComponent],
17
+ }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmF0dXJlLXBhZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL3NpZ25hdHVyZS1wYWQvc3JjL3NpZ25hdHVyZS1wYWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOztBQUU5RSxNQUthLG9CQUFvQjs4R0FBcEIsb0JBQW9COytHQUFwQixvQkFBb0IsaUJBSmhCLHVCQUF1QixhQUM1QixZQUFZLGFBQ1osdUJBQXVCOytHQUV0QixvQkFBb0IsWUFIckIsWUFBWTs7U0FHWCxvQkFBb0I7MkZBQXBCLG9CQUFvQjtrQkFMaEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztvQkFDdkMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztpQkFDbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJzU2lnbmF0dXJlUGFkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnQvc2lnbmF0dXJlLXBhZC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtCc1NpZ25hdHVyZVBhZENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBleHBvcnRzOiBbQnNTaWduYXR1cmVQYWRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBCc1NpZ25hdHVyZVBhZE1vZHVsZSB7fVxuIl19
@@ -0,0 +1,131 @@
1
+ import * as i0 from '@angular/core';
2
+ import { EventEmitter, Component, Output, Input, HostBinding, ViewChild, HostListener, NgModule } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ import { BehaviorSubject } from 'rxjs';
5
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
6
+
7
+ class BsSignaturePadComponent {
8
+ constructor() {
9
+ //#region Signature
10
+ this.signature$ = new BehaviorSubject({ strokes: [] });
11
+ this.signatureChange = new EventEmitter();
12
+ //#endregion
13
+ this.width = 500;
14
+ this.height = 300;
15
+ this.classes = true;
16
+ this.isDrawing = false;
17
+ this.context = null;
18
+ this.minHeight = 5;
19
+ this.signature$.pipe(takeUntilDestroyed()).subscribe((signature) => {
20
+ this.signatureChange.emit(signature);
21
+ });
22
+ }
23
+ get signature() {
24
+ return this.signature$.value;
25
+ }
26
+ set signature(value) {
27
+ this.signature$.next(value);
28
+ }
29
+ ngAfterViewInit() {
30
+ this.context = this.canvas.nativeElement.getContext('2d', { willReadFrequently: true });
31
+ }
32
+ onTouchMove(ev) {
33
+ if (this.isDrawing) {
34
+ ev.preventDefault();
35
+ }
36
+ }
37
+ onPointerStart(ev) {
38
+ ev.preventDefault();
39
+ this.isDrawing = true;
40
+ if (this.context) {
41
+ this.signature.strokes.push({
42
+ points: [{ x: ev.offsetX, y: ev.offsetY }]
43
+ });
44
+ this.signatureChange.emit(this.signature);
45
+ this.context.fillStyle = 'black';
46
+ this.context.beginPath();
47
+ this.context.moveTo(ev.offsetX, ev.offsetY);
48
+ }
49
+ }
50
+ onPointerMove(ev) {
51
+ if (this.isDrawing && this.context) {
52
+ ev.preventDefault();
53
+ // this.context.moveTo(this.points.at(-1)!.x, this.points.at(-1)!.y);
54
+ // // ctx.arc(x, y, width, 0, 2 * Math.PI, false);
55
+ // // this.context.arc(ev.offsetX, ev.offsetY, 2, 0, 2 * Math.PI, false);
56
+ // // this.context.arcTo(ev.offsetX, ev.offsetY,)
57
+ // this.context.closePath();
58
+ // this.context.fill();
59
+ this.signature.strokes.at(-1)?.points.push({ x: ev.offsetX, y: ev.offsetY });
60
+ this.signatureChange.emit(this.signature);
61
+ this.context.lineTo(ev.offsetX, ev.offsetY);
62
+ this.context.stroke();
63
+ }
64
+ }
65
+ onPointerEnd(ev) {
66
+ if (this.isDrawing && this.context) {
67
+ ev.preventDefault();
68
+ this.isDrawing = false;
69
+ this.signatureChange.emit(this.signature);
70
+ }
71
+ }
72
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: BsSignaturePadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
73
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: BsSignaturePadComponent, selector: "bs-signature-pad", inputs: { signature: "signature", width: "width", height: "height" }, outputs: { signatureChange: "signatureChange" }, host: { listeners: { "touchmove": "onTouchMove($event)", "pointerdown": "onPointerStart($event)", "pointermove": "onPointerMove($event)", "window:pointerup": "onPointerEnd($event)" }, properties: { "class.border": "this.classes", "class.d-inline-block": "this.classes", "style.min-height.rem": "this.minHeight" } }, viewQueries: [{ propertyName: "canvas", first: true, predicate: ["canvas"], descendants: true }], ngImport: i0, template: "<canvas [width]=\"width\" [height]=\"height\" class=\"d-block\" #canvas></canvas>", styles: [""] }); }
74
+ }
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: BsSignaturePadComponent, decorators: [{
76
+ type: Component,
77
+ args: [{ selector: 'bs-signature-pad', template: "<canvas [width]=\"width\" [height]=\"height\" class=\"d-block\" #canvas></canvas>" }]
78
+ }], ctorParameters: function () { return []; }, propDecorators: { signatureChange: [{
79
+ type: Output
80
+ }], signature: [{
81
+ type: Input
82
+ }], width: [{
83
+ type: Input
84
+ }], height: [{
85
+ type: Input
86
+ }], classes: [{
87
+ type: HostBinding,
88
+ args: ['class.border']
89
+ }, {
90
+ type: HostBinding,
91
+ args: ['class.d-inline-block']
92
+ }], canvas: [{
93
+ type: ViewChild,
94
+ args: ['canvas']
95
+ }], minHeight: [{
96
+ type: HostBinding,
97
+ args: ['style.min-height.rem']
98
+ }], onTouchMove: [{
99
+ type: HostListener,
100
+ args: ['touchmove', ['$event']]
101
+ }], onPointerStart: [{
102
+ type: HostListener,
103
+ args: ['pointerdown', ['$event']]
104
+ }], onPointerMove: [{
105
+ type: HostListener,
106
+ args: ['pointermove', ['$event']]
107
+ }], onPointerEnd: [{
108
+ type: HostListener,
109
+ args: ['window:pointerup', ['$event']]
110
+ }] } });
111
+
112
+ class BsSignaturePadModule {
113
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: BsSignaturePadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
114
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.4", ngImport: i0, type: BsSignaturePadModule, declarations: [BsSignaturePadComponent], imports: [CommonModule], exports: [BsSignaturePadComponent] }); }
115
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: BsSignaturePadModule, imports: [CommonModule] }); }
116
+ }
117
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: BsSignaturePadModule, decorators: [{
118
+ type: NgModule,
119
+ args: [{
120
+ declarations: [BsSignaturePadComponent],
121
+ imports: [CommonModule],
122
+ exports: [BsSignaturePadComponent],
123
+ }]
124
+ }] });
125
+
126
+ /**
127
+ * Generated bundle index. Do not edit.
128
+ */
129
+
130
+ export { BsSignaturePadComponent, BsSignaturePadModule };
131
+ //# sourceMappingURL=mintplayer-ng-bootstrap-signature-pad.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mintplayer-ng-bootstrap-signature-pad.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/signature-pad/src/component/signature-pad.component.ts","../../../../libs/mintplayer-ng-bootstrap/signature-pad/src/component/signature-pad.component.html","../../../../libs/mintplayer-ng-bootstrap/signature-pad/src/signature-pad.module.ts","../../../../libs/mintplayer-ng-bootstrap/signature-pad/mintplayer-ng-bootstrap-signature-pad.ts"],"sourcesContent":["import { AfterViewInit, Component, ElementRef, EventEmitter, HostBinding, HostListener, Input, Output, ViewChild } from '@angular/core';\nimport { Signature } from '../interfaces/signature';\nimport { BehaviorSubject } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Point } from '../interfaces/point';\nimport { Stroke } from '../interfaces/stroke';\n\n@Component({\n selector: 'bs-signature-pad',\n templateUrl: './signature-pad.component.html',\n styleUrls: ['./signature-pad.component.scss'],\n})\nexport class BsSignaturePadComponent implements AfterViewInit {\n constructor() {\n this.signature$.pipe(takeUntilDestroyed()).subscribe((signature) => {\n this.signatureChange.emit(signature);\n });\n }\n\n //#region Signature\n signature$ = new BehaviorSubject<Signature>({ strokes: [] });\n @Output() signatureChange = new EventEmitter<Signature>();\n public get signature() {\n return this.signature$.value;\n }\n @Input() public set signature(value: Signature) {\n this.signature$.next(value);\n }\n //#endregion\n\n @Input() width = 500;\n @Input() height = 300;\n\n @HostBinding('class.border')\n @HostBinding('class.d-inline-block')\n classes = true;\n\n isDrawing = false;\n @ViewChild('canvas') canvas!: ElementRef<HTMLCanvasElement>;\n context: CanvasRenderingContext2D | null = null;\n\n ngAfterViewInit() {\n this.context = this.canvas.nativeElement.getContext('2d', { willReadFrequently: true });\n }\n\n @HostBinding('style.min-height.rem') minHeight = 5;\n @HostListener('touchmove', ['$event']) onTouchMove(ev: TouchEvent) {\n if (this.isDrawing) {\n ev.preventDefault();\n }\n }\n @HostListener('pointerdown', ['$event']) onPointerStart(ev: PointerEvent) {\n ev.preventDefault();\n this.isDrawing = true;\n if (this.context) {\n this.signature.strokes.push({\n points: [{ x: ev.offsetX, y: ev.offsetY }]\n });\n this.signatureChange.emit(this.signature);\n\n this.context.fillStyle = 'black';\n this.context.beginPath();\n this.context.moveTo(ev.offsetX, ev.offsetY);\n }\n }\n @HostListener('pointermove', ['$event']) onPointerMove(ev: PointerEvent) {\n if (this.isDrawing && this.context) {\n ev.preventDefault();\n \n // this.context.moveTo(this.points.at(-1)!.x, this.points.at(-1)!.y);\n // // ctx.arc(x, y, width, 0, 2 * Math.PI, false);\n // // this.context.arc(ev.offsetX, ev.offsetY, 2, 0, 2 * Math.PI, false);\n // // this.context.arcTo(ev.offsetX, ev.offsetY,)\n // this.context.closePath();\n // this.context.fill();\n\n this.signature.strokes.at(-1)?.points.push({ x: ev.offsetX, y: ev.offsetY });\n this.signatureChange.emit(this.signature);\n\n this.context.lineTo(ev.offsetX, ev.offsetY);\n this.context.stroke();\n }\n }\n @HostListener('window:pointerup', ['$event']) onPointerEnd(ev: PointerEvent) {\n if (this.isDrawing && this.context) {\n ev.preventDefault();\n this.isDrawing = false;\n this.signatureChange.emit(this.signature);\n }\n }\n}\n","<canvas [width]=\"width\" [height]=\"height\" class=\"d-block\" #canvas></canvas>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsSignaturePadComponent } from './component/signature-pad.component';\n\n@NgModule({\n declarations: [BsSignaturePadComponent],\n imports: [CommonModule],\n exports: [BsSignaturePadComponent],\n})\nexport class BsSignaturePadModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mintplayer/ng-bootstrap",
3
3
  "private": false,
4
- "version": "16.1.2",
4
+ "version": "16.2.0",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/MintPlayer/mintplayer-ng-bootstrap",
@@ -336,6 +336,12 @@
336
336
  "esm": "./esm2022/select2/mintplayer-ng-bootstrap-select2.mjs",
337
337
  "default": "./fesm2022/mintplayer-ng-bootstrap-select2.mjs"
338
338
  },
339
+ "./signature-pad": {
340
+ "types": "./signature-pad/index.d.ts",
341
+ "esm2022": "./esm2022/signature-pad/mintplayer-ng-bootstrap-signature-pad.mjs",
342
+ "esm": "./esm2022/signature-pad/mintplayer-ng-bootstrap-signature-pad.mjs",
343
+ "default": "./fesm2022/mintplayer-ng-bootstrap-signature-pad.mjs"
344
+ },
339
345
  "./spinner": {
340
346
  "types": "./spinner/index.d.ts",
341
347
  "esm2022": "./esm2022/spinner/mintplayer-ng-bootstrap-spinner.mjs",
@@ -0,0 +1 @@
1
+ export * from './src';
@@ -0,0 +1,25 @@
1
+ import { AfterViewInit, ElementRef, EventEmitter } from '@angular/core';
2
+ import { Signature } from '../interfaces/signature';
3
+ import { BehaviorSubject } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ export declare class BsSignaturePadComponent implements AfterViewInit {
6
+ constructor();
7
+ signature$: BehaviorSubject<Signature>;
8
+ signatureChange: EventEmitter<Signature>;
9
+ get signature(): Signature;
10
+ set signature(value: Signature);
11
+ width: number;
12
+ height: number;
13
+ classes: boolean;
14
+ isDrawing: boolean;
15
+ canvas: ElementRef<HTMLCanvasElement>;
16
+ context: CanvasRenderingContext2D | null;
17
+ ngAfterViewInit(): void;
18
+ minHeight: number;
19
+ onTouchMove(ev: TouchEvent): void;
20
+ onPointerStart(ev: PointerEvent): void;
21
+ onPointerMove(ev: PointerEvent): void;
22
+ onPointerEnd(ev: PointerEvent): void;
23
+ static ɵfac: i0.ɵɵFactoryDeclaration<BsSignaturePadComponent, never>;
24
+ static ɵcmp: i0.ɵɵComponentDeclaration<BsSignaturePadComponent, "bs-signature-pad", never, { "signature": { "alias": "signature"; "required": false; }; "width": { "alias": "width"; "required": false; }; "height": { "alias": "height"; "required": false; }; }, { "signatureChange": "signatureChange"; }, never, never, false, never>;
25
+ }
@@ -0,0 +1,3 @@
1
+ export * from './signature-pad.module';
2
+ export * from './component/signature-pad.component';
3
+ export * from './interfaces';
@@ -0,0 +1,3 @@
1
+ export * from './point';
2
+ export * from './stroke';
3
+ export * from './signature';
@@ -0,0 +1,4 @@
1
+ export interface Point {
2
+ x: number;
3
+ y: number;
4
+ }
@@ -0,0 +1,4 @@
1
+ import { Stroke } from "./stroke";
2
+ export interface Signature {
3
+ strokes: Stroke[];
4
+ }
@@ -0,0 +1,4 @@
1
+ import { Point } from "./point";
2
+ export interface Stroke {
3
+ points: Point[];
4
+ }
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./component/signature-pad.component";
3
+ import * as i2 from "@angular/common";
4
+ export declare class BsSignaturePadModule {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<BsSignaturePadModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<BsSignaturePadModule, [typeof i1.BsSignaturePadComponent], [typeof i2.CommonModule], [typeof i1.BsSignaturePadComponent]>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<BsSignaturePadModule>;
8
+ }