@mintplayer/ng-qr-code 20.0.0 → 21.0.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.
@@ -31,56 +31,58 @@ class QrCodeDirective {
31
31
  return;
32
32
  }
33
33
  const canvas = this.viewContainerRef.element.nativeElement;
34
- if (!canvas) {
34
+ if (!canvas || (typeof window === 'undefined')) {
35
35
  // native element not available on server side rendering
36
36
  return;
37
37
  }
38
- const context = canvas.getContext('2d');
39
- if (context) {
40
- context.clearRect(0, 0, context.canvas.width, context.canvas.height);
41
- }
42
- const errorCorrectionLevel = this.errorCorrectionLevel ?? QrCodeDirective.DEFAULT_ERROR_CORRECTION_LEVEL;
43
- const dark = !this.darkColor
44
- ? undefined
45
- : QrCodeDirective.VALID_COLOR_REGEX.test(this.darkColor)
46
- ? this.darkColor
47
- : undefined;
48
- const light = !this.lightColor
49
- ? undefined
50
- : QrCodeDirective.VALID_COLOR_REGEX.test(this.lightColor)
51
- ? this.lightColor
52
- : undefined;
53
- await qrCodeService
54
- .toCanvas(canvas, this.value, {
55
- version: this.version ?? undefined,
56
- errorCorrectionLevel,
57
- width: this.width,
58
- margin: this.margin,
59
- color: {
60
- dark,
61
- light,
62
- },
63
- });
64
- const centerImageSrc = this.centerImageSrc;
65
- const centerImageWidth = this.getIntOrDefault(this.centerImageWidth, QrCodeDirective.DEFAULT_CENTER_IMAGE_SIZE);
66
- const centerImageHeight = this.getIntOrDefault(this.centerImageHeight, QrCodeDirective.DEFAULT_CENTER_IMAGE_SIZE);
67
- if (centerImageSrc && context) {
68
- if (!this.centerImage) {
69
- this.centerImage = new Image(centerImageWidth, centerImageHeight);
70
- }
71
- if (centerImageSrc !== this.centerImage?.src) {
72
- this.centerImage.src = centerImageSrc;
73
- }
74
- if (centerImageWidth !== this.centerImage.width) {
75
- this.centerImage.width = centerImageWidth;
76
- }
77
- if (centerImageHeight !== this.centerImage.height) {
78
- this.centerImage.height = centerImageHeight;
38
+ if (typeof window !== 'undefined') {
39
+ const context = canvas.getContext('2d');
40
+ if (context) {
41
+ context.clearRect(0, 0, context.canvas.width, context.canvas.height);
42
+ const errorCorrectionLevel = this.errorCorrectionLevel ?? QrCodeDirective.DEFAULT_ERROR_CORRECTION_LEVEL;
43
+ const dark = !this.darkColor
44
+ ? undefined
45
+ : QrCodeDirective.VALID_COLOR_REGEX.test(this.darkColor)
46
+ ? this.darkColor
47
+ : undefined;
48
+ const light = !this.lightColor
49
+ ? undefined
50
+ : QrCodeDirective.VALID_COLOR_REGEX.test(this.lightColor)
51
+ ? this.lightColor
52
+ : undefined;
53
+ await qrCodeService
54
+ .toCanvas(canvas, this.value, {
55
+ version: this.version ?? undefined,
56
+ errorCorrectionLevel,
57
+ width: this.width,
58
+ margin: this.margin,
59
+ color: {
60
+ dark,
61
+ light,
62
+ },
63
+ });
64
+ const centerImageSrc = this.centerImageSrc;
65
+ const centerImageWidth = this.getIntOrDefault(this.centerImageWidth, QrCodeDirective.DEFAULT_CENTER_IMAGE_SIZE);
66
+ const centerImageHeight = this.getIntOrDefault(this.centerImageHeight, QrCodeDirective.DEFAULT_CENTER_IMAGE_SIZE);
67
+ if (centerImageSrc && context) {
68
+ if (!this.centerImage) {
69
+ this.centerImage = new Image(centerImageWidth, centerImageHeight);
70
+ }
71
+ if (centerImageSrc !== this.centerImage?.src) {
72
+ this.centerImage.src = centerImageSrc;
73
+ }
74
+ if (centerImageWidth !== this.centerImage.width) {
75
+ this.centerImage.width = centerImageWidth;
76
+ }
77
+ if (centerImageHeight !== this.centerImage.height) {
78
+ this.centerImage.height = centerImageHeight;
79
+ }
80
+ const centerImage = this.centerImage;
81
+ centerImage.onload = () => {
82
+ context.drawImage(centerImage, canvas.width / 2 - centerImageWidth / 2, canvas.height / 2 - centerImageHeight / 2, centerImageWidth, centerImageHeight);
83
+ };
84
+ }
79
85
  }
80
- const centerImage = this.centerImage;
81
- centerImage.onload = () => {
82
- context.drawImage(centerImage, canvas.width / 2 - centerImageWidth / 2, canvas.height / 2 - centerImageHeight / 2, centerImageWidth, centerImageHeight);
83
- };
84
86
  }
85
87
  }
86
88
  getIntOrDefault(value, defaultValue) {
@@ -94,10 +96,10 @@ class QrCodeDirective {
94
96
  return value;
95
97
  }
96
98
  }
97
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QrCodeDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
98
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.0.0", type: QrCodeDirective, isStandalone: true, selector: "canvas[qrCode]", inputs: { value: ["qrCode", "value"], qrCodeVersion: "qrCodeVersion", width: "width", height: "height", darkColor: "darkColor", lightColor: "lightColor", errorCorrectionLevel: ["qrCodeErrorCorrectionLevel", "errorCorrectionLevel"], centerImageSrc: ["qrCodeCenterImageSrc", "centerImageSrc"], centerImageWidth: ["qrCodeCenterImageWidth", "centerImageWidth"], centerImageHeight: ["qrCodeCenterImageHeight", "centerImageHeight"], margin: ["qrCodeMargin", "margin"] }, usesOnChanges: true, ngImport: i0 }); }
99
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: QrCodeDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
100
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: QrCodeDirective, isStandalone: true, selector: "canvas[qrCode]", inputs: { value: ["qrCode", "value"], qrCodeVersion: "qrCodeVersion", width: "width", height: "height", darkColor: "darkColor", lightColor: "lightColor", errorCorrectionLevel: ["qrCodeErrorCorrectionLevel", "errorCorrectionLevel"], centerImageSrc: ["qrCodeCenterImageSrc", "centerImageSrc"], centerImageWidth: ["qrCodeCenterImageWidth", "centerImageWidth"], centerImageHeight: ["qrCodeCenterImageHeight", "centerImageHeight"], margin: ["qrCodeMargin", "margin"] }, usesOnChanges: true, ngImport: i0 }); }
99
101
  }
