@cniot/android-pda-components 0.2.30 → 0.2.32
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.
- package/build/assets/index.51a8714a.css +1 -0
- package/build/assets/{index.96f23a3d.js → index.7a87ca33.js} +16 -16
- package/build/index.html +2 -2
- package/doc/index.jsx +3 -2
- package/es/index.cjs.js +1 -1
- package/es/index.es.js +11 -5
- package/es/style.css +1 -1
- package/package.json +1 -1
- package/build/assets/index.248cb4f2.css +0 -1
- package/packages/AppList/doc.jsx +0 -138
- package/packages/AppList/index.jsx +0 -33
- package/packages/AppList/index.less +0 -52
- package/packages/BaseLayout/BarcodeScan.jsx +0 -88
- package/packages/BaseLayout/BaseLayoutContainer.jsx +0 -208
- package/packages/BaseLayout/RfidOnce.jsx +0 -106
- package/packages/BaseLayout/RfidScan.jsx +0 -118
- package/packages/BaseLayout/doc.jsx +0 -177
- package/packages/BaseLayout/index.jsx +0 -52
- package/packages/BaseLayout/index.less +0 -47
- package/packages/Button/doc.jsx +0 -62
- package/packages/Button/index.jsx +0 -27
- package/packages/Button/index.less +0 -62
- package/packages/Confirm/doc.jsx +0 -147
- package/packages/Confirm/index.jsx +0 -71
- package/packages/Confirm/index.less +0 -55
- package/packages/Header/doc.jsx +0 -155
- package/packages/Header/index.jsx +0 -184
- package/packages/Header/index.less +0 -68
- package/packages/InfoCard/doc.jsx +0 -244
- package/packages/InfoCard/index.jsx +0 -67
- package/packages/InfoCard/index.less +0 -111
- package/packages/List/doc.jsx +0 -89
- package/packages/List/index.jsx +0 -54
- package/packages/List/index.less +0 -43
- package/packages/Overlay/doc.jsx +0 -103
- package/packages/Overlay/index.jsx +0 -42
- package/packages/Overlay/index.less +0 -28
- package/packages/PdaActionSheet/doc.jsx +0 -193
- package/packages/PdaActionSheet/index.jsx +0 -44
- package/packages/PdaActionSheet/index.less +0 -65
- package/packages/PdaDistanceCard/doc.jsx +0 -62
- package/packages/PdaDistanceCard/index.jsx +0 -35
- package/packages/PdaDistanceCard/index.less +0 -42
- package/packages/PdaFinishCard/doc.jsx +0 -111
- package/packages/PdaFinishCard/index.jsx +0 -62
- package/packages/PdaFinishCard/index.less +0 -62
- package/packages/PdaInfiniteScroll/doc.jsx +0 -121
- package/packages/PdaInfiniteScroll/index.jsx +0 -114
- package/packages/PdaInfiniteScroll/index.less +0 -12
- package/packages/PdaInfiniteScroll/utils.jsx +0 -25
- package/packages/PdaSteps/PdaStep/index.jsx +0 -38
- package/packages/PdaSteps/PdaStep/index.less +0 -70
- package/packages/PdaSteps/PdaSteps/index.jsx +0 -33
- package/packages/PdaSteps/PdaSteps/index.less +0 -0
- package/packages/PdaSteps/doc.jsx +0 -131
- package/packages/PdaSteps/index.jsx +0 -5
- package/packages/PdaTitle/doc.jsx +0 -102
- package/packages/PdaTitle/index.jsx +0 -51
- package/packages/PdaTitle/index.less +0 -65
- package/packages/Presentation/doc.jsx +0 -72
- package/packages/Presentation/index.jsx +0 -25
- package/packages/Presentation/index.less +0 -31
- package/packages/SelectCard/doc.jsx +0 -57
- package/packages/SelectCard/index.jsx +0 -13
- package/packages/SelectCard/index.less +0 -30
- package/packages/SimpleCard/doc.jsx +0 -59
- package/packages/SimpleCard/index.jsx +0 -13
- package/packages/SimpleCard/index.less +0 -38
- package/packages/SimpleCardBlock/doc.jsx +0 -77
- package/packages/SimpleCardBlock/index.jsx +0 -43
- package/packages/SimpleCardBlock/index.less +0 -26
- package/packages/SubCard/doc.jsx +0 -63
- package/packages/SubCard/index.jsx +0 -28
- package/packages/SubCard/index.less +0 -64
- package/packages/Tag/doc.jsx +0 -47
- package/packages/Tag/index.jsx +0 -12
- package/packages/Tag/index.less +0 -22
- package/packages/TaskCard/doc.jsx +0 -151
- package/packages/TaskCard/index.jsx +0 -65
- package/packages/TaskCard/index.less +0 -101
- package/packages/Toast/doc.jsx +0 -112
- package/packages/Toast/index.jsx +0 -7
- package/packages/Toast/index.less +0 -23
- package/packages/Toast/methods.jsx +0 -77
- package/packages/Toast/toast.jsx +0 -96
- package/packages/WakeKeyborard/doc.jsx +0 -170
- package/packages/WakeKeyborard/index.jsx +0 -61
- package/packages/WakeKeyborard/index.less +0 -55
- package/packages/WakeKeyborard/keyborard.jsx +0 -61
- package/packages/doc.jsx +0 -19
- package/packages/global.less +0 -7
- package/packages/index.jsx +0 -60
- package/packages/index.less +0 -3
- package/packages/pageflow-system-pages/alert/doc.jsx +0 -70
- package/packages/pageflow-system-pages/alert/index.jsx +0 -22
- package/packages/pageflow-system-pages/confirm/doc.jsx +0 -118
- package/packages/pageflow-system-pages/confirm/index.jsx +0 -31
- package/packages/pageflow-system-pages/debug/index.jsx +0 -27
- package/packages/pageflow-system-pages/debug/index.less +0 -5
- package/packages/pageflow-system-pages/index.jsx +0 -38
- package/packages/pageflow-system-pages/loading/index.jsx +0 -37
- package/packages/pageflow-system-pages/not-found/index.jsx +0 -12
- package/packages/pageflow-system-pages/not-found/index.less +0 -26
- package/packages/pageflow-system-pages/prompt/doc.jsx +0 -95
- package/packages/pageflow-system-pages/prompt/index.jsx +0 -43
- package/packages/pageflow-system-pages/prompt/index.less +0 -44
- package/packages/pageflow-system-pages/start/index.jsx +0 -28
- package/packages/pageflow-system-pages/start/index.less +0 -12
- package/packages/pageflow-system-pages/toast/doc.jsx +0 -76
- package/packages/pageflow-system-pages/toast/index.jsx +0 -42
- package/packages/utils/index.js +0 -56
- package/packages/variable.less +0 -4
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import React, { useEffect, useState } from 'react'
|
|
2
|
-
import { resolveContainer } from '../utils'
|
|
3
|
-
import ReactDOM from 'react-dom'
|
|
4
|
-
import { InternalToast } from './toast'
|
|
5
|
-
import { mergeProps } from '../utils'
|
|
6
|
-
|
|
7
|
-
const containers = [];
|
|
8
|
-
|
|
9
|
-
function unmount(container) {
|
|
10
|
-
const unmountResult = ReactDOM.unmountComponentAtNode(container)
|
|
11
|
-
if (unmountResult && container.parentNode) {
|
|
12
|
-
container.parentNode.removeChild(container)
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
const defaultProps = {
|
|
17
|
-
duration: 2000,
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
export function show(p) {
|
|
21
|
-
const props = mergeProps(
|
|
22
|
-
defaultProps,
|
|
23
|
-
p,
|
|
24
|
-
)
|
|
25
|
-
let timer = 0;
|
|
26
|
-
const { getContainer = () => document.body } = props
|
|
27
|
-
const container = document.createElement('div')
|
|
28
|
-
const bodyContainer = resolveContainer(getContainer)
|
|
29
|
-
bodyContainer.appendChild(container)
|
|
30
|
-
// console.log('container: ', container);
|
|
31
|
-
|
|
32
|
-
clear()
|
|
33
|
-
containers.push(container)
|
|
34
|
-
|
|
35
|
-
function TempToast() {
|
|
36
|
-
const [visible, setVisible] = useState(true)
|
|
37
|
-
useEffect(() => {
|
|
38
|
-
return () => {
|
|
39
|
-
props.afterClose && props.afterClose()
|
|
40
|
-
}
|
|
41
|
-
}, [])
|
|
42
|
-
|
|
43
|
-
useEffect(() => {
|
|
44
|
-
if (props.duration === 0) {
|
|
45
|
-
return
|
|
46
|
-
}
|
|
47
|
-
timer = window.setTimeout(() => {
|
|
48
|
-
setVisible(false)
|
|
49
|
-
}, props.duration)
|
|
50
|
-
return () => {
|
|
51
|
-
window.clearTimeout(timer)
|
|
52
|
-
}
|
|
53
|
-
}, [])
|
|
54
|
-
|
|
55
|
-
return (
|
|
56
|
-
<InternalToast
|
|
57
|
-
{...props}
|
|
58
|
-
getContainer={() => container}
|
|
59
|
-
visible={visible}
|
|
60
|
-
afterClose={() => {
|
|
61
|
-
unmount(container)
|
|
62
|
-
}}
|
|
63
|
-
/>
|
|
64
|
-
)
|
|
65
|
-
// return 'hello world: toast'
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
ReactDOM.render(<TempToast />, container)
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
export function clear() {
|
|
72
|
-
while (true) {
|
|
73
|
-
const container = containers.pop()
|
|
74
|
-
if (!container) break
|
|
75
|
-
unmount(container)
|
|
76
|
-
}
|
|
77
|
-
}
|
package/packages/Toast/toast.jsx
DELETED
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
import React, { useState, useEffect, ReactNode, useMemo } from "react";
|
|
2
|
-
import './index.less';
|
|
3
|
-
|
|
4
|
-
import classNames from 'classnames'
|
|
5
|
-
// import Mask from '../mask'
|
|
6
|
-
import { mergeProps, playSound } from '../utils'
|
|
7
|
-
// import { PropagationEvent } from '../utils'
|
|
8
|
-
// import { GetContainer } from '../utils'
|
|
9
|
-
import Overlay from '../Overlay'
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
function getTypeClass(type) {
|
|
13
|
-
return {
|
|
14
|
-
"success": "toast-wrap success",
|
|
15
|
-
"warning": "toast-wrap warning",
|
|
16
|
-
"error": "toast-wrap error",
|
|
17
|
-
}[type] || "toast-wrap"
|
|
18
|
-
}
|
|
19
|
-
export default function Toast(props) {
|
|
20
|
-
const { title = "title", message = "message", type = "success", duration = null } = props;
|
|
21
|
-
const [hidden, setHidden] = useState(false)
|
|
22
|
-
useEffect(() => {
|
|
23
|
-
if(window.WindVane){
|
|
24
|
-
if(type === 'warning') {
|
|
25
|
-
playSound('error1');
|
|
26
|
-
window.WindVane.call('WVMotion', 'vibrate', {duration: 400});
|
|
27
|
-
} else if(type === 'error') {
|
|
28
|
-
playSound('error2');
|
|
29
|
-
window.WindVane.call('WVMotion', 'vibrate', {duration: 200});
|
|
30
|
-
setTimeout(() => {
|
|
31
|
-
window.WindVane.call('WVMotion', 'vibrate', {duration: 300});
|
|
32
|
-
}, 250);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
}, [])
|
|
36
|
-
if (duration) {
|
|
37
|
-
setTimeout(() => {
|
|
38
|
-
setHidden(true);
|
|
39
|
-
}, duration);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
return !hidden ? (
|
|
43
|
-
<div className={getTypeClass(type)}>
|
|
44
|
-
<div className="toast-title">{title}</div>
|
|
45
|
-
<div className="toast-message">{message}</div>
|
|
46
|
-
</div>
|
|
47
|
-
) : null
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
const defaultProps = {
|
|
52
|
-
maskClickable: true,
|
|
53
|
-
stopPropagation: ['click'],
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
export const InternalToast = p => {
|
|
57
|
-
const props = mergeProps(defaultProps, p)
|
|
58
|
-
const { maskClickable, content, icon, position, title, message, type, visible } = props
|
|
59
|
-
|
|
60
|
-
return (
|
|
61
|
-
// <Mask
|
|
62
|
-
// visible={props.visible}
|
|
63
|
-
// destroyOnClose
|
|
64
|
-
// opacity={0}
|
|
65
|
-
// disableBodyScroll={!maskClickable}
|
|
66
|
-
// getContainer={props.getContainer}
|
|
67
|
-
// afterClose={props.afterClose}
|
|
68
|
-
// style={{
|
|
69
|
-
// pointerEvents: maskClickable ? 'none' : 'auto',
|
|
70
|
-
// ...props.maskStyle,
|
|
71
|
-
// }}
|
|
72
|
-
// className={classNames(`${classPrefix}-mask`, props.maskClassName)}
|
|
73
|
-
// stopPropagation={props.stopPropagation}
|
|
74
|
-
// >
|
|
75
|
-
// <div
|
|
76
|
-
// style={{ top }}
|
|
77
|
-
// className={classNames(
|
|
78
|
-
// `${classPrefix}-wrap`,
|
|
79
|
-
// icon ? `${classPrefix}-wrap-icon` : `${classPrefix}-wrap-text`
|
|
80
|
-
// )}
|
|
81
|
-
// >
|
|
82
|
-
// {/* {iconElement && (
|
|
83
|
-
// <div className={`${classPrefix}-icon`}>{iconElement}</div>
|
|
84
|
-
// )} */}
|
|
85
|
-
// {content}
|
|
86
|
-
// </div>
|
|
87
|
-
// </Mask>
|
|
88
|
-
<Overlay visible={visible} verticalPosition='bottom' closable={true}>
|
|
89
|
-
<Toast
|
|
90
|
-
title={title}
|
|
91
|
-
message={message}
|
|
92
|
-
type={type}
|
|
93
|
-
></Toast>
|
|
94
|
-
</Overlay>
|
|
95
|
-
)
|
|
96
|
-
}
|
|
@@ -1,170 +0,0 @@
|
|
|
1
|
-
import React, { useState } from "react";
|
|
2
|
-
import WakeKeyborard from "./index";
|
|
3
|
-
import Keyborard from "./keyborard";
|
|
4
|
-
import Button from '../Button';
|
|
5
|
-
|
|
6
|
-
export default function () {
|
|
7
|
-
const [input, setInput] = useState(false);
|
|
8
|
-
return (
|
|
9
|
-
<div>
|
|
10
|
-
<h1>WakeKeyborard</h1>
|
|
11
|
-
<p>WakeKeyborard</p>
|
|
12
|
-
<h2>示例</h2>
|
|
13
|
-
|
|
14
|
-
<div className="light-block">
|
|
15
|
-
<p>点击右下角键盘</p>
|
|
16
|
-
<WakeKeyborard
|
|
17
|
-
autoWakeup={true}
|
|
18
|
-
label='搜索'
|
|
19
|
-
onWakeKeyboard={() => { console.log('wake keyboard') }}
|
|
20
|
-
onHidden={() => { console.log('keyboard hidden') }}
|
|
21
|
-
onClick={v => { console.log('v is ', v); }}
|
|
22
|
-
type='text'
|
|
23
|
-
/>
|
|
24
|
-
<p>点击下面按钮唤起</p>
|
|
25
|
-
<Button
|
|
26
|
-
onClick={e => {
|
|
27
|
-
setInput(!input);
|
|
28
|
-
}}
|
|
29
|
-
>输入</Button>
|
|
30
|
-
{
|
|
31
|
-
input ? (
|
|
32
|
-
<Keyborard
|
|
33
|
-
onWakeKeyboard={
|
|
34
|
-
e => {
|
|
35
|
-
console.log('keyborard from button');
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
onClick={
|
|
39
|
-
v => {
|
|
40
|
-
console.log('value: ', v);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
onHidden={
|
|
44
|
-
e => {
|
|
45
|
-
console.log('keyborard hidden from button');
|
|
46
|
-
setInput(false);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
/>
|
|
50
|
-
) : null
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
</div>
|
|
54
|
-
<code className="code">{`
|
|
55
|
-
<WakeKeyborard
|
|
56
|
-
autoWakeup={true}
|
|
57
|
-
label='搜索'
|
|
58
|
-
onWakeKeyboard={() => { console.log('wake keyboard') }}
|
|
59
|
-
onHidden={() => { console.log('keyboard hidden') }}
|
|
60
|
-
onClick={v => { console.log('v is ', v); }}
|
|
61
|
-
type='text'
|
|
62
|
-
/>
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
const [input, setInput] = useState(false);
|
|
67
|
-
|
|
68
|
-
<Button
|
|
69
|
-
onClick={e => {
|
|
70
|
-
setInput(!input);
|
|
71
|
-
}}
|
|
72
|
-
>输入</Button>
|
|
73
|
-
{
|
|
74
|
-
input ? (
|
|
75
|
-
<Keyborard
|
|
76
|
-
onWakeKeyboard={
|
|
77
|
-
e => {
|
|
78
|
-
console.log('keyborard from button');
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
onClick={
|
|
82
|
-
v => {
|
|
83
|
-
console.log('value: ', v);
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
onHidden={
|
|
87
|
-
e => {
|
|
88
|
-
console.log('keyborard hidden from button');
|
|
89
|
-
setInput(false);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
/>
|
|
93
|
-
) : null
|
|
94
|
-
}
|
|
95
|
-
`}</code>
|
|
96
|
-
<h2>WakeKeyborard 参数</h2>
|
|
97
|
-
<table className="pure-table pure-table-bordered">
|
|
98
|
-
<thead>
|
|
99
|
-
<tr>
|
|
100
|
-
<th>属性</th>
|
|
101
|
-
<th>说明</th>
|
|
102
|
-
<th>类型</th>
|
|
103
|
-
<th>默认值</th>
|
|
104
|
-
</tr>
|
|
105
|
-
</thead>
|
|
106
|
-
<tbody>
|
|
107
|
-
<tr>
|
|
108
|
-
<td>autoWakeup</td>
|
|
109
|
-
<td>自动唤起</td>
|
|
110
|
-
<td>boolean</td>
|
|
111
|
-
<td>false</td>
|
|
112
|
-
</tr>
|
|
113
|
-
|
|
114
|
-
</tbody>
|
|
115
|
-
</table>
|
|
116
|
-
<p>其他参数同下面 Keyboard 参数</p>
|
|
117
|
-
|
|
118
|
-
<h2>Keyborard 参数</h2>
|
|
119
|
-
<table className="pure-table pure-table-bordered">
|
|
120
|
-
<thead>
|
|
121
|
-
<tr>
|
|
122
|
-
<th>属性</th>
|
|
123
|
-
<th>说明</th>
|
|
124
|
-
<th>类型</th>
|
|
125
|
-
<th>默认值</th>
|
|
126
|
-
</tr>
|
|
127
|
-
</thead>
|
|
128
|
-
<tbody>
|
|
129
|
-
<tr>
|
|
130
|
-
<td>label</td>
|
|
131
|
-
<td>确认按键文案</td>
|
|
132
|
-
<td>string</td>
|
|
133
|
-
<td>查询</td>
|
|
134
|
-
</tr>
|
|
135
|
-
<tr>
|
|
136
|
-
<td>onWakeKeyboard</td>
|
|
137
|
-
<td>唤起键盘回调</td>
|
|
138
|
-
<td>function</td>
|
|
139
|
-
<td></td>
|
|
140
|
-
</tr>
|
|
141
|
-
<tr>
|
|
142
|
-
<td>onClick</td>
|
|
143
|
-
<td>点击查询回调</td>
|
|
144
|
-
<td>function: (value) => { }</td>
|
|
145
|
-
<td>(value) => { }</td>
|
|
146
|
-
</tr>
|
|
147
|
-
<tr>
|
|
148
|
-
<td>onHidden</td>
|
|
149
|
-
<td>键盘隐藏时回调</td>
|
|
150
|
-
<td>function: (value) => { }</td>
|
|
151
|
-
<td>(value) => { }</td>
|
|
152
|
-
</tr>
|
|
153
|
-
<tr>
|
|
154
|
-
<td>type</td>
|
|
155
|
-
<td>键盘 type</td>
|
|
156
|
-
<td>string</td>
|
|
157
|
-
<td>tel</td>
|
|
158
|
-
</tr>
|
|
159
|
-
<tr>
|
|
160
|
-
<td>placeholder</td>
|
|
161
|
-
<td>输入框 placeholder</td>
|
|
162
|
-
<td>string</td>
|
|
163
|
-
<td>请输入</td>
|
|
164
|
-
</tr>
|
|
165
|
-
</tbody>
|
|
166
|
-
</table>
|
|
167
|
-
|
|
168
|
-
</div>
|
|
169
|
-
);
|
|
170
|
-
}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import React, { useState, useEffect, useRef } from "react";
|
|
2
|
-
// import OPInput from "../OPInput";
|
|
3
|
-
import "./index.less";
|
|
4
|
-
// import classNames from "classnames";
|
|
5
|
-
import Button from '../Button'
|
|
6
|
-
import Keyborard from "./keyborard";
|
|
7
|
-
|
|
8
|
-
const blankFunc = () => { };
|
|
9
|
-
export default function WakeKeyborard(props) {
|
|
10
|
-
const [inputVisible, setInputVisible] = useState(props.autoWakeup || false);
|
|
11
|
-
// const inputRef = useRef(null);
|
|
12
|
-
|
|
13
|
-
// const { label = "查询", onWakeKeyboard = blankFunc, onClick = blankFunc, onHidden = blankFunc } = props;
|
|
14
|
-
const { onClick = blankFunc, onHidden = blankFunc, ...keyborardProps } = props;
|
|
15
|
-
|
|
16
|
-
return (
|
|
17
|
-
<div className="wakekeyborard">
|
|
18
|
-
{
|
|
19
|
-
inputVisible ? (
|
|
20
|
-
<Keyborard
|
|
21
|
-
// label={label}
|
|
22
|
-
onClick={
|
|
23
|
-
(v, e) => {
|
|
24
|
-
onClick(v);
|
|
25
|
-
setInputVisible(!inputVisible);
|
|
26
|
-
// onHidden(true);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
onHidden={
|
|
30
|
-
s => {
|
|
31
|
-
setInputVisible(false);
|
|
32
|
-
onHidden(s);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
{...keyborardProps}
|
|
36
|
-
/>
|
|
37
|
-
) : null
|
|
38
|
-
}
|
|
39
|
-
{
|
|
40
|
-
!inputVisible ? (
|
|
41
|
-
<div
|
|
42
|
-
className="wakekeyborard-icon"
|
|
43
|
-
onClick={
|
|
44
|
-
e => {
|
|
45
|
-
// this.setState({ inputVisible: !inputVisible });
|
|
46
|
-
setInputVisible(!inputVisible);
|
|
47
|
-
// requestAnimationFrame(() => {
|
|
48
|
-
// onWakeKeyboard();
|
|
49
|
-
// })
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
></div>
|
|
53
|
-
) : null
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
</div>
|
|
57
|
-
)
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
WakeKeyborard.Keyborard = Keyborard;
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
.wakekeyborard {
|
|
2
|
-
.wakekeyborard-icon {
|
|
3
|
-
width: 80px;
|
|
4
|
-
height: 80px;
|
|
5
|
-
background-image: url(https://img.alicdn.com/imgextra/i3/O1CN01kxYh3U25Xzr9nAcYp_!!6000000007537-2-tps-240-240.png);
|
|
6
|
-
background-size: 100%;
|
|
7
|
-
|
|
8
|
-
position: fixed;
|
|
9
|
-
right: 24px;
|
|
10
|
-
bottom: 24px;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
.wakekeyborard-overlay {
|
|
15
|
-
position: fixed;
|
|
16
|
-
top: 0;
|
|
17
|
-
right: 0;
|
|
18
|
-
left: 0;
|
|
19
|
-
bottom: 0;
|
|
20
|
-
background-color: rgba(222, 222, 222, 0.2);
|
|
21
|
-
}
|
|
22
|
-
.wakekeyborard-inputbox {
|
|
23
|
-
width: 100%;
|
|
24
|
-
display: flex;
|
|
25
|
-
flex-direction: row;
|
|
26
|
-
height: 85px;
|
|
27
|
-
|
|
28
|
-
position: absolute;
|
|
29
|
-
bottom: 0;
|
|
30
|
-
left: 0;
|
|
31
|
-
right: 0;
|
|
32
|
-
|
|
33
|
-
input {
|
|
34
|
-
// width: 330px;
|
|
35
|
-
width:100%;
|
|
36
|
-
border-radius: 16px 0 0 0 ;
|
|
37
|
-
border: 0;
|
|
38
|
-
font-size: 42px;
|
|
39
|
-
background-color: white;
|
|
40
|
-
padding-left: 20px;
|
|
41
|
-
&:focus {
|
|
42
|
-
outline: none;
|
|
43
|
-
}
|
|
44
|
-
&::-webkit-input-placeholder {
|
|
45
|
-
color: rgb(209, 209, 214);
|
|
46
|
-
font-size: 32px;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
button {
|
|
50
|
-
width: 150px;
|
|
51
|
-
border: 0;
|
|
52
|
-
border-radius: 0 16px 0 0;
|
|
53
|
-
background-color: white;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import React, { useState, useEffect, useRef } from "react";
|
|
2
|
-
import "./index.less";
|
|
3
|
-
import Button from '../Button'
|
|
4
|
-
|
|
5
|
-
const blankFunc = () => { };
|
|
6
|
-
export default function Keyborard(props) {
|
|
7
|
-
const { label = "查询", onWakeKeyboard = blankFunc, onClick = blankFunc, onHidden = blankFunc, type='tel', placeholder='请输入' } = props;
|
|
8
|
-
const inputRef = useRef(null);
|
|
9
|
-
const [visible, setVisible] = useState(true);
|
|
10
|
-
|
|
11
|
-
useEffect(() => {
|
|
12
|
-
const handleKeyUp = e => {
|
|
13
|
-
const { code, keyCode, key } = e;
|
|
14
|
-
if (code === 'Enter') {
|
|
15
|
-
e.preventDefault();
|
|
16
|
-
onClick(inputRef.current.value, e);
|
|
17
|
-
onHidden(true);
|
|
18
|
-
setVisible(false);
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
requestAnimationFrame(() => {
|
|
23
|
-
inputRef.current.focus();
|
|
24
|
-
onWakeKeyboard();
|
|
25
|
-
})
|
|
26
|
-
|
|
27
|
-
document.addEventListener('keyup', handleKeyUp);
|
|
28
|
-
return () => {
|
|
29
|
-
document.removeEventListener('keyup', handleKeyUp);
|
|
30
|
-
}
|
|
31
|
-
}, [])
|
|
32
|
-
|
|
33
|
-
if(!visible) return null;
|
|
34
|
-
return (
|
|
35
|
-
<div
|
|
36
|
-
className="wakekeyborard-overlay"
|
|
37
|
-
onClick={e => {
|
|
38
|
-
if (e.target.className && e.target.className.includes('wakekeyborard-overlay')) {
|
|
39
|
-
onHidden(false);
|
|
40
|
-
setVisible(false);
|
|
41
|
-
}
|
|
42
|
-
}}
|
|
43
|
-
>
|
|
44
|
-
<div className="wakekeyborard-inputbox">
|
|
45
|
-
<input
|
|
46
|
-
ref={inputRef}
|
|
47
|
-
type={type}
|
|
48
|
-
placeholder={placeholder}
|
|
49
|
-
/>
|
|
50
|
-
<Button
|
|
51
|
-
type="cutout"
|
|
52
|
-
onClick={ e => {
|
|
53
|
-
onClick(inputRef.current.value, e);
|
|
54
|
-
onHidden(true);
|
|
55
|
-
setVisible(false);
|
|
56
|
-
}}
|
|
57
|
-
>{label}</Button>
|
|
58
|
-
</div>
|
|
59
|
-
</div>
|
|
60
|
-
)
|
|
61
|
-
}
|
package/packages/doc.jsx
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
// import Button from "./index";
|
|
3
|
-
export default function () {
|
|
4
|
-
return (
|
|
5
|
-
<div>
|
|
6
|
-
<h1>快速开始</h1>
|
|
7
|
-
|
|
8
|
-
<code className="code">{`
|
|
9
|
-
|
|
10
|
-
tnpm install @cniot/android-pda-components --save
|
|
11
|
-
|
|
12
|
-
import { Button } from '@cniot/android-pda-components';
|
|
13
|
-
|
|
14
|
-
import '@cniot/android-pda-components/es/style.css';
|
|
15
|
-
|
|
16
|
-
`}</code>
|
|
17
|
-
</div>
|
|
18
|
-
);
|
|
19
|
-
}
|
package/packages/global.less
DELETED
package/packages/index.jsx
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import './global.less';
|
|
2
|
-
|
|
3
|
-
import Title from "./PdaTitle";
|
|
4
|
-
import Header from "./Header";
|
|
5
|
-
import Button from "./Button";
|
|
6
|
-
import InfoCard from "./InfoCard";
|
|
7
|
-
import TaskCard from "./TaskCard";
|
|
8
|
-
import Confirm from './Confirm';
|
|
9
|
-
import Toast from './Toast';
|
|
10
|
-
import Overlay from "./Overlay";
|
|
11
|
-
import PageFlowSystemPages from './pageflow-system-pages/index.jsx';
|
|
12
|
-
import Presentation from "./Presentation";
|
|
13
|
-
import List from "./List";
|
|
14
|
-
import BaseLayout from "./BaseLayout";
|
|
15
|
-
import WakeKeyborard from "./WakeKeyborard";
|
|
16
|
-
import Keyborard from './WakeKeyborard/keyborard';
|
|
17
|
-
|
|
18
|
-
import Steps from "./PdaSteps";
|
|
19
|
-
import FinishCard from "./PdaFinishCard";
|
|
20
|
-
import DistanceCard from "./PdaDistanceCard";
|
|
21
|
-
import SubCard from './SubCard';
|
|
22
|
-
import SelectCard from './SelectCard';
|
|
23
|
-
import AppList from './AppList';
|
|
24
|
-
import InfiniteScroll from './PdaInfiniteScroll';
|
|
25
|
-
import ActionSheet from './PdaActionSheet';
|
|
26
|
-
import Tag from './Tag';
|
|
27
|
-
import SimpleCard from './SimpleCard';
|
|
28
|
-
import SimpleCardBlock from './SimpleCardBlock';
|
|
29
|
-
|
|
30
|
-
// 兼容之前 ListItem 卡片命名逻辑
|
|
31
|
-
const ListItem = TaskCard;
|
|
32
|
-
|
|
33
|
-
export {
|
|
34
|
-
Title,
|
|
35
|
-
Header,
|
|
36
|
-
Button,
|
|
37
|
-
InfoCard,
|
|
38
|
-
Steps,
|
|
39
|
-
ListItem,
|
|
40
|
-
TaskCard,
|
|
41
|
-
Confirm,
|
|
42
|
-
Toast,
|
|
43
|
-
Overlay,
|
|
44
|
-
DistanceCard,
|
|
45
|
-
PageFlowSystemPages,
|
|
46
|
-
Presentation,
|
|
47
|
-
List,
|
|
48
|
-
WakeKeyborard,
|
|
49
|
-
Keyborard,
|
|
50
|
-
SubCard,
|
|
51
|
-
SelectCard,
|
|
52
|
-
FinishCard,
|
|
53
|
-
InfiniteScroll,
|
|
54
|
-
BaseLayout,
|
|
55
|
-
ActionSheet,
|
|
56
|
-
AppList,
|
|
57
|
-
Tag,
|
|
58
|
-
SimpleCard,
|
|
59
|
-
SimpleCardBlock,
|
|
60
|
-
};
|
package/packages/index.less
DELETED
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import SystemAlert from "./index";
|
|
3
|
-
|
|
4
|
-
import service from '../../../mock/service';
|
|
5
|
-
export default function () {
|
|
6
|
-
return (
|
|
7
|
-
<div>
|
|
8
|
-
<h1>/system/alert</h1>
|
|
9
|
-
<p>弹出一个警告窗,用户必须点击确认才能继续</p>
|
|
10
|
-
<h2>示例</h2>
|
|
11
|
-
<code className="code">
|
|
12
|
-
{
|
|
13
|
-
`
|
|
14
|
-
// gs 代码如下
|
|
15
|
-
pageFlow.alert({
|
|
16
|
-
title: '111',
|
|
17
|
-
message: '2222',
|
|
18
|
-
okText: "确认"
|
|
19
|
-
})
|
|
20
|
-
`
|
|
21
|
-
}
|
|
22
|
-
</code>
|
|
23
|
-
<h2>页面效果</h2>
|
|
24
|
-
<div className="light-block light-block-overlay">
|
|
25
|
-
<SystemAlert service={service} data={{
|
|
26
|
-
title: '111',
|
|
27
|
-
message: '2222',
|
|
28
|
-
okText: "确认"
|
|
29
|
-
}} ></SystemAlert>
|
|
30
|
-
</div>
|
|
31
|
-
<h2>Alert</h2>
|
|
32
|
-
<table className="pure-table pure-table-bordered">
|
|
33
|
-
<thead>
|
|
34
|
-
<tr>
|
|
35
|
-
<th>属性</th>
|
|
36
|
-
<th>说明</th>
|
|
37
|
-
<th>类型</th>
|
|
38
|
-
<th>默认值</th>
|
|
39
|
-
</tr>
|
|
40
|
-
</thead>
|
|
41
|
-
<tbody>
|
|
42
|
-
<tr>
|
|
43
|
-
<td>title</td>
|
|
44
|
-
<td>标题</td>
|
|
45
|
-
<td>string</td>
|
|
46
|
-
<td></td>
|
|
47
|
-
</tr>
|
|
48
|
-
<tr>
|
|
49
|
-
<td>message</td>
|
|
50
|
-
<td>信息</td>
|
|
51
|
-
<td>string</td>
|
|
52
|
-
<td></td>
|
|
53
|
-
</tr>
|
|
54
|
-
<tr>
|
|
55
|
-
<td>okText</td>
|
|
56
|
-
<td>确认文本</td>
|
|
57
|
-
<td>string</td>
|
|
58
|
-
<td></td>
|
|
59
|
-
</tr>
|
|
60
|
-
<tr>
|
|
61
|
-
<td>okDataClick</td>
|
|
62
|
-
<td>ok 按钮 arms 监控</td>
|
|
63
|
-
<td>string</td>
|
|
64
|
-
<td></td>
|
|
65
|
-
</tr>
|
|
66
|
-
</tbody>
|
|
67
|
-
</table>
|
|
68
|
-
</div>
|
|
69
|
-
);
|
|
70
|
-
}
|