@draftbit/core 46.4.4-808a01.2 → 46.4.4-86483e.2

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 (313) hide show
  1. package/lib/commonjs/Provider.js +0 -9
  2. package/lib/commonjs/components/Accordion/AccordionGroup.js +0 -14
  3. package/lib/commonjs/components/Accordion/AccordionItem.js +23 -17
  4. package/lib/commonjs/components/Accordion/index.js +0 -3
  5. package/lib/commonjs/components/ActionSheet/ActionSheet.js +0 -9
  6. package/lib/commonjs/components/ActionSheet/ActionSheetCancel.js +0 -5
  7. package/lib/commonjs/components/ActionSheet/ActionSheetItem.js +0 -7
  8. package/lib/commonjs/components/ActionSheet/index.js +0 -4
  9. package/lib/commonjs/components/AnimatedCircularProgress.js +1 -26
  10. package/lib/commonjs/components/AspectRatio.js +1 -28
  11. package/lib/commonjs/components/AvatarEdit.js +4 -28
  12. package/lib/commonjs/components/Banner.js +12 -46
  13. package/lib/commonjs/components/Button.js +12 -50
  14. package/lib/commonjs/components/Card.js +0 -14
  15. package/lib/commonjs/components/CardBlock.js +4 -29
  16. package/lib/commonjs/components/CardContainer.js +4 -32
  17. package/lib/commonjs/components/CardContainerRating.js +6 -34
  18. package/lib/commonjs/components/CardContainerShortImage.js +4 -28
  19. package/lib/commonjs/components/CardInline.js +1 -14
  20. package/lib/commonjs/components/Carousel.js +9 -51
  21. package/lib/commonjs/components/Checkbox/Checkbox.js +3 -18
  22. package/lib/commonjs/components/Checkbox/CheckboxGroup.js +0 -11
  23. package/lib/commonjs/components/Checkbox/CheckboxGroupRow.js +0 -20
  24. package/lib/commonjs/components/Checkbox/CheckboxRow.js +8 -47
  25. package/lib/commonjs/components/Checkbox/context.js +1 -6
  26. package/lib/commonjs/components/Checkbox/index.js +0 -4
  27. package/lib/commonjs/components/CircleImage.js +1 -24
  28. package/lib/commonjs/components/CircularProgress.js +8 -26
  29. package/lib/commonjs/components/Config.js +5 -13
  30. package/lib/commonjs/components/Container.js +4 -27
  31. package/lib/commonjs/components/DatePicker/DatePicker.js +16 -48
  32. package/lib/commonjs/components/DatePicker/DatePickerComponent.js +0 -7
  33. package/lib/commonjs/components/DatePicker/DatePickerComponent.web.js +0 -10
  34. package/lib/commonjs/components/DeprecatedButton.js +0 -23
  35. package/lib/commonjs/components/DeprecatedCardWrapper.js +1 -27
  36. package/lib/commonjs/components/DeprecatedFAB.js +3 -47
  37. package/lib/commonjs/components/Divider.js +1 -24
  38. package/lib/commonjs/components/Elevation.js +0 -11
  39. package/lib/commonjs/components/FAB.js +4 -29
  40. package/lib/commonjs/components/FieldSearchBarFull.js +0 -18
  41. package/lib/commonjs/components/FormRow.js +2 -26
  42. package/lib/commonjs/components/Header.js +0 -13
  43. package/lib/commonjs/components/HeaderLarge.js +0 -9
  44. package/lib/commonjs/components/HeaderMedium.js +0 -9
  45. package/lib/commonjs/components/HeaderOverline.js +0 -9
  46. package/lib/commonjs/components/IconButton.js +4 -31
  47. package/lib/commonjs/components/Image.js +0 -17
  48. package/lib/commonjs/components/Layout.js +19 -50
  49. package/lib/commonjs/components/Markdown.js +27 -0
  50. package/lib/commonjs/components/NumberInput.js +9 -33
  51. package/lib/commonjs/components/Picker/Picker.js +6 -39
  52. package/lib/commonjs/components/Picker/PickerComponent.android.js +6 -23
  53. package/lib/commonjs/components/Picker/PickerComponent.ios.js +8 -27
  54. package/lib/commonjs/components/Picker/PickerComponent.web.js +7 -43
  55. package/lib/commonjs/components/Portal/Portal.js +4 -14
  56. package/lib/commonjs/components/Portal/PortalConsumer.js +9 -21
  57. package/lib/commonjs/components/Portal/PortalHost.js +15 -54
  58. package/lib/commonjs/components/Portal/PortalManager.js +14 -34
  59. package/lib/commonjs/components/ProgressBar.js +9 -45
  60. package/lib/commonjs/components/ProgressCircle.js +0 -10
  61. package/lib/commonjs/components/ProgressIndicator.js +0 -9
  62. package/lib/commonjs/components/RadioButton/RadioButton.js +3 -27
  63. package/lib/commonjs/components/RadioButton/RadioButtonFieldGroup.js +0 -10
  64. package/lib/commonjs/components/RadioButton/RadioButtonGroup.js +0 -14
  65. package/lib/commonjs/components/RadioButton/RadioButtonRow.js +6 -44
  66. package/lib/commonjs/components/RadioButton/context.js +0 -5
  67. package/lib/commonjs/components/RadioButton/index.js +0 -5
  68. package/lib/commonjs/components/Row.js +0 -11
  69. package/lib/commonjs/components/RowBodyIcon.js +0 -10
  70. package/lib/commonjs/components/RowHeadlineImageCaption.js +2 -11
  71. package/lib/commonjs/components/RowHeadlineImageIcon.js +0 -10
  72. package/lib/commonjs/components/SVG.js +0 -9
  73. package/lib/commonjs/components/ScreenContainer.js +4 -36
  74. package/lib/commonjs/components/Slider.js +4 -44
  75. package/lib/commonjs/components/StarRating.js +4 -34
  76. package/lib/commonjs/components/StepIndicator.js +19 -71
  77. package/lib/commonjs/components/Stepper.js +4 -18
  78. package/lib/commonjs/components/Surface.js +2 -27
  79. package/lib/commonjs/components/Swiper/Swiper.js +0 -8
  80. package/lib/commonjs/components/Swiper/SwiperItem.js +0 -6
  81. package/lib/commonjs/components/Swiper/index.js +0 -3
  82. package/lib/commonjs/components/Switch.js +5 -18
  83. package/lib/commonjs/components/Text.js +13 -50
  84. package/lib/commonjs/components/TextField.js +39 -118
  85. package/lib/commonjs/components/ToggleButton.js +2 -31
  86. package/lib/commonjs/components/Touchable.js +1 -20
  87. package/lib/commonjs/components/Touchable.web.js +0 -2
  88. package/lib/commonjs/components/Typography.js +0 -5
  89. package/lib/commonjs/components/useAuthState.js +0 -9
  90. package/lib/commonjs/constants.js +0 -4
  91. package/lib/commonjs/hooks.js +4 -7
  92. package/lib/commonjs/index.js +7 -52
  93. package/lib/commonjs/interfaces/Icon.js +3 -5
  94. package/lib/commonjs/mappings/Accordion.js +0 -2
  95. package/lib/commonjs/mappings/AccordionItem.js +0 -2
  96. package/lib/commonjs/mappings/ActionSheet.js +0 -2
  97. package/lib/commonjs/mappings/ActionSheetCancel.js +0 -2
  98. package/lib/commonjs/mappings/ActionSheetItem.js +0 -2
  99. package/lib/commonjs/mappings/ActivityIndicator.js +0 -2
  100. package/lib/commonjs/mappings/AudioPlayer.js +2 -34
  101. package/lib/commonjs/mappings/AvatarEdit.js +0 -2
  102. package/lib/commonjs/mappings/Banner.js +0 -2
  103. package/lib/commonjs/mappings/BlurView.js +0 -2
  104. package/lib/commonjs/mappings/Button.js +6 -5
  105. package/lib/commonjs/mappings/Card.js +3 -4
  106. package/lib/commonjs/mappings/CardBlock.js +6 -5
  107. package/lib/commonjs/mappings/CardContainer.js +5 -7
  108. package/lib/commonjs/mappings/CardContainerRating.js +4 -4
  109. package/lib/commonjs/mappings/CardContainerShortImage.js +0 -2
  110. package/lib/commonjs/mappings/CardInline.js +0 -2
  111. package/lib/commonjs/mappings/Carousel.js +0 -2
  112. package/lib/commonjs/mappings/Checkbox.js +0 -2
  113. package/lib/commonjs/mappings/CheckboxGroup.js +0 -2
  114. package/lib/commonjs/mappings/CheckboxRow.js +0 -2
  115. package/lib/commonjs/mappings/CircleImage.js +0 -2
  116. package/lib/commonjs/mappings/Container.js +0 -2
  117. package/lib/commonjs/mappings/CustomCode.js +0 -2
  118. package/lib/commonjs/mappings/DatePicker.js +4 -4
  119. package/lib/commonjs/mappings/Divider.js +0 -2
  120. package/lib/commonjs/mappings/FAB.js +0 -2
  121. package/lib/commonjs/mappings/Fetch.js +0 -2
  122. package/lib/commonjs/mappings/FieldSearchBarFull.js +2 -3
  123. package/lib/commonjs/mappings/FlashList.js +0 -2
  124. package/lib/commonjs/mappings/FlatList.js +0 -2
  125. package/lib/commonjs/mappings/HeaderLarge.js +0 -2
  126. package/lib/commonjs/mappings/HeaderMedium.js +0 -2
  127. package/lib/commonjs/mappings/HeaderOverline.js +0 -2
  128. package/lib/commonjs/mappings/Icon.js +2 -3
  129. package/lib/commonjs/mappings/IconButton.js +0 -2
  130. package/lib/commonjs/mappings/Image.js +0 -2
  131. package/lib/commonjs/mappings/ImageBackground.js +0 -2
  132. package/lib/commonjs/mappings/KeyboardAvoidingView.js +0 -2
  133. package/lib/commonjs/mappings/KeyboardAwareScrollView.js +0 -2
  134. package/lib/commonjs/mappings/Layout.js +0 -2
  135. package/lib/commonjs/mappings/LinearGradient.js +0 -2
  136. package/lib/commonjs/mappings/MapCallout.js +0 -2
  137. package/lib/commonjs/mappings/MapMarker.js +0 -2
  138. package/lib/commonjs/mappings/MapView.js +0 -2
  139. package/lib/commonjs/mappings/Markdown.js +21 -0
  140. package/lib/commonjs/mappings/Modal.js +0 -2
  141. package/lib/commonjs/mappings/NumberInput.js +4 -4
  142. package/lib/commonjs/mappings/Picker.js +4 -4
  143. package/lib/commonjs/mappings/ProgressBar.js +0 -2
  144. package/lib/commonjs/mappings/ProgressCircle.js +0 -2
  145. package/lib/commonjs/mappings/ProgressIndicator.js +0 -2
  146. package/lib/commonjs/mappings/RadioButton.js +0 -2
  147. package/lib/commonjs/mappings/RadioButtonGroup.js +0 -2
  148. package/lib/commonjs/mappings/RadioButtonRow.js +0 -2
  149. package/lib/commonjs/mappings/RowBodyIcon.js +0 -2
  150. package/lib/commonjs/mappings/RowHeadlineImageCaption.js +0 -2
  151. package/lib/commonjs/mappings/RowHeadlineImageIcon.js +12 -8
  152. package/lib/commonjs/mappings/SVG.js +0 -2
  153. package/lib/commonjs/mappings/SafeAreaView.js +0 -2
  154. package/lib/commonjs/mappings/ScrollView.js +0 -2
  155. package/lib/commonjs/mappings/Slider.js +0 -2
  156. package/lib/commonjs/mappings/StarRating.js +1 -3
  157. package/lib/commonjs/mappings/Stepper.js +0 -2
  158. package/lib/commonjs/mappings/Surface.js +0 -2
  159. package/lib/commonjs/mappings/Swiper.js +0 -2
  160. package/lib/commonjs/mappings/SwiperItem.js +0 -2
  161. package/lib/commonjs/mappings/Switch.js +0 -2
  162. package/lib/commonjs/mappings/Text.js +5 -5
  163. package/lib/commonjs/mappings/TextArea.js +2 -3
  164. package/lib/commonjs/mappings/TextField.js +8 -9
  165. package/lib/commonjs/mappings/TextInput.js +3 -4
  166. package/lib/commonjs/mappings/ToggleButton.js +0 -2
  167. package/lib/commonjs/mappings/Touchable.js +0 -2
  168. package/lib/commonjs/mappings/Video.js +0 -2
  169. package/lib/commonjs/mappings/View.js +0 -2
  170. package/lib/commonjs/mappings/WebView.js +0 -2
  171. package/lib/commonjs/styles/DarkTheme.js +5 -6
  172. package/lib/commonjs/styles/DefaultTheme.js +26 -17
  173. package/lib/commonjs/styles/fonts.js +3 -5
  174. package/lib/commonjs/styles/overlay.js +5 -14
  175. package/lib/commonjs/styles/shadow.js +0 -9
  176. package/lib/commonjs/theming.js +0 -4
  177. package/lib/commonjs/utilities.js +2 -14
  178. package/lib/module/Provider.js +0 -1
  179. package/lib/module/components/Accordion/AccordionGroup.js +0 -4
  180. package/lib/module/components/Accordion/AccordionItem.js +0 -3
  181. package/lib/module/components/ActionSheet/ActionSheet.js +0 -2
  182. package/lib/module/components/ActionSheet/ActionSheetCancel.js +0 -2
  183. package/lib/module/components/ActionSheet/ActionSheetItem.js +0 -2
  184. package/lib/module/components/AnimatedCircularProgress.js +0 -6
  185. package/lib/module/components/AspectRatio.js +0 -6
  186. package/lib/module/components/AvatarEdit.js +0 -3
  187. package/lib/module/components/Banner.js +9 -10
  188. package/lib/module/components/Button.js +2 -10
  189. package/lib/module/components/Card.js +0 -2
  190. package/lib/module/components/CardBlock.js +0 -6
  191. package/lib/module/components/CardContainer.js +0 -7
  192. package/lib/module/components/CardContainerRating.js +2 -8
  193. package/lib/module/components/CardContainerShortImage.js +0 -3
  194. package/lib/module/components/CardInline.js +0 -2
  195. package/lib/module/components/Carousel.js +3 -9
  196. package/lib/module/components/Checkbox/Checkbox.js +3 -9
  197. package/lib/module/components/Checkbox/CheckboxGroup.js +0 -5
  198. package/lib/module/components/Checkbox/CheckboxGroupRow.js +0 -8
  199. package/lib/module/components/Checkbox/CheckboxRow.js +3 -11
  200. package/lib/module/components/Checkbox/context.js +1 -3
  201. package/lib/module/components/CircleImage.js +0 -3
  202. package/lib/module/components/CircularProgress.js +3 -9
  203. package/lib/module/components/Config.js +5 -11
  204. package/lib/module/components/Container.js +0 -3
  205. package/lib/module/components/DatePicker/DatePicker.js +16 -33
  206. package/lib/module/components/DatePicker/DatePickerComponent.js +0 -2
  207. package/lib/module/components/DatePicker/DatePickerComponent.web.js +0 -2
  208. package/lib/module/components/DeprecatedButton.js +0 -9
  209. package/lib/module/components/DeprecatedCardWrapper.js +0 -6
  210. package/lib/module/components/DeprecatedFAB.js +0 -13
  211. package/lib/module/components/Divider.js +0 -3
  212. package/lib/module/components/Elevation.js +0 -3
  213. package/lib/module/components/FAB.js +0 -3
  214. package/lib/module/components/FieldSearchBarFull.js +0 -9
  215. package/lib/module/components/FormRow.js +0 -1
  216. package/lib/module/components/Header.js +0 -2
  217. package/lib/module/components/HeaderLarge.js +0 -2
  218. package/lib/module/components/HeaderMedium.js +0 -2
  219. package/lib/module/components/HeaderOverline.js +0 -2
  220. package/lib/module/components/IconButton.js +0 -3
  221. package/lib/module/components/Image.js +0 -10
  222. package/lib/module/components/Layout.js +4 -3
  223. package/lib/module/components/Markdown.js +16 -0
  224. package/lib/module/components/NumberInput.js +8 -16
  225. package/lib/module/components/Picker/Picker.js +6 -23
  226. package/lib/module/components/Picker/PickerComponent.android.js +6 -10
  227. package/lib/module/components/Picker/PickerComponent.ios.js +8 -11
  228. package/lib/module/components/Picker/PickerComponent.web.js +6 -10
  229. package/lib/module/components/Portal/Portal.js +4 -6
  230. package/lib/module/components/Portal/PortalConsumer.js +5 -10
  231. package/lib/module/components/Portal/PortalHost.js +4 -22
  232. package/lib/module/components/Portal/PortalManager.js +7 -14
  233. package/lib/module/components/ProgressBar.js +5 -17
  234. package/lib/module/components/ProgressCircle.js +0 -2
  235. package/lib/module/components/ProgressIndicator.js +0 -2
  236. package/lib/module/components/RadioButton/RadioButton.js +12 -7
  237. package/lib/module/components/RadioButton/RadioButtonFieldGroup.js +0 -3
  238. package/lib/module/components/RadioButton/RadioButtonGroup.js +0 -7
  239. package/lib/module/components/RadioButton/RadioButtonRow.js +1 -9
  240. package/lib/module/components/RadioButton/context.js +0 -2
  241. package/lib/module/components/Row.js +0 -2
  242. package/lib/module/components/RowBodyIcon.js +0 -2
  243. package/lib/module/components/RowHeadlineImageCaption.js +2 -3
  244. package/lib/module/components/RowHeadlineImageIcon.js +0 -2
  245. package/lib/module/components/SVG.js +0 -2
  246. package/lib/module/components/ScreenContainer.js +0 -6
  247. package/lib/module/components/Slider.js +0 -10
  248. package/lib/module/components/StarRating.js +0 -3
  249. package/lib/module/components/StepIndicator.js +5 -29
  250. package/lib/module/components/Stepper.js +6 -9
  251. package/lib/module/components/Surface.js +0 -5
  252. package/lib/module/components/Swiper/Swiper.js +0 -4
  253. package/lib/module/components/Swiper/SwiperItem.js +0 -2
  254. package/lib/module/components/Switch.js +5 -7
  255. package/lib/module/components/Text.js +8 -11
  256. package/lib/module/components/TextField.js +16 -50
  257. package/lib/module/components/ToggleButton.js +0 -5
  258. package/lib/module/components/Touchable.js +0 -1
  259. package/lib/module/components/useAuthState.js +0 -4
  260. package/lib/module/constants.js +2 -1
  261. package/lib/module/hooks.js +4 -2
  262. package/lib/module/index.js +5 -2
  263. package/lib/module/interfaces/Icon.js +2 -1
  264. package/lib/module/mappings/AudioPlayer.js +3 -33
  265. package/lib/module/mappings/Button.js +6 -3
  266. package/lib/module/mappings/Card.js +3 -2
  267. package/lib/module/mappings/CardBlock.js +6 -3
  268. package/lib/module/mappings/CardContainer.js +5 -5
  269. package/lib/module/mappings/CardContainerRating.js +4 -2
  270. package/lib/module/mappings/DatePicker.js +4 -2
  271. package/lib/module/mappings/Fetch.js +0 -1
  272. package/lib/module/mappings/FieldSearchBarFull.js +2 -1
  273. package/lib/module/mappings/Icon.js +2 -1
  274. package/lib/module/mappings/Markdown.js +14 -0
  275. package/lib/module/mappings/NumberInput.js +4 -2
  276. package/lib/module/mappings/Picker.js +4 -2
  277. package/lib/module/mappings/RowHeadlineImageIcon.js +12 -6
  278. package/lib/module/mappings/StarRating.js +1 -1
  279. package/lib/module/mappings/Text.js +5 -3
  280. package/lib/module/mappings/TextArea.js +2 -1
  281. package/lib/module/mappings/TextField.js +8 -7
  282. package/lib/module/mappings/TextInput.js +3 -2
  283. package/lib/module/styles/DarkTheme.js +4 -2
  284. package/lib/module/styles/DefaultTheme.js +26 -13
  285. package/lib/module/styles/fonts.js +2 -1
  286. package/lib/module/styles/overlay.js +4 -10
  287. package/lib/module/styles/shadow.js +0 -6
  288. package/lib/module/utilities.js +2 -5
  289. package/lib/typescript/src/components/Markdown.d.ts +6 -0
  290. package/lib/typescript/src/components/Text.d.ts +2 -1
  291. package/lib/typescript/src/components/TextField.d.ts +2 -1
  292. package/lib/typescript/src/index.d.ts +1 -0
  293. package/lib/typescript/src/mappings/AudioPlayer.d.ts +1 -62
  294. package/lib/typescript/src/mappings/Markdown.d.ts +9 -0
  295. package/lib/typescript/src/mappings/TextField.d.ts +2 -2
  296. package/lib/typescript/src/mappings/TextInput.d.ts +1 -1
  297. package/package.json +5 -3
  298. package/src/components/Markdown.js +12 -0
  299. package/src/components/Markdown.tsx +25 -0
  300. package/src/components/Text.js +8 -2
  301. package/src/components/Text.tsx +6 -1
  302. package/src/components/TextField.js +6 -1
  303. package/src/components/TextField.tsx +7 -1
  304. package/src/index.js +1 -0
  305. package/src/index.tsx +1 -0
  306. package/src/mappings/AudioPlayer.js +2 -39
  307. package/src/mappings/AudioPlayer.ts +1 -41
  308. package/src/mappings/Markdown.js +14 -0
  309. package/src/mappings/Markdown.ts +15 -0
  310. package/src/mappings/TextField.js +1 -1
  311. package/src/mappings/TextField.ts +1 -1
  312. package/src/mappings/TextInput.js +1 -1
  313. package/src/mappings/TextInput.ts +1 -1
