gristlabs_grist-core/app/common
Alex Hall d1a848b44a (core) Parse string cell values in Doc API and Imports
Summary:
- Adds a function `parseUserAction` for parsing strings in UserActions to `ValueParser.ts`
- Adds a boolean option `parseStrings` to use `parseUserAction` in `ActiveDoc.applyUserActions`, off by default.
- Uses `parseStrings` by default in DocApi (set `?noparse=true` in a request to disable) when adding/updating records through the `/data` or `/records` endpoints or in general with the `/apply` endpoint.
- Uses `parseStrings` for various actions in `ActiveDocImport`. Since most types are parsed in Python before these actions are constructed, this only affects references, which still look like errors in the import preview. Importing references can also easily still run into more complicated problems discussed in https://grist.slack.com/archives/C0234CPPXPA/p1639514844028200

Test Plan:
- Added tests to DocApi to compare behaviour with and without string parsing.
- Added a new browser test, fixture doc, and fixture CSV to test importing a file containing references.

Reviewers: georgegevoian

Reviewed By: georgegevoian

Differential Revision: https://phab.getgrist.com/D3183
2021-12-17 15:40:58 +02:00
..
ACLPermissions.ts
ACLRuleCollection.ts (core) Use MetaTableData more 2021-12-07 17:09:58 +02:00
ActionBundle.ts
ActionDispatcher.ts
ActionGroup.ts
ActionRouter.ts
ActionSummary.ts
ActiveDocAPI.ts (core) Parse string cell values in Doc API and Imports 2021-12-17 15:40:58 +02:00
ApiError.ts
arrayToString.ts
AsyncCreate.ts
AsyncFlow.ts
BaseAPI.ts
BasketClientAPI.ts
BigInt.ts
BillingAPI.ts (core) Add some polish to the billing page, particularly for sign-up. 2021-11-04 14:23:53 -04:00
BinaryIndexedTree.js
BrowserSettings.ts
ColumnFilterFunc.ts
ColumnGetters.ts (core) Adding sort options for columns. 2021-11-03 15:31:39 +01:00
csvFormat.ts
CustomWidget.ts (core) Exposing custom widgets on the UI 2021-12-01 18:21:06 +01:00
declarations.d.ts
delay.ts
DisposableWithEvents.ts
DocActions.ts (core) Add LogMethods helper and use it for more JSON data in logs. Reduce unhelpful logging. 2021-10-25 10:25:18 -04:00
DocData.ts
DocListAPI.ts
DocSnapshot.ts
DocumentSettings.ts
emails.ts
EncActionBundle.ts
ErrorWithCode.ts
Features.ts
FilterState.ts
Formula.ts
GranularAccessClause.ts (core) Use MetaTableData more 2021-12-07 17:09:58 +02:00
GristServerAPI.ts
gristTypes.ts
gristUrls.ts (core) Exposing custom widgets on the UI 2021-12-01 18:21:06 +01:00
gutil.ts
InactivityTimer.ts
KeyedMutex.ts
KeyedOps.ts
LocaleCodes.ts
Locales.ts
LoginSessionAPI.ts
LoginState.ts
marshal.ts
MemBuffer.js
NumberFormat.ts (core) Adding fallback for currency symbol 2021-11-04 22:39:34 +01:00
NumberParse.ts (core) Generic number parsing functionality. 2021-10-19 23:19:13 +02:00
orgNameUtils.ts
parseDate.ts (core) Change datepicker in DateEditor to use moment format, show AltText in DateEditor 2021-12-07 11:33:49 -05:00
plugin.ts
PluginInstance.ts
Prefs.ts
RefCountMap.ts
resetOrg.ts (core) move more tests to grist-core 2021-12-10 18:33:07 -05:00
roles.ts
RowFilterFunc.ts
schema.ts (core) Allow filtering hidden columns 2021-11-22 10:26:08 -08:00
ShareAnnotator.ts (core) annotate guests of other docs correctly in UserManager dialog 2021-12-09 12:57:52 -05:00
sharing.ts
SortFunc.ts (core) Adding sort options for columns. 2021-11-03 15:31:39 +01:00
SortSpec.ts (core) Adding sort options for columns. 2021-11-03 15:31:39 +01:00
StringUnion.ts
TableData.ts (core) Use MetaTableData more 2021-12-07 17:09:58 +02:00
TabularDiff.ts
tbind.ts
TestState.ts
timeFormat.ts
tpromisified.ts
tsconfig.json
tsvFormat.ts
UIRowId.ts
uploads.ts
urlUtils.ts
UserAPI.ts (core) Exposing custom widgets on the UI 2021-12-01 18:21:06 +01:00
UserConfig.ts
ValueFormatter.ts (core) Fix display of formatted dates in reference columns 2021-12-16 23:24:39 +02:00
ValueParser.ts (core) Parse string cell values in Doc API and Imports 2021-12-17 15:40:58 +02:00