ferns-ui 0.26.0 → 0.26.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.
Files changed (67) hide show
  1. package/dist/ActionSheet.d.ts +1 -1
  2. package/dist/ActionSheet.js +1 -2
  3. package/dist/ActionSheet.js.map +1 -1
  4. package/dist/CheckBox.d.ts +1 -4
  5. package/dist/CheckBox.js +33 -20
  6. package/dist/CheckBox.js.map +1 -1
  7. package/dist/Common.d.ts +44 -10
  8. package/dist/Common.js.map +1 -1
  9. package/dist/DateTimeField.android.d.ts +1 -1
  10. package/dist/DateTimeField.android.js +58 -16
  11. package/dist/DateTimeField.android.js.map +1 -1
  12. package/dist/DateTimeField.d.ts +2 -2
  13. package/dist/DateTimeField.ios.d.ts +1 -1
  14. package/dist/DateTimeField.ios.js +43 -12
  15. package/dist/DateTimeField.ios.js.map +1 -1
  16. package/dist/DateTimeField.js.map +1 -1
  17. package/dist/Field.js +2 -2
  18. package/dist/Field.js.map +1 -1
  19. package/dist/Mask.d.ts +2 -3
  20. package/dist/MediaQuery.d.ts +1 -0
  21. package/dist/MediaQuery.js +16 -0
  22. package/dist/MediaQuery.js.map +1 -1
  23. package/dist/Page.js.map +1 -1
  24. package/dist/SegmentedControl.js +6 -2
  25. package/dist/SegmentedControl.js.map +1 -1
  26. package/dist/SelectList.d.ts +1 -1
  27. package/dist/SelectList.js +9 -8
  28. package/dist/SelectList.js.map +1 -1
  29. package/dist/SplitPage.d.ts +3 -21
  30. package/dist/SplitPage.js +78 -23
  31. package/dist/SplitPage.js.map +1 -1
  32. package/dist/SplitPage.native.d.ts +3 -0
  33. package/dist/SplitPage.native.js +75 -0
  34. package/dist/SplitPage.native.js.map +1 -0
  35. package/dist/TapToEdit.js +11 -17
  36. package/dist/TapToEdit.js.map +1 -1
  37. package/dist/TextField.js +11 -6
  38. package/dist/TextField.js.map +1 -1
  39. package/dist/Utilities.d.ts +1 -0
  40. package/dist/Utilities.js +18 -2
  41. package/dist/Utilities.js.map +1 -1
  42. package/dist/WithLabel.d.ts +3 -3
  43. package/dist/WithLabel.js +3 -0
  44. package/dist/WithLabel.js.map +1 -1
  45. package/dist/index.d.ts +5 -4
  46. package/dist/index.js +1 -0
  47. package/dist/index.js.map +1 -1
  48. package/package.json +2 -1
  49. package/src/ActionSheet.tsx +2 -3
  50. package/src/CheckBox.tsx +85 -60
  51. package/src/Common.ts +49 -10
  52. package/src/DateTimeField.android.tsx +71 -26
  53. package/src/DateTimeField.ios.tsx +55 -13
  54. package/src/DateTimeField.tsx +2 -2
  55. package/src/Field.tsx +4 -4
  56. package/src/Mask.tsx +2 -2
  57. package/src/MediaQuery.ts +14 -0
  58. package/src/Page.tsx +0 -1
  59. package/src/SegmentedControl.tsx +3 -3
  60. package/src/SelectList.tsx +9 -2
  61. package/src/SplitPage.native.tsx +156 -0
  62. package/src/SplitPage.tsx +136 -47
  63. package/src/TapToEdit.tsx +9 -22
  64. package/src/TextField.tsx +26 -17
  65. package/src/Utilities.tsx +24 -3
  66. package/src/WithLabel.tsx +6 -3
  67. package/src/index.tsx +6 -5
@@ -30,4 +30,20 @@ export function mediaQueryLargerThan(size) {
30
30
  }
31
31
  return false;
32
32
  }
33
+ export function mediaQuerySmallerThan(size) {
34
+ const media = mediaQuery();
35
+ if (size === "lg") {
36
+ return true;
37
+ }
38
+ else if (size === "md") {
39
+ return ["xs", "sm", "md"].includes(media);
40
+ }
41
+ else if (size === "sm") {
42
+ return ["xs", "sm"].includes(media);
43
+ }
44
+ else if (size === "xs") {
45
+ return ["xs"].includes(media);
46
+ }
47
+ return false;
48
+ }
33
49
  //# sourceMappingURL=MediaQuery.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MediaQuery.js","sourceRoot":"","sources":["../src/MediaQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,UAAU,UAAU;IACxB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;IAC7C,IAAI,KAAK,GAAG,GAAG,EAAE;QACf,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,KAAK,GAAG,GAAG,EAAE;QACtB,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,KAAK,GAAG,IAAI,EAAE;QACvB,OAAO,IAAI,CAAC;KACb;SAAM;QACL,OAAO,IAAI,CAAC;KACb;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAA+B;IAClE,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAC3B,IAAI,IAAI,KAAK,IAAI,EAAE;QACjB,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KAC3C;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KACrC;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KAC/B;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"MediaQuery.js","sourceRoot":"","sources":["../src/MediaQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,UAAU,UAAU;IACxB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;IAC7C,IAAI,KAAK,GAAG,GAAG,EAAE;QACf,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,KAAK,GAAG,GAAG,EAAE;QACtB,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,KAAK,GAAG,IAAI,EAAE;QACvB,OAAO,IAAI,CAAC;KACb;SAAM;QACL,OAAO,IAAI,CAAC;KACb;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAA+B;IAClE,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAC3B,IAAI,IAAI,KAAK,IAAI,EAAE;QACjB,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KAC3C;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KACrC;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KAC/B;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAA+B;IACnE,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAC3B,IAAI,IAAI,KAAK,IAAI,EAAE;QACjB,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KAC3C;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KACrC;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KAC/B;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
package/dist/Page.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Page.js","sourceRoot":"","sources":["../src/Page.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Page.js","sourceRoot":"","sources":["../src/Page.tsx"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ export const SegmentedControl = ({ items, onChange = () => { }, selectedItemInde
15
15
  return null;
16
16
  }
17
17
  if (!multiselect && (selectedItemIndexes === null || selectedItemIndexes === void 0 ? void 0 : selectedItemIndexes.length) && (selectedItemIndexes === null || selectedItemIndexes === void 0 ? void 0 : selectedItemIndexes.length) > 1) {
18
- console.warn("Muliple selections not allowed without multiselect flag");
18
+ console.warn("Multiple selections not allowed without multiselect flag");
19
19
  return null;
20
20
  }
