@chargebee/chargebee-js-angular-wrapper
Version:
Angular wrapper for Chargebee.js Components
62 lines • 6.42 kB
JavaScript
import { Input, Output, EventEmitter, Directive } from '@angular/core';
import { getPropChanges } from '../../utils';
import * as i0 from "@angular/core";
export class NumberFieldDirective {
styles;
placeholder;
ready = new EventEmitter();
focus = new EventEmitter();
blur = new EventEmitter();
change = new EventEmitter();
id = '';
field = null;
type = 'number';
constructor(el) {
if (el.nativeElement) {
this.id = el.nativeElement.id;
}
}
onFocus = (status) => {
this.focus.emit(status);
};
onBlur = (status) => {
this.blur.emit(status);
};
onReady = (el) => {
this.ready.emit(el);
};
onChange = (status) => {
this.change.emit(status);
};
ngOnChanges(changes) {
if (this.field) {
const props = ['placeholder', 'styles'];
const { hasChanged, currentOptions } = getPropChanges(changes, props);
if (hasChanged) {
this.field.update(currentOptions);
}
}
}
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NumberFieldDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: NumberFieldDirective, isStandalone: true, selector: "[cbNumberField]", inputs: { styles: "styles", placeholder: "placeholder" }, outputs: { ready: "ready", focus: "focus", blur: "blur", change: "change" }, usesOnChanges: true, ngImport: i0 });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NumberFieldDirective, decorators: [{
type: Directive,
args: [{
selector: '[cbNumberField]',
standalone: true,
}]
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { styles: [{
type: Input
}], placeholder: [{
type: Input
}], ready: [{
type: Output
}], focus: [{
type: Output
}], blur: [{
type: Output
}], change: [{
type: Output
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWZpZWxkLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NoYXJnZWJlZS1qcy1hbmd1bGFyLXdyYXBwZXIvc3JjL2xpYi9kaXJlY3RpdmVzL251bWJlci1maWVsZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBd0MsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFNN0MsTUFBTSxPQUFPLG9CQUFvQjtJQUN0QixNQUFNLENBQVU7SUFDaEIsV0FBVyxDQUFVO0lBRXBCLEtBQUssR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUM5QyxLQUFLLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFDOUMsSUFBSSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBQzdDLE1BQU0sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUV6RCxFQUFFLEdBQUcsRUFBRSxDQUFDO0lBQ1IsS0FBSyxHQUFHLElBQUksQ0FBQztJQUNiLElBQUksR0FBRyxRQUFRLENBQUM7SUFFaEIsWUFBWSxFQUFjO1FBQ3hCLElBQUksRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7UUFDaEMsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPLEdBQUcsQ0FBQyxNQUFXLEVBQUUsRUFBRTtRQUN4QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxQixDQUFDLENBQUE7SUFFRCxNQUFNLEdBQUcsQ0FBQyxNQUFXLEVBQUUsRUFBRTtRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QixDQUFDLENBQUE7SUFFRCxPQUFPLEdBQUcsQ0FBQyxFQUFPLEVBQUUsRUFBRTtRQUNwQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN0QixDQUFDLENBQUE7SUFFRCxRQUFRLEdBQUcsQ0FBQyxNQUFXLEVBQUUsRUFBRTtRQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMzQixDQUFDLENBQUE7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZixNQUFNLEtBQUssR0FBRyxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsQ0FBQztZQUN4QyxNQUFNLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxHQUFHLGNBQWMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFFdEUsSUFBSSxVQUFVLEVBQUUsQ0FBQztnQkFDZixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUNwQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7MkhBNUNVLG9CQUFvQjsrR0FBcEIsb0JBQW9COzs0RkFBcEIsb0JBQW9CO2tCQUpoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjsrRUFFVSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFFSSxLQUFLO3NCQUFkLE1BQU07Z0JBQ0csS0FBSztzQkFBZCxNQUFNO2dCQUNHLElBQUk7c0JBQWIsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0lucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldFByb3BDaGFuZ2VzIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbY2JOdW1iZXJGaWVsZF0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBOdW1iZXJGaWVsZERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHN0eWxlcz86IG9iamVjdDtcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpIHJlYWR5OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGZvY3VzOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGJsdXI6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgY2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBpZCA9ICcnO1xuICBmaWVsZCA9IG51bGw7XG4gIHR5cGUgPSAnbnVtYmVyJztcblxuICBjb25zdHJ1Y3RvcihlbDogRWxlbWVudFJlZikge1xuICAgIGlmIChlbC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICB0aGlzLmlkID0gZWwubmF0aXZlRWxlbWVudC5pZDtcbiAgICB9XG4gIH1cblxuICBvbkZvY3VzID0gKHN0YXR1czogYW55KSA9PiB7XG4gICAgdGhpcy5mb2N1cy5lbWl0KHN0YXR1cyk7XG4gIH1cblxuICBvbkJsdXIgPSAoc3RhdHVzOiBhbnkpID0+IHtcbiAgICB0aGlzLmJsdXIuZW1pdChzdGF0dXMpO1xuICB9XG5cbiAgb25SZWFkeSA9IChlbDogYW55KSA9PiB7XG4gICAgdGhpcy5yZWFkeS5lbWl0KGVsKTtcbiAgfVxuXG4gIG9uQ2hhbmdlID0gKHN0YXR1czogYW55KSA9PiB7XG4gICAgdGhpcy5jaGFuZ2UuZW1pdChzdGF0dXMpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmICh0aGlzLmZpZWxkKSB7XG4gICAgICBjb25zdCBwcm9wcyA9IFsncGxhY2Vob2xkZXInLCAnc3R5bGVzJ107XG4gICAgICBjb25zdCB7IGhhc0NoYW5nZWQsIGN1cnJlbnRPcHRpb25zIH0gPSBnZXRQcm9wQ2hhbmdlcyhjaGFuZ2VzLCBwcm9wcyk7XG5cbiAgICAgIGlmIChoYXNDaGFuZ2VkKSB7XG4gICAgICAgIHRoaXMuZmllbGQudXBkYXRlKGN1cnJlbnRPcHRpb25zKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuIl19