nyastodon/app/javascript/mastodon
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
..
actions Optimize makeGetStatus (#11211) 2019-06-30 00:12:38 +02:00
components Add option to disable blurhash previews (#11188) 2019-06-26 19:33:04 +02:00
containers Add confirm modal for unboosting toots (#10287) 2019-05-09 22:39:26 +02:00
features Display FTS warning based on actual search term, not the one being typed (#11202) 2019-06-28 19:29:11 +02:00
locales New Crowdin translations (#11144) 2019-06-22 17:26:09 +02:00
middleware Add missing rejection handling for Promises (#7008) 2018-04-02 14:51:02 +02:00
reducers 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
selectors Optimize makeGetStatus (#11211) 2019-06-30 00:12:38 +02:00
service_worker Support pushing and receiving updates to poll tallies (#10209) 2019-03-11 00:49:31 +01:00
storage Cache media only when storage can be freed (#7547) 2018-05-19 19:22:11 +02:00
store Update dependencies for Node.js (2018-12-31) (#9669) 2018-12-31 18:11:48 +01:00
utils Add WebP support (#9879) 2019-02-02 12:25:04 +01:00
api.js Do not set CSRF Token when no csrf header (#10383) 2019-03-26 11:13:20 +01:00
base_polyfills.js Refactor resizeImage method (#7236) 2018-04-23 09:15:51 +02:00
common.js Improve the public hashtag page (#9831) 2019-01-17 14:06:08 +01:00
compare_id.js Fix comparing id (#7180) 2018-04-18 16:50:19 +02:00
extra_polyfills.js Add object-fit polyfill for Edge (#4182) 2017-07-14 01:59:34 +02:00
initial_state.js Add option to disable blurhash previews (#11188) 2019-06-26 19:33:04 +02:00
is_mobile.js Change mobile layout breakpoint from 1024px to 630px (#5063) 2017-09-24 01:25:07 +02:00
load_polyfills.js Refactor resizeImage method (#7236) 2018-04-23 09:15:51 +02:00
main.js bug fix (WebPush does not work) (#6120) 2017-12-28 16:20:34 +01:00
performance.js Upgrade to React 16 (#5119) 2017-09-30 04:29:56 +02:00
ready.js Do not load unnecessary script files (#4193) 2017-07-14 11:08:56 +02:00
rtl.js Improve RTL detection (#3682) 2017-06-10 15:06:50 +02:00
scroll.js Use ScrollToOptions for smooth scrolling if supported (#11207) 2019-06-29 18:32:06 +02:00
settings.js Implement tag auto-completion by history (#6621) 2018-03-04 20:27:25 +01:00
stream.js Improve streaming server security (#10818) 2019-05-24 15:21:42 +02:00
test_setup.js Replace JavaScript Testing Framework from Mocha to Jest (#5412) 2017-10-16 09:33:08 +02:00
uuid.js Replace sprockets/browserify with Webpack (#2617) 2017-05-03 02:04:16 +02:00