linkmore-design 1.1.3 → 1.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/dist/CropImg/LmCropImg.d.ts +11 -0
  2. package/dist/CropImg/body/Operate.d.ts +5 -0
  3. package/dist/CropImg/body/index.d.ts +5 -0
  4. package/dist/CropImg/demos/basic.d.ts +2 -0
  5. package/dist/CropImg/fns/index.d.ts +14 -0
  6. package/dist/CropImg/index.d.ts +4 -0
  7. package/dist/CropImg/style/index.d.ts +1 -0
  8. package/dist/CropImg/style/variables.d.ts +1 -0
  9. package/dist/CropImg/utils.d.ts +18 -0
  10. package/dist/CropImg/wrapper/Container.d.ts +5 -0
  11. package/dist/CropImg/wrapper/Root.d.ts +3 -0
  12. package/dist/CropImg/wrapper/Wrapper.d.ts +5 -0
  13. package/dist/CropImg/wrapper/reducer.d.ts +13 -0
  14. package/dist/ImageViewer/LmImageViewer.d.ts +8 -0
  15. package/dist/ImageViewer/index.d.ts +1 -0
  16. package/dist/ImageViewer/wrapeer/Container.d.ts +4 -3
  17. package/dist/ImageViewer/wrapeer/Wrapper.d.ts +4 -3
  18. package/dist/LmUpload/components/Crop.d.ts +5 -0
  19. package/dist/LmUpload/demos/crop.d.ts +2 -0
  20. package/dist/LmUpload/demos/custom.d.ts +2 -0
  21. package/dist/LmUpload/fns/index.d.ts +2 -0
  22. package/dist/LmUpload/wrapper/reducer.d.ts +1 -0
  23. package/dist/index.d.ts +5 -0
  24. package/dist/index.umd.js +3023 -27
  25. package/dist/index.umd.min.js +46 -18
  26. package/dist/variables.css +90 -30
  27. package/es/CardTable/pager/TablePagination.js +1 -3
  28. package/es/CardTable/pager/index.js +0 -1
  29. package/es/CropImg/LmCropImg.d.ts +11 -0
  30. package/es/CropImg/LmCropImg.js +17 -0
  31. package/es/CropImg/body/Operate.d.ts +5 -0
  32. package/es/CropImg/body/Operate.js +90 -0
  33. package/es/CropImg/body/index.d.ts +5 -0
  34. package/es/CropImg/body/index.js +46 -0
  35. package/es/CropImg/fns/index.d.ts +14 -0
  36. package/es/CropImg/fns/index.js +50 -0
  37. package/es/CropImg/index.d.ts +4 -0
  38. package/es/CropImg/index.js +4 -0
  39. package/es/CropImg/style/index.css +17 -0
  40. package/es/CropImg/style/index.js +3 -0
  41. package/es/CropImg/style/variables.css +17 -0
  42. package/es/CropImg/style/variables.js +3 -0
  43. package/es/CropImg/utils.js +161 -0
  44. package/es/CropImg/wrapper/Container.d.ts +5 -0
  45. package/es/CropImg/wrapper/Container.js +107 -0
  46. package/es/CropImg/wrapper/Root.d.ts +3 -0
  47. package/es/CropImg/wrapper/Root.js +44 -0
  48. package/es/CropImg/wrapper/Wrapper.d.ts +5 -0
  49. package/es/CropImg/wrapper/Wrapper.js +11 -0
  50. package/es/CropImg/wrapper/reducer.d.ts +13 -0
  51. package/es/CropImg/wrapper/reducer.js +33 -0
  52. package/es/ImageViewer/LmImageViewer.d.ts +8 -0
  53. package/es/ImageViewer/index.d.ts +1 -0
  54. package/es/ImageViewer/index.js +1 -0
  55. package/es/ImageViewer/wrapeer/Container.d.ts +4 -3
  56. package/es/ImageViewer/wrapeer/Container.js +1 -1
  57. package/es/ImageViewer/wrapeer/Wrapper.d.ts +4 -3
  58. package/es/ImageViewer/wrapeer/Wrapper.js +1 -1
  59. package/es/LmFilter/components/CheckboxFilter.js +7 -4
  60. package/es/LmFilter/filterFns/index.js +15 -3
  61. package/es/LmFilter/style/index.css +73 -30
  62. package/es/LmFilter/style/variables.css +73 -30
  63. package/es/LmTable/Table.js +3 -2
  64. package/es/LmUpload/LmUpload.js +1 -0
  65. package/es/LmUpload/components/Crop.d.ts +5 -0
  66. package/es/LmUpload/components/Crop.js +23 -0
  67. package/es/LmUpload/fns/index.d.ts +2 -0
  68. package/es/LmUpload/fns/index.js +90 -14
  69. package/es/LmUpload/wrapper/UploadWrapper.js +3 -0
  70. package/es/LmUpload/wrapper/reducer.d.ts +1 -0
  71. package/es/LmUpload/wrapper/reducer.js +9 -2
  72. package/es/index.d.ts +5 -0
  73. package/es/index.js +4 -1
  74. package/es/styles/variables.css +90 -30
  75. package/lib/CardTable/pager/TablePagination.js +1 -3
  76. package/lib/CardTable/pager/index.js +0 -1
  77. package/lib/CropImg/LmCropImg.d.ts +11 -0
  78. package/lib/CropImg/LmCropImg.js +31 -0
  79. package/lib/CropImg/body/Operate.d.ts +5 -0
  80. package/lib/CropImg/body/Operate.js +102 -0
  81. package/lib/CropImg/body/index.d.ts +5 -0
  82. package/lib/CropImg/body/index.js +60 -0
  83. package/lib/CropImg/fns/index.d.ts +14 -0
  84. package/lib/CropImg/fns/index.js +60 -0
  85. package/lib/CropImg/index.d.ts +4 -0
  86. package/lib/CropImg/index.js +33 -0
  87. package/lib/CropImg/style/index.css +17 -0
  88. package/lib/CropImg/style/index.js +3 -0
  89. package/lib/CropImg/style/variables.css +17 -0
  90. package/lib/CropImg/style/variables.js +3 -0
  91. package/lib/CropImg/utils.js +161 -0
  92. package/lib/CropImg/wrapper/Container.d.ts +5 -0
  93. package/lib/CropImg/wrapper/Container.js +124 -0
  94. package/lib/CropImg/wrapper/Root.d.ts +3 -0
  95. package/lib/CropImg/wrapper/Root.js +61 -0
  96. package/lib/CropImg/wrapper/Wrapper.d.ts +5 -0
  97. package/lib/CropImg/wrapper/Wrapper.js +23 -0
  98. package/lib/CropImg/wrapper/reducer.d.ts +13 -0
  99. package/lib/CropImg/wrapper/reducer.js +45 -0
  100. package/lib/ImageViewer/LmImageViewer.d.ts +8 -0
  101. package/lib/ImageViewer/index.d.ts +1 -0
  102. package/lib/ImageViewer/index.js +14 -2
  103. package/lib/ImageViewer/wrapeer/Container.d.ts +4 -3
  104. package/lib/ImageViewer/wrapeer/Container.js +2 -1
  105. package/lib/ImageViewer/wrapeer/Wrapper.d.ts +4 -3
  106. package/lib/ImageViewer/wrapeer/Wrapper.js +2 -1
  107. package/lib/LmFilter/components/CheckboxFilter.js +7 -4
  108. package/lib/LmFilter/filterFns/index.js +15 -3
  109. package/lib/LmFilter/style/index.css +73 -30
  110. package/lib/LmFilter/style/variables.css +73 -30
  111. package/lib/LmTable/Table.js +3 -2
  112. package/lib/LmUpload/LmUpload.js +1 -0
  113. package/lib/LmUpload/components/Crop.d.ts +5 -0
  114. package/lib/LmUpload/components/Crop.js +35 -0
  115. package/lib/LmUpload/fns/index.d.ts +2 -0
  116. package/lib/LmUpload/fns/index.js +90 -14
  117. package/lib/LmUpload/wrapper/UploadWrapper.js +4 -0
  118. package/lib/LmUpload/wrapper/reducer.d.ts +1 -0
  119. package/lib/LmUpload/wrapper/reducer.js +9 -2
  120. package/lib/index.d.ts +5 -0
  121. package/lib/index.js +30 -3
  122. package/lib/styles/variables.css +90 -30
  123. package/package.json +3 -1
  124. package/dist/LmUpload/components/card.d.ts +0 -2
  125. package/es/LmUpload/components/card.d.ts +0 -2
  126. package/es/LmUpload/components/card.js +0 -9
  127. package/lib/LmUpload/components/card.d.ts +0 -2
  128. package/lib/LmUpload/components/card.js +0 -19
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.dataURLtoBlob = exports.createImage = exports.blobToFile = void 0;
9
+ exports.getCroppedImg = getCroppedImg;
10
+ exports.getRadianAngle = getRadianAngle;
11
+ exports.rotateSize = rotateSize;
12
+
13
+ var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/regeneratorRuntime"));
14
+
15
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
16
+
17
+ // dataURL转Blob
18
+ var dataURLtoBlob = function dataURLtoBlob(base64Url) {
19
+ var bytes = window.atob(base64Url.split(',')[1]);
20
+ var array = [];
21
+
22
+ for (var i = 0; i < bytes.length; i += 1) {
23
+ array.push(bytes.charCodeAt(i));
24
+ }
25
+
26
+ return new Blob([new Uint8Array(array)], {
27
+ type: 'image/png'
28
+ });
29
+ }; // 将blob转换为file
30
+
31
+
32
+ exports.dataURLtoBlob = dataURLtoBlob;
33
+
34
+ var blobToFile = function blobToFile(theBlob, fileName) {
35
+ theBlob.lastModifiedDate = new Date();
36
+ theBlob.name = fileName;
37
+ return theBlob;
38
+ };
39
+
40
+ exports.blobToFile = blobToFile;
41
+
42
+ var createImage = function createImage(url) {
43
+ return new Promise(function (resolve, reject) {
44
+ var image = new Image();
45
+ image.addEventListener('load', function () {
46
+ return resolve(image);
47
+ });
48
+ image.addEventListener('error', function (error) {
49
+ return reject(error);
50
+ });
51
+ image.setAttribute('crossOrigin', 'anonymous'); // needed to avoid cross-origin issues on CodeSandbox
52
+
53
+ image.src = url;
54
+ });
55
+ };
56
+
57
+ exports.createImage = createImage;
58
+
59
+ function getRadianAngle(degreeValue) {
60
+ return degreeValue * Math.PI / 180;
61
+ }
62
+ /**
63
+ * Returns the new bounding area of a rotated rectangle.
64
+ */
65
+
66
+
67
+ function rotateSize(width, height, rotation) {
68
+ var rotRad = getRadianAngle(rotation);
69
+ return {
70
+ width: Math.abs(Math.cos(rotRad) * width) + Math.abs(Math.sin(rotRad) * height),
71
+ height: Math.abs(Math.sin(rotRad) * width) + Math.abs(Math.cos(rotRad) * height)
72
+ };
73
+ }
74
+ /**
75
+ * This function was adapted from the one in the ReadMe of https://github.com/DominicTobias/react-image-crop
76
+ */
77
+
78
+
79
+ function getCroppedImg(_x, _x2) {
80
+ return _getCroppedImg.apply(this, arguments);
81
+ }
82
+
83
+ function _getCroppedImg() {
84
+ _getCroppedImg = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(imageSrc, pixelCrop) {
85
+ var rotation,
86
+ flip,
87
+ image,
88
+ canvas,
89
+ ctx,
90
+ rotRad,
91
+ _rotateSize,
92
+ bBoxWidth,
93
+ bBoxHeight,
94
+ data,
95
+ _args = arguments;
96
+
97
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
98
+ while (1) {
99
+ switch (_context.prev = _context.next) {
100
+ case 0:
101
+ rotation = _args.length > 2 && _args[2] !== undefined ? _args[2] : 0;
102
+ flip = _args.length > 3 && _args[3] !== undefined ? _args[3] : {
103
+ horizontal: false,
104
+ vertical: false
105
+ };
106
+ _context.next = 4;
107
+ return createImage(imageSrc);
108
+
109
+ case 4:
110
+ image = _context.sent;
111
+ canvas = document.createElement('canvas');
112
+ ctx = canvas.getContext('2d');
113
+
114
+ if (ctx) {
115
+ _context.next = 9;
116
+ break;
117
+ }
118
+
119
+ return _context.abrupt("return", null);
120
+
121
+ case 9:
122
+ rotRad = getRadianAngle(rotation); // calculate bounding box of the rotated image
123
+
124
+ _rotateSize = rotateSize(image.width, image.height, rotation), bBoxWidth = _rotateSize.width, bBoxHeight = _rotateSize.height; // set canvas size to match the bounding box
125
+
126
+ canvas.width = bBoxWidth;
127
+ canvas.height = bBoxHeight; // translate canvas context to a central location to allow rotating and flipping around the center
128
+
129
+ ctx.translate(bBoxWidth / 2, bBoxHeight / 2);
130
+ ctx.rotate(rotRad);
131
+ ctx.scale(flip.horizontal ? -1 : 1, flip.vertical ? -1 : 1);
132
+ ctx.translate(-image.width / 2, -image.height / 2); // draw rotated image
133
+
134
+ ctx.drawImage(image, 0, 0); // croppedAreaPixels values are bounding box relative
135
+ // extract the cropped image using these values
136
+
137
+ data = ctx.getImageData(pixelCrop.x, pixelCrop.y, pixelCrop.width, pixelCrop.height); // set canvas width to final desired crop size - this will clear existing context
138
+
139
+ canvas.width = pixelCrop.width;
140
+ canvas.height = pixelCrop.height; // paste generated rotate image at the top left corner
141
+
142
+ ctx.putImageData(data, 0, 0); // As Base64 string
143
+ // return canvas.toDataURL('image/jpeg');
144
+ // As a blob
145
+
146
+ return _context.abrupt("return", new Promise(function (resolve, reject) {
147
+ canvas.toBlob(function (file) {
148
+ // resolve(URL.createObjectURL(file))
149
+ resolve(file);
150
+ }, 'image/jpeg');
151
+ }));
152
+
153
+ case 23:
154
+ case "end":
155
+ return _context.stop();
156
+ }
157
+ }
158
+ }, _callee);
159
+ }));
160
+ return _getCroppedImg.apply(this, arguments);
161
+ }
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ declare const _default: React.MemoExoticComponent<({ instance }: {
3
+ instance: any;
4
+ }) => JSX.Element>;
5
+ export default _default;
@@ -0,0 +1,107 @@
1
+ import _regeneratorRuntime from "@babel/runtime/helpers/esm/regeneratorRuntime";
2
+
3
+ var __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {
4
+ function adopt(value) {
5
+ return value instanceof P ? value : new P(function (resolve) {
6
+ resolve(value);
7
+ });
8
+ }
9
+
10
+ return new (P || (P = Promise))(function (resolve, reject) {
11
+ function fulfilled(value) {
12
+ try {
13
+ step(generator.next(value));
14
+ } catch (e) {
15
+ reject(e);
16
+ }
17
+ }
18
+
19
+ function rejected(value) {
20
+ try {
21
+ step(generator["throw"](value));
22
+ } catch (e) {
23
+ reject(e);
24
+ }
25
+ }
26
+
27
+ function step(result) {
28
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
29
+ }
30
+
31
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
32
+ });
33
+ };
34
+
35
+ import React, { useRef } from 'react';
36
+ import { Modal } from 'linkmore-design';
37
+ import Body from '../body';
38
+ import Operate from '../body/Operate'; // import { dataURLtoBlob, blobToFile } from '../utils'
39
+
40
+ var LmBoxContainer = function LmBoxContainer(_ref) {
41
+ var instance = _ref.instance;
42
+ var visible = instance.visible,
43
+ onClose = instance.onClose,
44
+ state = instance.state,
45
+ dispatch = instance.dispatch,
46
+ getCropImageAsync = instance.getCropImageAsync,
47
+ file = instance.file;
48
+ var boxContainerRef = useRef(null); // 关闭时初始化
49
+
50
+ var handleClose = function handleClose(blobFile) {
51
+ dispatch({
52
+ type: 'changeResult',
53
+ result: {
54
+ visible: false
55
+ }
56
+ });
57
+ onClose === null || onClose === void 0 ? void 0 : onClose(blobFile, file);
58
+ };
59
+
60
+ var handleOk = function handleOk() {
61
+ return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
62
+ var croppedImage;
63
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
64
+ while (1) {
65
+ switch (_context.prev = _context.next) {
66
+ case 0:
67
+ _context.next = 2;
68
+ return getCropImageAsync();
69
+
70
+ case 2:
71
+ croppedImage = _context.sent;
72
+ dispatch({
73
+ type: 'changeResult',
74
+ result: {
75
+ croppedImage: croppedImage
76
+ }
77
+ });
78
+ handleClose(croppedImage);
79
+
80
+ case 5:
81
+ case "end":
82
+ return _context.stop();
83
+ }
84
+ }
85
+ }, _callee);
86
+ }));
87
+ };
88
+
89
+ var config = {
90
+ title: '编辑图片',
91
+ open: visible !== null && visible !== void 0 ? visible : state.visible,
92
+ onCancel: function onCancel() {
93
+ return handleClose(false);
94
+ },
95
+ onOk: handleOk
96
+ };
97
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Modal, Object.assign({}, config), /*#__PURE__*/React.createElement("div", {
98
+ ref: boxContainerRef,
99
+ className: "lm_cutimg_container"
100
+ }, /*#__PURE__*/React.createElement(Body, {
101
+ instance: instance
102
+ }), /*#__PURE__*/React.createElement(Operate, {
103
+ instance: instance
104
+ }))));
105
+ };
106
+
107
+ export default /*#__PURE__*/React.memo(LmBoxContainer);
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const LmBox: React.ForwardRefExoticComponent<React.RefAttributes<unknown>>;
3
+ export default LmBox;
@@ -0,0 +1,44 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
+ import React, { useMemo, useReducer, forwardRef, useImperativeHandle } from 'react';
3
+ import reducer, { initialState as initReducerState } from './reducer';
4
+ import useCoreOptions from '../fns';
5
+ import Wrapper from './Wrapper';
6
+ var LmBox = /*#__PURE__*/forwardRef(function (props, ref) {
7
+ var initialState = useMemo(function () {
8
+ return initReducerState();
9
+ }, []);
10
+
11
+ var _useReducer = useReducer(reducer, initialState),
12
+ _useReducer2 = _slicedToArray(_useReducer, 2),
13
+ state = _useReducer2[0],
14
+ dispatch = _useReducer2[1]; // 获取核心Methods
15
+
16
+
17
+ var _useCoreOptions = useCoreOptions({
18
+ state: state,
19
+ dispatch: dispatch,
20
+ props: props
21
+ }),
22
+ CoreMethds = _useCoreOptions.CoreMethds,
23
+ RefMethods = _useCoreOptions.RefMethods; // 组件实例
24
+
25
+
26
+ var instance = useMemo(function () {
27
+ return Object.assign(Object.assign(Object.assign(Object.assign({}, props), CoreMethds), RefMethods), {
28
+ state: state,
29
+ dispatch: dispatch
30
+ });
31
+ }, [props, RefMethods, state, dispatch]); // 向外暴露出的方法
32
+
33
+ useImperativeHandle(ref, function () {
34
+ return Object.assign({
35
+ getState: function getState() {
36
+ return state;
37
+ }
38
+ }, RefMethods);
39
+ });
40
+ return /*#__PURE__*/React.createElement(Wrapper, {
41
+ instance: instance
42
+ });
43
+ });
44
+ export default LmBox;
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ declare const _default: React.MemoExoticComponent<({ instance }: {
3
+ instance: any;
4
+ }) => JSX.Element>;
5
+ export default _default;
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import Container from './Container';
3
+
4
+ var Wrapper = function Wrapper(_ref) {
5
+ var instance = _ref.instance;
6
+ return /*#__PURE__*/React.createElement(Container, {
7
+ instance: instance
8
+ });
9
+ };
10
+
11
+ export default /*#__PURE__*/React.memo(Wrapper);
@@ -0,0 +1,13 @@
1
+ export declare const reducer: (state: any, action: any) => any;
2
+ export declare const initialState: () => {
3
+ visible: boolean;
4
+ zoom: number;
5
+ rotation: number;
6
+ crop: {
7
+ x: number;
8
+ y: number;
9
+ };
10
+ croppedAreaPixels: any;
11
+ croppedImage: any;
12
+ };
13
+ export default reducer;
@@ -0,0 +1,33 @@
1
+ var defaultState = {
2
+ visible: false,
3
+ zoom: 1,
4
+ rotation: 0,
5
+ crop: {
6
+ x: 0,
7
+ y: 0
8
+ },
9
+ croppedAreaPixels: null,
10
+ croppedImage: null // 裁剪后的图片File
11
+
12
+ }; // 状态管理操作
13
+
14
+ export var reducer = function reducer(state, action) {
15
+ var result = action.result,
16
+ init = action.init;
17
+
18
+ switch (action.type) {
19
+ case 'changeInit':
20
+ return Object.assign(Object.assign(Object.assign({}, state), defaultState), init);
21
+
22
+ case 'changeResult':
23
+ return Object.assign(Object.assign({}, state), result);
24
+
25
+ default:
26
+ throw new Error();
27
+ }
28
+ }; // 仅在初始化时触发一次
29
+
30
+ export var initialState = function initialState() {
31
+ return Object.assign({}, defaultState);
32
+ };
33
+ export default reducer;
@@ -1,4 +1,12 @@
1
1
  import React from 'react';
