linkmore-design 1.0.72 → 1.0.75

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 (87) hide show
  1. package/dist/Approval/index.d.ts +1 -0
  2. package/dist/Approval/type.d.ts +1 -1
  3. package/dist/CardTable/utils.d.ts +1 -1
  4. package/dist/ConfigProvider/demos/basic.d.ts +2 -0
  5. package/dist/ConfigProvider/index.d.ts +2 -0
  6. package/dist/ConfigProvider/style/index.d.ts +1 -0
  7. package/dist/ImageViewer/components/Arrows.d.ts +4 -0
  8. package/dist/ImageViewer/components/Carousel.d.ts +4 -0
  9. package/dist/ImageViewer/components/Operate.d.ts +4 -0
  10. package/dist/ImageViewer/components/Thumb.d.ts +4 -0
  11. package/dist/ImageViewer/fns/index.d.ts +20 -0
  12. package/dist/ImageViewer/wrapeer/reducer.d.ts +10 -0
  13. package/dist/Locale/index.d.ts +6 -0
  14. package/dist/Locale/style/index.d.ts +1 -0
  15. package/dist/Row/index.d.ts +1 -1
  16. package/dist/index.d.ts +23 -2
  17. package/dist/index.umd.js +115051 -114155
  18. package/dist/index.umd.min.js +20 -20
  19. package/es/Approval/index.d.ts +1 -0
  20. package/es/ConfigProvider/index.js +15 -0
  21. package/es/ConfigProvider/style/index.css +141 -0
  22. package/es/ConfigProvider/style/index.js +3 -0
  23. package/es/ImageViewer/LmImageViewer.js +7 -8
  24. package/es/ImageViewer/components/Arrows.d.ts +4 -0
  25. package/es/ImageViewer/components/Arrows.js +38 -0
  26. package/es/ImageViewer/components/Carousel.d.ts +4 -0
  27. package/es/ImageViewer/components/Carousel.js +71 -0
  28. package/es/ImageViewer/components/Operate.d.ts +4 -0
  29. package/es/ImageViewer/components/Operate.js +40 -0
  30. package/es/ImageViewer/components/Thumb.d.ts +4 -0
  31. package/es/ImageViewer/components/Thumb.js +37 -0
  32. package/es/ImageViewer/fns/index.d.ts +20 -0
  33. package/es/ImageViewer/fns/index.js +100 -0
  34. package/es/ImageViewer/style/index.css +104 -2
  35. package/es/ImageViewer/wrapeer/Container.js +22 -4
  36. package/es/ImageViewer/wrapeer/Root.js +30 -3
  37. package/es/ImageViewer/wrapeer/Wrapper.js +16 -2
  38. package/es/ImageViewer/wrapeer/reducer.d.ts +10 -0
  39. package/es/ImageViewer/wrapeer/reducer.js +52 -0
  40. package/es/LmFilter/Controls/index.js +6 -5
  41. package/es/LmFilter/customFilter/index.js +1 -1
  42. package/es/LmFilter/customFilter/saveModal.js +1 -1
  43. package/es/LmFilter/customFilter/valueDrawer.js +7 -10
  44. package/es/Locale/index.d.ts +6 -0
  45. package/es/Locale/index.js +9 -0
  46. package/es/Locale/style/index.css +141 -0
  47. package/es/Locale/style/index.js +3 -0
  48. package/es/Pagination/index.js +18 -5
  49. package/es/Row/index.d.ts +1 -1
  50. package/es/Timeline/style/index.css +3 -0
  51. package/es/index.d.ts +23 -2
  52. package/es/index.js +13 -2
  53. package/lib/Approval/index.d.ts +1 -0
  54. package/lib/ConfigProvider/index.js +15 -0
  55. package/lib/ConfigProvider/style/index.css +141 -0
  56. package/lib/ConfigProvider/style/index.js +3 -0
  57. package/lib/ImageViewer/LmImageViewer.js +7 -8
  58. package/lib/ImageViewer/components/Arrows.d.ts +4 -0
  59. package/lib/ImageViewer/components/Arrows.js +49 -0
  60. package/lib/ImageViewer/components/Carousel.d.ts +4 -0
  61. package/lib/ImageViewer/components/Carousel.js +82 -0
  62. package/lib/ImageViewer/components/Operate.d.ts +4 -0
  63. package/lib/ImageViewer/components/Operate.js +51 -0
  64. package/lib/ImageViewer/components/Thumb.d.ts +4 -0
  65. package/lib/ImageViewer/components/Thumb.js +50 -0
  66. package/lib/ImageViewer/fns/index.d.ts +20 -0
  67. package/lib/ImageViewer/fns/index.js +108 -0
  68. package/lib/ImageViewer/style/index.css +104 -2
  69. package/lib/ImageViewer/wrapeer/Container.js +26 -4
  70. package/lib/ImageViewer/wrapeer/Root.js +34 -4
  71. package/lib/ImageViewer/wrapeer/Wrapper.js +16 -2
  72. package/lib/ImageViewer/wrapeer/reducer.d.ts +10 -0
  73. package/lib/ImageViewer/wrapeer/reducer.js +64 -0
  74. package/lib/LmFilter/Controls/index.js +6 -5
  75. package/lib/LmFilter/customFilter/index.js +1 -1
  76. package/lib/LmFilter/customFilter/saveModal.js +1 -1
  77. package/lib/LmFilter/customFilter/valueDrawer.js +7 -10
  78. package/lib/Locale/index.d.ts +6 -0
  79. package/lib/Locale/index.js +22 -0
  80. package/lib/Locale/style/index.css +141 -0
  81. package/lib/Locale/style/index.js +3 -0
  82. package/lib/Pagination/index.js +20 -5
  83. package/lib/Row/index.d.ts +1 -1
  84. package/lib/Timeline/style/index.css +3 -0
  85. package/lib/index.d.ts +23 -2
  86. package/lib/index.js +91 -3
  87. package/package.json +1 -1
