gristlabs_grist-core/app/client/models
Dmitry S 5deac68315 (core) Update ACL resources/rules when tables/columns get renamed
Summary:
- Placed rule-updating functions in acl.py.
- Reset UI when rules update externally, or alert the user to reset if there
  are pending local changes.
- Removed some unused and distracting bits from client-side DocModel.

A few improvements related to poor error handling:
- In case of missing DocActions (tickled by broken ACL rule handling), don't
  add to confusion by attempting to process bad actions
- In case of missing attributes in ACL formulas, return undefined rather than
  fail; the latter creates more problems.
- In case in invalid rules, fail rather than skip; this feels more correct now
  that we have error checking and recovery option, and helps avoid invalid rules.
- Prevent saving invalid rules with an empty ACL formula.
- Fix bug with rule positions.

Test Plan: Added a python and browser test for table/column renames.

Reviewers: paulfitz

Reviewed By: paulfitz

Differential Revision: https://phab.getgrist.com/D2698
2021-01-04 22:03:01 -05:00
..
entities (core) Update ACL resources/rules when tables/columns get renamed 2021-01-04 22:03:01 -05:00
AppModel.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
BaseRowModel.js (core) Update ACL resources/rules when tables/columns get renamed 2021-01-04 22:03:01 -05:00
BillingModel.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
ClientColumnGetters.ts (core) hide long sequences of unchanged rows in diffs 2020-11-19 18:19:54 -05:00
ColumnACIndexes.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
ColumnFilter.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
ConnectState.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
DataRowModel.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
DataTableModel.js (core) move client code to core 2020-10-02 13:24:21 -04:00
DataTableModelWithDiff.ts (core) hide long sequences of unchanged rows in diffs 2020-11-19 18:19:54 -05:00
DocData.ts (core) Checks that an ACL formula can be parsed, and prevent saving unparsable ACL rules. 2020-12-15 09:43:37 -05:00
DocModel.ts (core) Update ACL resources/rules when tables/columns get renamed 2021-01-04 22:03:01 -05:00
DocPageModel.ts (core) implement a safe mode for opening documents with rule problems 2020-12-14 13:04:13 -05:00
errors.ts (core) mitigate csrf by requiring custom header for unsafe methods 2020-10-08 14:19:25 -04:00
gristConfigCache.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
gristUrlState.ts (core) Implement much of the general AccessRules UI. 2020-12-07 14:48:41 -05:00
HomeModel.ts (core) move client code to core 2020-10-02 13:24:21 -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) move client code to core 2020-10-02 13:24:21 -04:00
QuerySet.ts (core) Fix an insidious bug in RefCountMap, manifesting as JS errors some time after import. 2020-11-06 09:24:56 -05:00
rowset.ts (core) hide long sequences of unchanged rows in diffs 2020-11-19 18:19:54 -05:00
rowuid.js (core) move client code to core 2020-10-02 13:24:21 -04:00
SearchModel.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
SectionFilter.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
TableData.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
TableModel.js (core) move client code to core 2020-10-02 13:24:21 -04:00
TreeModel.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
UserManagerModel.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
UserPrefs.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
WorkspaceInfo.ts (core) move client code to core 2020-10-02 13:24:21 -04:00