UNPKG

ontimize-web-ngx

Version:
57 lines 6.25 kB
import { Directive } from '@angular/core'; import { Util } from '../../util/util'; import * as i0 from "@angular/core"; export const DEFAULT_INPUTS_O_CONTEXT_MENU_ITEMS = [ 'attr', 'ovisible: visible', 'icon', 'data', 'label', 'oenabled: enabled', 'svgIcon: svg-icon' ]; export class OComponentMenuBaseItem { constructor() { this.ovisible = true; this.type = OComponentMenuBaseItem.TYPE_GROUP_MENU; this.enabled = true; } get disabled() { if (this.enabled instanceof Function) { return !this.enabled(this.data); } return !this.enabled; } get isVisible() { if (this.ovisible instanceof Function) { return this.ovisible(this.data); } return this.ovisible; } set oenabled(value) { if (value instanceof Function) { this.enabled = value; } else { this.enabled = this.parseInput(value, true); } } parseInput(value, defaultValue) { if (value instanceof Function || typeof value === 'boolean') { return value; } return Util.parseBoolean(value, defaultValue); } } OComponentMenuBaseItem.TYPE_ITEM_MENU = 'item_menu'; OComponentMenuBaseItem.TYPE_GROUP_MENU = 'item_group'; OComponentMenuBaseItem.TYPE_SEPARATOR_MENU = 'item_separator'; OComponentMenuBaseItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OComponentMenuBaseItem, deps: [], target: i0.ɵɵFactoryTarget.Directive }); OComponentMenuBaseItem.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: OComponentMenuBaseItem, inputs: { attr: "attr", ovisible: ["visible", "ovisible"], icon: "icon", data: "data", label: "label", oenabled: ["enabled", "oenabled"], svgIcon: ["svg-icon", "svgIcon"] }, ngImport: i0 }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OComponentMenuBaseItem, decorators: [{ type: Directive, args: [{ inputs: DEFAULT_INPUTS_O_CONTEXT_MENU_ITEMS }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby1jb250ZW50LW1lbnUtYmFzZS1pdGVtLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvY29udGV4dG1lbnUvby1jb250ZW50LW1lbnUtYmFzZS1pdGVtLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUV2QyxNQUFNLENBQUMsTUFBTSxtQ0FBbUMsR0FBRztJQUNqRCxNQUFNO0lBQ04sbUJBQW1CO0lBQ25CLE1BQU07SUFDTixNQUFNO0lBQ04sT0FBTztJQUNQLG1CQUFtQjtJQUNuQixtQkFBbUI7Q0FDcEIsQ0FBQztBQUtGLE1BQU0sT0FBTyxzQkFBc0I7SUFIbkM7UUFRUyxhQUFRLEdBQXVDLElBQUksQ0FBQztRQUVwRCxTQUFJLEdBQUcsc0JBQXNCLENBQUMsZUFBZSxDQUFDO1FBSTlDLFlBQU8sR0FBdUMsSUFBSSxDQUFDO0tBZ0MzRDtJQTdCQyxJQUFJLFFBQVE7UUFDVixJQUFJLElBQUksQ0FBQyxPQUFPLFlBQVksUUFBUSxFQUFFO1lBQ3BDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNqQztRQUNELE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxJQUFJLElBQUksQ0FBQyxRQUFRLFlBQVksUUFBUSxFQUFFO1lBQ3JDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDakM7UUFDRCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQUksUUFBUSxDQUFDLEtBQTJDO1FBQ3RELElBQUksS0FBSyxZQUFZLFFBQVEsRUFBRTtZQUM3QixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztTQUN0QjthQUFNO1lBQ0wsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztTQUM3QztJQUNILENBQUM7SUFFUyxVQUFVLENBQUMsS0FBVSxFQUFFLFlBQXNCO1FBQ3JELElBQUksS0FBSyxZQUFZLFFBQVEsSUFBSSxPQUFPLEtBQUssS0FBSyxTQUFTLEVBQUU7WUFDM0QsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDaEQsQ0FBQzs7QUF2Q2EscUNBQWMsR0FBRyxXQUFXLENBQUM7QUFDN0Isc0NBQWUsR0FBRyxZQUFZLENBQUM7QUFDL0IsMENBQW1CLEdBQUcsZ0JBQWdCLENBQUM7b0hBSjFDLHNCQUFzQjt3R0FBdEIsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBSGxDLFNBQVM7bUJBQUM7b0JBQ1QsTUFBTSxFQUFFLG1DQUFtQztpQkFDNUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFV0aWwgfSBmcm9tICcuLi8uLi91dGlsL3V0aWwnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9JTlBVVFNfT19DT05URVhUX01FTlVfSVRFTVMgPSBbXG4gICdhdHRyJyxcbiAgJ292aXNpYmxlOiB2aXNpYmxlJyxcbiAgJ2ljb24nLFxuICAnZGF0YScsXG4gICdsYWJlbCcsXG4gICdvZW5hYmxlZDogZW5hYmxlZCcsXG4gICdzdmdJY29uOiBzdmctaWNvbidcbl07XG5cbkBEaXJlY3RpdmUoe1xuICBpbnB1dHM6IERFRkFVTFRfSU5QVVRTX09fQ09OVEVYVF9NRU5VX0lURU1TXG59KVxuZXhwb3J0IGNsYXNzIE9Db21wb25lbnRNZW51QmFzZUl0ZW0ge1xuXG4gIHB1YmxpYyBzdGF0aWMgVFlQRV9JVEVNX01FTlUgPSAnaXRlbV9tZW51JztcbiAgcHVibGljIHN0YXRpYyBUWVBFX0dST1VQX01FTlUgPSAnaXRlbV9ncm91cCc7XG4gIHB1YmxpYyBzdGF0aWMgVFlQRV9TRVBBUkFUT1JfTUVOVSA9ICdpdGVtX3NlcGFyYXRvcic7XG4gIHB1YmxpYyBvdmlzaWJsZTogYm9vbGVhbiB8ICgoaXRlbTogYW55KSA9PiBib29sZWFuKSA9IHRydWU7XG4gIHB1YmxpYyBhdHRyO1xuICBwdWJsaWMgdHlwZSA9IE9Db21wb25lbnRNZW51QmFzZUl0ZW0uVFlQRV9HUk9VUF9NRU5VO1xuICBwdWJsaWMgaWNvbjogc3RyaW5nO1xuICBwdWJsaWMgZGF0YTogYW55O1xuICBwdWJsaWMgbGFiZWw6IHN0cmluZztcbiAgcHVibGljIGVuYWJsZWQ6IGJvb2xlYW4gfCAoKGl0ZW06IGFueSkgPT4gYm9vbGVhbikgPSB0cnVlO1xuICBwdWJsaWMgc3ZnSWNvbjogc3RyaW5nO1xuXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5lbmFibGVkIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgIHJldHVybiAhdGhpcy5lbmFibGVkKHRoaXMuZGF0YSk7XG4gICAgfVxuICAgIHJldHVybiAhdGhpcy5lbmFibGVkO1xuICB9XG5cbiAgZ2V0IGlzVmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5vdmlzaWJsZSBpbnN0YW5jZW9mIEZ1bmN0aW9uKSB7XG4gICAgICByZXR1cm4gdGhpcy5vdmlzaWJsZSh0aGlzLmRhdGEpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5vdmlzaWJsZTtcbiAgfVxuXG4gIHNldCBvZW5hYmxlZCh2YWx1ZTogKGJvb2xlYW4gfCAoKGl0ZW06IGFueSkgPT4gYm9vbGVhbikpKSB7XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgIHRoaXMuZW5hYmxlZCA9IHZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVuYWJsZWQgPSB0aGlzLnBhcnNlSW5wdXQodmFsdWUsIHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZUlucHV0KHZhbHVlOiBhbnksIGRlZmF1bHRWYWx1ZT86IGJvb2xlYW4pOiBib29sZWFuIHtcbiAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBGdW5jdGlvbiB8fCB0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJykge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgICByZXR1cm4gVXRpbC5wYXJzZUJvb2xlYW4odmFsdWUsIGRlZmF1bHRWYWx1ZSk7XG4gIH1cblxufVxuIl19