2
+ export interface ImageViewerProps {
3
+ visible?: boolean;
4
+ urlList?: any;
5
+ zIndex?: number;
6
+ initialIndex?: number;
7
+ infinite?: boolean;
8
+ hideOnClickModal?: boolean;
9
+ }
2
10
  declare const _default: React.ForwardRefExoticComponent<Pick<{
3
11
  [x: string]: any;
4
12
  }, string | number> & React.RefAttributes<unknown>>;
@@ -1,2 +1,3 @@
1
1
  import LmImageViewer from './LmImageViewer';
2
+ export * from './LmImageViewer';
2
3
  export default LmImageViewer;
@@ -1,2 +1,3 @@
1
1
  import LmImageViewer from './LmImageViewer';
2
+ export * from './LmImageViewer';
2
3
  export default LmImageViewer;
@@ -1,4 +1,5 @@
1
- declare const LmImageViewerContainer: ({ instance }: {
1
+ import React from 'react';
2
+ declare const _default: React.MemoExoticComponent<({ instance }: {
2
3
  instance: any;
3
- }) => JSX.Element;
4
- export default LmImageViewerContainer;
4
+ }) => JSX.Element>;
5
+ export default _default;
@@ -28,4 +28,4 @@ var LmImageViewerContainer = function LmImageViewerContainer(_ref) {
28
28
  })));
