UNPKG

devextreme-angular

Version:

Angular UI and visualization components based on DevExtreme widgets

102 lines 13.6 kB
/*! * devextreme-angular * Version: 25.1.4 * Build date: Tue Aug 05 2025 * * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * * This software may be modified and distributed under the terms * of the MIT license. See the LICENSE file in the root of the project for details. * * https://github.com/DevExpress/devextreme-angular */ /* tslint:disable:max-line-length */ import { Component, NgModule, Host, SkipSelf, Input, ContentChildren, forwardRef, QueryList } from '@angular/core'; import { DxIntegrationModule, NestedOptionHost, } from 'devextreme-angular/core'; import { NestedOption } from 'devextreme-angular/core'; import { DxiHtmlEditorItemComponent } from './item-dxi'; import { DxiHtmlEditorTableContextMenuItemComponent } from './table-context-menu-item-dxi'; import * as i0 from "@angular/core"; import * as i1 from "devextreme-angular/core"; export class DxoHtmlEditorTableContextMenuComponent extends NestedOption { get enabled() { return this._getOption('enabled'); } set enabled(value) { this._setOption('enabled', value); } get items() { return this._getOption('items'); } set items(value) { this._setOption('items', value); } get _optionPath() { return 'tableContextMenu'; } itemsChildren; tableContextMenuItemsChildren; setItems() { const q = new QueryList(); q.reset([ ...this.itemsChildren.toArray(), ...this.tableContextMenuItemsChildren.toArray(), ]); this.setChildren('items', q); } constructor(parentOptionHost, optionHost) { super(); parentOptionHost.setNestedOption(this); optionHost.setHost(this, this._fullOptionPath.bind(this)); } ngOnInit() { this._addRecreatedComponent(); } ngOnDestroy() { this._addRemovedOption(this._getOptionPath()); } ngAfterContentInit() { this.setItems(); this.itemsChildren.changes.subscribe(() => { this.setItems(); }); this.tableContextMenuItemsChildren.changes.subscribe(() => { this.setItems(); }); } /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DxoHtmlEditorTableContextMenuComponent, deps: [{ token: i1.NestedOptionHost, host: true, skipSelf: true }, { token: i1.NestedOptionHost, host: true }], target: i0.ɵɵFactoryTarget.Component }); /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DxoHtmlEditorTableContextMenuComponent, isStandalone: true, selector: "dxo-html-editor-table-context-menu", inputs: { enabled: "enabled", items: "items" }, providers: [NestedOptionHost], queries: [{ propertyName: "itemsChildren", predicate: i0.forwardRef(() => DxiHtmlEditorItemComponent) }, { propertyName: "tableContextMenuItemsChildren", predicate: i0.forwardRef(() => DxiHtmlEditorTableContextMenuItemComponent) }], usesInheritance: true, ngImport: i0, template: '', isInline: true, styles: [""], dependencies: [{ kind: "ngmodule", type: DxIntegrationModule }] }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DxoHtmlEditorTableContextMenuComponent, decorators: [{ type: Component, args: [{ selector: 'dxo-html-editor-table-context-menu', standalone: true, template: '', imports: [DxIntegrationModule], providers: [NestedOptionHost] }] }], ctorParameters: () => [{ type: i1.NestedOptionHost, decorators: [{ type: SkipSelf }, { type: Host }] }, { type: i1.NestedOptionHost, decorators: [{ type: Host }] }], propDecorators: { enabled: [{ type: Input }], items: [{ type: Input }], itemsChildren: [{ type: ContentChildren, args: [forwardRef(() => DxiHtmlEditorItemComponent)] }], tableContextMenuItemsChildren: [{ type: ContentChildren, args: [forwardRef(() => DxiHtmlEditorTableContextMenuItemComponent)] }] } }); export class DxoHtmlEditorTableContextMenuModule { /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DxoHtmlEditorTableContextMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); /** @nocollapse */ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: DxoHtmlEditorTableContextMenuModule, imports: [DxoHtmlEditorTableContextMenuComponent], exports: [DxoHtmlEditorTableContextMenuComponent] }); /** @nocollapse */ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DxoHtmlEditorTableContextMenuModule, imports: [DxoHtmlEditorTableContextMenuComponent] }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DxoHtmlEditorTableContextMenuModule, decorators: [{ type: NgModule, args: [{ imports: [ DxoHtmlEditorTableContextMenuComponent ], exports: [ DxoHtmlEditorTableContextMenuComponent ], }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29udGV4dC1tZW51LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vZGlzdC91aS9odG1sLWVkaXRvci9uZXN0ZWQvdGFibGUtY29udGV4dC1tZW51LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztHQVdHO0FBRUgsb0NBQW9DO0FBR3BDLE9BQU8sRUFDSCxTQUFTLEVBR1QsUUFBUSxFQUNSLElBQUksRUFDSixRQUFRLEVBQ1IsS0FBSyxFQUNMLGVBQWUsRUFDZixVQUFVLEVBQ1YsU0FBUyxFQUVaLE1BQU0sZUFBZSxDQUFDO0FBT3ZCLE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIsZ0JBQWdCLEdBQ25CLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN4RCxPQUFPLEVBQUUsMENBQTBDLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7O0FBVzNGLE1BQU0sT0FBTyxzQ0FBdUMsU0FBUSxZQUFZO0lBQ3BFLElBQ0ksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBQ0QsSUFBSSxPQUFPLENBQUMsS0FBYztRQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFDSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxLQUFvRjtRQUMxRixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBR0QsSUFBYyxXQUFXO1FBQ3JCLE9BQU8sa0JBQWtCLENBQUM7SUFDOUIsQ0FBQztJQUc4RCxhQUFhLENBQXdDO0lBRXJDLDZCQUE2QixDQUF3RDtJQUVwSyxRQUFRO1FBQ0osTUFBTSxDQUFDLEdBQW1CLElBQUksU0FBUyxFQUFFLENBQUM7UUFDMUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztZQUNKLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUU7WUFDL0IsR0FBRyxJQUFJLENBQUMsNkJBQTZCLENBQUMsT0FBTyxFQUFFO1NBQ2xELENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFJRCxZQUFnQyxnQkFBa0MsRUFDbEQsVUFBNEI7UUFDeEMsS0FBSyxFQUFFLENBQUM7UUFDUixnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBR0QsUUFBUTtRQUNKLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFHRCxrQkFBa0I7UUFDZCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFaEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hFLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7MkhBNURRLHNDQUFzQzsrR0FBdEMsc0NBQXNDLGlJQUZwQyxDQUFDLGdCQUFnQixDQUFDLDRFQXlCSywwQkFBMEIscUZBRTFCLDBDQUEwQyxxREE5QmxFLEVBQUUseUVBRUQsbUJBQW1COzs0RkFHckIsc0NBQXNDO2tCQVJsRCxTQUFTOytCQUNJLG9DQUFvQyxjQUNsQyxJQUFJLFlBQ04sRUFBRSxXQUVILENBQUUsbUJBQW1CLENBQUUsYUFDckIsQ0FBQyxnQkFBZ0IsQ0FBQzs7MEJBd0NoQixRQUFROzswQkFBSSxJQUFJOzswQkFDcEIsSUFBSTt5Q0FyQ1QsT0FBTztzQkFEVixLQUFLO2dCQVNGLEtBQUs7c0JBRFIsS0FBSztnQkFjeUQsYUFBYTtzQkFBM0UsZUFBZTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsMEJBQTBCLENBQUM7Z0JBRWtCLDZCQUE2QjtzQkFBM0csZUFBZTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsMENBQTBDLENBQUM7O0FBOENqRixNQUFNLE9BQU8sbUNBQW1DOzJIQUFuQyxtQ0FBbUM7NEhBQW5DLG1DQUFtQyxZQXZFbkMsc0NBQXNDLGFBQXRDLHNDQUFzQzs0SEF1RXRDLG1DQUFtQyxZQU41QyxzQ0FBc0M7OzRGQU03QixtQ0FBbUM7a0JBUi9DLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLHNDQUFzQztxQkFDdkM7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHNDQUFzQztxQkFDdkM7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIGRldmV4dHJlbWUtYW5ndWxhclxuICogVmVyc2lvbjogMjUuMS40XG4gKiBCdWlsZCBkYXRlOiBUdWUgQXVnIDA1IDIwMjVcbiAqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTIgLSAyMDI1IERldmVsb3BlciBFeHByZXNzIEluYy4gQUxMIFJJR0hUUyBSRVNFUlZFRFxuICpcbiAqIFRoaXMgc29mdHdhcmUgbWF5IGJlIG1vZGlmaWVkIGFuZCBkaXN0cmlidXRlZCB1bmRlciB0aGUgdGVybXNcbiAqIG9mIHRoZSBNSVQgbGljZW5zZS4gU2VlIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHByb2plY3QgZm9yIGRldGFpbHMuXG4gKlxuICogaHR0cHM6Ly9naXRodWIuY29tL0RldkV4cHJlc3MvZGV2ZXh0cmVtZS1hbmd1bGFyXG4gKi9cblxuLyogdHNsaW50OmRpc2FibGU6bWF4LWxpbmUtbGVuZ3RoICovXHJcblxyXG5cclxuaW1wb3J0IHtcclxuICAgIENvbXBvbmVudCxcclxuICAgIE9uSW5pdCxcclxuICAgIE9uRGVzdHJveSxcclxuICAgIE5nTW9kdWxlLFxyXG4gICAgSG9zdCxcclxuICAgIFNraXBTZWxmLFxyXG4gICAgSW5wdXQsXHJcbiAgICBDb250ZW50Q2hpbGRyZW4sXHJcbiAgICBmb3J3YXJkUmVmLFxyXG4gICAgUXVlcnlMaXN0LFxyXG4gICAgQWZ0ZXJDb250ZW50SW5pdFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuXHJcblxyXG5cclxuaW1wb3J0IHsgZHhIdG1sRWRpdG9yVGFibGVDb250ZXh0TWVudUl0ZW0sIEh0bWxFZGl0b3JQcmVkZWZpbmVkQ29udGV4dE1lbnVJdGVtIH0gZnJvbSAnZGV2ZXh0cmVtZS91aS9odG1sX2VkaXRvcic7XHJcblxyXG5pbXBvcnQge1xyXG4gICAgRHhJbnRlZ3JhdGlvbk1vZHVsZSxcclxuICAgIE5lc3RlZE9wdGlvbkhvc3QsXHJcbn0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOZXN0ZWRPcHRpb24gfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IER4aUh0bWxFZGl0b3JJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9pdGVtLWR4aSc7XHJcbmltcG9ydCB7IER4aUh0bWxFZGl0b3JUYWJsZUNvbnRleHRNZW51SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vdGFibGUtY29udGV4dC1tZW51LWl0ZW0tZHhpJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnZHhvLWh0bWwtZWRpdG9yLXRhYmxlLWNvbnRleHQtbWVudScsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgdGVtcGxhdGU6ICcnLFxyXG4gICAgc3R5bGVzOiBbJyddLFxyXG4gICAgaW1wb3J0czogWyBEeEludGVncmF0aW9uTW9kdWxlIF0sXHJcbiAgICBwcm92aWRlcnM6IFtOZXN0ZWRPcHRpb25Ib3N0XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHhvSHRtbEVkaXRvclRhYmxlQ29udGV4dE1lbnVDb21wb25lbnQgZXh0ZW5kcyBOZXN0ZWRPcHRpb24gaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uSW5pdCwgQWZ0ZXJDb250ZW50SW5pdCAge1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBlbmFibGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ2VuYWJsZWQnKTtcclxuICAgIH1cclxuICAgIHNldCBlbmFibGVkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdlbmFibGVkJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgaXRlbXMoKTogQXJyYXk8ZHhIdG1sRWRpdG9yVGFibGVDb250ZXh0TWVudUl0ZW0gfCBIdG1sRWRpdG9yUHJlZGVmaW5lZENvbnRleHRNZW51SXRlbT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ2l0ZW1zJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgaXRlbXModmFsdWU6IEFycmF5PGR4SHRtbEVkaXRvclRhYmxlQ29udGV4dE1lbnVJdGVtIHwgSHRtbEVkaXRvclByZWRlZmluZWRDb250ZXh0TWVudUl0ZW0+KSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdpdGVtcycsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgcHJvdGVjdGVkIGdldCBfb3B0aW9uUGF0aCgpIHtcclxuICAgICAgICByZXR1cm4gJ3RhYmxlQ29udGV4dE1lbnUnO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gRHhpSHRtbEVkaXRvckl0ZW1Db21wb25lbnQpKSBpdGVtc0NoaWxkcmVuITogUXVlcnlMaXN0PER4aUh0bWxFZGl0b3JJdGVtQ29tcG9uZW50PlxyXG4gICAgXHJcbiAgICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gRHhpSHRtbEVkaXRvclRhYmxlQ29udGV4dE1lbnVJdGVtQ29tcG9uZW50KSkgdGFibGVDb250ZXh0TWVudUl0ZW1zQ2hpbGRyZW4hOiBRdWVyeUxpc3Q8RHhpSHRtbEVkaXRvclRhYmxlQ29udGV4dE1lbnVJdGVtQ29tcG9uZW50PlxyXG4gICAgXHJcbiAgICBzZXRJdGVtcygpIHtcclxuICAgICAgICBjb25zdCBxOiBRdWVyeUxpc3Q8YW55PiA9IG5ldyBRdWVyeUxpc3QoKTtcclxuICAgICAgICBxLnJlc2V0KFtcclxuICAgICAgICAgICAgLi4udGhpcy5pdGVtc0NoaWxkcmVuLnRvQXJyYXkoKSxcclxuICAgICAgICAgICAgLi4udGhpcy50YWJsZUNvbnRleHRNZW51SXRlbXNDaGlsZHJlbi50b0FycmF5KCksXHJcbiAgICAgICAgXSk7XHJcbiAgICAgICAgdGhpcy5zZXRDaGlsZHJlbignaXRlbXMnLCBxKTtcclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIGNvbnN0cnVjdG9yKEBTa2lwU2VsZigpIEBIb3N0KCkgcGFyZW50T3B0aW9uSG9zdDogTmVzdGVkT3B0aW9uSG9zdCxcclxuICAgICAgICAgICAgQEhvc3QoKSBvcHRpb25Ib3N0OiBOZXN0ZWRPcHRpb25Ib3N0KSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuICAgICAgICBwYXJlbnRPcHRpb25Ib3N0LnNldE5lc3RlZE9wdGlvbih0aGlzKTtcclxuICAgICAgICBvcHRpb25Ib3N0LnNldEhvc3QodGhpcywgdGhpcy5fZnVsbE9wdGlvblBhdGguYmluZCh0aGlzKSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMuX2FkZFJlY3JlYXRlZENvbXBvbmVudCgpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMuX2FkZFJlbW92ZWRPcHRpb24odGhpcy5fZ2V0T3B0aW9uUGF0aCgpKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xyXG4gICAgICAgIHRoaXMuc2V0SXRlbXMoKTtcclxuICAgICAgICBcclxuICAgICAgICB0aGlzLml0ZW1zQ2hpbGRyZW4uY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4geyB0aGlzLnNldEl0ZW1zKCkgfSk7XHJcbiAgICAgICAgdGhpcy50YWJsZUNvbnRleHRNZW51SXRlbXNDaGlsZHJlbi5jaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7IHRoaXMuc2V0SXRlbXMoKSB9KTtcclxuICAgIH1cclxufVxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbXHJcbiAgICBEeG9IdG1sRWRpdG9yVGFibGVDb250ZXh0TWVudUNvbXBvbmVudFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgRHhvSHRtbEVkaXRvclRhYmxlQ29udGV4dE1lbnVDb21wb25lbnRcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHhvSHRtbEVkaXRvclRhYmxlQ29udGV4dE1lbnVNb2R1bGUgeyB9XHJcbiJdfQ==