gristlabs_grist-core/app/client/components
Paul Fitzpatrick 603238e966 (core) Adds a UI panel for managing webhooks
Summary:
This adds a UI panel for managing webhooks. Work started by Cyprien Pindat. You can find the UI on a document's settings page. Main changes relative to Cyprien's demo:

  * Changed behavior of virtual table to be more consistent with the rest of Grist, by factoring out part of the implementation of on-demand tables.
  * Cell values that would create an error can now be denied and reverted (as for the rest of Grist).
  * Changes made by other users are integrated in a sane way.
  * Basic undo/redo support is added using the regular undo/redo stack.
  * The table list in the drop-down is now updated if schema changes.
  * Added a notification from back-end when webhook status is updated so constant polling isn't needed to support multi-user operation.
  *  Factored out webhook specific logic from general virtual table support.
  * Made a bunch of fixes to various broken behavior.
  * Added tests.

The code remains somewhat unpolished, and behavior in the presence of errors is imperfect in general but may be adequate for this case.

I assume that we'll soon be lifting the restriction on the set of domains that are supported for webhooks - otherwise we'd want to provide some friendly way to discover that list of supported domains rather than just throwing an error.

I don't actually know a lot about how the front-end works - it looks like tables/columns/fields/sections can be safely added if they have string ids that won't collide with bone fide numeric ids from the back end. Sneaky.

Contains a migration, so needs an extra reviewer for that.

Test Plan: added tests

Reviewers: jarek, dsagal

Reviewed By: jarek, dsagal