@@ -2,3 +2,4 @@ import React from 'react';
2
2
  import { IApprovalProps } from './type';
3
3
  declare const LMApproval: React.FC<IApprovalProps>;
4
4
  export default LMApproval;
5
+ export type { ApprovalType, StatusType, IApprovalItemProps, IApprovalProps } from './type';
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ require("antd/es/config-provider/style");
11
+
12
+ var _configProvider = _interopRequireDefault(require("antd/es/config-provider"));
13
+
14
+ var _default = _configProvider.default;
15
+ exports.default = _default;
@@ -0,0 +1,141 @@
1
+ .lm-radio {
2
+ font-size: 12px;
3
+ line-height: 20px;
4
+ color: var(--font-color);
5
+ }
6
+ .lm-radio > span:last-child {
7
+ padding: 0;
8
+ margin: 0 8px;
9
+ max-width: 96px;
10
+ overflow: hidden;
11
+ white-space: nowrap;
12
+ }
13
+ .lm-radio .ant-radio .ant-radio-inner {
14
+ border-color: var(--stroke-color);
15
+ }
16
+ .lm-radio .ant-radio:hover .ant-radio-inner {
17
+ border-color: var(--primary-color);
18
+ }
19
+ .lm-radio .ant-radio-disabled.ant-radio-checked .ant-radio-inner:after {
20
+ background-color: var(--tip-text-color);
21
+ }
22
+ .lm-radio .ant-radio-disabled .ant-radio-inner {
23
+ background-color: var(--background-color);
24
+ border-color: var(--stroke-color) !important;
25
+ }
26
+ .lm-radio .ant-radio-disabled + span {
27
+ color: var(--disabled-font-color);
28
+ }
29
+ .lm-radio-group .ant-radio-button-wrapper {
30
+ font-size: 12px;
31
+ height: 32px;
32
+ padding: 0px 12px;
33
+ color: var(--font-color);
34
+ vertical-align: middle;
35
+ }
36
+ .lm-radio-group .ant-radio-button-wrapper .anticon {
37
+ font-size: 16px;
38
+ vertical-align: middle;
39
+ line-height: 1;
40
+ }
41
+ .lm-radio-group .ant-radio-button-wrapper:hover {
42
+ color: var(--primary-color);
43
+ }
44
+ .lm-radio-group .ant-radio-button-wrapper > span:last-child {
45
+ display: inline-block;
46
+ font-size: 12px;
47
+ max-width: 96px;
48
+ overflow: hidden;
49
+ white-space: nowrap;
50
+ }
51
+ .lm-radio-group .ant-radio-button-wrapper-checked:not([class*=' ant-radio-button-wrapper-disabled']) .ant-radio-button-wrapper:first-child {
52
+ border-right-color: var(--primary-hover-color);
53
+ }
54
+ .lm-radio-group .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled) {
55
+ color: var(--primary-color);
56
+ border-color: var(--primary-color);
57
+ }
58
+ .lm-radio-group .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):first-child {
59
+ border-color: var(--primary-color);
60
+ }
61
+ .lm-radio-group .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover {
62
+ color: var(--primary-hover-color);
63
+ border-color: var(--primary-hover-color);
64
+ }
65
+ .lm-radio-group.ant-radio-group-large .ant-radio-button-wrapper {
66
+ line-height: 38px;
67
+ height: 40px;
68
+ }
69
+ .lm-radio-group.ant-radio-group-large .ant-radio-button-wrapper > span:last-child {
70
+ line-height: 38px;
71
+ }
72
+ .lm-radio-group.ant-radio-group-small .ant-radio-button-wrapper {
73
+ line-height: 22px;
74
+ height: 24px;
75
+ padding: 0px 8px;
76
+ }
77
+ .lm-radio-group.ant-radio-group-small .ant-radio-button-wrapper > span:last-child {
78
+ line-height: 22px;
79
+ }
80
+ .lm-radio-group .ant-radio-wrapper {
81
+ font-size: 12px;
82
+ line-height: 20px;
83
+ color: var(--font-color);
84
+ }
85
+ .lm-radio-group .ant-radio-wrapper > span:last-child {
86
+ padding: 0;
87
+ margin: 0 8px;
88
+ max-width: 96px;
89
+ overflow: hidden;
90
+ white-space: nowrap;
91
+ }
92
+ .lm-radio-group .ant-radio-wrapper .ant-radio .ant-radio-inner {
93
+ border-color: var(--stroke-color);
94
+ }
95
+ .lm-radio-group .ant-radio-wrapper .ant-radio:hover .ant-radio-inner {
96
+ border-color: var(--primary-color);
97
+ }
98
+ .lm-radio-group .ant-radio-wrapper .ant-radio-disabled.ant-radio-checked .ant-radio-inner:after {
99
+ background-color: var(--tip-text-color);
100
+ }
101
+ .lm-radio-group .ant-radio-wrapper .ant-radio-disabled .ant-radio-inner {
102
+ background-color: var(--background-color);
103
+ border-color: var(--stroke-color) !important;
104
+ }
105
+ .lm-radio-group .ant-radio-wrapper .ant-radio-disabled + span {
106
+ color: var(--disabled-font-color);
107
+ }
108
+ .lm-radio-group .ant-radio-button-wrapper-disabled {
109
+ color: var(--disabled-font-color);
110
+ background-color: var(--disabled-bg-color);
111
+ border-color: var(--stroke-color);
112
+ }
113
+ .lm-radio-group .ant-radio-button-wrapper-disabled.ant-radio-button-wrapper-checked {
114
+ color: #b8b8b8 !important;
115
+ background-color: var(--background-color-hover);
116
+ border-color: var(--stroke-color);
117
+ }
118
+ .lm-radio-group .ant-radio-button-wrapper-disabled:hover {
119
+ color: var(--disabled-font-color);
120
+ }
121
+ .lm-radio-group.lm-radio-group-row {
122
+ display: flex;
123
+ flex-direction: row;
124
+ }
125
+ .lm-radio-group.lm-radio-group-column {
126
+ display: flex;
127
+ flex-direction: column;
128
+ }
129
+ .lm-radio-group.lm-radio-group-column .lm-radio {
130
+ margin-bottom: 12px;
131
+ }
132
+ .lm-radio-group.lm-radio-group-column .lm-radio > span:last-child {
133
+ max-width: 216px;
134
+ overflow: hidden;
135
+ white-space: nowrap;
136
+ padding: 0;
137
+ margin: 0 8px;
138
+ }
139
+ .lm-radio-group.lm-radio-group-column .lm-radio:last-child {
140
+ margin-bottom: 0;
141
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+
3
+ require("./index.css");
@@ -18,19 +18,18 @@ var LmImageViewer = function LmImageViewer(_a, ref) {
18
18
  var resetProps = __rest(_a, []);
19
19
 
20
20
  var defaultRef = useRef(null);
21
- var defaultConfig = {
22
- visible: false,
21
+ var defaultConfig = Object.assign({
22
+ visible: null,
23
23
  urlList: [],
24
- zIndex: 1,
24
+ zIndex: 2001,
25
25
  initialIndex: 0,
26
26
  infinite: false,
27
- hideOnClickModal: false,
28
- close: function close() {} // 触发关闭时的事件
29
-
30
- };
27
+ hideOnClickModal: true,
28
+ close: function close() {}
29
+ }, resetProps);
31
30
  return /*#__PURE__*/React.createElement(LmImageViewerRoot, Object.assign({
32
31
  ref: ref || defaultRef
33
- }, defaultConfig, resetProps));
32
+ }, defaultConfig));
34
33
  };
