Commit fda8c29148819e07dc7a01bf44bef124aef8573e

Authored by 乔启韬
1 parent 7095a683

子表、关联表全屏

@@ -2,6 +2,8 @@ import "antd/es/table/style"; @@ -2,6 +2,8 @@ import "antd/es/table/style";
2 import _Table from "antd/es/table"; 2 import _Table from "antd/es/table";
3 import "antd/es/alert/style"; 3 import "antd/es/alert/style";
4 import _Alert from "antd/es/alert"; 4 import _Alert from "antd/es/alert";
  5 +import _FullscreenOutlined from "@ant-design/icons/es/icons/FullscreenOutlined";
  6 +import _FullscreenExitOutlined from "@ant-design/icons/es/icons/FullscreenExitOutlined";
5 import "antd/es/dropdown/style"; 7 import "antd/es/dropdown/style";
6 import _Dropdown from "antd/es/dropdown"; 8 import _Dropdown from "antd/es/dropdown";
7 import "antd/es/space/style"; 9 import "antd/es/space/style";
@@ -184,6 +186,11 @@ var VirtualList = function VirtualList(_ref) { @@ -184,6 +186,11 @@ var VirtualList = function VirtualList(_ref) {
184 searchName = _useState12[0], 186 searchName = _useState12[0],
185 setSearchName = _useState12[1]; 187 setSearchName = _useState12[1];
186 188
  189 + var _useState13 = useState(false),
  190 + _useState14 = _slicedToArray(_useState13, 2),
  191 + isFullscreen = _useState14[0],
  192 + setFullscreen = _useState14[1];
  193 +
187 var padding = useMemo(function () { 194 var padding = useMemo(function () {
188 return size === 'default' ? 32 : 16; 195 return size === 'default' ? 32 : 16;
189 }, [size]); 196 }, [size]);
@@ -416,11 +423,7 @@ var VirtualList = function VirtualList(_ref) { @@ -416,11 +423,7 @@ var VirtualList = function VirtualList(_ref) {
416 width: column.width ? parseInt(column.width) : FIELD_LENGTH, 423 width: column.width ? parseInt(column.width) : FIELD_LENGTH,
417 align: column.align || 'left', 424 align: column.align || 'left',
418 fixed: column.fixed || props.fixed && index < props.fixed, 425 fixed: column.fixed || props.fixed && index < props.fixed,
419 - title: /*#__PURE__*/React.createElement("div", {  
420 - style: {  
421 - width: (parseInt(column.width) || FIELD_LENGTH) - padding + "px"  
422 - }  
423 - }, schema.required ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", { 426 + title: /*#__PURE__*/React.createElement("div", null, schema.required ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", {
424 className: "fr-label-required" 427 className: "fr-label-required"
425 }, " *"), /*#__PURE__*/React.createElement("span", null, schema.title)) : schema.title), 428 }, " *"), /*#__PURE__*/React.createElement("span", null, schema.title)) : schema.title),
426 render: function render(value, record, index) { 429 render: function render(value, record, index) {
@@ -829,7 +832,9 @@ var VirtualList = function VirtualList(_ref) { @@ -829,7 +832,9 @@ var VirtualList = function VirtualList(_ref) {
829 } 832 }
830 }; 833 };
831 834
832 - return /*#__PURE__*/React.createElement(React.Fragment, null, props.editable ? isSubCanEdit ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_Button, { 835 + return /*#__PURE__*/React.createElement("div", {
  836 + className: isFullscreen ? 'qx-virtual_full' : ''
  837 + }, props.editable ? isSubCanEdit ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_Button, {
833 type: 'text', 838 type: 'text',
834 size: "small", 839 size: "small",
835 icon: /*#__PURE__*/React.createElement(_CheckOutlined, null), 840 icon: /*#__PURE__*/React.createElement(_CheckOutlined, null),
@@ -898,7 +903,18 @@ var VirtualList = function VirtualList(_ref) { @@ -898,7 +903,18 @@ var VirtualList = function VirtualList(_ref) {
898 style: { 903 style: {
899 marginLeft: 8 904 marginLeft: 8
900 } 905 }
901 - }, /*#__PURE__*/React.createElement(_Space, null, "\u66F4\u591A\u64CD\u4F5C", /*#__PURE__*/React.createElement(_DownOutlined, null)))) : null), Array.isArray(props.buttons) ? props.buttons.map(function (item, idx) { 906 + }, /*#__PURE__*/React.createElement(_Space, null, "\u66F4\u591A\u64CD\u4F5C", /*#__PURE__*/React.createElement(_DownOutlined, null)))) : null, schema.fullscreen !== false ? /*#__PURE__*/React.createElement(_Tooltip, {
  907 + title: isFullscreen ? '退出全屏' : '全屏'
  908 + }, /*#__PURE__*/React.createElement(_Button, {
  909 + type: 'icon',
  910 + icon: isFullscreen ? /*#__PURE__*/React.createElement(_FullscreenExitOutlined, null) : /*#__PURE__*/React.createElement(_FullscreenOutlined, null),
  911 + onClick: function onClick() {
  912 + setFullscreen(!isFullscreen);
  913 + },
  914 + style: {
  915 + marginLeft: 10
  916 + }
  917 + })) : null), Array.isArray(props.buttons) ? props.buttons.map(function (item, idx) {
902 var callback = item.callback, 918 var callback = item.callback,
903 text = item.text, 919 text = item.text,
904 html = item.html; 920 html = item.html;
@@ -97,3 +97,18 @@ @@ -97,3 +97,18 @@
97 display: inline-block; 97 display: inline-block;
98 margin: 15px; 98 margin: 15px;
99 } 99 }
  100 +.qx-virtual_full {
  101 + position: fixed;
  102 + top: 0;
  103 + left: 0;
  104 + bottom: 0;
  105 + right: 0;
  106 + z-index: 999;
  107 + width: 100vw;
  108 + height: 100vh;
  109 + overflow: auto;
  110 + background: #fff;
  111 +}
  112 +.qx-virtual_full .qx-virtual-searchLine {
  113 + padding: 8px;
  114 +}