29
29
  };
30
30
 
31
- export default LmImageViewerContainer;
31
+ export default /*#__PURE__*/React.memo(LmImageViewerContainer);
@@ -1,4 +1,5 @@
1
- declare const LmImageViewerWrapper: ({ instance }: {
1
+ import React from 'react';
2
+ declare const _default: React.MemoExoticComponent<({ instance }: {
2
3
  instance: any;
3
- }) => JSX.Element;
4
- export default LmImageViewerWrapper;
4
+ }) => JSX.Element>;
5
+ export default _default;
@@ -25,4 +25,4 @@ var LmImageViewerWrapper = function LmImageViewerWrapper(_ref) {
25
25
  }));
26
26
  };
27
27
 
28
- export default LmImageViewerWrapper;
28
+ export default /*#__PURE__*/React.memo(LmImageViewerWrapper);
@@ -104,7 +104,10 @@ var CheckboxFilter = function CheckboxFilter(_ref) {
104
104
  return !options.some(function (v) {
105
105
  return v.value === value;
106
106
  });
107
- }) : (0, _utils.uniqueFunc)([].concat((0, _toConsumableArray2.default)(checkedValues), (0, _toConsumableArray2.default)(options)), 'value');
107
+ }) : (0, _utils.uniqueFunc)([].concat((0, _toConsumableArray2.default)(checkedValues), (0, _toConsumableArray2.default)(options.map(function (_ref3) {
108
+ var value = _ref3.value;
109
+ return value;
110
+ }))), 'value');
108
111
  setCheckedValues(nValue);
