@beppla/tapas-ui 1.0.68 → 1.0.70

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 (248) hide show
  1. package/commonjs/AnimatedNavItem/index.js.map +2 -1
  2. package/commonjs/BarChart/BarChart.js +112 -90
  3. package/commonjs/BarChart/BarChart.js.map +1 -1
  4. package/commonjs/Button/Button.js +96 -78
  5. package/commonjs/Button/Button.js.map +1 -2
  6. package/commonjs/Button/ButtonGroup.js +156 -136
  7. package/commonjs/Button/ButtonGroup.js.map +1 -2
  8. package/commonjs/Calendar/Calendar.base.js +162 -190
  9. package/commonjs/Calendar/Calendar.base.js.map +1 -2
  10. package/commonjs/Calendar/Calendar.js +86 -102
  11. package/commonjs/Calendar/Calendar.js.map +2 -1
  12. package/commonjs/Calendar/CustomRange.js +271 -324
  13. package/commonjs/Calendar/DaySelector.js +115 -113
  14. package/commonjs/Calendar/DaySelector.js.map +2 -1
  15. package/commonjs/Calendar/MonthSelector.js +118 -115
  16. package/commonjs/Calendar/local.js +2 -2
  17. package/commonjs/Calendar/local.js.map +2 -1
  18. package/commonjs/Calendar/types.js +11 -11
  19. package/commonjs/CheckBox/CheckBox.js +96 -63
  20. package/commonjs/CheckBox/CheckBox.js.map +1 -2
  21. package/commonjs/CheckBox/CheckBoxItem.js +78 -57
  22. package/commonjs/CheckBox/CheckBoxItem.js.map +1 -2
  23. package/commonjs/CircularProgress/CircularProgress.js +25 -23
  24. package/commonjs/CircularProgress/CircularProgress.js.map +1 -2
  25. package/commonjs/Collapsible/Collapsible.js +60 -74
  26. package/commonjs/Collapsible/Collapsible.js.map +2 -1
  27. package/commonjs/DashboardCard/DashboardCard.js +74 -94
  28. package/commonjs/DashboardCard/DashboardCard.js.map +1 -1
  29. package/commonjs/DataCell/DataCell.js +108 -0
  30. package/commonjs/DataCell/DataCell.js.map +1 -0
  31. package/commonjs/DataCell/index.js +15 -9
  32. package/commonjs/DataTable/DataTable.js +0 -69
  33. package/commonjs/DataTable/index.js.map +2 -1
  34. package/commonjs/DeviceSelectionModal/DeviceSelectionModal.js +242 -244
  35. package/commonjs/DeviceSelectionModal/DeviceSelectionModal.js.map +1 -2
  36. package/commonjs/DraggableFlatList/DraggableFlatList.js +1 -1
  37. package/commonjs/Dropdown/InputDropdown.js.map +2 -1
  38. package/commonjs/Gantt/Accessories.js +135 -168
  39. package/commonjs/Gantt/Accessories.js.map +1 -2
  40. package/commonjs/Gantt/Gantt.js +149 -149
  41. package/commonjs/Gantt/Gantt.js.map +2 -1
  42. package/commonjs/Gantt/GanttInnerElementType.js +93 -102
  43. package/commonjs/Gantt/GanttInnerElementType.js.map +2 -1
  44. package/commonjs/Gantt/helper.js +119 -145
  45. package/commonjs/Gantt/types.js +4 -4
  46. package/commonjs/Grid/VariableSizeGrid.js +120 -113
  47. package/commonjs/Grid/VariableSizeGrid.js.map +2 -1
  48. package/commonjs/Grid/helper.js.map +2 -1
  49. package/commonjs/Grid/timer.js +9 -5
  50. package/commonjs/Grid/timer.js.map +1 -2
  51. package/commonjs/HelloWave/HelloWave.js +46 -53
  52. package/commonjs/HelloWave/HelloWave.js.map +1 -2
  53. package/commonjs/Hoverable/Hoverable.js +35 -33
  54. package/commonjs/Hoverable/Hoverable.js.map +2 -2
  55. package/commonjs/IconText/IconText.js +88 -65
  56. package/commonjs/IconText/IconText.js.map +2 -1
  57. package/commonjs/Icons/TapasIcon.js +99 -100
  58. package/commonjs/Icons/TapasIcon.js.map +1 -2
  59. package/commonjs/Icons/TapasIconExpo.js +101 -94
  60. package/commonjs/Icons/smartFontLoader.js +266 -222
  61. package/commonjs/Image/PreviewImg.js +85 -63
  62. package/commonjs/Image/PreviewImg.js.map +1 -2
  63. package/commonjs/Layout/DrawerContext.js +49 -35
  64. package/commonjs/Layout/DrawerContext.js.map +1 -2
  65. package/commonjs/Layout/ToastContext.js +34 -46
  66. package/commonjs/LineChart/LineChart.js +126 -144
  67. package/commonjs/LineChart/LineChart.js.map +1 -2
  68. package/commonjs/LineChart/index.js +4 -3
  69. package/commonjs/LineChart/index.js.map +1 -2
  70. package/commonjs/ListItem/ListItem.js +80 -108
  71. package/commonjs/ListItem/ListItem.js.map +2 -1
  72. package/commonjs/Loading/Loading.js +66 -54
  73. package/commonjs/Loading/Loading.js.map +1 -1
  74. package/commonjs/MessageBox/MessageBox.js +127 -126
  75. package/commonjs/MessageBox/MessageBox.js.map +2 -1
  76. package/commonjs/MultiSelector/MultiSelector.js +250 -225
  77. package/commonjs/MultiSelector/index.js +6 -8
  78. package/commonjs/MultiSelector/index.js.map +2 -1
  79. package/commonjs/Navigation/Navigation.js +65 -0
  80. package/commonjs/Navigation/Navigation.js.map +1 -0
  81. package/commonjs/Notification/Notification.js +110 -89
  82. package/commonjs/Notification/index.js +6 -8
  83. package/commonjs/Notification/index.js.map +2 -1
  84. package/commonjs/NumericInput/NumericInput.js +23 -0
  85. package/commonjs/NumericInput/NumericInput.js.map +1 -0
  86. package/commonjs/Overlay/Overlay.js +24 -45
  87. package/commonjs/Overlay/Overlay.js.map +1 -1
  88. package/commonjs/Pagination/Pagination.js +93 -151
  89. package/commonjs/Pagination/Pagination.js.map +1 -1
  90. package/commonjs/PieChart/PieChart.js.map +2 -1
  91. package/commonjs/PieChart/index.js +3 -4
  92. package/commonjs/PieChart/index.js.map +2 -1
  93. package/commonjs/Popover/Popover.js +112 -137
  94. package/commonjs/Popover/Popover.js.map +1 -2
  95. package/commonjs/Progress/Progress.js +54 -48
  96. package/commonjs/Progress/Progress.js.map +1 -2
  97. package/commonjs/Quantity/Quantity.js +52 -127
  98. package/commonjs/Quantity/Quantity.js.map +0 -1
  99. package/commonjs/Quantity/index.js +8 -6
  100. package/commonjs/Quantity/index.js.map +1 -2
  101. package/commonjs/ReasonModal/ReasonModal.js +125 -122
  102. package/commonjs/ReasonModal/ReasonModal.js.map +2 -1
  103. package/commonjs/ReasonModal/index.js +9 -15
  104. package/commonjs/ReasonModal/index.js.map +1 -2
  105. package/commonjs/SearchInput/SearchInput.js +92 -108
  106. package/commonjs/SheetTitle/SheetTitle.js +0 -6
  107. package/commonjs/SheetTitle/SheetTitle.js.map +0 -1
  108. package/commonjs/Shell/Shell.js +84 -92
  109. package/commonjs/Shell/Shell.js.map +2 -1
  110. package/commonjs/Shell/styles.js.map +1 -2
  111. package/commonjs/Shell/types.js +2 -2
  112. package/commonjs/Shell/types.js.map +1 -2
  113. package/commonjs/StatisticCard/StatisticCard.js +41 -47
  114. package/commonjs/Steps/Steps.js +41 -40
  115. package/commonjs/Steps/Steps.js.map +1 -1
  116. package/commonjs/TabTitle/index.js +0 -1
  117. package/commonjs/TabTitle/index.js.map +0 -1
  118. package/commonjs/TableColumnHeader/TableColumnHeader.js +134 -140
  119. package/commonjs/Tag/Tag.js +0 -41
  120. package/commonjs/Tag/Tag.js.map +0 -1
  121. package/commonjs/Task/Task.js +201 -112
  122. package/commonjs/Task/Task.js.map +2 -1
  123. package/commonjs/Text/Text.js.map +0 -1
  124. package/commonjs/Theme/ThemeProvider.js +18 -16
  125. package/commonjs/Theme/defaultTheme.js +21 -16
  126. package/commonjs/Theme/defaultTheme.js.map +2 -1
  127. package/commonjs/Toast/Toast.js +32 -0
  128. package/commonjs/Toast/Toast.js.map +1 -0
  129. package/commonjs/UserSwitcher/UserSwitcher.js +147 -144
  130. package/commonjs/UserSwitcher/UserSwitcher.js.map +2 -1
  131. package/module/Alert/Alert.js +71 -51
  132. package/module/Alert/Alert.js.map +2 -1
  133. package/module/AnimatedNavItem/AnimatedNavItem.js.map +1 -2
  134. package/module/AnimatedNavItem/index.js +7 -3
  135. package/module/AnimatedNavItem/index.js.map +1 -2
  136. package/module/BarChart/BarChart.js +140 -109
  137. package/module/BarChart/BarChart.js.map +2 -1
  138. package/module/BarChart/index.js +4 -2
  139. package/module/Button/ButtonGroup.js +120 -129
  140. package/module/Button/ButtonGroup.js.map +1 -2
  141. package/module/Calendar/ConcreteTimeSelector.js +299 -211
  142. package/module/Calendar/ConcreteTimeSelector.js.map +2 -1
  143. package/module/Calendar/DaySelector.js +118 -95
  144. package/module/Calendar/DaySelector.js.map +2 -1
  145. package/module/Calendar/TimeSelector.js +307 -215
  146. package/module/Calendar/TimeSelector.js.map +1 -2
  147. package/module/Calendar/local.js +7 -7
  148. package/module/Calendar/local.js.map +2 -1
  149. package/module/Calendar/types.js.map +1 -2
  150. package/module/Card/Card.js +236 -154
  151. package/module/Card/Card.js.map +1 -1
  152. package/module/CheckBox/CheckBox.js +89 -93
  153. package/module/CheckBox/CheckBox.js.map +2 -1
  154. package/module/CheckBox/CheckBoxItem.js +84 -69
  155. package/module/CheckBox/CheckBoxItem.js.map +1 -1
  156. package/module/CheckBox/GroupCheckBox.js +76 -66
  157. package/module/CheckBox/GroupCheckBox.js.map +2 -1
  158. package/module/CircularProgress/CircularProgress.js +0 -22
  159. package/module/CircularProgress/CircularProgress.js.map +0 -1
  160. package/module/DashboardCard/DashboardCard.js +88 -80
  161. package/module/DashboardCard/DashboardCard.js.map +1 -2
  162. package/module/DataCell/DataCell.js +224 -311
  163. package/module/DataCell/DataCell.js.map +1 -2
  164. package/module/DataTable/DataTable.js +100 -0
  165. package/module/DataTable/index.js.map +1 -2
  166. package/module/DeviceSelectionModal/DeviceSelectionModal.js +124 -0
  167. package/module/DeviceSelectionModal/DeviceSelectionModal.js.map +1 -0
  168. package/module/DraggableFlatList/DraggableFlatList.js +9 -0
  169. package/module/DraggableFlatList/DraggableFlatList.js.map +1 -0
  170. package/module/Dropdown/CustomDropdown.js +160 -212
  171. package/module/Dropdown/CustomDropdown.js.map +1 -1
  172. package/module/Dropdown/Dropdown.js +408 -484
  173. package/module/Dropdown/Dropdown.js.map +1 -2
  174. package/module/Dropdown/InputDropdown.js +134 -116
  175. package/module/Dropdown/InputDropdown.js.map +2 -1
  176. package/module/ExternalLink/ExternalLink.js +0 -150
  177. package/module/ExternalLink/ExternalLink.js.map +0 -1
  178. package/module/Gantt/Accessories.js.map +2 -1
  179. package/module/Gantt/Gantt.js +152 -139
  180. package/module/Gantt/Gantt.js.map +2 -1
  181. package/module/Gantt/GanttInnerElementType.js.map +1 -2
  182. package/module/Gantt/helper.js +163 -129
  183. package/module/Gantt/types.js +8 -4
  184. package/module/Gantt/types.js.map +1 -2
  185. package/module/Grid/VariableSizeGrid.js +118 -121
  186. package/module/Grid/VariableSizeGrid.js.map +1 -2
  187. package/module/Grid/helper.js.map +2 -1
  188. package/module/Grid/timer.js +16 -14
  189. package/module/Grid/timer.js.map +1 -2
  190. package/module/HelloWave/HelloWave.js +53 -43
  191. package/module/HelloWave/HelloWave.js.map +2 -1
  192. package/module/Hoverable/Hoverable.js +66 -69
  193. package/module/Hoverable/Hoverable.js.map +1 -2
  194. package/module/Icons/TapasIcon.js +96 -120
  195. package/module/Icons/TapasIcon.js.map +1 -2
  196. package/module/Icons/TapasIconExpo.js +98 -78
  197. package/module/Icons/TapasIconExpo.js.map +2 -1
  198. package/module/Icons/fontLoader.js.map +2 -1
  199. package/module/Icons/index.js +10 -9
  200. package/module/Icons/smartFontLoader.js.map +2 -1
  201. package/module/Input/Input.js +74 -0
  202. package/module/Input/Input.js.map +1 -0
  203. package/module/Layout/DrawerContext.js +29 -18
  204. package/module/Layout/DrawerContext.js.map +2 -1
  205. package/module/Layout/Layout.js +100 -100
  206. package/module/Layout/index.js +15 -14
  207. package/module/LineChart/LineChart.js +157 -121
  208. package/module/Loading/Loading.js +65 -67
  209. package/module/Loading/Loading.js.map +2 -1
  210. package/module/MultiSelector/MultiSelector.js.map +2 -1
  211. package/module/MultiSelector/index.js +2 -3
  212. package/module/MultiSelector/index.js.map +2 -1
  213. package/module/Notification/Notification.js +105 -101
  214. package/module/Notification/Notification.js.map +2 -1
  215. package/module/Notification/index.js +18 -1
  216. package/module/Notification/index.js.map +1 -1
  217. package/module/NumericInput/NumericInput.js.map +1 -0
  218. package/module/Overlay/Overlay.js +29 -0
  219. package/module/Overlay/Overlay.js.map +1 -0
  220. package/module/Pagination/Pagination.js +0 -72
  221. package/module/Pagination/Pagination.js.map +0 -1
  222. package/module/PieChart/PieChart.js +101 -76
  223. package/module/PieChart/PieChart.js.map +1 -2
  224. package/module/Quantity/Quantity.js +129 -112
  225. package/module/ReasonModal/ReasonModal.js +114 -145
  226. package/module/ReasonModal/ReasonModal.js.map +1 -2
  227. package/module/ReasonModal/index.js +27 -0
  228. package/module/ScanButton/ScanButton.js +56 -35
  229. package/module/ScanButton/ScanButton.js.map +1 -1
  230. package/module/Shell/types.js +2 -4
  231. package/module/TabTitle/TabTitle.js +57 -48
  232. package/module/TableColumnHeader/TableColumnHeader.js +153 -126
  233. package/module/Task/Task.js +113 -207
  234. package/module/Task/Task.js.map +1 -2
  235. package/module/Task/type.js +4 -8
  236. package/module/Task/type.js.map +1 -2
  237. package/module/Text/Text.js +80 -70
  238. package/module/Text/Text.js.map +1 -2
  239. package/module/TextArea/TextArea.js +119 -0
  240. package/module/TextArea/TextArea.js.map +1 -0
  241. package/module/Theme/defaultTheme.js +20 -0
  242. package/module/Theme/defaultTheme.js.map +1 -0
  243. package/module/Timeline/Timeline.js +54 -0
  244. package/module/Timeline/Timeline.js.map +1 -0
  245. package/module/UserSwitcher/UserSwitcher.js.map +2 -1
  246. package/module/index.js.map +1 -2
  247. package/package.json +1 -1
  248. package/typescript/Hoverable/Hoverable.d.ts.map +1 -1
