@dobot-plus/template 1.2.7 → 1.2.9

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 (69) hide show
  1. package/.dobot/components/DobotPlusApp.tsx +78 -78
  2. package/.dobot/http/axios.ts +52 -52
  3. package/.dobot/http/http.ts +22 -22
  4. package/.dobot/index.ts +2 -2
  5. package/.dobot/protocol/methodsHandler.ts +15 -15
  6. package/.dobot/protocol/postMessageHandler.ts +289 -289
  7. package/.dobot/protocol/websocketHandler.ts +3 -3
  8. package/.dobot/shim.d.ts +3 -3
  9. package/.dobot/store/actions/toolActions.ts +69 -69
  10. package/.dobot/store/actions/userManagementActions.ts +25 -0
  11. package/.dobot/store/reducers/index.ts +8 -8
  12. package/.dobot/store/reducers/toolReducer.ts +152 -152
  13. package/.dobot/store/reducers/userManagementReducer.ts +35 -0
  14. package/.dobot/store/types.ts +237 -240
  15. package/.dobot/template/default.tsx.mustache +19 -19
  16. package/.dobot/template/entry.css +25 -25
  17. package/.dobot/template/entry.tsx +53 -53
  18. package/.dobot/template/index.html +23 -23
  19. package/.dobot/template/index.scss +5 -5
  20. package/.dobot/utils/i18n.ts +31 -31
  21. package/.dobot/utils/mqtt.ts +61 -61
  22. package/.dobot/utils/rem.js +21 -21
  23. package/.dobot/utils/tool.ts +15 -15
  24. package/.eslintrc.cjs +18 -18
  25. package/.luarc.json +8 -8
  26. package/.vscode/Api.schema.json +103 -103
  27. package/.vscode/Blocks.schema.json +94 -94
  28. package/.vscode/Main.schema.json +42 -42
  29. package/.vscode/Script.schema.json +22 -22
  30. package/.vscode/Toolbar.schema.json +19 -19
  31. package/.vscode/extensions.json +8 -8
  32. package/.vscode/settings.json +51 -51
  33. package/Resources/i18n/client/de.json +11 -11
  34. package/Resources/i18n/client/en.json +11 -11
  35. package/Resources/i18n/client/es.json +11 -11
  36. package/Resources/i18n/client/hk.json +11 -11
  37. package/Resources/i18n/client/ja.json +11 -11
  38. package/Resources/i18n/client/ko.json +11 -11
  39. package/Resources/i18n/client/ru.json +11 -11
  40. package/Resources/i18n/client/zh.json +11 -11
  41. package/Resources/i18n/plugin/de.json +3 -3
  42. package/Resources/i18n/plugin/en.json +3 -3
  43. package/Resources/i18n/plugin/es.json +3 -3
  44. package/Resources/i18n/plugin/hk.json +3 -3
  45. package/Resources/i18n/plugin/ja.json +3 -3
  46. package/Resources/i18n/plugin/ko.json +3 -3
  47. package/Resources/i18n/plugin/ru.json +3 -3
  48. package/Resources/i18n/plugin/zh.json +3 -3
  49. package/configs/Blocks.json +21 -21
  50. package/configs/Main.json +5 -5
  51. package/configs/Scripts.json +7 -7
  52. package/configs/Toolbar.json +5 -5
  53. package/dpt.json +4 -4
  54. package/lua/control.lua +18 -18
  55. package/lua/daemon.lua +22 -22
  56. package/lua/httpAPI.lua +66 -66
  57. package/lua/userAPI.lua +51 -51
  58. package/lua/utils/mqtt.lua +16 -16
  59. package/lua/utils/num_convert.lua +41 -41
  60. package/lua/utils/tcp.lua +30 -30
  61. package/lua/utils/util.lua +30 -30
  62. package/package.json +58 -49
  63. package/project.json +3 -3
  64. package/tsconfig.json +26 -26
  65. package/ui/Blocks.tsx +5 -5
  66. package/ui/Main.tsx +31 -31
  67. package/ui/Toolbar.tsx +5 -5
  68. package/.dobot/store/actions/userMagamentActions.ts +0 -25
  69. package/.dobot/store/reducers/userMagamentReducer.ts +0 -38