@@ -4,29 +4,25 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var React = _interopRequireWildcard(require("react"));
9
-
10
8
  var _reactNative = require("react-native");
11
-
12
9
  var _theming = require("../theming");
13
-
14
10
  var _utilities = require("../utilities");
15
-
16
11
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
-
18
12
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
-
13
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
14
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
15
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
16
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
20
17
  const AnimatedText = _reactNative.Animated.createAnimatedComponent(_reactNative.Text);
21
-
22
18
  const FOCUS_ANIMATION_DURATION = 150;
23
19
  const BLUR_ANIMATION_DURATION = 180;
24
20
  const ICON_SIZE = 24;
25
-
26
21
  class TextField extends React.Component {
27
22
  constructor() {
28
23
  super(...arguments);
29
- this.state = {
24
+ _defineProperty(this, "state", {
25
+ nativeProps: {},
30
26
  labeled: new _reactNative.Animated.Value(this.props.value || this.props.error ? 0 : 1),
31
27
  focused: false,
32
28
  placeholder: this.props.error ? this.props.placeholder : "",
@@ -34,59 +30,50 @@ class TextField extends React.Component {
34
30
  measured: false,
35
31
  width: 0
36
32
  }
37
- };
38
- this._timer = setTimeout(() => {}, 0);
33
+ });
34
+ _defineProperty(this, "_timer", setTimeout(() => {}, 0));
35
+ _defineProperty(this, "_showPlaceholder", () => {
36
+ clearTimeout(this._timer);
39
37
 
40
- this._showPlaceholder = () => {
41
- clearTimeout(this._timer); // Set the placeholder in a delay to offset the label animation
38
+ // Set the placeholder in a delay to offset the label animation
42
39
  // If we show it immediately, they'll overlap and look ugly
43
-
44
40
  this._timer = setTimeout(() => this.setState({
45
41
  placeholder: this.props.placeholder
46
42
  }), 50);
47
- };
48
-
49
- this._hidePlaceholder = () => this.setState({
50
- placeholder: ""
51
43
  });
52
-
53
- this._restoreLabel = () => _reactNative.Animated.timing(this.state.labeled, {
44
+ _defineProperty(this, "_hidePlaceholder", () => this.setState({
45
+ placeholder: ""
46
+ }));
47
+ _defineProperty(this, "_restoreLabel", () => _reactNative.Animated.timing(this.state.labeled, {
54
48
  toValue: 1,
55
49
  duration: FOCUS_ANIMATION_DURATION,
56
50
  useNativeDriver: true
57
- }).start();
58
-
59
- this._minmizeLabel = () => _reactNative.Animated.timing(this.state.labeled, {
51
+ }).start());
52
+ _defineProperty(this, "_minmizeLabel", () => _reactNative.Animated.timing(this.state.labeled, {
60
53
  toValue: 0,
61
54
  duration: BLUR_ANIMATION_DURATION,
62
55
  useNativeDriver: true
63
- }).start();
64
-
65
- this._handleFocus = () => {
56
+ }).start());
57
+ _defineProperty(this, "_handleFocus", () => {
66
58
  if (this.props.disabled) {
67
59
  return;
68
60
  }
69
-
70
61
  this.setState({
71
62
  focused: true
72
63
  });
73
- };
74
-
75
- this._handleBlur = () => {
64
+ });
65
+ _defineProperty(this, "_handleBlur", () => {
76
66
  if (this.props.disabled) {
77
67
  return;
78
68
  }
79
-
80
69
  this.setState({
81
70
  focused: false
82
71
  });
83
- };
84
-
85
- this._handleChangeText = value => {
72
+ });
73
+ _defineProperty(this, "_handleChangeText", value => {
86
74
  if (this.props.disabled) {
87
75
  return;
88
76
  }
89
-
90
77
  if (typeof value === "string") {
91
78
  this.setState({
92
79
  value
@@ -98,27 +85,22 @@ class TextField extends React.Component {
98
85
  });
99
86
  this.props.onChangeText && this.props.onChangeText(value.nativeEvent.text);
100
87
  }
101
- };
102
-
103
- this._root = undefined;
88
+ });
89
+ _defineProperty(this, "_root", undefined);
104
90
  }
105
-
106
91
  static getDerivedStateFromProps(nextProps, prevState) {
107
92
  return {
108
93
  value: typeof nextProps.value !== "undefined" ? nextProps.value : prevState.value
109
94
  };
110
95
  }
111
-
112
96
  componentDidMount() {
113
97
  if (this.props.defaultValue) {
114
98
  this._handleChangeText(this.props.defaultValue);
115
99
  }
116
-
117
100
  if (this.props.placeholder) {
118
101
  this._minmizeLabel();
119
102
  }
120
103
  }
121
-
122
104
  componentDidUpdate(prevProps, prevState) {
123
105
  if (prevState.focused !== this.state.focused || prevState.value !== this.state.value) {
124
106
  // The label should be minimized if the text input is focused, or has text
@@ -129,7 +111,6 @@ class TextField extends React.Component {
129
111
  this._restoreLabel();
130
112
  }
131
113
  }
132
-
133
114
  if (prevState.focused !== this.state.focused || prevProps.label !== this.props.label) {
134
115
  // Show placeholder text only if the input is focused, or has error, or there's no label
135
116
  // We don't show placeholder if there's a label because the label acts as placeholder
@@ -141,11 +122,9 @@ class TextField extends React.Component {
141
122
  }
142
123
  }
143
124
  }
144
-
145
125
  componentWillUnmount() {
146
126
  clearTimeout(this._timer);
147
127
  }
148
-
149
128
  toggleFocus() {
150
129
  this.setState(prevState => ({
151
130
  focused: !prevState.focused
@@ -154,28 +133,24 @@ class TextField extends React.Component {
154
133
  /**
155
134
  * @internal
156
135
  */
157
-
158
-
159
136
  setNativeProps(args) {
160
- return this._root && this._root.setNativeProps(args);
137
+ this.setState(state => ({
138
+ ...state,
139
+ nativeState: args || {}
140
+ }));
161
141
  }
162
-
163
142
  isFocused() {
164
143
  return this._root && this._root.isFocused();
165
144
  }
166
-
167
145
  clear() {
168
146
  return this._root && this._root.clear();
169
147
  }
170
-
171
148
  focus() {
172
149
  return this._root && this._root.focus();
173
150
  }
174
-
175
151
  blur() {
176
152
  return this._root && this._root.blur();
177
153
  }
178
-
179
154
  render() {
180
155
  const {
181
156
  Icon,
@@ -198,8 +173,7 @@ class TextField extends React.Component {
198
173
  roundness,
199
174
  disabledOpacity
200
175
  },
201
- render = props => /*#__PURE__*/React.createElement(_reactNative.TextInput, { ...props
202
- }),
176
+ render = props => /*#__PURE__*/React.createElement(_reactNative.TextInput, props),
203
177
  ...rest
204
178
  } = this.props;
205
179
  const MINIMIZED_LABEL_Y_OFFSET = -(typography.caption.lineHeight + 4);
@@ -209,7 +183,6 @@ class TextField extends React.Component {
209
183
  const hasActiveOutline = this.state.focused || error;
210
184
  let inputTextColor, activeColor, underlineColor, borderColor, placeholderColor, containerStyle, backgroundColor, inputStyle;
211
185
  inputTextColor = colors.strong;
212
-
213
186
  if (disabled) {
214
187
  activeColor = colors.light;
215
188
  placeholderColor = colors.light;
@@ -222,11 +195,9 @@ class TextField extends React.Component {
222
195
  underlineColor = underlineColorProp;
223
196
  backgroundColor = colors.background;
224
197
  }
225
-
226
198
  if (rest.placeholderTextColor) {
227
199
  placeholderColor = rest.placeholderTextColor;
228
200
  }
229
-
230
201
  const {
231
202
  lineHeight,
232
203
  ...subtitle1
@@ -238,13 +209,10 @@ class TextField extends React.Component {
238
209
  paddingRight: rightIconName ? ICON_SIZE + 16 + 4 : 12,
239
210
  ...subtitle1
240
211
  };
241
-
242
212
  if (!multiline) {
243
213
  inputStyle.height = lineHeight;
244
214
  }
245
-
246
215
  let assistiveTextLeftMargin;
247
-
248
216
  if (type === "underline") {
249
217
  containerStyle = {
250
218
  borderTopLeftRadius: roundness,
@@ -252,7 +220,6 @@ class TextField extends React.Component {
252
220
  paddingBottom: 12,
253
221
  marginTop: 16
254
222
  };
255
-
256
223
  if (leftIconName && leftIconMode === "outset") {
257
224
  assistiveTextLeftMargin = ICON_SIZE + 8;
258
225
  } else {
@@ -268,7 +235,6 @@ class TextField extends React.Component {
268
235
  opacity: disabled ? disabledOpacity : 1,
269
236
  backgroundColor
270
237
  };
271
-
272
238
  if (leftIconName && leftIconMode === "inset") {
273
239
  assistiveTextLeftMargin = 16 + 4;
274
240
  } else if (leftIconName && leftIconMode === "outset") {
@@ -276,16 +242,12 @@ class TextField extends React.Component {
276
242
  } else {
277
243
  assistiveTextLeftMargin = 12;
278
244
  }
279
-
280
245
  inputStyle.paddingHorizontal = 12;
281
246
  }
282
-
283
247
  if (leftIconName && leftIconMode === "outset") {
284
248
  containerStyle.marginLeft = ICON_SIZE + 8;
285
249
  }
286
-
287
250
  let leftIconColor;
288
-
289
251
  if (error) {
290
252
  leftIconColor = colors.error;
291
253
  } else if (this.state.focused) {
@@ -293,7 +255,6 @@ class TextField extends React.Component {
293
255
  } else {
294
256
  leftIconColor = colors.light;
295
257
  }
296
-
297
258
  const leftIconProps = {
298
259
  size: 24,
299
260
  color: leftIconColor,
@@ -304,7 +265,8 @@ class TextField extends React.Component {
304
265
  marginTop: type === "solid" ? MINIMIZED_LABEL_FONT_SIZE + 4 : leftIconMode === "outset" ? 16 : 0,
305
266
  marginLeft: leftIconMode === "inset" && type === "solid" ? 16 : 0
306
267
  };
307
- const labelStyle = { ...typography.subtitle1,
268
+ const labelStyle = {
269
+ ...typography.subtitle1,
308
270
  top: type === "solid" ? 16 : 0,
309
271
  left: leftIconName && leftIconMode === "inset" ? ICON_SIZE + (type === "solid" ? 16 : 12) : 0,
310
272
  transform: [{
@@ -333,7 +295,6 @@ class TextField extends React.Component {
333
295
  const inputStyles = (0, _utilities.applyStyles)([styles.input, inputStyle, type === "solid" ? {
334
296
  marginHorizontal: 12
335
297
  } : {}], textStyles);
336
-
337
298
  const {
338
299
  backgroundColor: bgColor,
339
300
  padding,
@@ -350,12 +311,11 @@ class TextField extends React.Component {
350
311
  borderColor: borderCol,
351
312
  ...styleProp
352
313
  } = _reactNative.StyleSheet.flatten(style || {});
353
-
354
314
  return /*#__PURE__*/React.createElement(_reactNative.View, {
355
315
  style: [styles.container, styleProp]
356
- }, leftIconName && leftIconMode === "outset" ? /*#__PURE__*/React.createElement(Icon, { ...leftIconProps,
316
+ }, leftIconName && leftIconMode === "outset" ? /*#__PURE__*/React.createElement(Icon, _extends({}, leftIconProps, {
357
317
  style: leftIconStyle
358
- }) : null, /*#__PURE__*/React.createElement(_reactNative.View, {
318
+ })) : null, /*#__PURE__*/React.createElement(_reactNative.View, {
359
319
  style: (0, _utilities.applyStyles)([containerStyle], {
360
320
  height: style === null || style === void 0 ? void 0 : style.height,
361
321
  backgroundColor: bgColor,
@@ -390,7 +350,8 @@ class TextField extends React.Component {
390
350
  React.createElement(_reactNative.View, {
391
351
  pointerEvents: "none",
392
352
  style: [_reactNative.StyleSheet.absoluteFill, {
393
- opacity: // Hide the label in minimized state until we measure its width
353
+ opacity:
354
+ // Hide the label in minimized state until we measure its width
394
355
  this.state.value || this.state.focused ? this.state.labelLayout.measured ? 1 : 0 : 1
395
356
  }]
396
357
  }, /*#__PURE__*/React.createElement(AnimatedText, {
@@ -422,9 +383,9 @@ class TextField extends React.Component {
422
383
  style: {
423
384
  justifyContent: type === "solid" ? "center" : undefined
424
385
  }
425
- }, /*#__PURE__*/React.createElement(Icon, { ...leftIconProps,
386
+ }, /*#__PURE__*/React.createElement(Icon, _extends({}, leftIconProps, {
426
387
  style: leftIconStyle
427
- })) : null, render({
388
+ }))) : null, render({
428
389
  ref: c => {
429
390
  this._root = c;
430
391
  },
@@ -440,6 +401,7 @@ class TextField extends React.Component {
440
401
  underlineColorAndroid: "transparent",
441
402
  style: inputStyles,
442
403
  ...rest,
404
+ ...this.state.nativeProps,
443
405
  value: this.state.value
444
406
  })), rightIconName ? /*#__PURE__*/React.createElement(Icon, {
445
407
  name: rightIconName,
@@ -458,50 +420,9 @@ class TextField extends React.Component {
458
420
  }]
459
421
  }, assistiveText) : null);
460
422
  }
461
-
462
423
  }
463
-
464
424
  var _default = (0, _theming.withTheme)(TextField);
465
-
466
425
  exports.default = _default;
467
-
468
- const styles = _reactNative.StyleSheet.create({
469
- container: {
470
- alignSelf: "stretch"
471
- },
472
- placeholder: {
473
- position: "absolute",
474
- left: 0
475
- },
476
- underline: {
477
- position: "absolute",
478
- left: 0,
479
- right: 0,
480
- bottom: 0,
481
- height: 2
482
- },
483
- input: {
484
- flexGrow: 1,
485
- justifyContent: "center",
486
- textAlignVertical: "center",
487
- margin: 0,
488
- textAlign: _reactNative.I18nManager.isRTL ? "right" : "left"
489
- }
490
- });? /*#__PURE__*/React.createElement(_reactNative.Text, {
491
- style: [{
492
- color: error ? colors.error : colors.light,
493
- marginTop: 8,
494
- marginLeft: assistiveTextLeftMargin
495
- }]
496
- }, assistiveText) : null);
497
- }
498
-
499
- }
500
-
501
- var _default = (0, _theming.withTheme)(TextField);
502
-
503
- exports.default = _default;
504
-
505
426
  const styles = _reactNative.StyleSheet.create({
506
427
  container: {
507
428
  alignSelf: "stretch"
@@ -4,21 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var React = _interopRequireWildcard(require("react"));
9
-
10
8
  var _theming = require("../theming");
11
-
12
9
  var _reactNative = require("react-native");
13
-
14
10
  var _IconButton = _interopRequireDefault(require("./IconButton"));
15
-
16
11
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
-
18
12
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
-
20
13
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
-
14
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
22
15
  const ToggleButton = _ref => {
23
16
  let {
24
17
  Icon,
@@ -50,13 +43,11 @@ const ToggleButton = _ref => {
50
43
  setInternalValue(defaultValue);
51
44
  }
52
45
  }, [defaultValue]);
53
-
54
46
  const handlePress = () => {
55
47
  setInternalValue(!internalValue);
56
48
  onPress(!internalValue);
57
49
  };
58
-
59
- return /*#__PURE__*/React.createElement(_IconButton.default, {
50
+ return /*#__PURE__*/React.createElement(_IconButton.default, _extends({
60
51
  Icon: Icon,
61
52
  icon: icon,
62
53
  size: iconSize,
@@ -68,33 +59,13 @@ const ToggleButton = _ref => {
68
59
  height,
69
60
  backgroundColor: internalValue ? colors[colorSecondary] : colors[color],
70
61
  borderColor: colors[borderColor]
71
- }, style],
72
- ...rest
73
- });
74
- };
75
-
76
- const styles = _reactNative.StyleSheet.create({
77
- mainContainer: {
78
- borderWidth: 1
79
- }
80
- });
81
-
82
- var _default = (0, _theming.withTheme)(ToggleButton);
83
-
84
- exports.default = _default;th,
85
- height,
86
- backgroundColor: internalValue ? colors[colorSecondary] : colors[color],
87
- borderColor: colors[borderColor]
88
62
  }, style]
89
63
  }, rest));
90
64
  };
91
-
92
65
  const styles = _reactNative.StyleSheet.create({
93
66
  mainContainer: {
94
67
  borderWidth: 1
95
68
  }
96
69
  });
97
-
98
70
  var _default = (0, _theming.withTheme)(ToggleButton);
99
-
100
71
  exports.default = _default;
@@ -4,13 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = Touchable;
7
-
8
7
  var _react = _interopRequireDefault(require("react"));
9
-
10
8
  var _reactNative = require("react-native");
11
-
12
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
-
10
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
14
11
  function Touchable(_ref) {
15
12
  let {
16
13
  children,
@@ -19,22 +16,6 @@ function Touchable(_ref) {
19
16
  style,
20
17
  ...props
21
18
  } = _ref;
22
- return /*#__PURE__*/_react.default.createElement(_reactNative.Pressable, {
23
- onPress: onPress,
24
- disabled: disabled,
25
- hitSlop: 8,
26
- style: _ref2 => {
27
- let {
28
- pressed
29
- } = _ref2;
30
- return [{
31
- opacity: pressed || disabled ? 0.75 : 1
32
- }, style];
33
- },
34
- ...props
35
- }, children);
36
- }rops
37
- } = _ref;
38
19
  return /*#__PURE__*/_react.default.createElement(_reactNative.Pressable, _extends({
39
20
  onPress: onPress,
40
21
  disabled: disabled,
@@ -4,8 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _reactNative = require("react-native");
9
-
10
8
  var _default = _reactNative.TouchableOpacity;
11
9
  exports.default = _default;
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.Title = exports.Subtitle = exports.Caption = void 0;
7
-
8
7
  var _react = _interopRequireDefault(require("react"));
9
-
10
8
  var _reactNative = require("react-native");
11
-
12
9
  var _theming = require("../theming");
13
-
14
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
11
  const Title = (0, _theming.withTheme)(_ref => {
17
12
  let {
18
13
  text,
@@ -4,13 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.useAuthState = void 0;
7
-
8
7
  var React = _interopRequireWildcard(require("react"));
9
-
10
8
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
11
-
12
9
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
13
-
14
10
  const useAuthState = auth => {
15
11
  const [error, setError] = React.useState();
16
12
  const [value, setValue] = React.useState(auth.currentUser);
@@ -20,18 +16,13 @@ const useAuthState = auth => {
20
16
  list();
21
17
  };
22
18
  }, [auth]);
23
-
24
19
  const signInWithEmailAndPassword = (user, password) => {
25
20
  auth.signInWithEmailAndPassword(user, password).then(setValue).catch(setError);
26
21
  };
27
-
28
22
  const createUserWithEmailAndPassword = (user, password) => {
29
23
  auth.signInWithEmailAndPassword(user, password).then(setValue).catch(setError);
30
24
  };
31
-
32
25
  const signOut = () => auth.signOut();
33
-
34
26
  return [value, error, signInWithEmailAndPassword, signOut, createUserWithEmailAndPassword];
35
27
  };
36
-
37
28
  exports.useAuthState = useAuthState;
@@ -4,16 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.APPROX_STATUSBAR_HEIGHT = void 0;
7
-
8
7
  var _reactNative = require("react-native");
9
-
10
8
  // @ts-ignore
11
9
  const expo = global.__expo;
12
10
  const DEFAULT_STATUSBAR_HEIGHT_EXPO = expo !== null && expo !== void 0 && expo.Constants ? expo.Constants.statusBarHeight : 0;
13
-
14
11
  const APPROX_STATUSBAR_HEIGHT = _reactNative.Platform.select({
15
12
  android: DEFAULT_STATUSBAR_HEIGHT_EXPO,
16
13
  ios: _reactNative.Platform.Version < 11 ? DEFAULT_STATUSBAR_HEIGHT_EXPO : 0
17
14
  });
18
-
19
15
  exports.APPROX_STATUSBAR_HEIGHT = APPROX_STATUSBAR_HEIGHT;
@@ -4,21 +4,18 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.usePrevious = usePrevious;
7
-
8
7
  var _react = _interopRequireDefault(require("react"));
9
-
10
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
-
12
9
  function usePrevious(value) {
13
10
  // The ref object is a generic container whose current property is mutable
14
11
  // and can hold any value, similar to an instance property on a class
15
- const ref = _react.default.useRef(); // Store current value in ref
16
-
12
+ const ref = _react.default.useRef();
17
13
 
14
+ // Store current value in ref
18
15
  _react.default.useEffect(() => {
19
16
  ref.current = value;
20
- }, [value]); // Return previous value (happens before update in useEffect above)
21
-
17
+ }, [value]);
22
18
 
19
+ // Return previous value (happens before update in useEffect above)
23
20
  return ref.current;
24
21
  }