mirror of
https://github.com/gristlabs/grist-core.git
synced 2024-10-27 20:44:07 +00:00
b80e56a4e1
Summary: Exposing new API in CustomSectionAPI for column mapping. The custom widget can call configure method (or use a ready method) with additional parameter "columns". This parameter is a list of column names that should be mapped by the user. Mapping configuration is exposed through an additional method in the CustomSectionAPI "mappings". It is also available through the onRecord(s) event. This DIFF is connected with PR for grist-widgets repository https://github.com/gristlabs/grist-widget/pull/15 Design document and discussion: https://grist.quip.com/Y2waA8h8Zuzu/Custom-Widget-field-mapping Test Plan: browser tests Reviewers: paulfitz Reviewed By: paulfitz Differential Revision: https://phab.getgrist.com/D3241
45 lines
1.2 KiB
TypeScript
45 lines
1.2 KiB
TypeScript
/**
|
|
* This module was automatically generated by `ts-interface-builder`
|
|
*/
|
|
import * as t from "ts-interface-checker";
|
|
// tslint:disable:object-literal-key-quotes
|
|
|
|
export const ColumnToMap = t.iface([], {
|
|
"name": "string",
|
|
"title": t.opt(t.union("string", "null")),
|
|
"type": t.opt("string"),
|
|
"optional": t.opt("boolean"),
|
|
"allowMultiple": t.opt("boolean"),
|
|
});
|
|
|
|
export const ColumnsToMap = t.array(t.union("string", "ColumnToMap"));
|
|
|
|
export const InteractionOptionsRequest = t.iface([], {
|
|
"requiredAccess": t.opt("string"),
|
|
"hasCustomOptions": t.opt("boolean"),
|
|
"columns": t.opt("ColumnsToMap"),
|
|
});
|
|
|
|
export const InteractionOptions = t.iface([], {
|
|
"accessLevel": "string",
|
|
});
|
|
|
|
export const WidgetColumnMap = t.iface([], {
|
|
[t.indexKey]: t.union("string", t.array("string"), "null"),
|
|
});
|
|
|
|
export const CustomSectionAPI = t.iface([], {
|
|
"configure": t.func("void", t.param("customOptions", "InteractionOptionsRequest")),
|
|
"mappings": t.func(t.union("WidgetColumnMap", "null")),
|
|
});
|
|
|
|
const exportedTypeSuite: t.ITypeSuite = {
|
|
ColumnToMap,
|
|
ColumnsToMap,
|
|
InteractionOptionsRequest,
|
|
InteractionOptions,
|
|
WidgetColumnMap,
|
|
CustomSectionAPI,
|
|
};
|
|
export default exportedTypeSuite;
|