100
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QrCodeDirective, decorators: [{
102
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: QrCodeDirective, decorators: [{
101
103
  type: Directive,
102
104
  args: [{
103
105
  selector: 'canvas[qrCode]',
@@ -134,10 +136,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImpor
134
136
  }] } });
135
137
 
136
138
  class QrCodeComponent {
137
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QrCodeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
138
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0", type: QrCodeComponent, isStandalone: true, selector: "qr-code", inputs: { value: "value", size: "size", darkColor: "darkColor", lightColor: "lightColor", errorCorrectionLevel: "errorCorrectionLevel", centerImageSrc: "centerImageSrc", centerImageSize: "centerImageSize", margin: "margin" }, ngImport: i0, template: "@if (value) {\n <canvas\n [qrCode]=\"value\"\n [qrCodeErrorCorrectionLevel]=\"errorCorrectionLevel\"\n [qrCodeCenterImageSrc]=\"centerImageSrc\"\n [qrCodeCenterImageWidth]=\"centerImageSize\"\n [qrCodeCenterImageHeight]=\"centerImageSize\"\n [qrCodeMargin]=\"margin\"\n [width]=\"size\"\n [height]=\"size\"\n [darkColor]=\"darkColor\"\n [lightColor]=\"lightColor\">\n </canvas>\n}", styles: [""], dependencies: [{ kind: "directive", type: QrCodeDirective, selector: "canvas[qrCode]", inputs: ["qrCode", "qrCodeVersion", "width", "height", "darkColor", "lightColor", "qrCodeErrorCorrectionLevel", "qrCodeCenterImageSrc", "qrCodeCenterImageWidth", "qrCodeCenterImageHeight", "qrCodeMargin"] }] }); }
139
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: QrCodeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
140
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.6", type: QrCodeComponent, isStandalone: true, selector: "qr-code", inputs: { value: "value", size: "size", darkColor: "darkColor", lightColor: "lightColor", errorCorrectionLevel: "errorCorrectionLevel", centerImageSrc: "centerImageSrc", centerImageSize: "centerImageSize", margin: "margin" }, ngImport: i0, template: "@if (value) {\n <canvas\n [qrCode]=\"value\"\n [qrCodeErrorCorrectionLevel]=\"errorCorrectionLevel\"\n [qrCodeCenterImageSrc]=\"centerImageSrc\"\n [qrCodeCenterImageWidth]=\"centerImageSize\"\n [qrCodeCenterImageHeight]=\"centerImageSize\"\n [qrCodeMargin]=\"margin\"\n [width]=\"size\"\n [height]=\"size\"\n [darkColor]=\"darkColor\"\n [lightColor]=\"lightColor\">\n </canvas>\n}", styles: [""], dependencies: [{ kind: "directive", type: QrCodeDirective, selector: "canvas[qrCode]", inputs: ["qrCode", "qrCodeVersion", "width", "height", "darkColor", "lightColor", "qrCodeErrorCorrectionLevel", "qrCodeCenterImageSrc", "qrCodeCenterImageWidth", "qrCodeCenterImageHeight", "qrCodeMargin"] }] }); }
139
141
  }
