react_hsbc_teller 1.9.8 → 1.9.81

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 (38) hide show
  1. package/.babelrc +39 -39
  2. package/README.en.md +36 -36
  3. package/README.md +52 -52
  4. package/config/webpack.config.js +119 -119
  5. package/config/webpack.dev.js +108 -108
  6. package/config/webpack.prod.js +104 -104
  7. package/lib/hsbc.js +1 -1
  8. package/package.json +108 -108
  9. package/packages/api/api.js +553 -553
  10. package/packages/api/server.js +50 -50
  11. package/packages/common/JKL.js +61 -61
  12. package/packages/common/XML.js +271 -271
  13. package/packages/common/index.esm.js +374 -374
  14. package/packages/common/websocket.js +267 -267
  15. package/packages/demo/demo.js +279 -279
  16. package/packages/demo/index.js +3 -3
  17. package/packages/demo/pdf.js +79 -79
  18. package/packages/envconfig/envconfig.js +12 -12
  19. package/packages/index.js +2 -2
  20. package/packages/pages/foot/foot.jsx +212 -212
  21. package/packages/pages/foot/foot.less +84 -84
  22. package/packages/pages/header/header.jsx +15 -15
  23. package/packages/pages/header/header.less +51 -51
  24. package/packages/pages/index.jsx +52 -52
  25. package/packages/pages/sign/signMy.jsx +221 -221
  26. package/packages/pages/sign/signMy.less +129 -129
  27. package/packages/pages/video/video.jsx +6768 -6756
  28. package/packages/pages/video/video.less +616 -616
  29. package/packages/style/index.less +1 -1
  30. package/packages/style/reset.less +345 -345
  31. package/packages/utils/asyncComponent.jsx +26 -26
  32. package/packages/utils/cell.js +64 -64
  33. package/packages/utils/mixin.js +27 -27
  34. package/packages/utils/setRem.js +10 -10
  35. package/public/index.html +77 -77
  36. package/src/index.js +11 -11
  37. package/src/index.less +5 -5
  38. package/tsconfig.json +11 -11