@@ -1,121 +1,204 @@
1
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
- import React, { useCallback, useMemo, useState, useEffect } from "react";
3
- import { View, Text, Pressable } from "react-native";
4
- import { withTheme, makeStyles } from "@rneui/themed";
5
- import TapasIcon from "../Icons/TapasIcon";
6
- // import { TapasDropdown } from "../Dropdown/Dropdown";
1
+ "use strict";
7
2
 
3
+ var __assign = this && this.__assign || function () {
4
+ __assign = Object.assign || function (t) {
5
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
6
+ s = arguments[i];
7
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = {
18
+ enumerable: true,
19
+ get: function () {
20
+ return m[k];
21
+ }
22
+ };
23
+ }
24
+ Object.defineProperty(o, k2, desc);
25
+ } : function (o, m, k, k2) {
26
+ if (k2 === undefined) k2 = k;
27
+ o[k2] = m[k];
28
+ });
29
+ var __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function (o, v) {
30
+ Object.defineProperty(o, "default", {
31
+ enumerable: true,
32
+ value: v
33
+ });
34
+ } : function (o, v) {
35
+ o["default"] = v;
36
+ });
37
+ var __importStar = this && this.__importStar || function () {
38
+ var ownKeys = function (o) {
39
+ ownKeys = Object.getOwnPropertyNames || function (o) {
40
+ var ar = [];
41
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
42
+ return ar;
43
+ };
44
+ return ownKeys(o);
45
+ };
46
+ return function (mod) {
47
+ if (mod && mod.__esModule) return mod;
48
+ var result = {};
49
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
50
+ __setModuleDefault(result, mod);
51
+ return result;
52
+ };
53
+ }();
54
+ var __rest = this && this.__rest || function (s, e) {
55
+ var t = {};
56
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
57
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
58
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
59
+ }
60
+ return t;
61
+ };
62
+ var __importDefault = this && this.__importDefault || function (mod) {
63
+ return mod && mod.__esModule ? mod : {
64
+ "default": mod
65
+ };
66
+ };
67
+ Object.defineProperty(exports, "__esModule", {
68
+ value: true
69
+ });
70
+ exports.setDropdownStateChangeListener = exports.TapasDataCell = exports.DataCell = void 0;
71
+ var react_1 = __importStar(require("react"));
72
+ var react_native_1 = require("react-native");
73
+ var themed_1 = require("@rneui/themed");
74
+ var TapasIcon_1 = __importDefault(require("../Icons/TapasIcon"));
75
+ // import { TapasDropdown } from "../Dropdown/Dropdown";
8
76
  // 全局下拉菜单状态管理