@@ -13,6 +13,10 @@ require("antd/es/alert/style"); @@ -13,6 +13,10 @@ require("antd/es/alert/style");
13 13
14 var _alert = _interopRequireDefault(require("antd/es/alert")); 14 var _alert = _interopRequireDefault(require("antd/es/alert"));
15 15
  16 +var _FullscreenOutlined2 = _interopRequireDefault(require("@ant-design/icons/lib/icons/FullscreenOutlined"));
  17 +
  18 +var _FullscreenExitOutlined2 = _interopRequireDefault(require("@ant-design/icons/lib/icons/FullscreenExitOutlined"));
  19 +
16 require("antd/es/dropdown/style"); 20 require("antd/es/dropdown/style");
17 21
18 var _dropdown = _interopRequireDefault(require("antd/es/dropdown")); 22 var _dropdown = _interopRequireDefault(require("antd/es/dropdown"));
@@ -234,6 +238,11 @@ var VirtualList = function VirtualList(_ref) { @@ -234,6 +238,11 @@ var VirtualList = function VirtualList(_ref) {
234 searchName = _useState12[0], 238 searchName = _useState12[0],
235 setSearchName = _useState12[1]; 239 setSearchName = _useState12[1];
236 240
  241 + var _useState13 = (0, _react.useState)(false),
  242 + _useState14 = _slicedToArray(_useState13, 2),
  243 + isFullscreen = _useState14[0],
  244 + setFullscreen = _useState14[1];
  245 +
237 var padding = (0, _react.useMemo)(function () { 246 var padding = (0, _react.useMemo)(function () {
238 return size === 'default' ? 32 : 16; 247 return size === 'default' ? 32 : 16;
239 }, [size]); 248 }, [size]);
@@ -468,11 +477,7 @@ var VirtualList = function VirtualList(_ref) { @@ -468,11 +477,7 @@ var VirtualList = function VirtualList(_ref) {
468 width: column.width ? parseInt(column.width) : FIELD_LENGTH, 477 width: column.width ? parseInt(column.width) : FIELD_LENGTH,
469 align: column.align || 'left', 478 align: column.align || 'left',
470 fixed: column.fixed || props.fixed && index < props.fixed, 479 fixed: column.fixed || props.fixed && index < props.fixed,
471 - title: /*#__PURE__*/_react.default.createElement("div", {  
472 - style: {  
473 - width: (parseInt(column.width) || FIELD_LENGTH) - padding + "px"  
474 - }  
475 - }, schema.required ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("span", { 480 + title: /*#__PURE__*/_react.default.createElement("div", null, schema.required ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("span", {
476 className: "fr-label-required" 481 className: "fr-label-required"
477 }, " *"), /*#__PURE__*/_react.default.createElement("span", null, schema.title)) : schema.title), 482 }, " *"), /*#__PURE__*/_react.default.createElement("span", null, schema.title)) : schema.title),
478 render: function render(value, record, index) { 483 render: function render(value, record, index) {
@@ -881,7 +886,9 @@ var VirtualList = function VirtualList(_ref) { @@ -881,7 +886,9 @@ var VirtualList = function VirtualList(_ref) {
881 } 886 }
882 }; 887 };
883 888
884 - return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, props.editable ? isSubCanEdit ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_button.default, { 889 + return /*#__PURE__*/_react.default.createElement("div", {
  890 + className: isFullscreen ? 'qx-virtual_full' : ''
  891 + }, props.editable ? isSubCanEdit ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_button.default, {
885 type: 'text', 892 type: 'text',
886 size: "small", 893 size: "small",
887 icon: /*#__PURE__*/_react.default.createElement(_CheckOutlined2.default, null), 894 icon: /*#__PURE__*/_react.default.createElement(_CheckOutlined2.default, null),
@@ -950,7 +957,18 @@ var VirtualList = function VirtualList(_ref) { @@ -950,7 +957,18 @@ var VirtualList = function VirtualList(_ref) {
950 style: { 957 style: {
951 marginLeft: 8 958 marginLeft: 8
952 } 959 }
953 - }, /*#__PURE__*/_react.default.createElement(_space.default, null, "\u66F4\u591A\u64CD\u4F5C", /*#__PURE__*/_react.default.createElement(_DownOutlined2.default, null)))) : null), Array.isArray(props.buttons) ? props.buttons.map(function (item, idx) { 960 + }, /*#__PURE__*/_react.default.createElement(_space.default, null, "\u66F4\u591A\u64CD\u4F5C", /*#__PURE__*/_react.default.createElement(_DownOutlined2.default, null)))) : null, schema.fullscreen !== false ? /*#__PURE__*/_react.default.createElement(_tooltip.default, {
  961 + title: isFullscreen ? '退出全屏' : '全屏'
  962 + }, /*#__PURE__*/_react.default.createElement(_button.default, {
  963 + type: 'icon',
  964 + icon: isFullscreen ? /*#__PURE__*/_react.default.createElement(_FullscreenExitOutlined2.default, null) : /*#__PURE__*/_react.default.createElement(_FullscreenOutlined2.default, null),
  965 + onClick: function onClick() {
  966 + setFullscreen(!isFullscreen);
  967 + },
  968 + style: {
  969 + marginLeft: 10
  970 + }
  971 + })) : null), Array.isArray(props.buttons) ? props.buttons.map(function (item, idx) {
954 var callback = item.callback, 972 var callback = item.callback,
955 text = item.text, 973 text = item.text,
956 html = item.html; 974 html = item.html;
@@ -97,3 +97,18 @@ @@ -97,3 +97,18 @@
97 display: inline-block; 97 display: inline-block;
98 margin: 15px; 98 margin: 15px;
99 } 99 }
  100 +.qx-virtual_full {
  101 + position: fixed;
  102 + top: 0;
  103 + left: 0;
  104 + bottom: 0;
  105 + right: 0;
  106 + z-index: 999;
  107 + width: 100vw;
  108 + height: 100vh;
  109 + overflow: auto;
  110 + background: #fff;
  111 +}
  112 +.qx-virtual_full .qx-virtual-searchLine {
  113 + padding: 8px;
  114 +}
1 { 1 {
2 "name": "@qx/form-render", 2 "name": "@qx/form-render",
3 - "version": "0.0.29", 3 + "version": "0.0.30",
4 "description": "通过 JSON Schema 生成标准 Form,常用于自定义搭建配置界面生成", 4 "description": "通过 JSON Schema 生成标准 Form,常用于自定义搭建配置界面生成",
5 "repository": { 5 "repository": {
6 "type": "git", 6 "type": "git",