@beppla/tapas-ui 1.0.67 → 1.0.68

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 (255) hide show
  1. package/commonjs/AnimatedNavItem/index.js +15 -9
  2. package/commonjs/BarChart/BarChart.js +90 -112
  3. package/commonjs/BarChart/BarChart.js.map +1 -1
  4. package/commonjs/Button/Button.js +78 -96
  5. package/commonjs/Calendar/Calendar.base.js +190 -162
  6. package/commonjs/Calendar/Calendar.base.js.map +2 -1
  7. package/commonjs/Calendar/Calendar.js +102 -86
  8. package/commonjs/Calendar/Calendar.js.map +1 -2
  9. package/commonjs/Calendar/ConcreteTimeSelector.js +271 -220
  10. package/commonjs/Calendar/CustomRange.js +324 -271
  11. package/commonjs/Calendar/CustomRange.js.map +2 -1
  12. package/commonjs/Calendar/MonthSelector.js.map +2 -1
  13. package/commonjs/Calendar/TimeSelector.js +274 -223
  14. package/commonjs/Calendar/TimeSelector.js.map +2 -1
  15. package/commonjs/Calendar/WeekDaySelector.js.map +2 -1
  16. package/commonjs/Calendar/helper.js +68 -68
  17. package/commonjs/Calendar/local.js +2 -2
  18. package/commonjs/Calendar/local.js.map +1 -2
  19. package/commonjs/Calendar/types.js +11 -11
  20. package/commonjs/Card/Card.js +150 -159
  21. package/commonjs/Card/Card.js.map +1 -2
  22. package/commonjs/CheckBox/GroupCheckBox.js +80 -67
  23. package/commonjs/CheckBox/GroupCheckBox.js.map +1 -2
  24. package/commonjs/CircularProgress/CircularProgress.js +0 -11
  25. package/commonjs/Collapsible/Collapsible.js +102 -55
  26. package/commonjs/Collapsible/Collapsible.js.map +1 -2
  27. package/commonjs/DashboardCard/DashboardCard.js +94 -74
  28. package/commonjs/DashboardCard/DashboardCard.js.map +1 -2
  29. package/commonjs/DataCell/DataCell.js +205 -259
  30. package/commonjs/DataCell/DataCell.js.map +1 -1
  31. package/commonjs/DataCell/index.js.map +1 -2
  32. package/commonjs/DataTable/DataTable.js +136 -141
  33. package/commonjs/DataTable/DataTable.js.map +2 -1
  34. package/commonjs/DeviceSelectionModal/DeviceSelectionModal.js +244 -242
  35. package/commonjs/DeviceSelectionModal/DeviceSelectionModal.js.map +2 -1
  36. package/commonjs/DraggableFlatList/DraggableFlatList.js +10 -12
  37. package/commonjs/DraggableFlatList/DraggableFlatList.js.map +1 -1
  38. package/commonjs/Drawer/Drawer.js +140 -159
  39. package/commonjs/Drawer/Drawer.js.map +1 -2
  40. package/commonjs/Dropdown/InputDropdown.js +123 -114
  41. package/commonjs/Dropdown/InputDropdown.js.map +1 -2
  42. package/commonjs/ExternalLink/ExternalLink.js +50 -58
  43. package/commonjs/ExternalLink/ExternalLink.js.map +2 -1
  44. package/commonjs/Gantt/Accessories.js +168 -135
  45. package/commonjs/Gantt/Accessories.js.map +2 -1
  46. package/commonjs/Gantt/GanttInnerElementType.js +102 -93
  47. package/commonjs/Gantt/GanttInnerElementType.js.map +1 -2
  48. package/commonjs/Gantt/types.js.map +2 -1
  49. package/commonjs/Grid/FixedSizeGrid.js +76 -82
  50. package/commonjs/Grid/Grid.base.js +374 -357
  51. package/commonjs/Grid/Grid.base.js.map +1 -1
  52. package/commonjs/Grid/StaticFixedSizeGrid.js.map +1 -2
  53. package/commonjs/Grid/VariableSizeGrid.js +113 -120
  54. package/commonjs/Grid/VariableSizeGrid.js.map +1 -2
  55. package/commonjs/Grid/helper.js.map +1 -2
  56. package/commonjs/Grid/timer.js +5 -9
  57. package/commonjs/Grid/timer.js.map +2 -1
  58. package/commonjs/Icons/TapasIconExpo.js +94 -101
  59. package/commonjs/Icons/TapasIconExpo.js.map +2 -1
  60. package/commonjs/Icons/fontLoader.js.map +1 -2
  61. package/commonjs/Icons/smartFontLoader.js +222 -266
  62. package/commonjs/Image/Image.js +96 -106
  63. package/commonjs/Image/Image.js.map +2 -1
  64. package/commonjs/Image/PreviewImg.js +63 -85
  65. package/commonjs/Layout/DrawerContext.js +35 -0
  66. package/commonjs/Layout/DrawerContext.js.map +1 -0
  67. package/commonjs/Layout/index.js +34 -38
  68. package/commonjs/Layout/index.js.map +2 -1
  69. package/commonjs/LineChart/LineChart.js +144 -126
  70. package/commonjs/Loading/Loading.js.map +0 -1
  71. package/commonjs/MessageBox/MessageBox.js +126 -127
  72. package/commonjs/MessageBox/MessageBox.js.map +1 -2
  73. package/commonjs/MultiSelector/MultiSelector.js.map +2 -1
  74. package/commonjs/MultiSelector/index.js +8 -3
  75. package/commonjs/MultiSelector/index.js.map +1 -1
  76. package/commonjs/Navigation/Navigation.js.map +0 -1
  77. package/commonjs/Notification/Notification.js.map +1 -2
  78. package/commonjs/Notification/index.js +8 -6
  79. package/commonjs/Notification/index.js.map +1 -2
  80. package/commonjs/NumericInput/NumericInput.js +0 -23
  81. package/commonjs/NumericInput/NumericInput.js.map +0 -1
  82. package/commonjs/Overlay/Overlay.js +30 -29
  83. package/commonjs/Overlay/Overlay.js.map +1 -2
  84. package/commonjs/Pagination/Pagination.js +139 -120
  85. package/commonjs/Pagination/Pagination.js.map +1 -2
  86. package/commonjs/PieChart/PieChart.js +97 -74
  87. package/commonjs/PieChart/PieChart.js.map +1 -2
  88. package/commonjs/PieChart/index.js +4 -3
  89. package/commonjs/PieChart/index.js.map +1 -2
  90. package/commonjs/Popover/Popover.js +137 -112
  91. package/commonjs/Popover/Popover.js.map +2 -1
  92. package/commonjs/Progress/Progress.js.map +1 -0
  93. package/commonjs/Quantity/Quantity.js +122 -117
  94. package/commonjs/Quantity/index.js +3 -0
  95. package/commonjs/Quantity/index.js.map +1 -0
  96. package/commonjs/RadioButton/RadioButton.js +46 -94
  97. package/commonjs/RadioButton/RadioButton.js.map +1 -1
  98. package/commonjs/ReasonModal/ReasonModal.js +122 -125
  99. package/commonjs/ReasonModal/ReasonModal.js.map +1 -2
  100. package/commonjs/ReasonModal/index.js +15 -9
  101. package/commonjs/ReasonModal/index.js.map +2 -1
  102. package/commonjs/ScanButton/ScanButton.js +64 -50
  103. package/commonjs/ScanButton/ScanButton.js.map +2 -1
  104. package/commonjs/SearchInput/index.js +8 -6
  105. package/commonjs/SearchInput/index.js.map +1 -2
  106. package/commonjs/Shell/Shell.js +92 -84
  107. package/commonjs/Shell/Shell.js.map +1 -2
  108. package/commonjs/StatisticCard/StatisticCard.js +47 -41
  109. package/commonjs/StatisticCard/StatisticCard.js.map +2 -1
  110. package/commonjs/Steps/Steps.js +43 -39
  111. package/commonjs/Steps/Steps.js.map +1 -1
  112. package/commonjs/TabTitle/TabTitle.js.map +2 -1
  113. package/commonjs/TableColumnHeader/TableColumnHeader.js +140 -134
  114. package/commonjs/TableColumnHeader/index.js +15 -9
  115. package/commonjs/TableColumnHeader/index.js.map +2 -1
  116. package/commonjs/Task/type.js.map +1 -2
  117. package/commonjs/TextArea/TextArea.js +82 -0
  118. package/commonjs/TextArea/TextArea.js.map +1 -0
  119. package/commonjs/Theme/ThemeProvider.js.map +2 -1
  120. package/commonjs/Theme/defaultTheme.js +18 -10
  121. package/commonjs/Theme/defaultTheme.js.map +1 -1
  122. package/commonjs/Toast/Toast.js +41 -94
  123. package/commonjs/Toast/Toast.js.map +1 -1
  124. package/commonjs/UserSwitcher/index.js +14 -8
  125. package/commonjs/UserSwitcher/index.js.map +2 -1
  126. package/commonjs/common.js +4 -5
  127. package/commonjs/common.js.map +1 -2
  128. package/commonjs/index.js +426 -336
  129. package/commonjs/index.js.map +2 -1
  130. package/module/Alert/Alert.js +51 -71
  131. package/module/Alert/Alert.js.map +1 -2
  132. package/module/AnimatedNavItem/index.js +3 -7
  133. package/module/AnimatedNavItem/index.js.map +2 -1
  134. package/module/BarChart/index.js.map +2 -1
  135. package/module/Button/Button.js +80 -71
  136. package/module/Button/Button.js.map +1 -2
  137. package/module/Button/ButtonGroup.js +129 -120
  138. package/module/Button/ButtonGroup.js.map +2 -1
  139. package/module/Calendar/Calendar.js +80 -76
  140. package/module/Calendar/ConcreteTimeSelector.js.map +1 -2
  141. package/module/Calendar/CustomRange.js +258 -357
  142. package/module/Calendar/DaySelector.js +95 -118
  143. package/module/Calendar/DaySelector.js.map +1 -2
  144. package/module/Calendar/TimeSelector.js +215 -307
  145. package/module/Calendar/WeekDaySelector.js +98 -122
  146. package/module/Calendar/helper.js +74 -74
  147. package/module/Calendar/helper.js.map +1 -2
  148. package/module/Calendar/types.js.map +2 -1
  149. package/module/Card/Card.js +0 -133
  150. package/module/Card/Card.js.map +0 -1
  151. package/module/CheckBox/CheckBox.js +93 -89
  152. package/module/CheckBox/CheckBox.js.map +1 -2
  153. package/module/CheckBox/CheckBoxItem.js +69 -84
  154. package/module/CheckBox/CheckBoxItem.js.map +1 -2
  155. package/module/Collapsible/Collapsible.js +66 -0
  156. package/module/Collapsible/Collapsible.js.map +1 -0
  157. package/module/DashboardCard/DashboardCard.js +80 -88
  158. package/module/DashboardCard/DashboardCard.js.map +2 -1
  159. package/module/DataCell/DataCell.js +311 -224
  160. package/module/DataTable/DataTable.js +0 -100
  161. package/module/DataTable/index.js +4 -2
  162. package/module/DeviceSelectionModal/DeviceSelectionModal.js +0 -124
  163. package/module/DeviceSelectionModal/DeviceSelectionModal.js.map +0 -1
  164. package/module/Dropdown/CustomDropdown.js +212 -160
  165. package/module/Dropdown/CustomDropdown.js.map +1 -1
  166. package/module/Dropdown/Dropdown.js +484 -408
  167. package/module/Dropdown/Dropdown.js.map +2 -1
  168. package/module/Dropdown/InputDropdown.js +116 -134
  169. package/module/Dropdown/InputDropdown.js.map +1 -2
  170. package/module/Gantt/Accessories.js +176 -149
  171. package/module/Gantt/Accessories.js.map +1 -1
  172. package/module/Gantt/Gantt.js.map +1 -2
  173. package/module/Gantt/types.js.map +2 -1
  174. package/module/Grid/FixedSizeGrid.js +80 -86
  175. package/module/Grid/FixedSizeGrid.js.map +1 -2
  176. package/module/Grid/Grid.base.js +339 -401
  177. package/module/Grid/Grid.base.js.map +1 -2
  178. package/module/Grid/VariableSizeGrid.js +121 -118
  179. package/module/Grid/VariableSizeGrid.js.map +2 -1
  180. package/module/Grid/helper.js.map +1 -2
  181. package/module/Grid/timer.js.map +2 -1
  182. package/module/HelloWave/HelloWave.js +43 -53
  183. package/module/HelloWave/HelloWave.js.map +1 -2
  184. package/module/Icons/TapasIcon.js +120 -96
  185. package/module/Icons/TapasIconExpo.js.map +1 -2
  186. package/module/Icons/index.js +9 -10
  187. package/module/Icons/index.js.map +2 -1
  188. package/module/Icons/smartFontLoader.js.map +1 -2
  189. package/module/Image/PreviewImg.js +76 -79
  190. package/module/Input/Input.js +34 -112
  191. package/module/Input/Input.js.map +1 -1
  192. package/module/Layout/DrawerContext.js +18 -29
  193. package/module/Layout/DrawerContext.js.map +1 -2
  194. package/module/Layout/Layout.js.map +1 -2
  195. package/module/Layout/ToastContext.js.map +1 -2
  196. package/module/Layout/index.js +14 -15
  197. package/module/LineChart/LineChart.js.map +1 -2
  198. package/module/ListItem/ListItem.js +98 -105
  199. package/module/ListItem/ListItem.js.map +2 -1
  200. package/module/Loading/Loading.js +67 -65
  201. package/module/Loading/Loading.js.map +1 -1
  202. package/module/MessageBox/MessageBox.js +137 -98
  203. package/module/MessageBox/MessageBox.js.map +2 -1
  204. package/module/MultiSelector/MultiSelector.js +229 -320
  205. package/module/MultiSelector/MultiSelector.js.map +1 -2
  206. package/module/MultiSelector/index.js +3 -2
  207. package/module/MultiSelector/index.js.map +1 -2
  208. package/module/Navigation/Navigation.js.map +1 -0
  209. package/module/Notification/index.js +0 -16
  210. package/module/Notification/index.js.map +0 -1
  211. package/module/NumericInput/NumericInput.js.map +0 -1
  212. package/module/Overlay/Overlay.js +0 -29
  213. package/module/Pagination/Pagination.js +139 -134
  214. package/module/Pagination/Pagination.js.map +2 -1
  215. package/module/PieChart/PieChart.js.map +2 -1
  216. package/module/Popover/Popover.js +117 -147
  217. package/module/Popover/Popover.js.map +1 -2
  218. package/module/Quantity/Quantity.js +112 -129
  219. package/module/Quantity/index.js +16 -0
  220. package/module/Quantity/index.js.map +1 -0
  221. package/module/ReasonModal/index.js +0 -27
  222. package/module/ScanButton/ScanButton.js +0 -45
  223. package/module/SearchInput/index.js +3 -2
  224. package/module/SearchInput/index.js.map +1 -2
  225. package/module/SheetTitle/SheetTitle.js +35 -40
  226. package/module/SheetTitle/SheetTitle.js.map +1 -2
  227. package/module/Shell/Shell.js +79 -92
  228. package/module/Shell/Shell.js.map +1 -2
  229. package/module/Shell/styles.js +8 -8
  230. package/module/Shell/styles.js.map +1 -2
  231. package/module/StatisticCard/StatisticCard.js +79 -48
  232. package/module/StatisticCard/StatisticCard.js.map +2 -1
  233. package/module/TabTitle/TabTitle.js.map +1 -2
  234. package/module/TableColumnHeader/TableColumnHeader.js.map +2 -1
  235. package/module/TableColumnHeader/index.js +3 -8
  236. package/module/Tag/Tag.js +87 -72
  237. package/module/Tag/Tag.js.map +2 -1
  238. package/module/Task/Task.js +108 -0
  239. package/module/Task/type.js.map +2 -1
  240. package/module/Text/Text.js +70 -80
  241. package/module/Text/Text.js.map +2 -1
  242. package/module/TextArea/TextArea.js +0 -119
  243. package/module/TextArea/TextArea.js.map +0 -1
  244. package/module/Theme/ThemeProvider.js.map +2 -1
  245. package/module/Theme/defaultTheme.js +0 -20
  246. package/module/Theme/defaultTheme.js.map +0 -1
  247. package/module/Timeline/Timeline.js +0 -54
  248. package/module/Timeline/Timeline.js.map +0 -1
  249. package/module/UserSwitcher/UserSwitcher.js +171 -130
  250. package/module/UserSwitcher/index.js +3 -5
  251. package/module/UserSwitcher/index.js.map +2 -1
  252. package/module/common.js +8 -7
  253. package/module/common.js.map +1 -2
  254. package/module/index.js +131 -120
  255. package/package.json +2 -2
