@beppla/tapas-ui 1.5.2 → 1.5.6
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/commonjs/Alert/README.md +75 -0
- package/commonjs/BarChart/README.md +172 -0
- package/commonjs/Button/README.md +108 -0
- package/commonjs/Calendar/Calendar.base.js +1 -1
- package/commonjs/Calendar/Calendar.base.js.map +1 -1
- package/commonjs/Calendar/README.md +410 -0
- package/commonjs/Card/README.md +126 -0
- package/commonjs/CheckBox/README.md +147 -0
- package/commonjs/CircularProgress/README.md +70 -0
- package/commonjs/Collapsible/README.md +140 -0
- package/commonjs/ComboChart/README.md +124 -0
- package/commonjs/DashboardCard/README.md +120 -0
- package/commonjs/DataTable/README.md +159 -0
- package/commonjs/DeviceSelectionModal/README.md +124 -0
- package/commonjs/DraggableFlatList/README.md +35 -0
- package/commonjs/Drawer/README.md +175 -0
- package/commonjs/Dropdown/README.md +230 -0
- package/commonjs/ExternalLink/README.md +81 -0
- package/commonjs/Gantt/README.md +155 -0
- package/commonjs/Grid/README.md +197 -0
- package/commonjs/Header/README.md +109 -0
- package/commonjs/HelloWave/README.md +28 -0
- package/commonjs/Hoverable/Hoverable.js.map +1 -1
- package/commonjs/IconText/README.md +99 -0
- package/commonjs/Image/PreviewImg/README.md +100 -0
- package/commonjs/Image/README.md +88 -0
- package/commonjs/Input/Input.js +60 -4
- package/commonjs/Input/Input.js.map +1 -1
- package/commonjs/Layout/README.md +174 -0
- package/commonjs/LineChart/README.md +181 -0
- package/commonjs/ListItem/README.md +122 -0
- package/commonjs/MessageBox/MessageBox.js +7 -1
- package/commonjs/MessageBox/MessageBox.js.map +1 -1
- package/commonjs/MessageBox/README.md +120 -0
- package/commonjs/Navigation/README.md +197 -0
- package/commonjs/NumericInput/README.md +95 -0
- package/commonjs/Overlay/README.md +84 -0
- package/commonjs/Pagination/README.md +106 -0
- package/commonjs/PieChart/README.md +212 -0
- package/commonjs/Popover/README.md +82 -0
- package/commonjs/Progress/README.md +106 -0
- package/commonjs/RadioButton/README.md +85 -0
- package/commonjs/ScanButton/README.md +72 -0
- package/commonjs/SearchInput/SearchInput.js.map +1 -1
- package/commonjs/SheetTitle/README.md +89 -0
- package/commonjs/Shell/README.md +152 -0
- package/commonjs/Shell/Shell.js.map +1 -1
- package/commonjs/StatisticCard/README.md +129 -0
- package/commonjs/Status/README.md +75 -0
- package/commonjs/Steps/README.md +76 -0
- package/commonjs/Switch/Switch.js +101 -0
- package/commonjs/Switch/Switch.js.map +1 -0
- package/commonjs/Tab/README.md +161 -0
- package/commonjs/Tag/README.md +93 -0
- package/commonjs/Task/README.md +110 -0
- package/commonjs/Text/README.md +97 -0
- package/commonjs/TextArea/README.md +127 -0
- package/commonjs/TextArea/TextArea.js +4 -2
- package/commonjs/TextArea/TextArea.js.map +1 -1
- package/commonjs/Theme/README.md +161 -0
- package/commonjs/Theme/makeStyles.js +30 -0
- package/commonjs/Theme/makeStyles.js.map +1 -0
- package/commonjs/Theme/withTheme.js +91 -0
- package/commonjs/Theme/withTheme.js.map +1 -0
- package/commonjs/Timeline/README.md +111 -0
- package/commonjs/Toast/README.md +96 -0
- package/commonjs/Upload/Upload.js +126 -0
- package/commonjs/Upload/Upload.js.map +1 -0
- package/commonjs/index.js +24 -4
- package/commonjs/index.js.map +1 -1
- package/module/Alert/README.md +75 -0
- package/module/BarChart/README.md +172 -0
- package/module/Button/README.md +108 -0
- package/module/Calendar/Calendar.base.js +1 -1
- package/module/Calendar/Calendar.base.js.map +1 -1
- package/module/Calendar/README.md +410 -0
- package/module/Card/README.md +126 -0
- package/module/CheckBox/README.md +147 -0
- package/module/CircularProgress/README.md +70 -0
- package/module/Collapsible/README.md +140 -0
- package/module/ComboChart/README.md +124 -0
- package/module/DashboardCard/README.md +120 -0
- package/module/DataTable/README.md +159 -0
- package/module/DeviceSelectionModal/README.md +124 -0
- package/module/DraggableFlatList/README.md +35 -0
- package/module/Drawer/README.md +175 -0
- package/module/Dropdown/README.md +230 -0
- package/module/ExternalLink/README.md +81 -0
- package/module/Gantt/README.md +155 -0
- package/module/Grid/README.md +197 -0
- package/module/Header/README.md +109 -0
- package/module/HelloWave/README.md +28 -0
- package/module/Hoverable/Hoverable.js.map +1 -1
- package/module/IconText/README.md +99 -0
- package/module/Image/PreviewImg/README.md +100 -0
- package/module/Image/README.md +88 -0
- package/module/Input/Input.js +60 -4
- package/module/Input/Input.js.map +1 -1
- package/module/Layout/README.md +174 -0
- package/module/LineChart/README.md +181 -0
- package/module/ListItem/README.md +122 -0
- package/module/MessageBox/MessageBox.js +8 -2
- package/module/MessageBox/MessageBox.js.map +1 -1
- package/module/MessageBox/README.md +120 -0
- package/module/Navigation/README.md +197 -0
- package/module/NumericInput/README.md +95 -0
- package/module/Overlay/README.md +84 -0
- package/module/Pagination/README.md +106 -0
- package/module/PieChart/README.md +212 -0
- package/module/Popover/README.md +82 -0
- package/module/Progress/README.md +106 -0
- package/module/RadioButton/README.md +85 -0
- package/module/ScanButton/README.md +72 -0
- package/module/SearchInput/SearchInput.js.map +1 -1
- package/module/SheetTitle/README.md +89 -0
- package/module/Shell/README.md +152 -0
- package/module/Shell/Shell.js.map +1 -1
- package/module/StatisticCard/README.md +129 -0
- package/module/Status/README.md +75 -0
- package/module/Steps/README.md +76 -0
- package/module/Switch/Switch.js +96 -0
- package/module/Switch/Switch.js.map +1 -0
- package/module/Tab/README.md +161 -0
- package/module/Tag/README.md +93 -0
- package/module/Task/README.md +110 -0
- package/module/Text/README.md +97 -0
- package/module/TextArea/README.md +127 -0
- package/module/TextArea/TextArea.js +4 -2
- package/module/TextArea/TextArea.js.map +1 -1
- package/module/Theme/README.md +161 -0
- package/module/Theme/makeStyles.js +24 -0
- package/module/Theme/makeStyles.js.map +1 -0
- package/module/Theme/withTheme.js +82 -0
- package/module/Theme/withTheme.js.map +1 -0
- package/module/Timeline/README.md +111 -0
- package/module/Toast/README.md +96 -0
- package/module/Upload/Upload.js +121 -0
- package/module/Upload/Upload.js.map +1 -0
- package/module/index.js +11 -3
- package/module/index.js.map +1 -1
- package/package.json +1 -1
- package/typescript/Grid/FixedSizeGrid.d.ts +1 -3
- package/typescript/Grid/FixedSizeGrid.d.ts.map +1 -1
- package/typescript/Grid/Grid.base.d.ts +1 -3
- package/typescript/Grid/Grid.base.d.ts.map +1 -1
- package/typescript/Grid/VariableSizeGrid.d.ts +1 -3
- package/typescript/Grid/VariableSizeGrid.d.ts.map +1 -1
- package/typescript/Input/Input.d.ts +5 -0
- package/typescript/Input/Input.d.ts.map +1 -1
- package/typescript/MessageBox/MessageBox.d.ts.map +1 -1
- package/typescript/SearchInput/SearchInput.d.ts +4 -0
- package/typescript/SearchInput/SearchInput.d.ts.map +1 -1
- package/typescript/Switch/Switch.d.ts +15 -0
- package/typescript/Switch/Switch.d.ts.map +1 -0
- package/typescript/TextArea/TextArea.d.ts +2 -0
- package/typescript/TextArea/TextArea.d.ts.map +1 -1
- package/typescript/Theme/makeStyles.d.ts +11 -0
- package/typescript/Theme/makeStyles.d.ts.map +1 -0
- package/typescript/Theme/withTheme.d.ts +12 -0
- package/typescript/Theme/withTheme.d.ts.map +1 -0
- package/typescript/Upload/Upload.d.ts +25 -0
- package/typescript/Upload/Upload.d.ts.map +1 -0
- package/typescript/WebViewBridge/useWebViewBridge.d.ts +1 -1
- package/typescript/WebViewBridge/useWebViewBridge.d.ts.map +1 -1
- package/typescript/common/hooks/useBridgelessFix.d.ts +1 -1
- package/typescript/index.d.ts +7 -1
- package/typescript/index.d.ts.map +1 -1
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
# Timeline
|
|
2
|
+
|
|
3
|
+
时间线组件,用于展示按时间排列的事件或活动列表。每个事件节点包含时间和描述,支持多种状态(选中、禁用、错误),并提供 Hover 交互效果和点击回调。
|
|
4
|
+
|
|
5
|
+
## 功能特性
|
|
6
|
+
|
|
7
|
+
- ✅ 纵向时间线布局,节点 + 连接线
|
|
8
|
+
- ✅ 四种节点状态:默认、selected(选中)、disabled(禁用)、error(错误)
|
|
9
|
+
- ✅ 状态对应不同的颜色和线条样式(实线/虚线)
|
|
10
|
+
- ✅ 错误状态显示警告图标
|
|
11
|
+
- ✅ Hover 高亮效果(Hoverable 组件)
|
|
12
|
+
- ✅ 支持点击事件回调
|
|
13
|
+
- ✅ 标题 + 滚动内容区域
|
|
14
|
+
- ✅ 自定义容器和内容区域样式
|
|
15
|
+
- ✅ 主题色适配
|
|
16
|
+
|
|
17
|
+
## 安装使用
|
|
18
|
+
|
|
19
|
+
```tsx
|
|
20
|
+
import { Timeline } from '@beppla/tapas-ui';
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Props
|
|
24
|
+
|
|
25
|
+
| 属性 | 类型 | 默认值 | 说明 |
|
|
26
|
+
|------|------|--------|------|
|
|
27
|
+
| data | `IData` | - | 时间线数据(必填) |
|
|
28
|
+
| itemContainerStyle | `StyleProp<ViewStyle>` | - | 事件列表容器样式(必填) |
|
|
29
|
+
| onPress | `(item: Item) => void` | - | 事件项点击回调 |
|
|
30
|
+
| selected | `boolean` | `false` | 全局选中状态(预留) |
|
|
31
|
+
| disabled | `boolean` | - | 全局禁用状态(预留) |
|
|
32
|
+
| containerStyle | `StyleProp<ViewStyle>` | - | 最外层容器样式 |
|
|
33
|
+
| testID | `string` | - | 测试标识 |
|
|
34
|
+
|
|
35
|
+
### IData
|
|
36
|
+
|
|
37
|
+
```tsx
|
|
38
|
+
interface IData {
|
|
39
|
+
title: string;
|
|
40
|
+
items: Item[];
|
|
41
|
+
}
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### Item
|
|
45
|
+
|
|
46
|
+
```tsx
|
|
47
|
+
interface Item {
|
|
48
|
+
id: string;
|
|
49
|
+
time: string;
|
|
50
|
+
description: string;
|
|
51
|
+
selected?: boolean;
|
|
52
|
+
disabled?: boolean;
|
|
53
|
+
error?: boolean;
|
|
54
|
+
}
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## 使用示例
|
|
58
|
+
|
|
59
|
+
### 基础用法
|
|
60
|
+
|
|
61
|
+
```tsx
|
|
62
|
+
const data = {
|
|
63
|
+
title: 'Order History',
|
|
64
|
+
items: [
|
|
65
|
+
{ id: '1', time: '09:00', description: 'Order placed', selected: true },
|
|
66
|
+
{ id: '2', time: '10:30', description: 'Payment confirmed' },
|
|
67
|
+
{ id: '3', time: '14:00', description: 'Shipped' },
|
|
68
|
+
],
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
<Timeline
|
|
72
|
+
data={data}
|
|
73
|
+
itemContainerStyle={{ minHeight: 200 }}
|
|
74
|
+
onPress={(item) => console.log('Clicked:', item.id)}
|
|
75
|
+
/>
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### 错误状态
|
|
79
|
+
|
|
80
|
+
```tsx
|
|
81
|
+
const data = {
|
|
82
|
+
title: 'Delivery Status',
|
|
83
|
+
items: [
|
|
84
|
+
{ id: '1', time: '08:00', description: 'Dispatched', selected: true },
|
|
85
|
+
{ id: '2', time: '12:00', description: 'Delivery failed', error: true },
|
|
86
|
+
{ id: '3', time: '15:00', description: 'Rescheduled', disabled: true },
|
|
87
|
+
],
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
<Timeline data={data} itemContainerStyle={{ minHeight: 300 }} />
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### 自定义样式
|
|
94
|
+
|
|
95
|
+
```tsx
|
|
96
|
+
<Timeline
|
|
97
|
+
data={data}
|
|
98
|
+
itemContainerStyle={{ minHeight: 400 }}
|
|
99
|
+
containerStyle={{ width: 300, backgroundColor: '#FFF' }}
|
|
100
|
+
onPress={handleItemPress}
|
|
101
|
+
/>
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## 注意事项
|
|
105
|
+
|
|
106
|
+
- 容器默认宽度 192px,可通过 `containerStyle` 覆盖
|
|
107
|
+
- 事件列表在 ScrollView 内,支持滚动
|
|
108
|
+
- Hover 效果基于 Hoverable 组件实现,仅在 Web 端生效
|
|
109
|
+
- 连接线在 `disabled` 状态下为虚线样式
|
|
110
|
+
- 节点状态在 item 级别控制(item.selected / item.disabled / item.error)
|
|
111
|
+
- 需在 `ThemeProvider` 内使用
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# Toast
|
|
2
|
+
|
|
3
|
+
轻量级消息提示组件,用于显示临时通知。支持自动消失、多种状态类型、描述文本和操作按钮,适合操作反馈场景。
|
|
4
|
+
|
|
5
|
+
## 功能特性
|
|
6
|
+
|
|
7
|
+
- ✅ 支持 Success、Error、Warning、Info 四种类型
|
|
8
|
+
- ✅ 自动消失机制,可自定义持续时间(duration)
|
|
9
|
+
- ✅ 支持副标题/描述文本(description)
|
|
10
|
+
- ✅ 支持操作按钮(actionText + onActionPress)
|
|
11
|
+
- ✅ 不同状态自动匹配对应图标和颜色
|
|
12
|
+
- ✅ Web/移动端自适应最大宽度
|
|
13
|
+
- ✅ 通过 visible 控制显示/隐藏
|
|
14
|
+
- ✅ 主题色适配
|
|
15
|
+
|
|
16
|
+
## 安装使用
|
|
17
|
+
|
|
18
|
+
```tsx
|
|
19
|
+
import { Toast } from '@beppla/tapas-ui';
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Props
|
|
23
|
+
|
|
24
|
+
| 属性 | 类型 | 默认值 | 说明 |
|
|
25
|
+
|------|------|--------|------|
|
|
26
|
+
| visible | `boolean` | `false` | 是否显示(必填) |
|
|
27
|
+
| message | `string` | - | 消息文本(必填) |
|
|
28
|
+
| duration | `number` | `2000` | 自动消失时间(毫秒) |
|
|
29
|
+
| type | `'Error' \| 'Warning' \| 'Success' \| 'Info'` | `'Info'` | 消息类型 |
|
|
30
|
+
| description | `string` | - | 描述/副标题文本 |
|
|
31
|
+
| actionText | `string` | - | 操作按钮文本 |
|
|
32
|
+
| onActionPress | `() => void` | - | 操作按钮点击回调 |
|
|
33
|
+
| hideToast | `() => void` | - | 隐藏 Toast 的回调 |
|
|
34
|
+
| style | `any` | - | 自定义外层样式 |
|
|
35
|
+
|
|
36
|
+
## 使用示例
|
|
37
|
+
|
|
38
|
+
### 基础用法
|
|
39
|
+
|
|
40
|
+
```tsx
|
|
41
|
+
const [visible, setVisible] = useState(false);
|
|
42
|
+
|
|
43
|
+
<Toast
|
|
44
|
+
visible={visible}
|
|
45
|
+
message="Operation successful"
|
|
46
|
+
type="Success"
|
|
47
|
+
hideToast={() => setVisible(false)}
|
|
48
|
+
/>
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### 带描述文本
|
|
52
|
+
|
|
53
|
+
```tsx
|
|
54
|
+
<Toast
|
|
55
|
+
visible={true}
|
|
56
|
+
message="Order created"
|
|
57
|
+
description="Order #12345 has been placed"
|
|
58
|
+
type="Info"
|
|
59
|
+
duration={3000}
|
|
60
|
+
hideToast={() => setVisible(false)}
|
|
61
|
+
/>
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### 带操作按钮
|
|
65
|
+
|
|
66
|
+
```tsx
|
|
67
|
+
<Toast
|
|
68
|
+
visible={true}
|
|
69
|
+
message="Item deleted"
|
|
70
|
+
type="Warning"
|
|
71
|
+
actionText="Undo"
|
|
72
|
+
onActionPress={() => handleUndo()}
|
|
73
|
+
hideToast={() => setVisible(false)}
|
|
74
|
+
/>
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### 错误提示
|
|
78
|
+
|
|
79
|
+
```tsx
|
|
80
|
+
<Toast
|
|
81
|
+
visible={true}
|
|
82
|
+
message="Network error"
|
|
83
|
+
description="Please check your connection"
|
|
84
|
+
type="Error"
|
|
85
|
+
duration={5000}
|
|
86
|
+
hideToast={() => setVisible(false)}
|
|
87
|
+
/>
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## 注意事项
|
|
91
|
+
|
|
92
|
+
- `visible` 变为 `true` 时启动定时器,到时自动调用 `hideToast`
|
|
93
|
+
- 外部需自行管理 `visible` 状态,组件本身不维护显隐
|
|
94
|
+
- 类型名称首字母大写:`'Success'`、`'Error'`、`'Warning'`、`'Info'`
|
|
95
|
+
- Web 端最大宽度 450px,移动端最大宽度 375px
|
|
96
|
+
- 有 `actionText` 时容器会自动拉伸(flex: 1)
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _themed = require("@rneui/themed");
|
|
10
|
+
var _TapasIcon = _interopRequireDefault(require("../Icons/TapasIcon"));
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
+
const TapasUpload = ({
|
|
14
|
+
onFileSelect,
|
|
15
|
+
attachSelectedFile,
|
|
16
|
+
btnText = 'Upload',
|
|
17
|
+
width,
|
|
18
|
+
height,
|
|
19
|
+
accept,
|
|
20
|
+
disabled = false,
|
|
21
|
+
testID,
|
|
22
|
+
containerStyle
|
|
23
|
+
}) => {
|
|
24
|
+
const styles = useStyles();
|
|
25
|
+
const uniqueId = `fileInput-${Math.random().toString(36).substr(2, 9)}`;
|
|
26
|
+
const handleFile = onFileSelect ?? attachSelectedFile;
|
|
27
|
+
const handleSelectFile = () => {
|
|
28
|
+
if (disabled) return;
|
|
29
|
+
if (_reactNative.Platform.OS === 'web') {
|
|
30
|
+
document.getElementById(uniqueId)?.click();
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
const handleFileInputChange = event => {
|
|
34
|
+
const selectedFile = event.target.files[0];
|
|
35
|
+
if (selectedFile && handleFile) {
|
|
36
|
+
handleFile(selectedFile);
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
const handleDrop = event => {
|
|
40
|
+
event.preventDefault();
|
|
41
|
+
if (disabled) return;
|
|
42
|
+
const files = event.dataTransfer.files;
|
|
43
|
+
if (files?.length > 0 && handleFile) {
|
|
44
|
+
handleFile(files[0]);
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
48
|
+
testID: testID,
|
|
49
|
+
onPress: handleSelectFile,
|
|
50
|
+
style: [styles.container, width != null && {
|
|
51
|
+
width
|
|
52
|
+
}, height != null && {
|
|
53
|
+
height
|
|
54
|
+
}, disabled && styles.disabled, containerStyle],
|
|
55
|
+
children: _reactNative.Platform.OS === 'web' ? /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
56
|
+
style: {
|
|
57
|
+
display: 'flex',
|
|
58
|
+
flexDirection: 'row',
|
|
59
|
+
justifyContent: 'center',
|
|
60
|
+
alignItems: 'center',
|
|
61
|
+
width: '100%',
|
|
62
|
+
height: '100%',
|
|
63
|
+
gap: 8
|
|
64
|
+
},
|
|
65
|
+
onDragEnter: e => e.preventDefault(),
|
|
66
|
+
onDragOver: e => e.preventDefault(),
|
|
67
|
+
onDragLeave: e => e.preventDefault(),
|
|
68
|
+
onDrop: handleDrop,
|
|
69
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("input", {
|
|
70
|
+
type: "file",
|
|
71
|
+
id: uniqueId,
|
|
72
|
+
accept: accept,
|
|
73
|
+
style: {
|
|
74
|
+
display: 'none'
|
|
75
|
+
},
|
|
76
|
+
onChange: handleFileInputChange
|
|
77
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_TapasIcon.default, {
|
|
78
|
+
size: 20,
|
|
79
|
+
color: styles.icon.color,
|
|
80
|
+
name: "upload"
|
|
81
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
82
|
+
style: styles.text,
|
|
83
|
+
children: btnText
|
|
84
|
+
})]
|
|
85
|
+
}) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
86
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_TapasIcon.default, {
|
|
87
|
+
size: 20,
|
|
88
|
+
color: styles.icon.color,
|
|
89
|
+
name: "upload"
|
|
90
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
91
|
+
style: styles.text,
|
|
92
|
+
children: btnText
|
|
93
|
+
})]
|
|
94
|
+
})
|
|
95
|
+
});
|
|
96
|
+
};
|
|
97
|
+
const useStyles = (0, _themed.makeStyles)(theme => ({
|
|
98
|
+
container: {
|
|
99
|
+
display: 'flex',
|
|
100
|
+
flexDirection: 'row',
|
|
101
|
+
height: 48,
|
|
102
|
+
borderStyle: 'dashed',
|
|
103
|
+
borderWidth: 1,
|
|
104
|
+
borderColor: theme.colors.grey2,
|
|
105
|
+
borderRadius: 12,
|
|
106
|
+
flexGrow: 1,
|
|
107
|
+
overflow: 'hidden',
|
|
108
|
+
justifyContent: 'center',
|
|
109
|
+
alignItems: 'center',
|
|
110
|
+
gap: 8,
|
|
111
|
+
paddingHorizontal: 16
|
|
112
|
+
},
|
|
113
|
+
disabled: {
|
|
114
|
+
opacity: 0.5
|
|
115
|
+
},
|
|
116
|
+
icon: {
|
|
117
|
+
color: theme.colors.grey2
|
|
118
|
+
},
|
|
119
|
+
text: {
|
|
120
|
+
fontSize: 12,
|
|
121
|
+
fontWeight: '400',
|
|
122
|
+
color: theme.colors.secondary
|
|
123
|
+
}
|
|
124
|
+
}));
|
|
125
|
+
var _default = exports.default = (0, _themed.withTheme)(/*#__PURE__*/_react.default.memo(TapasUpload));
|
|
126
|
+
//# sourceMappingURL=Upload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_themed","_TapasIcon","_jsxRuntime","e","__esModule","default","TapasUpload","onFileSelect","attachSelectedFile","btnText","width","height","accept","disabled","testID","containerStyle","styles","useStyles","uniqueId","Math","random","toString","substr","handleFile","handleSelectFile","Platform","OS","document","getElementById","click","handleFileInputChange","event","selectedFile","target","files","handleDrop","preventDefault","dataTransfer","length","jsx","Pressable","onPress","style","container","children","jsxs","display","flexDirection","justifyContent","alignItems","gap","onDragEnter","onDragOver","onDragLeave","onDrop","type","id","onChange","size","color","icon","name","Text","text","Fragment","makeStyles","theme","borderStyle","borderWidth","borderColor","colors","grey2","borderRadius","flexGrow","overflow","paddingHorizontal","opacity","fontSize","fontWeight","secondary","_default","exports","withTheme","React","memo"],"sourceRoot":"../../../components","sources":["Upload/Upload.tsx"],"mappings":"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","ignoreList":[]}
|
package/commonjs/index.js
CHANGED
|
@@ -71,9 +71,9 @@ var _exportNames = {
|
|
|
71
71
|
TapasAlert: true,
|
|
72
72
|
TapasThemeProvider: true,
|
|
73
73
|
defaultTheme: true,
|
|
74
|
-
useTheme: true,
|
|
75
74
|
withTheme: true,
|
|
76
75
|
makeStyles: true,
|
|
76
|
+
useTheme: true,
|
|
77
77
|
ThemeProvider: true,
|
|
78
78
|
Text: true,
|
|
79
79
|
ListItem: true,
|
|
@@ -106,6 +106,8 @@ var _exportNames = {
|
|
|
106
106
|
TapasMultiSelector: true,
|
|
107
107
|
TapasQuantity: true,
|
|
108
108
|
TapasNotification: true,
|
|
109
|
+
TapasSwitch: true,
|
|
110
|
+
TapasUpload: true,
|
|
109
111
|
BarChart: true,
|
|
110
112
|
ComboChart: true,
|
|
111
113
|
WordCloud: true,
|
|
@@ -576,6 +578,12 @@ Object.defineProperty(exports, "TapasSteps", {
|
|
|
576
578
|
return _Steps.default;
|
|
577
579
|
}
|
|
578
580
|
});
|
|
581
|
+
Object.defineProperty(exports, "TapasSwitch", {
|
|
582
|
+
enumerable: true,
|
|
583
|
+
get: function () {
|
|
584
|
+
return _Switch.default;
|
|
585
|
+
}
|
|
586
|
+
});
|
|
579
587
|
Object.defineProperty(exports, "TapasTab", {
|
|
580
588
|
enumerable: true,
|
|
581
589
|
get: function () {
|
|
@@ -642,6 +650,12 @@ Object.defineProperty(exports, "TapasToast", {
|
|
|
642
650
|
return _Toast.default;
|
|
643
651
|
}
|
|
644
652
|
});
|
|
653
|
+
Object.defineProperty(exports, "TapasUpload", {
|
|
654
|
+
enumerable: true,
|
|
655
|
+
get: function () {
|
|
656
|
+
return _Upload.default;
|
|
657
|
+
}
|
|
658
|
+
});
|
|
645
659
|
Object.defineProperty(exports, "TapasUserSwitcher", {
|
|
646
660
|
enumerable: true,
|
|
647
661
|
get: function () {
|
|
@@ -735,7 +749,7 @@ Object.defineProperty(exports, "isMobile", {
|
|
|
735
749
|
Object.defineProperty(exports, "makeStyles", {
|
|
736
750
|
enumerable: true,
|
|
737
751
|
get: function () {
|
|
738
|
-
return
|
|
752
|
+
return _makeStyles.makeStyles;
|
|
739
753
|
}
|
|
740
754
|
});
|
|
741
755
|
Object.defineProperty(exports, "registerIcons", {
|
|
@@ -789,7 +803,7 @@ Object.defineProperty(exports, "useWebViewBridge", {
|
|
|
789
803
|
Object.defineProperty(exports, "withTheme", {
|
|
790
804
|
enumerable: true,
|
|
791
805
|
get: function () {
|
|
792
|
-
return
|
|
806
|
+
return _withTheme.withTheme;
|
|
793
807
|
}
|
|
794
808
|
});
|
|
795
809
|
var _Button = _interopRequireDefault(require("./Button/Button"));
|
|
@@ -848,6 +862,8 @@ var _Toast = _interopRequireDefault(require("./Toast/Toast"));
|
|
|
848
862
|
var _Alert = _interopRequireDefault(require("./Alert/Alert"));
|
|
849
863
|
var _ThemeProvider = _interopRequireDefault(require("./Theme/ThemeProvider"));
|
|
850
864
|
var _defaultTheme = require("./Theme/defaultTheme");
|
|
865
|
+
var _withTheme = require("./Theme/withTheme");
|
|
866
|
+
var _makeStyles = require("./Theme/makeStyles");
|
|
851
867
|
var _themed = require("@rneui/themed");
|
|
852
868
|
var _types = require("./Calendar/types");
|
|
853
869
|
Object.keys(_types).forEach(function (key) {
|
|
@@ -917,6 +933,8 @@ var _DataCell = _interopRequireDefault(require("./DataCell/DataCell"));
|
|
|
917
933
|
var _MultiSelector = _interopRequireDefault(require("./MultiSelector/MultiSelector"));
|
|
918
934
|
var _Quantity = _interopRequireDefault(require("./Quantity/Quantity"));
|
|
919
935
|
var _Notification = _interopRequireDefault(require("./Notification"));
|
|
936
|
+
var _Switch = _interopRequireDefault(require("./Switch/Switch"));
|
|
937
|
+
var _Upload = _interopRequireDefault(require("./Upload/Upload"));
|
|
920
938
|
var _BarChart = require("./BarChart");
|
|
921
939
|
var _ComboChart = require("./ComboChart");
|
|
922
940
|
var _WordCloud = require("./WordCloud");
|
|
@@ -959,7 +977,9 @@ const TapasDefaultTheme = exports.TapasDefaultTheme = _defaultTheme.defaultTheme
|
|
|
959
977
|
// 创建一个默认主题实例,方便应用端直接使用
|
|
960
978
|
const TapasDefaultThemeInstance = exports.TapasDefaultThemeInstance = (0, _defaultTheme.defaultTheme)();
|
|
961
979
|
|
|
962
|
-
//
|
|
980
|
+
// React 19 兼容的 withTheme 和 makeStyles(替代 @rneui/themed 原版)
|
|
981
|
+
|
|
982
|
+
// 重新导出 @rneui/themed 的核心功能(withTheme/makeStyles 已在上面覆盖)
|
|
963
983
|
|
|
964
984
|
// 类型导出 - 简化版本
|
|
965
985
|
|
package/commonjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Button","_interopRequireDefault","require","_ButtonGroup","_Text","_Input","_NumericInput","_CheckBox","_CheckBoxItem","_GroupCheckBox","_RadioButton","_Tag","_Status","_Progress","_CircularProgress","_Steps","_Timeline","_Task","_ListItem","_SheetTitle","_Overlay","_Popover","_Pagination","_DashboardCard","_PreviewImg","_Image","_Navigation","_Shell","_TapasTab","_TapasIcon","_interopRequireWildcard","_TapasIconExpo","_fontLoader","_expoFontLoader","_smartFontLoader","_Layout","_Drawer","_Header","_Dropdown","_CustomDropdown","_InputDropdown","_Calendar","_Calendar2","_DaySelector","_MonthSelector","_WeekDaySelector","_TimeSelector","_ConcreteTimeSelector","_CustomRange","_Gantt","_FixedSizeGrid","_VariableSizeGrid","_StaticFixedSizeGrid","_DraggableFlatList","_WebViewBridge","_Toast","_Alert","_ThemeProvider","_defaultTheme","_themed","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_types2","_types3","_types4","_Loading","_ScanButton","_IconText","_ExternalLink","_Collapsible","_Card","_TextArea","_MessageBox","_SearchInput","_HelloWave","_DeviceSelectionModal","_ReasonModal","_UserSwitcher","_TabTitle","_AnimatedNavItem","_TableColumnHeader","_DataCell","_MultiSelector","_Quantity","_Notification","_BarChart","_ComboChart","_WordCloud","_LineChart","_PieChart","_DataTable","_StatisticCard","_StatisticsTable","_common","_useBridgelessFix","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","set","getOwnPropertyDescriptor","TapasDefaultTheme","defaultTheme","TapasDefaultThemeInstance"],"sourceRoot":"../../components","sources":["index.tsx"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_Button","_interopRequireDefault","require","_ButtonGroup","_Text","_Input","_NumericInput","_CheckBox","_CheckBoxItem","_GroupCheckBox","_RadioButton","_Tag","_Status","_Progress","_CircularProgress","_Steps","_Timeline","_Task","_ListItem","_SheetTitle","_Overlay","_Popover","_Pagination","_DashboardCard","_PreviewImg","_Image","_Navigation","_Shell","_TapasTab","_TapasIcon","_interopRequireWildcard","_TapasIconExpo","_fontLoader","_expoFontLoader","_smartFontLoader","_Layout","_Drawer","_Header","_Dropdown","_CustomDropdown","_InputDropdown","_Calendar","_Calendar2","_DaySelector","_MonthSelector","_WeekDaySelector","_TimeSelector","_ConcreteTimeSelector","_CustomRange","_Gantt","_FixedSizeGrid","_VariableSizeGrid","_StaticFixedSizeGrid","_DraggableFlatList","_WebViewBridge","_Toast","_Alert","_ThemeProvider","_defaultTheme","_withTheme","_makeStyles","_themed","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_types2","_types3","_types4","_Loading","_ScanButton","_IconText","_ExternalLink","_Collapsible","_Card","_TextArea","_MessageBox","_SearchInput","_HelloWave","_DeviceSelectionModal","_ReasonModal","_UserSwitcher","_TabTitle","_AnimatedNavItem","_TableColumnHeader","_DataCell","_MultiSelector","_Quantity","_Notification","_Switch","_Upload","_BarChart","_ComboChart","_WordCloud","_LineChart","_PieChart","_DataTable","_StatisticCard","_StatisticsTable","_common","_useBridgelessFix","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","set","getOwnPropertyDescriptor","TapasDefaultTheme","defaultTheme","TapasDefaultThemeInstance"],"sourceRoot":"../../components","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# Alert
|
|
2
|
+
|
|
3
|
+
警告提示组件,用于在页面中展示重要的提示信息。支持多种类型(success / info / warning / error),可选关闭按钮,适合全局通知或表单校验提示场景。
|
|
4
|
+
|
|
5
|
+
## 功能特性
|
|
6
|
+
|
|
7
|
+
- ✅ 支持 success、info、warning、error 四种告警类型
|
|
8
|
+
- ✅ 可关闭功能(closable),关闭时触发回调
|
|
9
|
+
- ✅ 自定义图标名称(基于 TapasIcon 图标库)
|
|
10
|
+
- ✅ 单行文本展示,超长自动截断(numberOfLines=1)
|
|
11
|
+
- ✅ 自定义容器样式
|
|
12
|
+
- ✅ 基于主题系统的品牌色适配(withTheme HOC)
|
|
13
|
+
|
|
14
|
+
## 安装使用
|
|
15
|
+
|
|
16
|
+
```tsx
|
|
17
|
+
import { Alert } from '@beppla/tapas-ui';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Props
|
|
21
|
+
|
|
22
|
+
| 属性 | 类型 | 默认值 | 说明 |
|
|
23
|
+
|------|------|--------|------|
|
|
24
|
+
| type | `'success' \| 'info' \| 'warning' \| 'error'` | - | 警告类型(必填) |
|
|
25
|
+
| message | `React.ReactNode` | - | 警告内容(必填) |
|
|
26
|
+
| closable | `boolean` | `false` | 是否显示关闭按钮 |
|
|
27
|
+
| icon | `string` | `'error'` | 自定义图标名称 |
|
|
28
|
+
| onClose | `Function` | - | 关闭按钮点击回调 |
|
|
29
|
+
| style | `StyleProp<ViewStyle>` | - | 自定义容器样式 |
|
|
30
|
+
|
|
31
|
+
## 使用示例
|
|
32
|
+
|
|
33
|
+
### 基础用法
|
|
34
|
+
|
|
35
|
+
```tsx
|
|
36
|
+
<Alert type="warning" message="This is a warning alert message" />
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### 可关闭的警告
|
|
40
|
+
|
|
41
|
+
```tsx
|
|
42
|
+
<Alert
|
|
43
|
+
type="error"
|
|
44
|
+
message="Operation failed, please try again"
|
|
45
|
+
closable
|
|
46
|
+
onClose={() => console.log('Alert closed')}
|
|
47
|
+
/>
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### 自定义图标
|
|
51
|
+
|
|
52
|
+
```tsx
|
|
53
|
+
<Alert
|
|
54
|
+
type="info"
|
|
55
|
+
message="New update available"
|
|
56
|
+
icon="info"
|
|
57
|
+
/>
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### 自定义样式
|
|
61
|
+
|
|
62
|
+
```tsx
|
|
63
|
+
<Alert
|
|
64
|
+
type="success"
|
|
65
|
+
message="Saved successfully"
|
|
66
|
+
style={{ borderRadius: 8, marginVertical: 12 }}
|
|
67
|
+
/>
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## 注意事项
|
|
71
|
+
|
|
72
|
+
- 组件需要在 `ThemeProvider` 内使用,否则主题色无法生效
|
|
73
|
+
- 当前所有 type 共享相同的品牌色和背景色(`#EBDFB5`),如需差异化可通过 `style` 覆盖
|
|
74
|
+
- `message` 支持 ReactNode 类型,但由于 `numberOfLines={1}` 限制,复杂节点可能显示异常
|
|
75
|
+
- 关闭按钮点击事件会调用 `stopPropagation()` 阻止冒泡
|