@@ -1,240 +1,237 @@
1
-
2
-
3
- export interface IStoreState {
4
- toolReducer: ToolState
5
- userMagamentReducer: userMagamentState
6
- }
7
-
8
- export interface ICapacityData {
9
- totalPallet: number
10
- totalBox: number
11
- timeHour: number
12
- timeMin: number
13
- timeSec: number
14
- }
15
-
16
- export interface IPalletRunningData {
17
- status: number
18
- layer: number
19
- box: number
20
- }
21
-
22
- export interface ParamsStyle {
23
- x: number
24
- y: number
25
- // 0:默认;1:旋转90
26
- rotate: number
27
- connection: number // 0:单吸 1:双吸(长边对齐) 2:双吸(短边对齐)
28
- }
29
-
30
- export interface ItemPreviewParams {
31
- boxCount: number
32
- pallet: {
33
- length: number
34
- width: number
35
- height: number
36
- }
37
- box: {
38
- length: number
39
- width: number
40
- height: number
41
- weight: number
42
- }
43
- style:
44
- | {
45
- typeA: ParamsStyle[]
46
- typeB: ParamsStyle[]
47
- }
48
- | {
49
- typeC: ParamsStyle[]
50
- typeD: ParamsStyle[]
51
- }
52
- layer: {
53
- count: number
54
- order: number[]
55
- partition: number
56
- partitionHeight: number
57
- }
58
- coordinate: {
59
- user: Array<number>
60
- tool: number
61
- }
62
- }
63
-
64
- export interface PreviewParamsData {
65
- conveyer?: number
66
- suction?: number
67
- lift?: number
68
- left?: ItemPreviewParams
69
- right?: ItemPreviewParams
70
- }
71
- export interface PointType {
72
- x: number
73
- y: number
74
- z: number
75
- rx: number
76
- ry: number
77
- rz: number
78
- }
79
- export interface caliPointType {
80
- imageX: number
81
- imageY: number
82
- physicalX: number
83
- physicalY: number
84
- angle: number
85
- }
86
- export interface ToolState {
87
- portData: {
88
- ip: string
89
- port: string
90
- isSync: boolean
91
- }
92
- tcpStatus: boolean
93
- tcpInfo: any
94
- extendIoData: any[]
95
- onRobotTool: string[]
96
- deviceStateData: DeviceState
97
- ioData: any
98
- pluginPort: string
99
- dobotplusHost: string
100
- ioList: {
101
- input: {
102
- address: number
103
- diValue: number
104
- editName: string
105
- init: string
106
- isShow: boolean
107
- name: string
108
- value: number
109
- }[]
110
- output: {
111
- address: number
112
- editName: string
113
- init: string
114
- isShow: boolean
115
- name: string
116
- value: number
117
- }[]
118
- }
119
- pointData: any[]
120
- jogInPaused:boolean
121
- }
122
-
123
- export type DeviceState = {
124
- isTimeout?: boolean
125
- stateL?: boolean
126
- pose: {
127
- joints: number[]
128
- axes: number[]
129
- auxJoint: number[]
130
- l: number
131
- rdnCoordinate?: number[]
132
- }
133
- alarm: number[]
134
- alarmGo: number[]
135
- hht: {
136
- isEnabled: boolean
137
- }
138
- safeGuardMode?: 0 | 1 | 2
139
- batteryVoltage?: number
140
- batteryStatus?: 0 | 1
141
- moveSpeed?: {
142
- x: number
143
- y: number
144
- r: number
145
- }
146
- position?: {
147
- x: number
148
- y: number
149
- yaw: number
150
- }
151
- joyState?: boolean
152
- controlMode: number
153
- isCollision?: boolean
154
- skinCollison?: boolean
155
-
156
- remoteControl?: remoteControlType
157
- cameraModel?: {
158
- arm: number
159
- car: number
160
- }
161
- inputs?: number[]
162
- outputs?: number[]
163
- endDI?: number[]
164
- endDO?: number[]
165
- gpioAO?: number[]
166
- extendDO?: number[][]
167
- extendDI?: number[][]
168
- ioAI?: number[]
169
- endAI?: number[]
170
- prjState?: PrjStateType
171
- powerState?: boolean
172
- detailsInfo?: {
173
- controlParams: number[]
174
- jointCurrent: number[]
175
- jointVoltage: number[]
176
- jointTemp: number[]
177
- }
178
- dragMode?: boolean // 拖拽状态
179
- isSafeRun?: number
180
- isSafeSuspend?: number
181
- safeDO?: number[]
182
- safeDI?: number[]
183
- selectedControlBarCoordinate: {
184
- user: number
185
- tool: number
186
- }
187
- jogMode: JogMode
188
- dragPlayback?: boolean // 复现状态
189
- dragTrack?: boolean // 录制状态
190
- autoManual?: 'auto' | 'manual'
191
- emergencyStop?: boolean
192
- warning?: number
193
- speedRatio?: number
194
- remoteRun?: boolean
195
- jointBrake?: number[]
196
- coordinate?: CoordinateType
197
- pointSignal?: number
198
- ledStatus?: number
199
- skinValue?: number[]
200
- }
201
-
202
- export enum RemoteModeType {
203
- Online = 'tp',
204
- TCP = 'tcp',
205
- }
206
- export type remoteControlType = {
207
- mode: RemoteModeType
208
- name: string
209
- }
210
- export enum PrjStateType {
211
- stopped = 'stopped',
212
- suspended = 'suspended',
213
- running = 'running',
214
- }
215
- export enum JogMode {
216
- Jog = 'jog',
217
- Step = 'step',
218
- }
219
- export enum CoordinateType {
220
- Cartesian = 'cartesian',
221
- Joint = 'joint',
222
- Tool = 'tool',
223
- }
224
- export interface userMagamentState {
225
- userModalData: {
226
- show: boolean
227
- edit?: boolean
228
- user?: any
229
- index?: number
230
- }
231
- permissionList: any[]
232
- currentLevel: number
233
- currentUserInfo: string
234
- }
235
-
236
- export enum ModuleType {
237
- Module = 'Module',
238
- Template = 'Template',
239
- }
240
-
1
+ export interface IStoreState {
2
+ toolReducer: ToolState
3
+ userManagementReducer: UserManagementState
4
+ }
5
+
6
+ export interface ICapacityData {
7
+ totalPallet: number
8
+ totalBox: number
9
+ timeHour: number
10
+ timeMin: number
11
+ timeSec: number
12
+ }
13
+
14
+ export interface IPalletRunningData {
15
+ status: number
16
+ layer: number
17
+ box: number
18
+ }
19
+
20
+ export interface ParamsStyle {
21
+ x: number
22
+ y: number
23
+ // 0:默认;1:旋转90
24
+ rotate: number
25
+ connection: number // 0:单吸 1:双吸(长边对齐) 2:双吸(短边对齐)
26
+ }
27
+
28
+ export interface ItemPreviewParams {
29
+ boxCount: number
30
+ pallet: {
31
+ length: number
32
+ width: number
33
+ height: number
34
+ }
35
+ box: {
36
+ length: number
37
+ width: number
38
+ height: number
39
+ weight: number
40
+ }
41
+ style:
42
+ | {
43
+ typeA: ParamsStyle[]
44
+ typeB: ParamsStyle[]
45
+ }
46
+ | {
47
+ typeC: ParamsStyle[]
48
+ typeD: ParamsStyle[]
49
+ }
50
+ layer: {
51
+ count: number
52
+ order: number[]
53
+ partition: number
54
+ partitionHeight: number
55
+ }
56
+ coordinate: {
57
+ user: Array<number>
58
+ tool: number
59
+ }
60
+ }
61
+
62
+ export interface PreviewParamsData {
63
+ conveyer?: number
64
+ suction?: number
65
+ lift?: number
66
+ left?: ItemPreviewParams
67
+ right?: ItemPreviewParams
68
+ }
69
+ export interface PointType {
70
+ x: number
71
+ y: number
72
+ z: number
73
+ rx: number
74
+ ry: number
75
+ rz: number
76
+ }
77
+ export interface caliPointType {
78
+ imageX: number
79
+ imageY: number
80
+ physicalX: number
81
+ physicalY: number
82
+ angle: number
83
+ }
84
+ export interface ToolState {
85
+ portData: {
86
+ ip: string
87
+ port: string
88
+ isSync: boolean
89
+ }
90
+ tcpStatus: boolean
91
+ tcpInfo: any
92
+ extendIoData: any[]
93
+ onRobotTool: string[]
94
+ deviceStateData: DeviceState
95
+ ioData: any
96
+ pluginPort: string
97
+ dobotplusHost: string
98
+ ioList: {
99
+ input: {
100
+ address: number
101
+ diValue: number
102
+ editName: string
103
+ init: string
104
+ isShow: boolean
105
+ name: string
106
+ value: number
107
+ }[]
108
+ output: {
109
+ address: number
110
+ editName: string
111
+ init: string
112
+ isShow: boolean
113
+ name: string
114
+ value: number
115
+ }[]
116
+ }
117
+ pointData: any[]
118
+ jogInPaused: boolean
119
+ }
120
+
121
+ export type DeviceState = {
122
+ isTimeout?: boolean
123
+ stateL?: boolean
124
+ pose: {
125
+ joints: number[]
126
+ axes: number[]
127
+ auxJoint: number[]
128
+ l: number
129
+ rdnCoordinate?: number[]
130
+ }
131
+ alarm: number[]
132
+ alarmGo: number[]
133
+ hht: {
134
+ isEnabled: boolean
135
+ }
136
+ safeGuardMode?: 0 | 1 | 2
137
+ batteryVoltage?: number
138
+ batteryStatus?: 0 | 1
139
+ moveSpeed?: {
140
+ x: number
141
+ y: number
142
+ r: number
143
+ }
144
+ position?: {
145
+ x: number
146
+ y: number
147
+ yaw: number
148
+ }
149
+ joyState?: boolean
150
+ controlMode: number
151
+ isCollision?: boolean
152
+ skinCollison?: boolean
153
+
154
+ remoteControl?: remoteControlType
155
+ cameraModel?: {
156
+ arm: number
157
+ car: number
158
+ }
159
+ inputs?: number[]
160
+ outputs?: number[]
161
+ endDI?: number[]
162
+ endDO?: number[]
163
+ gpioAO?: number[]
164
+ extendDO?: number[][]
165
+ extendDI?: number[][]
166
+ ioAI?: number[]
167
+ endAI?: number[]
168
+ prjState?: PrjStateType
169
+ powerState?: boolean
170
+ detailsInfo?: {
171
+ controlParams: number[]
172
+ jointCurrent: number[]
173
+ jointVoltage: number[]
174
+ jointTemp: number[]
175
+ }
176
+ dragMode?: boolean // 拖拽状态
177
+ isSafeRun?: number
178
+ isSafeSuspend?: number
179
+ safeDO?: number[]
180
+ safeDI?: number[]
181
+ selectedControlBarCoordinate: {
182
+ user: number
183
+ tool: number
184
+ }
185
+ jogMode: JogMode
186
+ dragPlayback?: boolean // 复现状态
187
+ dragTrack?: boolean // 录制状态
188
+ autoManual?: 'auto' | 'manual'
189
+ emergencyStop?: boolean
190
+ warning?: number
191
+ speedRatio?: number
192
+ remoteRun?: boolean
193
+ jointBrake?: number[]
194
+ coordinate?: CoordinateType
195
+ pointSignal?: number
196
+ ledStatus?: number
197
+ skinValue?: number[]
198
+ }
199
+
200
+ export enum RemoteModeType {
201
+ Online = 'tp',
202
+ TCP = 'tcp'
203
+ }
204
+ export type remoteControlType = {
205
+ mode: RemoteModeType
206
+ name: string
207
+ }
208
+ export enum PrjStateType {
209
+ stopped = 'stopped',
210
+ suspended = 'suspended',
211
+ running = 'running'
212
+ }
213
+ export enum JogMode {
214
+ Jog = 'jog',
215
+ Step = 'step'
216
+ }
217
+ export enum CoordinateType {
218
+ Cartesian = 'cartesian',
219
+ Joint = 'joint',
220
+ Tool = 'tool'
221
+ }
222
+ export interface UserManagementState {
223
+ userModalData: {
224
+ show: boolean
225
+ edit?: boolean
226
+ user?: any
227
+ index?: number
228
+ }
229
+ permissionList: any[]
230
+ currentLevel: number
231
+ currentUserInfo: string
232
+ }
233
+
234
+ export enum ModuleType {
235
+ Module = 'Module',
236
+ Template = 'Template'
237
+ }
@@ -1,20 +1,20 @@
1
- import React from 'react'
2
- import './index.scss'
3
- import { Provider } from 'react-redux'
4
- import store from '../store'
5
- import App from '$APP_PATH$'
6
- import '@dobot/utils/rem'
7
- import '@dobot/utils/i18n'
8
- import '@dobot-plus/components/dist/style.css'
9
- import { createRoot } from 'react-dom/client'
10
-
11
- const root = document.getElementById('root')
12
- if (root) {
13
- createRoot(root).render(
14
- <React.StrictMode>
15
- <Provider store={store}>
16
- <App />
17
- </Provider>
18
- </React.StrictMode>
19
- )
1
+ import React from 'react'
2
+ import './index.scss'
3
+ import { Provider } from 'react-redux'
4
+ import store from '../store'
5
+ import App from '$APP_PATH$'
6
+ import '@dobot/utils/rem'
7
+ import '@dobot/utils/i18n'
8
+ import '@dobot-plus/components/dist/style.css'
9
+ import { createRoot } from 'react-dom/client'
10
+
11
+ const root = document.getElementById('root')
12
+ if (root) {
13
+ createRoot(root).render(
14
+ <React.StrictMode>
15
+ <Provider store={store}>
16
+ <App />
17
+ </Provider>
18
+ </React.StrictMode>
19
+ )
20
20
  }
@@ -1,26 +1,26 @@
1
- body,
2
- html {
3
- padding: 0;
4
- margin: 0;
5
- }
6
-
7
- .container {
8
- padding: 12px 24px;
9
- }
10
-
11
- .iframe-container {
12
- position: relative;
13
- width: 320px;
14
- height: 180px;
15
- }
16
-
17
- iframe {
18
- width: 1920px;
19
- height: 1080px;
20
- transform: scale(0.1667); /* 根据比例缩放,320/1920 = 0.1667 */
21
- transform-origin: top left; /* 保持左上角为缩放原点 */
22
- position: absolute;
23
- top: 0;
24
- left: 0;
25
- border: 1px solid #F5F5F5;
1
+ body,
2
+ html {
3
+ padding: 0;
4
+ margin: 0;
5
+ }
6
+
7
+ .container {
8
+ padding: 12px 24px;
9
+ }
10
+
11
+ .iframe-container {
12
+ position: relative;
13
+ width: 320px;
14
+ height: 180px;
15
+ }
16
+
17
+ iframe {
18
+ width: 1920px;
19
+ height: 1080px;
20
+ transform: scale(0.1667); /* 根据比例缩放,320/1920 = 0.1667 */
21
+ transform-origin: top left; /* 保持左上角为缩放原点 */
22
+ position: absolute;
23
+ top: 0;
24
+ left: 0;
25
+ border: 1px solid #F5F5F5;
26
26
  }
@@ -1,53 +1,53 @@
1
- import React from 'react'
2
- import './entry.css'
3
- import { createRoot } from 'react-dom/client'
4
- import { Card, Space } from 'antd'
5
-
6
- const root = document.getElementById('root')
7
- if (root) {
8
- createRoot(root).render(
9
- <React.StrictMode>
10
- <div className="container">
11
- <h2>插件页面</h2>
12
- <Space>
13
- <Card
14
- title={
15
- <Space>
16
- <span>导航栏</span>
17
- <a href="/Toolbar/toolbar.html">预览|调试</a>
18
- </Space>
19
- }
20
- >
21
- <div className="iframe-container">
22
- <iframe src="/Toolbar/toolbar.html"></iframe>
23
- </div>
24
- </Card>
25
- <Card
26
- title={
27
- <Space>
28
- <span>控制页面</span>
29
- <a href="/Main">预览|调试</a>
30
- </Space>
31
- }
32
- >
33
- <div className="iframe-container">
34
- <iframe src="/Main"></iframe>
35
- </div>
36
- </Card>
37
- <Card
38
- title={
39
- <Space>
40
- <span>积木弹窗</span>
41
- <a href="/Blocks">预览|调试</a>
42
- </Space>
43
- }
44
- >
45
- <div className="iframe-container">
46
- <iframe src="/Blocks"></iframe>
47
- </div>
48
- </Card>
49
- </Space>
50
- </div>
51
- </React.StrictMode>
52
- )
53
- }
1
+ import React from 'react'
2
+ import './entry.css'
3
+ import { createRoot } from 'react-dom/client'
4
+ import { Card, Space } from 'antd'
5
+
6
+ const root = document.getElementById('root')
7
+ if (root) {
8
+ createRoot(root).render(
9
+ <React.StrictMode>
10
+ <div className="container">
11
+ <h2>插件页面</h2>
12
+ <Space>
13
+ <Card
14
+ title={
15
+ <Space>
16
+ <span>导航栏</span>
17
+ <a href="/Toolbar/toolbar.html">预览|调试</a>
18
+ </Space>
19
+ }
20
+ >
21
+ <div className="iframe-container">
22
+ <iframe src="/Toolbar/toolbar.html"></iframe>
23
+ </div>
24
+ </Card>
25
+ <Card
26
+ title={
27
+ <Space>
28
+ <span>控制页面</span>
29
+ <a href="/Main">预览|调试</a>
30
+ </Space>
31
+ }
32
+ >
33
+ <div className="iframe-container">
34
+ <iframe src="/Main"></iframe>
35
+ </div>
36
+ </Card>
37
+ <Card
38
+ title={
39
+ <Space>
40
+ <span>积木弹窗</span>
41
+ <a href="/Blocks">预览|调试</a>
42
+ </Space>
43
+ }
44
+ >
45
+ <div className="iframe-container">
46
+ <iframe src="/Blocks"></iframe>
47
+ </div>
48
+ </Card>
49
+ </Space>
50
+ </div>
51
+ </React.StrictMode>
52
+ )
53
+ }