gristlabs_grist-core/app/common
Paul Fitzpatrick 438f259687 (core) start reconciling forking with granular access
Summary:
This allows a fork to be made by a user if:
 * That user is an owner of the document being forked, or
 * That user has full read access to the document being forked.

The bulk of the diff is reorganization of how forking is done.  ActiveDoc.fork is now responsible for creating a fork, not just a docId/urlId for the fork. Since fork creation should not be limited to the doc worker hosting the trunk, a helper endpoint is added for placing the fork.

The change required sanitizing worker allocation a bit, and allowed session knowledge to be removed from HostedStorageManager.

Test Plan: Added test; existing tests pass.

Reviewers: dsagal

Reviewed By: dsagal

Differential Revision: https://phab.getgrist.com/D2700
2021-01-12 14:08:49 -05:00
..
ACLPermissions.ts (core) Implement new representation of ACL rules. 2020-11-18 08:58:03 -05:00
ACLRuleCollection.ts (core) Update ACL resources/rules when tables/columns get renamed 2021-01-04 22:03:01 -05:00
ActionBundle.ts
ActionDispatcher.ts
ActionGroup.ts
ActionRouter.ts
ActionSummary.ts (core) tolerate table renames when displaying differences 2020-11-12 10:55:15 -05:00
ActiveDocAPI.ts (core) Checks that an ACL formula can be parsed, and prevent saving unparsable ACL rules. 2020-12-15 09:43:37 -05:00
ApiError.ts
arrayToString.ts
AsyncCreate.ts
AsyncFlow.ts
BaseAPI.ts
BasketClientAPI.ts
BigInt.ts
BillingAPI.ts
BinaryIndexedTree.js
BrowserSettings.ts
ColumnGetters.ts
declarations.d.ts
delay.ts
DisposableWithEvents.ts
DocActions.ts (core) implement cleaner row-level access control for outgoing messages 2020-11-30 16:28:33 -05:00
DocData.ts (core) implement cleaner row-level access control for outgoing messages 2020-11-30 16:28:33 -05:00
DocListAPI.ts (core) implement a safe mode for opening documents with rule problems 2020-12-14 13:04:13 -05:00
DocSnapshot.ts
emails.ts
EncActionBundle.ts
ErrorWithCode.ts
Features.ts
Formula.ts
GranularAccessClause.ts (core) implement authorization via query parameter 2020-12-09 09:48:06 -05:00
GristServerAPI.ts
gristTypes.ts (core) Improve the UI for ACL rules. 2020-12-22 13:40:52 -05:00
gristUrls.ts (core) implement authorization via query parameter 2020-12-09 09:48:06 -05:00
gutil.ts (core) Implement much of the general AccessRules UI. 2020-12-07 14:48:41 -05:00
InactivityTimer.ts
KeyedMutex.ts (core) fix sync to s3 when doc is marked as dirty but proves to be clean 2020-11-10 08:12:31 -05:00
KeyedOps.ts (core) start reconciling forking with granular access 2021-01-12 14:08:49 -05:00
LoginSessionAPI.ts
LoginState.ts
marshal.ts
MemBuffer.js
NumberFormat.ts
orgNameUtils.ts
parseDate.ts
plugin.ts
PluginInstance.ts
Prefs.ts
RefCountMap.ts
resetOrg.ts
roles.ts
schema.ts (core) Implement new representation of ACL rules. 2020-11-18 08:58:03 -05:00
sharing.ts
SortFunc.ts
StringUnion.ts
TableData.ts (core) hide long sequences of unchanged rows in diffs 2020-11-19 18:19:54 -05:00
TabularDiff.ts
tbind.ts
TestState.ts
timeFormat.ts
tpromisified.ts
tsconfig.json
tsvFormat.ts
uploads.ts
urlUtils.ts
UserAPI.ts (core) add endpoints for clearing snapshots and actions 2020-12-18 13:32:31 -05:00
UserConfig.ts
ValueFormatter.ts (core) make ValueFormatter.format honor its return type 2020-11-12 15:19:38 -05:00