gristlabs_grist-core/app/client/models
Alex Hall f110ffdafd (core) Follow chain of same-record links for getDefaultColValues
Summary:
When two widgets are linked by same-record linking, and the source of that link is also filter-linked, then it will pick up default values from its own filter-link source, but the same-record-link target didn't. This fixes that so that default values are filled in intuitively.

Moved the logic of linkingState, linkingFilter, and getDefaultColValues from BaseView.js to LinkingState.ts and ViewSectionRec.ts. In particular getDefaultColValues is now a property of LinkingState which may be copied from the source view section for a same-record link.

Note that `ViewSectionRec.linkingFilter` no longer uses `computerBuilder` and thus doesn't ignore dependencies inside LinkingState any more. I couldn't figure out how to make `linkingFilter` a `pureComputed` (otherwise I get recursion errors) that ignores dependencies. In any case, it's now important to have a dependency on `srcSection.linkingState()` for `getDefaultColValues` to work correctly, so I think this is for the best.

Test Plan: Added a new nbrowser test and fixture.

Reviewers: georgegevoian

Reviewed By: georgegevoian

Differential Revision: https://phab.getgrist.com/D3238
2022-02-03 18:51:02 +02:00
..
entities (core) Follow chain of same-record links for getDefaultColValues 2022-02-03 18:51:02 +02:00
AppModel.ts (core) Replace questionnaire for new users with a popup asking for just their primary use-case. 2022-01-14 10:16:11 -05:00
BaseRowModel.js (core) Update ACL resources/rules when tables/columns get renamed 2021-01-04 22:03:01 -05:00
BillingModel.ts (core) Migrate to Stripe v8 + implement discount codes 2021-10-20 12:34:03 -07:00
ClientColumnGetters.ts (core) Adding sort options for columns. 2021-11-03 15:31:39 +01:00
ColumnACIndexes.ts (core) Use visibleCol instead of displayCol with createFormatter 2021-12-16 22:19:36 +02:00
ColumnCache.ts (core) Show count of formula errors in the column config in the right-side panel. 2021-04-20 21:26:17 -04:00
ColumnFilter.ts (core) Makes filter counts take other column filters into account 2021-06-23 09:01:41 +02:00
ColumnFilterMenuModel.ts (core) Makes filter counts take other column filters into account 2021-06-23 09:01:41 +02:00
ConnectState.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
DataRowModel.ts (core) Fix JS error when scrolling with a column of hyperlinks, and use stricter types. 2021-05-12 17:31:56 -04:00
DataTableModel.js (core) move client code to core 2020-10-02 13:24:21 -04:00
DataTableModelWithDiff.ts (core) Use GristObjCode in CellValue 2021-10-11 14:11:32 +02:00
DocData.ts (core) Use MetaTableData more 2021-12-07 17:09:58 +02:00
DocModel.ts (core) Remove code related to _grist_TableViews 2021-11-30 23:51:30 +02:00
DocPageModel.ts (core) Disabling 'Add widget to page' for special pages 2021-08-09 14:49:19 +02:00
errors.ts (core) Summary columns improvemnt. 2022-01-25 17:51:48 +01:00
gristConfigCache.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
gristUrlState.ts (core) Move user profile to new page and begin MFA work 2022-01-13 21:21:49 -08:00
HomeModel.ts (core) Removing error styles from user messages 2021-10-07 17:20:52 +02:00
isHiddenTable.ts (core) When hidden pages are present in the page list, allow removing them 2021-10-05 15:39:42 -04:00
MetaRowModel.js (core) move client code to core 2020-10-02 13:24:21 -04:00
MetaTableModel.js (core) move client code to core 2020-10-02 13:24:21 -04:00
modelUtil.js (core) move client code to core 2020-10-02 13:24:21 -04:00
NotifyModel.ts (core) Error message on Duplicate Document 2021-11-09 19:12:57 +01:00
QuerySet.ts (core) Add other direction of linking by reflist 2021-08-30 17:39:15 +02:00
rowset.ts (core) Download as CSV button on sections 2021-05-27 15:48:12 +02:00
rowuid.js (core) move client code to core 2020-10-02 13:24:21 -04:00
SearchModel.ts (core) Reference and ReferenceList formatters 2022-01-13 18:09:33 +02:00
SectionFilter.ts (core) Allow filtering hidden columns 2021-11-22 10:26:08 -08:00
TableData.ts (core) Use MetaTableData more 2021-12-07 17:09:58 +02:00
TableModel.js (core) Change how formula columns can be converted to data. 2021-03-05 12:42:57 -05:00
TreeModel.ts (core) Filter out pages for hidden views from the page list. 2021-08-27 13:51:57 -04:00
UserManagerModel.ts (core) Show ACL link in UserManager conditionally 2021-11-17 08:43:14 -08:00
UserPrefs.ts (core) Replace questionnaire for new users with a popup asking for just their primary use-case. 2022-01-14 10:16:11 -05:00
WorkspaceInfo.ts (core) move client code to core 2020-10-02 13:24:21 -04:00