chinwagsocial/app/javascript/mastodon/actions
ThibG f895bf1984 Optimize makeGetStatus (#11211)
* Optimize makeGetStatus

Because `ImmutableList.filter` always returns a new object and `createSelector`
memoizes based on object identity, the selector returned by `makeGetStatus`
would *always* execute.

To avoid that, we wrap `getFilters` into a new memoizer that memoizes based on
deep equality, thus returning the same object as long as the filters haven't
changed, allowing the memoization of `makeGetStatus` to work.

Furthermore, we memoize the compiled regexs instead of recomputing them each
time the selector is called.

* Fix memoized result being cleared too often

* Make notifications use memoized getFiltersRegex
2019-06-30 00:12:38 +02:00
..
importer Apply filters to poll options (#11174) 2019-06-25 14:45:14 +02:00
push_notifications Do not override the default push notification settings (#6037) 2018-05-19 14:45:58 +02:00
accounts.js Optimize the process of following someone (#9220) 2018-11-08 21:05:42 +01:00
alerts.js Fix list not being automatically unpinned when it returns 404 in web UI (#11045) 2019-06-11 02:26:37 +02:00
blocks.js Store objects to IndexedDB (#6826) 2018-03-24 13:06:27 +01:00
bundles.js Lazy load components (#3879) 2017-07-08 00:06:02 +02:00
columns.js Put "Media Only" option in column settings instead of content area headline (#7801) 2018-06-15 11:15:15 +02:00
compose.js When sending a toot, ensure a CW is only set if the CW field is visible (#11206) 2019-06-29 18:32:36 +02:00
conversations.js Fix direct timeline pagination in the WebUI (#10126) 2019-02-27 19:13:16 +01:00
custom_emojis.js Fix loading indicator inconsistency (#9252) 2018-11-10 15:04:13 +01:00
domain_blocks.js Do not cause an error if domain_lists.blocks.next is undefined (#8021) 2018-07-14 23:28:29 +02:00
dropdown_menu.js Only focus first element of dropdown menus if using keyboard (#8679) 2018-09-13 20:31:33 +02:00
emojis.js Track frequently used emojis in web UI (#5275) 2017-10-08 21:47:15 +02:00
favourites.js Fix loading indicator inconsistency (#9252) 2018-11-10 15:04:13 +01:00
filters.js Keyword/phrase filtering (#7905) 2018-06-29 15:34:36 +02:00
height_cache.js Fix height cache (#4909) 2017-09-13 10:24:33 +02:00
identity_proofs.js squashed identity proof updates (#10375) 2019-03-28 18:01:09 +01:00
interactions.js Store objects to IndexedDB (#6826) 2018-03-24 13:06:27 +01:00
lists.js Implement adding a user to a list from their profile (#9062) 2018-11-05 18:52:38 +01:00
modal.js Improve eslint rules (#3147) 2017-05-20 17:31:47 +02:00
mutes.js Store objects to IndexedDB (#6826) 2018-03-24 13:06:27 +01:00
notifications.js Optimize makeGetStatus (#11211) 2019-06-30 00:12:38 +02:00
onboarding.js Add new first-time tutorial (#9531) 2018-12-17 11:07:17 +01:00
pin_statuses.js Store objects to IndexedDB (#6826) 2018-03-24 13:06:27 +01:00
polls.js Fix poll options not rendering text after vote/refresh (#10189) 2019-03-06 05:35:52 +01:00
reports.js Federated reports (#6570) 2018-02-28 06:54:55 +01:00
search.js Add message telling FTS is disabled when no toot can be found because of this (#11112) 2019-06-27 21:12:26 +02:00
settings.js Improve web api protect (#6343) 2018-04-17 15:23:46 +02:00
statuses.js Add responsive panels to the single-column layout (#10820) 2019-05-25 21:27:00 +02:00
store.js Store objects to IndexedDB (#6826) 2018-03-24 13:06:27 +01:00
streaming.js Fix public timelines being broken by new toots when they are not mounted (#10131) 2019-03-07 22:17:52 +01:00
suggestions.js Show suggested follows on search screen in mobile layout (#9010) 2018-10-23 00:08:39 +02:00
timelines.js Fix alignment of items in the account gallery in web UI and load more per page (#10674) 2019-05-03 04:02:55 +02:00