import * as i2 from '@acorex/components/button';
import { AXButtonModule } from '@acorex/components/button';
import * as i1 from '@acorex/components/decorators';
import { AXDecoratorModule } from '@acorex/components/decorators';
import { AXBasePageComponent } from '@acorex/components/page';
import * as i3 from '@angular/common';
import { CommonModule } from '@angular/common';
import * as i0 from '@angular/core';
import { signal, Component } from '@angular/core';
import { AXPExtraPropertiesSchemaComponent } from '@acorex/platform/layout/components';
import * as i4 from '@acorex/core/translation';
import { AXTranslationModule } from '@acorex/core/translation';

class AXPManageExtraPropertiesPopupComponent extends AXBasePageComponent {
    constructor() {
        super(...arguments);
        //#region ----   Inputs   ----
        /**
         * Provided by opener via AXPopupService.open(..., { data: { schema: signal([...]) } })
         */
        this.schema = signal([], ...(ngDevMode ? [{ debugName: "schema" }] : []));
    }
    //#endregion
    //#region ----   UI Handlers   ----
    handleSave() {
        this.close({ schema: this.schema() });
    }
    static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPManageExtraPropertiesPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
    static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: AXPManageExtraPropertiesPopupComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
      <axp-extra-properties-schema
        class="!ax-h-[75vh] ax-overflow-hidden"
        [schema]="schema()"
        (schemaChange)="schema.set($event)"
        [mode]="'edit'"
      />

    <ax-footer>
      <ax-prefix></ax-prefix>
      <ax-suffix>
        <ax-button [text]="'@extra-properties:actions.cancel' | translate | async" (onClick)="close()"></ax-button>
        <ax-button color="primary" [text]="'@extra-properties:actions.save' | translate | async" (onClick)="handleSave()"></ax-button>
      </ax-suffix>
    </ax-footer>
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "component", type: AXPExtraPropertiesSchemaComponent, selector: "axp-extra-properties-schema", inputs: ["schema", "mode"], outputs: ["schemaChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.AXTranslatorPipe, name: "translate" }] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPManageExtraPropertiesPopupComponent, decorators: [{
            type: Component,
            args: [{
                    template: `
      <axp-extra-properties-schema
        class="!ax-h-[75vh] ax-overflow-hidden"
        [schema]="schema()"
        (schemaChange)="schema.set($event)"
        [mode]="'edit'"
      />

    <ax-footer>
      <ax-prefix></ax-prefix>
      <ax-suffix>
        <ax-button [text]="'@extra-properties:actions.cancel' | translate | async" (onClick)="close()"></ax-button>
        <ax-button color="primary" [text]="'@extra-properties:actions.save' | translate | async" (onClick)="handleSave()"></ax-button>
      </ax-suffix>
    </ax-footer>
  `,
                    imports: [CommonModule, AXDecoratorModule, AXButtonModule, AXPExtraPropertiesSchemaComponent, AXTranslationModule],
                    standalone: true,
                }]
        }] });

export { AXPManageExtraPropertiesPopupComponent };
//# sourceMappingURL=acorex-modules-common-manage-extra-properties-popup.component-Cp2ggAfC.mjs.map
