smart-webcomponents-angular
Version:
[](https://jqwidgets.com/license/)
1 lines • 25.7 kB
Source Map (JSON)
{"version":3,"file":"smart-webcomponents-angular-barcode.mjs","sources":["../../barcode/src/smart.element.ts","../../barcode/src/smart.barcode.ts","../../barcode/src/smart.barcode.module.ts","../../barcode/src/smart-webcomponents-angular-barcode.ts"],"sourcesContent":["\ndeclare global {\n interface Window {\n Smart: any;\n}\n}\n\n\nimport { Directive, ElementRef, Input, Output, EventEmitter } from '@angular/core';\nimport { ElementRenderMode } from './../index';\n\n@Directive()\nexport class BaseElement {\n constructor(ref: ElementRef) {\n const that = this;\n this.nativeElement = ref.nativeElement as any;\n\n that.nativeElement.onAttached = () => {\n that.onAttach.emit(that.nativeElement);\n }\n\n that.nativeElement.onDetached = () => {\n that.onDetach.emit(that.nativeElement);\n }\n }\n\n @Output() onCreate: EventEmitter<any> = new EventEmitter();\n @Output() onReady: EventEmitter<any> = new EventEmitter();\n @Output() onAttach: EventEmitter<any> = new EventEmitter();\n @Output() onDetach: EventEmitter<any> = new EventEmitter();\n\n public nativeElement: any;\n\n public addEventListener(type: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions = false): void {\n this.nativeElement.addEventListener(type, listener, options);\n\t}\n\n\tpublic removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions = false): void {\n\t\tthis.nativeElement.removeEventListener(type, listener, options);\n\t}\n\n\tpublic dispatchEvent(event: Event): boolean {\n\t\treturn this.nativeElement.dispatchEvent(event);\n\t}\n\n\tpublic blur(): void {\n\t\tthis.nativeElement.blur();\n\t}\n\n\tpublic click(): void {\n\t\tthis.nativeElement.click();\n\t}\n\n\tpublic focus(options?: FocusOptions): void {\n\t\tthis.nativeElement.focus(options);\n\t}\n\n/** @description Sets or gets the license. */\n\t@Input()\n\tget license(): string {\n\t\treturn this.nativeElement ? this.nativeElement.license : undefined;\n\t}\n\tset license(value: string) {\n\t\tthis.nativeElement ? this.nativeElement.license = value : undefined;\n\t}\n\t\n/** @description Sets or gets the language. Used in conjunction with the property messages. */\n\t@Input()\n\tget locale(): string {\n\t\treturn this.nativeElement ? this.nativeElement.locale : undefined;\n\t}\n\tset locale(value: string) {\n\t\tthis.nativeElement ? this.nativeElement.locale = value : undefined;\n\t}\n\n\t/** @description Callback used to customize the format of the messages that are returned from the Localization Module. */\n\t@Input()\n\tget localizeFormatFunction(): any {\n\t\treturn this.nativeElement ? this.nativeElement.localizeFormatFunction : undefined;\n\t}\n\tset localizeFormatFunction(value: any) {\n\t\tthis.nativeElement ? this.nativeElement.localizeFormatFunction = value : undefined;\n\t}\n\n\t/** @description Sets or gets an object specifying strings used in the widget that can be localized. Used in conjunction with the property locale. */\n\t@Input()\n\tget messages(): any {\n\t\treturn this.nativeElement ? this.nativeElement.messages : undefined;\n\t}\n\tset messages(value: any) {\n\t\tthis.nativeElement ? this.nativeElement.messages = value : undefined;\n\t}\n\n\t/** @description Sets or gets the value indicating whether the element is aligned to support locales using right-to-left fonts. */\n\t@Input()\n\tget rightToLeft(): boolean {\n\t\treturn this.nativeElement ? this.nativeElement.rightToLeft : undefined;\n\t}\n\tset rightToLeft(value: boolean) {\n\t\tthis.nativeElement ? this.nativeElement.rightToLeft = value : undefined;\n\t}\n\n\t/** @description Determines the theme. Theme defines the look of the element */\n\t@Input()\n\tget theme(): string {\n\t\treturn this.nativeElement ? this.nativeElement.theme : undefined;\n\t}\n\tset theme(value: string) {\n\t\tthis.nativeElement ? this.nativeElement.theme = value : undefined;\n\t}\n}\n\nlet Smart: any;\nif (typeof window !== \"undefined\") {\n\tSmart = window.Smart;\n}\nexport { Smart };\n\n","import { Barcode } from './../index';\nimport { BarcodeLabelPosition, BarcodeRenderAs, BarcodeType, ElementRenderMode} from './../index';\nimport { Component, Directive, AfterViewInit, ElementRef, Input, OnInit, OnChanges, OnDestroy, SimpleChanges, Output, EventEmitter } from '@angular/core';\nimport { BaseElement, Smart } from './smart.element';\nexport { BarcodeLabelPosition, BarcodeRenderAs, BarcodeType, ElementRenderMode} from './../index';\nexport { Smart } from './smart.element';\nexport { Barcode } from './../index';\n\n\n@Directive({\n\texportAs: 'smart-barcode',\tselector: 'smart-barcode, [smart-barcode]'\n})\n\nexport class BarcodeComponent extends BaseElement implements OnInit, AfterViewInit, OnDestroy, OnChanges {\n\tconstructor(ref: ElementRef<Barcode>) {\n\t\tsuper(ref);\n\t\tthis.nativeElement = ref.nativeElement as Barcode;\n\t}\n\n\tprivate eventHandlers: any[] = [];\n\n\tpublic declare nativeElement: Barcode;\n\t/** @description Creates the component on demand.\n\t * @param properties An optional object of properties, which will be added to the template binded ones.\n\t */\n\tpublic createComponent(properties = {}): any {\n \tthis.nativeElement = <Barcode>document.createElement('smart-barcode');\n\t\tfor (let propertyName in properties) { \n \t\t\tthis.nativeElement[propertyName] = properties[propertyName];\n\t\t}\n\t\treturn this.nativeElement;\n\t}\n\t/** @description Sets the background color of the barcode element. */\n\t@Input()\n\tget backgroundColor(): string {\n\t\treturn this.nativeElement ? this.nativeElement.backgroundColor : undefined;\n\t}\n\tset backgroundColor(value: string) {\n\t\tthis.nativeElement ? this.nativeElement.backgroundColor = value : undefined;\n\t}\n\n\t/** @description Sets whether the barcode label is visible. */\n\t@Input()\n\tget displayLabel(): boolean {\n\t\treturn this.nativeElement ? this.nativeElement.displayLabel : undefined;\n\t}\n\tset displayLabel(value: boolean) {\n\t\tthis.nativeElement ? this.nativeElement.displayLabel = value : undefined;\n\t}\n\n\t/** @description Sets the color of the barcode label. */\n\t@Input()\n\tget labelColor(): string {\n\t\treturn this.nativeElement ? this.nativeElement.labelColor : undefined;\n\t}\n\tset labelColor(value: string) {\n\t\tthis.nativeElement ? this.nativeElement.labelColor = value : undefined;\n\t}\n\n\t/** @description Sets the font family of the barcode label. */\n\t@Input()\n\tget labelFont(): string {\n\t\treturn this.nativeElement ? this.nativeElement.labelFont : undefined;\n\t}\n\tset labelFont(value: string) {\n\t\tthis.nativeElement ? this.nativeElement.labelFont = value : undefined;\n\t}\n\n\t/** @description Sets the font size of the barcode label. */\n\t@Input()\n\tget labelFontSize(): number {\n\t\treturn this.nativeElement ? this.nativeElement.labelFontSize : undefined;\n\t}\n\tset labelFontSize(value: number) {\n\t\tthis.nativeElement ? this.nativeElement.labelFontSize = value : undefined;\n\t}\n\n\t/** @description Sets the bottom margin of the barcode label. */\n\t@Input()\n\tget labelMarginBottom(): number {\n\t\treturn this.nativeElement ? this.nativeElement.labelMarginBottom : undefined;\n\t}\n\tset labelMarginBottom(value: number) {\n\t\tthis.nativeElement ? this.nativeElement.labelMarginBottom = value : undefined;\n\t}\n\n\t/** @description Sets the top margin of the barcode label. */\n\t@Input()\n\tget labelMarginTop(): number {\n\t\treturn this.nativeElement ? this.nativeElement.labelMarginTop : undefined;\n\t}\n\tset labelMarginTop(value: number) {\n\t\tthis.nativeElement ? this.nativeElement.labelMarginTop = value : undefined;\n\t}\n\n\t/** @description Sets the position of the barcode label. */\n\t@Input()\n\tget labelPosition(): BarcodeLabelPosition | string {\n\t\treturn this.nativeElement ? this.nativeElement.labelPosition : undefined;\n\t}\n\tset labelPosition(value: BarcodeLabelPosition | string) {\n\t\tthis.nativeElement ? this.nativeElement.labelPosition = value : undefined;\n\t}\n\n\t/** @description Sets the color of the barcode lines. */\n\t@Input()\n\tget lineColor(): string {\n\t\treturn this.nativeElement ? this.nativeElement.lineColor : undefined;\n\t}\n\tset lineColor(value: string) {\n\t\tthis.nativeElement ? this.nativeElement.lineColor = value : undefined;\n\t}\n\n\t/** @description Sets the height of the barcode line. */\n\t@Input()\n\tget lineHeight(): number {\n\t\treturn this.nativeElement ? this.nativeElement.lineHeight : undefined;\n\t}\n\tset lineHeight(value: number) {\n\t\tthis.nativeElement ? this.nativeElement.lineHeight = value : undefined;\n\t}\n\n\t/** @description Sets the width of the barcode line. */\n\t@Input()\n\tget lineWidth(): number {\n\t\treturn this.nativeElement ? this.nativeElement.lineWidth : undefined;\n\t}\n\tset lineWidth(value: number) {\n\t\tthis.nativeElement ? this.nativeElement.lineWidth = value : undefined;\n\t}\n\n\t/** @description Sets the rendering mode of the barcode. */\n\t@Input()\n\tget renderAs(): BarcodeRenderAs | string {\n\t\treturn this.nativeElement ? this.nativeElement.renderAs : undefined;\n\t}\n\tset renderAs(value: BarcodeRenderAs | string) {\n\t\tthis.nativeElement ? this.nativeElement.renderAs = value : undefined;\n\t}\n\n\t/** @description Sets the barcode type */\n\t@Input()\n\tget type(): BarcodeType | string {\n\t\treturn this.nativeElement ? this.nativeElement.type : undefined;\n\t}\n\tset type(value: BarcodeType | string) {\n\t\tthis.nativeElement ? this.nativeElement.type = value : undefined;\n\t}\n\n\t/** @description Sets or gets the value of the barcode. */\n\t@Input()\n\tget value(): string {\n\t\treturn this.nativeElement ? this.nativeElement.value : undefined;\n\t}\n\tset value(value: string) {\n\t\tthis.nativeElement ? this.nativeElement.value = value : undefined;\n\t}\n\n\t/** @description Sets or gets the width of the barcode. If the width is set to 0, the width of the barcode is calculated automatically. */\n\t@Input()\n\tget width(): number {\n\t\treturn this.nativeElement ? this.nativeElement.width : undefined;\n\t}\n\tset width(value: number) {\n\t\tthis.nativeElement ? this.nativeElement.width = value : undefined;\n\t}\n\n\t/** @description Sets or gets the height of the barcode. If the height is set to 0, the height of the barcode is calculated automatically. */\n\t@Input()\n\tget height(): number {\n\t\treturn this.nativeElement ? this.nativeElement.height : undefined;\n\t}\n\tset height(value: number) {\n\t\tthis.nativeElement ? this.nativeElement.height = value : undefined;\n\t}\n\n\t/** @description This event is triggered when the value of the barcode is invalid. \n\t* @param event. The custom event. \tCustom event was created with: event.detail(\tinvalidCharacters, \tlengthValidity, \tpatternValidity, \tvalue)\n\t* invalidCharacters - An array indicating the invalid characters.\n\t* lengthValidity - A boolean indicating the length validity.\n\t* patternValidity - A boolean indicating the pattern validity.\n\t* value - the invalid value of the barcode.\n\t*/\n\t@Output() onInvalid: EventEmitter<CustomEvent> = new EventEmitter();\n\n\t/** @description Exports the barcode. \n\t* @param {string} format. The format of the exported file - svg, png, jpg\n\t* @param {string} fileName?. The name of the exported file\n\t*/\n public export(format: string, fileName?: string): void {\n if (this.nativeElement.isRendered) {\n this.nativeElement.export(format, fileName);\n }\n else\n {\n this.nativeElement.whenRendered(() => {\n this.nativeElement.export(format, fileName);\n });\n }\n }\n\n\t/** @description Gets the base64 string of the barcode \n\t* @param {string} format. The dataURL format of the string - svg, png, jpg\n\t* @returns {string}\n */\n\tpublic async getDataURL(format): Promise<any> {\n\t\tconst getResultOnRender = () => {\n return new Promise(resolve => {\n this.nativeElement.whenRendered(() => {\n const result = this.nativeElement.getDataURL(format);\n resolve(result)\n });\n });\n };\n const result = await getResultOnRender();\n\n return result;\n }\n\n\tpublic getDataURLSync(format): string {\n if (this.nativeElement.isRendered) {\n \t return this.nativeElement.getDataURL(format);\n }\n return null;\n }\n\n\t/** @description Gets the base64 string of the barcode \n\t* @param {string} format. The dataURL format of the string - svg, png, jpg\n\t* @returns {any}\n */\n\tpublic async getDataURLAsync(format): Promise<any> {\n\t\tconst getResultOnRender = () => {\n return new Promise(resolve => {\n this.nativeElement.whenRendered(() => {\n const result = this.nativeElement.getDataURLAsync(format);\n resolve(result)\n });\n });\n };\n const result = await getResultOnRender();\n\n return result;\n }\n\n\tpublic getDataURLAsyncSync(format): any {\n if (this.nativeElement.isRendered) {\n \t return this.nativeElement.getDataURLAsync(format);\n }\n return null;\n }\n\n\t/** @description Gets the validity of the barcode \n\t* @returns {boolean}\n */\n\tpublic async isValid(): Promise<any> {\n\t\tconst getResultOnRender = () => {\n return new Promise(resolve => {\n this.nativeElement.whenRendered(() => {\n const result = this.nativeElement.isValid();\n resolve(result)\n });\n });\n };\n const result = await getResultOnRender();\n\n return result;\n }\n\n\tpublic isValidSync(): boolean {\n if (this.nativeElement.isRendered) {\n \t return this.nativeElement.isValid();\n }\n return null;\n }\n\n\n\tget isRendered(): boolean {\n\t\treturn this.nativeElement ? this.nativeElement.isRendered : false;\n\t}\n\n\tngOnInit() {\n\t}\n\n ngAfterViewInit() {\n const that = this;\n\n that.onCreate.emit(that.nativeElement);\n\n\t\tif (Smart) Smart.Render();\n\n\t\tthis.nativeElement.classList.add('smart-angular');\n\n\t\tif (this.nativeElement.whenRendered) this.nativeElement.whenRendered(() => { that.onReady.emit(that.nativeElement); });\n\t\tthis.listen();\n\t}\n\n\tngOnDestroy() {\n\t\tthis.unlisten();\n\t}\n\n\tngOnChanges(changes: SimpleChanges) {\n\t\tif (this.nativeElement && this.nativeElement.isRendered) {\n\t\t\tfor (const propName in changes) {\n\t\t\t\tif (changes.hasOwnProperty(propName)) {\n\t\t\t\t\tthis.nativeElement[propName] = changes[propName].currentValue;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/** @description Add event listeners. */\n\tprivate listen(): void {\n const that = this;\n\t\tthat.eventHandlers['invalidHandler'] = (event: CustomEvent) => { that.onInvalid.emit(event); }\n\t\tthat.nativeElement.addEventListener('invalid', that.eventHandlers['invalidHandler']);\n\n\t}\n\n\t/** @description Remove event listeners. */\n\tprivate unlisten(): void {\n const that = this;\n\t\tif (that.eventHandlers['invalidHandler']) {\n\t\t\tthat.nativeElement.removeEventListener('invalid', that.eventHandlers['invalidHandler']);\n\t\t}\n\n\t}\n}\n","import { NgModule } from '@angular/core';\n\nimport { BarcodeComponent } from './smart.barcode';\nimport { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\n\n@NgModule({\n declarations: [BarcodeComponent],\n\tschemas: [CUSTOM_ELEMENTS_SCHEMA],\n\texports: [BarcodeComponent]\n})\n\nexport class BarcodeModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}