"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Simulator = void 0;
var core_1 = require("@designable/core");
var reactive_vue_1 = require("@formily/reactive-vue");
var hooks_1 = require("../hooks");
var simulators_1 = require("../simulators");
var vue_demi_1 = require("vue-demi");
var SimulatorComponent = (0, vue_demi_1.defineComponent)({
    setup: function (props, _a) {
        var attrs = _a.attrs, slots = _a.slots;
        var screenRef = (0, hooks_1.useScreen)();
        return function () {
            var _a, _b, _c, _d;
            if (screenRef.value.type === core_1.ScreenType.PC)
                return (<simulators_1.PCSimulator {...attrs} {...props}>
            {(_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)}
          </simulators_1.PCSimulator>);
            if (screenRef.value.type === core_1.ScreenType.Mobile)
                return (<simulators_1.MobileSimulator {...attrs} {...props}>
            {(_b = slots.default) === null || _b === void 0 ? void 0 : _b.call(slots)}
          </simulators_1.MobileSimulator>);
            if (screenRef.value.type === core_1.ScreenType.Responsive)
                return (<simulators_1.ResponsiveSimulator {...attrs} {...props}>
            {(_c = slots.default) === null || _c === void 0 ? void 0 : _c.call(slots)}
          </simulators_1.ResponsiveSimulator>);
            return (<simulators_1.PCSimulator {...attrs} {...props}>
          {(_d = slots.default) === null || _d === void 0 ? void 0 : _d.call(slots)}
        </simulators_1.PCSimulator>);
        };
    },
});
exports.Simulator = (0, reactive_vue_1.observer)(SimulatorComponent);
//# sourceMappingURL=Simulator.jsx.map