35
34
 
36
35
  export default /*#__PURE__*/forwardRef(LmImageViewer);
@@ -0,0 +1,4 @@
1
+ declare const Arrows: ({ instance }: {
2
+ instance: any;
3
+ }) => JSX.Element;
4
+ export default Arrows;
@@ -0,0 +1,38 @@
1
+ import React from 'react';
2
+ import { IconFont } from 'linkmore-design';
3
+
4
+ var Arrows = function Arrows(_ref) {
5
+ var instance = _ref.instance;
6
+ var slickNext = instance.slickNext,
7
+ slickPrev = instance.slickPrev;
8
+
9
+ var handlePreNext = function handlePreNext(e, type) {
10
+ e.stopPropagation();
11
+
12
+ if (type === 'next') {
13
+ slickNext();
14
+ }
15
+
16
+ if (type === 'prev') {
17
+ slickPrev();
18
+ }
19
+ };
20
+
21
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
22
+ className: "arrow arrow_left",
23
+ onClick: function onClick(e) {
24
+ return handlePreNext(e, 'prev');
25
+ }
26
+ }, /*#__PURE__*/React.createElement(IconFont, {
27
+ type: "lmweb-left"
28
+ })), /*#__PURE__*/React.createElement("div", {
29
+ className: "arrow arrow_right",
30
+ onClick: function onClick(e) {
31
+ return handlePreNext(e, 'next');
32
+ }
33
+ }, /*#__PURE__*/React.createElement(IconFont, {
34
+ type: "lmweb-right"
35
+ })));
36
+ };
37
+
38
+ export default Arrows;
@@ -0,0 +1,4 @@
1
+ declare const BigImg: ({ instance }: {
2
+ instance: any;
3
+ }) => JSX.Element;
4
+ export default BigImg;
@@ -0,0 +1,71 @@
1
+ import React, { useMemo, useCallback } from 'react';
2
+ import { Carousel } from 'linkmore-design';
3
+
4
+ var ListItem = function ListItem(_ref) {
5
+ var key = _ref.key,
6
+ index = _ref.index,
7
+ item = _ref.item,
8
+ instance = _ref.instance;
9
+ var state = instance.state;
10
+ var transformProps = useMemo(function () {
11
+ if (index !== state.currentIndex) return {};
12
+ var _state$transform = state.transform,
13
+ scale = _state$transform.scale,
14
+ rotateZ = _state$transform.rotateZ;
15
+ return {
16
+ transform: "scale(".concat(scale, ") rotateZ(").concat(rotateZ, "deg)")
17
+ };
18
+ }, [state.currentIndex, state.transform]);
19
+ return /*#__PURE__*/React.createElement("div", {
20
+ className: "preview_item",
21
+ key: key
22
+ }, /*#__PURE__*/React.createElement("img", {
23
+ src: item,
24
+ alt: "",
25
+ style: transformProps
26
+ }));
27
+ };
28
+
29
+ var BigImg = function BigImg(_ref2) {
30
+ var instance = _ref2.instance;
31
+ var urlList = instance.urlList,
32
+ previewRef = instance.previewRef,
33
+ infinite = instance.infinite,
34
+ setTransform = instance.setTransform,
35
+ afterChange = instance.afterChange;
36
+ var onWheel = useCallback(function (e) {
37
+ // e?.preventDefault()
38
+ // e.stopPropagation()
39
+ if ((e === null || e === void 0 ? void 0 : e.deltaY) <= 0) {
40
+ setTransform('zoomIn');
41
+ } else {
42
+ setTransform('zoomOut');
43
+ }
44
+ }, [setTransform]);
45
+ var config = {
46
+ dots: false,
47
+ infinite: infinite,
48
+ // lazyLoad: true, // 懒加载
49
+ adaptiveHeight: false,
50
+ afterChange: afterChange // customPaging: (i) => <img src={urlList[i]} alt="" />,
51
+
52
+ };
53
+ return /*#__PURE__*/React.createElement("div", {
54
+ className: "preview_list",
55
+ onClick: function onClick(e) {
56
+ return e.stopPropagation();
57
+ },
58
+ onWheel: onWheel
59
+ }, /*#__PURE__*/React.createElement(Carousel, Object.assign({
60
+ ref: previewRef
61
+ }, config), urlList.map(function (v, idx) {
62
+ return /*#__PURE__*/React.createElement(ListItem, {
63
+ key: idx || v,
64
+ index: idx,
65
+ item: v,
66
+ instance: instance
67
+ });
68
+ })));
69
+ };
70
+
71
+ export default BigImg;
@@ -0,0 +1,4 @@
1
+ declare const Operate: ({ instance }: {
2
+ instance: any;
3
+ }) => JSX.Element;
4
+ export default Operate;
@@ -0,0 +1,40 @@
1
+ import React from 'react';
2
+ import { IconFont } from 'linkmore-design';
3
+
4
+ var Operate = function Operate(_ref) {
5
+ var instance = _ref.instance;
6
+ var setTransform = instance.setTransform;
7
+
8
+ var handleTranform = function handleTranform(e, type) {
9
+ setTransform(type);
10
+ };
11
+
12
+ return /*#__PURE__*/React.createElement("div", {
13
+ className: "image_viewer_action",
14
+ onClick: function onClick(e) {
15
+ return e.stopPropagation();
16
+ }
17
+ }, /*#__PURE__*/React.createElement(IconFont, {
18
+ type: "lmweb-zoomin",
19
+ onClick: function onClick(e) {
20
+ return handleTranform(e, 'zoomIn');
21
+ }
22
+ }), /*#__PURE__*/React.createElement(IconFont, {
23
+ type: "lmweb-a-icon_m_search1",
24
+ onClick: function onClick(e) {
25
+ return handleTranform(e, 'zoomOut');
26
+ }
27
+ }), /*#__PURE__*/React.createElement(IconFont, {
28
+ type: "lmweb-undo",
29
+ onClick: function onClick(e) {
30
+ return handleTranform(e, 'rotateLeft');
31
+ }
32
+ }), /*#__PURE__*/React.createElement(IconFont, {
33
+ type: "lmweb-redo",
34
+ onClick: function onClick(e) {
35
+ return handleTranform(e, 'rotateRight');
36
+ }
37
+ }));
38
+ };
39
+
40
+ export default Operate;
@@ -0,0 +1,4 @@
1
+ declare const Thumb: ({ instance }: {
2
+ instance: any;
3
+ }) => JSX.Element;
4
+ export default Thumb;
@@ -0,0 +1,37 @@
1
+ import React, { useMemo } from 'react';
2
+ import cn from 'classnames';
3
+
4
+ var Thumb = function Thumb(_ref) {
5
+ var instance = _ref.instance;
6
+ var state = instance.state,
7
+ urlList = instance.urlList,
8
+ slickGoTo = instance.slickGoTo;
9
+ var activeIndex = useMemo(function () {
10
+ return state.currentIndex;
11
+ }, [state.currentIndex]);
12
+
13
+ var handleGoTo = function handleGoTo(e, number) {
14
+ e.preventDefault();
15
+ slickGoTo(number);
16
+ };
17
+
18
+ return /*#__PURE__*/React.createElement("div", {
19
+ className: "thumb_list",
20
+ onClick: function onClick(e) {
21
+ return e.stopPropagation();
22
+ }
23
+ }, urlList.map(function (v, idx) {
24
+ return /*#__PURE__*/React.createElement("div", {
25
+ className: cn('thumb_item', activeIndex === idx && 'active'),
26
+ key: idx || v,
27
+ onClick: function onClick(e) {
28
+ return handleGoTo(e, idx);
29
+ }
30
+ }, /*#__PURE__*/React.createElement("img", {
31
+ src: v,
32
+ alt: ""
33
+ }));
34
+ }));
35
+ };
36
+
37
+ export default Thumb;
@@ -0,0 +1,20 @@
1
+ declare const useCoreOptions: ({ state, dispatch, props, previewRef }: {
2
+ state: any;
3
+ dispatch: any;
4
+ props: any;
5
+ previewRef: any;
6
+ }) => {
7
+ CoreMethods: {
8
+ getVisible: () => any;
9
+ onClose: () => void;
10
+ setTransform: (type: any) => void;
11
+ afterChange: (currentIndex: any) => void;
12
+ slickGoTo: (currentIndex: any) => void;
13
+ slickNext: () => void;
14
+ slickPrev: () => void;
15
+ };
16
+ RefMethods: {
17
+ getState: () => any;
18
+ };
19
+ };
20
+ export default useCoreOptions;
@@ -0,0 +1,100 @@
1
+ import { useCallback } from 'react';
2
+
3
+ var useCoreOptions = function useCoreOptions(_ref) {
4
+ var state = _ref.state,
5
+ dispatch = _ref.dispatch,
6
+ props = _ref.props,
7
+ previewRef = _ref.previewRef;
8
+ // 获取显示状态
9
+ var getVisible = useCallback(function () {
10
+ return typeof props.visible === 'boolean' ? props.visible : state.visible;
11
+ }, [props, state.visible]); // 关闭事件
12
+
13
+ var onClose = useCallback(function () {
14
+ var _a;
15
+
16
+ (_a = props.close) === null || _a === void 0 ? void 0 : _a.call(props);
17
+ dispatch({
18
+ type: 'init'
19
+ });
20
+ dispatch({
21
+ type: 'changeVisible',
22
+ visible: false
23
+ });
24
+ }, []);
25
+ var setTransform = useCallback(function (type) {
26
+ var scale = state.transform.scale * 100;
27
+ var rotateZ = state.transform.rotateZ;
28
+
29
+ switch (type) {
30
+ case 'zoomIn':
31
+ scale += 25;
32
+ break;
33
+
34
+ case 'zoomOut':
35
+ scale < 30 ? scale : scale -= 25;
36
+ break;
37
+
38
+ case 'rotateLeft':
39
+ rotateZ -= 90;
40
+ break;
41
+
42
+ case 'rotateRight':
43
+ rotateZ += 90;
44
+ break;
45
+
46
+ default:
47
+ break;
48
+ }
49
+
50
+ dispatch({
51
+ type: 'changeTransform',
52
+ transform: {
53
+ rotateZ: rotateZ,
54
+ scale: scale / 100
55
+ }
56
+ });
57
+ }, [state.transform]); // 切换轮播后的回调
58
+
59
+ var afterChange = useCallback(function (currentIndex) {
60
+ console.log('currentIndex', currentIndex);
61
+ dispatch({
62
+ type: 'changeCurrent',
63
+ current: {
64
+ currentIndex: currentIndex
65
+ }
66
+ });
67
+ }, []); // 转到指定的轮播图, 直接跳转, 不展示动画
68
+
69
+ var slickGoTo = useCallback(function (currentIndex) {
70
+ previewRef.current.goTo(currentIndex, true);
71
+ }, []); // 转到下一张轮播图
72
+
73
+ var slickNext = useCallback(function () {
74
+ previewRef.current.next();
75
+ }, []); // 转到上一张轮播图
76
+
77
+ var slickPrev = useCallback(function () {
78
+ previewRef.current.prev();
79
+ }, []);
80
+ var CoreMethods = {
81
+ getVisible: getVisible,
82
+ onClose: onClose,
83
+ setTransform: setTransform,
84
+ afterChange: afterChange,
85
+ slickGoTo: slickGoTo,
86
+ slickNext: slickNext,
87
+ slickPrev: slickPrev
88
+ };
89
+ var RefMethods = {
90
+ getState: function getState() {
91
+ return state;
92
+ }
93
+ };
94
+ return {
95
+ CoreMethods: CoreMethods,
96
+ RefMethods: RefMethods
97
+ };
98
+ };
99
+
100
+ export default useCoreOptions;
@@ -1,5 +1,107 @@
1
- .lm_image_viwer_wrapper {
1
+ .lm_image_viewer_wrapper {
2
2
  position: fixed;
3
3
  inset: 0;
4
- z-index: 1;
4
+ z-index: 1001;
5
+ }
6
+ .lm_image_viewer_wrapper .lm_image_viewer_mask {
7
+ position: absolute;
8
+ inset: 0;
9
+ background-color: rgba(0, 0, 0, 0.5);
10
+ }
11
+ .lm_image_viewer_wrapper .lm_image_viewer_container {
12
+ position: relative;
13
+ z-index: 2;
14
+ display: flex;
15
+ flex-flow: column;
16
+ align-items: center;
17
+ gap: var(--gap);
18
+ height: 100vh;
19
+ padding: 50px 0;
20
+ }
21
+ .lm_image_viewer_wrapper .lm_image_viewer_container .preview_list {
22
+ flex: 1;
23
+ width: 51%;
24
+ max-height: 100%;
25
+ overflow: hidden;
26
+ touch-action: none;
27
+ }
28
+ .lm_image_viewer_wrapper .lm_image_viewer_container .preview_list div {
29
+ height: 100%;
30
+ }
31
+ .lm_image_viewer_wrapper .lm_image_viewer_container .preview_list .preview_item {
32
+ text-align: center;
33
+ border-radius: 2px;
34
+ overflow: hidden;
35
+ }
36
+ .lm_image_viewer_wrapper .lm_image_viewer_container .preview_list .preview_item img {
37
+ display: inline-block;
38
+ width: 100%;
39
+ height: 100%;
40
+ object-fit: contain;
41
+ transition: 0.3s;
42
+ }
43
+ .lm_image_viewer_wrapper .lm_image_viewer_container .thumb_list {
44
+ display: flex;
45
+ width: 51%;
46
+ gap: var(--gap);
47
+ overflow-x: auto;
48
+ }
49
+ .lm_image_viewer_wrapper .lm_image_viewer_container .thumb_list .thumb_item {
50
+ text-align: center;
51
+ border-radius: 2px;
52
+ border: 2px solid transparent;
53
+ transition: 0.3s;
54
+ }
55
+ .lm_image_viewer_wrapper .lm_image_viewer_container .thumb_list .thumb_item img {
56
+ display: inline-block;
57
+ width: 94px;
58
+ height: 94px;
59
+ object-fit: cover;
60
+ }
61
+ .lm_image_viewer_wrapper .lm_image_viewer_container .thumb_list .thumb_item.active {
62
+ border-color: var(--primary-color);
63
+ }
64
+ .lm_image_viewer_wrapper .lm_image_viewer_container .image_viewer_action {
65
+ position: absolute;
66
+ left: 50%;
67
+ transform: translateX(-50%);
68
+ bottom: 50px;
69
+ display: flex;
70
+ align-items: center;
71
+ justify-content: space-between;
72
+ background-color: #fff;
73
+ border-radius: 100px;
74
+ gap: 24px;
75
+ font-size: 24px;
76
+ padding: 8px 12px;
77
+ }
78
+ .lm_image_viewer_wrapper .lm_image_viewer_container .image_viewer_action .anticon {
79
+ transition: 0.3s;
80
+ cursor: pointer;
81
+ }
82
+ .lm_image_viewer_wrapper .lm_image_viewer_container .image_viewer_action .anticon:hover {
83
+ color: var(--primary-color);
84
+ }
85
+ .lm_image_viewer_wrapper .lm_image_viewer_container .arrow {
86
+ position: absolute;
87
+ top: 50%;
88
+ transform: translateY(-50%);
89
+ display: flex;
90
+ align-items: center;
91
+ justify-content: center;
92
+ font-size: 32px;
93
+ height: 48px;
94
+ color: var(--color-contrast);
95
+ background-color: var(--text-color);
96
+ transition: 0.3s;
97
+ cursor: pointer;
98
+ }
99
+ .lm_image_viewer_wrapper .lm_image_viewer_container .arrow.arrow_left {
100
+ left: 40px;
101
+ }
102
+ .lm_image_viewer_wrapper .lm_image_viewer_container .arrow.arrow_right {
103
+ right: 40px;
104
+ }
105
+ .lm_image_viewer_wrapper .lm_image_viewer_container .arrow:hover {
106
+ color: var(--primary-color);
5
107
  }
@@ -1,13 +1,31 @@
1
1
  // 根文件 => 参数聚合
2
2
  import React from 'react';
3
+ import Carouserl from '../components/Carousel';
4
+ import Thumb from '../components/Thumb';
5
+ import Operate from '../components/Operate';
6
+ import Arrows from '../components/Arrows';
3
7
 
4
8
  var LmImageViewerContainer = function LmImageViewerContainer(_ref) {
5
9
  var instance = _ref.instance;
6
- var viisble = instance.viisble;
7
- if (!viisble) return null;
10
+ var onClose = instance.onClose,
11
+ hideOnClickModal = instance.hideOnClickModal;
12
+
13
+ var handleClose = function handleClose() {
14
+ hideOnClickModal && onClose();
15
+ };
16
+
8
17
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
9
- className: "lm_image_viewer_container"
10
- }, "container"));
18
+ className: "lm_image_viewer_container",
19
+ onClick: handleClose
20
+ }, /*#__PURE__*/React.createElement(Carouserl, {
21
+ instance: instance
22
+ }), /*#__PURE__*/React.createElement(Thumb, {
23
+ instance: instance
24
+ }), /*#__PURE__*/React.createElement(Operate, {
25
+ instance: instance
26
+ }), /*#__PURE__*/React.createElement(Arrows, {
27
+ instance: instance
28
+ })));
11
29
  };
12
30
 
13
31
  export default LmImageViewerContainer;