140
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: QrCodeComponent, decorators: [{
142
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: QrCodeComponent, decorators: [{
141
143
  type: Component,
142
144
  args: [{ selector: 'qr-code', standalone: true, imports: [QrCodeDirective], template: "@if (value) {\n <canvas\n [qrCode]=\"value\"\n [qrCodeErrorCorrectionLevel]=\"errorCorrectionLevel\"\n [qrCodeCenterImageSrc]=\"centerImageSrc\"\n [qrCodeCenterImageWidth]=\"centerImageSize\"\n [qrCodeCenterImageHeight]=\"centerImageSize\"\n [qrCodeMargin]=\"margin\"\n [width]=\"size\"\n [height]=\"size\"\n [darkColor]=\"darkColor\"\n [lightColor]=\"lightColor\">\n </canvas>\n}" }]
143
145
  }], propDecorators: { value: [{
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-qr-code.mjs","sources":["../tmp-esm2022/lib/directives/qr-code/qr-code.directive.js","../tmp-esm2022/lib/components/qr-code/qr-code.component.js","../tmp-esm2022/mintplayer-ng-qr-code.js"],"sourcesContent":["import { Directive, Input } from '@angular/core';\nimport * as qrCodeService from '@mintplayer/qr-code';\nimport * as i0 from \"@angular/core\";\nexport class QrCodeDirective {\n constructor(viewContainerRef) {\n this.viewContainerRef = viewContainerRef;\n //#region Version\n this.version = null;\n this.darkColor = '#000000FF';\n this.lightColor = '#FFFFFFFF';\n this.errorCorrectionLevel = QrCodeDirective.DEFAULT_ERROR_CORRECTION_LEVEL;\n this.margin = 16;\n }\n static { this.VALID_COLOR_REGEX = /^#(?:[0-9a-fA-F]{3,4}){1,2}$/; }\n static { this.DEFAULT_ERROR_CORRECTION_LEVEL = 'M'; }\n static { this.DEFAULT_CENTER_IMAGE_SIZE = 40; }\n set qrCodeVersion(value) {\n if (value && (value > 40)) {\n this.version = 40;\n }\n else if (value && (value < 1)) {\n this.version = 1;\n }\n else {\n this.version = null;\n }\n }\n async ngOnChanges() {\n if (!this.value) {\n return;\n }\n const canvas = this.viewContainerRef.element.nativeElement;\n if (!canvas) {\n // native element not available on server side rendering\n return;\n }\n const context = canvas.getContext('2d');\n if (context) {\n context.clearRect(0, 0, context.canvas.width, context.canvas.height);\n }\n const errorCorrectionLevel = this.errorCorrectionLevel ?? QrCodeDirective.DEFAULT_ERROR_CORRECTION_LEVEL;\n const dark = !this.darkColor\n ? undefined\n : QrCodeDirective.VALID_COLOR_REGEX.test(this.darkColor)\n ? this.darkColor\n : undefined;\n const light = !this.lightColor\n ? undefined\n : QrCodeDirective.VALID_COLOR_REGEX.test(this.lightColor)\n ? this.lightColor\n : undefined;\n await qrCodeService\n .toCanvas(canvas, this.value, {\n version: this.version ?? undefined,\n errorCorrectionLevel,\n width: this.width,\n margin: this.margin,\n color: {\n dark,\n light,\n },\n });\n const centerImageSrc = this.centerImageSrc;\n const centerImageWidth = this.getIntOrDefault(this.centerImageWidth, QrCodeDirective.DEFAULT_CENTER_IMAGE_SIZE);\n const centerImageHeight = this.getIntOrDefault(this.centerImageHeight, QrCodeDirective.DEFAULT_CENTER_IMAGE_SIZE);\n if (centerImageSrc && context) {\n if (!this.centerImage) {\n this.centerImage = new Image(centerImageWidth, centerImageHeight);\n }\n if (centerImageSrc !== this.centerImage?.src) {\n this.centerImage.src = centerImageSrc;\n }\n if (centerImageWidth !== this.centerImage.width) {\n this.centerImage.width = centerImageWidth;\n }\n if (centerImageHeight !== this.centerImage.height) {\n this.centerImage.height = centerImageHeight;\n }\n const centerImage = this.centerImage;\n centerImage.onload = () => {\n context.drawImage(centerImage, canvas.width / 2 - centerImageWidth / 2, canvas.height / 2 - centerImageHeight / 2, centerImageWidth, centerImageHeight);\n };\n }\n }\n getIntOrDefault(value, defaultValue) {\n if (value === undefined || value === '') {\n return defaultValue;\n }\n else if (typeof value === 'string') {\n return parseInt(value, 10);\n }\n else {\n return value;\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: QrCodeDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.0\", type: QrCodeDirective, isStandalone: true, selector: \"canvas[qrCode]\", inputs: { value: [\"qrCode\", \"value\"], qrCodeVersion: \"qrCodeVersion\", width: \"width\", height: \"height\", darkColor: \"darkColor\", lightColor: \"lightColor\", errorCorrectionLevel: [\"qrCodeErrorCorrectionLevel\", \"errorCorrectionLevel\"], centerImageSrc: [\"qrCodeCenterImageSrc\", \"centerImageSrc\"], centerImageWidth: [\"qrCodeCenterImageWidth\", \"centerImageWidth\"], centerImageHeight: [\"qrCodeCenterImageHeight\", \"centerImageHeight\"], margin: [\"qrCodeMargin\", \"margin\"] }, usesOnChanges: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: QrCodeDirective, decorators: [{\n type: Directive,\n args: [{\n selector: 'canvas[qrCode]',\n standalone: true\n }]\n }], ctorParameters: () => [{ type: i0.ViewContainerRef }], propDecorators: { value: [{\n type: Input,\n args: ['qrCode']\n }], qrCodeVersion: [{\n type: Input\n }], width: [{\n type: Input\n }], height: [{\n type: Input\n }], darkColor: [{\n type: Input\n }], lightColor: [{\n type: Input\n }], errorCorrectionLevel: [{\n type: Input,\n args: ['qrCodeErrorCorrectionLevel']\n }], centerImageSrc: [{\n type: Input,\n args: ['qrCodeCenterImageSrc']\n }], centerImageWidth: [{\n type: Input,\n args: ['qrCodeCenterImageWidth']\n }], centerImageHeight: [{\n type: Input,\n args: ['qrCodeCenterImageHeight']\n }], margin: [{\n type: Input,\n args: ['qrCodeMargin']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXItY29kZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctcXItY29kZS9zcmMvbGliL2RpcmVjdGl2ZXMvcXItY29kZS9xci1jb2RlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBMEMsTUFBTSxlQUFlLENBQUM7QUFFekYsT0FBTyxLQUFLLGFBQWEsTUFBTSxxQkFBcUIsQ0FBQzs7QUFPckQsTUFBTSxPQUFPLGVBQWU7SUFFMUIsWUFBb0IsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFRdEQsaUJBQWlCO1FBQ1QsWUFBTyxHQUFrQixJQUFJLENBQUM7UUFlN0IsY0FBUyxHQUFlLFdBQVcsQ0FBQztRQUNwQyxlQUFVLEdBQWUsV0FBVyxDQUFDO1FBRVQseUJBQW9CLEdBQWdDLGVBQWUsQ0FBQyw4QkFBOEIsQ0FBQztRQUlqSCxXQUFNLEdBQUksRUFBRSxDQUFDO0lBL0JxQixDQUFDO2FBRTFDLHNCQUFpQixHQUFHLDhCQUE4QixBQUFqQyxDQUFrQzthQUNuRCxtQ0FBOEIsR0FBK0IsR0FBRyxBQUFsQyxDQUFtQzthQUNqRSw4QkFBeUIsR0FBRyxFQUFFLEFBQUwsQ0FBTTtJQU0vQyxJQUFhLGFBQWEsQ0FBQyxLQUFvQjtRQUM3QyxJQUFJLEtBQUssSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLENBQUM7YUFBTSxJQUFJLEtBQUssSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJ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QTVDLEtBQUs7dUJBQUMsc0JBQXNCO2dCQUNJLGdCQUFnQjtzQkFBaEQsS0FBSzt1QkFBQyx3QkFBd0I7Z0JBQ0csaUJBQWlCO3NCQUFsRCxLQUFLO3VCQUFDLHlCQUF5QjtnQkFDVCxNQUFNO3NCQUE1QixLQUFLO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBpc0Rldk1vZGUsIE9uQ2hhbmdlcywgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUVJDb2RlRXJyb3JDb3JyZWN0aW9uTGV2ZWwgfSBmcm9tICdAbWludHBsYXllci9xci1jb2RlJztcbmltcG9ydCAqIGFzIHFyQ29kZVNlcnZpY2UgZnJvbSAnQG1pbnRwbGF5ZXIvcXItY29kZSc7XG5pbXBvcnQgeyBSZ2JhQ29sb3IgfSBmcm9tICcuLi8uLi90eXBlcy9yZ2JhLWNvbG9yJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnY2FudmFzW3FyQ29kZV0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFFyQ29kZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmKSB7fVxuXG4gIHN0YXRpYyByZWFkb25seSBWQUxJRF9DT0xPUl9SRUdFWCA9IC9eIyg/OlswLTlhLWZBLUZdezMsNH0pezEsMn0kLztcbiAgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfRVJST1JfQ09SUkVDVElPTl9MRVZFTDogUVJDb2RlRXJyb3JDb3JyZWN0aW9uTGV2ZWwgPSAnTSc7XG4gIHN0YXRpYyByZWFkb25seSBERUZBVUxUX0NFTlRFUl9JTUFHRV9TSVpFID0gNDA7XG5cbiAgQElucHV0KCdxckNvZGUnKSB2YWx1ZSE6IHN0cmluZztcblxuICAvLyNyZWdpb24gVmVyc2lvblxuICBwcml2YXRlIHZlcnNpb246IG51bWJlciB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoKSBzZXQgcXJDb2RlVmVyc2lvbih2YWx1ZTogbnVtYmVyIHwgbnVsbCkge1xuICAgIGlmICh2YWx1ZSAmJiAodmFsdWUgPiA0MCkpIHtcbiAgICAgIHRoaXMudmVyc2lvbiA9IDQwO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgJiYgKHZhbHVlIDwgMSkpIHtcbiAgICAgIHRoaXMudmVyc2lvbiA9IDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmVyc2lvbiA9IG51bGw7XG4gICAgfVxuICB9XG4gIC8vI2VuZHJlZ2lvblxuXG4gIFxuICBASW5wdXQoKSB3aWR0aD86IG51bWJlcjtcbiAgQElucHV0KCkgaGVpZ2h0PzogbnVtYmVyO1xuICBASW5wdXQoKSBkYXJrQ29sb3I/OiBSZ2JhQ29sb3IgPSAnIzAwMDAwMEZGJztcbiAgQElucHV0KCkgbGlnaHRDb2xvcj86IFJnYmFDb2xvciA9ICcjRkZGRkZGRkYnO1xuICBcbiAgQElucHV0KCdxckNvZGVFcnJvckNvcnJlY3Rpb25MZXZlbCcpIGVycm9yQ29ycmVjdGlvbkxldmVsPzogUVJDb2RlRXJyb3JDb3JyZWN0aW9uTGV2ZWwgPSBRckNvZGVEaXJlY3RpdmUuREVGQVVMVF9FUlJPUl9DT1JSRUNUSU9OX0xFVkVMO1xuICBASW5wdXQoJ3FyQ29kZUNlbnRlckltYWdlU3JjJykgY2VudGVySW1hZ2VTcmM/OiBzdHJpbmc7XG4gIEBJbnB1dCgncXJDb2RlQ2VudGVySW1hZ2VXaWR0aCcpIGNlbnRlckltYWdlV2lkdGg/OiBudW1iZXIgfCBzdHJpbmc7XG4gIEBJbnB1dCgncXJDb2RlQ2VudGVySW1hZ2VIZWlnaHQnKSBjZW50ZXJJbWFnZUhlaWdodD86IG51bWJlciB8IHN0cmluZztcbiAgQElucHV0KCdxckNvZGVNYXJnaW4nKSBtYXJnaW4/ID0gMTY7XG5cbiAgcHJpdmF0ZSBjZW50ZXJJbWFnZT86IEhUTUxJbWFnZUVsZW1lbnQ7XG5cblxuICBhc3luYyBuZ09uQ2hhbmdlcygpIHtcbiAgICBpZiAoIXRoaXMudmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBjYW52YXMgPSB0aGlzLnZpZXdDb250YWluZXJSZWYuZWxlbWVudC5uYXRpdmVFbGVtZW50IGFzIEhUTUxDYW52YXNFbGVtZW50IHwgbnVsbDtcbiAgICBpZiAoIWNhbnZhcykge1xuICAgICAgLy8gbmF0aXZlIGVsZW1lbnQgbm90IGF2YWlsYWJsZSBvbiBzZXJ2ZXIgc2lkZSByZW5kZXJpbmdcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBjb250ZXh0ID0gY2FudmFzLmdldENvbnRleHQoJzJkJyk7XG5cbiAgICBpZiAoY29udGV4dCkge1xuICAgICAgY29udGV4dC5jbGVhclJlY3QoMCwgMCwgY29udGV4dC5jYW52YXMud2lkdGgsIGNvbnRleHQuY2FudmFzLmhlaWdodCk7XG4gICAgfVxuXG4gICAgY29uc3QgZXJyb3JDb3JyZWN0aW9uTGV2ZWwgPSB0aGlzLmVycm9yQ29ycmVjdGlvbkxldmVsID8/IFFyQ29kZURpcmVjdGl2ZS5ERUZBVUxUX0VSUk9SX0NPUlJFQ1RJT05fTEVWRUxcblxuICAgIGNvbnN0IGRhcmsgPSAhdGhpcy5kYXJrQ29sb3IgXG4gICAgICA/IHVuZGVmaW5lZFxuICAgICAgOiBRckNvZGVEaXJlY3RpdmUuVkFMSURfQ09MT1JfUkVHRVgudGVzdCh0aGlzLmRhcmtDb2xvcilcbiAgICAgID8gdGhpcy5kYXJrQ29sb3JcbiAgICAgIDogdW5kZWZpbmVkO1xuICAgIGNvbnN0IGxpZ2h0ID0gIXRoaXMubGlnaHRDb2xvclxuICAgICAgPyB1bmRlZmluZWRcbiAgICAgIDogUXJDb2RlRGlyZWN0aXZlLlZBTElEX0NPTE9SX1JFR0VYLnRlc3QodGhpcy5saWdodENvbG9yKVxuICAgICAgPyB0aGlzLmxpZ2h0Q29sb3JcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgYXdhaXQgcXJDb2RlU2VydmljZVxuICAgICAgLnRvQ2FudmFzKGNhbnZhcywgdGhpcy52YWx1ZSwge1xuICAgICAgICB2ZXJzaW9uOiB0aGlzLnZlcnNpb24gPz8gdW5kZWZpbmVkLFxuICAgICAgICBlcnJvckNvcnJlY3Rpb25MZXZlbCxcbiAgICAgICAgd2lkdGg6IHRoaXMud2lkdGgsXG4gICAgICAgIG1hcmdpbjogdGhpcy5tYXJnaW4sXG4gICAgICAgIGNvbG9yOiB7XG4gICAgICAgICAgZGFyayxcbiAgICAgICAgICBsaWdodCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgY29uc3QgY2VudGVySW1hZ2VTcmMgPSB0aGlzLmNlbnRlckltYWdlU3JjO1xuICAgIGNvbnN0IGNlbnRlckltYWdlV2lkdGggPSB0aGlzLmdldEludE9yRGVmYXVsdCh0aGlzLmNlbnRlckltYWdlV2lkdGgsIFFyQ29kZURpcmVjdGl2ZS5ERUZBVUxUX0NFTlRFUl9JTUFHRV9TSVpFKTtcbiAgICBjb25zdCBjZW50ZXJJbWFnZUhlaWdodCA9IHRoaXMuZ2V0SW50T3JEZWZhdWx0KHRoaXMuY2VudGVySW1hZ2VIZWlnaHQsIFFyQ29kZURpcmVjdGl2ZS5ERUZBVUxUX0NFTlRFUl9JTUFHRV9TSVpFKTtcblxuICAgIGlmIChjZW50ZXJJbWFnZVNyYyAmJiBjb250ZXh0KSB7XG5cbiAgICAgIGlmICghdGhpcy5jZW50ZXJJbWFnZSkge1xuICAgICAgICB0aGlzLmNlbnRlckltYWdlID0gbmV3IEltYWdlKGNlbnRlckltYWdlV2lkdGgsIGNlbnRlckltYWdlSGVpZ2h0KTtcbiAgICAgIH1cblxuICAgICAgaWYgKGNlbnRlckltYWdlU3JjICE9PSB0aGlzLmNlbnRlckltYWdlPy5zcmMpIHtcbiAgICAgICAgdGhpcy5jZW50ZXJJbWFnZS5zcmMgPSBjZW50ZXJJbWFnZVNyYztcbiAgICAgIH1cblxuICAgICAgaWYgKGNlbnRlckltYWdlV2lkdGggIT09IHRoaXMuY2VudGVySW1hZ2Uud2lkdGgpIHtcbiAgICAgICAgdGhpcy5jZW50ZXJJbWFnZS53aWR0aCA9IGNlbnRlckltYWdlV2lkdGg7XG4gICAgICB9XG5cbiAgICAgIGlmIChjZW50ZXJJbWFnZUhlaWdodCAhPT0gdGhpcy5jZW50ZXJJbWFnZS5oZWlnaHQpIHtcbiAgICAgICAgdGhpcy5jZW50ZXJJbWFnZS5oZWlnaHQgPSBjZW50ZXJJbWFnZUhlaWdodDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgY2VudGVySW1hZ2UgPSB0aGlzLmNlbnRlckltYWdlO1xuXG4gICAgICBjZW50ZXJJbWFnZS5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICAgIGNvbnRleHQuZHJhd0ltYWdlKFxuICAgICAgICAgIGNlbnRlckltYWdlLFxuICAgICAgICAgIGNhbnZhcy53aWR0aCAvIDIgLSBjZW50ZXJJbWFnZVdpZHRoIC8gMixcbiAgICAgICAgICBjYW52YXMuaGVpZ2h0IC8gMiAtIGNlbnRlckltYWdlSGVpZ2h0IC8gMiwgY2VudGVySW1hZ2VXaWR0aCwgY2VudGVySW1hZ2VIZWlnaHQsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICBwcml2YXRlIGdldEludE9yRGVmYXVsdCh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkLCBkZWZhdWx0VmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09ICcnKSB7XG4gICAgICByZXR1cm4gZGVmYXVsdFZhbHVlO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIHBhcnNlSW50KHZhbHVlLCAxMCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG4gIH1cblxufVxuIl19","import { Component, Input } from '@angular/core';\nimport { QrCodeDirective } from '../../directives/qr-code/qr-code.directive';\nimport * as i0 from \"@angular/core\";\nexport class QrCodeComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: QrCodeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.0\", type: QrCodeComponent, isStandalone: true, selector: \"qr-code\", inputs: { value: \"value\", size: \"size\", darkColor: \"darkColor\", lightColor: \"lightColor\", errorCorrectionLevel: \"errorCorrectionLevel\", centerImageSrc: \"centerImageSrc\", centerImageSize: \"centerImageSize\", margin: \"margin\" }, ngImport: i0, template: \"@if (value) {\\n <canvas\\n [qrCode]=\\\"value\\\"\\n [qrCodeErrorCorrectionLevel]=\\\"errorCorrectionLevel\\\"\\n [qrCodeCenterImageSrc]=\\\"centerImageSrc\\\"\\n [qrCodeCenterImageWidth]=\\\"centerImageSize\\\"\\n [qrCodeCenterImageHeight]=\\\"centerImageSize\\\"\\n [qrCodeMargin]=\\\"margin\\\"\\n [width]=\\\"size\\\"\\n [height]=\\\"size\\\"\\n [darkColor]=\\\"darkColor\\\"\\n [lightColor]=\\\"lightColor\\\">\\n </canvas>\\n}\", styles: [\"\"], dependencies: [{ kind: \"directive\", type: QrCodeDirective, selector: \"canvas[qrCode]\", inputs: [\"qrCode\", \"qrCodeVersion\", \"width\", \"height\", \"darkColor\", \"lightColor\", \"qrCodeErrorCorrectionLevel\", \"qrCodeCenterImageSrc\", \"qrCodeCenterImageWidth\", \"qrCodeCenterImageHeight\", \"qrCodeMargin\"] }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: QrCodeComponent, decorators: [{\n type: Component,\n args: [{ selector: 'qr-code', standalone: true, imports: [QrCodeDirective], template: \"@if (value) {\\n <canvas\\n [qrCode]=\\\"value\\\"\\n [qrCodeErrorCorrectionLevel]=\\\"errorCorrectionLevel\\\"\\n [qrCodeCenterImageSrc]=\\\"centerImageSrc\\\"\\n [qrCodeCenterImageWidth]=\\\"centerImageSize\\\"\\n [qrCodeCenterImageHeight]=\\\"centerImageSize\\\"\\n [qrCodeMargin]=\\\"margin\\\"\\n [width]=\\\"size\\\"\\n [height]=\\\"size\\\"\\n [darkColor]=\\\"darkColor\\\"\\n [lightColor]=\\\"lightColor\\\">\\n </canvas>\\n}\" }]\n }], propDecorators: { value: [{\n type: Input\n }], size: [{\n type: Input\n }], darkColor: [{\n type: Input\n }], lightColor: [{\n type: Input\n }], errorCorrectionLevel: [{\n type: Input\n }], centerImageSrc: [{\n type: Input\n }], centerImageSize: [{\n type: Input\n }], margin: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXItY29kZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctcXItY29kZS9zcmMvbGliL2NvbXBvbmVudHMvcXItY29kZS9xci1jb2RlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1xci1jb2RlL3NyYy9saWIvY29tcG9uZW50cy9xci1jb2RlL3FyLWNvZGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRDQUE0QyxDQUFDOztBQVM3RSxNQUFNLE9BQU8sZUFBZTs4R0FBZixlQUFlO2tHQUFmLGVBQWUscVNDWjVCLDBjQWFDLDBEREhXLGVBQWU7OzJGQUVkLGVBQWU7a0JBUDNCLFNBQVM7K0JBQ0UsU0FBUyxjQUdQLElBQUksV0FDUCxDQUFDLGVBQWUsQ0FBQzs4QkFHakIsS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBRUkNvZGVFcnJvckNvcnJlY3Rpb25MZXZlbCB9IGZyb20gJ0BtaW50cGxheWVyL3FyLWNvZGUnO1xuaW1wb3J0IHsgUmdiYUNvbG9yIH0gZnJvbSAnLi4vLi4vdHlwZXMvcmdiYS1jb2xvcic7XG5pbXBvcnQgeyBRckNvZGVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3FyLWNvZGUvcXItY29kZS5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdxci1jb2RlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3FyLWNvZGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9xci1jb2RlLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtRckNvZGVEaXJlY3RpdmVdXG59KVxuZXhwb3J0IGNsYXNzIFFyQ29kZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHZhbHVlPzogc3RyaW5nO1xuICBASW5wdXQoKSBzaXplPzogbnVtYmVyO1xuICBASW5wdXQoKSBkYXJrQ29sb3I/OiBSZ2JhQ29sb3I7XG4gIEBJbnB1dCgpIGxpZ2h0Q29sb3I/OiBSZ2JhQ29sb3I7XG4gIEBJbnB1dCgpIGVycm9yQ29ycmVjdGlvbkxldmVsPzogUVJDb2RlRXJyb3JDb3JyZWN0aW9uTGV2ZWw7XG4gIEBJbnB1dCgpIGNlbnRlckltYWdlU3JjPzogc3RyaW5nO1xuICBASW5wdXQoKSBjZW50ZXJJbWFnZVNpemU/OiBzdHJpbmcgfCBudW1iZXI7XG4gIEBJbnB1dCgpIG1hcmdpbj86IG51bWJlcjtcbn1cbiIsIkBpZiAodmFsdWUpIHtcbiAgICA8Y2FudmFzXG4gICAgICAgIFtxckNvZGVdPVwidmFsdWVcIlxuICAgICAgICBbcXJDb2RlRXJyb3JDb3JyZWN0aW9uTGV2ZWxdPVwiZXJyb3JDb3JyZWN0aW9uTGV2ZWxcIlxuICAgICAgICBbcXJDb2RlQ2VudGVySW1hZ2VTcmNdPVwiY2VudGVySW1hZ2VTcmNcIlxuICAgICAgICBbcXJDb2RlQ2VudGVySW1hZ2VXaWR0aF09XCJjZW50ZXJJbWFnZVNpemVcIlxuICAgICAgICBbcXJDb2RlQ2VudGVySW1hZ2VIZWlnaHRdPVwiY2VudGVySW1hZ2VTaXplXCJcbiAgICAgICAgW3FyQ29kZU1hcmdpbl09XCJtYXJnaW5cIlxuICAgICAgICBbd2lkdGhdPVwic2l6ZVwiXG4gICAgICAgIFtoZWlnaHRdPVwic2l6ZVwiXG4gICAgICAgIFtkYXJrQ29sb3JdPVwiZGFya0NvbG9yXCJcbiAgICAgICAgW2xpZ2h0Q29sb3JdPVwibGlnaHRDb2xvclwiPlxuICAgIDwvY2FudmFzPlxufSJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludHBsYXllci1uZy1xci1jb2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLXFyLWNvZGUvc3JjL21pbnRwbGF5ZXItbmctcXItY29kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mintplayer-ng-qr-code.mjs","sources":["../../../../libs/mintplayer-ng-qr-code/src/lib/directives/qr-code/qr-code.directive.ts","../../../../libs/mintplayer-ng-qr-code/src/lib/components/qr-code/qr-code.component.ts","../../../../libs/mintplayer-ng-qr-code/src/lib/components/qr-code/qr-code.component.html","../../../../libs/mintplayer-ng-qr-code/src/mintplayer-ng-qr-code.ts"],"sourcesContent":["import { Directive, Input, OnChanges, ViewContainerRef } from '@angular/core';\nimport { QRCodeErrorCorrectionLevel } from '@mintplayer/qr-code';\nimport * as qrCodeService from '@mintplayer/qr-code';\nimport { RgbaColor } from '../../types/rgba-color';\n\n@Directive({\n selector: 'canvas[qrCode]',\n standalone: true\n})\nexport class QrCodeDirective implements OnChanges {\n\n constructor(private viewContainerRef: ViewContainerRef) {}\n\n static readonly VALID_COLOR_REGEX = /^#(?:[0-9a-fA-F]{3,4}){1,2}$/;\n static readonly DEFAULT_ERROR_CORRECTION_LEVEL: QRCodeErrorCorrectionLevel = 'M';\n static readonly DEFAULT_CENTER_IMAGE_SIZE = 40;\n\n @Input('qrCode') value!: string;\n\n //#region Version\n private version: number | null = null;\n @Input() set qrCodeVersion(value: number | null) {\n if (value && (value > 40)) {\n this.version = 40;\n } else if (value && (value < 1)) {\n this.version = 1;\n } else {\n this.version = null;\n }\n }\n //#endregion\n\n \n @Input() width?: number;\n @Input() height?: number;\n @Input() darkColor?: RgbaColor = '#000000FF';\n @Input() lightColor?: RgbaColor = '#FFFFFFFF';\n \n @Input('qrCodeErrorCorrectionLevel') errorCorrectionLevel?: QRCodeErrorCorrectionLevel = QrCodeDirective.DEFAULT_ERROR_CORRECTION_LEVEL;\n @Input('qrCodeCenterImageSrc') centerImageSrc?: string;\n @Input('qrCodeCenterImageWidth') centerImageWidth?: number | string;\n @Input('qrCodeCenterImageHeight') centerImageHeight?: number | string;\n @Input('qrCodeMargin') margin? = 16;\n\n private centerImage?: HTMLImageElement;\n\n async ngOnChanges() {\n if (!this.value) {\n return;\n }\n\n const canvas = this.viewContainerRef.element.nativeElement as HTMLCanvasElement | null;\n if (!canvas || (typeof window === 'undefined')) {\n // native element not available on server side rendering\n return;\n }\n\n if (typeof window !== 'undefined') {\n const context = canvas.getContext('2d');\n if (context) {\n context.clearRect(0, 0, context.canvas.width, context.canvas.height);\n\n const errorCorrectionLevel = this.errorCorrectionLevel ?? QrCodeDirective.DEFAULT_ERROR_CORRECTION_LEVEL\n\n const dark = !this.darkColor \n ? undefined\n : QrCodeDirective.VALID_COLOR_REGEX.test(this.darkColor)\n ? this.darkColor\n : undefined;\n const light = !this.lightColor\n ? undefined\n : QrCodeDirective.VALID_COLOR_REGEX.test(this.lightColor)\n ? this.lightColor\n : undefined;\n\n await qrCodeService\n .toCanvas(canvas, this.value, {\n version: this.version ?? undefined,\n errorCorrectionLevel,\n width: this.width,\n margin: this.margin,\n color: {\n dark,\n light,\n },\n });\n\n const centerImageSrc = this.centerImageSrc;\n const centerImageWidth = this.getIntOrDefault(this.centerImageWidth, QrCodeDirective.DEFAULT_CENTER_IMAGE_SIZE);\n const centerImageHeight = this.getIntOrDefault(this.centerImageHeight, QrCodeDirective.DEFAULT_CENTER_IMAGE_SIZE);\n\n if (centerImageSrc && context) {\n\n if (!this.centerImage) {\n this.centerImage = new Image(centerImageWidth, centerImageHeight);\n }\n\n if (centerImageSrc !== this.centerImage?.src) {\n this.centerImage.src = centerImageSrc;\n }\n\n if (centerImageWidth !== this.centerImage.width) {\n this.centerImage.width = centerImageWidth;\n }\n\n if (centerImageHeight !== this.centerImage.height) {\n this.centerImage.height = centerImageHeight;\n }\n\n const centerImage = this.centerImage;\n\n centerImage.onload = () => {\n context.drawImage(\n centerImage,\n canvas.width / 2 - centerImageWidth / 2,\n canvas.height / 2 - centerImageHeight / 2, centerImageWidth, centerImageHeight,\n );\n }\n }\n }\n }\n }\n\n private getIntOrDefault(value: string | number | undefined, defaultValue: number): number {\n if (value === undefined || value === '') {\n return defaultValue;\n } else if (typeof value === 'string') {\n return parseInt(value, 10);\n } else {\n return value;\n }\n }\n\n}\n","import { Component, Input } from '@angular/core';\nimport { QRCodeErrorCorrectionLevel } from '@mintplayer/qr-code';\nimport { RgbaColor } from '../../types/rgba-color';\nimport { QrCodeDirective } from '../../directives/qr-code/qr-code.directive';\n\n@Component({\n selector: 'qr-code',\n templateUrl: './qr-code.component.html',\n styleUrls: ['./qr-code.component.scss'],\n standalone: true,\n imports: [QrCodeDirective]\n})\nexport class QrCodeComponent {\n @Input() value?: string;\n @Input() size?: number;\n @Input() darkColor?: RgbaColor;\n @Input() lightColor?: RgbaColor;\n @Input() errorCorrectionLevel?: QRCodeErrorCorrectionLevel;\n @Input() centerImageSrc?: string;\n @Input() centerImageSize?: string | number;\n @Input() margin?: number;\n}\n","@if (value) {\n <canvas\n [qrCode]=\"value\"\n [qrCodeErrorCorrectionLevel]=\"errorCorrectionLevel\"\n [qrCodeCenterImageSrc]=\"centerImageSrc\"\n [qrCodeCenterImageWidth]=\"centerImageSize\"\n [qrCodeCenterImageHeight]=\"centerImageSize\"\n [qrCodeMargin]=\"margin\"\n [width]=\"size\"\n [height]=\"size\"\n [darkColor]=\"darkColor\"\n [lightColor]=\"lightColor\">\n </canvas>\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,28 +1,28 @@
1
1
  {
2
2
  "name": "@mintplayer/ng-qr-code",
3
3
  "private": false,
4
- "version": "20.0.0",
4
+ "version": "21.0.0",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/MintPlayer/mintplayer-ng-bootstrap",
8
8
  "directory": "libs/mintplayer-ng-qr-code"
9
9
  },
10
10
  "peerDependencies": {
11
- "@angular/common": "^20.0.0",
12
- "@angular/core": "^20.0.0",
11
+ "@angular/common": "^21.0.0",
12
+ "@angular/core": "^21.0.0",
13
13
  "@mintplayer/qr-code": "^1.5.0"
14
14
  },
15
15
  "dependencies": {
16
16
  "tslib": "^2.3.0"
17
17
  },
18
18
  "module": "fesm2022/mintplayer-ng-qr-code.mjs",
19
- "typings": "index.d.ts",
19
+ "typings": "types/mintplayer-ng-qr-code.d.ts",
20
20
  "exports": {
21
21
  "./package.json": {
22
22
  "default": "./package.json"
23
23
  },
24
24
  ".": {
25
- "types": "./index.d.ts",
25
+ "types": "./types/mintplayer-ng-qr-code.d.ts",
26
26
  "default": "./fesm2022/mintplayer-ng-qr-code.mjs"
27
27
  }
28
28
  },