gristlabs_grist-core/app/client/widgets
Dmitry S f024aaaf5d (core) Fix some bugs with ChoiceList in summary tables, and evaluation of lookups.
Summary:
Addresses several issues:
- Error 'Cannot modify summary group-by column' when changing Text ->
  ChoiceList in the presence of summary tables.
- Error 'ModifyColumn in unexpected position' when changing ChoiceList -> Text
  in the presence of summary tables.
- Double-evaluation of trigger formulas in some cases.

Fixes include:
- Fixed verification that summary group-by columns match the underlying ones,
  and added comments to explain.
- Avoid updating non-metadata lookups after each doc-action (early lookups
  generated extra actions to populate summary tables, causing the 'ModifyColumn
  in unexpected position' bug)
- When updating formulas, do update lookups first.
- Made a client-side tweak to avoid a JS error in case of some undos.

Solution to reduce lookups is based on https://phab.getgrist.com/D3069?vs=on&id=12445,
and tests for double-evaluation of trigger formulas are taken from there.

Add a new test case to protect against bugs caused by incorrect order of
evaluating #lookup columns.

Enhanced ChoiceList browser test to check a conversion scenario in the presence
of summary tables, previously triggering bugs.

Test Plan: Various tests added or enhanced.

Reviewers: alexmojaki

Reviewed By: alexmojaki

Subscribers: jarek

Differential Revision: https://phab.getgrist.com/D3184
2021-12-15 09:51:18 -05:00
..
AbstractWidget.js
AttachmentsEditor.ts (core) Use MetaTableData more 2021-12-07 17:09:58 +02:00
AttachmentsWidget.css
AttachmentsWidget.ts (core) Use MetaTableData more 2021-12-07 17:09:58 +02:00
BaseEditor.js
CheckBox.css
CheckBox.js
CheckBoxEditor.js
ChoiceEditor.js
ChoiceListCell.ts
ChoiceListEditor.ts
ChoiceListEntry.ts (core) Parsing pasted ChoiceLists 2021-11-20 19:00:36 +02:00
ChoiceTextBox.ts (core) Fix some bugs with ChoiceList in summary tables, and evaluation of lookups. 2021-12-15 09:51:18 -05:00
ChoiceToken.ts
CurrencyPicker.ts
DateEditor.js (core) Change datepicker in DateEditor to use moment format, show AltText in DateEditor 2021-12-07 11:33:49 -05:00
DateTextBox.js
DateTimeEditor.css
DateTimeEditor.js (core) Change datepicker in DateEditor to use moment format, show AltText in DateEditor 2021-12-07 11:33:49 -05:00
DateTimeTextBox.js
DiffBox.ts
EditorButtons.ts
EditorPlacement.ts
EditorTooltip.ts
ErrorDom.ts
FieldBuilder.css
FieldBuilder.ts (core) JS error on creator panel and formula editor. 2021-11-30 14:28:22 +01:00
FieldEditor.ts (core) JS error on creator panel and formula editor. 2021-11-30 14:28:22 +01:00
FormulaEditor.ts
HyperLinkEditor.ts
HyperLinkTextBox.ts
NewAbstractWidget.ts
NewBaseEditor.ts
NTextBox.ts
NTextEditor.ts (core) Refactor more value parsing code into common 2021-12-09 21:05:27 +02:00
NumericTextBox.ts
Reference.css
Reference.ts
ReferenceEditor.ts (core) Value parsing for refs, parsing data entry for numbers 2021-11-01 19:31:52 +02:00
ReferenceList.ts
ReferenceListEditor.ts (core) Value parsing for refs, parsing data entry for numbers 2021-11-01 19:31:52 +02:00
Spinner.css
Spinner.ts
Switch.css
Switch.js
TextBox.css
TextEditor.css (core) Set min-height for cells, including in Card view, to make them look consistent. 2021-11-19 17:23:03 -05:00
TextEditor.js
TZAutocomplete.ts
UserType.js
UserTypeImpl.js