21
21
  if ((selectedItemIndexes === null || selectedItemIndexes === void 0 ? void 0 : selectedItemIndexes.length) && (selectedItemIndexes === null || selectedItemIndexes === void 0 ? void 0 : selectedItemIndexes.length) > selectLimit) {
@@ -27,7 +27,11 @@ export const SegmentedControl = ({ items, onChange = () => { }, selectedItemInde
27
27
  ? "white"
28
28
  : "lightGray";
29
29
  };
30
- return (React.createElement(Box, { color: "lightGray", direction: "row", display: "flex", height: 40, justifyContent: "between", padding: 1, rounding: 3, width: "100%" }, items.map((item, index) => (React.createElement(Box, { key: index, color: isTabActive(index), height: "100%", paddingX: 2, rounding: 3, width: `${100 / items.length}%` },
30
+ return (React.createElement(Box, { color: "lightGray", direction: "row", display: "flex", height: 40, justifyContent: "between",
31
+ // padding={1}
32
+ rounding: 3, width: "100%" }, items.map((item, index) => (React.createElement(Box, { key: index, color: isTabActive(index), height: "100%",
33
+ // paddingX={2}
34
+ rounding: 3, width: `${100 / items.length}%` },
31
35
  React.createElement(Box, { alignItems: "center", display: "flex", height: "100%", justifyContent: "center", width: "100%", onClick: () => {
32
36
  if ((selectedItemIndexes === null || selectedItemIndexes === void 0 ? void 0 : selectedItemIndexes.length) === selectLimit &&
33
37
  !(selectedItemIndexes === null || selectedItemIndexes === void 0 ? void 0 : selectedItemIndexes.includes(index))) {
@@ -1 +1 @@
1
- {"version":3,"file":"SegmentedControl.js","sourceRoot":"","sources":["../src/SegmentedControl.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SegmentedControl.js","sourceRoot":"","sources":["../src/SegmentedControl.tsx"],"names":[],"mappings":"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"}
@@ -15,4 +15,4 @@ export interface SelectListProps extends FieldWithLabelsProps {
15
15
  placeholder?: string;
16
16
  style?: StyleProp;
17
17
  }
18
- export declare function SelectList({ options, value, onChange, label, labelColor, style, placeholder, }: SelectListProps): JSX.Element;
18
+ export declare function SelectList({ options, value, onChange, label, labelColor, style, placeholder, disabled, }: SelectListProps): JSX.Element;
@@ -4,16 +4,17 @@ import { Icon } from "./Icon";
4
4
  import { RNPickerSelect } from "./PickerSelect";
5
5
  import { Unifier } from "./Unifier";
6
6
  import { WithLabel } from "./WithLabel";
7
- export function SelectList({ options, value, onChange, label, labelColor, style, placeholder, }) {
7
+ export function SelectList({ options, value, onChange, label, labelColor, style, placeholder, disabled, }) {
8
8
  const withLabelProps = { label, labelColor };
9
+ let backgroundColor = (style === null || style === void 0 ? void 0 : style.backgroundColor) || Unifier.theme.white;
10
+ if (disabled) {
11
+ backgroundColor = Unifier.theme.lightGray;
12
+ }
9
13
  return (React.createElement(WithLabel, Object.assign({}, withLabelProps),
10
- React.createElement(RNPickerSelect
11
- // Icon only needed for iOs, web and android use default icons
12
- , {
13
- // Icon only needed for iOs, web and android use default icons
14
- Icon: () => {
14
+ React.createElement(RNPickerSelect, { Icon: () => {
15
+ // Icon only needed for iOS, web and android use default icons
15
16
  return Platform.OS === "ios" ? (React.createElement(Icon, { color: "darkGray", name: "angle-down", size: "md" })) : null;
16
- }, items: options, placeholder: placeholder ? { label: placeholder, value: "" } : {}, style: {
17
+ }, disabled: disabled, items: options, placeholder: placeholder ? { label: placeholder, value: "" } : {}, style: {
17
18
  viewContainer: {
18
19
  flexDirection: (style === null || style === void 0 ? void 0 : style.flexDirection) || "row",
19
20
  justifyContent: (style === null || style === void 0 ? void 0 : style.justifyContent) || "center",
@@ -23,7 +24,7 @@ export function SelectList({ options, value, onChange, label, labelColor, style,
23
24
  borderColor: (style === null || style === void 0 ? void 0 : style.borderColor) || Unifier.theme.gray,
24
25
  borderWidth: (style === null || style === void 0 ? void 0 : style.borderWidth) || 1,
25
26
  borderRadius: (style === null || style === void 0 ? void 0 : style.borderRadius) || 5,
26
- backgroundColor: (style === null || style === void 0 ? void 0 : style.backgroundColor) || Unifier.theme.white,
27
+ backgroundColor,
27
28
  },
28
29
  inputIOS: {
29
30
  paddingVertical: 12,
@@ -1 +1 @@
1
- {"version":3,"file":"SelectList.js","sourceRoot":"","sources":["../src/SelectList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,QAAQ,EAAC,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAC,cAAc,EAAC,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AAiBtC,MAAM,UAAU,UAAU,CAAC,EACzB,OAAO,EACP,KAAK,EACL,QAAQ,EACR,KAAK,EACL,UAAU,EACV,KAAK,EACL,WAAW,GACK;IAChB,MAAM,cAAc,GAAG,EAAC,KAAK,EAAE,UAAU,EAAC,CAAC;IAE3C,OAAO,CACL,oBAAC,SAAS,oBAAK,cAAc;QAC3B,oBAAC,cAAc;QACb,8DAA8D;;YAA9D,8DAA8D;YAC9D,IAAI,EAAE,GAAG,EAAE;gBACT,OAAO,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAC7B,oBAAC,IAAI,IAAC,KAAK,EAAC,UAAU,EAAC,IAAI,EAAC,YAAY,EAAC,IAAI,EAAC,IAAI,GAAG,CACtD,CAAC,CAAC,CAAC,IAAI,CAAC;YACX,CAAC,EACD,KAAK,EAAE,OAAO,EACd,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,EAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,EAAC,CAAC,CAAC,CAAC,EAAE,EAC/D,KAAK,EAAE;gBACL,aAAa,EAAE;oBACb,aAAa,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,KAAI,KAAK;oBAC5C,cAAc,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,KAAI,QAAQ;oBACjD,UAAU,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,UAAU,KAAI,QAAQ;oBACzC,SAAS,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS,KAAI,EAAE;oBACjC,KAAK,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,KAAI,MAAM;oBAC7B,WAAW,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,KAAI,OAAO,CAAC,KAAK,CAAC,IAAI;oBACrD,WAAW,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,KAAI,CAAC;oBACpC,YAAY,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,KAAI,CAAC;oBACtC,eAAe,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,KAAI,OAAO,CAAC,KAAK,CAAC,KAAK;iBAC/D;gBACD,QAAQ,EAAE;oBACR,eAAe,EAAE,EAAE;oBACnB,iBAAiB,EAAE,EAAE;oBACrB,YAAY,EAAE,EAAE;iBACjB;gBACD,aAAa,EAAE;oBACb,GAAG,EAAE,EAAE;oBACP,KAAK,EAAE,EAAE;oBACT,MAAM,EAAE,EAAE;oBACV,WAAW,EAAE,EAAE;iBAChB;gBACD,QAAQ,EAAE;oBACR,oDAAoD;oBACpD,iBAAiB,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,iBAAiB,KAAI,CAAC;oBAChD,eAAe,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,KAAI,CAAC;oBAC5C,YAAY,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,KAAI,CAAC;iBACvC;aACF,EACD,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,QAAQ,GACvB,CACQ,CACb,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"SelectList.js","sourceRoot":"","sources":["../src/SelectList.tsx"],"names":[],"mappings":"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"}
@@ -1,21 +1,3 @@
1
- import { ReactChild, ReactElement } from "react";
2
- import { ListRenderItemInfo } from "react-native";
3
- import { Color } from "./Common";
4
- interface SplitPageProps {
5
- children?: ReactChild | ReactChild[] | null;
6
- tabs?: string[];
7
- navigation?: any;
8
- loading?: boolean;
9
- color?: Color;
10
- keyboardOffset?: number;
11
- renderListViewItem: (itemInfo: ListRenderItemInfo<any>) => ReactElement | null;
12
- renderListViewHeader?: () => ReactElement | null;
13
- renderContent?: (index?: number) => ReactElement | ReactElement[] | null;
14
- listViewData: any[];
15
- listViewExtraData?: any;
16
- listViewWidth?: number;
17
- renderChild?: () => ReactChild;
18
- selectLimit?: number;
19
- }
20
- export declare const SplitPage: ({ children, tabs, loading, color, keyboardOffset, renderListViewItem, renderListViewHeader, renderContent, listViewData, listViewExtraData, listViewWidth, selectLimit, }: SplitPageProps) => JSX.Element | null;
21
- export {};
1
+ /// <reference types="react" />
2
+ import { SplitPageProps } from "./Common";
3
+ export declare const SplitPage: ({ children, tabs, loading, color, keyboardOffset, renderListViewItem, renderListViewHeader, renderContent, onSelectionChange, listViewData, listViewExtraData, listViewWidth, bottomNavBarHeight, showItemList, selectLimit, }: SplitPageProps) => JSX.Element | null;
package/dist/SplitPage.js CHANGED
@@ -1,7 +1,7 @@
1
- import React, { Children, useState } from "react";
2
- import { ScrollView, View } from "react-native";
1
+ import React, { Children, useCallback, useEffect, useState } from "react";
2
+ import { Dimensions, ScrollView, View } from "react-native";
3
+ import { SwiperFlatList } from "react-native-swiper-flatlist";
3
4
  import { Box } from "./Box";
4
- import { SPACING } from "./Common";
5
5
  import { FlatList } from "./FlatList";
6
6
  import { IconButton } from "./IconButton";
7
7
  import { mediaQueryLargerThan } from "./MediaQuery";
@@ -10,10 +10,25 @@ import { Spinner } from "./Spinner";
10
10
  import { Unifier } from "./Unifier";
11
11
  // A component for rendering a list on one side and a details view on the right for large screens,
12
12
  // and a scrollable list where clicking an item takes you the details view.
13
- export const SplitPage = ({ children, tabs = [], loading = false, color, keyboardOffset, renderListViewItem, renderListViewHeader, renderContent, listViewData, listViewExtraData, listViewWidth, selectLimit, }) => {
13
+ export const SplitPage = ({ children, tabs = [], loading = false, color, keyboardOffset, renderListViewItem, renderListViewHeader, renderContent, onSelectionChange = () => { }, listViewData, listViewExtraData, listViewWidth, bottomNavBarHeight, showItemList, selectLimit, }) => {
14
14
  const [selectedId, setSelectedId] = useState(undefined);
15
15
  const [activeTabs, setActiveTabs] = useState(tabs.length > 2 ? [0, 1] : []);
16
+ const { width } = Dimensions.get("window");
17
+ const isMobileDevice = !mediaQueryLargerThan("sm");
16
18
  const elementArray = Children.toArray(children);
19
+ const onItemSelect = useCallback((item) => {
20
+ setSelectedId(item.index);
21
+ onSelectionChange(item);
22
+ }, [onSelectionChange]);
23
+ const onItemDeselect = useCallback(() => {
24
+ setSelectedId(undefined);
25
+ onSelectionChange(undefined);
26
+ }, [onSelectionChange]);
27
+ useEffect(() => {
28
+ if (showItemList) {
29
+ onItemDeselect();
30
+ }
31
+ }, [showItemList, onItemDeselect]);
17
32
  if (!children && !renderContent) {
18
33
  console.warn("A child node is required");
19
34
  return null;
@@ -24,31 +39,23 @@ export const SplitPage = ({ children, tabs = [], loading = false, color, keyboar
24
39
  }
25
40
  const renderItem = (itemInfo) => {
26
41
  return (React.createElement(Box, { onClick: () => {
27
- setSelectedId(itemInfo.index);
42
+ onItemSelect(itemInfo);
28
43
  } }, renderListViewItem(itemInfo)));
29
44
  };
30
45
  const renderList = () => {
31
- if (!mediaQueryLargerThan("sm") && selectedId) {
32
- return null;
33
- }
34
46
  return (React.createElement(View, { style: {
35
- width: mediaQueryLargerThan("sm") ? listViewWidth !== null && listViewWidth !== void 0 ? listViewWidth : 300 : "100%",
36
- maxWidth: mediaQueryLargerThan("sm") ? listViewWidth !== null && listViewWidth !== void 0 ? listViewWidth : 300 : "100%",
47
+ width: listViewWidth !== null && listViewWidth !== void 0 ? listViewWidth : 300,
48
+ maxWidth: listViewWidth !== null && listViewWidth !== void 0 ? listViewWidth : 300,
37
49
  flexGrow: 1,
38
50
  flexShrink: 0,
39
51
  display: "flex",
40
- paddingTop: "12px",
41
- paddingBottom: "12px",
42
52
  flexDirection: "column",
43
53
  } },
44
54
  renderListViewHeader && renderListViewHeader(),
45
55
  React.createElement(FlatList, { data: listViewData, extraData: listViewExtraData, keyExtractor: (item) => item.id, renderItem: renderItem })));
46
56
  };
47
57
  const renderListContent = () => {
48
- return (React.createElement(Box, { flex: "grow", padding: 2 },
49
- !mediaQueryLargerThan("sm") && (React.createElement(Box, { width: "100%" },
50
- React.createElement(IconButton, { accessibilityLabel: "close", icon: "times", iconColor: "darkGray", onClick: () => setSelectedId(undefined) }))),
51
- renderContent && renderContent(selectedId)));
58
+ return (React.createElement(Box, { flex: "grow", padding: 2 }, renderContent && renderContent(selectedId)));
52
59
  };
53
60
  const renderChildrenContent = () => {
54
61
  if (Array.isArray(children) && children.length > 2) {
@@ -58,18 +65,19 @@ export const SplitPage = ({ children, tabs = [], loading = false, color, keyboar
58
65
  height: "100%",
59
66
  alignItems: "center",
60
67
  } },
61
- React.createElement(Box, { paddingX: 4, paddingY: 2, width: "100%" },
68
+ React.createElement(Box, { marginBottom: 4, paddingX: 4, width: "100%" },
62
69
  React.createElement(SegmentedControl, { items: tabs, multiselect: true, selectLimit: selectLimit || tabs.length, selectedItemIndexes: activeTabs, onChange: (index) => {
63
70
  setActiveTabs([...index.activeIndex]);
64
71
  } })),
65
- React.createElement(Box, { direction: "row", flex: "grow", height: "100%", paddingX: 2, width: activeTabs.length > 1 ? "100%" : "60%" }, activeTabs.map((tabIndex) => {
72
+ React.createElement(Box, { direction: "row", flex: "grow", height: "100%", paddingX: 4, width: activeTabs.length > 1 ? "100%" : "60%" }, activeTabs.map((tabIndex, i) => {
66
73
  return (React.createElement(ScrollView, { key: tabIndex, contentContainerStyle: {
67
74
  flex: 1,
68
75
  }, style: {
69
76
  flex: 1,
70
77
  width: "60%",
71
- padding: 3 * SPACING,
72
78
  height: "100%",
79
+ paddingRight: i ? 0 : 16,
80
+ paddingLeft: i ? 16 : 0,
73
81
  } }, elementArray[tabIndex]));
74
82
  }))));
75
83
  }
@@ -80,15 +88,62 @@ export const SplitPage = ({ children, tabs = [], loading = false, color, keyboar
80
88
  }, style: {
81
89
  flex: 1,
82
90
  width: "60%",
83
- padding: 3 * SPACING,
84
91
  height: "100%",
85
92
  } }, element));
86
93
  })));
87
94
  }
88
95
  };
89
- return (React.createElement(Box, { avoidKeyboard: true, color: color || "lightGray", direction: "row", display: "flex", flex: "grow", height: "100%", keyboardOffset: keyboardOffset, padding: 2, width: "100%" },
96
+ const renderMobileList = () => {
97
+ if (isMobileDevice && selectedId !== undefined) {
98
+ return null;
99
+ }
100
+ return (React.createElement(View, { style: {
101
+ width: "100%",
102
+ maxWidth: "100%",
103
+ height: "100%",
104
+ flexGrow: 1,
105
+ flexShrink: 0,
106
+ display: "flex",
107
+ flexDirection: "column",
108
+ } },
109
+ renderListViewHeader && renderListViewHeader(),
110
+ React.createElement(FlatList, { data: listViewData, extraData: listViewExtraData, keyExtractor: (item) => item.id, nestedScrollEnabled: true, renderItem: renderItem })));
111
+ };
112
+ const renderMobileListContent = () => {
113
+ if (isMobileDevice && selectedId === undefined) {
114
+ return null;
115
+ }
116
+ return (React.createElement(Box, { flex: "grow", padding: 2 },
117
+ isMobileDevice && (React.createElement(Box, { width: "100%" },
118
+ React.createElement(IconButton, { accessibilityLabel: "close", icon: "times", iconColor: "darkGray", onClick: () => onItemDeselect() }))),
119
+ renderContent && renderContent(selectedId)));
120
+ };
121
+ const renderMobileChildrenContent = () => {
122
+ if (selectedId === undefined) {
123
+ return null;
124
+ }
125
+ return (React.createElement(SwiperFlatList, { nestedScrollEnabled: true, paginationStyle: { justifyContent: "center", width: "95%" }, renderAll: true, showPagination: true, style: { width: "100%" } }, elementArray.map((element, i) => {
126
+ return (React.createElement(View, { key: i, style: {
127
+ width: width - 8,
128
+ padding: 4,
129
+ height: elementArray.length > 1 ? "90vh" : "100vh",
130
+ paddingBottom: bottomNavBarHeight,
131
+ } }, element));
132
+ })));
133
+ };
134
+ const renderSplitPage = () => {
135
+ return (React.createElement(React.Fragment, null,
136
+ renderList(),
137
+ renderContent ? renderListContent() : renderChildrenContent()));
138
+ };
139
+ const renderMobileSplitPage = () => {
140
+ const renderMainContent = renderContent
141
+ ? renderMobileListContent()
142
+ : renderMobileChildrenContent();
143
+ return selectedId === undefined ? renderMobileList() : renderMainContent;
144
+ };
145
+ return (React.createElement(Box, { avoidKeyboard: true, color: color || "lightGray", direction: "row", display: "flex", height: "100%", keyboardOffset: keyboardOffset, padding: 2, width: "100%" },
90
146
  loading === true && React.createElement(Spinner, { color: Unifier.theme.darkGray, size: "md" }),
91
- renderList(),
92
- renderContent ? renderListContent() : renderChildrenContent()));
147
+ Boolean(isMobileDevice) ? renderMobileSplitPage() : renderSplitPage()));
93
148
  };
94
149
  //# sourceMappingURL=SplitPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SplitPage.js","sourceRoot":"","sources":["../src/SplitPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,QAAQ,EAA4B,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC1E,OAAO,EAAqB,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAElE,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAQ,OAAO,EAAC,MAAM,UAAU,CAAC;AACxC,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,oBAAoB,EAAC,MAAM,cAAc,CAAC;AAClD,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAoBlC,kGAAkG;AAClG,2EAA2E;AAC3E,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EACxB,QAAQ,EACR,IAAI,GAAG,EAAE,EACT,OAAO,GAAG,KAAK,EACf,KAAK,EACL,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,WAAW,GACI,EAAE,EAAE;IACnB,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAqB,SAAS,CAAC,CAAC;IAC5E,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAW,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEtF,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEhD,IAAI,CAAC,QAAQ,IAAI,CAAC,aAAa,EAAE;QAC/B,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;KACb;IAED,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE;QAC5E,OAAO,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC;KACb;IAED,MAAM,UAAU,GAAG,CAAC,QAAiC,EAAE,EAAE;QACvD,OAAO,CACL,oBAAC,GAAG,IACF,OAAO,EAAE,GAAG,EAAE;gBACZ,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChC,CAAC,IAEA,kBAAkB,CAAC,QAAQ,CAAC,CACzB,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,UAAU,EAAE;YAC7C,OAAO,IAAI,CAAC;SACb;QACD,OAAO,CACL,oBAAC,IAAI,IACH,KAAK,EAAE;gBACL,KAAK,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,GAAG,CAAC,CAAC,CAAC,MAAM;gBACjE,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,GAAG,CAAC,CAAC,CAAC,MAAM;gBACpE,QAAQ,EAAE,CAAC;gBACX,UAAU,EAAE,CAAC;gBACb,OAAO,EAAE,MAAM;gBACf,UAAU,EAAE,MAAM;gBAClB,aAAa,EAAE,MAAM;gBACrB,aAAa,EAAE,QAAQ;aACxB;YAEA,oBAAoB,IAAI,oBAAoB,EAAE;YAC/C,oBAAC,QAAQ,IACP,IAAI,EAAE,YAAY,EAClB,SAAS,EAAE,iBAAiB,EAC5B,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,EAC/B,UAAU,EAAE,UAAU,GACtB,CACG,CACR,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,GAAG,EAAE;QAC7B,OAAO,CACL,oBAAC,GAAG,IAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAE,CAAC;YACxB,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAC9B,oBAAC,GAAG,IAAC,KAAK,EAAC,MAAM;gBACf,oBAAC,UAAU,IACT,kBAAkB,EAAC,OAAO,EAC1B,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,UAAU,EACpB,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,GACvC,CACE,CACP;YACA,aAAa,IAAI,aAAa,CAAC,UAAU,CAAC,CACvC,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,GAAG,EAAE;QACjC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAClD,OAAO,CACL,oBAAC,IAAI,IACH,KAAK,EAAE;oBACL,IAAI,EAAE,CAAC;oBACP,KAAK,EAAE,MAAM;oBACb,MAAM,EAAE,MAAM;oBACd,UAAU,EAAE,QAAQ;iBACrB;gBAED,oBAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAC,MAAM;oBACzC,oBAAC,gBAAgB,IACf,KAAK,EAAE,IAAI,EACX,WAAW,QACX,WAAW,EAAE,WAAW,IAAI,IAAI,CAAC,MAAM,EACvC,mBAAmB,EAAE,UAAU,EAC/B,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;4BAClB,aAAa,CAAC,CAAC,GAAI,KAAK,CAAC,WAAwB,CAAC,CAAC,CAAC;wBACtD,CAAC,GACD,CACE;gBACN,oBAAC,GAAG,IACF,SAAS,EAAC,KAAK,EACf,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,MAAM,EACb,QAAQ,EAAE,CAAC,EACX,KAAK,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,IAE5C,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;oBAC3B,OAAO,CACL,oBAAC,UAAU,IACT,GAAG,EAAE,QAAQ,EACb,qBAAqB,EAAE;4BACrB,IAAI,EAAE,CAAC;yBACR,EACD,KAAK,EAAE;4BACL,IAAI,EAAE,CAAC;4BACP,KAAK,EAAE,KAAK;4BACZ,OAAO,EAAE,CAAC,GAAG,OAAO;4BACpB,MAAM,EAAE,MAAM;yBACf,IAEA,YAAY,CAAC,QAAQ,CAAC,CACZ,CACd,CAAC;gBACJ,CAAC,CAAC,CACE,CACD,CACR,CAAC;SACH;aAAM;YACL,OAAO,CACL,oBAAC,GAAG,IAAC,UAAU,EAAC,QAAQ,EAAC,SAAS,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,cAAc,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,IACrF,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;gBACnC,OAAO,CACL,oBAAC,UAAU,IACT,GAAG,EAAE,KAAK,EACV,qBAAqB,EAAE;wBACrB,IAAI,EAAE,CAAC;qBACR,EACD,KAAK,EAAE;wBACL,IAAI,EAAE,CAAC;wBACP,KAAK,EAAE,KAAK;wBACZ,OAAO,EAAE,CAAC,GAAG,OAAO;wBACpB,MAAM,EAAE,MAAM;qBACf,IAEA,OAAO,CACG,CACd,CAAC;YACJ,CAAC,CAAC,CACE,CACP,CAAC;SACH;IACH,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,GAAG,IACF,aAAa,QACb,KAAK,EAAE,KAAK,IAAI,WAAW,EAC3B,SAAS,EAAC,KAAK,EACf,OAAO,EAAC,MAAM,EACd,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,MAAM,EACb,cAAc,EAAE,cAAc,EAC9B,OAAO,EAAE,CAAC,EACV,KAAK,EAAC,MAAM;QAEX,OAAO,KAAK,IAAI,IAAI,oBAAC,OAAO,IAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,QAAe,EAAE,IAAI,EAAC,IAAI,GAAG;QAC/E,UAAU,EAAE;QACZ,aAAa,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAC1D,CACP,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"SplitPage.js","sourceRoot":"","sources":["../src/SplitPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AACxE,OAAO,EAAC,UAAU,EAAsB,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAC9E,OAAO,EAAC,cAAc,EAAC,MAAM,8BAA8B,CAAC;AAE5D,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,oBAAoB,EAAC,MAAM,cAAc,CAAC;AAClD,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAElC,kGAAkG;AAClG,2EAA2E;AAC3E,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EACxB,QAAQ,EACR,IAAI,GAAG,EAAE,EACT,OAAO,GAAG,KAAK,EACf,KAAK,EACL,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,EACb,iBAAiB,GAAG,GAAG,EAAE,GAAE,CAAC,EAC5B,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,WAAW,GACI,EAAE,EAAE;IACnB,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAqB,SAAS,CAAC,CAAC;IAC5E,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAW,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACtF,MAAM,EAAC,KAAK,EAAC,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEzC,MAAM,cAAc,GAAG,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAEnD,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEhD,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,IAA6B,EAAE,EAAE;QAChC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC,EACD,CAAC,iBAAiB,CAAC,CACpB,CAAC;IAEF,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;QACtC,aAAa,CAAC,SAAS,CAAC,CAAC;QACzB,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAExB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,YAAY,EAAE;YAChB,cAAc,EAAE,CAAC;SAClB;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC;IAEnC,IAAI,CAAC,QAAQ,IAAI,CAAC,aAAa,EAAE;QAC/B,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;KACb;IAED,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE;QAC5E,OAAO,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC;KACb;IAED,MAAM,UAAU,GAAG,CAAC,QAAiC,EAAE,EAAE;QACvD,OAAO,CACL,oBAAC,GAAG,IACF,OAAO,EAAE,GAAG,EAAE;gBACZ,YAAY,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC,IAEA,kBAAkB,CAAC,QAAQ,CAAC,CACzB,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,OAAO,CACL,oBAAC,IAAI,IACH,KAAK,EAAE;gBACL,KAAK,EAAE,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,GAAG;gBAC3B,QAAQ,EAAE,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,GAAG;gBAC9B,QAAQ,EAAE,CAAC;gBACX,UAAU,EAAE,CAAC;gBACb,OAAO,EAAE,MAAM;gBACf,aAAa,EAAE,QAAQ;aACxB;YAEA,oBAAoB,IAAI,oBAAoB,EAAE;YAC/C,oBAAC,QAAQ,IACP,IAAI,EAAE,YAAY,EAClB,SAAS,EAAE,iBAAiB,EAC5B,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,EAC/B,UAAU,EAAE,UAAU,GACtB,CACG,CACR,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,GAAG,EAAE;QAC7B,OAAO,CACL,oBAAC,GAAG,IAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAE,CAAC,IACxB,aAAa,IAAI,aAAa,CAAC,UAAU,CAAC,CACvC,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,GAAG,EAAE;QACjC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAClD,OAAO,CACL,oBAAC,IAAI,IACH,KAAK,EAAE;oBACL,IAAI,EAAE,CAAC;oBACP,KAAK,EAAE,MAAM;oBACb,MAAM,EAAE,MAAM;oBACd,UAAU,EAAE,QAAQ;iBACrB;gBAED,oBAAC,GAAG,IAAC,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAC,MAAM;oBAC7C,oBAAC,gBAAgB,IACf,KAAK,EAAE,IAAI,EACX,WAAW,QACX,WAAW,EAAE,WAAW,IAAI,IAAI,CAAC,MAAM,EACvC,mBAAmB,EAAE,UAAU,EAC/B,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;4BAClB,aAAa,CAAC,CAAC,GAAI,KAAK,CAAC,WAAwB,CAAC,CAAC,CAAC;wBACtD,CAAC,GACD,CACE;gBACN,oBAAC,GAAG,IACF,SAAS,EAAC,KAAK,EACf,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,MAAM,EACb,QAAQ,EAAE,CAAC,EACX,KAAK,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,IAE5C,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE;oBAC9B,OAAO,CACL,oBAAC,UAAU,IACT,GAAG,EAAE,QAAQ,EACb,qBAAqB,EAAE;4BACrB,IAAI,EAAE,CAAC;yBACR,EACD,KAAK,EAAE;4BACL,IAAI,EAAE,CAAC;4BACP,KAAK,EAAE,KAAK;4BACZ,MAAM,EAAE,MAAM;4BACd,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;4BACxB,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;yBACxB,IAEA,YAAY,CAAC,QAAQ,CAAC,CACZ,CACd,CAAC;gBACJ,CAAC,CAAC,CACE,CACD,CACR,CAAC;SACH;aAAM;YACL,OAAO,CACL,oBAAC,GAAG,IAAC,UAAU,EAAC,QAAQ,EAAC,SAAS,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,cAAc,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,IACrF,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;gBACnC,OAAO,CACL,oBAAC,UAAU,IACT,GAAG,EAAE,KAAK,EACV,qBAAqB,EAAE;wBACrB,IAAI,EAAE,CAAC;qBACR,EACD,KAAK,EAAE;wBACL,IAAI,EAAE,CAAC;wBACP,KAAK,EAAE,KAAK;wBACZ,MAAM,EAAE,MAAM;qBACf,IAEA,OAAO,CACG,CACd,CAAC;YACJ,CAAC,CAAC,CACE,CACP,CAAC;SACH;IACH,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC5B,IAAI,cAAc,IAAI,UAAU,KAAK,SAAS,EAAE;YAC9C,OAAO,IAAI,CAAC;SACb;QAED,OAAO,CACL,oBAAC,IAAI,IACH,KAAK,EAAE;gBACL,KAAK,EAAE,MAAM;gBACb,QAAQ,EAAE,MAAM;gBAChB,MAAM,EAAE,MAAM;gBACd,QAAQ,EAAE,CAAC;gBACX,UAAU,EAAE,CAAC;gBACb,OAAO,EAAE,MAAM;gBACf,aAAa,EAAE,QAAQ;aACxB;YAEA,oBAAoB,IAAI,oBAAoB,EAAE;YAC/C,oBAAC,QAAQ,IACP,IAAI,EAAE,YAAY,EAClB,SAAS,EAAE,iBAAiB,EAC5B,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,EAC/B,mBAAmB,QACnB,UAAU,EAAE,UAAU,GACtB,CACG,CACR,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,GAAG,EAAE;QACnC,IAAI,cAAc,IAAI,UAAU,KAAK,SAAS,EAAE;YAC9C,OAAO,IAAI,CAAC;SACb;QAED,OAAO,CACL,oBAAC,GAAG,IAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAE,CAAC;YACxB,cAAc,IAAI,CACjB,oBAAC,GAAG,IAAC,KAAK,EAAC,MAAM;gBACf,oBAAC,UAAU,IACT,kBAAkB,EAAC,OAAO,EAC1B,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,UAAU,EACpB,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,EAAE,GAC/B,CACE,CACP;YACA,aAAa,IAAI,aAAa,CAAC,UAAU,CAAC,CACvC,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,2BAA2B,GAAG,GAAG,EAAE;QACvC,IAAI,UAAU,KAAK,SAAS,EAAE;YAC5B,OAAO,IAAI,CAAC;SACb;QACD,OAAO,CACL,oBAAC,cAAc,IACb,mBAAmB,QACnB,eAAe,EAAE,EAAC,cAAc,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAC,EACzD,SAAS,QACT,cAAc,QACd,KAAK,EAAE,EAAC,KAAK,EAAE,MAAM,EAAC,IAErB,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE;YAC/B,OAAO,CACL,oBAAC,IAAI,IACH,GAAG,EAAE,CAAC,EACN,KAAK,EAAE;oBACL,KAAK,EAAE,KAAK,GAAG,CAAC;oBAChB,OAAO,EAAE,CAAC;oBACV,MAAM,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;oBAClD,aAAa,EAAE,kBAAkB;iBAClC,IAEA,OAAO,CACH,CACR,CAAC;QACJ,CAAC,CAAC,CACa,CAClB,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,OAAO,CACL;YACG,UAAU,EAAE;YACZ,aAAa,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAC7D,CACJ,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,GAAG,EAAE;QACjC,MAAM,iBAAiB,GAAG,aAAa;YACrC,CAAC,CAAC,uBAAuB,EAAE;YAC3B,CAAC,CAAC,2BAA2B,EAAE,CAAC;QAClC,OAAO,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC;IAC3E,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,GAAG,IACF,aAAa,QACb,KAAK,EAAE,KAAK,IAAI,WAAW,EAC3B,SAAS,EAAC,KAAK,EACf,OAAO,EAAC,MAAM,EACd,MAAM,EAAC,MAAM,EACb,cAAc,EAAE,cAAc,EAC9B,OAAO,EAAE,CAAC,EACV,KAAK,EAAC,MAAM;QAEX,OAAO,KAAK,IAAI,IAAI,oBAAC,OAAO,IAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,QAAe,EAAE,IAAI,EAAC,IAAI,GAAG;QAC/E,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,CAClE,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { SplitPageProps } from "./Common";
3
+ export declare const SplitPage: ({ children, loading, color, keyboardOffset, renderListViewItem, renderListViewHeader, renderContent, onSelectionChange, listViewData, listViewExtraData, bottomNavBarHeight, showItemList, }: SplitPageProps) => JSX.Element | null;
@@ -0,0 +1,75 @@
1
+ // TODO: Update SplitPage native to have desktop UX for tablet sized screens
2
+ import React, { Children, useCallback, useEffect, useState } from "react";
3
+ import { Dimensions, View } from "react-native";
4
+ import { SwiperFlatList } from "react-native-swiper-flatlist";
5
+ import { Box } from "./Box";
6
+ import { FlatList } from "./FlatList";
7
+ import { IconButton } from "./IconButton";
8
+ import { Spinner } from "./Spinner";
9
+ import { Unifier } from "./Unifier";
10
+ export const SplitPage = ({ children, loading = false, color, keyboardOffset, renderListViewItem, renderListViewHeader, renderContent, onSelectionChange = () => { }, listViewData, listViewExtraData, bottomNavBarHeight, showItemList, }) => {
11
+ const [selectedId, setSelectedId] = useState(undefined);
12
+ const elementArray = Children.toArray(children);
13
+ const { width } = Dimensions.get("window");
14
+ const onItemSelect = useCallback((item) => {
15
+ setSelectedId(item.index);
16
+ onSelectionChange(item);
17
+ }, [onSelectionChange]);
18
+ const onItemDeselect = useCallback(() => {
19
+ setSelectedId(undefined);
20
+ onSelectionChange(undefined);
21
+ }, [onSelectionChange]);
22
+ useEffect(() => {
23
+ if (showItemList) {
24
+ onItemDeselect();
25
+ }
26
+ }, [showItemList, onItemDeselect]);
27
+ if (!children && !renderContent) {
28
+ console.warn("A child node is required");
29
+ return null;
30
+ }
31
+ const renderItem = (itemInfo) => {
32
+ return (React.createElement(Box, { onClick: () => {
33
+ Unifier.utils.haptic();
34
+ onItemSelect(itemInfo);
35
+ } }, renderListViewItem(itemInfo)));
36
+ };
37
+ const renderList = () => {
38
+ if (selectedId !== undefined) {
39
+ return null;
40
+ }
41
+ return (React.createElement(View, { style: {
42
+ width: "100%",
43
+ maxWidth: "100%",
44
+ flexGrow: 1,
45
+ flexShrink: 0,
46
+ display: "flex",
47
+ flexDirection: "column",
48
+ paddingBottom: bottomNavBarHeight,
49
+ } },
50
+ renderListViewHeader && renderListViewHeader(),
51
+ React.createElement(FlatList, { data: listViewData, extraData: listViewExtraData, keyExtractor: (item) => item.id, renderItem: renderItem })));
52
+ };
53
+ const renderListContent = () => {
54
+ if (selectedId === undefined) {
55
+ return null;
56
+ }
57
+ return (React.createElement(Box, { flex: "grow", padding: 2 },
58
+ React.createElement(Box, { width: "100%" },
59
+ React.createElement(IconButton, { accessibilityLabel: "close", icon: "times", iconColor: "darkGray", onClick: () => onItemDeselect() })),
60
+ renderContent && renderContent(selectedId)));
61
+ };
62
+ const renderChildrenContent = () => {
63
+ if (selectedId === undefined) {
64
+ return null;
65
+ }
66
+ return (React.createElement(SwiperFlatList, { nestedScrollEnabled: true, renderAll: true, showPagination: elementArray.length > 1, style: { width: "100%" } }, elementArray.map((element, i) => {
67
+ return (React.createElement(View, { key: i, style: { width, height: elementArray.length > 1 ? "95%" : "100%", padding: 4 } }, element));
68
+ })));
69
+ };
70
+ const renderMainContent = renderContent ? renderListContent() : renderChildrenContent();
71
+ return (React.createElement(Box, { avoidKeyboard: true, color: color || "lightGray", flex: "grow", height: "100%", keyboardOffset: keyboardOffset, width: "100%" },
72
+ loading === true && React.createElement(Spinner, { color: Unifier.theme.darkGray, size: "md" }),
73
+ selectedId === undefined ? renderList() : renderMainContent));
74
+ };
75
+ //# sourceMappingURL=SplitPage.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SplitPage.native.js","sourceRoot":"","sources":["../src/SplitPage.native.tsx"],"names":[],"mappings":"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"}
package/dist/TapToEdit.js CHANGED
@@ -16,8 +16,9 @@ import { Button } from "./Button";
16
16
  import { Field } from "./Field";
17
17
  import { Icon } from "./Icon";
18
18
  import { Text } from "./Text";
19
+ import { formatAddress } from "./Utilities";
19
20
  export const TapToEdit = (_a) => {
20
- var _b, _c, _d;
21
+ var _b;
21
22
  var { value, setValue, placeholder, title, onSave, editable = true, isEditing = false, rowBoxProps, transform, fieldComponent } = _a, fieldProps = __rest(_a, ["value", "setValue", "placeholder", "title", "onSave", "editable", "isEditing", "rowBoxProps", "transform", "fieldComponent"]);
22
23
  const [editing, setEditing] = useState(false);
23
24
  if (editable && !setValue) {
@@ -72,24 +73,17 @@ export const TapToEdit = (_a) => {
72
73
  }
73
74
  else if ((fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.type) === "url") {
74
75
  // Show only the domain, full links are likely too long.
75
- const url = new URL(value);
76
- displayValue = (_b = url === null || url === void 0 ? void 0 : url.hostname) !== null && _b !== void 0 ? _b : value;
77
- }
78
- else if ((fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.type) === "address") {
79
- let city = "";
80
- if (value === null || value === void 0 ? void 0 : value.city) {
81
- city = (value === null || value === void 0 ? void 0 : value.state) || value.zipcode ? `${value.city}, ` : `${value.city}`;
76
+ try {
77
+ const url = new URL(value);
78
+ displayValue = (_b = url === null || url === void 0 ? void 0 : url.hostname) !== null && _b !== void 0 ? _b : value;
82
79
  }
83
- let state = "";
84
- if (value === null || value === void 0 ? void 0 : value.state) {
85
- state = (value === null || value === void 0 ? void 0 : value.zipcode) ? `${value.state} ` : `${value.state}`;
80
+ catch (e) {
81
+ console.debug(`Invalid URL: ${value}`);
82
+ displayValue = value;
86
83
  }
87
- const zip = (value === null || value === void 0 ? void 0 : value.zipcode) || "";
88
- const addressLineOne = (_c = value === null || value === void 0 ? void 0 : value.address1) !== null && _c !== void 0 ? _c : "";
89
- const addressLineTwo = (_d = value === null || value === void 0 ? void 0 : value.address2) !== null && _d !== void 0 ? _d : "";
90
- const addressLineThree = `${city}${state}${zip}`;
91
- // Only add new lines if lines before and after are not empty to avoid awkward whitespace
92
- displayValue = `${addressLineOne}${addressLineOne && (addressLineTwo || addressLineThree) ? `\n` : ""}${addressLineTwo}${addressLineTwo && addressLineThree ? `\n` : ""}${addressLineThree}`;
84
+ }
85
+ else if ((fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.type) === "address") {
86
+ displayValue = formatAddress(value);
93
87
  }
94
88
  }
95
89
  const openLink = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"TapToEdit.js","sourceRoot":"","sources":["../src/TapToEdit.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TapToEdit.js","sourceRoot":"","sources":["../src/TapToEdit.tsx"],"names":[],"mappings":"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"}
package/dist/TextField.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { AsYouType } from "libphonenumber-js";
2
2
  import moment from "moment-timezone";
3
- import React, { useState } from "react";
3
+ import React, { useCallback, useMemo, useState } from "react";
4
4
  import { ActivityIndicator, Platform, TextInput, View } from "react-native";
5
5
  import { Calendar } from "react-native-calendars";
6
6
  import { Box } from "./Box";
@@ -96,7 +96,7 @@ export function TextField({ blurOnSubmit = true, value, height: propsHeight, onC
96
96
  else {
97
97
  borderColor = Unifier.theme.gray;
98
98
  }
99
- const getHeight = () => {
99
+ const getHeight = useCallback(() => {
100
100
  if (grow) {
101
101
  return Math.max(40, height);
102
102
  }
@@ -106,7 +106,14 @@ export function TextField({ blurOnSubmit = true, value, height: propsHeight, onC
106
106
  else {
107
107
  return 40;
108
108
  }
109
- };
109
+ }, [grow, height, multiline]);
110
+ const defaultTextInputStyles = useMemo(() => {
111
+ const defaultStyles = Object.assign({ flex: 1, paddingTop: 10, paddingRight: 10, paddingBottom: 10, paddingLeft: 0, height: getHeight(), width: "100%", color: Unifier.theme.darkGray, fontFamily: Unifier.theme.primaryFont }, style);
112
+ if (Platform.OS === "web") {
113
+ defaultStyles.outline = 0;
114
+ }
115
+ return defaultStyles;
116
+ }, [getHeight, style]);
110
117
  const isHandledByModal = type === "date" || type === "numberRange" || type === "decimalRange" || type === "height";
111
118
  const isEditable = !disabled && !isHandledByModal;
112
119
  const shouldAutocorrect = type === "text" && (!autoComplete || autoComplete === "on");
@@ -176,9 +183,7 @@ export function TextField({ blurOnSubmit = true, value, height: propsHeight, onC
176
183
  if (inputRef) {
177
184
  inputRef(ref);
178
185
  }
179
- }, autoCapitalize: type === "text" ? "sentences" : "none", autoCorrect: shouldAutocorrect, autoFocus: autoFocus, blurOnSubmit: blurOnSubmit, editable: isEditable, keyboardType: keyboardType, multiline: multiline, numberOfLines: rows || 4, placeholder: placeholder, placeholderTextColor: Unifier.theme.gray, returnKeyType: type === "number" || type === "decimal" ? "done" : returnKeyType, secureTextEntry: type === "password", style: Object.assign({ flex: 1, paddingTop: 10, paddingRight: 10, paddingBottom: 10, paddingLeft: 0, height: getHeight(), width: "100%", color: Unifier.theme.darkGray, fontFamily: Unifier.theme.primaryFont,
180
- // Remove border in web.
181
- outlineWidth: 0 }, style),
186
+ }, autoCapitalize: type === "text" ? "sentences" : "none", autoCorrect: shouldAutocorrect, autoFocus: autoFocus, blurOnSubmit: blurOnSubmit, editable: isEditable, keyboardType: keyboardType, multiline: multiline, numberOfLines: rows || 4, placeholder: placeholder, placeholderTextColor: Unifier.theme.gray, returnKeyType: type === "number" || type === "decimal" ? "done" : returnKeyType, secureTextEntry: type === "password", style: defaultTextInputStyles,
182
187
  // For react-native-autofocus
183
188
  textContentType: textContentType, underlineColorAndroid: "transparent", value: value, onBlur: () => {
184
189
  if (!isHandledByModal) {