@@ -1,79 +1,79 @@
1
- import React, { Component } from "react";
2
-
3
- class pdf extends Component {
4
- state = {
5
- isVideo: false,
6
- tellerAccount: '',
7
- callbackUrl: 'http://47.102.126.132:8720/hsbc/callback',
8
- businessNumber: '',
9
- lang: 'zh',
10
- roomServerUrl: 'wss://mrtc.mpaas.cn-hangzhou.aliyuncs.com/ws',
11
- baseURL:'https://counter-web.leimondata.cn:18082/api/leimon-counter-api',
12
- resourcePath:'https://counter-web.leimondata.cn:7199',
13
- }
14
- startVideo = () => {
15
- this.setState({
16
- isVideo: true
17
- })
18
- }
19
- onLeaveRoom = (val) => {
20
- console.log(val)
21
- this.setState({
22
- isVideo: false
23
- })
24
- }
25
- handleChangeTeller = (event) => {
26
- this.setState({
27
- tellerAccount: event.target.value
28
- })
29
- }
30
- handleChangeCall = (event) => {
31
- this.setState({
32
- callbackUrl: event.target.value
33
- })
34
- }
35
- handleChangeBysiness = (event) => {
36
- this.setState({
37
- businessNumber: event.target.value
38
- })
39
- }
40
-
41
- handleRoomServerUrl = (event) => {
42
- this.setState({
43
- roomServerUrl: event.target.value
44
- })
45
- }
46
- handleBaseURL = (event) => {
47
- this.setState({
48
- baseURL: event.target.value
49
- })
50
- }
51
- handleResourcePath = (event) => {
52
- this.setState({
53
- resourcePath: event.target.value
54
- })
55
- }
56
-
57
- render() {
58
- console.log('22',this.props)
59
- return (
60
- <div className="test" style={{width: this.props.width,height:this.props.height}}>
61
- {
62
- <div>
63
- 坐席账号:<input placeholder="请输入坐席账号" value={this.state.tellerAccount} onChange={e => this.handleChangeTeller(e)}></input>
64
- 回调地址:<input placeholder="请输入回调地址" value={this.state.callbackUrl} onChange={e => this.handleChangeCall(e)}></input>
65
- 全局流水号:<input placeholder="请输入全局流水号" value={this.state.businessNumber} onChange={e => this.handleChangeBysiness(e)}></input>
66
- 阿里服务器地址:<input placeholder="请输入阿里服务器地址" value={this.state.roomServerUrl} onChange={e => this.handleRoomServerUrl(e)}></input>
67
- 接口地址:<input placeholder="请输入接口地址" value={this.state.baseURL} onChange={e => this.handleBaseURL(e)}></input>
68
- 阿里资源服务地址:<input placeholder="请输入阿里资源服务地址" value={this.state.resourcePath} onChange={e => this.handleResourcePath(e)}></input>
69
-
70
- <button className="button" onClick={this.startVideo.bind(this)}>开启视频</button>
71
- </div>
72
- }
73
- </div>
74
- );
75
- }
76
- }
77
-
78
-
79
- export default pdf;
1
+ import React, { Component } from "react";
2
+
3
+ class pdf extends Component {
4
+ state = {
5
+ isVideo: false,
6
+ tellerAccount: '',
7
+ callbackUrl: 'http://47.102.126.132:8720/hsbc/callback',
8
+ businessNumber: '',
9
+ lang: 'zh',
10
+ roomServerUrl: 'wss://mrtc.mpaas.cn-hangzhou.aliyuncs.com/ws',
11
+ baseURL:'https://counter-web.leimondata.cn:18082/api/leimon-counter-api',
12
+ resourcePath:'https://counter-web.leimondata.cn:7199',
13
+ }
14
+ startVideo = () => {
15
+ this.setState({
16
+ isVideo: true
17
+ })
18
+ }
19
+ onLeaveRoom = (val) => {
20
+ console.log(val)
21
+ this.setState({
22
+ isVideo: false
23
+ })
24
+ }
25
+ handleChangeTeller = (event) => {
26
+ this.setState({
27
+ tellerAccount: event.target.value
28
+ })
29
+ }
30
+ handleChangeCall = (event) => {
31
+ this.setState({
32
+ callbackUrl: event.target.value
33
+ })
34
+ }
35
+ handleChangeBysiness = (event) => {
36
+ this.setState({
37
+ businessNumber: event.target.value
38
+ })
39
+ }
40
+
41
+ handleRoomServerUrl = (event) => {
42
+ this.setState({
43
+ roomServerUrl: event.target.value
44
+ })
45
+ }
46
+ handleBaseURL = (event) => {
47
+ this.setState({
48
+ baseURL: event.target.value
49
+ })
50
+ }
51
+ handleResourcePath = (event) => {
52
+ this.setState({
53
+ resourcePath: event.target.value
54
+ })
55
+ }
56
+
57
+ render() {
58
+ console.log('22',this.props)
59
+ return (
60
+ <div className="test" style={{width: this.props.width,height:this.props.height}}>
61
+ {
62
+ <div>
63
+ 坐席账号:<input placeholder="请输入坐席账号" value={this.state.tellerAccount} onChange={e => this.handleChangeTeller(e)}></input>
64
+ 回调地址:<input placeholder="请输入回调地址" value={this.state.callbackUrl} onChange={e => this.handleChangeCall(e)}></input>
65
+ 全局流水号:<input placeholder="请输入全局流水号" value={this.state.businessNumber} onChange={e => this.handleChangeBysiness(e)}></input>
66
+ 阿里服务器地址:<input placeholder="请输入阿里服务器地址" value={this.state.roomServerUrl} onChange={e => this.handleRoomServerUrl(e)}></input>
67
+ 接口地址:<input placeholder="请输入接口地址" value={this.state.baseURL} onChange={e => this.handleBaseURL(e)}></input>
68
+ 阿里资源服务地址:<input placeholder="请输入阿里资源服务地址" value={this.state.resourcePath} onChange={e => this.handleResourcePath(e)}></input>
69
+
70
+ <button className="button" onClick={this.startVideo.bind(this)}>开启视频</button>
71
+ </div>
72
+ }
73
+ </div>
74
+ );
75
+ }
76
+ }
77
+
78
+
79
+ export default pdf;
@@ -1,13 +1,13 @@
1
- /**
2
- * 全局配置文件
3
- */
4
- let baseURL;
5
- // let imgUrl = '//elm.cangdu.org/img/';
6
- if(process.env.NODE_ENV === 'development'){
7
- baseURL = 'https://counter-web.leimondata.cn:18082/api/leimon-counter-api';
8
- }else{
9
- baseURL = 'https://counter-web.leimondata.cn:18082/api/leimon-counter-api';
10
- }
11
-
12
-
1
+ /**
2
+ * 全局配置文件
3
+ */
4
+ let baseURL;
5
+ // let imgUrl = '//elm.cangdu.org/img/';
6
+ if(process.env.NODE_ENV === 'development'){
7
+ baseURL = 'https://counter-web.leimondata.cn:18082/api/leimon-counter-api';
8
+ }else{
9
+ baseURL = 'https://counter-web.leimondata.cn:18082/api/leimon-counter-api';
10
+ }
11
+
12
+
13
13
  export default {baseURL}
