ferns-ui 2.0.0-beta.2 → 2.0.0

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 (149) hide show
  1. package/dist/Accordion.js +7 -2
  2. package/dist/Accordion.js.map +1 -1
  3. package/dist/ActionSheet.js +14 -11
  4. package/dist/ActionSheet.js.map +1 -1
  5. package/dist/AddressField.js +1 -1
  6. package/dist/AddressField.js.map +1 -1
  7. package/dist/Badge.js +1 -1
  8. package/dist/Badge.js.map +1 -1
  9. package/dist/Banner.js +1 -1
  10. package/dist/Banner.js.map +1 -1
  11. package/dist/Box.js +3 -3
  12. package/dist/Box.js.map +1 -1
  13. package/dist/Button.js +0 -1
  14. package/dist/Button.js.map +1 -1
  15. package/dist/CheckBox.js.map +1 -1
  16. package/dist/Common.d.ts +14 -9
  17. package/dist/Common.js.map +1 -1
  18. package/dist/DataTable.js +1 -2
  19. package/dist/DataTable.js.map +1 -1
  20. package/dist/DateTimeField.js +22 -22
  21. package/dist/DateTimeField.js.map +1 -1
  22. package/dist/EmailField.js +17 -37
  23. package/dist/EmailField.js.map +1 -1
  24. package/dist/EmojiSelector.d.ts +114 -0
  25. package/dist/EmojiSelector.js +332 -0
  26. package/dist/EmojiSelector.js.map +1 -0
  27. package/dist/FernsProvider.js +1 -1
  28. package/dist/FernsProvider.js.map +1 -1
  29. package/dist/Heading.js +3 -1
  30. package/dist/Heading.js.map +1 -1
  31. package/dist/Hyperlink.js +1 -1
  32. package/dist/Hyperlink.js.map +1 -1
  33. package/dist/IconButton.js +1 -1
  34. package/dist/IconButton.js.map +1 -1
  35. package/dist/Image.js.map +1 -1
  36. package/dist/MarkdownView.d.ts +5 -0
  37. package/dist/MarkdownView.js +44 -0
  38. package/dist/MarkdownView.js.map +1 -0
  39. package/dist/MobileAddressAutoComplete.js +1 -1
  40. package/dist/MobileAddressAutoComplete.js.map +1 -1
  41. package/dist/Modal.d.ts +1 -1
  42. package/dist/Modal.js +35 -15
  43. package/dist/Modal.js.map +1 -1
  44. package/dist/NumberField.js +10 -4
  45. package/dist/NumberField.js.map +1 -1
  46. package/dist/NumberPickerActionSheet.d.ts +1 -3
  47. package/dist/NumberPickerActionSheet.js +0 -3
  48. package/dist/NumberPickerActionSheet.js.map +1 -1
  49. package/dist/Page.js +1 -1
  50. package/dist/Page.js.map +1 -1
  51. package/dist/Pagination.js +2 -2
  52. package/dist/Pagination.js.map +1 -1
  53. package/dist/Permissions.d.ts +1 -1
  54. package/dist/Permissions.js +2 -2
  55. package/dist/Permissions.js.map +1 -1
  56. package/dist/PickerSelect.js +1 -1
  57. package/dist/PickerSelect.js.map +1 -1
  58. package/dist/SectionDivider.js +1 -1
  59. package/dist/SectionDivider.js.map +1 -1
  60. package/dist/SegmentedControl.js.map +1 -1
  61. package/dist/Signature.native.js +2 -2
  62. package/dist/Signature.native.js.map +1 -1
  63. package/dist/SignatureField.js +2 -2
  64. package/dist/SignatureField.js.map +1 -1
  65. package/dist/Slider.js +3 -3
  66. package/dist/Slider.js.map +1 -1
  67. package/dist/SplitPage.js +7 -7
  68. package/dist/SplitPage.js.map +1 -1
  69. package/dist/SplitPage.native.js +4 -6
  70. package/dist/SplitPage.native.js.map +1 -1
  71. package/dist/TapToEdit.js +3 -3
  72. package/dist/TapToEdit.js.map +1 -1
  73. package/dist/Text.js +1 -1
  74. package/dist/Text.js.map +1 -1
  75. package/dist/TextField.js +9 -2
  76. package/dist/TextField.js.map +1 -1
  77. package/dist/TextFieldNumberActionSheet.d.ts +2 -4
  78. package/dist/TextFieldNumberActionSheet.js +1 -4
  79. package/dist/TextFieldNumberActionSheet.js.map +1 -1
  80. package/dist/Tooltip.js +37 -19
  81. package/dist/Tooltip.js.map +1 -1
  82. package/dist/Unifier.d.ts +0 -1
  83. package/dist/Unifier.js.map +1 -1
  84. package/dist/Utilities.d.ts +1 -1
  85. package/dist/Utilities.js +2 -3
  86. package/dist/Utilities.js.map +1 -1
  87. package/dist/WebAddressAutocomplete.js +2 -1
  88. package/dist/WebAddressAutocomplete.js.map +1 -1
  89. package/dist/index.d.ts +11 -10
  90. package/dist/index.js +11 -9
  91. package/dist/index.js.map +1 -1
  92. package/dist/table/Table.js +14 -15
  93. package/dist/table/Table.js.map +1 -1
  94. package/dist/table/TableHeaderCell.js +2 -2
  95. package/dist/table/TableHeaderCell.js.map +1 -1
  96. package/dist/useStoredState.js +4 -2
  97. package/dist/useStoredState.js.map +1 -1
  98. package/package.json +6 -64
  99. package/src/Accordion.tsx +7 -1
  100. package/src/ActionSheet.tsx +26 -22
  101. package/src/AddressField.tsx +1 -1
  102. package/src/Badge.tsx +1 -1
  103. package/src/Banner.tsx +1 -1
  104. package/src/Box.test.tsx +71 -70
  105. package/src/Box.tsx +21 -9
  106. package/src/Button.tsx +0 -1
  107. package/src/CheckBox.tsx +7 -1
  108. package/src/Common.ts +15 -21
  109. package/src/DataTable.tsx +1 -2
  110. package/src/DateTimeField.tsx +22 -22
  111. package/src/EmailField.tsx +22 -42
  112. package/src/EmojiSelector.test.tsx +61 -0
  113. package/src/EmojiSelector.tsx +510 -0
  114. package/src/FernsProvider.tsx +1 -4
  115. package/src/Heading.tsx +3 -1
  116. package/src/Hyperlink.tsx +1 -1
  117. package/src/IconButton.tsx +2 -2
  118. package/src/Image.tsx +1 -0
  119. package/src/MarkdownView.tsx +67 -0
  120. package/src/MobileAddressAutoComplete.tsx +1 -1
  121. package/src/Modal.tsx +58 -21
  122. package/src/NumberField.tsx +10 -4
  123. package/src/NumberPickerActionSheet.tsx +1 -5
  124. package/src/Page.tsx +1 -1
  125. package/src/Pagination.tsx +2 -11
  126. package/src/Permissions.ts +2 -2
  127. package/src/PickerSelect.tsx +1 -1
  128. package/src/SectionDivider.tsx +1 -1
  129. package/src/SegmentedControl.tsx +3 -1
  130. package/src/Signature.native.tsx +2 -2
  131. package/src/SignatureField.tsx +2 -2
  132. package/src/Slider.tsx +10 -17
  133. package/src/SplitPage.native.tsx +2 -4
  134. package/src/SplitPage.tsx +4 -4
  135. package/src/TapToEdit.tsx +3 -7
  136. package/src/Text.tsx +1 -1
  137. package/src/TextArea.test.tsx +27 -43
  138. package/src/TextField.test.tsx +64 -5
  139. package/src/TextField.tsx +10 -1
  140. package/src/TextFieldNumberActionSheet.tsx +3 -7
  141. package/src/Tooltip.tsx +41 -19
  142. package/src/Unifier.ts +1 -3
  143. package/src/Utilities.tsx +3 -4
  144. package/src/WebAddressAutocomplete.tsx +1 -1
  145. package/src/__snapshots__/EmojiSelector.test.tsx.snap +604 -0
  146. package/src/index.tsx +12 -10
  147. package/src/table/Table.tsx +34 -36
  148. package/src/table/TableHeaderCell.tsx +2 -2
  149. package/src/useStoredState.ts +13 -11
