import { __decorate } from "tslib";
import { Component, ChangeDetectionStrategy } from '@angular/core';
import { LayoutComponentBase, LayoutComponentRendererSADirective } from '@anglr/dynamic/layout';
import { DescendantsGetter, LayoutEditorMetadata } from '@anglr/dynamic/layout-editor';
import { GridPanelCellLayoutMetadataLoader } from './gridPanelCell.metadata';
import { applyGridCoordinates } from './gridPanelCell.utils';
import * as i0 from "@angular/core";
/**
 * Component used for displaying grid panel cell
 */
let GridPanelCellSAComponent = class GridPanelCellSAComponent extends LayoutComponentBase {
    //######################### protected methods - overrides #########################
    /**
     * @inheritdoc
     */
    onOptionsSet() {
        const style = this.componentElement.nativeElement.style;
        applyGridCoordinates(this.options, style);
    }
};
GridPanelCellSAComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: GridPanelCellSAComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
GridPanelCellSAComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: GridPanelCellSAComponent, isStandalone: true, selector: "grid-panel-cell", usesInheritance: true, ngImport: i0, template: "<ng-template [layoutComponentRenderer]=\"options?.component\"></ng-template>", dependencies: [{ kind: "directive", type: LayoutComponentRendererSADirective, selector: "[layoutComponentRenderer]", inputs: ["layoutComponentRenderer", "layoutComponentRendererInjector", "layoutComponentRendererDisableTransformer"], outputs: ["layoutComponentRendererComponentChange", "componentElementChange"], exportAs: ["layoutComponentRenderer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
GridPanelCellSAComponent = __decorate([
    DescendantsGetter(options => (options === null || options === void 0 ? void 0 : options.component) ? [options.component] : []),
    LayoutEditorMetadata(GridPanelCellLayoutMetadataLoader)
], GridPanelCellSAComponent);
export { GridPanelCellSAComponent };
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: GridPanelCellSAComponent, decorators: [{
            type: Component,
            args: [{ selector: 'grid-panel-cell', standalone: true, imports: [
                        LayoutComponentRendererSADirective,
                    ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template [layoutComponentRenderer]=\"options?.component\"></ng-template>" }]
        }] });
//# sourceMappingURL=gridPanelCell.component.js.map