react-native-onyx icon indicating copy to clipboard operation
react-native-onyx copied to clipboard

Persistent, offline-first state management solution for React Native. Easy to use with minimal config and boilerplate.

Results 54 react-native-onyx issues
Sort by recently updated
recently updated
newest added

We use a very popular checklist in the `Expensify/App` repo that asks authors and reviewers to consider and perform some sane checks on testing, code quality, best practices, etc. In...

Planning

In the benchmarks performed here: https://github.com/Expensify/Expensify.cash/issues/2667#issuecomment-874160913 I've noticed that sequential reads happen very fast `8-9ms`, much faster than what it takes in E.cash I think the reason is that `Onyx`...

Planning

### Problem Currently, the way `multiset` works is that it notifies subscribers of any changes to the onyx keys in a loop: https://github.com/Expensify/react-native-onyx/blob/f96fa2dc38b6abd1f99512af59647162fa11c88e/lib/Onyx.js#L985-L992 The performance of this can be improved...

Weekly

Coming from https://github.com/Expensify/App/issues/25481#issuecomment-1687321203 ### Problem Generally, to delete stuff from Onyx you set it to null. However: - Given a subscriber to a collection key with waitForCollectionCallback: true - When...

Reviewing
Weekly

We have observed that IndexedDB can be super slow with writes and cause major lag and jank in the app when there is a huge amount of data to store...

Coming from this [🧵 on slack](https://expensify.slack.com/archives/C01GTK53T8Q/p1691509392124649) We need to update the docs to list all the new features we've added in Onyx since Dec 2022. We should also add an...

**Problem** The default behavior of Oynx.merge is a deep merge which will object keys and array elements. This is fine but for some scenarios, we want to overwrite the object...

**Reproduction:** 1. Set something to Onyx in web implementation that cannot be serialized like `FormData` or some other class 2. See this: ![2022-01-20_12-44-20](https://user-images.githubusercontent.com/32969087/150434067-860b7a2e-a30a-45cd-972a-acf1f1bd3f34.png)

**Problem:** On dev we are pointing to `dist/web.development.js` which is a bit more difficult to test code changes. My current workaround is: Run `npm run build` in `/react-native-onyx` Copy `web.developent.js`...

Improvement

**Reproduction:** - Add `captureMetrics: true` in `Onyx.init()` - Observe error in JS console ``` app-c63af0784ac898b80ef3.bundle.js:33823 Uncaught TypeError: getAllKeys is not a function at addAllSafeEvictionKeysToRecentlyAccessedList (web.development.js?d0e7:698:1) at Object.init (web.development.js?d0e7:1418:1) at __WEBPACK_DEFAULT_EXPORT__...

bug