lucid-extension-sdk 0.0.227 → 0.0.229
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/commandtypes.d.ts
CHANGED
|
@@ -1103,10 +1103,19 @@ export type GetItemsAtQuery = {
|
|
|
1103
1103
|
/** IDs of the items found */
|
|
1104
1104
|
export type GetItemsAtResult = string[];
|
|
1105
1105
|
export declare enum GetLLMContextType {
|
|
1106
|
-
/** Get context in a format for LLMs where relationships among connected and
|
|
1106
|
+
/** Get context in a format for LLMs where relationships among connected and
|
|
1107
|
+
* contained items are preserved. Expand the scope of the selection to
|
|
1108
|
+
* include blocks contained by the selection as well as lines connecting
|
|
1109
|
+
* items in the selection. */
|
|
1107
1110
|
Relational = 1,
|
|
1108
1111
|
/** Get context containing only plain text displayed on the given items, more suitable for embeddings */
|
|
1109
|
-
PlainText = 2
|
|
1112
|
+
PlainText = 2,
|
|
1113
|
+
/** Get context in a format for LLMs where relationships among connected and
|
|
1114
|
+
* contained items are preserved. Do not expand the scope of the selection,
|
|
1115
|
+
* other than to ensure relationships are represented. Text on selected
|
|
1116
|
+
* items will be included, but text on automatically added items will not.
|
|
1117
|
+
* */
|
|
1118
|
+
RelationalWithoutExpansion = 3
|
|
1110
1119
|
}
|
|
1111
1120
|
export type GetLLMContextFromItemsQuery = {
|
|
1112
1121
|
/** Page ID to find closely-related items */
|
package/commandtypes.js
CHANGED
|
@@ -137,10 +137,19 @@ var GetItemsAtSearchType;
|
|
|
137
137
|
})(GetItemsAtSearchType || (exports.GetItemsAtSearchType = GetItemsAtSearchType = {}));
|
|
138
138
|
var GetLLMContextType;
|
|
139
139
|
(function (GetLLMContextType) {
|
|
140
|
-
/** Get context in a format for LLMs where relationships among connected and
|
|
140
|
+
/** Get context in a format for LLMs where relationships among connected and
|
|
141
|
+
* contained items are preserved. Expand the scope of the selection to
|
|
142
|
+
* include blocks contained by the selection as well as lines connecting
|
|
143
|
+
* items in the selection. */
|
|
141
144
|
GetLLMContextType[GetLLMContextType["Relational"] = 1] = "Relational";
|
|
142
145
|
/** Get context containing only plain text displayed on the given items, more suitable for embeddings */
|
|
143
146
|
GetLLMContextType[GetLLMContextType["PlainText"] = 2] = "PlainText";
|
|
147
|
+
/** Get context in a format for LLMs where relationships among connected and
|
|
148
|
+
* contained items are preserved. Do not expand the scope of the selection,
|
|
149
|
+
* other than to ensure relationships are represented. Text on selected
|
|
150
|
+
* items will be included, but text on automatically added items will not.
|
|
151
|
+
* */
|
|
152
|
+
GetLLMContextType[GetLLMContextType["RelationalWithoutExpansion"] = 3] = "RelationalWithoutExpansion";
|
|
144
153
|
})(GetLLMContextType || (exports.GetLLMContextType = GetLLMContextType = {}));
|
|
145
154
|
function isRawSendXHRResponse(val) {
|
|
146
155
|
return (0, checks_1.isString)(val['url']) && (0, checks_1.isString)(val['t']) && (0, checks_1.isNumber)(val['s']) && (0, checks_1.isObject)(val['h']);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const CollectionUpstreamSchemaStatus = "__CollectionUpstreamSchemaStatus__";
|
|
@@ -2,7 +2,7 @@ import { UpstreamPatchType } from '../core/data/datasource/upstreampatchtype';
|
|
|
2
2
|
import { SerializedFieldTypeDefinition } from '../core/data/fieldtypedefinition/fieldtypedefinition';
|
|
3
3
|
import { SemanticKind } from '../core/data/fieldtypedefinition/semantickind';
|
|
4
4
|
import { FieldConstraintType } from '../core/data/serializedfield/serializedfielddefinition';
|
|
5
|
-
import { SerializedFields } from '../core/data/serializedfield/serializedfields';
|
|
5
|
+
import { SerializedFields, SerializedLucidDictionary } from '../core/data/serializedfield/serializedfields';
|
|
6
6
|
import { SerializedLabelOverrides } from '../core/data/serializedfield/serializedschema';
|
|
7
7
|
import { JsonSerializable } from '../core/jsonserializable';
|
|
8
8
|
import { DataUpdateFilterType } from '../data/dataupdatefiltertype';
|
|
@@ -51,6 +51,7 @@ export declare class ItemsPatchInexhaustive {
|
|
|
51
51
|
items: Map<string, SerializedFields>;
|
|
52
52
|
/** Items to remove from the collection, based on the same primary key algorithm. */
|
|
53
53
|
itemsDeleted?: string[] | undefined;
|
|
54
|
+
errors?: Map<string, SerializedLucidDictionary> | undefined;
|
|
54
55
|
constructor(
|
|
55
56
|
/**
|
|
56
57
|
* Items to be added or changed in the collection. Mapping from item serialized primary key to
|
|
@@ -58,11 +59,12 @@ export declare class ItemsPatchInexhaustive {
|
|
|
58
59
|
**/
|
|
59
60
|
items: Map<string, SerializedFields>,
|
|
60
61
|
/** Items to remove from the collection, based on the same primary key algorithm. */
|
|
61
|
-
itemsDeleted?: string[] | undefined);
|
|
62
|
+
itemsDeleted?: string[] | undefined, errors?: Map<string, SerializedLucidDictionary> | undefined);
|
|
62
63
|
}
|
|
63
64
|
export declare class ItemsPatchExhaustive {
|
|
64
65
|
items: Map<string, SerializedFields>;
|
|
65
|
-
|
|
66
|
+
errors?: Map<string, SerializedLucidDictionary> | undefined;
|
|
67
|
+
constructor(items: Map<string, SerializedFields>, errors?: Map<string, SerializedLucidDictionary> | undefined);
|
|
66
68
|
}
|
|
67
69
|
export type ItemsPatch = {
|
|
68
70
|
/**
|
|
@@ -72,12 +74,16 @@ export type ItemsPatch = {
|
|
|
72
74
|
items: Map<string, SerializedFields>;
|
|
73
75
|
/** Items to remove from the collection, based on the same primary key algorithm. */
|
|
74
76
|
itemsDeleted?: string[];
|
|
77
|
+
/** Errors found while patching the items */
|
|
78
|
+
errors?: Map<string, SerializedLucidDictionary>;
|
|
75
79
|
} | ItemsPatchInexhaustive | ItemsPatchExhaustive;
|
|
76
80
|
export type SerializedItemsPatch = {
|
|
77
81
|
'items': Record<string, SerializedFields>;
|
|
78
82
|
'itemsDeleted': string[];
|
|
83
|
+
'errors'?: Record<string, SerializedLucidDictionary>;
|
|
79
84
|
} | {
|
|
80
85
|
'exhaustiveItems': Record<string, SerializedFields>;
|
|
86
|
+
'errors'?: Record<string, SerializedLucidDictionary>;
|
|
81
87
|
};
|
|
82
88
|
export declare function serializeItemsPatch(patch: ItemsPatch): SerializedItemsPatch;
|
|
83
89
|
/**
|
|
@@ -102,4 +108,28 @@ export interface CollectionPatch {
|
|
|
102
108
|
/** @ignore */
|
|
103
109
|
export declare function serializeFieldDefinitionForApi(field: FieldDefinition): SerializedFieldDefinitionForApi;
|
|
104
110
|
export declare function serializeCollectionPatch(patch: CollectionPatch): SerializedCollectionPatch;
|
|
111
|
+
/**
|
|
112
|
+
* For the moment, when the upstream Google Sheet is changed in such a way that the schema has changed, we simply
|
|
113
|
+
* stop updates from happening. We do need to alert the user that this has happened, though. This is a utility function
|
|
114
|
+
* for creating the appropriate entry in the errors map so that the user can be alerted that updates have stopped
|
|
115
|
+
* and what they need to do to fix it.
|
|
116
|
+
*
|
|
117
|
+
* The eventual, proposed fix is to allow schemas to have version numbers so that changes to the schema from Google
|
|
118
|
+
* can simply be folded in to the on-document copies of the data and all following edits.
|
|
119
|
+
*
|
|
120
|
+
* @param oldPrimaryKey The primary key stored in the data sync service and which currently is used to interpret
|
|
121
|
+
* patches.
|
|
122
|
+
* @param newPrimaryKey The primary key as it has been changed in the real Google Sheets.
|
|
123
|
+
* @returns The error map entry which alerts the document that this problem has happened.
|
|
124
|
+
*/
|
|
125
|
+
export declare function schemaOutOfSyncStatus(oldPrimaryKey: string[], newPrimaryKey: string[]): [string, SerializedLucidDictionary];
|
|
126
|
+
/**
|
|
127
|
+
* For the moment, when the upstream Google Sheet is changed in such a way that the schema has changed, we simply
|
|
128
|
+
* stop updates from happening. We do need to alert the user that this has happened, though. We also need to know when
|
|
129
|
+
* the updates are happening properly so we can clear the error once the user has resolved the problem. Since the
|
|
130
|
+
* only way to delete errors is to overwrite them, we simply overwrite the error to be OK on every successful
|
|
131
|
+
* import.
|
|
132
|
+
* @returns The error map entry which alerts the document that this problem has been resolved.
|
|
133
|
+
*/
|
|
134
|
+
export declare function schemaOKStatus(): [string, SerializedLucidDictionary];
|
|
105
135
|
export {};
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.serializeCollectionPatch = exports.serializeFieldDefinitionForApi = exports.serializeItemsPatch = exports.ItemsPatchExhaustive = exports.ItemsPatchInexhaustive = void 0;
|
|
3
|
+
exports.schemaOKStatus = exports.schemaOutOfSyncStatus = exports.serializeCollectionPatch = exports.serializeFieldDefinitionForApi = exports.serializeItemsPatch = exports.ItemsPatchExhaustive = exports.ItemsPatchInexhaustive = void 0;
|
|
4
4
|
const fieldtypedefinition_1 = require("../core/data/fieldtypedefinition/fieldtypedefinition");
|
|
5
5
|
const object_1 = require("../core/object");
|
|
6
|
+
const collectionerrortypes_1 = require("../data/collectionerrortypes");
|
|
6
7
|
class ItemsPatchInexhaustive {
|
|
7
8
|
constructor(
|
|
8
9
|
/**
|
|
@@ -11,28 +12,35 @@ class ItemsPatchInexhaustive {
|
|
|
11
12
|
**/
|
|
12
13
|
items,
|
|
13
14
|
/** Items to remove from the collection, based on the same primary key algorithm. */
|
|
14
|
-
itemsDeleted) {
|
|
15
|
+
itemsDeleted, errors) {
|
|
15
16
|
this.items = items;
|
|
16
17
|
this.itemsDeleted = itemsDeleted;
|
|
18
|
+
this.errors = errors;
|
|
17
19
|
}
|
|
18
20
|
}
|
|
19
21
|
exports.ItemsPatchInexhaustive = ItemsPatchInexhaustive;
|
|
20
22
|
class ItemsPatchExhaustive {
|
|
21
|
-
constructor(items) {
|
|
23
|
+
constructor(items, errors) {
|
|
22
24
|
this.items = items;
|
|
25
|
+
this.errors = errors;
|
|
23
26
|
}
|
|
24
27
|
}
|
|
25
28
|
exports.ItemsPatchExhaustive = ItemsPatchExhaustive;
|
|
29
|
+
function serializeErrors(errors) {
|
|
30
|
+
if (!errors) {
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
const serializedErrors = {};
|
|
34
|
+
errors.forEach((dictionary, key) => (serializedErrors[key] = dictionary));
|
|
35
|
+
return { 'errors': serializedErrors };
|
|
36
|
+
}
|
|
26
37
|
function serializeItemsPatch(patch) {
|
|
27
38
|
var _a;
|
|
28
39
|
if (patch instanceof ItemsPatchExhaustive) {
|
|
29
|
-
return { 'exhaustiveItems': (0, object_1.fromEntries)(patch.items.entries()) };
|
|
40
|
+
return Object.assign({ 'exhaustiveItems': (0, object_1.fromEntries)(patch.items.entries()) }, serializeErrors(patch.errors));
|
|
30
41
|
}
|
|
31
42
|
else {
|
|
32
|
-
return {
|
|
33
|
-
'items': (0, object_1.fromEntries)(patch.items.entries()),
|
|
34
|
-
'itemsDeleted': (_a = patch.itemsDeleted) !== null && _a !== void 0 ? _a : [],
|
|
35
|
-
};
|
|
43
|
+
return Object.assign({ 'items': (0, object_1.fromEntries)(patch.items.entries()), 'itemsDeleted': (_a = patch.itemsDeleted) !== null && _a !== void 0 ? _a : [] }, serializeErrors(patch.errors));
|
|
36
44
|
}
|
|
37
45
|
}
|
|
38
46
|
exports.serializeItemsPatch = serializeItemsPatch;
|
|
@@ -67,6 +75,54 @@ function serializeCollectionPatch(patch) {
|
|
|
67
75
|
};
|
|
68
76
|
}
|
|
69
77
|
exports.serializeCollectionPatch = serializeCollectionPatch;
|
|
78
|
+
/**
|
|
79
|
+
* For the moment, when the upstream Google Sheet is changed in such a way that the schema has changed, we simply
|
|
80
|
+
* stop updates from happening. We do need to alert the user that this has happened, though. This is a utility function
|
|
81
|
+
* for creating the appropriate entry in the errors map so that the user can be alerted that updates have stopped
|
|
82
|
+
* and what they need to do to fix it.
|
|
83
|
+
*
|
|
84
|
+
* The eventual, proposed fix is to allow schemas to have version numbers so that changes to the schema from Google
|
|
85
|
+
* can simply be folded in to the on-document copies of the data and all following edits.
|
|
86
|
+
*
|
|
87
|
+
* @param oldPrimaryKey The primary key stored in the data sync service and which currently is used to interpret
|
|
88
|
+
* patches.
|
|
89
|
+
* @param newPrimaryKey The primary key as it has been changed in the real Google Sheets.
|
|
90
|
+
* @returns The error map entry which alerts the document that this problem has happened.
|
|
91
|
+
*/
|
|
92
|
+
function schemaOutOfSyncStatus(oldPrimaryKey, newPrimaryKey) {
|
|
93
|
+
return [
|
|
94
|
+
collectionerrortypes_1.CollectionUpstreamSchemaStatus,
|
|
95
|
+
{
|
|
96
|
+
'dict': {
|
|
97
|
+
'status': 'broken',
|
|
98
|
+
'onDocumentKey': JSON.stringify(oldPrimaryKey),
|
|
99
|
+
'upstreamKey': JSON.stringify(newPrimaryKey),
|
|
100
|
+
},
|
|
101
|
+
},
|
|
102
|
+
];
|
|
103
|
+
}
|
|
104
|
+
exports.schemaOutOfSyncStatus = schemaOutOfSyncStatus;
|
|
105
|
+
/**
|
|
106
|
+
* For the moment, when the upstream Google Sheet is changed in such a way that the schema has changed, we simply
|
|
107
|
+
* stop updates from happening. We do need to alert the user that this has happened, though. We also need to know when
|
|
108
|
+
* the updates are happening properly so we can clear the error once the user has resolved the problem. Since the
|
|
109
|
+
* only way to delete errors is to overwrite them, we simply overwrite the error to be OK on every successful
|
|
110
|
+
* import.
|
|
111
|
+
* @returns The error map entry which alerts the document that this problem has been resolved.
|
|
112
|
+
*/
|
|
113
|
+
function schemaOKStatus() {
|
|
114
|
+
return [
|
|
115
|
+
collectionerrortypes_1.CollectionUpstreamSchemaStatus,
|
|
116
|
+
{
|
|
117
|
+
'dict': {
|
|
118
|
+
'status': 'ok',
|
|
119
|
+
'onDocumentKey': null,
|
|
120
|
+
'upstreamKey': null,
|
|
121
|
+
},
|
|
122
|
+
},
|
|
123
|
+
];
|
|
124
|
+
}
|
|
125
|
+
exports.schemaOKStatus = schemaOKStatus;
|
|
70
126
|
const assertIsJustRenamed = () => undefined;
|
|
71
127
|
assertIsJustRenamed();
|
|
72
128
|
assertIsJustRenamed();
|