@jonyadamit/ngx-qrcode-ivy
Version:
An Angular component for generating QRCodes
1 lines • 10.4 kB
Source Map (JSON)
{"version":3,"file":"jonyadamit-ngx-qrcode-ivy.mjs","sources":["../../../projects/ngx-qrcode/src/lib/qrcode.types.ts","../../../projects/ngx-qrcode/src/lib/qrcode.constants.ts","../../../projects/ngx-qrcode/src/lib/qrcode.component.ts","../../../projects/ngx-qrcode/src/lib/qrcode.module.ts","../../../projects/ngx-qrcode/src/public-api.ts","../../../projects/ngx-qrcode/src/jonyadamit-ngx-qrcode-ivy.ts"],"sourcesContent":["export enum NgxQrcodeElementTypes {\r\n URL = 'url',\r\n IMG = 'img',\r\n CANVAS = 'canvas'\r\n}\r\n\r\nexport enum NgxQrcodeErrorCorrectionLevels {\r\n LOW = 'L',\r\n MEDIUM = 'M',\r\n QUARTILE = 'Q',\r\n HIGH = 'H'\r\n}\r\n\r\nexport type NgxQrcodeVersionType =\r\n '1'\r\n | '2'\r\n | '3'\r\n | '4'\r\n | '5'\r\n | '6'\r\n | '7'\r\n | '8'\r\n | '9'\r\n | '10'\r\n | '11'\r\n | '12'\r\n | '13'\r\n | '14'\r\n | '15'\r\n | '16'\r\n | '17'\r\n | '18'\r\n | '19'\r\n | '20'\r\n | '21'\r\n | '22'\r\n | '23'\r\n | '24'\r\n | '25'\r\n | '26'\r\n | '27'\r\n | '28'\r\n | '29'\r\n | '30'\r\n | '31'\r\n | '32'\r\n | '33'\r\n | '34'\r\n | '35'\r\n | '36'\r\n | '37'\r\n | '38'\r\n | '39'\r\n | '40'\r\n | '';\r\n","import { NgxQrcodeElementTypes, NgxQrcodeErrorCorrectionLevels, NgxQrcodeVersionType } from './qrcode.types';\r\n\r\nexport const DEFAULT_VALUES = {\r\n elementType: NgxQrcodeElementTypes.URL,\r\n cssClass: 'qrcode',\r\n value: 'https://www.techiediaries.com',\r\n version: '' as NgxQrcodeVersionType,\r\n errorCorrectionLevel: NgxQrcodeErrorCorrectionLevels.MEDIUM,\r\n margin: 4,\r\n scale: 4,\r\n width: 10,\r\n colorDark: '#000',\r\n colorLight: '#FFF'\r\n};\r\n","import { ChangeDetectionStrategy, Component, ElementRef, Input, OnChanges, Renderer2, ViewChild } from '@angular/core';\r\n\r\nimport QRCode from 'qrcode';\r\n\r\nimport { NgxQrcodeElementTypes } from './qrcode.types';\r\nimport { DEFAULT_VALUES } from './qrcode.constants';\r\n\r\n@Component({\r\n selector: 'ngx-qrcode',\r\n template: `<div #qrcElement [class]=\"cssClass\"></div>`,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class QrcodeComponent implements OnChanges {\r\n\r\n @Input() elementType = DEFAULT_VALUES.elementType;\r\n @Input() cssClass = DEFAULT_VALUES.cssClass;\r\n @Input() alt: string;\r\n @Input() value = DEFAULT_VALUES.value;\r\n @Input() version = DEFAULT_VALUES.version;\r\n @Input() errorCorrectionLevel = DEFAULT_VALUES.errorCorrectionLevel;\r\n @Input() margin = DEFAULT_VALUES.margin;\r\n @Input() scale = DEFAULT_VALUES.scale;\r\n @Input() width = DEFAULT_VALUES.width;\r\n @Input() colorDark = DEFAULT_VALUES.colorDark;\r\n @Input() colorLight = DEFAULT_VALUES.colorLight;\r\n\r\n @ViewChild('qrcElement') qrcElement: ElementRef;\r\n\r\n constructor(private renderer: Renderer2) {\r\n }\r\n\r\n ngOnChanges() {\r\n this.createQRCode();\r\n }\r\n\r\n createQRCode() {\r\n if (!this.value) {\r\n return;\r\n }\r\n\r\n let element: Element;\r\n\r\n switch (this.elementType) {\r\n\r\n case NgxQrcodeElementTypes.CANVAS:\r\n element = this.renderer.createElement('canvas');\r\n this.toCanvas(element).then(() => {\r\n this.renderElement(element);\r\n }).catch(e => {\r\n this.removeElementChildren();\r\n console.error(e);\r\n });\r\n break;\r\n default:\r\n element = this.renderer.createElement('img');\r\n this.toDataURL().then((src: string) => {\r\n element.setAttribute('src', src);\r\n if (this.alt) {\r\n element.setAttribute('alt', this.alt);\r\n }\r\n this.renderElement(element);\r\n }).catch(e => {\r\n this.removeElementChildren();\r\n console.error(e);\r\n });\r\n }\r\n }\r\n\r\n private toDataURL(): Promise<string> {\r\n return QRCode.toDataURL(this.value,\r\n {\r\n version: this.version,\r\n errorCorrectionLevel: this.errorCorrectionLevel,\r\n margin: this.margin,\r\n scale: this.scale,\r\n width: this.width,\r\n color: {\r\n dark: this.colorDark,\r\n light: this.colorLight\r\n }\r\n });\r\n }\r\n\r\n private toCanvas(canvas): Promise<any> {\r\n return QRCode.toCanvas(canvas, this.value, {\r\n version: this.version,\r\n errorCorrectionLevel: this.errorCorrectionLevel,\r\n margin: this.margin,\r\n scale: this.scale,\r\n width: this.width,\r\n color: {\r\n dark: this.colorDark,\r\n light: this.colorLight\r\n }\r\n });\r\n }\r\n\r\n private renderElement(element): void {\r\n this.removeElementChildren();\r\n this.renderer.appendChild(this.qrcElement.nativeElement, element);\r\n }\r\n\r\n private removeElementChildren(): void {\r\n for (const node of this.qrcElement.nativeElement.childNodes) {\r\n this.renderer.removeChild(this.qrcElement.nativeElement, node);\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\n\r\nimport { QrcodeComponent } from './qrcode.component';\r\n\r\n@NgModule({\r\n declarations: [QrcodeComponent],\r\n exports: [QrcodeComponent]\r\n})\r\nexport class NgxQRCodeModule {\r\n}\r\n","/*\r\n * Public API Surface of ngx-qrcode\r\n */\r\n\r\nexport * from './lib/qrcode.types';\r\nexport * from './lib/qrcode.component';\r\nexport * from './lib/qrcode.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}