15610: Enhances performance on tree handling.
authorLucas Di Pentima <lucas@di-pentima.com.ar>
Fri, 12 Jun 2020 18:07:23 +0000 (15:07 -0300)
committerLucas Di Pentima <lucas@di-pentima.com.ar>
Fri, 12 Jun 2020 18:13:47 +0000 (15:13 -0300)
commitb3c45e57f0b488e98bb24b342c37724c8ef7bb5f
tree92465d621201afeb59559333695fb7b3e3b6710b
parentefcea950b84b26c4cbbdf4df8fd5c88f6c846da9
15610: Enhances performance on tree handling.

Large trees (eg: large collection file hierarchies) handling performance boost
by doing in-place data manipulations instead of functional programming style
data copying.
This enables workbench2 to gracefully show mid-sized collections of around
50k items without making the user wait too much for the UI to respond.

Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima <lucas@di-pentima.com.ar>
src/models/collection-file.ts
src/models/tree.ts
src/services/collection-service/collection-service-files-response.ts
src/store/collection-panel/collection-panel-files/collection-panel-files-reducer.ts
src/views-components/projects-tree-picker/generic-projects-tree-picker.tsx