package/packages/index.js CHANGED
@@ -1,3 +1,3 @@
1
- import "./style/index.less";
2
- export { default as HSBC } from "./pages/index";
1
+ import "./style/index.less";
2
+ export { default as HSBC } from "./pages/index";
3
3
  // export { default as HSBC } from "./demo/demo";
@@ -1,213 +1,213 @@
1
- import React, { Component } from 'react';
2
- import './foot.less'
3
- import Popover from "antd/lib/popover";
4
- import 'antd/lib/popover/style'
5
- export default class foot extends Component {
6
- voice = () => {
7
- this.props.voice()
8
- }
9
- cameraClick = () => {
10
- this.props.cameraClick()
11
- }
12
- transcribingClick = () => {
13
- this.props.transcribingClick()
14
- }
15
- sharedScreen=()=>{
16
- this.props.sharedScreen()
17
- }
18
- suspend=()=>{
19
- this.props.suspend()
20
- }
21
- endSession=()=>{
22
- this.props.endSession()
23
- }
24
- facialRecognition=()=>{
25
- this.props.facialRecognition()
26
- }
27
- ocrClick=()=>{
28
- this.props.ocrClick()
29
- }
30
- pictureInPicture=()=>{
31
- this.props.pictureInPicture()
32
- }
33
- invitationClick=()=>{
34
- this.props.invitationClick()
35
- }
36
- customerFaceClick=(item)=>{
37
- this.props.customerFaceClick(item)
38
- }
39
- facialHandleVisibleChange = visible => {
40
- console.log(visible)
41
- this.props.facialHandleVisibleChange(visible)
42
- };
43
- ocrHandleVisibleChange = visible => {
44
- console.log(visible)
45
- this.props.ocrHandleVisibleChange(visible)
46
- };
47
- inspection = ()=>{
48
- this.props.inspection()
49
- }
50
- switchExternal=()=>{
51
- this.props.switchExternal()
52
- }
53
- beautyClick=()=>{
54
- this.props.beautyClick()
55
- }
56
- graffiti=()=>{
57
- this.props.graffiti()
58
- }
59
- virtualization=()=>{
60
- this.props.virtualization()
61
- }
62
- render() {
63
- const {clickedOcr,clickedFacial,img,isWhiteboard,cameraImg,isTranscribing ,screenName,suspendName,customerList,menus,voiceName,beautyName} = this.props
64
- const content = (
65
- <div>
66
- {customerList.map((item,index)=>{
67
- return <div key={index}className="customer" onClick={this.customerFaceClick.bind(this,item)}>
68
- <img className="imgClassFoot" alt="" src={require("../../assets/img/youke.png").default} />
69
- <span className="listLi" key={item.customerId}>{item.name}</span>
70
- </div>
71
- }
72
- )
73
- }
74
- </div>
75
- );
76
- const defaultList = (
77
- <div className="total totalTwo">
78
- {/* {
79
- isWhiteboard&&<div className='footHover' onClick={this.switchExternal.bind(this)}>
80
- <div className="one">
81
- <img className="imgClass" src={require("../../assets/img/switchExternal.png").default} alt="" />
82
- <div className="text">
83
- 白板
84
- </div>
85
- </div>
86
- </div>
87
- } */}
88
- {
89
- menus.map((item,index)=>{
90
- return <div key={index}className='footHover'>
91
- {
92
- item == 'GRAFFITI'&&<div className='footHover' onClick={this.graffiti.bind(this)}>
93
- <div className="one">
94
- <img className="imgClass" src={require("../../assets/img/tuya.png").default} alt="" />
95
- <div className="text">
96
- 互动涂鸦
97
- </div>
98
- </div>
99
- </div>
100
- }
101
- {
102
- item == 'BACKGROUND'&&<div className='footHover' onClick={this.virtualization.bind(this)}>
103
- <div className="one">
104
- <img className="imgClass" src={require("../../assets/img/beijing.png").default} alt="" />
105
- <div className="text">
106
- 背景虚化
107
- </div>
108
- </div>
109
- </div>
110
- }
111
- {
112
- item == 'BOARD'&&<div className='footHover' onClick={this.switchExternal.bind(this)}>
113
- <div className="one">
114
- <img className="imgClass" src={require("../../assets/img/switchExternal.png").default} alt="" />
115
- <div className="text">
116
- 远程签署
117
- </div>
118
- </div>
119
- </div>
120
- }
121
- {
122
- item == 'SHARE' && <div className="one" onClick={this.sharedScreen.bind(this)}>
123
- <img className="imgClass" src={require("../../assets/img/Projection_screen.png").default} alt="" />
124
- <div className="text">
125
- {screenName}
126
- </div>
127
- </div>
128
- }
129
- {
130
- item == 'FRIES' && <Popover content={content} trigger="click" visible={clickedFacial} onVisibleChange={this.facialHandleVisibleChange}>
131
- <div className="one" onClick={this.facialRecognition.bind(this)}>
132
- <img className="imgClass" src={require("../../assets/img/Face_recognition.png").default} alt="" />
133
- <div className="text">
134
- 人脸识别
135
- </div>
136
- </div>
137
- </Popover>
138
- }
139
- {
140
- item == 'OCR' &&
141
- // <Popover content={content} trigger="click" visible={clickedOcr} onVisibleChange={this.ocrHandleVisibleChange}>
142
- <div className="one" onClick={this.ocrClick.bind(this)}>
143
- <img className="imgClass" src={require("../../assets/img/icon_ocr.png").default} alt="" />
144
- <div className="text">
145
- OCR识别
146
- </div>
147
- </div>
148
- // </Popover>
149
- }
150
- {
151
- item == 'INVITE' && <div className="one" onClick={this.invitationClick.bind(this)}>
152
- <img className="imgClass" src={require("../../assets/img/icon_invitation.png").default} alt="" />
153
- <div className="text">
154
- 邀请参会者
155
- </div>
156
- </div>
157
- }
158
-
159
-
160
- {
161
- item == 'PIP' && <div className="one" onClick={this.pictureInPicture.bind(this)}>
162
- <img className="imgClass" src={require("../../assets/img/huazhonghua.png").default} alt="" />
163
- <div className="text">
164
- 开启视频画中画
165
- </div>
166
- </div>
167
- }
168
- {
169
- item == 'BEAUTY' && <div className="one" onClick={this.beautyClick.bind(this)}>
170
- <img className="imgClass" src={require("../../assets/img/meiyan.png").default} alt="" />
171
- <div className="text">
172
- {beautyName}
173
- </div>
174
- </div>
175
- }
176
- </div>
177
-
178
- })
179
- }
180
- </div>
181
- );
182
- return (
183
- <div className="foot">
184
- <div className="total">
185
- <div className='footHover' onClick={this.voice.bind(this)}>
186
- <div className="one">
187
- <img className="imgClass" src={img} alt="" />
188
- <div className="text">
189
- {voiceName}
190
- </div>
191
- </div>
192
-
193
- </div>
194
- <div className='footHover' onClick={this.inspection.bind(this)}>
195
- <div className="one">
196
- <img className="imgClass" src={require("../../assets/img/inspection.png").default} alt="" />
197
- <div className="text">
198
- 设置视频设备
199
- </div>
200
- </div>
201
- </div>
202
- </div>
203
- {defaultList}
204
-
205
- <div className="total totalThree">
206
- <button className="buttonClass" onClick={this.endSession.bind(this)}>
207
- <span className="spanClass">结束会议</span>
208
- </button>
209
- </div>
210
- </div>
211
- )
212
- }
1
+ import React, { Component } from 'react';
2
+ import './foot.less'
3
+ import Popover from "antd/lib/popover";
4
+ import 'antd/lib/popover/style'
5
+ export default class foot extends Component {
6
+ voice = () => {
7
+ this.props.voice()
8
+ }
9
+ cameraClick = () => {
10
+ this.props.cameraClick()
11
+ }
12
+ transcribingClick = () => {
13
+ this.props.transcribingClick()
14
+ }
15
+ sharedScreen=()=>{
16
+ this.props.sharedScreen()
17
+ }
18
+ suspend=()=>{
19
+ this.props.suspend()
20
+ }
21
+ endSession=()=>{
22
+ this.props.endSession()
23
+ }
24
+ facialRecognition=()=>{
25
+ this.props.facialRecognition()
26
+ }
27
+ ocrClick=()=>{
28
+ this.props.ocrClick()
29
+ }
30
+ pictureInPicture=()=>{
31
+ this.props.pictureInPicture()
32
+ }
33
+ invitationClick=()=>{
34
+ this.props.invitationClick()
35
+ }
36
+ customerFaceClick=(item)=>{
37
+ this.props.customerFaceClick(item)
38
+ }
39
+ facialHandleVisibleChange = visible => {
40
+ console.log(visible)
41
+ this.props.facialHandleVisibleChange(visible)
42
+ };
43
+ ocrHandleVisibleChange = visible => {
44
+ console.log(visible)
45
+ this.props.ocrHandleVisibleChange(visible)
46
+ };
47
+ inspection = ()=>{
48
+ this.props.inspection()
49
+ }
50
+ switchExternal=()=>{
51
+ this.props.switchExternal()
52
+ }
53
+ beautyClick=()=>{
54
+ this.props.beautyClick()
55
+ }
56
+ graffiti=()=>{
57
+ this.props.graffiti()
58
+ }
59
+ virtualization=()=>{
60
+ this.props.virtualization()
61
+ }
62
+ render() {
63
+ const {clickedOcr,clickedFacial,img,isWhiteboard,cameraImg,isTranscribing ,screenName,suspendName,customerList,menus,voiceName,beautyName} = this.props
64
+ const content = (
65
+ <div>
66
+ {customerList.map((item,index)=>{
67
+ return <div key={index}className="customer" onClick={this.customerFaceClick.bind(this,item)}>
68
+ <img className="imgClassFoot" alt="" src={require("../../assets/img/youke.png").default} />
69
+ <span className="listLi" key={item.customerId}>{item.name}</span>
70
+ </div>
71
+ }
72
+ )
73
+ }
74
+ </div>
75
+ );
76
+ const defaultList = (
77
+ <div className="total totalTwo">
78
+ {/* {
79
+ isWhiteboard&&<div className='footHover' onClick={this.switchExternal.bind(this)}>
80
+ <div className="one">
81
+ <img className="imgClass" src={require("../../assets/img/switchExternal.png").default} alt="" />
82
+ <div className="text">
83
+ 白板
84
+ </div>
85
+ </div>
86
+ </div>
87
+ } */}
88
+ {
89
+ menus.map((item,index)=>{
90
+ return <div key={index}className='footHover'>
91
+ {
92
+ item == 'GRAFFITI'&&<div className='footHover' onClick={this.graffiti.bind(this)}>
93
+ <div className="one">
94
+ <img className="imgClass" src={require("../../assets/img/tuya.png").default} alt="" />
95
+ <div className="text">
96
+ 互动涂鸦
97
+ </div>
98
+ </div>
99
+ </div>
100
+ }
101
+ {
102
+ item == 'BACKGROUND'&&<div className='footHover' onClick={this.virtualization.bind(this)}>
103
+ <div className="one">
104
+ <img className="imgClass" src={require("../../assets/img/beijing.png").default} alt="" />
105
+ <div className="text">
106
+ 背景虚化
107
+ </div>
108
+ </div>
109
+ </div>
110
+ }
111
+ {
112
+ item == 'BOARD'&&<div className='footHover' onClick={this.switchExternal.bind(this)}>
113
+ <div className="one">
114
+ <img className="imgClass" src={require("../../assets/img/switchExternal.png").default} alt="" />
115
+ <div className="text">
116
+ 远程签署
117
+ </div>
118
+ </div>
119
+ </div>
120
+ }
121
+ {
122
+ item == 'SHARE' && <div className="one" onClick={this.sharedScreen.bind(this)}>
123
+ <img className="imgClass" src={require("../../assets/img/Projection_screen.png").default} alt="" />
124
+ <div className="text">
125
+ {screenName}
126
+ </div>
127
+ </div>
128
+ }
129
+ {
130
+ item == 'FRIES' && <Popover content={content} trigger="click" visible={clickedFacial} onVisibleChange={this.facialHandleVisibleChange}>
131
+ <div className="one" onClick={this.facialRecognition.bind(this)}>
132
+ <img className="imgClass" src={require("../../assets/img/Face_recognition.png").default} alt="" />
133
+ <div className="text">
134
+ 人脸识别
135
+ </div>
136
+ </div>
137
+ </Popover>
138
+ }
139
+ {
140
+ item == 'OCR' &&
141
+ // <Popover content={content} trigger="click" visible={clickedOcr} onVisibleChange={this.ocrHandleVisibleChange}>
142
+ <div className="one" onClick={this.ocrClick.bind(this)}>
143
+ <img className="imgClass" src={require("../../assets/img/icon_ocr.png").default} alt="" />
144
+ <div className="text">
145
+ OCR识别
146
+ </div>
147
+ </div>
148
+ // </Popover>
149
+ }
150
+ {
151
+ item == 'INVITE' && <div className="one" onClick={this.invitationClick.bind(this)}>
152
+ <img className="imgClass" src={require("../../assets/img/icon_invitation.png").default} alt="" />
153
+ <div className="text">
154
+ 邀请参会者
155
+ </div>
156
+ </div>
157
+ }
158
+
159
+
160
+ {
161
+ item == 'PIP' && <div className="one" onClick={this.pictureInPicture.bind(this)}>
162
+ <img className="imgClass" src={require("../../assets/img/huazhonghua.png").default} alt="" />
163
+ <div className="text">
164
+ 开启视频画中画
165
+ </div>
166
+ </div>
167
+ }
168
+ {
169
+ item == 'BEAUTY' && <div className="one" onClick={this.beautyClick.bind(this)}>
170
+ <img className="imgClass" src={require("../../assets/img/meiyan.png").default} alt="" />
171
+ <div className="text">
172
+ {beautyName}
173
+ </div>
174
+ </div>
175
+ }
176
+ </div>
177
+
178
+ })
179
+ }
180
+ </div>
181
+ );
182
+ return (
183
+ <div className="foot">
184
+ <div className="total">
185
+ <div className='footHover' onClick={this.voice.bind(this)}>
186
+ <div className="one">
187
+ <img className="imgClass" src={img} alt="" />
188
+ <div className="text">
189
+ {voiceName}
190
+ </div>
191
+ </div>
192
+
193
+ </div>
194
+ <div className='footHover' onClick={this.inspection.bind(this)}>
195
+ <div className="one">
196
+ <img className="imgClass" src={require("../../assets/img/inspection.png").default} alt="" />
197
+ <div className="text">
198
+ 设置视频设备
199
+ </div>
200
+ </div>
201
+ </div>
202
+ </div>
203
+ {defaultList}
204
+
205
+ <div className="total totalThree">
206
+ <button className="buttonClass" onClick={this.endSession.bind(this)}>
207
+ <span className="spanClass">结束会议</span>
208
+ </button>
209
+ </div>
210
+ </div>
211
+ )
212
+ }
213
213
  }