Differential Revision: https://phab.getgrist.com/D3856
2023-05-08 18:25:27 -04:00
..
AceEditor.css (core) Improve dark mode 2023-04-12 01:58:48 -04:00
AceEditor.js (core) Improve dark mode 2023-04-12 01:58:48 -04:00
AceEditorCompletions.ts (core) In formula autocompletions, fix suggestions after an opening parenthesis. 2023-04-26 15:26:44 -04:00
ActionLog.css (core) Add dark mode to user preferences 2022-09-05 19:17:32 -07:00
ActionLog.ts Linting long lines 2023-01-03 17:45:14 +01:00
Banner.ts (core) Adds new view as banner 2023-01-03 12:33:34 +01:00
Base.js (core) move client code to core 2020-10-02 13:24:21 -04:00
BaseView2.ts (core) Copy column type and options when pasting into an empty column 2022-04-04 14:53:16 +02:00
BaseView.js (core) Preserving cursor position when linked state is removed. 2023-02-08 21:54:55 +01:00
BehavioralPromptsManager.ts (core) Focusing the creator panel on the table wiget for charts and custom views 2023-04-14 12:45:24 +02:00
buildViewSectionDom.ts (core) Fixing couple of bugs in collapsed section layout 2023-03-22 16:23:09 +01:00
CellPosition.ts (core) Draft cells 2021-05-25 21:14:49 +02:00
CellSelector.ts (core) Add cell selection summary 2022-09-30 09:11:46 -07:00
ChartView.css (core) move client code to core 2020-10-02 13:24:21 -04:00
ChartView.ts (core) Improve dark mode 2023-04-12 01:58:48 -04:00
ClientScope.ts (core) move client code to core 2020-10-02 13:24:21 -04:00
Clipboard.css (core) move client code to core 2020-10-02 13:24:21 -04:00
Clipboard.js (core) Trim trailing whitespace when pasting plain text 2021-11-04 01:26:47 +02:00
CodeEditorPanel.css (core) Improve dark mode 2023-04-12 01:58:48 -04:00
CodeEditorPanel.ts Remove prefix from translations keys 2023-01-03 16:01:45 +01:00
ColumnFilters.css (core) Context menu for cards. 2021-06-29 15:29:56 +02:00
ColumnTransform.ts (core) Preserving rules when data is transformed 2023-05-05 13:44:09 +02:00
Comm.ts (core) Fix issue with 'UNEXPECTED ORDER OF CALLBACKS' in Client.ts. 2022-06-16 23:51:14 -04:00
commandList.ts (core) Migrating commands to typescript 2023-04-24 09:48:40 +02:00
commands.css (core) move client code to core 2020-10-02 13:24:21 -04:00
commands.ts (core) Migrating commands to typescript 2023-04-24 09:48:40 +02:00
CopySelection.ts (core) Copy column type and options when pasting into an empty column 2022-04-04 14:53:16 +02:00
Cursor.ts (core) Fix linking of new records when attachment is the first thing added. 2023-03-09 08:54:36 -05:00
CursorMonitor.ts (core) Fixing couple of bugs in collapsed section layout 2023-03-22 16:23:09 +01:00
CustomView.css (core) Fix CustomView css to take full height of widget on all browsers including Safari 2020-10-06 13:18:50 -04:00
CustomView.ts (core) Faster builds all around. 2022-07-04 10:42:40 -04:00
DataTables.ts (core) A few assorted one-line fixes 2023-01-09 23:31:04 -05:00
DetailView.css style(ColmunDesc): icon size and visible when there is a long colmun name 2023-02-21 11:33:11 +01:00
DetailView.js feat: allow simple click on certain cases for editing field in Widget Card (#446) 2023-04-17 11:14:25 -04:00
DocComm.ts (core) Porting back AI formula backend 2023-02-08 17:15:59 +01:00
DocConfigTab.js (core) move client code to core 2020-10-02 13:24:21 -04:00
DocumentUsage.ts codeStyle(column-desc): create separate iconTooltip for column description 2023-02-01 13:55:41 +01:00
Drafts.ts Change translation keys for components directory 2023-01-03 15:49:26 +01:00
duplicatePage.ts (core) Polish tutorial popups 2023-04-20 12:20:03 -04:00
EditorMonitor.ts (core) Fix problem with localStorage in some cross-origin embed situations 2022-11-30 23:52:50 -05:00
EmbedForm.css (core) move client code to core 2020-10-02 13:24:21 -04:00
FieldConfigTab.css (core) move client code to core 2020-10-02 13:24:21 -04:00
FormulaTransform.ts (core) Add dark mode to user preferences 2022-09-05 19:17:32 -07:00
GridView.css (core) Adding description icon and tooltip in the GridView 2023-04-20 18:21:31 +02:00
GridView.js (core) Adding description icon and tooltip in the GridView 2023-04-20 18:21:31 +02:00
GristDoc.css (core) move client code to core 2020-10-02 13:24:21 -04:00
GristDoc.ts (core) Adds a UI panel for managing webhooks 2023-05-08 18:25:27 -04:00
GristWSConnection.ts (core) Fix problem with localStorage in some cross-origin embed situations 2022-11-30 23:52:50 -05:00
Importer.ts (core) Fix imports into reference columns, and support two ways to import Numeric as a reference. 2023-05-02 10:28:14 -04:00
Layout.css (core) Expanding widgets 2023-01-19 09:46:59 +01:00
Layout.ts (core) Fixing couple of bugs in collapsed section layout 2023-03-22 16:23:09 +01:00
LayoutEditor.css (core) move client code to core 2020-10-02 13:24:21 -04:00
LayoutEditor.ts (core) Minimazing widgets 2023-03-02 11:22:49 +01:00
LayoutTray.ts (core) Fixing bug with type change when a collapsed section is maximized 2023-03-28 17:47:28 +02:00
LinkingState.ts (core) Fix bug causing cursor to jump to first row in a widget linked to a summary table. 2022-10-21 16:10:19 -04:00
Login.css (core) move client code to core 2020-10-02 13:24:21 -04:00
modals.ts (core) Add April Fools easter egg 2023-03-27 14:12:52 -04:00
ParseOptions.ts (core) Add dark mode to user preferences 2022-09-05 19:17:32 -07:00
PluginScreen.ts Remove prefix from translations keys 2023-01-03 16:01:45 +01:00
Preferences.css (core) Add dark mode to user preferences 2022-09-05 19:17:32 -07:00
Printing.css (core) Improve printing of tables, fix printing of charts, add a browser test. 2020-10-12 16:04:18 -04:00
Printing.ts (core) Improve dark mode 2023-04-12 01:58:48 -04:00
RawDataPage.ts (core) Minimazing widgets 2023-03-02 11:22:49 +01:00
RecordLayout.css (core) Add behavioral and coaching call popups 2022-12-20 09:49:41 -05:00
RecordLayout.js (core) Adds a UI panel for managing webhooks 2023-05-08 18:25:27 -04:00
RecordLayoutEditor.js (core) Minimazing widgets 2023-03-02 11:22:49 +01:00
RefSelect.ts Remove prefix from translations keys 2023-01-03 16:01:45 +01:00
SearchBar.css (core) move client code to core 2020-10-02 13:24:21 -04:00
SelectionSummary.ts Remove prefix from translations keys 2023-01-03 16:01:45 +01:00
TypeConversion.ts feat(TypeConversion): allow converting list of string with quotes to ChoiceList (#397) 2023-01-12 23:13:26 -05:00
TypeTransform.ts (core) add a checkbox for owner "boss mode" 2023-01-09 13:20:23 -05:00
UndoStack.ts (core) Adds a UI panel for managing webhooks 2023-05-08 18:25:27 -04:00
UnsavedChanges.ts (core) support ?embed=true and &style=light for a clean embed experience 2020-08-14 13:34:38 -04:00
ValidationPanel.css (core) move client code to core 2020-10-02 13:24:21 -04:00
ValidationPanel.js Remove prefix from translations keys 2023-01-03 16:01:45 +01:00
ViewAsBanner.ts (core) Adds dots menu to access rules page item 2023-01-12 09:40:45 +01:00
viewCommon.css (core) Fixing background color in frozen columns for zebra stripes 2022-10-28 09:43:34 +02:00
viewCommon.js (core) Skip saving column resizes in read-only mode 2021-12-07 14:37:25 -08:00
ViewConfigTab.css (core) move client code to core 2020-10-02 13:24:21 -04:00
ViewConfigTab.js Remove prefix from translations keys 2023-01-03 16:01:45 +01:00
ViewLayout.css (core) Minimazing widgets 2023-03-02 11:22:49 +01:00
ViewLayout.ts (core) Fixing couple of bugs in collapsed section layout 2023-03-22 16:23:09 +01:00
ViewLinker.css (core) move client code to core 2020-10-02 13:24:21 -04:00
ViewPane.ts (core) Implementing row conditional formatting 2022-08-09 20:11:36 +02:00
WidgetFrame.ts (core) control the distribution of attachment metadata 2022-12-22 09:10:30 -05:00