gristlabs_grist-core/app/plugin/GristAPI-ti.ts
Dmitry S 527e9670ef (core) Include linking rowIds into remembered cursor position and anchor links.
Summary:
When linking using a Reference List column, there may be multiple source
records that show the same target record. With this change, we remember those
(rather than just pick one that shows the target record).

Test Plan: Added a browser test.

Reviewers: jarek

Reviewed By: jarek

Differential Revision: https://phab.getgrist.com/D4140
2024-01-09 09:50:31 -05:00

70 lines
2.3 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 UIRowId = t.union("number", t.lit('new'));
export const CursorPos = t.iface([], {
"rowId": t.opt("UIRowId"),
"rowIndex": t.opt("number"),
"fieldIndex": t.opt("number"),
"sectionId": t.opt("number"),
"linkingRowIds": t.opt(t.array("UIRowId")),
});
export const ComponentKind = t.union(t.lit("safeBrowser"), t.lit("safePython"), t.lit("unsafeNode"));
export const GristAPI = t.iface([], {
"render": t.func("number", t.param("path", "string"), t.param("target", "RenderTarget"), t.param("options", "RenderOptions", true)),
"dispose": t.func("void", t.param("procId", "number")),
"subscribe": t.func("void", t.param("tableId", "string")),
"unsubscribe": t.func("void", t.param("tableId", "string")),
});
export const GristDocAPI = t.iface([], {
"getDocName": t.func("string"),
"listTables": t.func(t.array("string")),
"fetchTable": t.func("any", t.param("tableId", "string")),
"applyUserActions": t.func("any", t.param("actions", t.array(t.array("any"))), t.param("options", "any", true)),
"getAccessToken": t.func("AccessTokenResult", t.param("options", "AccessTokenOptions")),
});
export const FetchSelectedOptions = t.iface([], {
"keepEncoded": t.opt("boolean"),
"format": t.opt(t.union(t.lit('rows'), t.lit('columns'))),
"includeColumns": t.opt(t.union(t.lit('shown'), t.lit('normal'), t.lit('all'))),
});
export const GristView = t.iface([], {
"fetchSelectedTable": t.func("any", t.param("options", "FetchSelectedOptions", true)),
"fetchSelectedRecord": t.func("any", t.param("rowId", "number"), t.param("options", "FetchSelectedOptions", true)),
"allowSelectBy": t.func("void"),
"setSelectedRows": t.func("void", t.param("rowIds", t.union(t.array("number"), "null"))),
"setCursorPos": t.func("void", t.param("pos", "CursorPos")),
});
export const AccessTokenOptions = t.iface([], {
"readOnly": t.opt("boolean"),
});
export const AccessTokenResult = t.iface([], {
"token": "string",
"baseUrl": "string",
"ttlMsecs": "number",
});
const exportedTypeSuite: t.ITypeSuite = {
UIRowId,
CursorPos,
ComponentKind,
GristAPI,
GristDocAPI,
FetchSelectedOptions,
GristView,
AccessTokenOptions,
AccessTokenResult,
};
export default exportedTypeSuite;