@planningcenter/chat-react-native 4.0.1-rc.0 → 4.0.1-rc.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/build/components/primitive/form_sheet.d.ts +2 -1
- package/build/components/primitive/form_sheet.d.ts.map +1 -1
- package/build/components/primitive/form_sheet.js +68 -53
- package/build/components/primitive/form_sheet.js.map +1 -1
- package/build/screens/conversation_select_type_screen.d.ts.map +1 -1
- package/build/screens/conversation_select_type_screen.js +82 -98
- package/build/screens/conversation_select_type_screen.js.map +1 -1
- package/package.json +2 -2
- package/src/components/primitive/form_sheet.tsx +10 -3
- package/src/screens/conversation_select_type_screen.tsx +3 -9
|
@@ -34,8 +34,9 @@ interface FormSheetRootProps {
|
|
|
34
34
|
style?: StyleProp<ViewStyle>;
|
|
35
35
|
contentStyle?: StyleProp<ViewStyle>;
|
|
36
36
|
showAndroidSheetGrabber?: boolean;
|
|
37
|
+
fitToContents?: boolean;
|
|
37
38
|
}
|
|
38
|
-
export declare function FormSheetRoot({ children, style, contentStyle, showAndroidSheetGrabber, }: FormSheetRootProps): import("react/jsx-runtime").JSX.Element;
|
|
39
|
+
export declare function FormSheetRoot({ children, style, contentStyle, showAndroidSheetGrabber, fitToContents, }: FormSheetRootProps): import("react/jsx-runtime").JSX.Element;
|
|
39
40
|
export declare namespace FormSheetRoot {
|
|
40
41
|
var displayName: string;
|
|
41
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form_sheet.d.ts","sourceRoot":"","sources":["../../../src/components/primitive/form_sheet.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAA;AAC7E,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACxC,OAAO,EAKL,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAA;AAIrB,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC9D,OAAO,EAAyB,UAAU,EAAoB,MAAM,YAAY,CAAA;AAMhF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,yBAAyB,GACnC,gDAAwD,4BAAiC,WACtF,4BAQF,CAAA;AAYJ,KAAK,mBAAmB,GAAG;IACzB,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAA;IAClC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAA;IACtC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAA;IACtC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAA;IAChD,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAAC,CAAA;IACpD,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,8BAA8B,CAAC,CAAA;IAC1D,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CAAC,CAAA;CACnD,CAAA;wBAE2B,mBAAmB;AAA/C,wBAA+C;AAC/C,YAAY,EACV,oBAAoB,EACpB,2BAA2B,EAC3B,0BAA0B,EAC1B,oBAAoB,EACpB,8BAA8B,EAC9B,yBAAyB,EACzB,kBAAkB,GACnB,CAAA;AAMD,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;IAC5B,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;IACnC,uBAAuB,CAAC,EAAE,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"form_sheet.d.ts","sourceRoot":"","sources":["../../../src/components/primitive/form_sheet.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAA;AAC7E,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACxC,OAAO,EAKL,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAA;AAIrB,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC9D,OAAO,EAAyB,UAAU,EAAoB,MAAM,YAAY,CAAA;AAMhF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,yBAAyB,GACnC,gDAAwD,4BAAiC,WACtF,4BAQF,CAAA;AAYJ,KAAK,mBAAmB,GAAG;IACzB,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAA;IAClC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAA;IACtC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAA;IACtC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAA;IAChD,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAAC,CAAA;IACpD,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,8BAA8B,CAAC,CAAA;IAC1D,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CAAC,CAAA;CACnD,CAAA;wBAE2B,mBAAmB;AAA/C,wBAA+C;AAC/C,YAAY,EACV,oBAAoB,EACpB,2BAA2B,EAC3B,0BAA0B,EAC1B,oBAAoB,EACpB,8BAA8B,EAC9B,yBAAyB,EACzB,kBAAkB,GACnB,CAAA;AAMD,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;IAC5B,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;IACnC,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAED,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,uBAA8B,EAC9B,aAAqB,GACtB,EAAE,kBAAkB,2CASpB;yBAfe,aAAa;;;AAoC7B,UAAU,oBAAoB;IAC5B,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;CAC7B;AAkBD,UAAU,yBAAyB;IACjC,QAAQ,EAAE,SAAS,CAAA;CACpB;AAsBD,UAAU,2BAA2B;IACnC,QAAQ,EAAE,SAAS,CAAA;CACpB;AAiBD,UAAU,8BACR,SAAQ,IAAI,CAAC,eAAe,EAAE,uBAAuB,GAAG,aAAa,CAAC;IACtE,QAAQ,EAAE,MAAM,CAAA;CACjB;AAoBD,UAAU,0BACR,SAAQ,IAAI,CAAC,WAAW,EAAE,uBAAuB,GAAG,aAAa,CAAC;CAAG;AAmBvE,QAAA,MAAM,6BAA6B;;;CAGzB,CAAA;AAEV,KAAK,8BAA8B,GACjC,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,OAAO,6BAA6B,CAAC,CAAA;AAEpF,UAAU,oBAAoB;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,UAAU,CAAA;IACrB,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC,UAAU,CAAC,EAAE,8BAA8B,CAAA;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB"}
|
|
@@ -54,68 +54,80 @@ export default FormSheet;
|
|
|
54
54
|
// ====================================
|
|
55
55
|
|
|
56
56
|
export function FormSheetRoot(t0) {
|
|
57
|
-
const $ = _c(
|
|
57
|
+
const $ = _c(17);
|
|
58
58
|
const {
|
|
59
59
|
children,
|
|
60
60
|
style,
|
|
61
61
|
contentStyle,
|
|
62
|
-
showAndroidSheetGrabber: t1
|
|
62
|
+
showAndroidSheetGrabber: t1,
|
|
63
|
+
fitToContents: t2
|
|
63
64
|
} = t0;
|
|
64
65
|
const showAndroidSheetGrabber = t1 === undefined ? true : t1;
|
|
65
|
-
const
|
|
66
|
-
let t2;
|
|
67
|
-
if ($[0] !== style || $[1] !== styles.container) {
|
|
68
|
-
t2 = [styles.container, style];
|
|
69
|
-
$[0] = style;
|
|
70
|
-
$[1] = styles.container;
|
|
71
|
-
$[2] = t2;
|
|
72
|
-
} else {
|
|
73
|
-
t2 = $[2];
|
|
74
|
-
}
|
|
66
|
+
const fitToContents = t2 === undefined ? false : t2;
|
|
75
67
|
let t3;
|
|
76
|
-
if ($[
|
|
77
|
-
t3 =
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
$[
|
|
68
|
+
if ($[0] !== fitToContents) {
|
|
69
|
+
t3 = {
|
|
70
|
+
fitToContents
|
|
71
|
+
};
|
|
72
|
+
$[0] = fitToContents;
|
|
73
|
+
$[1] = t3;
|
|
81
74
|
} else {
|
|
82
|
-
t3 = $[
|
|
75
|
+
t3 = $[1];
|
|
83
76
|
}
|
|
77
|
+
const styles = useStyles(t3);
|
|
84
78
|
let t4;
|
|
85
|
-
if ($[
|
|
86
|
-
t4 =
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
$[6] = children;
|
|
91
|
-
$[7] = t3;
|
|
92
|
-
$[8] = t4;
|
|
79
|
+
if ($[2] !== style || $[3] !== styles.container) {
|
|
80
|
+
t4 = [styles.container, style];
|
|
81
|
+
$[2] = style;
|
|
82
|
+
$[3] = styles.container;
|
|
83
|
+
$[4] = t4;
|
|
93
84
|
} else {
|
|
94
|
-
t4 = $[
|
|
85
|
+
t4 = $[4];
|
|
95
86
|
}
|
|
96
87
|
let t5;
|
|
97
|
-
if ($[
|
|
98
|
-
t5 =
|
|
99
|
-
$[
|
|
100
|
-
$[
|
|
88
|
+
if ($[5] !== contentStyle || $[6] !== styles.content) {
|
|
89
|
+
t5 = [styles.content, contentStyle];
|
|
90
|
+
$[5] = contentStyle;
|
|
91
|
+
$[6] = styles.content;
|
|
92
|
+
$[7] = t5;
|
|
101
93
|
} else {
|
|
102
|
-
t5 = $[
|
|
94
|
+
t5 = $[7];
|
|
103
95
|
}
|
|
104
96
|
let t6;
|
|
105
|
-
if ($[
|
|
106
|
-
t6 = /*#__PURE__*/
|
|
107
|
-
style:
|
|
97
|
+
if ($[8] !== children || $[9] !== t5) {
|
|
98
|
+
t6 = /*#__PURE__*/_jsx(View, {
|
|
99
|
+
style: t5,
|
|
100
|
+
children: children
|
|
101
|
+
});
|
|
102
|
+
$[8] = children;
|
|
103
|
+
$[9] = t5;
|
|
104
|
+
$[10] = t6;
|
|
105
|
+
} else {
|
|
106
|
+
t6 = $[10];
|
|
107
|
+
}
|
|
108
|
+
let t7;
|
|
109
|
+
if ($[11] !== showAndroidSheetGrabber) {
|
|
110
|
+
t7 = showAndroidSheetGrabber && /*#__PURE__*/_jsx(AndroidSheetGrabber, {});
|
|
111
|
+
$[11] = showAndroidSheetGrabber;
|
|
112
|
+
$[12] = t7;
|
|
113
|
+
} else {
|
|
114
|
+
t7 = $[12];
|
|
115
|
+
}
|
|
116
|
+
let t8;
|
|
117
|
+
if ($[13] !== t4 || $[14] !== t6 || $[15] !== t7) {
|
|
118
|
+
t8 = /*#__PURE__*/_jsxs(View, {
|
|
119
|
+
style: t4,
|
|
108
120
|
collapsable: false,
|
|
109
|
-
children: [
|
|
121
|
+
children: [t6, t7]
|
|
110
122
|
});
|
|
111
|
-
$[
|
|
112
|
-
$[12] = t4;
|
|
113
|
-
$[13] = t5;
|
|
123
|
+
$[13] = t4;
|
|
114
124
|
$[14] = t6;
|
|
125
|
+
$[15] = t7;
|
|
126
|
+
$[16] = t8;
|
|
115
127
|
} else {
|
|
116
|
-
|
|
128
|
+
t8 = $[16];
|
|
117
129
|
}
|
|
118
|
-
return
|
|
130
|
+
return t8;
|
|
119
131
|
}
|
|
120
132
|
FormSheetRoot.displayName = 'FormSheet.Root';
|
|
121
133
|
|
|
@@ -421,7 +433,7 @@ FormSheetAction.displayName = 'FormSheet.Action';
|
|
|
421
433
|
// ==================================
|
|
422
434
|
|
|
423
435
|
const useStyles = t0 => {
|
|
424
|
-
const $ = _c(
|
|
436
|
+
const $ = _c(17);
|
|
425
437
|
let t1;
|
|
426
438
|
if ($[0] !== t0) {
|
|
427
439
|
t1 = t0 === undefined ? {} : t0;
|
|
@@ -432,10 +444,12 @@ const useStyles = t0 => {
|
|
|
432
444
|
}
|
|
433
445
|
const {
|
|
434
446
|
appearance: t2,
|
|
435
|
-
disabled: t3
|
|
447
|
+
disabled: t3,
|
|
448
|
+
fitToContents: t4
|
|
436
449
|
} = t1;
|
|
437
450
|
const appearance = t2 === undefined ? "neutral" : t2;
|
|
438
451
|
const disabled = t3 === undefined ? false : t3;
|
|
452
|
+
const fitToContents = t4 === undefined ? false : t4;
|
|
439
453
|
const {
|
|
440
454
|
colors
|
|
441
455
|
} = useTheme();
|
|
@@ -447,10 +461,10 @@ const useStyles = t0 => {
|
|
|
447
461
|
top
|
|
448
462
|
} = useSafeAreaInsets();
|
|
449
463
|
const headerHeight = useHeaderHeight();
|
|
450
|
-
let
|
|
451
|
-
if ($[2] !== appearance || $[3] !== bottom || $[4] !== colors.borderColorDefaultBase || $[5] !== colors.fillColorNeutral040 || $[6] !== colors.fillColorNeutral100Inverted || $[7] !== colors.fillColorStatusErrorMedium || $[8] !== colors.iconColorDefaultPrimary || $[9] !== colors.textColorDefaultDisabled || $[10] !== colors.textColorDefaultPrimary || $[11] !== disabled || $[12] !==
|
|
464
|
+
let t5;
|
|
465
|
+
if ($[2] !== appearance || $[3] !== bottom || $[4] !== colors.borderColorDefaultBase || $[5] !== colors.fillColorNeutral040 || $[6] !== colors.fillColorNeutral100Inverted || $[7] !== colors.fillColorStatusErrorMedium || $[8] !== colors.iconColorDefaultPrimary || $[9] !== colors.textColorDefaultDisabled || $[10] !== colors.textColorDefaultPrimary || $[11] !== disabled || $[12] !== fitToContents || $[13] !== headerHeight || $[14] !== height || $[15] !== top) {
|
|
452
466
|
const containerHeight = Platform.select({
|
|
453
|
-
ios: height - top - headerHeight,
|
|
467
|
+
ios: fitToContents ? undefined : height - top - headerHeight,
|
|
454
468
|
default: null
|
|
455
469
|
});
|
|
456
470
|
const appearanceColorsMap = {
|
|
@@ -463,7 +477,7 @@ const useStyles = t0 => {
|
|
|
463
477
|
textColor: colors.fillColorStatusErrorMedium
|
|
464
478
|
}
|
|
465
479
|
};
|
|
466
|
-
|
|
480
|
+
t5 = StyleSheet.create({
|
|
467
481
|
container: {
|
|
468
482
|
justifyContent: "flex-start",
|
|
469
483
|
paddingBottom: bottom,
|
|
@@ -549,13 +563,14 @@ const useStyles = t0 => {
|
|
|
549
563
|
$[9] = colors.textColorDefaultDisabled;
|
|
550
564
|
$[10] = colors.textColorDefaultPrimary;
|
|
551
565
|
$[11] = disabled;
|
|
552
|
-
$[12] =
|
|
553
|
-
$[13] =
|
|
554
|
-
$[14] =
|
|
555
|
-
$[15] =
|
|
566
|
+
$[12] = fitToContents;
|
|
567
|
+
$[13] = headerHeight;
|
|
568
|
+
$[14] = height;
|
|
569
|
+
$[15] = top;
|
|
570
|
+
$[16] = t5;
|
|
556
571
|
} else {
|
|
557
|
-
|
|
572
|
+
t5 = $[16];
|
|
558
573
|
}
|
|
559
|
-
return
|
|
574
|
+
return t5;
|
|
560
575
|
};
|
|
561
576
|
//# sourceMappingURL=form_sheet.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form_sheet.js","names":["PlatformPressable","useHeaderHeight","React","Platform","StyleSheet","View","useWindowDimensions","useSafeAreaInsets","useTheme","isLiquidGlassEnabled","MAX_FONT_SIZE_MULTIPLIER_LANDMARK","Button","Heading","Icon","Text","TextButton","jsx","_jsx","jsxs","_jsxs","getFormSheetScreenOptions","headerTitle","sheetAllowedDetents","rest","presentation","headerShown","sheetCornerRadius","undefined","sheetGrabberVisible","FormSheet","Root","FormSheetRoot","Action","FormSheetAction","Header","FormSheetHeader","HeaderTitle","FormSheetHeaderTitle","HeaderActions","FormSheetHeaderActions","HeaderTextButton","FormSheetHeaderTextButton","HeaderButton","FormSheetHeaderButton","t0","$","_c","children","style","contentStyle","showAndroidSheetGrabber","t1","styles","useStyles","t2","container","t3","content","t4","t5","AndroidSheetGrabber","t6","collapsable","displayName","androidSheetGrabber","select","android","ios","header","headerContent","variant","headerActions","props","accessibilityShowsLargeContentViewer","accessibilityLargeContentTitle","title","FORM_SHEET_ACTION_APPEARANCES","neutral","danger","iconName","onPress","accessibilityLabel","accessibilityHint","accessibilityRole","appearance","disabled","disabledReason","testID","actionIcon","size","accessibilityElementsHidden","t7","actionTitle","t8","actionDisabledReason","t9","actionTextBlock","t10","actionPressable","colors","height","bottom","top","headerHeight","borderColorDefaultBase","fillColorNeutral040","fillColorNeutral100Inverted","fillColorStatusErrorMedium","iconColorDefaultPrimary","textColorDefaultDisabled","textColorDefaultPrimary","containerHeight","default","appearanceColorsMap","iconColor","textColor","create","justifyContent","paddingBottom","width","backgroundColor","flexGrow","maxHeight","position","borderRadius","alignSelf","paddingHorizontal","paddingTop","gap","borderBottomWidth","borderBottomColor","flexDirection","alignItems","textAlign","flex","paddingVertical","color","fontSize"],"sources":["../../../src/components/primitive/form_sheet.tsx"],"sourcesContent":["import { PlatformPressable, useHeaderHeight } from '@react-navigation/elements'\nimport { NativeStackNavigationOptions } from '@react-navigation/native-stack'\nimport React, { ReactNode } from 'react'\nimport {\n Platform,\n StyleSheet,\n View,\n useWindowDimensions,\n type AccessibilityRole,\n type StyleProp,\n type ViewStyle,\n} from 'react-native'\nimport { useSafeAreaInsets } from 'react-native-safe-area-context'\nimport { useTheme } from '../../hooks'\nimport { isLiquidGlassEnabled, MAX_FONT_SIZE_MULTIPLIER_LANDMARK } from '../../utils'\nimport type { ButtonProps, TextButtonProps } from '../display'\nimport { Button, Heading, Icon, IconString, Text, TextButton } from '../display'\n\n// =================================\n// ====== Exports ==================\n// =================================\n\n/**\n * Screen options for the formsheet's NativeStackNavigation route\n *\n * Returns a factory rather than an object because callers assign it at module\n * scope, which runs before ChatProvider reports the host's liquid glass\n * capability. React Navigation calls the factory per render, so the sheet\n * corner radius is resolved once that capability is known.\n *\n * @param {string} options.headerTitle - Doesn't show in UI but good to have for semantic reasons.\n * @param {number[]} [options.sheetAllowedDetents] - Controls the height increments the sheet grows to. To prevent bugs in Android, do not specify more then two values and use [0.94] instead of [1] to go full screen.\n * @param {NativeStackNavigationOptions} [options.rest] - Adds or overrides any valid NativeStackNavigationOptions\n * @returns {() => NativeStackNavigationOptions} Factory producing merged NativeStackNavigationOptions\n */\nexport const getFormSheetScreenOptions =\n ({ headerTitle, sheetAllowedDetents = [0.25], ...rest }: NativeStackNavigationOptions = {}) =>\n (): NativeStackNavigationOptions => ({\n presentation: 'formSheet',\n headerShown: false,\n sheetAllowedDetents,\n sheetCornerRadius: isLiquidGlassEnabled() ? undefined : 16,\n sheetGrabberVisible: true,\n headerTitle,\n ...rest,\n })\n\nconst FormSheet = {\n Root: FormSheetRoot,\n Action: FormSheetAction,\n Header: FormSheetHeader,\n HeaderTitle: FormSheetHeaderTitle,\n HeaderActions: FormSheetHeaderActions,\n HeaderTextButton: FormSheetHeaderTextButton,\n HeaderButton: FormSheetHeaderButton,\n} as const\n\ntype FormSheetComponents = {\n Root: React.FC<FormSheetRootProps>\n Action: React.FC<FormSheetActionProps>\n Header: React.FC<FormSheetHeaderProps>\n HeaderTitle: React.FC<FormSheetHeaderTitleProps>\n HeaderActions: React.FC<FormSheetHeaderActionsProps>\n HeaderTextButton: React.FC<FormSheetHeaderTextButtonProps>\n HeaderButton: React.FC<FormSheetHeaderButtonProps>\n}\n\nexport default FormSheet as FormSheetComponents\nexport type {\n FormSheetActionProps,\n FormSheetHeaderActionsProps,\n FormSheetHeaderButtonProps,\n FormSheetHeaderProps,\n FormSheetHeaderTextButtonProps,\n FormSheetHeaderTitleProps,\n FormSheetRootProps,\n}\n\n// ====================================\n// ====== ActionsFormSheetRoot ========\n// ====================================\n\ninterface FormSheetRootProps {\n children: ReactNode\n style?: StyleProp<ViewStyle>\n contentStyle?: StyleProp<ViewStyle>\n showAndroidSheetGrabber?: boolean\n}\n\nexport function FormSheetRoot({\n children,\n style,\n contentStyle,\n showAndroidSheetGrabber = true,\n}: FormSheetRootProps) {\n const styles = useStyles()\n\n return (\n <View style={[styles.container, style]} collapsable={false}>\n <View style={[styles.content, contentStyle]}>{children}</View>\n {showAndroidSheetGrabber && <AndroidSheetGrabber />}\n </View>\n )\n}\n\nFormSheetRoot.displayName = 'FormSheet.Root'\n\n// ====================================\n// ====== AndroidSheetGrabber =========\n// ====================================\n\nfunction AndroidSheetGrabber() {\n const styles = useStyles()\n\n return Platform.select({\n android: <View style={styles.androidSheetGrabber} />,\n ios: null,\n })\n}\n\n// ====================================\n// ====== FormSheetHeader =============\n// ====================================\n\ninterface FormSheetHeaderProps {\n children: ReactNode\n style?: StyleProp<ViewStyle>\n}\n\nfunction FormSheetHeader({ children, style }: FormSheetHeaderProps) {\n const styles = useStyles()\n\n return (\n <View style={[styles.header, style]}>\n <View style={styles.headerContent}>{children}</View>\n </View>\n )\n}\n\nFormSheetHeader.displayName = 'FormSheet.Header'\n\n// ====================================\n// ====== FormSheetHeaderTitle ========\n// ====================================\n\ninterface FormSheetHeaderTitleProps {\n children: ReactNode\n}\n\nfunction FormSheetHeaderTitle({ children }: FormSheetHeaderTitleProps) {\n const styles = useStyles()\n\n return (\n <Heading\n variant=\"h3\"\n style={styles.headerTitle}\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n >\n {children}\n </Heading>\n )\n}\n\nFormSheetHeaderTitle.displayName = 'FormSheet.HeaderTitle'\n\n// ====================================\n// ====== FormSheetHeaderActions ======\n// ====================================\n\ninterface FormSheetHeaderActionsProps {\n children: ReactNode\n}\n\nfunction FormSheetHeaderActions({ children }: FormSheetHeaderActionsProps) {\n const styles = useStyles()\n\n return <View style={styles.headerActions}>{children}</View>\n}\n\nFormSheetHeaderActions.displayName = 'FormSheet.HeaderActions'\n\n// ===========================================\n// ====== FormSheetHeaderTextButton ==========\n// ===========================================\n\n// We are omitting `onLongPress` because we are instead supporting `accessibilityShowsLargeContentViewer`.\n// This is triggered by an `onLongPress` event when an iOS device is in Apple's accessible font scale range.\n// Triggering this prop will display an almost full screen iOS a11y button.\ninterface FormSheetHeaderTextButtonProps\n extends Omit<TextButtonProps, 'maxFontSizeMultiplier' | 'onLongPress'> {\n children: string\n}\n\nfunction FormSheetHeaderTextButton(props: FormSheetHeaderTextButtonProps) {\n return (\n <TextButton\n {...props}\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n accessibilityShowsLargeContentViewer\n accessibilityLargeContentTitle={props.children}\n />\n )\n}\n\nFormSheetHeaderTextButton.displayName = 'FormSheet.HeaderTextButton'\n\n// =========================================\n// ====== FormSheetHeaderButton ============\n// =========================================\n\n// Same `onLongPress`note as `FormSheetHeaderTextButtonProps`\ninterface FormSheetHeaderButtonProps\n extends Omit<ButtonProps, 'maxFontSizeMultiplier' | 'onLongPress'> {}\n\nfunction FormSheetHeaderButton(props: FormSheetHeaderButtonProps) {\n return (\n <Button\n {...props}\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n accessibilityShowsLargeContentViewer\n accessibilityLargeContentTitle={props.title}\n />\n )\n}\n\nFormSheetHeaderButton.displayName = 'FormSheet.HeaderButton'\n\n// ====================================\n// ====== ActionsFormSheetAction ======\n// ====================================\n\nconst FORM_SHEET_ACTION_APPEARANCES = {\n neutral: 'neutral',\n danger: 'danger',\n} as const\n\ntype FormSheetActionAppearanceUnion =\n (typeof FORM_SHEET_ACTION_APPEARANCES)[keyof typeof FORM_SHEET_ACTION_APPEARANCES]\n\ninterface FormSheetActionProps {\n title: string\n iconName?: IconString\n onPress: () => void\n accessibilityLabel?: string\n accessibilityHint?: string\n accessibilityRole?: AccessibilityRole\n appearance?: FormSheetActionAppearanceUnion\n disabled?: boolean\n disabledReason?: string\n testID?: string\n}\n\nfunction FormSheetAction({\n title,\n iconName,\n onPress,\n accessibilityLabel,\n accessibilityHint,\n accessibilityRole = 'button',\n appearance = 'neutral',\n disabled = false,\n disabledReason,\n testID,\n}: FormSheetActionProps) {\n const styles = useStyles({ appearance, disabled })\n\n return (\n <PlatformPressable\n testID={testID}\n onPress={onPress}\n accessibilityLabel={accessibilityLabel}\n accessibilityHint={\n accessibilityHint ?? (disabled && disabledReason ? disabledReason : undefined)\n }\n accessibilityRole={accessibilityRole}\n style={styles.actionPressable}\n disabled={disabled}\n >\n {iconName && (\n <Icon name={iconName} size={16} accessibilityElementsHidden style={styles.actionIcon} />\n )}\n <View style={styles.actionTextBlock}>\n <Text style={styles.actionTitle}>{title}</Text>\n {disabled && disabledReason && (\n <Text style={styles.actionDisabledReason}>{disabledReason}</Text>\n )}\n </View>\n </PlatformPressable>\n )\n}\n\nFormSheetAction.displayName = 'FormSheet.Action'\n\n// ==================================\n// ====== Styles ====================\n// ==================================\n\ninterface Styles {\n appearance?: FormSheetActionAppearanceUnion\n disabled?: boolean\n}\n\nconst useStyles = ({ appearance = 'neutral', disabled = false }: Styles = {}) => {\n const { colors } = useTheme()\n const { height } = useWindowDimensions()\n const { bottom, top } = useSafeAreaInsets()\n const headerHeight = useHeaderHeight()\n\n const containerHeight = Platform.select({\n ios: height - top - headerHeight,\n default: null,\n })\n\n const appearanceColorsMap = {\n neutral: {\n iconColor: colors.iconColorDefaultPrimary,\n textColor: colors.textColorDefaultPrimary,\n },\n danger: {\n iconColor: colors.fillColorStatusErrorMedium,\n textColor: colors.fillColorStatusErrorMedium,\n },\n }\n\n return StyleSheet.create({\n container: {\n justifyContent: 'flex-start',\n paddingBottom: bottom,\n width: '100%',\n backgroundColor: colors.fillColorNeutral100Inverted,\n height: containerHeight,\n ...Platform.select({\n ios: {\n flexGrow: 1, // Ensures the FormSheet children respond to the formsheet height changing on iOS\n },\n android: {\n maxHeight: '100%', // Ensures lists to scroll on Android\n },\n }),\n },\n androidSheetGrabber: {\n position: 'absolute',\n top: 5,\n width: 34,\n height: 5,\n backgroundColor: colors.fillColorNeutral040,\n borderRadius: 100,\n alignSelf: 'center',\n },\n content: {\n ...Platform.select({\n android: {\n maxHeight: '100%', // Ensures content above a list (e.g. FormSheet.Header) don't subtract from the FormSheet's height\n },\n }),\n },\n header: {\n paddingHorizontal: 16,\n paddingTop: 20,\n paddingBottom: 16,\n backgroundColor: colors.fillColorNeutral100Inverted,\n gap: 16,\n borderBottomWidth: 1,\n borderBottomColor: colors.borderColorDefaultBase,\n },\n headerContent: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n },\n headerTitle: {\n textAlign: 'left',\n flex: 1,\n },\n headerActions: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 16,\n },\n actionPressable: {\n flexDirection: 'row',\n alignItems: 'center',\n paddingVertical: 12,\n paddingHorizontal: 16,\n gap: 8,\n },\n actionIcon: {\n color: disabled ? colors.textColorDefaultDisabled : appearanceColorsMap[appearance].iconColor,\n },\n actionTextBlock: {\n flex: 1,\n },\n actionTitle: {\n color: disabled ? colors.textColorDefaultDisabled : appearanceColorsMap[appearance].textColor,\n },\n actionDisabledReason: {\n color: colors.textColorDefaultDisabled,\n fontSize: 12,\n },\n })\n}\n"],"mappings":";AAAA,SAASA,iBAAiB,EAAEC,eAAe,QAAQ,4BAA4B;AAE/E,OAAOC,KAAK,MAAqB,OAAO;AACxC,SACEC,QAAQ,EACRC,UAAU,EACVC,IAAI,EACJC,mBAAmB,QAId,cAAc;AACrB,SAASC,iBAAiB,QAAQ,gCAAgC;AAClE,SAASC,QAAQ,QAAQ,aAAa;AACtC,SAASC,oBAAoB,EAAEC,iCAAiC,QAAQ,aAAa;AAErF,SAASC,MAAM,EAAEC,OAAO,EAAEC,IAAI,EAAcC,IAAI,EAAEC,UAAU,QAAQ,YAAY;;AAEhF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAZA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAaA,OAAO,MAAMC,yBAAyB,GACpCA,CAAC;EAAEC,WAAW;EAAEC,mBAAmB,GAAG,CAAC,IAAI,CAAC;EAAE,GAAGC;AAAmC,CAAC,GAAG,CAAC,CAAC,KAC1F,OAAqC;EACnCC,YAAY,EAAE,WAAW;EACzBC,WAAW,EAAE,KAAK;EAClBH,mBAAmB;EACnBI,iBAAiB,EAAEjB,oBAAoB,CAAC,CAAC,GAAGkB,SAAS,GAAG,EAAE;EAC1DC,mBAAmB,EAAE,IAAI;EACzBP,WAAW;EACX,GAAGE;AACL,CAAC,CAAC;AAEJ,MAAMM,SAAS,GAAG;EAChBC,IAAI,EAAEC,aAAa;EACnBC,MAAM,EAAEC,eAAe;EACvBC,MAAM,EAAEC,eAAe;EACvBC,WAAW,EAAEC,oBAAoB;EACjCC,aAAa,EAAEC,sBAAsB;EACrCC,gBAAgB,EAAEC,yBAAyB;EAC3CC,YAAY,EAAEC;AAChB,CAAU;AAYV,eAAed,SAAS;;AAWxB;AACA;AACA;;AASA,OAAO,SAAAE,cAAAa,EAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAAuB;IAAAC,QAAA;IAAAC,KAAA;IAAAC,YAAA;IAAAC,uBAAA,EAAAC;EAAA,IAAAP,EAKT;EADnB,MAAAM,uBAAA,GAAAC,EAA8B,KAA9BxB,SAA8B,GAA9B,IAA8B,GAA9BwB,EAA8B;EAE9B,MAAAC,MAAA,GAAeC,SAAS,CAAC,CAAC;EAAA,IAAAC,EAAA;EAAA,IAAAT,CAAA,QAAAG,KAAA,IAAAH,CAAA,QAAAO,MAAA,CAAAG,SAAA;IAGXD,EAAA,IAACF,MAAM,CAAAG,SAAU,EAAEP,KAAK,CAAC;IAAAH,CAAA,MAAAG,KAAA;IAAAH,CAAA,MAAAO,MAAA,CAAAG,SAAA;IAAAV,CAAA,MAAAS,EAAA;EAAA;IAAAA,EAAA,GAAAT,CAAA;EAAA;EAAA,IAAAW,EAAA;EAAA,IAAAX,CAAA,QAAAI,YAAA,IAAAJ,CAAA,QAAAO,MAAA,CAAAK,OAAA;IACvBD,EAAA,IAACJ,MAAM,CAAAK,OAAQ,EAAER,YAAY,CAAC;IAAAJ,CAAA,MAAAI,YAAA;IAAAJ,CAAA,MAAAO,MAAA,CAAAK,OAAA;IAAAZ,CAAA,MAAAW,EAAA;EAAA;IAAAA,EAAA,GAAAX,CAAA;EAAA;EAAA,IAAAa,EAAA;EAAA,IAAAb,CAAA,QAAAE,QAAA,IAAAF,CAAA,QAAAW,EAAA;IAA3CE,EAAA,gBAAAzC,IAAA,CAACZ,IAAI;MAAQ2C,KAA8B,EAA9BQ,EAA8B;MAAAT,QAAA,EAAGA;IAAQ,CAAO,CAAC;IAAAF,CAAA,MAAAE,QAAA;IAAAF,CAAA,MAAAW,EAAA;IAAAX,CAAA,MAAAa,EAAA;EAAA;IAAAA,EAAA,GAAAb,CAAA;EAAA;EAAA,IAAAc,EAAA;EAAA,IAAAd,CAAA,QAAAK,uBAAA;IAC7DS,EAAA,GAAAT,uBAAkD,iBAAlDjC,IAAA,CAA4B2C,mBAAmB,IAAE,CAAC;IAAAf,CAAA,MAAAK,uBAAA;IAAAL,CAAA,OAAAc,EAAA;EAAA;IAAAA,EAAA,GAAAd,CAAA;EAAA;EAAA,IAAAgB,EAAA;EAAA,IAAAhB,CAAA,SAAAS,EAAA,IAAAT,CAAA,SAAAa,EAAA,IAAAb,CAAA,SAAAc,EAAA;IAFrDE,EAAA,gBAAA1C,KAAA,CAACd,IAAI;MAAQ2C,KAAyB,EAAzBM,EAAyB;MAAeQ,WAAK,EAAL,KAAK;MAAAf,QAAA,GACxDW,EAA8D,EAC7DC,EAAkD;IAAA,CAC/C,CAAC;IAAAd,CAAA,OAAAS,EAAA;IAAAT,CAAA,OAAAa,EAAA;IAAAb,CAAA,OAAAc,EAAA;IAAAd,CAAA,OAAAgB,EAAA;EAAA;IAAAA,EAAA,GAAAhB,CAAA;EAAA;EAAA,OAHPgB,EAGO;AAAA;AAIX9B,aAAa,CAACgC,WAAW,GAAG,gBAAgB;;AAE5C;AACA;AACA;;AAEA,SAAAH,oBAAA;EAAA,MAAAf,CAAA,GAAAC,EAAA;EACE,MAAAM,MAAA,GAAeC,SAAS,CAAC,CAAC;EAAA,IAAAT,EAAA;EAAA,IAAAC,CAAA,QAAAO,MAAA,CAAAY,mBAAA;IAEnBpB,EAAA,GAAAzC,QAAQ,CAAA8D,MAAO,CAAC;MAAAC,OAAA,eACZjD,IAAA,CAACZ,IAAI;QAAQ2C,KAA0B,EAA1BI,MAAM,CAAAY;MAAoB,CAAG,CAAC;MAAAG,GAAA,EAC/C;IACP,CAAC,CAAC;IAAAtB,CAAA,MAAAO,MAAA,CAAAY,mBAAA;IAAAnB,CAAA,MAAAD,EAAA;EAAA;IAAAA,EAAA,GAAAC,CAAA;EAAA;EAAA,OAHKD,EAGL;AAAA;;AAGJ;AACA;AACA;;AAOA,SAAAT,gBAAAS,EAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAAyB;IAAAC,QAAA;IAAAC;EAAA,IAAAJ,EAAyC;EAChE,MAAAQ,MAAA,GAAeC,SAAS,CAAC,CAAC;EAAA,IAAAF,EAAA;EAAA,IAAAN,CAAA,QAAAG,KAAA,IAAAH,CAAA,QAAAO,MAAA,CAAAgB,MAAA;IAGXjB,EAAA,IAACC,MAAM,CAAAgB,MAAO,EAAEpB,KAAK,CAAC;IAAAH,CAAA,MAAAG,KAAA;IAAAH,CAAA,MAAAO,MAAA,CAAAgB,MAAA;IAAAvB,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EAAA,IAAAS,EAAA;EAAA,IAAAT,CAAA,QAAAE,QAAA,IAAAF,CAAA,QAAAO,MAAA,CAAAiB,aAAA;IACjCf,EAAA,gBAAArC,IAAA,CAACZ,IAAI;MAAQ2C,KAAoB,EAApBI,MAAM,CAAAiB,aAAc;MAAAtB,QAAA,EAAGA;IAAQ,CAAO,CAAC;IAAAF,CAAA,MAAAE,QAAA;IAAAF,CAAA,MAAAO,MAAA,CAAAiB,aAAA;IAAAxB,CAAA,MAAAS,EAAA;EAAA;IAAAA,EAAA,GAAAT,CAAA;EAAA;EAAA,IAAAW,EAAA;EAAA,IAAAX,CAAA,QAAAM,EAAA,IAAAN,CAAA,QAAAS,EAAA;IADtDE,EAAA,gBAAAvC,IAAA,CAACZ,IAAI;MAAQ2C,KAAsB,EAAtBG,EAAsB;MAAAJ,QAAA,EACjCO;IAAoD,CAChD,CAAC;IAAAT,CAAA,MAAAM,EAAA;IAAAN,CAAA,MAAAS,EAAA;IAAAT,CAAA,MAAAW,EAAA;EAAA;IAAAA,EAAA,GAAAX,CAAA;EAAA;EAAA,OAFPW,EAEO;AAAA;AAIXrB,eAAe,CAAC4B,WAAW,GAAG,kBAAkB;;AAEhD;AACA;AACA;;AAMA,SAAA1B,qBAAAO,EAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAA8B;IAAAC;EAAA,IAAAH,EAAuC;EACnE,MAAAQ,MAAA,GAAeC,SAAS,CAAC,CAAC;EAAA,IAAAF,EAAA;EAAA,IAAAN,CAAA,QAAAE,QAAA,IAAAF,CAAA,QAAAO,MAAA,CAAA/B,WAAA;IAGxB8B,EAAA,gBAAAlC,IAAA,CAACL,OAAO;MACE0D,OAAI,EAAJ,IAAI;MACLtB,KAAkB,EAAlBI,MAAM,CAAA/B,WAAY;MACFX,qBAAiC,EAAjCA,iCAAiC;MAAAqC,QAAA,EAEvDA;IAAQ,CACF,CAAC;IAAAF,CAAA,MAAAE,QAAA;IAAAF,CAAA,MAAAO,MAAA,CAAA/B,WAAA;IAAAwB,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EAAA,OANVM,EAMU;AAAA;AAIdd,oBAAoB,CAAC0B,WAAW,GAAG,uBAAuB;;AAE1D;AACA;AACA;;AAMA,SAAAxB,uBAAAK,EAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAAgC;IAAAC;EAAA,IAAAH,EAAyC;EACvE,MAAAQ,MAAA,GAAeC,SAAS,CAAC,CAAC;EAAA,IAAAF,EAAA;EAAA,IAAAN,CAAA,QAAAE,QAAA,IAAAF,CAAA,QAAAO,MAAA,CAAAmB,aAAA;IAEnBpB,EAAA,gBAAAlC,IAAA,CAACZ,IAAI;MAAQ2C,KAAoB,EAApBI,MAAM,CAAAmB,aAAc;MAAAxB,QAAA,EAAGA;IAAQ,CAAO,CAAC;IAAAF,CAAA,MAAAE,QAAA;IAAAF,CAAA,MAAAO,MAAA,CAAAmB,aAAA;IAAA1B,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EAAA,OAApDM,EAAoD;AAAA;AAG7DZ,sBAAsB,CAACwB,WAAW,GAAG,yBAAyB;;AAE9D;AACA;AACA;;AAEA;AACA;AACA;;AAMA,SAAAtB,0BAAA+B,KAAA;EAAA,MAAA3B,CAAA,GAAAC,EAAA;EAAA,IAAAF,EAAA;EAAA,IAAAC,CAAA,QAAA2B,KAAA;IAEI5B,EAAA,gBAAA3B,IAAA,CAACF,UAAU;MAAA,GACLyD,KAAK;MACc9D,qBAAiC,EAAjCA,iCAAiC;MACxD+D,oCAAoC,EAApC,IAAoC;MACJC,8BAAc,EAAdF,KAAK,CAAAzB;IAAS,CAC/C,CAAC;IAAAF,CAAA,MAAA2B,KAAA;IAAA3B,CAAA,MAAAD,EAAA;EAAA;IAAAA,EAAA,GAAAC,CAAA;EAAA;EAAA,OALFD,EAKE;AAAA;AAINH,yBAAyB,CAACsB,WAAW,GAAG,4BAA4B;;AAEpE;AACA;AACA;;AAEA;;AAIA,SAAApB,sBAAA6B,KAAA;EAAA,MAAA3B,CAAA,GAAAC,EAAA;EAAA,IAAAF,EAAA;EAAA,IAAAC,CAAA,QAAA2B,KAAA;IAEI5B,EAAA,gBAAA3B,IAAA,CAACN,MAAM;MAAA,GACD6D,KAAK;MACc9D,qBAAiC,EAAjCA,iCAAiC;MACxD+D,oCAAoC,EAApC,IAAoC;MACJC,8BAAW,EAAXF,KAAK,CAAAG;IAAM,CAC5C,CAAC;IAAA9B,CAAA,MAAA2B,KAAA;IAAA3B,CAAA,MAAAD,EAAA;EAAA;IAAAA,EAAA,GAAAC,CAAA;EAAA;EAAA,OALFD,EAKE;AAAA;AAIND,qBAAqB,CAACoB,WAAW,GAAG,wBAAwB;;AAE5D;AACA;AACA;;AAEA,MAAMa,6BAA6B,GAAG;EACpCC,OAAO,EAAE,SAAS;EAClBC,MAAM,EAAE;AACV,CAAU;AAkBV,SAAA7C,gBAAAW,EAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAAyB;IAAA6B,KAAA;IAAAI,QAAA;IAAAC,OAAA;IAAAC,kBAAA;IAAAC,iBAAA;IAAAC,iBAAA,EAAAhC,EAAA;IAAAiC,UAAA,EAAA9B,EAAA;IAAA+B,QAAA,EAAA7B,EAAA;IAAA8B,cAAA;IAAAC;EAAA,IAAA3C,EAWF;EALrB,MAAAuC,iBAAA,GAAAhC,EAA4B,KAA5BxB,SAA4B,GAA5B,QAA4B,GAA5BwB,EAA4B;EAC5B,MAAAiC,UAAA,GAAA9B,EAAsB,KAAtB3B,SAAsB,GAAtB,SAAsB,GAAtB2B,EAAsB;EACtB,MAAA+B,QAAA,GAAA7B,EAAgB,KAAhB7B,SAAgB,GAAhB,KAAgB,GAAhB6B,EAAgB;EAAA,IAAAE,EAAA;EAAA,IAAAb,CAAA,QAAAuC,UAAA,IAAAvC,CAAA,QAAAwC,QAAA;IAIS3B,EAAA;MAAA0B,UAAA;MAAAC;IAAuB,CAAC;IAAAxC,CAAA,MAAAuC,UAAA;IAAAvC,CAAA,MAAAwC,QAAA;IAAAxC,CAAA,MAAAa,EAAA;EAAA;IAAAA,EAAA,GAAAb,CAAA;EAAA;EAAjD,MAAAO,MAAA,GAAeC,SAAS,CAACK,EAAwB,CAAC;EAQ5C,MAAAC,EAAA,GAAAuB,iBAA8E,KAAxDG,QAA0B,IAA1BC,cAAuD,GAAvDA,cAAuD,GAAvD3D,SAAwD;EAAA,IAAAkC,EAAA;EAAA,IAAAhB,CAAA,QAAAkC,QAAA,IAAAlC,CAAA,QAAAO,MAAA,CAAAoC,UAAA;IAM/E3B,EAAA,GAAAkB,QAEA,iBAFA9D,IAAA,CACEJ,IAAI;MAAOkE,IAAQ,EAARA,QAAQ;MAAQU,IAAE,EAAF,EAAE;MAAEC,2BAA2B,EAA3B,IAA2B;MAAQ1C,KAAiB,EAAjBI,MAAM,CAAAoC;IAAW,CACtF,CAAC;IAAA3C,CAAA,MAAAkC,QAAA;IAAAlC,CAAA,MAAAO,MAAA,CAAAoC,UAAA;IAAA3C,CAAA,MAAAgB,EAAA;EAAA;IAAAA,EAAA,GAAAhB,CAAA;EAAA;EAAA,IAAA8C,EAAA;EAAA,IAAA9C,CAAA,QAAAO,MAAA,CAAAwC,WAAA,IAAA/C,CAAA,QAAA8B,KAAA;IAECgB,EAAA,gBAAA1E,IAAA,CAACH,IAAI;MAAQkC,KAAkB,EAAlBI,MAAM,CAAAwC,WAAY;MAAA7C,QAAA,EAAG4B;IAAK,CAAO,CAAC;IAAA9B,CAAA,MAAAO,MAAA,CAAAwC,WAAA;IAAA/C,CAAA,MAAA8B,KAAA;IAAA9B,CAAA,MAAA8C,EAAA;EAAA;IAAAA,EAAA,GAAA9C,CAAA;EAAA;EAAA,IAAAgD,EAAA;EAAA,IAAAhD,CAAA,QAAAwC,QAAA,IAAAxC,CAAA,SAAAyC,cAAA,IAAAzC,CAAA,SAAAO,MAAA,CAAA0C,oBAAA;IAC9CD,EAAA,GAAAR,QAA0B,IAA1BC,cAEA,iBAFArE,IAAA,CACEH,IAAI;MAAQkC,KAA2B,EAA3BI,MAAM,CAAA0C,oBAAqB;MAAA/C,QAAA,EAAGuC;IAAc,CAC3D,CAAC;IAAAzC,CAAA,MAAAwC,QAAA;IAAAxC,CAAA,OAAAyC,cAAA;IAAAzC,CAAA,OAAAO,MAAA,CAAA0C,oBAAA;IAAAjD,CAAA,OAAAgD,EAAA;EAAA;IAAAA,EAAA,GAAAhD,CAAA;EAAA;EAAA,IAAAkD,EAAA;EAAA,IAAAlD,CAAA,SAAAO,MAAA,CAAA4C,eAAA,IAAAnD,CAAA,SAAA8C,EAAA,IAAA9C,CAAA,SAAAgD,EAAA;IAJHE,EAAA,gBAAA5E,KAAA,CAACd,IAAI;MAAQ2C,KAAsB,EAAtBI,MAAM,CAAA4C,eAAgB;MAAAjD,QAAA,GACjC4C,EAA+C,EAC9CE,EAEA;IAAA,CACG,CAAC;IAAAhD,CAAA,OAAAO,MAAA,CAAA4C,eAAA;IAAAnD,CAAA,OAAA8C,EAAA;IAAA9C,CAAA,OAAAgD,EAAA;IAAAhD,CAAA,OAAAkD,EAAA;EAAA;IAAAA,EAAA,GAAAlD,CAAA;EAAA;EAAA,IAAAoD,GAAA;EAAA,IAAApD,CAAA,SAAAoC,kBAAA,IAAApC,CAAA,SAAAsC,iBAAA,IAAAtC,CAAA,SAAAwC,QAAA,IAAAxC,CAAA,SAAAmC,OAAA,IAAAnC,CAAA,SAAAO,MAAA,CAAA8C,eAAA,IAAArD,CAAA,SAAAc,EAAA,IAAAd,CAAA,SAAAgB,EAAA,IAAAhB,CAAA,SAAAkD,EAAA,IAAAlD,CAAA,SAAA0C,MAAA;IAnBTU,GAAA,gBAAA9E,KAAA,CAACnB,iBAAiB;MACRuF,MAAM,EAANA,MAAM;MACLP,OAAO,EAAPA,OAAO;MACIC,kBAAkB,EAAlBA,kBAAkB;MAEpCC,iBAA8E,EAA9EvB,EAA8E;MAE7DwB,iBAAiB,EAAjBA,iBAAiB;MAC7BnC,KAAsB,EAAtBI,MAAM,CAAA8C,eAAgB;MACnBb,QAAQ,EAARA,QAAQ;MAAAtC,QAAA,GAEjBc,EAEA,EACDkC,EAKO;IAAA,CACU,CAAC;IAAAlD,CAAA,OAAAoC,kBAAA;IAAApC,CAAA,OAAAsC,iBAAA;IAAAtC,CAAA,OAAAwC,QAAA;IAAAxC,CAAA,OAAAmC,OAAA;IAAAnC,CAAA,OAAAO,MAAA,CAAA8C,eAAA;IAAArD,CAAA,OAAAc,EAAA;IAAAd,CAAA,OAAAgB,EAAA;IAAAhB,CAAA,OAAAkD,EAAA;IAAAlD,CAAA,OAAA0C,MAAA;IAAA1C,CAAA,OAAAoD,GAAA;EAAA;IAAAA,GAAA,GAAApD,CAAA;EAAA;EAAA,OApBpBoD,GAoBoB;AAAA;AAIxBhE,eAAe,CAAC8B,WAAW,GAAG,kBAAkB;;AAEhD;AACA;AACA;;AAOA,MAAMV,SAAS,GAAGT,EAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAAA,IAAAK,EAAA;EAAA,IAAAN,CAAA,QAAAD,EAAA;IAACO,EAAA,GAAAP,EAAyD,KAAzDjB,SAAyD,GAAzD,CAAwD,CAAC,GAAzDiB,EAAyD;IAAAC,CAAA,MAAAD,EAAA;IAAAC,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EAAzD;IAAAuC,UAAA,EAAA9B,EAAA;IAAA+B,QAAA,EAAA7B;EAAA,IAAAL,EAAyD;EAAvD,MAAAiC,UAAA,GAAA9B,EAAsB,KAAtB3B,SAAsB,GAAtB,SAAsB,GAAtB2B,EAAsB;EAAE,MAAA+B,QAAA,GAAA7B,EAAgB,KAAhB7B,SAAgB,GAAhB,KAAgB,GAAhB6B,EAAgB;EAC3D;IAAA2C;EAAA,IAAmB3F,QAAQ,CAAC,CAAC;EAC7B;IAAA4F;EAAA,IAAmB9F,mBAAmB,CAAC,CAAC;EACxC;IAAA+F,MAAA;IAAAC;EAAA,IAAwB/F,iBAAiB,CAAC,CAAC;EAC3C,MAAAgG,YAAA,GAAqBtG,eAAe,CAAC,CAAC;EAAA,IAAAyD,EAAA;EAAA,IAAAb,CAAA,QAAAuC,UAAA,IAAAvC,CAAA,QAAAwD,MAAA,IAAAxD,CAAA,QAAAsD,MAAA,CAAAK,sBAAA,IAAA3D,CAAA,QAAAsD,MAAA,CAAAM,mBAAA,IAAA5D,CAAA,QAAAsD,MAAA,CAAAO,2BAAA,IAAA7D,CAAA,QAAAsD,MAAA,CAAAQ,0BAAA,IAAA9D,CAAA,QAAAsD,MAAA,CAAAS,uBAAA,IAAA/D,CAAA,QAAAsD,MAAA,CAAAU,wBAAA,IAAAhE,CAAA,SAAAsD,MAAA,CAAAW,uBAAA,IAAAjE,CAAA,SAAAwC,QAAA,IAAAxC,CAAA,SAAA0D,YAAA,IAAA1D,CAAA,SAAAuD,MAAA,IAAAvD,CAAA,SAAAyD,GAAA;IAEtC,MAAAS,eAAA,GAAwB5G,QAAQ,CAAA8D,MAAO,CAAC;MAAAE,GAAA,EACjCiC,MAAM,GAAGE,GAAG,GAAGC,YAAY;MAAAS,OAAA,EACvB;IACX,CAAC,CAAC;IAEF,MAAAC,mBAAA,GAA4B;MAAApC,OAAA,EACjB;QAAAqC,SAAA,EACIf,MAAM,CAAAS,uBAAwB;QAAAO,SAAA,EAC9BhB,MAAM,CAAAW;MACnB,CAAC;MAAAhC,MAAA,EACO;QAAAoC,SAAA,EACKf,MAAM,CAAAQ,0BAA2B;QAAAQ,SAAA,EACjChB,MAAM,CAAAQ;MACnB;IACF,CAAC;IAEMjD,EAAA,GAAAtD,UAAU,CAAAgH,MAAO,CAAC;MAAA7D,SAAA,EACZ;QAAA8D,cAAA,EACO,YAAY;QAAAC,aAAA,EACbjB,MAAM;QAAAkB,KAAA,EACd,MAAM;QAAAC,eAAA,EACIrB,MAAM,CAAAO,2BAA4B;QAAAN,MAAA,EAC3CW,eAAe;QAAA,GACpB5G,QAAQ,CAAA8D,MAAO,CAAC;UAAAE,GAAA,EACZ;YAAAsD,QAAA,EACO;UACZ,CAAC;UAAAvD,OAAA,EACQ;YAAAwD,SAAA,EACI;UACb;QACF,CAAC;MACH,CAAC;MAAA1D,mBAAA,EACoB;QAAA2D,QAAA,EACT,UAAU;QAAArB,GAAA,EACf,CAAC;QAAAiB,KAAA,EACC,EAAE;QAAAnB,MAAA,EACD,CAAC;QAAAoB,eAAA,EACQrB,MAAM,CAAAM,mBAAoB;QAAAmB,YAAA,EAC7B,GAAG;QAAAC,SAAA,EACN;MACb,CAAC;MAAApE,OAAA,EACQ;QAAA,GACJtD,QAAQ,CAAA8D,MAAO,CAAC;UAAAC,OAAA,EACR;YAAAwD,SAAA,EACI;UACb;QACF,CAAC;MACH,CAAC;MAAAtD,MAAA,EACO;QAAA0D,iBAAA,EACa,EAAE;QAAAC,UAAA,EACT,EAAE;QAAAT,aAAA,EACC,EAAE;QAAAE,eAAA,EACArB,MAAM,CAAAO,2BAA4B;QAAAsB,GAAA,EAC9C,EAAE;QAAAC,iBAAA,EACY,CAAC;QAAAC,iBAAA,EACD/B,MAAM,CAAAK;MAC3B,CAAC;MAAAnC,aAAA,EACc;QAAA8D,aAAA,EACE,KAAK;QAAAC,UAAA,EACR,QAAQ;QAAAf,cAAA,EACJ;MAClB,CAAC;MAAAhG,WAAA,EACY;QAAAgH,SAAA,EACA,MAAM;QAAAC,IAAA,EACX;MACR,CAAC;MAAA/D,aAAA,EACc;QAAA4D,aAAA,EACE,KAAK;QAAAC,UAAA,EACR,QAAQ;QAAAJ,GAAA,EACf;MACP,CAAC;MAAA9B,eAAA,EACgB;QAAAiC,aAAA,EACA,KAAK;QAAAC,UAAA,EACR,QAAQ;QAAAG,eAAA,EACH,EAAE;QAAAT,iBAAA,EACA,EAAE;QAAAE,GAAA,EAChB;MACP,CAAC;MAAAxC,UAAA,EACW;QAAAgD,KAAA,EACHnD,QAAQ,GAAGc,MAAM,CAAAU,wBAAqE,GAAzCI,mBAAmB,CAAC7B,UAAU,CAAC,CAAA8B;MACrF,CAAC;MAAAlB,eAAA,EACgB;QAAAsC,IAAA,EACT;MACR,CAAC;MAAA1C,WAAA,EACY;QAAA4C,KAAA,EACJnD,QAAQ,GAAGc,MAAM,CAAAU,wBAAqE,GAAzCI,mBAAmB,CAAC7B,UAAU,CAAC,CAAA+B;MACrF,CAAC;MAAArB,oBAAA,EACqB;QAAA0C,KAAA,EACbrC,MAAM,CAAAU,wBAAyB;QAAA4B,QAAA,EAC5B;MACZ;IACF,CAAC,CAAC;IAAA5F,CAAA,MAAAuC,UAAA;IAAAvC,CAAA,MAAAwD,MAAA;IAAAxD,CAAA,MAAAsD,MAAA,CAAAK,sBAAA;IAAA3D,CAAA,MAAAsD,MAAA,CAAAM,mBAAA;IAAA5D,CAAA,MAAAsD,MAAA,CAAAO,2BAAA;IAAA7D,CAAA,MAAAsD,MAAA,CAAAQ,0BAAA;IAAA9D,CAAA,MAAAsD,MAAA,CAAAS,uBAAA;IAAA/D,CAAA,MAAAsD,MAAA,CAAAU,wBAAA;IAAAhE,CAAA,OAAAsD,MAAA,CAAAW,uBAAA;IAAAjE,CAAA,OAAAwC,QAAA;IAAAxC,CAAA,OAAA0D,YAAA;IAAA1D,CAAA,OAAAuD,MAAA;IAAAvD,CAAA,OAAAyD,GAAA;IAAAzD,CAAA,OAAAa,EAAA;EAAA;IAAAA,EAAA,GAAAb,CAAA;EAAA;EAAA,OA3EKa,EA2EL;AAAA,CACH","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"form_sheet.js","names":["PlatformPressable","useHeaderHeight","React","Platform","StyleSheet","View","useWindowDimensions","useSafeAreaInsets","useTheme","isLiquidGlassEnabled","MAX_FONT_SIZE_MULTIPLIER_LANDMARK","Button","Heading","Icon","Text","TextButton","jsx","_jsx","jsxs","_jsxs","getFormSheetScreenOptions","headerTitle","sheetAllowedDetents","rest","presentation","headerShown","sheetCornerRadius","undefined","sheetGrabberVisible","FormSheet","Root","FormSheetRoot","Action","FormSheetAction","Header","FormSheetHeader","HeaderTitle","FormSheetHeaderTitle","HeaderActions","FormSheetHeaderActions","HeaderTextButton","FormSheetHeaderTextButton","HeaderButton","FormSheetHeaderButton","t0","$","_c","children","style","contentStyle","showAndroidSheetGrabber","t1","fitToContents","t2","t3","styles","useStyles","t4","container","t5","content","t6","t7","AndroidSheetGrabber","t8","collapsable","displayName","androidSheetGrabber","select","android","ios","header","headerContent","variant","headerActions","props","accessibilityShowsLargeContentViewer","accessibilityLargeContentTitle","title","FORM_SHEET_ACTION_APPEARANCES","neutral","danger","iconName","onPress","accessibilityLabel","accessibilityHint","accessibilityRole","appearance","disabled","disabledReason","testID","actionIcon","size","accessibilityElementsHidden","actionTitle","actionDisabledReason","t9","actionTextBlock","t10","actionPressable","colors","height","bottom","top","headerHeight","borderColorDefaultBase","fillColorNeutral040","fillColorNeutral100Inverted","fillColorStatusErrorMedium","iconColorDefaultPrimary","textColorDefaultDisabled","textColorDefaultPrimary","containerHeight","default","appearanceColorsMap","iconColor","textColor","create","justifyContent","paddingBottom","width","backgroundColor","flexGrow","maxHeight","position","borderRadius","alignSelf","paddingHorizontal","paddingTop","gap","borderBottomWidth","borderBottomColor","flexDirection","alignItems","textAlign","flex","paddingVertical","color","fontSize"],"sources":["../../../src/components/primitive/form_sheet.tsx"],"sourcesContent":["import { PlatformPressable, useHeaderHeight } from '@react-navigation/elements'\nimport { NativeStackNavigationOptions } from '@react-navigation/native-stack'\nimport React, { ReactNode } from 'react'\nimport {\n Platform,\n StyleSheet,\n View,\n useWindowDimensions,\n type AccessibilityRole,\n type StyleProp,\n type ViewStyle,\n} from 'react-native'\nimport { useSafeAreaInsets } from 'react-native-safe-area-context'\nimport { useTheme } from '../../hooks'\nimport { isLiquidGlassEnabled, MAX_FONT_SIZE_MULTIPLIER_LANDMARK } from '../../utils'\nimport type { ButtonProps, TextButtonProps } from '../display'\nimport { Button, Heading, Icon, IconString, Text, TextButton } from '../display'\n\n// =================================\n// ====== Exports ==================\n// =================================\n\n/**\n * Screen options for the formsheet's NativeStackNavigation route\n *\n * Returns a factory rather than an object because callers assign it at module\n * scope, which runs before ChatProvider reports the host's liquid glass\n * capability. React Navigation calls the factory per render, so the sheet\n * corner radius is resolved once that capability is known.\n *\n * @param {string} options.headerTitle - Doesn't show in UI but good to have for semantic reasons.\n * @param {number[]} [options.sheetAllowedDetents] - Controls the height increments the sheet grows to. To prevent bugs in Android, do not specify more then two values and use [0.94] instead of [1] to go full screen.\n * @param {NativeStackNavigationOptions} [options.rest] - Adds or overrides any valid NativeStackNavigationOptions\n * @returns {() => NativeStackNavigationOptions} Factory producing merged NativeStackNavigationOptions\n */\nexport const getFormSheetScreenOptions =\n ({ headerTitle, sheetAllowedDetents = [0.25], ...rest }: NativeStackNavigationOptions = {}) =>\n (): NativeStackNavigationOptions => ({\n presentation: 'formSheet',\n headerShown: false,\n sheetAllowedDetents,\n sheetCornerRadius: isLiquidGlassEnabled() ? undefined : 16,\n sheetGrabberVisible: true,\n headerTitle,\n ...rest,\n })\n\nconst FormSheet = {\n Root: FormSheetRoot,\n Action: FormSheetAction,\n Header: FormSheetHeader,\n HeaderTitle: FormSheetHeaderTitle,\n HeaderActions: FormSheetHeaderActions,\n HeaderTextButton: FormSheetHeaderTextButton,\n HeaderButton: FormSheetHeaderButton,\n} as const\n\ntype FormSheetComponents = {\n Root: React.FC<FormSheetRootProps>\n Action: React.FC<FormSheetActionProps>\n Header: React.FC<FormSheetHeaderProps>\n HeaderTitle: React.FC<FormSheetHeaderTitleProps>\n HeaderActions: React.FC<FormSheetHeaderActionsProps>\n HeaderTextButton: React.FC<FormSheetHeaderTextButtonProps>\n HeaderButton: React.FC<FormSheetHeaderButtonProps>\n}\n\nexport default FormSheet as FormSheetComponents\nexport type {\n FormSheetActionProps,\n FormSheetHeaderActionsProps,\n FormSheetHeaderButtonProps,\n FormSheetHeaderProps,\n FormSheetHeaderTextButtonProps,\n FormSheetHeaderTitleProps,\n FormSheetRootProps,\n}\n\n// ====================================\n// ====== ActionsFormSheetRoot ========\n// ====================================\n\ninterface FormSheetRootProps {\n children: ReactNode\n style?: StyleProp<ViewStyle>\n contentStyle?: StyleProp<ViewStyle>\n showAndroidSheetGrabber?: boolean\n fitToContents?: boolean\n}\n\nexport function FormSheetRoot({\n children,\n style,\n contentStyle,\n showAndroidSheetGrabber = true,\n fitToContents = false,\n}: FormSheetRootProps) {\n const styles = useStyles({ fitToContents })\n\n return (\n <View style={[styles.container, style]} collapsable={false}>\n <View style={[styles.content, contentStyle]}>{children}</View>\n {showAndroidSheetGrabber && <AndroidSheetGrabber />}\n </View>\n )\n}\n\nFormSheetRoot.displayName = 'FormSheet.Root'\n\n// ====================================\n// ====== AndroidSheetGrabber =========\n// ====================================\n\nfunction AndroidSheetGrabber() {\n const styles = useStyles()\n\n return Platform.select({\n android: <View style={styles.androidSheetGrabber} />,\n ios: null,\n })\n}\n\n// ====================================\n// ====== FormSheetHeader =============\n// ====================================\n\ninterface FormSheetHeaderProps {\n children: ReactNode\n style?: StyleProp<ViewStyle>\n}\n\nfunction FormSheetHeader({ children, style }: FormSheetHeaderProps) {\n const styles = useStyles()\n\n return (\n <View style={[styles.header, style]}>\n <View style={styles.headerContent}>{children}</View>\n </View>\n )\n}\n\nFormSheetHeader.displayName = 'FormSheet.Header'\n\n// ====================================\n// ====== FormSheetHeaderTitle ========\n// ====================================\n\ninterface FormSheetHeaderTitleProps {\n children: ReactNode\n}\n\nfunction FormSheetHeaderTitle({ children }: FormSheetHeaderTitleProps) {\n const styles = useStyles()\n\n return (\n <Heading\n variant=\"h3\"\n style={styles.headerTitle}\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n >\n {children}\n </Heading>\n )\n}\n\nFormSheetHeaderTitle.displayName = 'FormSheet.HeaderTitle'\n\n// ====================================\n// ====== FormSheetHeaderActions ======\n// ====================================\n\ninterface FormSheetHeaderActionsProps {\n children: ReactNode\n}\n\nfunction FormSheetHeaderActions({ children }: FormSheetHeaderActionsProps) {\n const styles = useStyles()\n\n return <View style={styles.headerActions}>{children}</View>\n}\n\nFormSheetHeaderActions.displayName = 'FormSheet.HeaderActions'\n\n// ===========================================\n// ====== FormSheetHeaderTextButton ==========\n// ===========================================\n\n// We are omitting `onLongPress` because we are instead supporting `accessibilityShowsLargeContentViewer`.\n// This is triggered by an `onLongPress` event when an iOS device is in Apple's accessible font scale range.\n// Triggering this prop will display an almost full screen iOS a11y button.\ninterface FormSheetHeaderTextButtonProps\n extends Omit<TextButtonProps, 'maxFontSizeMultiplier' | 'onLongPress'> {\n children: string\n}\n\nfunction FormSheetHeaderTextButton(props: FormSheetHeaderTextButtonProps) {\n return (\n <TextButton\n {...props}\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n accessibilityShowsLargeContentViewer\n accessibilityLargeContentTitle={props.children}\n />\n )\n}\n\nFormSheetHeaderTextButton.displayName = 'FormSheet.HeaderTextButton'\n\n// =========================================\n// ====== FormSheetHeaderButton ============\n// =========================================\n\n// Same `onLongPress`note as `FormSheetHeaderTextButtonProps`\ninterface FormSheetHeaderButtonProps\n extends Omit<ButtonProps, 'maxFontSizeMultiplier' | 'onLongPress'> {}\n\nfunction FormSheetHeaderButton(props: FormSheetHeaderButtonProps) {\n return (\n <Button\n {...props}\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n accessibilityShowsLargeContentViewer\n accessibilityLargeContentTitle={props.title}\n />\n )\n}\n\nFormSheetHeaderButton.displayName = 'FormSheet.HeaderButton'\n\n// ====================================\n// ====== ActionsFormSheetAction ======\n// ====================================\n\nconst FORM_SHEET_ACTION_APPEARANCES = {\n neutral: 'neutral',\n danger: 'danger',\n} as const\n\ntype FormSheetActionAppearanceUnion =\n (typeof FORM_SHEET_ACTION_APPEARANCES)[keyof typeof FORM_SHEET_ACTION_APPEARANCES]\n\ninterface FormSheetActionProps {\n title: string\n iconName?: IconString\n onPress: () => void\n accessibilityLabel?: string\n accessibilityHint?: string\n accessibilityRole?: AccessibilityRole\n appearance?: FormSheetActionAppearanceUnion\n disabled?: boolean\n disabledReason?: string\n testID?: string\n}\n\nfunction FormSheetAction({\n title,\n iconName,\n onPress,\n accessibilityLabel,\n accessibilityHint,\n accessibilityRole = 'button',\n appearance = 'neutral',\n disabled = false,\n disabledReason,\n testID,\n}: FormSheetActionProps) {\n const styles = useStyles({ appearance, disabled })\n\n return (\n <PlatformPressable\n testID={testID}\n onPress={onPress}\n accessibilityLabel={accessibilityLabel}\n accessibilityHint={\n accessibilityHint ?? (disabled && disabledReason ? disabledReason : undefined)\n }\n accessibilityRole={accessibilityRole}\n style={styles.actionPressable}\n disabled={disabled}\n >\n {iconName && (\n <Icon name={iconName} size={16} accessibilityElementsHidden style={styles.actionIcon} />\n )}\n <View style={styles.actionTextBlock}>\n <Text style={styles.actionTitle}>{title}</Text>\n {disabled && disabledReason && (\n <Text style={styles.actionDisabledReason}>{disabledReason}</Text>\n )}\n </View>\n </PlatformPressable>\n )\n}\n\nFormSheetAction.displayName = 'FormSheet.Action'\n\n// ==================================\n// ====== Styles ====================\n// ==================================\n\ninterface Styles {\n appearance?: FormSheetActionAppearanceUnion\n disabled?: boolean\n fitToContents?: boolean\n}\n\nconst useStyles = ({\n appearance = 'neutral',\n disabled = false,\n fitToContents = false,\n}: Styles = {}) => {\n const { colors } = useTheme()\n const { height } = useWindowDimensions()\n const { bottom, top } = useSafeAreaInsets()\n const headerHeight = useHeaderHeight()\n\n const containerHeight = Platform.select({\n ios: fitToContents ? undefined : height - top - headerHeight,\n default: null,\n })\n\n const appearanceColorsMap = {\n neutral: {\n iconColor: colors.iconColorDefaultPrimary,\n textColor: colors.textColorDefaultPrimary,\n },\n danger: {\n iconColor: colors.fillColorStatusErrorMedium,\n textColor: colors.fillColorStatusErrorMedium,\n },\n }\n\n return StyleSheet.create({\n container: {\n justifyContent: 'flex-start',\n paddingBottom: bottom,\n width: '100%',\n backgroundColor: colors.fillColorNeutral100Inverted,\n height: containerHeight,\n ...Platform.select({\n ios: {\n flexGrow: 1, // Ensures the FormSheet children respond to the formsheet height changing on iOS\n },\n android: {\n maxHeight: '100%', // Ensures lists to scroll on Android\n },\n }),\n },\n androidSheetGrabber: {\n position: 'absolute',\n top: 5,\n width: 34,\n height: 5,\n backgroundColor: colors.fillColorNeutral040,\n borderRadius: 100,\n alignSelf: 'center',\n },\n content: {\n ...Platform.select({\n android: {\n maxHeight: '100%', // Ensures content above a list (e.g. FormSheet.Header) don't subtract from the FormSheet's height\n },\n }),\n },\n header: {\n paddingHorizontal: 16,\n paddingTop: 20,\n paddingBottom: 16,\n backgroundColor: colors.fillColorNeutral100Inverted,\n gap: 16,\n borderBottomWidth: 1,\n borderBottomColor: colors.borderColorDefaultBase,\n },\n headerContent: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n },\n headerTitle: {\n textAlign: 'left',\n flex: 1,\n },\n headerActions: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 16,\n },\n actionPressable: {\n flexDirection: 'row',\n alignItems: 'center',\n paddingVertical: 12,\n paddingHorizontal: 16,\n gap: 8,\n },\n actionIcon: {\n color: disabled ? colors.textColorDefaultDisabled : appearanceColorsMap[appearance].iconColor,\n },\n actionTextBlock: {\n flex: 1,\n },\n actionTitle: {\n color: disabled ? colors.textColorDefaultDisabled : appearanceColorsMap[appearance].textColor,\n },\n actionDisabledReason: {\n color: colors.textColorDefaultDisabled,\n fontSize: 12,\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation_select_type_screen.d.ts","sourceRoot":"","sources":["../../src/screens/conversation_select_type_screen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAiB,MAAM,0BAA0B,CAAA;AAK3E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAA;AAC1F,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAA;AAG3D,eAAO,MAAM,mCAAmC,
|
|
1
|
+
{"version":3,"file":"conversation_select_type_screen.d.ts","sourceRoot":"","sources":["../../src/screens/conversation_select_type_screen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAiB,MAAM,0BAA0B,CAAA;AAK3E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAA;AAC1F,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAA;AAG3D,eAAO,MAAM,mCAAmC,6EAG9C,CAAA;AAEF,MAAM,MAAM,iCAAiC,GAAG,iBAAiB,CAAC;IAChE,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,yBAAyB,CAAC,EAAE,yBAAyB,CAAA;CACtD,CAAC,CAAA;AAOF,wBAAgB,4BAA4B,CAAC,EAAE,KAAK,EAAE,EAAE,iCAAiC,2CA2FxF"}
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import { c as _c } from "react/compiler-runtime";
|
|
2
2
|
import { useNavigation } from '@react-navigation/native';
|
|
3
|
-
import React
|
|
3
|
+
import React from 'react';
|
|
4
4
|
import FormSheet, { getFormSheetScreenOptions } from '../components/primitive/form_sheet';
|
|
5
5
|
import { useCurrentPerson } from '../hooks/use_current_person';
|
|
6
6
|
import { useConversationTypeAccess } from '../hooks/use_new_conversation_entry';
|
|
7
7
|
import { Haptic } from '../utils/native_adapters';
|
|
8
8
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
9
|
export const ConversationSelectTypeScreenOptions = getFormSheetScreenOptions({
|
|
10
|
-
headerTitle: 'New conversation'
|
|
10
|
+
headerTitle: 'New conversation',
|
|
11
|
+
sheetAllowedDetents: 'fitToContents'
|
|
11
12
|
});
|
|
12
13
|
export function ConversationSelectTypeScreen(t0) {
|
|
13
|
-
const $ = _c(
|
|
14
|
+
const $ = _c(37);
|
|
14
15
|
const {
|
|
15
16
|
route
|
|
16
17
|
} = t0;
|
|
@@ -51,26 +52,8 @@ export function ConversationSelectTypeScreen(t0) {
|
|
|
51
52
|
const filterParams = t2;
|
|
52
53
|
const showDirectMessageOption = directMessagesEligible;
|
|
53
54
|
let t3;
|
|
54
|
-
|
|
55
|
-
if ($[5] !== navigation || $[6] !== showDirectMessageOption) {
|
|
55
|
+
if ($[5] !== filterParams || $[6] !== navigation || $[7] !== newConversationFromFilter) {
|
|
56
56
|
t3 = () => {
|
|
57
|
-
navigation.setOptions({
|
|
58
|
-
sheetAllowedDetents: showDirectMessageOption ? [0.3] : [0.25]
|
|
59
|
-
});
|
|
60
|
-
};
|
|
61
|
-
t4 = [navigation, showDirectMessageOption];
|
|
62
|
-
$[5] = navigation;
|
|
63
|
-
$[6] = showDirectMessageOption;
|
|
64
|
-
$[7] = t3;
|
|
65
|
-
$[8] = t4;
|
|
66
|
-
} else {
|
|
67
|
-
t3 = $[7];
|
|
68
|
-
t4 = $[8];
|
|
69
|
-
}
|
|
70
|
-
useLayoutEffect(t3, t4);
|
|
71
|
-
let t5;
|
|
72
|
-
if ($[9] !== filterParams || $[10] !== navigation || $[11] !== newConversationFromFilter) {
|
|
73
|
-
t5 = () => {
|
|
74
57
|
if (!newConversationFromFilter) {
|
|
75
58
|
return;
|
|
76
59
|
}
|
|
@@ -98,17 +81,17 @@ export function ConversationSelectTypeScreen(t0) {
|
|
|
98
81
|
}
|
|
99
82
|
});
|
|
100
83
|
};
|
|
101
|
-
$[
|
|
102
|
-
$[
|
|
103
|
-
$[
|
|
104
|
-
$[
|
|
84
|
+
$[5] = filterParams;
|
|
85
|
+
$[6] = navigation;
|
|
86
|
+
$[7] = newConversationFromFilter;
|
|
87
|
+
$[8] = t3;
|
|
105
88
|
} else {
|
|
106
|
-
|
|
89
|
+
t3 = $[8];
|
|
107
90
|
}
|
|
108
|
-
const handleFilterPress =
|
|
109
|
-
let
|
|
110
|
-
if ($[
|
|
111
|
-
|
|
91
|
+
const handleFilterPress = t3;
|
|
92
|
+
let t4;
|
|
93
|
+
if ($[9] !== filterParams || $[10] !== navigation) {
|
|
94
|
+
t4 = screen => {
|
|
112
95
|
Haptic.impactLight();
|
|
113
96
|
navigation.goBack();
|
|
114
97
|
requestAnimationFrame(() => navigation.navigate("New", {
|
|
@@ -116,95 +99,95 @@ export function ConversationSelectTypeScreen(t0) {
|
|
|
116
99
|
params: filterParams
|
|
117
100
|
}));
|
|
118
101
|
};
|
|
119
|
-
$[
|
|
120
|
-
$[
|
|
102
|
+
$[9] = filterParams;
|
|
103
|
+
$[10] = navigation;
|
|
104
|
+
$[11] = t4;
|
|
105
|
+
} else {
|
|
106
|
+
t4 = $[11];
|
|
107
|
+
}
|
|
108
|
+
const navigateToNewConversationType = t4;
|
|
109
|
+
let t5;
|
|
110
|
+
if ($[12] !== navigateToNewConversationType) {
|
|
111
|
+
t5 = () => navigateToNewConversationType("ConversationSelectGroupRecipients");
|
|
112
|
+
$[12] = navigateToNewConversationType;
|
|
113
|
+
$[13] = t5;
|
|
114
|
+
} else {
|
|
115
|
+
t5 = $[13];
|
|
116
|
+
}
|
|
117
|
+
const handleGroupPress = t5;
|
|
118
|
+
let t6;
|
|
119
|
+
if ($[14] !== navigateToNewConversationType) {
|
|
120
|
+
t6 = () => navigateToNewConversationType("ConversationSelectTeamsILeadRecipients");
|
|
121
|
+
$[14] = navigateToNewConversationType;
|
|
121
122
|
$[15] = t6;
|
|
122
123
|
} else {
|
|
123
124
|
t6 = $[15];
|
|
124
125
|
}
|
|
125
|
-
const
|
|
126
|
+
const handleTeamPress = t6;
|
|
126
127
|
let t7;
|
|
127
128
|
if ($[16] !== navigateToNewConversationType) {
|
|
128
|
-
t7 = () => navigateToNewConversationType("
|
|
129
|
+
t7 = () => navigateToNewConversationType("ConversationSelectDirectMessageRecipients");
|
|
129
130
|
$[16] = navigateToNewConversationType;
|
|
130
131
|
$[17] = t7;
|
|
131
132
|
} else {
|
|
132
133
|
t7 = $[17];
|
|
133
134
|
}
|
|
134
|
-
const
|
|
135
|
+
const handleDirectMessagePress = t7;
|
|
135
136
|
let t8;
|
|
136
|
-
if ($[18]
|
|
137
|
-
t8 = (
|
|
138
|
-
$[18] = navigateToNewConversationType;
|
|
139
|
-
$[19] = t8;
|
|
140
|
-
} else {
|
|
141
|
-
t8 = $[19];
|
|
142
|
-
}
|
|
143
|
-
const handleTeamPress = t8;
|
|
144
|
-
let t9;
|
|
145
|
-
if ($[20] !== navigateToNewConversationType) {
|
|
146
|
-
t9 = () => navigateToNewConversationType("ConversationSelectDirectMessageRecipients");
|
|
147
|
-
$[20] = navigateToNewConversationType;
|
|
148
|
-
$[21] = t9;
|
|
149
|
-
} else {
|
|
150
|
-
t9 = $[21];
|
|
151
|
-
}
|
|
152
|
-
const handleDirectMessagePress = t9;
|
|
153
|
-
let t10;
|
|
154
|
-
if ($[22] === Symbol.for("react.memo_cache_sentinel")) {
|
|
155
|
-
t10 = /*#__PURE__*/_jsx(FormSheet.Header, {
|
|
137
|
+
if ($[18] === Symbol.for("react.memo_cache_sentinel")) {
|
|
138
|
+
t8 = /*#__PURE__*/_jsx(FormSheet.Header, {
|
|
156
139
|
children: /*#__PURE__*/_jsx(FormSheet.HeaderTitle, {
|
|
157
140
|
children: "Start a conversation by"
|
|
158
141
|
})
|
|
159
142
|
});
|
|
160
|
-
$[
|
|
143
|
+
$[18] = t8;
|
|
161
144
|
} else {
|
|
162
|
-
|
|
145
|
+
t8 = $[18];
|
|
163
146
|
}
|
|
164
|
-
let
|
|
165
|
-
if ($[
|
|
166
|
-
|
|
147
|
+
let t9;
|
|
148
|
+
if ($[19] !== handleFilterPress || $[20] !== newConversationFromFilter) {
|
|
149
|
+
t9 = newConversationFromFilter && /*#__PURE__*/_jsx(FormSheet.Action, {
|
|
167
150
|
title: `New conversation in ${newConversationFromFilter.name}`,
|
|
168
151
|
onPress: handleFilterPress,
|
|
169
152
|
accessibilityHint: "Creates a conversation pre-scoped to the current filter"
|
|
170
153
|
});
|
|
171
|
-
$[
|
|
172
|
-
$[
|
|
173
|
-
$[
|
|
154
|
+
$[19] = handleFilterPress;
|
|
155
|
+
$[20] = newConversationFromFilter;
|
|
156
|
+
$[21] = t9;
|
|
174
157
|
} else {
|
|
175
|
-
|
|
158
|
+
t9 = $[21];
|
|
176
159
|
}
|
|
177
|
-
let
|
|
178
|
-
if ($[
|
|
179
|
-
|
|
160
|
+
let t10;
|
|
161
|
+
if ($[22] !== canCreateGroupsConversations || $[23] !== handleGroupPress) {
|
|
162
|
+
t10 = canCreateGroupsConversations && /*#__PURE__*/_jsx(FormSheet.Action, {
|
|
180
163
|
testID: "conversation-select-type-group",
|
|
181
164
|
title: "Group",
|
|
182
165
|
onPress: handleGroupPress,
|
|
183
166
|
accessibilityHint: "Opens group selection screen"
|
|
184
167
|
});
|
|
185
|
-
$[
|
|
186
|
-
$[
|
|
187
|
-
$[
|
|
168
|
+
$[22] = canCreateGroupsConversations;
|
|
169
|
+
$[23] = handleGroupPress;
|
|
170
|
+
$[24] = t10;
|
|
188
171
|
} else {
|
|
189
|
-
|
|
172
|
+
t10 = $[24];
|
|
190
173
|
}
|
|
191
|
-
let
|
|
192
|
-
if ($[
|
|
193
|
-
|
|
174
|
+
let t11;
|
|
175
|
+
if ($[25] !== canCreateServicesConversations || $[26] !== handleTeamPress) {
|
|
176
|
+
t11 = canCreateServicesConversations && /*#__PURE__*/_jsx(FormSheet.Action, {
|
|
194
177
|
testID: "conversation-select-type-team",
|
|
195
178
|
title: "Team",
|
|
196
179
|
onPress: handleTeamPress,
|
|
197
180
|
accessibilityHint: "Opens team selection screen"
|
|
198
181
|
});
|
|
199
|
-
$[
|
|
200
|
-
$[
|
|
201
|
-
$[
|
|
182
|
+
$[25] = canCreateServicesConversations;
|
|
183
|
+
$[26] = handleTeamPress;
|
|
184
|
+
$[27] = t11;
|
|
202
185
|
} else {
|
|
203
|
-
|
|
186
|
+
t11 = $[27];
|
|
204
187
|
}
|
|
205
|
-
let
|
|
206
|
-
if ($[
|
|
207
|
-
|
|
188
|
+
let t12;
|
|
189
|
+
if ($[28] !== directMessagesDisabled || $[29] !== handleDirectMessagePress || $[30] !== showDirectMessageOption) {
|
|
190
|
+
t12 = showDirectMessageOption && /*#__PURE__*/_jsx(FormSheet.Action, {
|
|
208
191
|
testID: "conversation-select-type-direct-message",
|
|
209
192
|
title: "Direct message",
|
|
210
193
|
onPress: handleDirectMessagePress,
|
|
@@ -212,26 +195,27 @@ export function ConversationSelectTypeScreen(t0) {
|
|
|
212
195
|
disabledReason: directMessagesDisabled ? "Disabled in chat settings" : undefined,
|
|
213
196
|
accessibilityHint: "Opens direct message recipient selection screen"
|
|
214
197
|
});
|
|
215
|
-
$[
|
|
216
|
-
$[
|
|
217
|
-
$[
|
|
218
|
-
$[
|
|
198
|
+
$[28] = directMessagesDisabled;
|
|
199
|
+
$[29] = handleDirectMessagePress;
|
|
200
|
+
$[30] = showDirectMessageOption;
|
|
201
|
+
$[31] = t12;
|
|
219
202
|
} else {
|
|
220
|
-
|
|
203
|
+
t12 = $[31];
|
|
221
204
|
}
|
|
222
|
-
let
|
|
223
|
-
if ($[
|
|
224
|
-
|
|
225
|
-
|
|
205
|
+
let t13;
|
|
206
|
+
if ($[32] !== t10 || $[33] !== t11 || $[34] !== t12 || $[35] !== t9) {
|
|
207
|
+
t13 = /*#__PURE__*/_jsxs(FormSheet.Root, {
|
|
208
|
+
fitToContents: true,
|
|
209
|
+
children: [t8, t9, t10, t11, t12]
|
|
226
210
|
});
|
|
227
|
-
$[
|
|
228
|
-
$[
|
|
229
|
-
$[
|
|
230
|
-
$[
|
|
231
|
-
$[
|
|
211
|
+
$[32] = t10;
|
|
212
|
+
$[33] = t11;
|
|
213
|
+
$[34] = t12;
|
|
214
|
+
$[35] = t9;
|
|
215
|
+
$[36] = t13;
|
|
232
216
|
} else {
|
|
233
|
-
|
|
217
|
+
t13 = $[36];
|
|
234
218
|
}
|
|
235
|
-
return
|
|
219
|
+
return t13;
|
|
236
220
|
}
|
|
237
221
|
//# sourceMappingURL=conversation_select_type_screen.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation_select_type_screen.js","names":["useNavigation","React","useLayoutEffect","FormSheet","getFormSheetScreenOptions","useCurrentPerson","useConversationTypeAccess","Haptic","jsx","_jsx","jsxs","_jsxs","ConversationSelectTypeScreenOptions","headerTitle","ConversationSelectTypeScreen","t0","$","_c","route","navigation","canCreateGroupsConversations","canCreateServicesConversations","directMessagesDisabled","directMessagesEligible","t1","params","newConversationFromFilter","chat_group_graph_id","group_source_app_name","t2","filterParams","showDirectMessageOption","t3","t4","setOptions","sheetAllowedDetents","t5","impactLight","goBack","requestAnimationFrame","sourceAppName","navigate","screen","source_app_name","group_id","groupId","team_ids","teamIds","handleFilterPress","t6","navigateToNewConversationType","t7","handleGroupPress","t8","handleTeamPress","t9","handleDirectMessagePress","t10","Symbol","for","Header","children","HeaderTitle","t11","Action","title","name","accessibilityHint","t12","testID","t13","t14","disabledReason","undefined","t15","Root"],"sources":["../../src/screens/conversation_select_type_screen.tsx"],"sourcesContent":["import { StaticScreenProps, useNavigation } from '@react-navigation/native'\nimport React, { useLayoutEffect } from 'react'\nimport FormSheet, { getFormSheetScreenOptions } from '../components/primitive/form_sheet'\nimport { useCurrentPerson } from '../hooks/use_current_person'\nimport { useConversationTypeAccess } from '../hooks/use_new_conversation_entry'\nimport type { NewConversationFromFilter } from '../hooks/use_new_conversation_from_filter'\nimport { AppName } from '../types/resources/app_name'\nimport { GraphId } from '../types/resources/group_resource'\nimport { Haptic } from '../utils/native_adapters'\n\nexport const ConversationSelectTypeScreenOptions = getFormSheetScreenOptions({\n headerTitle: 'New conversation',\n})\n\nexport type ConversationSelectTypeScreenProps = StaticScreenProps<{\n chat_group_graph_id?: GraphId\n group_source_app_name?: AppName\n newConversationFromFilter?: NewConversationFromFilter\n}>\n\ntype NewConversationTypeScreen =\n | 'ConversationSelectGroupRecipients'\n | 'ConversationSelectTeamsILeadRecipients'\n | 'ConversationSelectDirectMessageRecipients'\n\nexport function ConversationSelectTypeScreen({ route }: ConversationSelectTypeScreenProps) {\n const navigation = useNavigation()\n const { canCreateGroupsConversations, canCreateServicesConversations } =\n useConversationTypeAccess()\n const { directMessagesDisabled, directMessagesEligible } = useCurrentPerson()\n const { newConversationFromFilter, chat_group_graph_id, group_source_app_name } =\n route.params || {}\n\n const filterParams = { chat_group_graph_id, group_source_app_name }\n const showDirectMessageOption = directMessagesEligible\n\n // sheetAllowedDetents depends on DM eligibility, which isn't known until render, so it's set\n // here instead of in the static ConversationSelectTypeScreenOptions. useLayoutEffect applies\n // it before paint so the sheet never visibly resizes after opening.\n useLayoutEffect(() => {\n navigation.setOptions({ sheetAllowedDetents: showDirectMessageOption ? [0.3] : [0.25] })\n }, [navigation, showDirectMessageOption])\n\n const handleFilterPress = () => {\n if (!newConversationFromFilter) return\n\n Haptic.impactLight()\n navigation.goBack()\n requestAnimationFrame(() => {\n if (newConversationFromFilter.sourceAppName === 'groups') {\n navigation.navigate('New', {\n screen: 'ConversationNew',\n params: {\n ...filterParams,\n source_app_name: 'Groups' as AppName,\n group_id: newConversationFromFilter.groupId,\n },\n })\n } else {\n navigation.navigate('New', {\n screen: 'ConversationNew',\n params: {\n ...filterParams,\n source_app_name: 'Services' as AppName,\n team_ids: newConversationFromFilter.teamIds,\n },\n })\n }\n })\n }\n\n const navigateToNewConversationType = (screen: NewConversationTypeScreen) => {\n Haptic.impactLight()\n navigation.goBack()\n requestAnimationFrame(() => navigation.navigate('New', { screen, params: filterParams }))\n }\n\n const handleGroupPress = () => navigateToNewConversationType('ConversationSelectGroupRecipients')\n const handleTeamPress = () =>\n navigateToNewConversationType('ConversationSelectTeamsILeadRecipients')\n const handleDirectMessagePress = () =>\n navigateToNewConversationType('ConversationSelectDirectMessageRecipients')\n\n return (\n <FormSheet.Root>\n <FormSheet.Header>\n <FormSheet.HeaderTitle>Start a conversation by</FormSheet.HeaderTitle>\n </FormSheet.Header>\n {newConversationFromFilter && (\n <FormSheet.Action\n title={`New conversation in ${newConversationFromFilter.name}`}\n onPress={handleFilterPress}\n accessibilityHint=\"Creates a conversation pre-scoped to the current filter\"\n />\n )}\n {canCreateGroupsConversations && (\n <FormSheet.Action\n testID=\"conversation-select-type-group\"\n title=\"Group\"\n onPress={handleGroupPress}\n accessibilityHint=\"Opens group selection screen\"\n />\n )}\n {canCreateServicesConversations && (\n <FormSheet.Action\n testID=\"conversation-select-type-team\"\n title=\"Team\"\n onPress={handleTeamPress}\n accessibilityHint=\"Opens team selection screen\"\n />\n )}\n {showDirectMessageOption && (\n <FormSheet.Action\n testID=\"conversation-select-type-direct-message\"\n title=\"Direct message\"\n onPress={handleDirectMessagePress}\n disabled={directMessagesDisabled}\n disabledReason={directMessagesDisabled ? 'Disabled in chat settings' : undefined}\n accessibilityHint=\"Opens direct message recipient selection screen\"\n />\n )}\n </FormSheet.Root>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"conversation_select_type_screen.js","names":["useNavigation","React","FormSheet","getFormSheetScreenOptions","useCurrentPerson","useConversationTypeAccess","Haptic","jsx","_jsx","jsxs","_jsxs","ConversationSelectTypeScreenOptions","headerTitle","sheetAllowedDetents","ConversationSelectTypeScreen","t0","$","_c","route","navigation","canCreateGroupsConversations","canCreateServicesConversations","directMessagesDisabled","directMessagesEligible","t1","params","newConversationFromFilter","chat_group_graph_id","group_source_app_name","t2","filterParams","showDirectMessageOption","t3","impactLight","goBack","requestAnimationFrame","sourceAppName","navigate","screen","source_app_name","group_id","groupId","team_ids","teamIds","handleFilterPress","t4","navigateToNewConversationType","t5","handleGroupPress","t6","handleTeamPress","t7","handleDirectMessagePress","t8","Symbol","for","Header","children","HeaderTitle","t9","Action","title","name","accessibilityHint","t10","testID","t11","t12","disabledReason","undefined","t13","Root","fitToContents"],"sources":["../../src/screens/conversation_select_type_screen.tsx"],"sourcesContent":["import { StaticScreenProps, useNavigation } from '@react-navigation/native'\nimport React from 'react'\nimport FormSheet, { getFormSheetScreenOptions } from '../components/primitive/form_sheet'\nimport { useCurrentPerson } from '../hooks/use_current_person'\nimport { useConversationTypeAccess } from '../hooks/use_new_conversation_entry'\nimport type { NewConversationFromFilter } from '../hooks/use_new_conversation_from_filter'\nimport { AppName } from '../types/resources/app_name'\nimport { GraphId } from '../types/resources/group_resource'\nimport { Haptic } from '../utils/native_adapters'\n\nexport const ConversationSelectTypeScreenOptions = getFormSheetScreenOptions({\n headerTitle: 'New conversation',\n sheetAllowedDetents: 'fitToContents',\n})\n\nexport type ConversationSelectTypeScreenProps = StaticScreenProps<{\n chat_group_graph_id?: GraphId\n group_source_app_name?: AppName\n newConversationFromFilter?: NewConversationFromFilter\n}>\n\ntype NewConversationTypeScreen =\n | 'ConversationSelectGroupRecipients'\n | 'ConversationSelectTeamsILeadRecipients'\n | 'ConversationSelectDirectMessageRecipients'\n\nexport function ConversationSelectTypeScreen({ route }: ConversationSelectTypeScreenProps) {\n const navigation = useNavigation()\n const { canCreateGroupsConversations, canCreateServicesConversations } =\n useConversationTypeAccess()\n const { directMessagesDisabled, directMessagesEligible } = useCurrentPerson()\n const { newConversationFromFilter, chat_group_graph_id, group_source_app_name } =\n route.params || {}\n\n const filterParams = { chat_group_graph_id, group_source_app_name }\n const showDirectMessageOption = directMessagesEligible\n\n const handleFilterPress = () => {\n if (!newConversationFromFilter) return\n\n Haptic.impactLight()\n navigation.goBack()\n requestAnimationFrame(() => {\n if (newConversationFromFilter.sourceAppName === 'groups') {\n navigation.navigate('New', {\n screen: 'ConversationNew',\n params: {\n ...filterParams,\n source_app_name: 'Groups' as AppName,\n group_id: newConversationFromFilter.groupId,\n },\n })\n } else {\n navigation.navigate('New', {\n screen: 'ConversationNew',\n params: {\n ...filterParams,\n source_app_name: 'Services' as AppName,\n team_ids: newConversationFromFilter.teamIds,\n },\n })\n }\n })\n }\n\n const navigateToNewConversationType = (screen: NewConversationTypeScreen) => {\n Haptic.impactLight()\n navigation.goBack()\n requestAnimationFrame(() => navigation.navigate('New', { screen, params: filterParams }))\n }\n\n const handleGroupPress = () => navigateToNewConversationType('ConversationSelectGroupRecipients')\n const handleTeamPress = () =>\n navigateToNewConversationType('ConversationSelectTeamsILeadRecipients')\n const handleDirectMessagePress = () =>\n navigateToNewConversationType('ConversationSelectDirectMessageRecipients')\n\n return (\n <FormSheet.Root fitToContents>\n <FormSheet.Header>\n <FormSheet.HeaderTitle>Start a conversation by</FormSheet.HeaderTitle>\n </FormSheet.Header>\n {newConversationFromFilter && (\n <FormSheet.Action\n title={`New conversation in ${newConversationFromFilter.name}`}\n onPress={handleFilterPress}\n accessibilityHint=\"Creates a conversation pre-scoped to the current filter\"\n />\n )}\n {canCreateGroupsConversations && (\n <FormSheet.Action\n testID=\"conversation-select-type-group\"\n title=\"Group\"\n onPress={handleGroupPress}\n accessibilityHint=\"Opens group selection screen\"\n />\n )}\n {canCreateServicesConversations && (\n <FormSheet.Action\n testID=\"conversation-select-type-team\"\n title=\"Team\"\n onPress={handleTeamPress}\n accessibilityHint=\"Opens team selection screen\"\n />\n )}\n {showDirectMessageOption && (\n <FormSheet.Action\n testID=\"conversation-select-type-direct-message\"\n title=\"Direct message\"\n onPress={handleDirectMessagePress}\n disabled={directMessagesDisabled}\n disabledReason={directMessagesDisabled ? 'Disabled in chat settings' : undefined}\n accessibilityHint=\"Opens direct message recipient selection screen\"\n />\n )}\n </FormSheet.Root>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@planningcenter/chat-react-native",
|
|
3
|
-
"version": "4.0.1-rc.
|
|
3
|
+
"version": "4.0.1-rc.1",
|
|
4
4
|
"description": "",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -84,5 +84,5 @@
|
|
|
84
84
|
"sf-symbols-typescript": "^2.2.0",
|
|
85
85
|
"typescript": "~6.0.3"
|
|
86
86
|
},
|
|
87
|
-
"gitHead": "
|
|
87
|
+
"gitHead": "fa30b4ca64df403ad4e1f307404547528b3b8014"
|
|
88
88
|
}
|
|
@@ -85,6 +85,7 @@ interface FormSheetRootProps {
|
|
|
85
85
|
style?: StyleProp<ViewStyle>
|
|
86
86
|
contentStyle?: StyleProp<ViewStyle>
|
|
87
87
|
showAndroidSheetGrabber?: boolean
|
|
88
|
+
fitToContents?: boolean
|
|
88
89
|
}
|
|
89
90
|
|
|
90
91
|
export function FormSheetRoot({
|
|
@@ -92,8 +93,9 @@ export function FormSheetRoot({
|
|
|
92
93
|
style,
|
|
93
94
|
contentStyle,
|
|
94
95
|
showAndroidSheetGrabber = true,
|
|
96
|
+
fitToContents = false,
|
|
95
97
|
}: FormSheetRootProps) {
|
|
96
|
-
const styles = useStyles()
|
|
98
|
+
const styles = useStyles({ fitToContents })
|
|
97
99
|
|
|
98
100
|
return (
|
|
99
101
|
<View style={[styles.container, style]} collapsable={false}>
|
|
@@ -298,16 +300,21 @@ FormSheetAction.displayName = 'FormSheet.Action'
|
|
|
298
300
|
interface Styles {
|
|
299
301
|
appearance?: FormSheetActionAppearanceUnion
|
|
300
302
|
disabled?: boolean
|
|
303
|
+
fitToContents?: boolean
|
|
301
304
|
}
|
|
302
305
|
|
|
303
|
-
const useStyles = ({
|
|
306
|
+
const useStyles = ({
|
|
307
|
+
appearance = 'neutral',
|
|
308
|
+
disabled = false,
|
|
309
|
+
fitToContents = false,
|
|
310
|
+
}: Styles = {}) => {
|
|
304
311
|
const { colors } = useTheme()
|
|
305
312
|
const { height } = useWindowDimensions()
|
|
306
313
|
const { bottom, top } = useSafeAreaInsets()
|
|
307
314
|
const headerHeight = useHeaderHeight()
|
|
308
315
|
|
|
309
316
|
const containerHeight = Platform.select({
|
|
310
|
-
ios: height - top - headerHeight,
|
|
317
|
+
ios: fitToContents ? undefined : height - top - headerHeight,
|
|
311
318
|
default: null,
|
|
312
319
|
})
|
|
313
320
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { StaticScreenProps, useNavigation } from '@react-navigation/native'
|
|
2
|
-
import React
|
|
2
|
+
import React from 'react'
|
|
3
3
|
import FormSheet, { getFormSheetScreenOptions } from '../components/primitive/form_sheet'
|
|
4
4
|
import { useCurrentPerson } from '../hooks/use_current_person'
|
|
5
5
|
import { useConversationTypeAccess } from '../hooks/use_new_conversation_entry'
|
|
@@ -10,6 +10,7 @@ import { Haptic } from '../utils/native_adapters'
|
|
|
10
10
|
|
|
11
11
|
export const ConversationSelectTypeScreenOptions = getFormSheetScreenOptions({
|
|
12
12
|
headerTitle: 'New conversation',
|
|
13
|
+
sheetAllowedDetents: 'fitToContents',
|
|
13
14
|
})
|
|
14
15
|
|
|
15
16
|
export type ConversationSelectTypeScreenProps = StaticScreenProps<{
|
|
@@ -34,13 +35,6 @@ export function ConversationSelectTypeScreen({ route }: ConversationSelectTypeSc
|
|
|
34
35
|
const filterParams = { chat_group_graph_id, group_source_app_name }
|
|
35
36
|
const showDirectMessageOption = directMessagesEligible
|
|
36
37
|
|
|
37
|
-
// sheetAllowedDetents depends on DM eligibility, which isn't known until render, so it's set
|
|
38
|
-
// here instead of in the static ConversationSelectTypeScreenOptions. useLayoutEffect applies
|
|
39
|
-
// it before paint so the sheet never visibly resizes after opening.
|
|
40
|
-
useLayoutEffect(() => {
|
|
41
|
-
navigation.setOptions({ sheetAllowedDetents: showDirectMessageOption ? [0.3] : [0.25] })
|
|
42
|
-
}, [navigation, showDirectMessageOption])
|
|
43
|
-
|
|
44
38
|
const handleFilterPress = () => {
|
|
45
39
|
if (!newConversationFromFilter) return
|
|
46
40
|
|
|
@@ -82,7 +76,7 @@ export function ConversationSelectTypeScreen({ route }: ConversationSelectTypeSc
|
|
|
82
76
|
navigateToNewConversationType('ConversationSelectDirectMessageRecipients')
|
|
83
77
|
|
|
84
78
|
return (
|
|
85
|
-
<FormSheet.Root>
|
|
79
|
+
<FormSheet.Root fitToContents>
|
|
86
80
|
<FormSheet.Header>
|
|
87
81
|
<FormSheet.HeaderTitle>Start a conversation by</FormSheet.HeaderTitle>
|
|
88
82
|
</FormSheet.Header>
|