@doreamonjs/gate
Version:
gate for doreamonjs
45 lines • 1.74 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const react_1 = tslib_1.__importDefault(require("react"));
const dva_1 = require("dva");
const antd_1 = require("antd");
const components_1 = require("@doreamonjs/components");
const iframe = tslib_1.__importStar(require("@doreamonjs/plugin-iframe"));
const IFrame = (props) => {
const drawerProps = {
className: props.className,
width: props.width || 800,
title: props.title,
placement: props.placement || 'right',
visible: props.visible,
onClose: props.onClose,
closable: false,
};
const style = {
backgroundColor: '#000',
padding: 0,
//
...props.style,
};
return (react_1.default.createElement(antd_1.Drawer, { ...drawerProps, bodyStyle: style, placement: "right" }, props.visible && (react_1.default.createElement(components_1.Frame, { src: props.src, allowFullScreen: props.allowFullScreen, allowOpenInNewTab: props.allowOpenInNewTab, sanbox: props.sanbox, allow: props.allow }))));
};
const mapState = (states) => {
const state = states[iframe.NAMESPACE];
const loading = states.loading;
const { nextEffect } = state;
const btnLoading = loading.effects[nextEffect];
return {
loading: btnLoading,
visible: state.visible,
// attributes: state.attributes,
// values: state.datasets.values,
...state.attributes,
...state.datasets.values,
};
};
const mapActions = (dispatch) => ({
onClose: () => dispatch({ type: `${iframe.NAMESPACE}/close` }),
});
exports.default = dva_1.connect(mapState, mapActions)(IFrame);
//# sourceMappingURL=index.js.map