import { __decorate } from "tslib";
import { Vue, Prop, Watch } from 'vue-property-decorator';
/**
 * 表单成员基类
 *
 * @export
 * @class AppDefaultFormDetail
 * @extends {Vue}
 */
export class AppDefaultFormDetail extends Vue {
    constructor() {
        super(...arguments);
        /**
         * 绘制参数
         *
         * @type {*}
         * @memberof AppDefaultForm
         */
        this.renderOptions = {
            detailClassNames: {},
        };
    }
    /**
     * 监听表单成员实例对象变化
     *
     * @type {*}
     * @memberof AppDefaultFormDetail
     */
    detailsInstanceChange() {
        this.initDetail();
    }
    /**
     * 初始化解析formModel
     *
     * @memberof AppDefaultForm
     */
    initDetail() {
        const sysCss = this.detailsInstance.getPSSysCss();
        this.renderOptions = {};
        // 表单成员类名
        const detailClassNames = {};
        if (sysCss === null || sysCss === void 0 ? void 0 : sysCss.cssName) {
            Object.assign(detailClassNames, { [sysCss === null || sysCss === void 0 ? void 0 : sysCss.cssName]: true });
        }
        this.$set(this.renderOptions, 'detailClassNames', detailClassNames);
    }
}
__decorate([
    Prop()
], AppDefaultFormDetail.prototype, "detailsInstance", void 0);
__decorate([
    Prop({ default: 0 })
], AppDefaultFormDetail.prototype, "index", void 0);
__decorate([
    Prop()
], AppDefaultFormDetail.prototype, "formModel", void 0);
__decorate([
    Prop()
], AppDefaultFormDetail.prototype, "controlInstance", void 0);
__decorate([
    Prop()
], AppDefaultFormDetail.prototype, "runtimeModel", void 0);
__decorate([
    Prop()
], AppDefaultFormDetail.prototype, "context", void 0);
__decorate([
    Prop()
], AppDefaultFormDetail.prototype, "viewparams", void 0);
__decorate([
    Prop()
], AppDefaultFormDetail.prototype, "modelService", void 0);
__decorate([
    Watch('detailsInstance', { immediate: true })
], AppDefaultFormDetail.prototype, "detailsInstanceChange", null);
