UNPKG

@progress/kendo-angular-scheduler

Version:

Kendo UI Scheduler Angular - Outlook or Google-style angular scheduler calendar. Full-featured and customizable embedded scheduling from the creator developers trust for professional UI components.

60 lines (59 loc) 2.22 kB
/**----------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ import { Input, EventEmitter, Output, Directive } from '@angular/core'; import { isPresent, getField } from '../common/util'; import * as i0 from "@angular/core"; /** * @hidden */ export class ResourceEditorBase { resource; valueChange = new EventEmitter(); resourceValue; getField = getField; /** * @hidden */ writeValue(newValue) { this.resourceValue = newValue; } getResourceStyle(dataItem) { return { 'background-color': getField(dataItem, this.resource.colorField), 'margin-right': isPresent(getField(dataItem, this.resource.valueField)) ? '8px' : '4px' }; } onResourceValueChange(newValue) { this.resourceValue = newValue; this.emitChange(this.resourceValue); } onTouchedCallback = (_) => { }; onChangeCallback = (_) => { }; /** * @hidden */ registerOnChange(fn) { this.onChangeCallback = fn; } /** * @hidden */ registerOnTouched(fn) { this.onTouchedCallback = fn; } emitChange(value) { this.onChangeCallback(value); this.valueChange.emit(value); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResourceEditorBase, deps: [], target: i0.ɵɵFactoryTarget.Directive }); static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ResourceEditorBase, inputs: { resource: "resource" }, outputs: { valueChange: "valueChange" }, ngImport: i0 }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResourceEditorBase, decorators: [{ type: Directive }], propDecorators: { resource: [{ type: Input }], valueChange: [{ type: Output }] } });