gristlabs_grist-core/app/client/ui
Cyprien P 8a26550312 (core) Fix issue when using Other Values with many rows
Summary:
Fix an error that used to happen on Chrome: `RangeError: Maximum call stack size
exceeded`. Happened when clicking the `Other Values` checkbox when
filtering a large table. Turns out culprit was a function call that
was using a spread operator to pass a large number of argument to a
function.

Spread operator for passing multiple argument must not be used with
too many arguments. Otherwise it could hit the engine's argument
length limit. That limit varies across browser (webkit's
javascriptcore engine has argument limit of 65536).

Some interesting description of the limit can be found here:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/apply#using_apply_and_built-in_functions

In order to get the fix fast, implementing a proper test for it is left for a follow-up commit.

Test Plan:
 - Manually tested on Chrome/FF

Reviewers: paulfitz

Reviewed By: paulfitz

Subscribers: paulfitz

Differential Revision: https://phab.getgrist.com/D2779
2021-04-20 15:15:18 +02:00
..
AccountWidget.ts (core) Make mobile the default mode. 2021-02-25 11:31:43 -05:00
AddNewButton.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
ApiKey.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
App.css (core) Cleanup removing some old unused files, fixing logo.css, and removing #grist-app. 2020-10-09 17:04:09 -04:00
App.ts (core) Add support for editing on mobile. 2021-02-03 23:10:51 -05:00
AppHeader.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
AppUI.ts (core) Make side panels responsive and start closed on small screens. 2021-02-08 15:07:04 -05:00
BillingForm.ts (core) Support international addresses in the Billing form 2020-10-26 11:41:15 -04:00
BillingPage.ts (core) Support international addresses in the Billing form 2020-10-26 11:41:15 -04:00
BillingPageCss.ts (core) Make side panels responsive and start closed on small screens. 2021-02-08 15:07:04 -05:00
BillingPlanManagers.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
BottomBar.ts (core) Making side bars a bit more usable for narrow screen 2021-01-19 15:22:01 +01:00
buttons.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
CodeHighlight.ts (core) Update UI for formula and column label/id in the right-side panel. 2021-03-17 01:35:56 -04:00
ColumnFilterMenu.ts (core) Fix issue when using Other Values with many rows 2021-04-20 15:15:18 +02:00
CustomThemes.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
DocHistory.ts (core) Fix JS error when switching from DocHistory to ActionLog too quickly. 2020-12-11 14:33:29 -05:00
DocMenu.ts (core) Fix "Copy Link" in UserManager when its opened from a DocMenu page. 2020-11-26 22:30:01 -05:00
DocMenuCss.ts (core) Make mobile the default mode. 2021-02-25 11:31:43 -05:00
Document.css (core) move client code to core 2020-10-02 13:24:21 -04:00
DocumentSettings.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
errorPages.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
ExampleCard.ts (core) A few improvements to CSS on mobile. 2021-03-01 11:17:51 -05:00
ExampleInfo.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
FieldConfig.ts (core) Update UI for formula and column label/id in the right-side panel. 2021-03-17 01:35:56 -04:00
FieldMenus.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
FileDialog.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
FilterBar.ts (core) add new filter bar 2021-04-15 20:29:00 +02:00
forms.ts (core) In Welcome questionnaire, add 'School' option, ask to enter company or school 2020-11-02 14:05:31 -05:00
GridOptions.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
GridViewMenus.ts (core) Change how formula columns can be converted to data. 2021-03-05 12:42:57 -05:00
HomeImports.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
HomeIntro.ts (core) Make mobile the default mode. 2021-02-25 11:31:43 -05:00
HomeLeftPane.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
LeftPanelCommon.ts (core) Remove the aclUI=1 flag and add 'BETA' tag to the Access Rules page name. 2021-03-25 18:10:00 -04:00
MakeCopyMenu.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
modals.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
mouseDrag.ts Initial config with a few files that build on client and server side. 2020-05-20 00:50:46 -04:00
MultiSelector.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
NotifyUI.ts (core) give more detailed reasons for access denied when memos are present 2021-02-15 17:02:24 -05:00
PagePanels.ts (core) A few improvements to CSS on mobile. 2021-03-01 11:17:51 -05:00
Pages.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
PageWidgetPicker.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
PinnedDocs.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
ProfileDialog.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
resizeHandle.ts Initial config with a few files that build on client and server side. 2020-05-20 00:50:46 -04:00
RightPanel.ts (core) Update UI for formula and column label/id in the right-side panel. 2021-03-17 01:35:56 -04:00
selectBy.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
shadowScroll.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
ShareMenu.ts (core) make AccessRules and FullCopies effective 2021-03-25 15:05:26 -04:00
Tools.ts (core) Remove the aclUI=1 flag and add 'BETA' tag to the Access Rules page name. 2021-03-25 18:10:00 -04:00
tooltips.ts (core) Add a button and a tooltip to Access Rules page item, in View-As mode. 2021-03-08 16:08:21 -05:00
TopBar.ts (core) Add a button and a tooltip to Access Rules page item, in View-As mode. 2021-03-08 16:08:21 -05:00
TopBarCss.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
transientInput.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
transitions.ts (core) Show a welcome card when a user opens an example for the first time. 2020-09-09 23:08:50 -04:00
TreeViewComponent.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
TreeViewComponentCss.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
UserImage.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
UserManager.ts (core) Disallow the combination of Public Edit access and granular ACLs. 2021-03-26 09:59:41 -04:00
ViewLayoutMenu.ts (core) Implement 'Print widget' option to print individual view sections. 2020-10-10 00:35:33 -04:00
viewport.ts (core) Make mobile the default mode. 2021-02-25 11:31:43 -05:00
ViewSectionMenu.ts (core) add new filter bar 2021-04-15 20:29:00 +02:00
VisibleFieldsConfig.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
WelcomePage.ts (core) Make side panels responsive and start closed on small screens. 2021-02-08 15:07:04 -05:00
widgetTypes.ts (core) move client code to core 2020-10-02 13:24:21 -04:00