gristlabs_grist-core/app/client/components
Alex Hall bc54a6646e (core) Filter rows based on linked widgets when exporting view
Summary:
Fixes a problem reported here: https://community.getgrist.com/t/exporting-the-records-in-a-linked-view/2556/4

The download CSV/Excel link now contains an additional `linkingFilter` URL parameter containing JSON-encoded `filters` and `operations`. This object is originally created in the frontend in `LinkingState`, and previously it was only used internally in the frontend. It would make its way via `QuerySetManager` to `QuerySet.getFilterFunc` where the actual filtering logic happened. Now most of that logic has been moved to a similar function in `common`. The new function works with a new interface `ColumnGettersByColId` which abstract over the different ways data is accessed in the client and server in this context. There's no significant new logic in the diff, just refactoring and wiring.

Test Plan: Expanded two `nbrowser/SelectBy*.ts` test suites to also check the contents of a downloaded CSV in different linking scenarios.

Reviewers: paulfitz

Reviewed By: paulfitz

Differential Revision: https://phab.getgrist.com/D3961
2023-07-26 21:49:52 +02:00
..
AceEditor.css (core) Implement AI Assistant UI V2 2023-07-13 10:30:35 -04:00
AceEditor.js (core) Implement AI Assistant UI V2 2023-07-13 10:30:35 -04:00
AceEditorCompletions.ts (core) Implement AI Assistant UI V2 2023-07-13 10:30:35 -04:00
ActionLog.css (core) Add dark mode to user preferences 2022-09-05 19:17:32 -07:00
ActionLog.ts (core) Fixing cursor position for filtered linked section. 2023-07-07 19:04:30 +02:00
Banner.ts (core) Adds new view as banner 2023-01-03 12:33:34 +01:00
Base.js (core) move client code to core 2020-10-02 13:24:21 -04:00
BaseView2.ts (core) Copy column type and options when pasting into an empty column 2022-04-04 14:53:16 +02:00
BaseView.js (core) Fix issue with lodash's map interpreting objects with length as array-like 2023-07-01 21:07:39 -04:00
BehavioralPromptsManager.ts (core) Add Support Grist page and nudge 2023-07-04 17:36:59 -04:00
buildViewSectionDom.ts (core) Fixing cursor position for filtered linked section. 2023-07-07 19:04:30 +02:00
CellPosition.ts (core) Draft cells 2021-05-25 21:14:49 +02:00
CellSelector.ts (core) Add cell selection summary 2022-09-30 09:11:46 -07:00
ChartView.css (core) move client code to core 2020-10-02 13:24:21 -04:00
ChartView.ts i18n: userManager translation + some forgotten translations (#557) 2023-07-16 12:52:13 -04:00
ClientScope.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
Clipboard.css (core) move client code to core 2020-10-02 13:24:21 -04:00
Clipboard.js (core) Add cut, copy, and paste to context menu 2023-05-10 00:48:15 -04:00
CodeEditorPanel.css (core) Improve dark mode 2023-04-12 01:58:48 -04:00
CodeEditorPanel.ts Remove prefix from translations keys 2023-01-03 16:01:45 +01:00
ColumnFilters.css (core) Context menu for cards. 2021-06-29 15:29:56 +02:00
ColumnTransform.ts (core) Preserving rules when data is transformed 2023-05-05 13:44:09 +02:00
Comm.ts (core) Fix issue with 'UNEXPECTED ORDER OF CALLBACKS' in Client.ts. 2022-06-16 23:51:14 -04:00
commandList.ts (core) Floating formula editor 2023-06-02 17:59:22 +02:00
commands.css (core) move client code to core 2020-10-02 13:24:21 -04:00
commands.ts (core) Floating formula editor 2023-06-02 17:59:22 +02:00
CopySelection.ts (core) Fixing cursor position for filtered linked section. 2023-07-07 19:04:30 +02:00
Cursor.ts (core) Fixing cursor position for filtered linked section. 2023-07-07 19:04:30 +02:00
CursorMonitor.ts (core) Fixing couple of bugs in collapsed section layout 2023-03-22 16:23:09 +01:00
CustomView.css (core) Fix CustomView css to take full height of widget on all browsers including Safari 2020-10-06 13:18:50 -04:00
CustomView.ts (core) Faster builds all around. 2022-07-04 10:42:40 -04:00
DataTables.ts (core) Add cut, copy, and paste to context menu 2023-05-10 00:48:15 -04:00
DetailView.css style(ColmunDesc): icon size and visible when there is a long colmun name 2023-02-21 11:33:11 +01:00
DetailView.js (core) updates from grist-core 2023-05-15 12:01:19 -04:00
DocComm.ts (core) Billing for formula assistant 2023-07-10 13:24:08 +02:00
DocConfigTab.js (core) move client code to core 2020-10-02 13:24:21 -04:00
DocumentUsage.ts codeStyle(column-desc): create separate iconTooltip for column description 2023-02-01 13:55:41 +01:00
Drafts.ts Change translation keys for components directory 2023-01-03 15:49:26 +01:00
duplicatePage.ts (core) Polish tutorial popups 2023-04-20 12:20:03 -04:00
EditorMonitor.ts (core) Fix problem with localStorage in some cross-origin embed situations 2022-11-30 23:52:50 -05:00
EmbedForm.css (core) move client code to core 2020-10-02 13:24:21 -04:00
FieldConfigTab.css (core) move client code to core 2020-10-02 13:24:21 -04:00
FormulaTransform.ts (core) Add dark mode to user preferences 2022-09-05 19:17:32 -07:00
GridView.css (core) Improve highlighting of previewed formula 2023-07-20 14:34:22 -04:00
GridView.js (core) Improve highlighting of previewed formula 2023-07-20 14:34:22 -04:00
GristDoc.css (core) move client code to core 2020-10-02 13:24:21 -04:00
GristDoc.ts (core) Filter rows based on linked widgets when exporting view 2023-07-26 21:49:52 +02:00
GristWSConnection.ts support other SQLite wrappers, and various hooks needed by grist-static (#516) 2023-05-23 15:17:28 -04:00
Importer.ts (core) Floating formula editor 2023-06-02 17:59:22 +02:00
Layout.css (core) Expanding widgets 2023-01-19 09:46:59 +01:00
Layout.ts (core) Fixing couple of bugs in collapsed section layout 2023-03-22 16:23:09 +01:00
LayoutEditor.css (core) move client code to core 2020-10-02 13:24:21 -04:00
LayoutEditor.ts (core) Minimazing widgets 2023-03-02 11:22:49 +01:00
LayoutTray.ts (core) Adjust the style of the 'attic' to have more of a toolbar feel, flush to the top, and taking up less space 2023-06-30 08:22:26 -04:00
LinkingState.ts (core) Filter rows based on linked widgets when exporting view 2023-07-26 21:49:52 +02:00
Login.css (core) move client code to core 2020-10-02 13:24:21 -04:00
modals.ts (core) Add April Fools easter egg 2023-03-27 14:12:52 -04:00
ParseOptions.ts (core) Add dark mode to user preferences 2022-09-05 19:17:32 -07:00
PluginScreen.ts Remove prefix from translations keys 2023-01-03 16:01:45 +01:00
Preferences.css (core) Add dark mode to user preferences 2022-09-05 19:17:32 -07:00
Printing.css (core) Improve printing of tables, fix printing of charts, add a browser test. 2020-10-12 16:04:18 -04:00
Printing.ts (core) Improve dark mode 2023-04-12 01:58:48 -04:00
RawDataPage.ts (core) Minimazing widgets 2023-03-02 11:22:49 +01:00
RecordLayout.css (core) Add behavioral and coaching call popups 2022-12-20 09:49:41 -05:00
RecordLayout.js (core) Add cut, copy, and paste to context menu 2023-05-10 00:48:15 -04:00
RecordLayoutEditor.js (core) Minimazing widgets 2023-03-02 11:22:49 +01:00
RefSelect.ts Remove prefix from translations keys 2023-01-03 16:01:45 +01:00
SearchBar.css (core) move client code to core 2020-10-02 13:24:21 -04:00
SelectionSummary.ts (core) Add cut, copy, and paste to context menu 2023-05-10 00:48:15 -04:00
TypeConversion.ts feat(TypeConversion): allow converting list of string with quotes to ChoiceList (#397) 2023-01-12 23:13:26 -05:00
TypeTransform.ts (core) add a checkbox for owner "boss mode" 2023-01-09 13:20:23 -05:00
UndoStack.ts (core) Disable undo/redo in detached formula editor 2023-07-19 11:39:14 -04:00
UnsavedChanges.ts (core) support ?embed=true and &style=light for a clean embed experience 2020-08-14 13:34:38 -04:00
ValidationPanel.css (core) move client code to core 2020-10-02 13:24:21 -04:00
ValidationPanel.js Remove prefix from translations keys 2023-01-03 16:01:45 +01:00
ViewAsBanner.ts (core) Adds dots menu to access rules page item 2023-01-12 09:40:45 +01:00
viewCommon.css (core) Improve highlighting of previewed formula 2023-07-20 14:34:22 -04:00
viewCommon.js (core) Skip saving column resizes in read-only mode 2021-12-07 14:37:25 -08:00
ViewConfigTab.css (core) move client code to core 2020-10-02 13:24:21 -04:00
ViewConfigTab.js (core) Add cut, copy, and paste to context menu 2023-05-10 00:48:15 -04:00
ViewLayout.css (core) Minimazing widgets 2023-03-02 11:22:49 +01:00
ViewLayout.ts (core) Fixing couple of bugs in collapsed section layout 2023-03-22 16:23:09 +01:00
ViewLinker.css (core) move client code to core 2020-10-02 13:24:21 -04:00
ViewPane.ts (core) Implementing row conditional formatting 2022-08-09 20:11:36 +02:00
WidgetFrame.ts support other SQLite wrappers, and various hooks needed by grist-static (#516) 2023-05-23 15:17:28 -04:00