@kep-platform/basic-component 0.0.42 → 0.0.43
Sign up to get free protection for your applications and to get access to all the features.
@@ -30,6 +30,13 @@ export declare class ViewPortStore {
|
|
30
30
|
move(transform: Transform): void;
|
31
31
|
endMove(): void;
|
32
32
|
get contentStyle(): CSSProperties;
|
33
|
+
get viewPortRect(): {
|
34
|
+
left: number;
|
35
|
+
top: number;
|
36
|
+
width: number;
|
37
|
+
height: number;
|
38
|
+
scale: number;
|
39
|
+
};
|
33
40
|
get containerStyle(): CSSProperties;
|
34
41
|
get info(): string;
|
35
42
|
}
|
@@ -136,6 +136,18 @@ export var ViewPortStore = /*#__PURE__*/function () {
|
|
136
136
|
cursor: this.isMoving ? 'grab' : 'default'
|
137
137
|
};
|
138
138
|
}
|
139
|
+
/* 计算得到实际显示区域的偏移量 */
|
140
|
+
}, {
|
141
|
+
key: "viewPortRect",
|
142
|
+
get: function get() {
|
143
|
+
return {
|
144
|
+
left: -this.transform.left + this.offsetLeft,
|
145
|
+
top: -this.transform.top + this.offsetTop,
|
146
|
+
width: this.width,
|
147
|
+
height: this.height,
|
148
|
+
scale: this.scale
|
149
|
+
};
|
150
|
+
}
|
139
151
|
}, {
|
140
152
|
key: "containerStyle",
|
141
153
|
get: function get() {
|
@@ -143,16 +143,17 @@ export var ViewPortWindow = observer(function ViewPortWindow(props) {
|
|
143
143
|
rest = _objectWithoutProperties(props, _excluded);
|
144
144
|
useEffect(function () {
|
145
145
|
runInAction(function () {
|
146
|
-
|
147
|
-
window.fullscreenPos
|
148
|
-
window.
|
149
|
-
window.fullscreenPos.height = viewPortStore.height;
|
150
|
-
window.scale = viewPortStore.scale;
|
146
|
+
var rect = viewPortStore.viewPortRect;
|
147
|
+
window.fullscreenPos = rect;
|
148
|
+
window.scale = rect.scale;
|
151
149
|
});
|
152
|
-
}, [viewPortStore.
|
150
|
+
}, [viewPortStore.viewPortRect]);
|
153
151
|
useEffect(function () {
|
154
|
-
|
155
|
-
|
152
|
+
var rect = viewPortStore.viewPortRect;
|
153
|
+
/* rect.width/rect.scale就是实际上显示区域内容区的宽度 */
|
154
|
+
window.left = rect.left + Math.max(0, rect.width / rect.scale - window.width) / 2;
|
155
|
+
window.top = rect.top + Math.max(0, rect.height / rect.scale - window.height) / 2;
|
156
|
+
window.zIndex = ++viewPortStore.maxZIndex;
|
156
157
|
}, []);
|
157
158
|
return /*#__PURE__*/React.createElement(Window, _extends({
|
158
159
|
window: window
|
package/dist/ViewPort/test.js
CHANGED
@@ -9,7 +9,7 @@ import { makeAutoObservable, runInAction } from 'mobx';
|
|
9
9
|
import { observer, useLocalObservable } from 'mobx-react-lite';
|
10
10
|
import React, { useEffect } from 'react';
|
11
11
|
import styled from 'styled-components';
|
12
|
-
import { GlobalStyles } from '..';
|
12
|
+
import { Button, GlobalStyles } from '..';
|
13
13
|
import ViewPort from "./ViewPort";
|
14
14
|
import { ViewPortStore } from "./ViewPortStore";
|
15
15
|
import { ViewPortWindowStore } from "./ViewPortWindow";
|
@@ -20,6 +20,11 @@ var WindowManager = /*#__PURE__*/function () {
|
|
20
20
|
makeAutoObservable(this);
|
21
21
|
}
|
22
22
|
_createClass(WindowManager, [{
|
23
|
+
key: "createWindow",
|
24
|
+
value: function createWindow() {
|
25
|
+
this.windows.push(new ViewPortWindowStore('jss' + Math.random(), this.closeWindowHanlder.bind(this)));
|
26
|
+
}
|
27
|
+
}, {
|
23
28
|
key: "closeWindowHanlder",
|
24
29
|
value: function closeWindowHanlder(id) {
|
25
30
|
this.windows = this.windows.filter(function (window) {
|
@@ -60,7 +65,11 @@ export default observer(function Test() {
|
|
60
65
|
}, []);
|
61
66
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(GlobalStyles, {
|
62
67
|
$css: []
|
63
|
-
}), /*#__PURE__*/React.createElement(
|
68
|
+
}), /*#__PURE__*/React.createElement(Button, {
|
69
|
+
onClick: function onClick() {
|
70
|
+
windowManager.createWindow();
|
71
|
+
}
|
72
|
+
}, "\u65B0\u589E"), /*#__PURE__*/React.createElement(StyledViewPort, {
|
64
73
|
viewPortStore: viewPortStore
|
65
74
|
}, windowManager.windows.map(function (windowStore) {
|
66
75
|
return /*#__PURE__*/React.createElement(ViewPort.Window, {
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@kep-platform/basic-component",
|
3
|
-
"version": "0.0.
|
3
|
+
"version": "0.0.43",
|
4
4
|
"description": "A react library developed with dumi",
|
5
5
|
"license": "MIT",
|
6
6
|
"module": "dist/index.js",
|
@@ -47,7 +47,7 @@
|
|
47
47
|
},
|
48
48
|
"dependencies": {
|
49
49
|
"@ant-design/icons": "^5.3.7",
|
50
|
-
"@kep-platform/hooks": "^0.0.
|
50
|
+
"@kep-platform/hooks": "^0.0.43",
|
51
51
|
"color": "^4.2.3",
|
52
52
|
"rc-pagination": "^4.1.0",
|
53
53
|
"styled-components": "^6.1.11"
|
@@ -87,5 +87,5 @@
|
|
87
87
|
"authors": [
|
88
88
|
"lee-step-jss 1599925910@qq.com"
|
89
89
|
],
|
90
|
-
"gitHead": "
|
90
|
+
"gitHead": "a23a9722867510175523db19c5a352c3fa9f5f21"
|
91
91
|
}
|