@oxyhq/bloom 0.59.0 → 0.59.1

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/README.md CHANGED
@@ -200,6 +200,7 @@ Drop the declarative props entirely — `children` owns every pixel.
200
200
  - `color?: 'default' | 'cancel' | 'destructive'` — defaults to `'default'`.
201
201
  - `onPress?: (e) => void` — invoked after the dialog finishes closing.
202
202
  - `disabled?: boolean`
203
+ - `loading?: boolean` — replaces the label with a spinner and disables the action.
203
204
  - `shouldCloseOnPress?: boolean` — defaults to `true`. Set `false` while an async action is in flight.
204
205
  - `testID?: string`
205
206
  - `children?: React.ReactNode` — custom content rendered after the description.
@@ -83,11 +83,13 @@ function ActionButton({
83
83
  const theme = (0, _useTheme.useTheme)();
84
84
  const color = action.color ?? 'default';
85
85
  const shouldCloseOnPress = action.shouldCloseOnPress ?? true;
86
+ const inactive = action.disabled === true || action.loading === true;
86
87
  const {
87
88
  background,
88
89
  foreground
89
90
  } = getActionPalette(color, theme.colors);
90
91
  const handlePress = (0, _react.useCallback)(e => {
92
+ if (inactive) return;
91
93
  const onPress = action.onPress;
92
94
  if (color === 'cancel') {
93
95
  // Cancel always dismisses; consumer's onPress (rare) runs after.
@@ -99,22 +101,31 @@ function ActionButton({
99
101
  } else {
100
102
  onPress?.(e);
101
103
  }
102
- }, [action.onPress, close, color, shouldCloseOnPress]);
104
+ }, [action.onPress, close, color, inactive, shouldCloseOnPress]);
103
105
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
104
106
  style: {
105
107
  borderRadius: 9999,
106
108
  alignItems: 'center',
107
109
  justifyContent: 'center',
108
110
  backgroundColor: background,
109
- opacity: action.disabled ? 0.5 : 1,
111
+ opacity: inactive ? 0.5 : 1,
110
112
  paddingVertical: 12,
111
113
  paddingHorizontal: 24
112
114
  },
113
115
  onPress: handlePress,
114
- disabled: action.disabled,
116
+ disabled: inactive,
117
+ accessibilityState: {
118
+ disabled: inactive,
119
+ busy: action.loading === true
120
+ },
121
+ "aria-disabled": inactive,
122
+ "aria-busy": action.loading || undefined,
115
123
  activeOpacity: 0.7,
116
124
  testID: action.testID,
117
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
125
+ children: action.loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ActivityIndicator, {
126
+ color: foreground,
127
+ size: "small"
128
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
118
129
  style: {
119
130
  fontSize: 16,
120
131
  fontWeight: '500',
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_useTheme","_context","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DialogBody","titleId","descriptionId","title","description","actions","children","theme","useTheme","jsxs","Fragment","jsx","Text","nativeID","style","fontSize","fontWeight","color","colors","text","paddingBottom","lineHeight","textSecondary","length","ActionRow","View","width","gap","justifyContent","map","action","idx","ActionButton","label","close","useDialogContext","shouldCloseOnPress","background","foreground","getActionPalette","handlePress","useCallback","onPress","undefined","TouchableOpacity","borderRadius","alignItems","backgroundColor","opacity","disabled","paddingVertical","paddingHorizontal","activeOpacity","testID","negative","negativeForeground","contrast50","primary","primaryForeground","_exhaustive"],"sourceRoot":"../../../src","sources":["dialog/DialogContent.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_useTheme","_context","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DialogBody","titleId","descriptionId","title","description","actions","children","theme","useTheme","jsxs","Fragment","jsx","Text","nativeID","style","fontSize","fontWeight","color","colors","text","paddingBottom","lineHeight","textSecondary","length","ActionRow","View","width","gap","justifyContent","map","action","idx","ActionButton","label","close","useDialogContext","shouldCloseOnPress","inactive","disabled","loading","background","foreground","getActionPalette","handlePress","useCallback","onPress","undefined","TouchableOpacity","borderRadius","alignItems","backgroundColor","opacity","paddingVertical","paddingHorizontal","accessibilityState","busy","activeOpacity","testID","ActivityIndicator","size","negative","negativeForeground","contrast50","primary","primaryForeground","_exhaustive"],"sourceRoot":"../../../src","sources":["dialog/DialogContent.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import React, { useCallback } from 'react';
4
- import { Text, TouchableOpacity, View } from 'react-native';
4
+ import { ActivityIndicator, Text, TouchableOpacity, View } from 'react-native';
5
5
  import { useTheme } from "../theme/use-theme.js";
6
6
  import { useDialogContext } from "./context.js";
7
7
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
@@ -76,11 +76,13 @@ function ActionButton({
76
76
  const theme = useTheme();
77
77
  const color = action.color ?? 'default';
78
78
  const shouldCloseOnPress = action.shouldCloseOnPress ?? true;
79
+ const inactive = action.disabled === true || action.loading === true;
79
80
  const {
80
81
  background,
81
82
  foreground
82
83
  } = getActionPalette(color, theme.colors);
83
84
  const handlePress = useCallback(e => {
85
+ if (inactive) return;
84
86
  const onPress = action.onPress;
85
87
  if (color === 'cancel') {
86
88
  // Cancel always dismisses; consumer's onPress (rare) runs after.
@@ -92,22 +94,31 @@ function ActionButton({
92
94
  } else {
93
95
  onPress?.(e);
94
96
  }
95
- }, [action.onPress, close, color, shouldCloseOnPress]);
97
+ }, [action.onPress, close, color, inactive, shouldCloseOnPress]);
96
98
  return /*#__PURE__*/_jsx(TouchableOpacity, {
97
99
  style: {
98
100
  borderRadius: 9999,
99
101
  alignItems: 'center',
100
102
  justifyContent: 'center',
101
103
  backgroundColor: background,
102
- opacity: action.disabled ? 0.5 : 1,
104
+ opacity: inactive ? 0.5 : 1,
103
105
  paddingVertical: 12,
104
106
  paddingHorizontal: 24
105
107
  },
106
108
  onPress: handlePress,
107
- disabled: action.disabled,
109
+ disabled: inactive,
110
+ accessibilityState: {
111
+ disabled: inactive,
112
+ busy: action.loading === true
113
+ },
114
+ "aria-disabled": inactive,
115
+ "aria-busy": action.loading || undefined,
108
116
  activeOpacity: 0.7,
109
117
  testID: action.testID,
110
- children: /*#__PURE__*/_jsx(Text, {
118
+ children: action.loading ? /*#__PURE__*/_jsx(ActivityIndicator, {
119
+ color: foreground,
120
+ size: "small"
121
+ }) : /*#__PURE__*/_jsx(Text, {
111
122
  style: {
112
123
  fontSize: 16,
113
124
  fontWeight: '500',
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","Text","TouchableOpacity","View","useTheme","useDialogContext","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","DialogBody","titleId","descriptionId","title","description","actions","children","theme","nativeID","style","fontSize","fontWeight","color","colors","text","paddingBottom","lineHeight","textSecondary","length","ActionRow","width","gap","justifyContent","map","action","idx","ActionButton","label","close","shouldCloseOnPress","background","foreground","getActionPalette","handlePress","e","onPress","undefined","borderRadius","alignItems","backgroundColor","opacity","disabled","paddingVertical","paddingHorizontal","activeOpacity","testID","negative","negativeForeground","contrast50","primary","primaryForeground","_exhaustive"],"sourceRoot":"../../../src","sources":["dialog/DialogContent.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","ActivityIndicator","Text","TouchableOpacity","View","useTheme","useDialogContext","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","DialogBody","titleId","descriptionId","title","description","actions","children","theme","nativeID","style","fontSize","fontWeight","color","colors","text","paddingBottom","lineHeight","textSecondary","length","ActionRow","width","gap","justifyContent","map","action","idx","ActionButton","label","close","shouldCloseOnPress","inactive","disabled","loading","background","foreground","getActionPalette","handlePress","e","onPress","undefined","borderRadius","alignItems","backgroundColor","opacity","paddingVertical","paddingHorizontal","accessibilityState","busy","activeOpacity","testID","size","negative","negativeForeground","contrast50","primary","primaryForeground","_exhaustive"],"sourceRoot":"../../../src","sources":["dialog/DialogContent.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"DialogContent.d.ts","sourceRoot":"","sources":["../../../../src/dialog/DialogContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAQ3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE/D;;;;;;GAMG;AAEH;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,aAAa,EACb,KAAK,EACL,WAAW,EACX,OAAO,EACP,QAAQ,GACT,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,2CAmCA;AAED,wBAAgB,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,2CAQjE;AAkDD,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,WAAW,GAClB;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAiB5C"}
1
+ {"version":3,"file":"DialogContent.d.ts","sourceRoot":"","sources":["../../../../src/dialog/DialogContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAS3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE/D;;;;;;GAMG;AAEH;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,aAAa,EACb,KAAK,EACL,WAAW,EACX,OAAO,EACP,QAAQ,GACT,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,2CAmCA;AAED,wBAAgB,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,2CAQjE;AA2DD,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,WAAW,GAClB;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAiB5C"}
@@ -162,6 +162,11 @@ export type DialogAction = {
162
162
  onPress?: (e: GestureResponderEvent) => void;
163
163
  color?: DialogActionColor;
164
164
  disabled?: boolean;
165
+ /**
166
+ * Replaces the label with a progress indicator and disables interaction while
167
+ * an async action is in flight.
168
+ */
169
+ loading?: boolean;
165
170
  /**
166
171
  * Defaults to `true`. When `true`, the dialog closes (and runs the close
167
172
  * animation) before `onPress` is invoked, which gives the surrounding
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/dialog/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/dialog/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DialogContent.d.ts","sourceRoot":"","sources":["../../../../src/dialog/DialogContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAQ3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE/D;;;;;;GAMG;AAEH;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,aAAa,EACb,KAAK,EACL,WAAW,EACX,OAAO,EACP,QAAQ,GACT,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,2CAmCA;AAED,wBAAgB,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,2CAQjE;AAkDD,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,WAAW,GAClB;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAiB5C"}
1
+ {"version":3,"file":"DialogContent.d.ts","sourceRoot":"","sources":["../../../../src/dialog/DialogContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAS3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE/D;;;;;;GAMG;AAEH;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,aAAa,EACb,KAAK,EACL,WAAW,EACX,OAAO,EACP,QAAQ,GACT,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,2CAmCA;AAED,wBAAgB,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,2CAQjE;AA2DD,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,WAAW,GAClB;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAiB5C"}
@@ -162,6 +162,11 @@ export type DialogAction = {
162
162
  onPress?: (e: GestureResponderEvent) => void;
163
163
  color?: DialogActionColor;
164
164
  disabled?: boolean;
165
+ /**
166
+ * Replaces the label with a progress indicator and disables interaction while
167
+ * an async action is in flight.
168
+ */
169
+ loading?: boolean;
165
170
  /**
166
171
  * Defaults to `true`. When `true`, the dialog closes (and runs the close
167
172
  * animation) before `onPress` is invoked, which gives the surrounding
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/dialog/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/dialog/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxyhq/bloom",
3
- "version": "0.59.0",
3
+ "version": "0.59.1",
4
4
  "description": "Bloom UI — Oxy ecosystem component library for React Native + Expo + Web",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { Text } from 'react-native';
2
+ import { ActivityIndicator, Text } from 'react-native';
3
3
  import { act, fireEvent, render } from '@testing-library/react-native';
4
4
 
5
5
  import {
@@ -111,6 +111,38 @@ describe('Dialog (unified API)', () => {
111
111
  });
112
112
  expect(onConfirm).toHaveBeenCalledTimes(1);
113
113
  });
114
+
115
+ it('renders a busy, non-interactive action while loading', () => {
116
+ let control: ReturnType<typeof useDialogControl> | undefined;
117
+ const onSave = jest.fn();
118
+ const { getByTestId, queryByText, UNSAFE_getByType } = renderWithTheme(
119
+ <Harness onControl={(c) => { control = c; }}>
120
+ {(c) => (
121
+ <Dialog
122
+ control={c}
123
+ title="Save changes?"
124
+ actions={[{
125
+ label: 'Save',
126
+ loading: true,
127
+ onPress: onSave,
128
+ shouldCloseOnPress: false,
129
+ testID: 'save-action',
130
+ }]}
131
+ />
132
+ )}
133
+ </Harness>,
134
+ );
135
+ act(() => { control?.open(); });
136
+
137
+ const action = getByTestId('save-action');
138
+ expect(action.props.disabled).toBe(true);
139
+ expect(action.props.accessibilityState).toEqual({ disabled: true, busy: true });
140
+ expect(queryByText('Save')).toBeNull();
141
+ expect(UNSAFE_getByType(ActivityIndicator)).toBeTruthy();
142
+
143
+ fireEvent.press(action);
144
+ expect(onSave).not.toHaveBeenCalled();
145
+ });
114
146
  });
115
147
 
116
148
  describe('alert() helper', () => {
@@ -1,5 +1,6 @@
1
1
  import React, { useCallback } from 'react';
2
2
  import {
3
+ ActivityIndicator,
3
4
  Text,
4
5
  TouchableOpacity,
5
6
  View,
@@ -91,11 +92,13 @@ function ActionButton({ action }: { action: DialogAction }) {
91
92
  const theme = useTheme();
92
93
  const color: DialogActionColor = action.color ?? 'default';
93
94
  const shouldCloseOnPress = action.shouldCloseOnPress ?? true;
95
+ const inactive = action.disabled === true || action.loading === true;
94
96
 
95
97
  const { background, foreground } = getActionPalette(color, theme.colors);
96
98
 
97
99
  const handlePress = useCallback(
98
100
  (e: GestureResponderEvent) => {
101
+ if (inactive) return;
99
102
  const onPress = action.onPress;
100
103
  if (color === 'cancel') {
101
104
  // Cancel always dismisses; consumer's onPress (rare) runs after.
@@ -108,7 +111,7 @@ function ActionButton({ action }: { action: DialogAction }) {
108
111
  onPress?.(e);
109
112
  }
110
113
  },
111
- [action.onPress, close, color, shouldCloseOnPress],
114
+ [action.onPress, close, color, inactive, shouldCloseOnPress],
112
115
  );
113
116
 
114
117
  return (
@@ -118,18 +121,25 @@ function ActionButton({ action }: { action: DialogAction }) {
118
121
  alignItems: 'center',
119
122
  justifyContent: 'center',
120
123
  backgroundColor: background,
121
- opacity: action.disabled ? 0.5 : 1,
124
+ opacity: inactive ? 0.5 : 1,
122
125
  paddingVertical: 12,
123
126
  paddingHorizontal: 24,
124
127
  }}
125
128
  onPress={handlePress}
126
- disabled={action.disabled}
129
+ disabled={inactive}
130
+ accessibilityState={{ disabled: inactive, busy: action.loading === true }}
131
+ aria-disabled={inactive}
132
+ aria-busy={action.loading || undefined}
127
133
  activeOpacity={0.7}
128
134
  testID={action.testID}
129
135
  >
130
- <Text style={{ fontSize: 16, fontWeight: '500', color: foreground }}>
131
- {action.label}
132
- </Text>
136
+ {action.loading ? (
137
+ <ActivityIndicator color={foreground} size="small" />
138
+ ) : (
139
+ <Text style={{ fontSize: 16, fontWeight: '500', color: foreground }}>
140
+ {action.label}
141
+ </Text>
142
+ )}
133
143
  </TouchableOpacity>
134
144
  );
135
145
  }
@@ -185,6 +185,11 @@ export type DialogAction = {
185
185
  onPress?: (e: GestureResponderEvent) => void;
186
186
  color?: DialogActionColor;
187
187
  disabled?: boolean;
188
+ /**
189
+ * Replaces the label with a progress indicator and disables interaction while
190
+ * an async action is in flight.
191
+ */
192
+ loading?: boolean;
188
193
  /**
189
194
  * Defaults to `true`. When `true`, the dialog closes (and runs the close
190
195
  * animation) before `onPress` is invoked, which gives the surrounding