@@ -1,75 +1,154 @@
1
- import React, { useEffect, useRef, useState } from "react";
2
- import { View, Modal, TouchableOpacity, Text, Dimensions, Pressable, Animated, ScrollView } from "react-native";
3
- import { makeStyles, useTheme, withTheme } from "@rneui/themed";
4
- import Icon from "../Icons/TapasIcon";
5
- const TapasMultiSelector = ({
6
- icon = "arrow_drop_down",
7
- width,
8
- height,
9
- iconStyle,
10
- title,
11
- label,
12
- required,
13
- dropdownSubWidth,
14
- dropdownSubHeight,
15
- dropdownItems = [],
16
- selected,
17
- showSelectedValue = false,
18
- backgroundColor,
19
- onSelect,
20
- placeholder,
21
- disabled,
22
- type,
23
- state = "normal",
24
- stateMsg,
25
- showStateMsg = false,
26
- radius = 12,
27
- offsetWidth = 0,
28
- showSearchBar = false,
29
- noLabelAnim = false,
30
- visible,
31
- setVisible,
32
- searchPlaceholder = "Search",
33
- clearButtonText = "Clear",
34
- confirmButtonText = "Done",
35
- testID
36
- }) => {
37
- const theme = useTheme();
38
- const styles = useStyles(theme);
39
- const [modalVisible, setModalVisible] = useState(false);
40
- const [dropdownWidthCalc, setDropdownWidthCalc] = useState(dropdownSubWidth ?? 151);
41
- const [dropdownPosition, setDropdownPosition] = useState({
42
- top: 0,
43
- left: 0
1
+ "use strict";
2
+
3
+ var __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ } : function (o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ });
19
+ var __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function (o, v) {
20
+ Object.defineProperty(o, "default", {
21
+ enumerable: true,
22
+ value: v
44
23
  });
45
- const [selectedItemKey, setSelectedItemKey] = useState(selected ?? []);
46
- const [top, setTop] = useState(18);
47
- const buttonRef = useRef(null);
48
- const topAnim = useRef(new Animated.Value(18)).current;
49
- const offsetSpace = 8;
50
- const offsetHeight = 10;
51
- const openDropdown = () => {
24
+ } : function (o, v) {
25
+ o["default"] = v;
26
+ });
27
+ var __importStar = this && this.__importStar || function () {
28
+ var ownKeys = function (o) {
29
+ ownKeys = Object.getOwnPropertyNames || function (o) {
30
+ var ar = [];
31
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
32
+ return ar;
33
+ };
34
+ return ownKeys(o);
35
+ };
36
+ return function (mod) {
37
+ if (mod && mod.__esModule) return mod;
38
+ var result = {};
39
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
40
+ __setModuleDefault(result, mod);
41
+ return result;
42
+ };
43
+ }();
44
+ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
45
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
46
+ if (ar || !(i in from)) {
47
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
48
+ ar[i] = from[i];
49
+ }
50
+ }
51
+ return to.concat(ar || Array.prototype.slice.call(from));
52
+ };
53
+ var __importDefault = this && this.__importDefault || function (mod) {
54
+ return mod && mod.__esModule ? mod : {
55
+ "default": mod
56
+ };
57
+ };
58
+ Object.defineProperty(exports, "__esModule", {
59
+ value: true
60
+ });
61
+ var react_1 = __importStar(require("react"));
62
+ var react_native_1 = require("react-native");
63
+ var themed_1 = require("@rneui/themed");
64
+ var TapasIcon_1 = __importDefault(require("../Icons/TapasIcon"));
65
+ var TapasMultiSelector = function (_a) {
66
+ var _b = _a.icon,
67
+ icon = _b === void 0 ? "arrow_drop_down" : _b,
68
+ width = _a.width,
69
+ height = _a.height,
70
+ iconStyle = _a.iconStyle,
71
+ title = _a.title,
72
+ label = _a.label,
73
+ required = _a.required,
74
+ dropdownSubWidth = _a.dropdownSubWidth,
75
+ dropdownSubHeight = _a.dropdownSubHeight,
76
+ _c = _a.dropdownItems,
77
+ dropdownItems = _c === void 0 ? [] : _c,
78
+ selected = _a.selected,
79
+ _d = _a.showSelectedValue,
80
+ showSelectedValue = _d === void 0 ? false : _d,
81
+ backgroundColor = _a.backgroundColor,
82
+ onSelect = _a.onSelect,
83
+ placeholder = _a.placeholder,
84
+ disabled = _a.disabled,
85
+ type = _a.type,
86
+ _e = _a.state,
87
+ state = _e === void 0 ? "normal" : _e,
88
+ stateMsg = _a.stateMsg,
89
+ _f = _a.showStateMsg,
90
+ showStateMsg = _f === void 0 ? false : _f,
91
+ _g = _a.radius,
92
+ radius = _g === void 0 ? 12 : _g,
93
+ _h = _a.offsetWidth,
94
+ offsetWidth = _h === void 0 ? 0 : _h,
95
+ _j = _a.showSearchBar,
96
+ showSearchBar = _j === void 0 ? false : _j,
97
+ _k = _a.noLabelAnim,
98
+ noLabelAnim = _k === void 0 ? false : _k,
99
+ visible = _a.visible,
100
+ setVisible = _a.setVisible,
101
+ _l = _a.searchPlaceholder,
102
+ searchPlaceholder = _l === void 0 ? "Search" : _l,
103
+ _m = _a.clearButtonText,
104
+ clearButtonText = _m === void 0 ? "Clear" : _m,
105
+ _o = _a.confirmButtonText,
106
+ confirmButtonText = _o === void 0 ? "Done" : _o,
107
+ testID = _a.testID;
108
+ var theme = (0, themed_1.useTheme)();
109
+ var styles = useStyles(theme);
110
+ var _p = (0, react_1.useState)(false),
111
+ modalVisible = _p[0],
112
+ setModalVisible = _p[1];
113
+ var _q = (0, react_1.useState)(dropdownSubWidth !== null && dropdownSubWidth !== void 0 ? dropdownSubWidth : 151),
114
+ dropdownWidthCalc = _q[0],
115
+ setDropdownWidthCalc = _q[1];
116
+ var _r = (0, react_1.useState)({
117
+ top: 0,
118
+ left: 0
119
+ }),
120
+ dropdownPosition = _r[0],
121
+ setDropdownPosition = _r[1];
122
+ var _s = (0, react_1.useState)(selected !== null && selected !== void 0 ? selected : []),
123
+ selectedItemKey = _s[0],
124
+ setSelectedItemKey = _s[1];
125
+ var _t = (0, react_1.useState)(18),
126
+ top = _t[0],
127
+ setTop = _t[1];
128
+ var buttonRef = (0, react_1.useRef)(null);
129
+ var topAnim = (0, react_1.useRef)(new react_native_1.Animated.Value(18)).current;
130
+ var offsetSpace = 8;
131
+ var offsetHeight = 10;
132
+ var openDropdown = function () {
52
133
  if (disabled) return;
53
134
  if (buttonRef.current) {
54
- buttonRef.current.measure((_fx, _fy, width, height, px, py) => {
55
- const window = Dimensions.get("window");
56
- const dropdownHeight = dropdownSubHeight ?? Math.min(40 * dropdownItems.length + 24, 448);
57
- const dropdownWidth = Math.max(width, dropdownSubWidth ?? 151);
135
+ buttonRef.current.measure(function (_fx, _fy, width, height, px, py) {
136
+ var window = react_native_1.Dimensions.get("window");
137
+ var dropdownHeight = dropdownSubHeight !== null && dropdownSubHeight !== void 0 ? dropdownSubHeight : Math.min(40 * dropdownItems.length + 24, 448);
138
+ var dropdownWidth = Math.max(width, dropdownSubWidth !== null && dropdownSubWidth !== void 0 ? dropdownSubWidth : 151);
58
139
  setDropdownWidthCalc(dropdownWidth);
59
-
60
140
  // 计算下方空间是否足够
61
- const enoughSpaceBelow = py + height + dropdownHeight + offsetHeight <= window.height;
62
- const enoughSpaceAbove = py - dropdownHeight >= 0;
63
- const enoughSpaceRight = px + dropdownWidth <= window.width;
64
-
141
+ var enoughSpaceBelow = py + height + dropdownHeight + offsetHeight <= window.height;
142
+ var enoughSpaceAbove = py - dropdownHeight >= 0;
143
+ var enoughSpaceRight = px + dropdownWidth <= window.width;
65
144
  // 处理 px 由于 tab screen的问题 导致 px 可能是多个屏宽倍数的问题
66
- const adjustedPx = px % window.width + (px > window.width ? 56 : 0) + offsetWidth;
145
+ var adjustedPx = px % window.width + (px > window.width ? 56 : 0) + offsetWidth;
67
146
  // 根据空间决定显示方向和位置
68
- const top = enoughSpaceBelow ? py + height + offsetSpace : enoughSpaceAbove ? py - dropdownHeight - offsetHeight - 16 : py + height + offsetSpace;
69
- const left = enoughSpaceRight ? adjustedPx : adjustedPx + width - dropdownWidth;
147
+ var top = enoughSpaceBelow ? py + height + offsetSpace : enoughSpaceAbove ? py - dropdownHeight - offsetHeight - 16 : py + height + offsetSpace;
148
+ var left = enoughSpaceRight ? adjustedPx : adjustedPx + width - dropdownWidth;
70
149
  setDropdownPosition({
71
- top,
72
- left
150
+ top: top,
151
+ left: left
73
152
  });
74
153
  if (setVisible) {
75
154
  setVisible(true);
@@ -79,65 +158,77 @@ const TapasMultiSelector = ({
79
158
  });
80
159
  }
81
160
  };
82
- useEffect(() => {
83
- setSelectedItemKey(selected ?? []);
161
+ (0, react_1.useEffect)(function () {
162
+ setSelectedItemKey(selected !== null && selected !== void 0 ? selected : []);
84
163
  }, [selected]);
85
- useEffect(() => {
164
+ (0, react_1.useEffect)(function () {
86
165
  if (typeof visible === "boolean" && visible !== undefined) {
87
166
  setModalVisible(visible);
88
167
  }
89
168
  }, [visible]);
90
- useEffect(() => {
91
- const start = selectedItemKey.length === 0 ? 0 : 18;
92
- const target = selectedItemKey.length === 0 ? 18 : 0;
169
+ (0, react_1.useEffect)(function () {
170
+ var start = selectedItemKey.length === 0 ? 0 : 18;
171
+ var target = selectedItemKey.length === 0 ? 18 : 0;
93
172
  if (top === target) return;
94
173
  setTop(target);
95
174
  topAnim.setValue(start);
96
- Animated.timing(topAnim, {
175
+ react_native_1.Animated.timing(topAnim, {
97
176
  toValue: target,
98
177
  duration: 300,
99
178
  useNativeDriver: true
100
179
  }).start();
101
180
  }, [selectedItemKey]);
102
- const closeModal = () => {
181
+ var closeModal = function () {
103
182
  if (setVisible) {
104
183
  setVisible(false);
105
184
  } else {
106
185
  setModalVisible(false);
107
186
  }
108
187
  };
109
- const handleItemSelect = key => {
110
- const newSelected = selectedItemKey.includes(key) ? selectedItemKey.filter(k => k !== key) : [...selectedItemKey, key];
188
+ var handleItemSelect = function (key) {
189
+ var newSelected = selectedItemKey.includes(key) ? selectedItemKey.filter(function (k) {
190
+ return k !== key;
191
+ }) : __spreadArray(__spreadArray([], selectedItemKey, true), [key], false);
111
192
  setSelectedItemKey(newSelected);
112
193
  };
113
- const handleClear = () => {
194
+ var handleClear = function () {
114
195
  setSelectedItemKey([]);
115
- onSelect?.([]);
196
+ onSelect === null || onSelect === void 0 ? void 0 : onSelect([]);
116
197
  closeModal();
117
198
  };
118
- const handleConfirm = () => {
119
- onSelect?.(selectedItemKey);
199
+ var handleConfirm = function () {
200
+ onSelect === null || onSelect === void 0 ? void 0 : onSelect(selectedItemKey);
120
201
  closeModal();
121
202
  };
122
- const renderCheckbox = item => /*#__PURE__*/React.createElement(View, {
123
- style: styles.checkboxContainer
124
- }, /*#__PURE__*/React.createElement(View, {
125
- style: [styles.checkbox, selectedItemKey.includes(item.key) && styles.checkboxChecked]
126
- }, selectedItemKey.includes(item.key) && /*#__PURE__*/React.createElement(Text, {
127
- style: styles.checkmark
128
- }, "\u2713")), /*#__PURE__*/React.createElement(Text, {
129
- style: styles.optionText,
130
- numberOfLines: 1,
131
- ellipsizeMode: "tail"
132
- }, item.value));
133
- const renderButton = (text, onPress, disabled = false, primary = false) => /*#__PURE__*/React.createElement(TouchableOpacity, {
134
- style: [styles.button, primary && styles.primaryButton, disabled && styles.disabledButton],
135
- onPress: onPress,
136
- disabled: disabled
137
- }, /*#__PURE__*/React.createElement(Text, {
138
- style: [styles.buttonText, primary && styles.primaryButtonText, disabled && styles.disabledButtonText]
139
- }, text));
140
- return /*#__PURE__*/React.createElement(View, {
203
+ var renderCheckbox = function (item) {
204
+ return react_1.default.createElement(react_native_1.View, {
205
+ style: styles.checkboxContainer
206
+ }, react_1.default.createElement(react_native_1.View, {
207
+ style: [styles.checkbox, selectedItemKey.includes(item.key) && styles.checkboxChecked]
208
+ }, selectedItemKey.includes(item.key) && react_1.default.createElement(react_native_1.Text, {
209
+ style: styles.checkmark
210
+ }, "\u2713")), react_1.default.createElement(react_native_1.Text, {
211
+ style: styles.optionText,
212
+ numberOfLines: 1,
213
+ ellipsizeMode: "tail"
214
+ }, item.value));
215
+ };
216
+ var renderButton = function (text, onPress, disabled, primary) {
217
+ if (disabled === void 0) {
218
+ disabled = false;
219
+ }
220
+ if (primary === void 0) {
221
+ primary = false;
222
+ }
223
+ return react_1.default.createElement(react_native_1.TouchableOpacity, {
224
+ style: [styles.button, primary && styles.primaryButton, disabled && styles.disabledButton],
225
+ onPress: onPress,
226
+ disabled: disabled
227
+ }, react_1.default.createElement(react_native_1.Text, {
228
+ style: [styles.buttonText, primary && styles.primaryButtonText, disabled && styles.disabledButtonText]
229
+ }, text));
230
+ };
231
+ return react_1.default.createElement(react_native_1.View, {
141
232
  style: [styles.con, width ? {
142
233
  maxWidth: width,
143
234
  minWidth: width
@@ -146,16 +237,16 @@ const TapasMultiSelector = ({
146
237
  maxHeight: height + (label ? 7 : 0) + (showStateMsg ? 15 : 0)
147
238
  } : null],
148
239
  testID: testID
149
- }, label && !noLabelAnim && /*#__PURE__*/React.createElement(Animated.View, {
240
+ }, label && !noLabelAnim && react_1.default.createElement(react_native_1.Animated.View, {
150
241
  style: [styles.labelCon, {
151
242
  top: topAnim
152
243
  }, {
153
244
  backgroundColor: backgroundColor || theme.theme.colors.white
154
245
  }]
155
- }, /*#__PURE__*/React.createElement(Pressable, {
246
+ }, react_1.default.createElement(react_native_1.Pressable, {
156
247
  style: styles.labelInner,
157
248
  onPress: openDropdown
158
- }, /*#__PURE__*/React.createElement(Text, {
249
+ }, react_1.default.createElement(react_native_1.Text, {
159
250
  style: [styles.label_text, state === "error" && {
160
251
  color: theme.theme.colors.error
161
252
  }, selectedItemKey.length === 0 && {
@@ -165,16 +256,16 @@ const TapasMultiSelector = ({
165
256
  }],
166
257
  numberOfLines: 1,
167
258
  ellipsizeMode: "tail"
168
- }, selectedItemKey.length === 0 ? placeholder || label : label), required && /*#__PURE__*/React.createElement(Text, {
259
+ }, selectedItemKey.length === 0 ? placeholder || label : label), required && react_1.default.createElement(react_native_1.Text, {
169
260
  style: styles.required
170
- }, "*"))), /*#__PURE__*/React.createElement(TouchableOpacity, {
261
+ }, "*"))), react_1.default.createElement(react_native_1.TouchableOpacity, {
171
262
  ref: buttonRef,
172
263
  style: [showSelectedValue || noLabelAnim && label ? styles.btn : null, type === "solid" ? styles.solidBtn : null, type === "solid" && radius ? {
173
264
  borderRadius: radius
174
265
  } : null, label ? {
175
266
  marginTop: 7
176
267
  } : null, noLabelAnim && label && backgroundColor ? {
177
- backgroundColor
268
+ backgroundColor: backgroundColor
178
269
  } : null, state === "error" ? {
179
270
  borderColor: theme.theme.colors.error
180
271
  } : null, disabled ? {
@@ -182,7 +273,7 @@ const TapasMultiSelector = ({
182
273
  } : null],
183
274
  disabled: disabled,
184
275
  onPress: openDropdown
185
- }, showSelectedValue ? /*#__PURE__*/React.createElement(Text, {
276
+ }, showSelectedValue ? react_1.default.createElement(react_native_1.Text, {
186
277
  style: [styles.alignCenter, {
187
278
  flexGrow: 1,
188
279
  marginRight: 12
@@ -191,7 +282,11 @@ const TapasMultiSelector = ({
191
282
  }],
192
283
  numberOfLines: 1,
193
284
  ellipsizeMode: "tail"
194
- }, !selectedItemKey?.length ? placeholder || "Select an option" : dropdownItems.filter(item => selectedItemKey.includes(item.key)).map(item => item.value).join(", ")) : noLabelAnim && label ? /*#__PURE__*/React.createElement(Text, {
285
+ }, !(selectedItemKey === null || selectedItemKey === void 0 ? void 0 : selectedItemKey.length) ? placeholder || "Select an option" : dropdownItems.filter(function (item) {
286
+ return selectedItemKey.includes(item.key);
287
+ }).map(function (item) {
288
+ return item.value;
289
+ }).join(", ")) : noLabelAnim && label ? react_1.default.createElement(react_native_1.Text, {
195
290
  style: [styles.alignCenter, {
196
291
  flexGrow: 1,
197
292
  marginRight: 2
@@ -200,30 +295,30 @@ const TapasMultiSelector = ({
200
295
  }],
201
296
  numberOfLines: 1,
202
297
  ellipsizeMode: "tail"
203
- }, label) : null, /*#__PURE__*/React.createElement(Icon, {
298
+ }, label) : null, react_1.default.createElement(TapasIcon_1.default, {
204
299
  name: modalVisible && icon === "arrow_drop_down" ? "arrow_drop_up" : icon === "arrow_drop_up" ? "arrow_drop_down" : icon || "arrow_drop_down",
205
300
  style: [styles.icon, iconStyle, disabled && {
206
301
  color: theme.theme.colors.grey3
207
302
  }]
208
- })), showStateMsg && /*#__PURE__*/React.createElement(View, {
303
+ })), showStateMsg && react_1.default.createElement(react_native_1.View, {
209
304
  style: styles.msg
210
- }, /*#__PURE__*/React.createElement(Text, {
305
+ }, react_1.default.createElement(react_native_1.Text, {
211
306
  style: [styles.msgText, state === "error" && {
212
307
  color: theme.theme.colors.error
213
308
  }],
214
309
  numberOfLines: 1,
215
310
  ellipsizeMode: "tail"
216
- }, stateMsg)), /*#__PURE__*/React.createElement(Modal, {
311
+ }, stateMsg)), react_1.default.createElement(react_native_1.Modal, {
217
312
  transparent: true,
218
313
  visible: modalVisible,
219
314
  onRequestClose: closeModal,
220
315
  animationType: "fade"
221
- }, /*#__PURE__*/React.createElement(TouchableOpacity, {
316
+ }, react_1.default.createElement(react_native_1.TouchableOpacity, {
222
317
  style: {
223
318
  flex: 1
224
319
  },
225
320
  onPress: closeModal
226
- }, /*#__PURE__*/React.createElement(View, {
321
+ }, react_1.default.createElement(react_native_1.View, {
227
322
  style: [styles.optionsCon, {
228
323
  top: dropdownPosition.top,
229
324
  left: dropdownPosition.left,
@@ -231,39 +326,44 @@ const TapasMultiSelector = ({
231
326
  }, dropdownSubHeight ? {
232
327
  maxHeight: dropdownSubHeight
233
328
  } : null]
234
- }, title && /*#__PURE__*/React.createElement(View, {
329
+ }, title && react_1.default.createElement(react_native_1.View, {
235
330
  style: [styles.flx, styles.titleCon]
236
- }, /*#__PURE__*/React.createElement(Text, {
331
+ }, react_1.default.createElement(react_native_1.Text, {
237
332
  numberOfLines: 1,
238
333
  ellipsizeMode: "tail",
239
334
  style: styles.title
240
- }, title)), showSearchBar && /*#__PURE__*/React.createElement(View, {
335
+ }, title)), showSearchBar && react_1.default.createElement(react_native_1.View, {
241
336
  style: styles.searchContainer
242
- }, /*#__PURE__*/React.createElement(Text, {
337
+ }, react_1.default.createElement(react_native_1.Text, {
243
338
  style: styles.searchPlaceholder
244
- }, searchPlaceholder)), /*#__PURE__*/React.createElement(ScrollView, {
339
+ }, searchPlaceholder)), react_1.default.createElement(react_native_1.ScrollView, {
245
340
  style: styles.optionsScrollView,
246
341
  showsHorizontalScrollIndicator: false,
247
342
  showsVerticalScrollIndicator: false
248
- }, /*#__PURE__*/React.createElement(View, {
343
+ }, react_1.default.createElement(react_native_1.View, {
249
344
  style: styles.optionsInner
250
- }, dropdownItems.length > 0 ? dropdownItems.map(item => /*#__PURE__*/React.createElement(Pressable, {
251
- style: ({
252
- pressed
253
- }) => [styles.option, {
254
- backgroundColor: pressed ? theme.theme.colors.grey4 || "#f0f0f0" : "transparent"
255
- }],
256
- key: `tapas-dropdown-option-${item.key}`,
257
- onPress: () => handleItemSelect(item.key)
258
- }, renderCheckbox(item))) : /*#__PURE__*/React.createElement(Text, {
345
+ }, dropdownItems.length > 0 ? dropdownItems.map(function (item) {
346
+ return react_1.default.createElement(react_native_1.Pressable, {
347
+ style: function (_a) {
348
+ var pressed = _a.pressed;
349
+ return [styles.option, {
350
+ backgroundColor: pressed ? theme.theme.colors.grey4 || "#f0f0f0" : "transparent"
351
+ }];
352
+ },
353
+ key: "tapas-dropdown-option-".concat(item.key),
354
+ onPress: function () {
355
+ return handleItemSelect(item.key);
356
+ }
357
+ }, renderCheckbox(item));
358
+ }) : react_1.default.createElement(react_native_1.Text, {
259
359
  numberOfLines: 1,
260
360
  ellipsizeMode: "tail",
261
361
  style: [styles.optionText, styles.noOptions]
262
- }, "No options"))), /*#__PURE__*/React.createElement(View, {
362
+ }, "No options"))), react_1.default.createElement(react_native_1.View, {
263
363
  style: styles.footer
264
- }, renderButton(clearButtonText, handleClear), renderButton(confirmButtonText, handleConfirm, !selectedItemKey?.length, true))))));
364
+ }, renderButton(clearButtonText, handleClear), renderButton(confirmButtonText, handleConfirm, !(selectedItemKey === null || selectedItemKey === void 0 ? void 0 : selectedItemKey.length), true))))));
265
365
  };
266
- const useStyles = makeStyles(theme => {
366
+ var useStyles = (0, themed_1.makeStyles)(function (theme) {
267
367
  return {
268
368
  flx: {
269
369
  display: "flex",
@@ -474,196 +574,5 @@ const useStyles = makeStyles(theme => {
474
574
  }
475
575
  };
476
576
  });
477
- export default withTheme(TapasMultiSelector);
478
- //# sourceMappingURL=MultiSelector.js.map title: {
479
- height: 48,
480
- display: "flex",
481
- alignItems: "center",
482
- fontSize: theme.fonts.sizeL,
483
- color: "#000",
484
- fontWeight: theme.fonts.weightL
485
- },
486
- optionsCon: {
487
- position: "absolute",
488
- display: "flex",
489
- flexDirection: "column",
490
- overflow: "hidden",
491
- backgroundColor: theme.colors.white,
492
- paddingTop: 8,
493
- paddingBottom: 16,
494
- borderRadius: 12,
495
- maxHeight: 224,
496
- boxShadow: "0px 12px 40px 0px rgba(0, 0, 0, 0.14), 0px 24px 56px 0px rgba(0, 0, 0, 0.10)"
497
- },
498
- optionsScrollView: {
499
- flex: 1,
500
- display: "flex"
501
- },
502
- optionsInner: {
503
- display: "flex",
504
- flexDirection: "column",
505
- justifyContent: "flex-start",
506
- gap: 8
507
- },
508
- option: {
509
- display: "flex",
510
- flexDirection: "row",
511
- width: "100%",
512
- overflow: "hidden",
513
- alignItems: "center",
514
- justifyContent: "flex-start",
515
- height: 48,
516
- gap: 8,
517
- paddingLeft: 8
518
- },
519
- checkboxContainer: {
520
- display: "flex",
521
- flexDirection: "row",
522
- alignItems: "center",
523
- gap: 8,
524
- flex: 1
525
- },
526
- checkbox: {
527
- width: 20,
528
- height: 20,
529
- borderWidth: 2,
530
- borderColor: theme.colors.primary,
531
- borderRadius: 4,
532
- alignItems: "center",
533
- justifyContent: "center"
534
- },
535
- checkboxChecked: {
536
- backgroundColor: theme.colors.primary
537
- },
538
- checkmark: {
539
- color: theme.colors.white,
540
- fontSize: 14,
541
- fontWeight: "bold"
542
- },
543
- optionText: {
544
- fontSize: 14,
545
- fontWeight: "400",
546
- color: theme.colors.primary,
547
- alignSelf: "center",
548
- overflow: "hidden",
549
- flexGrow: 1
550
- },
551
- noOptions: {
552
- width: "100%",
553
- textAlign: "center",
554
- color: theme.colors.grey2,
555
- minHeight: 48,
556
- display: "flex",
557
- alignItems: "center",
558
- justifyContent: "center"
559
- },
560
- btn: {
561
- display: "flex",
562
- flexDirection: "row",
563
- justifyContent: "space-between",
564
- minHeight: 40,
565
- width: "100%",
566
- overflow: "hidden",
567
- position: "relative"
568
- },
569
- solidBtn: {
570
- borderWidth: 1,
571
- borderRadius: 12,
572
- borderStyle: "solid",
573
- borderColor: theme.colors.grey2,
574
- paddingLeft: 16,
575
- paddingRight: 12,
576
- paddingTop: 10,
577
- paddingBottom: 10
578
- },
579
- alignCenter: {
580
- alignSelf: "center"
581
- },
582
- labelCon: {
583
- position: "absolute",
584
- left: 16,
585
- paddingLeft: 1,
586
- paddingRight: 1,
587
- display: "flex",
588
- flexDirection: "row",
589
- zIndex: 30
590
- },
591
- labelInner: {
592
- display: "flex",
593
- flexDirection: "row"
594
- },
595
- label_text: {
596
- fontSize: 12,
597
- color: theme.colors.primary
598
- },
599
- required: {
600
- fontSize: 12,
601
- fontWeight: "400",
602
- color: theme.colors.colorToastNegative,
603
- marginLeft: 1
604
- },
605
- msg: {
606
- display: "flex",
607
- flexDirection: "row",
608
- paddingLeft: 16,
609
- paddingRight: 8,
610
- marginTop: 1,
611
- width: "100%",
612
- height: 15
613
- },
614
- msgText: {
615
- fontSize: 12,
616
- fontWeight: "400",
617
- color: theme.colors.secondary
618
- },
619
- searchContainer: {
620
- padding: 16,
621
- borderBottomWidth: 1,
622
- borderBottomColor: theme.colors.grey2
623
- },
624
- searchPlaceholder: {
625
- color: theme.colors.grey2,
626
- fontSize: 14
627
- },
628
- footer: {
629
- display: "flex",
630
- flexDirection: "row",
631
- alignItems: "center",
632
- justifyContent: "flex-end",
633
- paddingHorizontal: 16,
634
- paddingTop: 8,
635
- borderTopWidth: 1,
636
- borderTopColor: theme.colors.colorPrimaryBorder,
637
- gap: 8
638
- },
639
- button: {
640
- paddingHorizontal: 16,
641
- paddingVertical: 8,
642
- borderRadius: 8,
643
- borderWidth: 1,
644
- borderColor: theme.colors.grey2,
645
- backgroundColor: theme.colors.white
646
- },
647
- primaryButton: {
648
- backgroundColor: theme.colors.primary,
649
- borderColor: theme.colors.primary
650
- },
651
- disabledButton: {
652
- backgroundColor: theme.colors.grey3,
653
- borderColor: theme.colors.grey3
654
- },
655
- buttonText: {
656
- fontSize: 14,
657
- fontWeight: "500",
658
- color: theme.colors.primary
659
- },
660
- primaryButtonText: {
661
- color: theme.colors.white
662
- },
663
- disabledButtonText: {
664
- color: theme.colors.grey2
665
- }
666
- };
667
- });
668
577
  exports.default = (0, themed_1.withTheme)(TapasMultiSelector);
669
578
  //# sourceMappingURL=MultiSelector.js.map