109
112
  }; // 取消 不执行查询操作 关闭下拉框
110
113
 
@@ -157,9 +160,9 @@ var CheckboxFilter = function CheckboxFilter(_ref) {
157
160
  }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.VirtualList, {
158
161
  options: options,
159
162
  className: "filter_list"
160
- }, function (_ref3) {
161
- var item = _ref3.item,
162
- resetProps = (0, _objectWithoutProperties2.default)(_ref3, _excluded);
163
+ }, function (_ref4) {
164
+ var item = _ref4.item,
165
+ resetProps = (0, _objectWithoutProperties2.default)(_ref4, _excluded);
163
166
  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, resetProps, {
164
167
  className: (0, _classnames.default)('filter_item', {
165
168
  checked: checkedValues.some(function (value) {
@@ -471,14 +471,26 @@ var useCoreOptions = function useCoreOptions(_ref) {
471
471
  filterQuery: filterQuery,
472
472
  type: 'basic'
473
473
  };
474
- }, [state, dataSource]); // 设置筛选的值 itemValue => String || Array => ['', '', ...]
474
+ }, [state, dataSource]);
475
+ /*
476
+ * 设置筛选的值 itemValue => String || Array => ['', '', ...]
477
+ * 后端仅接受数组包字符串形式, 不接受数值及布尔值
478
+ */
475
479
 
476
480
  var setFilterValue = useCallback(function (itemValue, item) {
477
481
  var field = item.field;
478
482
 
479
483
  if (field) {
480
484
  // 将结果转换为字符串
481
- var stringValue = enableAutoString ? String(itemValue) : itemValue; // 基础查询数据(受控数据)
485
+ var isArray = Array.isArray(itemValue);
486
+
487
+ var transformString = function transformString(val) {
488
+ return isArray ? val.map(function (v) {
489
+ return String(v);
490
+ }) : String(val);
491
+ };
492
+
493
+ var stringValue = enableAutoString ? transformString(itemValue) : itemValue; // 基础查询数据(受控数据)
482
494
 
483
495
  var basicFilter = Object.assign(Object.assign({}, state.basicFilter), _defineProperty({}, field, stringValue)); // 外部查询数据结构
484
496
 
@@ -486,7 +498,7 @@ var useCoreOptions = function useCoreOptions(_ref) {
486
498
  fieldName: field,
487
499
  fieldType: item.valueType || 'string',
488
500
  type: item.type,
489
- value: Array.isArray(stringValue) ? stringValue : [stringValue],
501
+ value: isArray ? stringValue : [stringValue],
490
502
  operator: item.operator || 'equal'
491
503
  })); // 数据清除时不返回结构体
492
504