package/dist/index.js CHANGED
@@ -20,6 +20,7 @@ export * from "./DateUtilities";
20
20
  export * from "./DecimalRangeActionSheet";
21
21
  export * from "./DismissButton";
22
22
  export * from "./EmailField";
23
+ export { default as EmojiSelector } from "./EmojiSelector";
23
24
  export * from "./ErrorBoundary";
24
25
  export * from "./ErrorPage";
25
26
  export * from "./FernsProvider";
@@ -34,6 +35,7 @@ export * from "./ImageBackground";
34
35
  export * from "./InfoModalIcon";
35
36
  export * from "./InfoTooltipButton";
36
37
  export * from "./Link";
38
+ export * from "./MarkdownView";
37
39
  export * from "./MediaQuery";
38
40
  export * from "./MobileAddressAutoComplete";
39
41
  export * from "./Modal";
@@ -59,11 +61,17 @@ export * from "./SignatureField";
59
61
  export * from "./Slider";
60
62
  export * from "./Spinner";
61
63
  export * from "./SplitPage";
64
+ export * from "./TapToEdit";
65
+ export * from "./Text";
66
+ export * from "./TextArea";
67
+ export * from "./TextField";
68
+ export * from "./Theme";
69
+ export * from "./Toast";
70
+ export * from "./Tooltip";
62
71
  export * from "./table/Table";
