react-native-boxes 1.4.67 → 1.4.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-boxes",
3
- "version": "1.4.67",
3
+ "version": "1.4.68",
4
4
  "description": "A react native library for rapid development of UI using boxes",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
package/src/Bar.tsx CHANGED
@@ -171,7 +171,6 @@ export function BottomNavBar(props: ViewProps &
171
171
  justifyContent: 'center',
172
172
  alignItems: 'center',
173
173
  margin: 0,
174
- padding: theme.dimens.space.md,
175
174
  paddingTop: !hasText ? theme.dimens.space.lg : theme.dimens.space.md,
176
175
  paddingBottom: !hasText ? theme.dimens.space.lg : theme.dimens.space.md,
177
176
  }}
@@ -293,4 +292,4 @@ export function ProgressBarView(props: ProgressBarViewProps) {
293
292
  }} />
294
293
  </View>
295
294
  );
296
- }
295
+ }
package/src/List.tsx CHANGED
@@ -1,7 +1,6 @@
1
- import { ActivityIndicator, Text, View, ViewProps } from "react-native"
1
+ import { ActivityIndicator, Text, TextStyle, View, ViewProps, ViewStyle } from "react-native"
2
2
  import { Box, CardView, Center, HBox, VBox } from "./Box"
3
- import { getIcon } from "./Image"
4
- import { Icon } from "@expo/vector-icons/build/createIconSet"
3
+ import { getIcon, Icon } from "./Image"
5
4
  import { Caption, Subtitle, TextView, TitleText } from "./Text"
6
5
  import { useContext } from "react"
7
6
  import { ThemeContext } from "./ThemeContext"
@@ -121,4 +120,173 @@ export function SimpleDatatlistViewItem(props: SimpleDatatableViewItemProps & Vi
121
120
  </CardView>
122
121
  </PressableView>
123
122
  )
124
- }
123
+ }
124
+
125
+
126
+
127
+
128
+ export function InfoRow(props: {
129
+ title: string,
130
+ text: string,
131
+ icon?: string | React.ReactNode,
132
+ color?: string,
133
+ style?: ViewStyle,
134
+ textStyle?: TextStyle,
135
+ onPress?: () => void
136
+ }) {
137
+ const theme = useContext(ThemeContext)
138
+ const InfoIcon = getIcon(props.icon)
139
+ return (
140
+ <PressableView onPress={props.onPress} style={{
141
+ opacity: props.onPress ? undefined : 1
142
+ }}>
143
+ <HBox style={{
144
+ paddingStart: theme.dimens.space.sm,
145
+ paddingBottom: theme.dimens.space.sm,
146
+ alignItems: 'center',
147
+ }}>
148
+ {InfoIcon && (<InfoIcon
149
+ size={theme.dimens.icon.md * 1.25}
150
+ color={props.color}
151
+ style={{
152
+ paddingEnd: theme.dimens.space.sm,
153
+ paddingStart: theme.dimens.space.sm,
154
+ }} />)}
155
+ <VBox style={[{
156
+ flex: 1,
157
+ paddingStart: theme.dimens.space.sm,
158
+ }, props.style]}>
159
+ <HBox style={{
160
+ alignItems: 'center',
161
+ }}>
162
+
163
+ <TitleText style={{
164
+ color: props.color,
165
+ marginBottom: 0,
166
+ paddingBottom: 0,
167
+ flexWrap: 'wrap'
168
+ }}>
169
+ {props.title || ' '}
170
+ </TitleText>
171
+ </HBox>
172
+ <TextView style={[{
173
+ marginTop: 0,
174
+ paddingTop: 0,
175
+ }, props.textStyle]}>
176
+ {props.text || ' '}
177
+ </TextView>
178
+ </VBox>
179
+ </HBox>
180
+
181
+ </PressableView>
182
+ )
183
+ }
184
+ export function IconRow(props: {
185
+ text: string,
186
+ icon?: string | React.ReactNode,
187
+ onPress?: () => void,
188
+ color?: string
189
+ }) {
190
+ const theme = useContext(ThemeContext)
191
+ const LeftIcon = getIcon(props.icon)
192
+ return (
193
+ <PressableView onPress={props.onPress}>
194
+ <HBox style={{
195
+ marginBottom: theme.dimens.space.md,
196
+ alignItems: 'center'
197
+ }}>
198
+ <LeftIcon style={{
199
+ width: theme.dimens.icon.md,
200
+ marginRight: theme.dimens.space.md
201
+ }} color={props.color || theme.colors.text} />
202
+ <TitleText style={{
203
+ color: props.color || theme.colors.text
204
+ }}>{props.text}</TitleText>
205
+ </HBox>
206
+ </PressableView>
207
+ )
208
+ }
209
+
210
+
211
+
212
+ export function SettingRow({
213
+ text,
214
+ icon,
215
+ style,
216
+ color,
217
+ colorDesc,
218
+ description,
219
+ rightIcon,
220
+ onPress,
221
+ }: {
222
+ text: string;
223
+ icon?: string | any;
224
+ color?: string;
225
+ colorDesc?: string;
226
+ description?: string;
227
+ rightIcon?: string | any;
228
+ style?: ViewStyle;
229
+ onPress: () => void;
230
+ }) {
231
+ const theme = useContext(ThemeContext);
232
+ const RightIcon = getIcon(rightIcon);
233
+ const LeftIcon = getIcon(icon);
234
+ return (
235
+
236
+ <PressableView onPress={onPress} style={{
237
+ width: '100%',
238
+
239
+ }}>
240
+ <HBox
241
+ style={[
242
+ {
243
+ width: '100%',
244
+ alignItems: 'center',
245
+ justifyContent: 'space-between',
246
+ paddingTop: theme.dimens.space.lg,
247
+ paddingLeft: theme.dimens.space.lg,
248
+ paddingBottom: theme.dimens.space.md,
249
+ },
250
+ style,
251
+ ]}
252
+ >
253
+ <HBox style={{
254
+ flex: 1,
255
+ alignItems: "center",
256
+ }}>
257
+ {icon && (
258
+ typeof icon == 'string' ? <Icon name={icon}
259
+ size={theme.dimens.icon.md}
260
+ color={color || theme.colors.text}
261
+ style={{
262
+ paddingBottom: description ? theme.dimens.space.md : 0,
263
+ }} /> : (LeftIcon && <LeftIcon />)
264
+ )}
265
+
266
+ <VBox style={{
267
+ paddingStart: theme.dimens.space.lg,
268
+ flex: 1
269
+ }}>
270
+ <TitleText
271
+ style={{
272
+ color: color || theme.colors.text,
273
+ fontFamily: theme.fonts.Styled,
274
+ paddingTop: 0,
275
+ paddingBottom: 0,
276
+ }}
277
+ >
278
+ {text}
279
+ </TitleText>
280
+
281
+ {description && <Caption style={{
282
+ color: colorDesc || theme.colors.caption,
283
+ }}>{description}</Caption>}
284
+ </VBox>
285
+ </HBox>
286
+
287
+ {rightIcon && <RightIcon />}
288
+ </HBox>
289
+
290
+ </PressableView>
291
+ );
292
+ }
package/src/Modal.tsx CHANGED
@@ -350,7 +350,7 @@ export function Expand(props: ViewProps & {
350
350
  <ExpandIcon />
351
351
  <Animated.View
352
352
  style={{
353
- zIndex: -1,
353
+ zIndex: 1,
354
354
  transform: [{ translateY: fadeAnim }],
355
355
  height: expanded ? 'auto' : 0,
356
356
  overflow: 'hidden'