"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.StudioPanel = void 0;
var hooks_1 = require("../hooks");
var containers_1 = require("../containers");
var classnames_1 = __importDefault(require("classnames"));
var vue_demi_1 = require("vue-demi");
var StudioPanelInternal = (0, vue_demi_1.defineComponent)({
    name: 'StudioPanelInternal',
    setup: function (props, _a) {
        var attrs = _a.attrs, slots = _a.slots;
        var prefixRef = (0, hooks_1.usePrefix)('main-panel');
        var positionRef = (0, hooks_1.usePosition)();
        return function () {
            var _a, _b, _c, _d;
            var position = (0, vue_demi_1.unref)(positionRef);
            var prefix = (0, vue_demi_1.unref)(prefixRef);
            if (slots.logo || slots.actions) {
                return (<div {...attrs} class={(0, classnames_1.default)(prefix + '-container', 'root', position)}>
            <div class={prefix + '-header'}>
              <div class={prefix + '-header-logo'}>
                {(_a = slots.logo) === null || _a === void 0 ? void 0 : _a.call(slots)}
              </div>
              <div class={prefix + '-header-actions'}>
                {(_b = slots.actions) === null || _b === void 0 ? void 0 : _b.call(slots)}
              </div>
            </div>
            <div class={prefix}>{(_c = slots.default) === null || _c === void 0 ? void 0 : _c.call(slots)}</div>
          </div>);
            }
            return (<div {...attrs} class={(0, classnames_1.default)(prefixRef.value, 'root', position)}>
          {(_d = slots.default) === null || _d === void 0 ? void 0 : _d.call(slots)}
        </div>);
        };
    },
});
exports.StudioPanel = (0, vue_demi_1.defineComponent)({
    name: 'StudioPanel',
    props: {
        theme: { type: String, default: 'light' },
        prefixCls: { type: String, default: 'dn-' },
        position: { type: String, default: 'fixed' }
    },
    setup: function (props, _a) {
        var slots = _a.slots;
        // const scopedSlots = {
        //   logo: slots.logo,
        //   actions: slots.actions,
        // }
        return function () { return (<containers_1.Layout {...{ theme: props.theme, prefixCls: props.prefixCls, position: props.position }}>
        <StudioPanelInternal {...props} v-slots={slots}/>
      </containers_1.Layout>); };
    },
});
//# sourceMappingURL=StudioPanel.jsx.map