63
72
  export * from "./table/Table";
64
73
  export * from "./table/TableBadge";
65
74
  export * from "./table/TableBoolean";
66
- export * from "./table/tableContext";
67
75
  export * from "./table/TableDate";
68
76
  export * from "./table/TableHeader";
69
77
  export * from "./table/TableHeaderCell";
@@ -72,16 +80,10 @@ export * from "./table/TableNumber";
72
80
  export * from "./table/TableRow";
73
81
  export * from "./table/TableText";
74
82
  export * from "./table/TableTitle";
75
- export * from "./TapToEdit";
76
- export * from "./Text";
77
- export * from "./TextArea";
78
- export * from "./TextField";
79
- export * from "./Theme";
80
- export * from "./Toast";
81
- export * from "./Tooltip";
83
+ export * from "./table/tableContext";
82
84
  export * from "./UnifiedAddressAutoComplete";
83
85
  export * from "./Unifier";
84
- export * from "./useStoredState";
85
86
  export * from "./Utilities";
87
+ export * from "./useStoredState";
86
88
  export * from "./WebAddressAutocomplete";
87
89
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,iBAAiB,CAAC;AACzD,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC"}
@@ -39,21 +39,20 @@ borderStyle, alternateRowBackground = true, maxHeight, stickyHeader = true, sort
39
39
  }, [page, propsPage]);
40
40
  const shouldPaginate = more || page > 1;
41
41
  return (React.createElement(TableContextProvider, { alternateRowBackground: alternateRowBackground, borderStyle: borderStyle, columns: columns, hasDrawerContents: hasDrawerContents, page: page, setSortColumn: setSortColumn, sortColumn: sortColumn, stickyHeader: stickyHeader },
42
- React.createElement(React.Fragment, null,
43
- React.createElement(Box, { flex: "grow", maxWidth: "100%", style: {
44
- position: "relative",
45
- }, width: width },
46
- React.createElement(ScrollView, { horizontal: true, style: { width, maxWidth: "100%" } },
47
- React.createElement(ScrollView
42
+ React.createElement(Box, { flex: "grow", maxWidth: "100%", style: {
43
+ position: "relative",
44
+ }, width: width },
45
+ React.createElement(ScrollView, { horizontal: true, style: { width, maxWidth: "100%" } },
46
+ React.createElement(ScrollView
47
+ // nestedScrollEnabled
48
+ , {
48
49
  // nestedScrollEnabled
49
- , {
50
- // nestedScrollEnabled
51
- stickyHeaderIndices: stickyHeader ? [0] : undefined, style: { width, maxWidth: "100%", flex: 1, maxHeight } }, Children.map(children, (child, index) => Boolean(child) &&
52
- React.cloneElement(child, {
53
- color: index % 2 === 1 && alternateRowBackground ? "neutralLight" : "base",
54
- }))))),
55
- Boolean(shouldPaginate && totalPages !== undefined) && (React.createElement(Box, { alignItems: "center", borderTop: "default", direction: "row", height: 60, paddingX: 8 },
56
- React.createElement(Pagination, { page: propsPage !== null && propsPage !== void 0 ? propsPage : page, setPage: propsSetPage !== null && propsSetPage !== void 0 ? propsSetPage : setPage, totalPages: totalPages }),
57
- Boolean(extraControls) && extraControls)))));
50
+ stickyHeaderIndices: stickyHeader ? [0] : undefined, style: { width, maxWidth: "100%", flex: 1, maxHeight } }, Children.map(children, (child, index) => Boolean(child) &&
51
+ React.cloneElement(child, {
52
+ color: index % 2 === 1 && alternateRowBackground ? "neutralLight" : "base",
53
+ }))))),
54
+ Boolean(shouldPaginate && totalPages !== undefined) && (React.createElement(Box, { alignItems: "center", borderTop: "default", direction: "row", height: 60, paddingX: 8 },
55
+ React.createElement(Pagination, { page: propsPage !== null && propsPage !== void 0 ? propsPage : page, setPage: propsSetPage !== null && propsSetPage !== void 0 ? propsSetPage : setPage, totalPages: totalPages }),
56
+ Boolean(extraControls) && extraControls))));
58
57
  };