9
- const globalDropdownState = {
77
+ var globalDropdownState = {
10
78
  activeColumn: null,
11
79
  activeRow: null,
12
- closeAll: () => {},
80
+ closeAll: function () {},
13
81
  onDropdownStateChange: undefined
14
82
  };
15
-
16
83
  // 注册和注销下拉菜单的函数
17
- const registerDropdown = (columnIndex, rowIndex, closeCallback) => {
84
+ var registerDropdown = function (columnIndex, rowIndex, closeCallback) {
85
+ var _a;
18
86
  globalDropdownState.activeColumn = columnIndex;
19
87
  globalDropdownState.activeRow = rowIndex;
20
88
  globalDropdownState.closeAll = closeCallback;
21
89
  // 通知状态变化
22
- globalDropdownState.onDropdownStateChange?.(columnIndex, rowIndex);
90
+ (_a = globalDropdownState.onDropdownStateChange) === null || _a === void 0 ? void 0 : _a.call(globalDropdownState, columnIndex, rowIndex);
23
91
  };
24
- const unregisterDropdown = () => {
92
+ var unregisterDropdown = function () {
93
+ var _a;
25
94
  globalDropdownState.activeColumn = null;
26
95
  globalDropdownState.activeRow = null;
27
- globalDropdownState.closeAll = () => {};
96
+ globalDropdownState.closeAll = function () {};
28
97
  // 通知状态变化
29
- globalDropdownState.onDropdownStateChange?.(null, null);
98
+ (_a = globalDropdownState.onDropdownStateChange) === null || _a === void 0 ? void 0 : _a.call(globalDropdownState, null, null);
30
99
  };
31
- const closeAllDropdowns = () => {
100
+ var closeAllDropdowns = function () {
32
101
  if (globalDropdownState.closeAll) {
33
102
  globalDropdownState.closeAll();
34
103
  }
35
104
  };
36
-
37
105
  // 设置下拉菜单状态变化监听器
38
- const setDropdownStateChangeListener = callback => {
106
+ var setDropdownStateChangeListener = function (callback) {
39
107
  globalDropdownState.onDropdownStateChange = callback;
40
108
  };
41
- const TapasDataCell = ({
42
- value,
43
- dataType = "text",
44
- alignment = "left",
45
- columnIndex,
46
- rowIndex,
47
- fieldName,
48
- clickable = false,
49
- ellipsizeMode = "tail",
50
- numberOfLines = 1,
51
- textStyle,
52
- padding = {
53
- horizontal: 16,
54
- vertical: 8
55
- },
56
- statusConfig = {},
57
- actions = [],
58
- showActions = false,
59
- actionIcon = "more_vert",
60
- formatter,
61
- currencySymbol = "$",
62
- currencyPrecision = 2,
63
- dateFormat = "YYYY-MM-DD",
64
- booleanTrueText = "Yes",
65
- booleanFalseText = "No",
66
- emptyText = "-",
67
- onCellPress,
68
- onActionPress,
69
- attachMoreAction,
70
- onLongPress,
71
- disabled = false,
72
- minHeight = 40,
73
- isBlank = false,
74
- onDropdownStateChange,
75
- gridInfo,
76
- style,
77
- ...otherProps
78
- }) => {
79
- const styles = useStyles({
80
- alignment,
81
- padding,
82
- minHeight,
83
- disabled,
109
+ exports.setDropdownStateChangeListener = setDropdownStateChangeListener;
110
+ var TapasDataCell = function (_a) {
111
+ var value = _a.value,
112
+ _b = _a.dataType,
113
+ dataType = _b === void 0 ? "text" : _b,
114
+ _c = _a.alignment,
115
+ alignment = _c === void 0 ? "left" : _c,
116
+ columnIndex = _a.columnIndex,
117
+ rowIndex = _a.rowIndex,
118
+ fieldName = _a.fieldName,
119
+ _d = _a.clickable,
120
+ clickable = _d === void 0 ? false : _d,
121
+ _e = _a.ellipsizeMode,
122
+ ellipsizeMode = _e === void 0 ? "tail" : _e,
123
+ _f = _a.numberOfLines,
124
+ numberOfLines = _f === void 0 ? 1 : _f,
125
+ textStyle = _a.textStyle,
126
+ _g = _a.padding,
127
+ padding = _g === void 0 ? {
128
+ horizontal: 16,
129
+ vertical: 8
130
+ } : _g,
131
+ _h = _a.statusConfig,
132
+ statusConfig = _h === void 0 ? {} : _h,
133
+ _j = _a.actions,
134
+ actions = _j === void 0 ? [] : _j,
135
+ _k = _a.showActions,
136
+ showActions = _k === void 0 ? false : _k,
137
+ _l = _a.actionIcon,
138
+ actionIcon = _l === void 0 ? "more_vert" : _l,
139
+ formatter = _a.formatter,
140
+ _m = _a.currencySymbol,
141
+ currencySymbol = _m === void 0 ? "$" : _m,
142
+ _o = _a.currencyPrecision,
143
+ currencyPrecision = _o === void 0 ? 2 : _o,
144
+ _p = _a.dateFormat,
145
+ dateFormat = _p === void 0 ? "YYYY-MM-DD" : _p,
146
+ _q = _a.booleanTrueText,
147
+ booleanTrueText = _q === void 0 ? "Yes" : _q,
148
+ _r = _a.booleanFalseText,
149
+ booleanFalseText = _r === void 0 ? "No" : _r,
150
+ _s = _a.emptyText,
151
+ emptyText = _s === void 0 ? "-" : _s,
152
+ onCellPress = _a.onCellPress,
153
+ onActionPress = _a.onActionPress,
154
+ attachMoreAction = _a.attachMoreAction,
155
+ onLongPress = _a.onLongPress,
156
+ _t = _a.disabled,
157
+ disabled = _t === void 0 ? false : _t,
158
+ _u = _a.minHeight,
159
+ minHeight = _u === void 0 ? 40 : _u,
160
+ _v = _a.isBlank,
161
+ isBlank = _v === void 0 ? false : _v,
162
+ onDropdownStateChange = _a.onDropdownStateChange,
163
+ gridInfo = _a.gridInfo,
164
+ style = _a.style,
165
+ otherProps = __rest(_a, ["value", "dataType", "alignment", "columnIndex", "rowIndex", "fieldName", "clickable", "ellipsizeMode", "numberOfLines", "textStyle", "padding", "statusConfig", "actions", "showActions", "actionIcon", "formatter", "currencySymbol", "currencyPrecision", "dateFormat", "booleanTrueText", "booleanFalseText", "emptyText", "onCellPress", "onActionPress", "attachMoreAction", "onLongPress", "disabled", "minHeight", "isBlank", "onDropdownStateChange", "gridInfo", "style"]);
166
+ var styles = useStyles({
167
+ alignment: alignment,
168
+ padding: padding,
169
+ minHeight: minHeight,
170
+ disabled: disabled,
84
171
  clickable: clickable || !!onCellPress
85
172
  });
86
-
87
173
  // 格式化显示值
88
- const formattedValue = useMemo(() => {
174
+ var formattedValue = (0, react_1.useMemo)(function () {
89
175
  if (isBlank || value === null || value === undefined) {
90
176
  return emptyText;
91
177
  }
92
-
93
178
  // 使用自定义格式化函数
94
179
  if (formatter) {
95
180
  return formatter(value, dataType);
96
181
  }
97
-
98
182
  // 内置格式化逻辑
99
183
  switch (dataType) {
100
184
  case "number":
101
185
  return typeof value === "number" ? value.toLocaleString() : String(value);
102
186
  case "currency":
103
187
  {
104
- const numValue = typeof value === "number" ? value : parseFloat(value);
188
+ var numValue = typeof value === "number" ? value : parseFloat(value);
105
189
  if (isNaN(numValue)) return emptyText;
106
- return `${currencySymbol}${numValue.toFixed(currencyPrecision)}`;
190
+ return "".concat(currencySymbol).concat(numValue.toFixed(currencyPrecision));
107
191
  }
108
192
  case "date":
109
193
  {
110
194
  if (!value) return emptyText;
111
- const date = new Date(value);
195
+ var date = new Date(value);
112
196
  if (isNaN(date.getTime())) return emptyText;
113
-
114
197
  // 简单的日期格式化
115
198
  if (dateFormat === "YYYY-MM-DD") {
116
199
  return date.toISOString().split('T')[0];
117
200
  } else if (dateFormat === "MM/DD/YYYY") {
118
- return `${(date.getMonth() + 1).toString().padStart(2, '0')}/${date.getDate().toString().padStart(2, '0')}/${date.getFullYear()}`;
201
+ return "".concat((date.getMonth() + 1).toString().padStart(2, '0'), "/").concat(date.getDate().toString().padStart(2, '0'), "/").concat(date.getFullYear());
119
202
  } else {
120
203
  return date.toLocaleDateString();
121
204
  }
@@ -130,13 +213,12 @@ const TapasDataCell = ({
130
213
  return String(value || emptyText);
131
214
  }
132
215
  }, [value, dataType, formatter, currencySymbol, currencyPrecision, dateFormat, booleanTrueText, booleanFalseText, emptyText, isBlank]);
133
-
134
216
  // 获取状态样式
135
- const getStatusStyle = useCallback(() => {
217
+ var getStatusStyle = (0, react_1.useCallback)(function () {
136
218
  if (dataType !== "status" || !value || !statusConfig[value]) {
137
219
  return {};
138
220
  }
139
- const config = statusConfig[value];
221
+ var config = statusConfig[value];
140
222
  return {
141
223
  color: config.color,
142
224
  backgroundColor: config.backgroundColor,
@@ -148,69 +230,62 @@ const TapasDataCell = ({
148
230
  overflow: "hidden"
149
231
  };
150
232
  }, [dataType, value, statusConfig]);
151
-
152
233
  // 处理单元格点击
153
- const handleCellPress = useCallback(() => {
234
+ var handleCellPress = (0, react_1.useCallback)(function () {
154
235
  if (disabled || isBlank) return;
155
- onCellPress?.(value, rowIndex, columnIndex, fieldName);
236
+ onCellPress === null || onCellPress === void 0 ? void 0 : onCellPress(value, rowIndex, columnIndex, fieldName);
156
237
  }, [disabled, isBlank, onCellPress, value, rowIndex, columnIndex, fieldName]);
157
-
158
238
  // 处理长按
159
- const handleLongPress = useCallback(() => {
239
+ var handleLongPress = (0, react_1.useCallback)(function () {
160
240
  if (disabled || isBlank) return;
161
- onLongPress?.(value, rowIndex, columnIndex, fieldName);
241
+ onLongPress === null || onLongPress === void 0 ? void 0 : onLongPress(value, rowIndex, columnIndex, fieldName);
162
242
  }, [disabled, isBlank, onLongPress, value, rowIndex, columnIndex, fieldName]);
163
-
164
243
  // 处理操作按钮点击
165
- const handleActionPress = useCallback(action => {
244
+ var handleActionPress = (0, react_1.useCallback)(function (action) {
166
245
  if (disabled || action.disabled) return;
167
- onActionPress?.(action, value, rowIndex, columnIndex);
246
+ onActionPress === null || onActionPress === void 0 ? void 0 : onActionPress(action, value, rowIndex, columnIndex);
168
247
  }, [disabled, onActionPress, value, rowIndex, columnIndex]);
169
-
170
248
  // 下拉菜单状态
171
- const [dropdownVisible, setDropdownVisible] = useState(false);
172
- const [dropdownPosition, setDropdownPosition] = useState({
173
- top: 32,
174
- right: 0
175
- });
176
-
249
+ var _w = (0, react_1.useState)(false),
250
+ dropdownVisible = _w[0],
251
+ setDropdownVisible = _w[1];
252
+ var _x = (0, react_1.useState)({
253
+ top: 32,
254
+ right: 0
255
+ }),
256
+ dropdownPosition = _x[0],
257
+ setDropdownPosition = _x[1];
177
258
  // 计算下拉菜单的最佳位置
178
- const calculateDropdownPosition = useCallback(() => {
259
+ var calculateDropdownPosition = (0, react_1.useCallback)(function () {
179
260
  // 更准确地计算下拉菜单的实际高度
180
- const itemHeight = 32; // 每个选项的高度
181
- const borderWidth = 2; // 边框宽度
182
- const padding = 8; // 内边距
183
- const shadowHeight = 4; // 阴影高度
184
-
261
+ var itemHeight = 32; // 每个选项的高度
262
+ var borderWidth = 2; // 边框宽度
263
+ var padding = 8; // 内边距
264
+ var shadowHeight = 4; // 阴影高度
185
265
  // 考虑文本长度对高度的影响
186
- const maxTextLength = Math.max(...actions.map(action => action.label.length));
187
- const textHeightAdjustment = maxTextLength > 10 ? 4 : 0; // 长文本可能需要更多高度
188
-
266
+ var maxTextLength = Math.max.apply(Math, actions.map(function (action) {
267
+ return action.label.length;
268
+ }));
269
+ var textHeightAdjustment = maxTextLength > 10 ? 4 : 0; // 长文本可能需要更多高度
189
270
  // 计算下拉菜单的宽度(考虑文本长度)
190
271
  // const minWidth = 120; // 最小宽度
191
272
  // const textWidth = maxTextLength * 8; // 估算文本宽度
192
273
  // const _actualWidth = Math.max(minWidth, textWidth + 24); // 24px 为内边距和图标空间
193
-
194
- const actualHeight = actions.length * itemHeight + borderWidth + padding + shadowHeight + textHeightAdjustment;
195
- const buttonHeight = 32; // 按钮高度
196
- const cellHeight = gridInfo?.rowHeight || 56; // 使用传入的 rowHeight 或默认值
197
- const gridHeight = gridInfo?.gridHeight || 400; // 使用传入的 gridHeight 或默认值
198
-
274
+ var actualHeight = actions.length * itemHeight + borderWidth + padding + shadowHeight + textHeightAdjustment;
275
+ var buttonHeight = 32; // 按钮高度
276
+ var cellHeight = (gridInfo === null || gridInfo === void 0 ? void 0 : gridInfo.rowHeight) || 56; // 使用传入的 rowHeight 或默认值
277
+ var gridHeight = (gridInfo === null || gridInfo === void 0 ? void 0 : gridInfo.gridHeight) || 400; // 使用传入的 gridHeight 或默认值
199
278
  // 根据行索引估算当前单元格在 Grid 中的位置
200
- const currentRowIndex = rowIndex || 0;
201
-
279
+ var currentRowIndex = rowIndex || 0;
202
280
  // 计算当前单元格距离 Grid 底部的距离
203
- const currentCellBottom = (currentRowIndex + 1) * cellHeight;
204
- const spaceBelow = gridHeight - currentCellBottom;
205
-
281
+ var currentCellBottom = (currentRowIndex + 1) * cellHeight;
282
+ var spaceBelow = gridHeight - currentCellBottom;
206
283
  // 计算上方可用空间
207
- const currentCellTop = currentRowIndex * cellHeight;
208
- const spaceAbove = currentCellTop;
209
-
284
+ var currentCellTop = currentRowIndex * cellHeight;
285
+ var spaceAbove = currentCellTop;
210
286
  // 添加安全边距,确保下拉菜单不会紧贴边界
211
- const safetyMargin = 8;
212
- const requiredSpace = actualHeight + safetyMargin;
213
-
287
+ var safetyMargin = 8;
288
+ var requiredSpace = actualHeight + safetyMargin;
214
289
  // 智能选择显示位置
215
290
  if (requiredSpace > spaceBelow && requiredSpace <= spaceAbove) {
216
291
  // 下方空间不够,但上方空间足够,显示在上方
@@ -243,89 +318,79 @@ const TapasDataCell = ({
243
318
  };
244
319
  }
245
320
  }, [actions.length, rowIndex, gridInfo]);
246
-
247
321
  // 全局下拉菜单管理
248
- useEffect(() => {
249
- const closeDropdown = () => {
322
+ (0, react_1.useEffect)(function () {
323
+ var closeDropdown = function () {
250
324
  setDropdownVisible(false);
251
325
  unregisterDropdown();
252
326
  };
253
-
254
327
  // 注册当前下拉菜单
255
328
  if (dropdownVisible) {
256
329
  registerDropdown(columnIndex || 0, rowIndex || 0, closeDropdown);
257
330
  } else {
258
331
  unregisterDropdown();
259
332
  }
260
-
261
333
  // 清理函数
262
- return () => {
334
+ return function () {
263
335
  unregisterDropdown();
264
336
  };
265
337
  }, [dropdownVisible, columnIndex, rowIndex]);
266
-
267
338
  // 通知父组件下拉菜单状态变化
268
- useEffect(() => {
269
- onDropdownStateChange?.(dropdownVisible);
339
+ (0, react_1.useEffect)(function () {
340
+ onDropdownStateChange === null || onDropdownStateChange === void 0 ? void 0 : onDropdownStateChange(dropdownVisible);
270
341
  }, [dropdownVisible, onDropdownStateChange]);
271
-
272
342
  // 监听全局关闭事件
273
- useEffect(() => {
343
+ (0, react_1.useEffect)(function () {
274
344
  // const _handleGlobalClose = () => {
275
345
  // if (globalDropdownState.activeColumn !== columnIndex ||
276
346
  // globalDropdownState.activeRow !== rowIndex) {
277
347
  // setDropdownVisible(false);
278
348
  // }
279
349
  // };
280
-
281
350
  // 这里可以添加全局事件监听器
282
351
  // 为了简化,我们在点击其他单元格时关闭当前下拉菜单
283
352
  }, [columnIndex, rowIndex]);
284
-
285
353
  // 渲染操作按钮
286
- const renderActions = () => {
354
+ var renderActions = function () {
287
355
  if (!showActions || actions.length === 0 || isBlank) {
288
356
  return null;
289
357
  }
290
-
291
358
  // 如果只有一个操作,直接显示图标按钮
292
359
  if (actions.length === 1) {
293
- const action = actions[0];
294
- if (!action) return null;
295
-
360
+ var action_1 = actions[0];
361
+ if (!action_1) return null;
296
362
  // 检查是否有文本内容,如果没有文本内容,按钮应该居中
297
- const hasTextContent = formattedValue && formattedValue.trim() !== '';
298
- const buttonStyle = hasTextContent ? [styles.actionButton, {
363
+ var hasTextContent = formattedValue && formattedValue.trim() !== '';
364
+ var buttonStyle = hasTextContent ? [styles.actionButton, {
299
365
  marginLeft: 8
300
366
  }] : styles.actionButton;
301
- return /*#__PURE__*/React.createElement(Pressable, {
367
+ return react_1.default.createElement(react_native_1.Pressable, {
302
368
  style: buttonStyle,
303
- onPress: event => {
369
+ onPress: function (event) {
304
370
  // 阻止事件冒泡,避免触发外层的 attachCellPress
305
371
  event.stopPropagation();
306
372
  if (attachMoreAction) {
307
- attachMoreAction(action);
373
+ attachMoreAction(action_1);
308
374
  } else {
309
- handleActionPress(action);
375
+ handleActionPress(action_1);
310
376
  }
311
377
  },
312
- disabled: disabled || action.disabled
313
- }, /*#__PURE__*/React.createElement(TapasIcon, {
314
- name: action.icon || actionIcon,
378
+ disabled: disabled || action_1.disabled
379
+ }, react_1.default.createElement(TapasIcon_1.default, {
380
+ name: action_1.icon || actionIcon,
315
381
  size: 16,
316
382
  color: styles.actionIcon.color
317
383
  }));
318
384
  }
319
-
320
385
  // 多个操作显示下拉菜单
321
- return /*#__PURE__*/React.createElement(View, {
386
+ return react_1.default.createElement(react_native_1.View, {
322
387
  style: [styles.dropdownContainer, {
323
388
  // 只有当前激活的下拉菜单容器才有高 z-index
324
389
  zIndex: globalDropdownState.activeColumn === columnIndex && globalDropdownState.activeRow === rowIndex ? 2147483646 : 1
325
390
  }]
326
- }, /*#__PURE__*/React.createElement(Pressable, {
391
+ }, react_1.default.createElement(react_native_1.Pressable, {
327
392
  style: styles.actionButton,
328
- onPress: event => {
393
+ onPress: function (event) {
329
394
  // 阻止事件冒泡,避免触发外层的 attachCellPress
330
395
  event.stopPropagation();
331
396
  if (dropdownVisible) {
@@ -334,187 +399,35 @@ const TapasDataCell = ({
334
399
  } else {
335
400
  // 如果当前下拉菜单关闭,先关闭其他所有下拉菜单,然后打开当前菜单
336
401
  closeAllDropdowns();
337
-
338
402
  // 计算并设置下拉菜单位置
339
403
  setDropdownPosition(calculateDropdownPosition());
340
-
341
404
  // 延迟打开当前下拉菜单,确保其他菜单已关闭
342
- setTimeout(() => {
405
+ setTimeout(function () {
343
406
  setDropdownVisible(true);
344
407
  }, 0);
345
408
  }
346
409
  },
347
410
  disabled: disabled
348
- }, /*#__PURE__*/React.createElement(TapasIcon, {
411
+ }, react_1.default.createElement(TapasIcon_1.default, {
349
412
  name: actionIcon,
350
413
  size: 16,
351
414
  color: styles.actionIcon.color
352
- })), dropdownVisible && /*#__PURE__*/React.createElement(View, {
415
+ })), dropdownVisible && react_1.default.createElement(react_native_1.View, {
353
416
  style: [styles.dropdownMenu, {
354
417
  top: dropdownPosition.top,
355
418
  right: dropdownPosition.right
356
419
  }]
357
- }, actions.map((action, index) => /*#__PURE__*/React.createElement(Pressable, {
358
- key: action.id,
359
- style: [styles.dropdownItem, index === actions.length - 1 && styles.dropdownItemLast],
360
- onPress: event => {
361
- // 阻止事件冒泡,避免触发外层的 attachCellPress
362
- event.stopPropagation();
363
- if (attachMoreAction) {
364
- attachMoreAction(action);
365
- } else {
366
- handleActionPress(action);
367
- }
368
- setDropdownVisible(false);
369
- },
370
- disabled: disabled || action.disabled
371
- }, /*#__PURE__*/React.createElement(Text, {
372
- style: [styles.dropdownItemText, action.disabled && styles.dropdownItemDisabled]
373
- }, action.label)))));
374
- };
375
-
376
- // 渲染内容
377
- const renderContent = () => {
378
- if (isBlank) {
379
- return null;
380
- }
381
- const statusStyle = getStatusStyle();
382
- const hasStatusStyle = Object.keys(statusStyle).length > 0;
383
- return /*#__PURE__*/React.createElement(View, {
384
- style: styles.content
385
- }, /*#__PURE__*/React.createElement(Text, {
386
- style: [styles.text, hasStatusStyle && statusStyle, textStyle],
387
- numberOfLines: numberOfLines,
388
- ellipsizeMode: ellipsizeMode
389
- }, formattedValue), renderActions());
390
- };
391
-
392
- // 如果可点击,使用 Pressable
393
- if (clickable || onCellPress || onLongPress) {
394
- return /*#__PURE__*/React.createElement(Pressable, _extends({}, otherProps, {
395
- style: [styles.container, style],
396
- onPress: handleCellPress,
397
- onLongPress: handleLongPress,
398
- disabled: disabled
399
- }), renderContent());
400
- }
401
-
402
- // 否则使用普通 View
403
- return /*#__PURE__*/React.createElement(View, _extends({}, otherProps, {
404
- style: [styles.container, style]
405
- }), renderContent());
406
- };
407
- const useStyles = makeStyles((theme, props) => {
408
- const alignment = props?.alignment || "left";
409
- const paddingHorizontal = props?.padding?.horizontal || 16;
410
- const paddingVertical = props?.padding?.vertical || 8;
411
- const minHeight = props?.minHeight || 40;
412
- const disabled = props?.disabled || false;
413
- const clickable = props?.clickable || false;
414
- const justifyContent = alignment === "left" ? "flex-start" : alignment === "right" ? "flex-end" : "center";
415
- return {
416
- container: {
417
- minHeight,
418
- paddingHorizontal,
419
- paddingVertical,
420
- backgroundColor: disabled ? theme?.colors?.grey5 || "#f8f9fa" : "transparent",
421
- opacity: disabled ? 0.6 : 1,
422
- borderBottomWidth: 0,
423
- // 移除边框,让 Grid 处理边框
424
- borderBottomColor: "transparent",
425
- display: "flex",
426
- flexDirection: "row",
427
- alignItems: "center",
428
- justifyContent: "space-between",
429
- width: "100%",
430
- height: "100%",
431
- // 确保下拉菜单不被截断
432
- overflow: "visible"
433
- },
434
- content: {
435
- flex: 1,
436
- flexDirection: "row",
437
- alignItems: "center",
438
- justifyContent: "space-between",
439
- height: "100%",
440
- minHeight
441
- },
442
- text: {
443
- flex: 1,
444
- fontSize: theme?.fonts?.sizeM || 14,
445
- fontWeight: "400",
446
- color: theme?.colors?.colorTextPrimary || theme?.colors?.grey1 || "#333",
447
- textAlign: alignment,
448
- alignSelf: justifyContent === "flex-start" ? "flex-start" : justifyContent === "flex-end" ? "flex-end" : "center"
449
- },
450
- actionButton: {
451
- padding: 4,
452
- borderRadius: 4,
453
- backgroundColor: clickable ? "transparent" : theme?.colors?.grey5 || "#f8f9fa",
454
- display: "flex",
455
- alignItems: "center",
456
- justifyContent: "center",
457
- minWidth: 24,
458
- minHeight: 24
459
- },
460
- actionIcon: {
461
- color: theme?.colors?.grey2 || "#999"
462
- },
463
- dropdownContainer: {
464
- position: "relative",
465
- // 默认使用较低的 z-index,只有激活的下拉菜单容器才有高 z-index
466
- zIndex: 1,
467
- // 确保容器本身不会创建新的 stacking context
468
- isolation: "auto"
469
- },
470
- dropdownMenu: {
471
- position: "absolute",
472
- // 使用绝对定位
473
- backgroundColor: theme?.colors?.background || "#fff",
474
- borderRadius: 4,
475
- borderWidth: 1,
476
- borderColor: theme?.colors?.grey4 || "#e0e0e0",
477
- shadowColor: "#000",
478
- shadowOffset: {
479
- width: 0,
480
- height: 2
481
- },
482
- shadowOpacity: 0.25,
483
- shadowRadius: 3.84,
484
- elevation: 5,
485
- minWidth: 120,
486
- zIndex: 2147483647,
487
- // 更高的 z-index,确保显示在所有元素之上
488
- // 确保下拉菜单不被父容器的 overflow 隐藏
489
- overflow: "visible",
490
- // 确保下拉菜单在正确的层级上
491
- isolation: "isolate"
492
- },
493
- dropdownItem: {
494
- paddingHorizontal: 12,
495
- paddingVertical: 8,
496
- borderBottomWidth: 1,
497
- borderBottomColor: theme?.colors?.grey4 || "#e0e0e0"
498
- },
499
- dropdownItemLast: {
500
- borderBottomWidth: 0
501
- },
502
- dropdownItemText: {
503
- fontSize: 14,
504
- color: theme?.colors?.colorTextPrimary || theme?.colors?.grey1 || "#333"
505
- },
506
- dropdownItemDisabled: {
507
- color: theme?.colors?.grey3 || "#999",
508
- opacity: 0.6
509
- }
510
- };
511
- });
512
- export default withTheme(TapasDataCell);
513
-
514
- // Export aliases for compatibility
515
- export const DataCell = withTheme(TapasDataCell);
516
- export { TapasDataCell, setDropdownStateChangeListener };
517
- //# sourceMappingURL=DataCell.js.mapPress(action);
420
+ }, actions.map(function (action, index) {
421
+ return react_1.default.createElement(react_native_1.Pressable, {
422
+ key: action.id,
423
+ style: [styles.dropdownItem, index === actions.length - 1 && styles.dropdownItemLast],
424
+ onPress: function (event) {
425
+ // 阻止事件冒泡,避免触发外层的 attachCellPress
426
+ event.stopPropagation();
427
+ if (attachMoreAction) {
428
+ attachMoreAction(action);
429
+ } else {
430
+ handleActionPress(action);
518
431
  }
519
432
  setDropdownVisible(false);
520
433
  },