mirror of
https://github.com/gristlabs/grist-core.git
synced 2026-03-02 04:09:24 +00:00
(core) custom widget appear as build-in widget
Summary: Added boilerplate code needed to create new wigets in "Add new" menu, that are wrapped around existing custom widgets. More details can be found here: https://grist.quip.com/larhAGRKyl6Z/Custom-widgets-in-Add-Widget-menu Test Plan: nbowser tests added to verify if item in menu exits, if widget is rendered, and right side menu has widget selection and read access selection hided. Reviewers: georgegevoian Reviewed By: georgegevoian Differential Revision: https://phab.getgrist.com/D3994
This commit is contained in:
@@ -8,6 +8,8 @@ import {TelemetryLevel} from 'app/common/Telemetry';
|
||||
import {getGristConfig} from 'app/common/urlUtils';
|
||||
import {Document} from 'app/common/UserAPI';
|
||||
import {UIRowId} from 'app/plugin/GristAPI';
|
||||
import {IAttachedCustomWidget} from "app/common/widgetTypes";
|
||||
import {ThemeAppearance, ThemeAppearanceChecker, ThemeName, ThemeNameChecker} from './ThemePrefs';
|
||||
import clone = require('lodash/clone');
|
||||
import pickBy = require('lodash/pickBy');
|
||||
import {ThemeAppearance, ThemeAppearanceChecker, ThemeName, ThemeNameChecker} from './ThemePrefs';
|
||||
@@ -666,6 +668,8 @@ export interface GristLoadConfig {
|
||||
// TODO: remove once released.
|
||||
featureFormulaAssistant?: boolean;
|
||||
|
||||
permittedCustomWidgets?: IAttachedCustomWidget[];
|
||||
|
||||
// Used to determine which disclosure links should be provided to user of
|
||||
// formula assistance.
|
||||
assistantService?: 'OpenAI' | undefined;
|
||||
|
||||
11
app/common/widgetTypes.ts
Normal file
11
app/common/widgetTypes.ts
Normal file
@@ -0,0 +1,11 @@
|
||||
/**
|
||||
* Exposes utilities for getting the types information associated to each of the widget types.
|
||||
*/
|
||||
import {StringUnion} from "app/common/StringUnion";
|
||||
|
||||
// Custom widgets that are attached to "Add New" menu.
|
||||
export const AttachedCustomWidgets = StringUnion('custom.calendar');
|
||||
export type IAttachedCustomWidget = typeof AttachedCustomWidgets.type;
|
||||
|
||||
// all widget types
|
||||
export type IWidgetType = 'record' | 'detail' | 'single' | 'chart' | 'custom' | IAttachedCustomWidget;
|
||||
Reference in New Issue
Block a user