59
58
  //# sourceMappingURL=Table.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","sourceRoot":"","sources":["../../src/table/Table.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Table.js","sourceRoot":"","sources":["../../src/table/Table.tsx"],"names":[],"mappings":"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"}
@@ -4,8 +4,8 @@ import React, { useCallback } from "react";
4
4
  import { View } from "react-native";
5
5
  import { Box } from "../Box";
6
6
  import { useTheme } from "../Theme";
7
- import { useTableContext } from "./tableContext";
8
7
  import { TableTitle } from "./TableTitle";
8
+ import { useTableContext } from "./tableContext";
9
9
  /**
10
10
  * Use TableHeaderCell to define a header cell in Table.
11
11
  */
@@ -36,7 +36,7 @@ export const TableHeaderCell = ({ children, index, sortable, align = "left", tit
36
36
  if (setSortColumn) {
37
37
  setSortColumn(newSort ? { column: index, direction: newSort } : undefined);
38
38
  }
39
- onSortChange && onSortChange(newSort);
39
+ onSortChange === null || onSortChange === void 0 ? void 0 : onSortChange(newSort);
40
40
  }, [index, onSortChange, setSortColumn, sort]);
41
41
  if (sortable && !onSortChange) {
42
42
  console.error("onSortChange is required when sortable is true");
@@ -1 +1 @@
1
- {"version":3,"file":"TableHeaderCell.js","sourceRoot":"","sources":["../../src/table/TableHeaderCell.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TableHeaderCell.js","sourceRoot":"","sources":["../../src/table/TableHeaderCell.tsx"],"names":[],"mappings":"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"}
@@ -16,12 +16,14 @@ export const useStoredState = (key, initialValue) => {
16
16
  }, [initialValue, key]);
17
17
  // Fetch data when the component mounts
18
18
  useEffect(() => {
19
- void fetchData().then((value) => {
19
+ void fetchData()
20
+ .then((value) => {
20
21
  if (isMounted.current) {
21
22
  setState(value);
22
23
  setIsLoading(false);
23
24
  }
24
- }).catch((error) => {
25
+ })
26
+ .catch((error) => {
25
27
  console.error("Error fetching data:", error);
26
28
  if (isMounted.current) {
27
29
  setIsLoading(false);
@@ -1 +1 @@
1
- {"version":3,"file":"useStoredState.js","sourceRoot":"","sources":["../src/useStoredState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAE/D,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAElC,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,GAAW,EACX,YAAgB,EACmD,EAAE;IACrE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,YAAY,CAAC,CAAC;IAChE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAE/B,2CAA2C;IAC3C,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,IAA4B,EAAE;QAC/D,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;YAC9D,OAAO,YAAY,CAAC;QACtB,CAAC;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC;IAExB,uCAAuC;IACvC,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YAC9B,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACtB,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChB,YAAY,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACjB,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;YAC7C,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACtB,YAAY,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,EAAE;YACV,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;QAC5B,CAAC,CAAC;QACF,uDAAuD;IACzD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,oBAAoB,GAAG,KAAK,EAAE,QAAuB,EAAiB,EAAE;QAC5E,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAC7C,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACtB,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CAAC,KAAK,EAAE,oBAAoB,EAAE,SAAS,CAAC,CAAC;AAClD,CAAC,CAAC"}
1
+ {"version":3,"file":"useStoredState.js","sourceRoot":"","sources":["../src/useStoredState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAE/D,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAElC,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,GAAW,EACX,YAAgB,EACmD,EAAE;IACrE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,YAAY,CAAC,CAAC;IAChE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAE/B,2CAA2C;IAC3C,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,IAA4B,EAAE;QAC/D,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;YAC9D,OAAO,YAAY,CAAC;QACtB,CAAC;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC;IAExB,uCAAuC;IACvC,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,SAAS,EAAE;aACb,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YACd,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACtB,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChB,YAAY,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;YAC7C,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACtB,YAAY,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC,CAAC,CAAC;QAEL,OAAO,GAAG,EAAE;YACV,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;QAC5B,CAAC,CAAC;QACF,uDAAuD;IACzD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,oBAAoB,GAAG,KAAK,EAAE,QAAuB,EAAiB,EAAE;QAC5E,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAC7C,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACtB,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CAAC,KAAK,EAAE,oBAAoB,EAAE,SAAS,CAAC,CAAC;AAClD,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "ferns-ui",
3
- "version": "2.0.0-beta.2",
3
+ "version": "2.0.0",
4
4
  "main": "dist/index.js",
5
5
  "license": "Apache-2.0",
6
6
  "scripts": {
7
7
  "local": "tsc-watch --onSuccess \"cp -a dist/* ../flourish/node_modules/ferns-ui/dist\"",
8
- "lint": "eslint",
9
- "lintfix": "eslint --fix",
8
+ "lint": "biome check src",
9
+ "lintfix": "biome check --write src",
10
+ "lintfixunsafe": "biome check --write --unsafe src",
10
11
  "build": "tsc",
11
12
  "dev": "tsc -w",
12
13
  "deps": "node checkDeps.js",
@@ -41,56 +42,12 @@
41
42
  "trailingComma": "es5",
42
43
  "useTabs": false
43
44
  },
44
- "eslintConfig": {
45
- "extends": [
46
- "plugin:ferns/recommended",
47
- "plugin:react-native-a11y/all"
48
- ],
49
- "parser": "@typescript-eslint/parser",
50
- "parserOptions": {
51
- "project": "./tsconfig.json"
52
- },
53
- "plugins": [
54
- "ban"
55
- ],
56
- "rules": {
57
- "@typescript-eslint/explicit-function-return-type": "off",
58
- "react-native-a11y/has-valid-accessibility-descriptors": "off",
59
- "@typescript-eslint/consistent-type-definitions": [
60
- "error",
61
- "interface"
62
- ],
63
- "ban/ban": [
64
- "error",
65
- {
66
- "name": [
67
- "dayjs",
68
- "*"
69
- ],
70
- "message": "Use Luxon."
71
- },
72
- {
73
- "name": [
74
- "moment",
75
- "*"
76
- ],
77
- "message": "Use Luxon"
78
- },
79
- {
80
- "name": [
81
- "React",
82
- "FC"
83
- ],
84
- "message": "Use FC imported directly from React instead of React.FC"
85
- }
86
- ]
87
- }
88
- },
89
45
  "files": [
90
46
  "dist/**/*",
91
47
  "src/**/*"
92
48
  ],
93
49
  "devDependencies": {
50
+ "@biomejs/biome": "^2.3.6",
94
51
  "@expo/config-plugins": "~54.0.4",
95
52
  "@testing-library/react-native": "^13.2.0",
96
53
  "@types/jest": "^29.5.14",
@@ -102,24 +59,8 @@
102
59
  "@types/react-datetime-picker": "^5.0.0",
103
60
  "@types/react-signature-canvas": "^1.0.5",
104
61
  "@types/react-time-picker": "^6.0.0",
105
- "@typescript-eslint/eslint-plugin": "^8.19.0",
106
- "@typescript-eslint/parser": "^8.19.0",
107
62
  "babel-jest": "^29.7.0",
108
63
  "babel-preset-react-app": "^10.0.1",
109
- "eslint": "^8.57.0",
110
- "eslint-config-prettier": "^9.1.0",
111
- "eslint-plugin-ban": "^2.0.0",
112
- "eslint-plugin-comment-length": "^2.1.1",
113
- "eslint-plugin-ferns": "^0.3.0",
114
- "eslint-plugin-import": "^2.31.0",
115
- "eslint-plugin-lodash": "^8.0.0",
116
- "eslint-plugin-prettier": "^5.2.1",
117
- "eslint-plugin-react": "^7.37.3",
118
- "eslint-plugin-react-hooks": "^5.1.0",
119
- "eslint-plugin-react-native": "^5.0.0",
120
- "eslint-plugin-react-native-a11y": "^3.3.0",
121
- "eslint-plugin-simple-import-sort": "^12.1.1",
122
- "eslint-plugin-unused-imports": "4.1.4",
123
64
  "expo-modules-core": "^3.0.29",
124
65
  "jest": "^29.7.0",
125
66
  "jest-expo": "~53.0.7",
@@ -148,6 +89,7 @@
148
89
  "@react-native-community/datetimepicker": "8.4.4",
149
90
  "@react-native-community/slider": "^5.0.1",
150
91
  "@react-native-picker/picker": "2.11.1",
92
+ "emoji-datasource": "^16.0.0",
151
93
  "expo-clipboard": "~8.0.8",
152
94
  "expo-font": "~14.0.10",
153
95
  "expo-haptics": "~15.0.8",
package/src/Accordion.tsx CHANGED
@@ -18,6 +18,7 @@ export const Accordion: FC<AccordionProps> = ({
18
18
  infoModalSubtitle,
19
19
  infoModalText,
20
20
  infoModalTitle,
21
+ onToggle,
21
22
  }) => {
22
23
  const {theme} = useTheme();
23
24
  const [collapsed, setCollapsed] = useState(false);
@@ -58,7 +59,12 @@ export const Accordion: FC<AccordionProps> = ({
58
59
  aria-role="button"
59
60
  hitSlop={{top: 20, bottom: 20, left: 20, right: 20}}
60
61
  testID="accordion-toggle"
61
- onPress={() => setCollapsed(!collapsed)}
62
+ onPress={() => {
63
+ setCollapsed(!collapsed);
64
+ if (onToggle) {
65
+ onToggle(!collapsed);
66
+ }
67
+ }}
62
68
  >
63
69
  <FontAwesome6
64
70
  color={theme.text.link}
@@ -5,8 +5,8 @@ import {
5
5
  Animated,
6
6
  Dimensions,
7
7
  EmitterSubscription,
8
- findNodeHandle,
9
8
  FlatList,
9
+ findNodeHandle,
10
10
  Keyboard,
11
11
  KeyboardEvent,
12
12
  LayoutChangeEvent,
@@ -312,11 +312,11 @@ export class ActionSheet extends Component<Props, State, any> {
312
312
  () => {
313
313
  this.isClosing = false;
314
314
  this.isReachedTop = false;
315
- this.props.onPositionChanged && this.props.onPositionChanged(false);
315
+ this.props.onPositionChanged?.(false);
316
316
  this.indicatorTranslateY.setValue(-this.state.paddingTop);
317
317
  this.layoutHasCalled = false;
318
318
  this.deviceLayoutCalled = false;
319
- this.props.onClose && this.props.onClose();
319
+ this.props.onClose?.();
320
320
  }
321
321
  );
322
322
  }
@@ -334,7 +334,7 @@ export class ActionSheet extends Component<Props, State, any> {
334
334
  setTimeout(() => {
335
335
  UIManager.measureInWindow(
336
336
  this.safeAreaViewRef.current._nativeTag,
337
- (x, y, width, height) => {
337
+ (_x, _y, _width, height) => {
338
338
  safeAreaPaddingTop = height;
339
339
  resolve(height === 0 ? 20 : height);
340
340
  }
@@ -377,7 +377,7 @@ export class ActionSheet extends Component<Props, State, any> {
377
377
  this.underlayScale.setValue(1);
378
378
  this.underlayTranslateY.setValue(100);
379
379
  if (!gestureEnabled) {
380
- this.props.onPositionChanged && this.props.onPositionChanged(true);
380
+ this.props.onPositionChanged?.(true);
381
381
  }
382
382
  this.updateActionSheetPosition(scrollOffset);
383
383
  }
@@ -441,7 +441,7 @@ export class ActionSheet extends Component<Props, State, any> {
441
441
  this._scrollTo(scrollOffset);
442
442
  await waitAsync(300);
443
443
  this.isRecoiling = false;
444
- this.props.onPositionChanged && this.props.onPositionChanged(true);
444
+ this.props.onPositionChanged?.(true);
445
445
  } else {
446
446
  this._returnToPrevScrollPosition(this.actionSheetHeight);
447
447
  }
@@ -529,12 +529,12 @@ export class ActionSheet extends Component<Props, State, any> {
529
529
  if (this.actionSheetHeight < this.offsetY) {
530
530
  if (!this.isReachedTop) {
531
531
  this.isReachedTop = true;
532
- this.props.onPositionChanged && this.props.onPositionChanged(true);
532
+ this.props.onPositionChanged?.(true);
533
533
  }
534
534
  } else {
535
535
  if (this.isReachedTop) {
536
536
  this.isReachedTop = false;
537
- this.props.onPositionChanged && this.props.onPositionChanged(false);
537
+ this.props.onPositionChanged?.(false);
538
538
  }
539
539
  }
540
540
 
@@ -581,7 +581,7 @@ export class ActionSheet extends Component<Props, State, any> {
581
581
  const ReactNativeVersion = require("react-native/Libraries/Core/ReactNativeVersion");
582
582
 
583
583
  let v = ReactNativeVersion.version.major + ReactNativeVersion.version.minor;
584
- v = parseInt(v);
584
+ v = parseInt(v, 10);
585
585
 
586
586
  if (v >= 63 || Platform.OS === "ios") {
587
587
  const keyboardHeight = event.endCoordinates.height;
@@ -595,20 +595,24 @@ export class ActionSheet extends Component<Props, State, any> {
595
595
  return;
596
596
  }
597
597
 
598
- UIManager.measure(currentlyFocusedField, (originX, originY, width, height, pageX, pageY) => {
599
- const fieldHeight = height;
600
- const gap = windowHeight - keyboardHeight - (pageY + fieldHeight);
601
- if (gap >= 0) {
602
- return;
598
+ UIManager.measure(
599
+ currentlyFocusedField,
600
+ (_originX, _originY, _width, height, _pageX, pageY) => {
601
+ const fieldHeight = height;
602
+ const gap = windowHeight - keyboardHeight - (pageY + fieldHeight);
603
+ if (gap >= 0) {
604
+ return;
605
+ }
606
+ const toValue =
607
+ this.props.keyboardMode === "position" ? -(keyboardHeight + 15) : gap - 10;
608
+
609
+ Animated.timing(this.transformValue, {
610
+ toValue,
611
+ duration: 250,
612
+ useNativeDriver: true,
613
+ }).start();
603
614
  }
604
- const toValue = this.props.keyboardMode === "position" ? -(keyboardHeight + 15) : gap - 10;
605
-
606
- Animated.timing(this.transformValue, {
607
- toValue,
608
- duration: 250,
609
- useNativeDriver: true,
610
- }).start();
611
- });
615
+ );
612
616
  } else {
613
617
  Animated.timing(this.transformValue, {
614
618
  toValue: -10,
@@ -19,7 +19,7 @@ export const AddressField: FC<AddressFieldProps> = ({
19
19
  }) => {
20
20
  const handleAddressChange = (field: string, newValue: string) => {
21
21
  onChange({...value, [field]: newValue});
22
- onBlur && onBlur({...value, [field]: newValue});
22
+ onBlur?.({...value, [field]: newValue});
23
23
  };
24
24
 
25
25
  const handleAutoCompleteChange = (newValue: AddressInterface) => {
package/src/Badge.tsx CHANGED
@@ -77,7 +77,7 @@ export const Badge = ({
77
77
  let badgeValue = value;
78
78
 
79
79
  if (variant === "numberOnly") {
80
- if (!isNaN(Number(value)) && maxValue) {
80
+ if (!Number.isNaN(Number(value)) && maxValue) {
81
81
  const numberValue = Number(value);
82
82
  if (numberValue > maxValue) {
83
83
  badgeValue = `${maxValue}+`;
package/src/Banner.tsx CHANGED
@@ -1,6 +1,6 @@
1
1
  import debounce from "lodash/debounce";
2
2
  import React, {useEffect, useState} from "react";
3
- import {ActivityIndicator, Pressable, Text as NativeText, View} from "react-native";
3
+ import {ActivityIndicator, Text as NativeText, Pressable, View} from "react-native";
4
4
 
5
5
  import {Box} from "./Box";
6
6
  import {BannerProps, IconName, SurfaceTheme} from "./Common";