@comapeo/core 2.0.1 → 2.2.0
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/dist/blob-store/downloader.d.ts +43 -0
- package/dist/blob-store/downloader.d.ts.map +1 -0
- package/dist/blob-store/entries-stream.d.ts +13 -0
- package/dist/blob-store/entries-stream.d.ts.map +1 -0
- package/dist/blob-store/hyperdrive-index.d.ts +20 -0
- package/dist/blob-store/hyperdrive-index.d.ts.map +1 -0
- package/dist/blob-store/index.d.ts +34 -29
- package/dist/blob-store/index.d.ts.map +1 -1
- package/dist/blob-store/utils.d.ts +27 -0
- package/dist/blob-store/utils.d.ts.map +1 -0
- package/dist/constants.d.ts +2 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/core-manager/index.d.ts +11 -1
- package/dist/core-manager/index.d.ts.map +1 -1
- package/dist/core-ownership.d.ts.map +1 -1
- package/dist/datastore/index.d.ts +5 -4
- package/dist/datastore/index.d.ts.map +1 -1
- package/dist/datatype/index.d.ts +5 -1
- package/dist/discovery/local-discovery.d.ts.map +1 -1
- package/dist/errors.d.ts +6 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/fastify-plugins/blobs.d.ts.map +1 -1
- package/dist/fastify-plugins/maps.d.ts.map +1 -1
- package/dist/generated/extensions.d.ts +31 -0
- package/dist/generated/extensions.d.ts.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/lib/drizzle-helpers.d.ts +6 -0
- package/dist/lib/drizzle-helpers.d.ts.map +1 -0
- package/dist/lib/error.d.ts +51 -0
- package/dist/lib/error.d.ts.map +1 -0
- package/dist/lib/get-own.d.ts +9 -0
- package/dist/lib/get-own.d.ts.map +1 -0
- package/dist/lib/is-hostname-ip-address.d.ts +17 -0
- package/dist/lib/is-hostname-ip-address.d.ts.map +1 -0
- package/dist/lib/ws-core-replicator.d.ts +11 -0
- package/dist/lib/ws-core-replicator.d.ts.map +1 -0
- package/dist/mapeo-manager.d.ts +18 -22
- package/dist/mapeo-manager.d.ts.map +1 -1
- package/dist/mapeo-project.d.ts +459 -26
- package/dist/mapeo-project.d.ts.map +1 -1
- package/dist/member-api.d.ts +44 -1
- package/dist/member-api.d.ts.map +1 -1
- package/dist/roles.d.ts.map +1 -1
- package/dist/schema/client.d.ts +17 -5
- package/dist/schema/client.d.ts.map +1 -1
- package/dist/schema/project.d.ts +212 -2
- package/dist/schema/project.d.ts.map +1 -1
- package/dist/sync/core-sync-state.d.ts +20 -15
- package/dist/sync/core-sync-state.d.ts.map +1 -1
- package/dist/sync/namespace-sync-state.d.ts +13 -1
- package/dist/sync/namespace-sync-state.d.ts.map +1 -1
- package/dist/sync/peer-sync-controller.d.ts +1 -1
- package/dist/sync/peer-sync-controller.d.ts.map +1 -1
- package/dist/sync/sync-api.d.ts +47 -2
- package/dist/sync/sync-api.d.ts.map +1 -1
- package/dist/sync/sync-state.d.ts +12 -0
- package/dist/sync/sync-state.d.ts.map +1 -1
- package/dist/translation-api.d.ts +2 -2
- package/dist/translation-api.d.ts.map +1 -1
- package/dist/types.d.ts +10 -2
- package/dist/types.d.ts.map +1 -1
- package/drizzle/client/0001_chubby_cargill.sql +12 -0
- package/drizzle/client/meta/0001_snapshot.json +208 -0
- package/drizzle/client/meta/_journal.json +7 -0
- package/drizzle/project/0001_medical_wendell_rand.sql +22 -0
- package/drizzle/project/meta/0001_snapshot.json +1267 -0
- package/drizzle/project/meta/_journal.json +7 -0
- package/package.json +14 -5
- package/src/blob-store/downloader.js +130 -0
- package/src/blob-store/entries-stream.js +81 -0
- package/src/blob-store/hyperdrive-index.js +122 -0
- package/src/blob-store/index.js +59 -117
- package/src/blob-store/utils.js +54 -0
- package/src/constants.js +4 -1
- package/src/core-manager/index.js +60 -3
- package/src/core-ownership.js +2 -4
- package/src/datastore/README.md +1 -2
- package/src/datastore/index.js +8 -8
- package/src/datatype/index.d.ts +5 -1
- package/src/datatype/index.js +22 -9
- package/src/discovery/local-discovery.js +2 -1
- package/src/errors.js +11 -2
- package/src/fastify-plugins/blobs.js +17 -1
- package/src/fastify-plugins/maps.js +2 -1
- package/src/generated/extensions.d.ts +31 -0
- package/src/generated/extensions.js +150 -0
- package/src/generated/extensions.ts +181 -0
- package/src/index.js +10 -0
- package/src/invite-api.js +1 -1
- package/src/lib/drizzle-helpers.js +79 -0
- package/src/lib/error.js +71 -0
- package/src/lib/get-own.js +10 -0
- package/src/lib/is-hostname-ip-address.js +26 -0
- package/src/lib/ws-core-replicator.js +47 -0
- package/src/mapeo-manager.js +74 -45
- package/src/mapeo-project.js +238 -58
- package/src/member-api.js +295 -2
- package/src/roles.js +38 -32
- package/src/schema/client.js +4 -3
- package/src/schema/project.js +7 -0
- package/src/sync/core-sync-state.js +39 -23
- package/src/sync/namespace-sync-state.js +22 -0
- package/src/sync/peer-sync-controller.js +1 -0
- package/src/sync/sync-api.js +197 -3
- package/src/sync/sync-state.js +18 -0
- package/src/translation-api.js +5 -9
- package/src/types.ts +12 -3
- package/dist/blob-store/live-download.d.ts +0 -107
- package/dist/blob-store/live-download.d.ts.map +0 -1
- package/dist/lib/timing-safe-equal.d.ts +0 -15
- package/dist/lib/timing-safe-equal.d.ts.map +0 -1
- package/src/blob-store/live-download.js +0 -373
- package/src/lib/timing-safe-equal.js +0 -34
package/dist/mapeo-project.d.ts
CHANGED
|
@@ -6,6 +6,8 @@ export const kProjectReplicate: unique symbol;
|
|
|
6
6
|
export const kDataTypes: unique symbol;
|
|
7
7
|
export const kProjectLeave: unique symbol;
|
|
8
8
|
export const kClearDataIfLeft: unique symbol;
|
|
9
|
+
export const kSetIsArchiveDevice: unique symbol;
|
|
10
|
+
export const kIsArchiveDevice: unique symbol;
|
|
9
11
|
/**
|
|
10
12
|
* @extends {TypedEmitter<{ close: () => void }>}
|
|
11
13
|
*/
|
|
@@ -26,10 +28,11 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
26
28
|
* @param {CoreStorage} opts.coreStorage Folder to store all hypercore data
|
|
27
29
|
* @param {(mediaType: 'blobs' | 'icons') => Promise<string>} opts.getMediaBaseUrl
|
|
28
30
|
* @param {import('./local-peers.js').LocalPeers} opts.localPeers
|
|
31
|
+
* @param {boolean} opts.isArchiveDevice Whether this device is an archive device
|
|
29
32
|
* @param {Logger} [opts.logger]
|
|
30
33
|
*
|
|
31
34
|
*/
|
|
32
|
-
constructor({ dbPath, projectMigrationsFolder, sharedDb, sharedIndexWriter, coreStorage, keyManager, projectKey, projectSecretKey, encryptionKeys, getMediaBaseUrl, localPeers, logger, }: {
|
|
35
|
+
constructor({ dbPath, projectMigrationsFolder, sharedDb, sharedIndexWriter, coreStorage, keyManager, projectKey, projectSecretKey, encryptionKeys, getMediaBaseUrl, localPeers, logger, isArchiveDevice, }: {
|
|
33
36
|
dbPath: string;
|
|
34
37
|
projectMigrationsFolder: string;
|
|
35
38
|
keyManager: import("@mapeo/crypto/dist/key-manager.js");
|
|
@@ -41,6 +44,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
41
44
|
coreStorage: CoreStorage;
|
|
42
45
|
getMediaBaseUrl: (mediaType: "blobs" | "icons") => Promise<string>;
|
|
43
46
|
localPeers: import("./local-peers.js").LocalPeers;
|
|
47
|
+
isArchiveDevice: boolean;
|
|
44
48
|
logger?: Logger | undefined;
|
|
45
49
|
});
|
|
46
50
|
$blobs: BlobApi;
|
|
@@ -54,7 +58,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
54
58
|
/**
|
|
55
59
|
*/
|
|
56
60
|
close(): Promise<void>;
|
|
57
|
-
get observation(): DataType<DataStore<"data", "
|
|
61
|
+
get observation(): DataType<DataStore<"data", "track" | "remoteDetectionAlert" | "observation">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
58
62
|
name: "observation";
|
|
59
63
|
schema: undefined;
|
|
60
64
|
columns: {
|
|
@@ -324,7 +328,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
324
328
|
versionId: string;
|
|
325
329
|
} | undefined;
|
|
326
330
|
}>;
|
|
327
|
-
get track(): DataType<DataStore<"data", "
|
|
331
|
+
get track(): DataType<DataStore<"data", "track" | "remoteDetectionAlert" | "observation">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
328
332
|
name: "track";
|
|
329
333
|
schema: undefined;
|
|
330
334
|
columns: {
|
|
@@ -507,7 +511,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
507
511
|
[k: string]: boolean | number | string | null | (boolean | number | string | null)[];
|
|
508
512
|
};
|
|
509
513
|
}>;
|
|
510
|
-
get preset(): DataType<DataStore<"config", "translation" | "
|
|
514
|
+
get preset(): DataType<DataStore<"config", "translation" | "projectSettings" | "preset" | "icon" | "field" | "deviceInfo">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
511
515
|
name: "preset";
|
|
512
516
|
schema: undefined;
|
|
513
517
|
columns: {
|
|
@@ -777,7 +781,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
777
781
|
terms: string[];
|
|
778
782
|
color?: string | undefined;
|
|
779
783
|
}>;
|
|
780
|
-
get field(): DataType<DataStore<"config", "translation" | "
|
|
784
|
+
get field(): DataType<DataStore<"config", "translation" | "projectSettings" | "preset" | "icon" | "field" | "deviceInfo">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
781
785
|
name: "field";
|
|
782
786
|
schema: undefined;
|
|
783
787
|
columns: {
|
|
@@ -1038,6 +1042,208 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
1038
1042
|
placeholder?: string | undefined;
|
|
1039
1043
|
helperText?: string | undefined;
|
|
1040
1044
|
}>;
|
|
1045
|
+
get remoteDetectionAlert(): DataType<DataStore<"data", "track" | "remoteDetectionAlert" | "observation">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
1046
|
+
name: "remoteDetectionAlert";
|
|
1047
|
+
schema: undefined;
|
|
1048
|
+
columns: {
|
|
1049
|
+
readonly docId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1050
|
+
name: "docId";
|
|
1051
|
+
tableName: "remoteDetectionAlert";
|
|
1052
|
+
dataType: "string";
|
|
1053
|
+
columnType: "SQLiteText";
|
|
1054
|
+
data: string;
|
|
1055
|
+
driverParam: string;
|
|
1056
|
+
notNull: true;
|
|
1057
|
+
hasDefault: false;
|
|
1058
|
+
enumValues: [string, ...string[]];
|
|
1059
|
+
baseColumn: never;
|
|
1060
|
+
}, object>;
|
|
1061
|
+
readonly versionId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1062
|
+
name: "versionId";
|
|
1063
|
+
tableName: "remoteDetectionAlert";
|
|
1064
|
+
dataType: "string";
|
|
1065
|
+
columnType: "SQLiteText";
|
|
1066
|
+
data: string;
|
|
1067
|
+
driverParam: string;
|
|
1068
|
+
notNull: true;
|
|
1069
|
+
hasDefault: false;
|
|
1070
|
+
enumValues: [string, ...string[]];
|
|
1071
|
+
baseColumn: never;
|
|
1072
|
+
}, object>;
|
|
1073
|
+
readonly originalVersionId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1074
|
+
name: "originalVersionId";
|
|
1075
|
+
tableName: "remoteDetectionAlert";
|
|
1076
|
+
dataType: "string";
|
|
1077
|
+
columnType: "SQLiteText";
|
|
1078
|
+
data: string;
|
|
1079
|
+
driverParam: string;
|
|
1080
|
+
notNull: true;
|
|
1081
|
+
hasDefault: false;
|
|
1082
|
+
enumValues: [string, ...string[]];
|
|
1083
|
+
baseColumn: never;
|
|
1084
|
+
}, object>;
|
|
1085
|
+
readonly schemaName: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1086
|
+
name: "schemaName";
|
|
1087
|
+
tableName: "remoteDetectionAlert";
|
|
1088
|
+
dataType: "string";
|
|
1089
|
+
columnType: "SQLiteText";
|
|
1090
|
+
data: "remoteDetectionAlert";
|
|
1091
|
+
driverParam: string;
|
|
1092
|
+
notNull: true;
|
|
1093
|
+
hasDefault: false;
|
|
1094
|
+
enumValues: ["remoteDetectionAlert"];
|
|
1095
|
+
baseColumn: never;
|
|
1096
|
+
}, object>;
|
|
1097
|
+
readonly createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1098
|
+
name: "createdAt";
|
|
1099
|
+
tableName: "remoteDetectionAlert";
|
|
1100
|
+
dataType: "string";
|
|
1101
|
+
columnType: "SQLiteText";
|
|
1102
|
+
data: string;
|
|
1103
|
+
driverParam: string;
|
|
1104
|
+
notNull: true;
|
|
1105
|
+
hasDefault: false;
|
|
1106
|
+
enumValues: [string, ...string[]];
|
|
1107
|
+
baseColumn: never;
|
|
1108
|
+
}, object>;
|
|
1109
|
+
readonly updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1110
|
+
name: "updatedAt";
|
|
1111
|
+
tableName: "remoteDetectionAlert";
|
|
1112
|
+
dataType: "string";
|
|
1113
|
+
columnType: "SQLiteText";
|
|
1114
|
+
data: string;
|
|
1115
|
+
driverParam: string;
|
|
1116
|
+
notNull: true;
|
|
1117
|
+
hasDefault: false;
|
|
1118
|
+
enumValues: [string, ...string[]];
|
|
1119
|
+
baseColumn: never;
|
|
1120
|
+
}, object>;
|
|
1121
|
+
readonly links: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1122
|
+
name: "links";
|
|
1123
|
+
tableName: "remoteDetectionAlert";
|
|
1124
|
+
dataType: "custom";
|
|
1125
|
+
columnType: "SQLiteCustomColumn";
|
|
1126
|
+
data: string[];
|
|
1127
|
+
driverParam: string;
|
|
1128
|
+
notNull: true;
|
|
1129
|
+
hasDefault: false;
|
|
1130
|
+
enumValues: undefined;
|
|
1131
|
+
baseColumn: never;
|
|
1132
|
+
}, object>;
|
|
1133
|
+
readonly deleted: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1134
|
+
name: "deleted";
|
|
1135
|
+
tableName: "remoteDetectionAlert";
|
|
1136
|
+
dataType: "boolean";
|
|
1137
|
+
columnType: "SQLiteBoolean";
|
|
1138
|
+
data: boolean;
|
|
1139
|
+
driverParam: number;
|
|
1140
|
+
notNull: true;
|
|
1141
|
+
hasDefault: false;
|
|
1142
|
+
enumValues: undefined;
|
|
1143
|
+
baseColumn: never;
|
|
1144
|
+
}, object>;
|
|
1145
|
+
readonly detectionDateStart: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1146
|
+
name: "detectionDateStart";
|
|
1147
|
+
tableName: "remoteDetectionAlert";
|
|
1148
|
+
dataType: "string";
|
|
1149
|
+
columnType: "SQLiteText";
|
|
1150
|
+
data: string;
|
|
1151
|
+
driverParam: string;
|
|
1152
|
+
notNull: true;
|
|
1153
|
+
hasDefault: false;
|
|
1154
|
+
enumValues: [string, ...string[]];
|
|
1155
|
+
baseColumn: never;
|
|
1156
|
+
}, object>;
|
|
1157
|
+
readonly detectionDateEnd: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1158
|
+
name: "detectionDateEnd";
|
|
1159
|
+
tableName: "remoteDetectionAlert";
|
|
1160
|
+
dataType: "string";
|
|
1161
|
+
columnType: "SQLiteText";
|
|
1162
|
+
data: string;
|
|
1163
|
+
driverParam: string;
|
|
1164
|
+
notNull: true;
|
|
1165
|
+
hasDefault: false;
|
|
1166
|
+
enumValues: [string, ...string[]];
|
|
1167
|
+
baseColumn: never;
|
|
1168
|
+
}, object>;
|
|
1169
|
+
readonly sourceId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1170
|
+
name: "sourceId";
|
|
1171
|
+
tableName: "remoteDetectionAlert";
|
|
1172
|
+
dataType: "string";
|
|
1173
|
+
columnType: "SQLiteText";
|
|
1174
|
+
data: string;
|
|
1175
|
+
driverParam: string;
|
|
1176
|
+
notNull: true;
|
|
1177
|
+
hasDefault: false;
|
|
1178
|
+
enumValues: [string, ...string[]];
|
|
1179
|
+
baseColumn: never;
|
|
1180
|
+
}, object>;
|
|
1181
|
+
readonly metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1182
|
+
name: "metadata";
|
|
1183
|
+
tableName: "remoteDetectionAlert";
|
|
1184
|
+
dataType: "custom";
|
|
1185
|
+
columnType: "SQLiteCustomColumn";
|
|
1186
|
+
data: {
|
|
1187
|
+
[k: string]: string | number | boolean | (string | number | boolean | null)[] | null;
|
|
1188
|
+
};
|
|
1189
|
+
driverParam: string;
|
|
1190
|
+
notNull: true;
|
|
1191
|
+
hasDefault: false;
|
|
1192
|
+
enumValues: undefined;
|
|
1193
|
+
baseColumn: never;
|
|
1194
|
+
}, object>;
|
|
1195
|
+
readonly geometry: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1196
|
+
name: "geometry";
|
|
1197
|
+
tableName: "remoteDetectionAlert";
|
|
1198
|
+
dataType: "custom";
|
|
1199
|
+
columnType: "SQLiteCustomColumn";
|
|
1200
|
+
data: import("@comapeo/schema/dist/schema/remoteDetectionAlert.js").Geometry;
|
|
1201
|
+
driverParam: string;
|
|
1202
|
+
notNull: true;
|
|
1203
|
+
hasDefault: false;
|
|
1204
|
+
enumValues: undefined;
|
|
1205
|
+
baseColumn: never;
|
|
1206
|
+
}, object>;
|
|
1207
|
+
forks: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1208
|
+
name: "forks";
|
|
1209
|
+
tableName: "remoteDetectionAlert";
|
|
1210
|
+
dataType: "custom";
|
|
1211
|
+
columnType: "SQLiteCustomColumn";
|
|
1212
|
+
data: string[];
|
|
1213
|
+
driverParam: string;
|
|
1214
|
+
notNull: true;
|
|
1215
|
+
hasDefault: false;
|
|
1216
|
+
enumValues: undefined;
|
|
1217
|
+
baseColumn: never;
|
|
1218
|
+
}, object>;
|
|
1219
|
+
};
|
|
1220
|
+
dialect: "sqlite";
|
|
1221
|
+
}>, "remoteDetectionAlert", {
|
|
1222
|
+
schemaName: "remoteDetectionAlert";
|
|
1223
|
+
detectionDateStart: string;
|
|
1224
|
+
detectionDateEnd: string;
|
|
1225
|
+
sourceId: string;
|
|
1226
|
+
metadata: {
|
|
1227
|
+
[k: string]: boolean | number | string | null | (boolean | number | string | null)[];
|
|
1228
|
+
};
|
|
1229
|
+
geometry: import("@comapeo/schema/dist/schema/remoteDetectionAlert.js").Geometry;
|
|
1230
|
+
docId: string;
|
|
1231
|
+
versionId: string;
|
|
1232
|
+
originalVersionId: string;
|
|
1233
|
+
createdAt: string;
|
|
1234
|
+
updatedAt: string;
|
|
1235
|
+
links: string[];
|
|
1236
|
+
deleted: boolean;
|
|
1237
|
+
}, {
|
|
1238
|
+
schemaName: "remoteDetectionAlert";
|
|
1239
|
+
detectionDateStart: string;
|
|
1240
|
+
detectionDateEnd: string;
|
|
1241
|
+
sourceId: string;
|
|
1242
|
+
metadata: {
|
|
1243
|
+
[k: string]: boolean | number | string | null | (boolean | number | string | null)[];
|
|
1244
|
+
};
|
|
1245
|
+
geometry: import("@comapeo/schema/dist/schema/remoteDetectionAlert.js").Geometry;
|
|
1246
|
+
}>;
|
|
1041
1247
|
get $member(): MemberApi;
|
|
1042
1248
|
get $sync(): SyncApi;
|
|
1043
1249
|
get $translation(): TranslationApi;
|
|
@@ -1080,7 +1286,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
1080
1286
|
* DataTypes object mappings, used for tests
|
|
1081
1287
|
*/
|
|
1082
1288
|
get [kDataTypes](): {
|
|
1083
|
-
observation: DataType<DataStore<"data", "
|
|
1289
|
+
observation: DataType<DataStore<"data", "track" | "remoteDetectionAlert" | "observation">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
1084
1290
|
name: "observation";
|
|
1085
1291
|
schema: undefined;
|
|
1086
1292
|
columns: {
|
|
@@ -1350,7 +1556,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
1350
1556
|
versionId: string;
|
|
1351
1557
|
} | undefined;
|
|
1352
1558
|
}>;
|
|
1353
|
-
track: DataType<DataStore<"data", "
|
|
1559
|
+
track: DataType<DataStore<"data", "track" | "remoteDetectionAlert" | "observation">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
1354
1560
|
name: "track";
|
|
1355
1561
|
schema: undefined;
|
|
1356
1562
|
columns: {
|
|
@@ -1533,7 +1739,209 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
1533
1739
|
[k: string]: boolean | number | string | null | (boolean | number | string | null)[];
|
|
1534
1740
|
};
|
|
1535
1741
|
}>;
|
|
1536
|
-
|
|
1742
|
+
remoteDetectionAlert: DataType<DataStore<"data", "track" | "remoteDetectionAlert" | "observation">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
1743
|
+
name: "remoteDetectionAlert";
|
|
1744
|
+
schema: undefined;
|
|
1745
|
+
columns: {
|
|
1746
|
+
readonly docId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1747
|
+
name: "docId";
|
|
1748
|
+
tableName: "remoteDetectionAlert";
|
|
1749
|
+
dataType: "string";
|
|
1750
|
+
columnType: "SQLiteText";
|
|
1751
|
+
data: string;
|
|
1752
|
+
driverParam: string;
|
|
1753
|
+
notNull: true;
|
|
1754
|
+
hasDefault: false;
|
|
1755
|
+
enumValues: [string, ...string[]];
|
|
1756
|
+
baseColumn: never;
|
|
1757
|
+
}, object>;
|
|
1758
|
+
readonly versionId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1759
|
+
name: "versionId";
|
|
1760
|
+
tableName: "remoteDetectionAlert";
|
|
1761
|
+
dataType: "string";
|
|
1762
|
+
columnType: "SQLiteText";
|
|
1763
|
+
data: string;
|
|
1764
|
+
driverParam: string;
|
|
1765
|
+
notNull: true;
|
|
1766
|
+
hasDefault: false;
|
|
1767
|
+
enumValues: [string, ...string[]];
|
|
1768
|
+
baseColumn: never;
|
|
1769
|
+
}, object>;
|
|
1770
|
+
readonly originalVersionId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1771
|
+
name: "originalVersionId";
|
|
1772
|
+
tableName: "remoteDetectionAlert";
|
|
1773
|
+
dataType: "string";
|
|
1774
|
+
columnType: "SQLiteText";
|
|
1775
|
+
data: string;
|
|
1776
|
+
driverParam: string;
|
|
1777
|
+
notNull: true;
|
|
1778
|
+
hasDefault: false;
|
|
1779
|
+
enumValues: [string, ...string[]];
|
|
1780
|
+
baseColumn: never;
|
|
1781
|
+
}, object>;
|
|
1782
|
+
readonly schemaName: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1783
|
+
name: "schemaName";
|
|
1784
|
+
tableName: "remoteDetectionAlert";
|
|
1785
|
+
dataType: "string";
|
|
1786
|
+
columnType: "SQLiteText";
|
|
1787
|
+
data: "remoteDetectionAlert";
|
|
1788
|
+
driverParam: string;
|
|
1789
|
+
notNull: true;
|
|
1790
|
+
hasDefault: false;
|
|
1791
|
+
enumValues: ["remoteDetectionAlert"];
|
|
1792
|
+
baseColumn: never;
|
|
1793
|
+
}, object>;
|
|
1794
|
+
readonly createdAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1795
|
+
name: "createdAt";
|
|
1796
|
+
tableName: "remoteDetectionAlert";
|
|
1797
|
+
dataType: "string";
|
|
1798
|
+
columnType: "SQLiteText";
|
|
1799
|
+
data: string;
|
|
1800
|
+
driverParam: string;
|
|
1801
|
+
notNull: true;
|
|
1802
|
+
hasDefault: false;
|
|
1803
|
+
enumValues: [string, ...string[]];
|
|
1804
|
+
baseColumn: never;
|
|
1805
|
+
}, object>;
|
|
1806
|
+
readonly updatedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1807
|
+
name: "updatedAt";
|
|
1808
|
+
tableName: "remoteDetectionAlert";
|
|
1809
|
+
dataType: "string";
|
|
1810
|
+
columnType: "SQLiteText";
|
|
1811
|
+
data: string;
|
|
1812
|
+
driverParam: string;
|
|
1813
|
+
notNull: true;
|
|
1814
|
+
hasDefault: false;
|
|
1815
|
+
enumValues: [string, ...string[]];
|
|
1816
|
+
baseColumn: never;
|
|
1817
|
+
}, object>;
|
|
1818
|
+
readonly links: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1819
|
+
name: "links";
|
|
1820
|
+
tableName: "remoteDetectionAlert";
|
|
1821
|
+
dataType: "custom";
|
|
1822
|
+
columnType: "SQLiteCustomColumn";
|
|
1823
|
+
data: string[];
|
|
1824
|
+
driverParam: string;
|
|
1825
|
+
notNull: true;
|
|
1826
|
+
hasDefault: false;
|
|
1827
|
+
enumValues: undefined;
|
|
1828
|
+
baseColumn: never;
|
|
1829
|
+
}, object>;
|
|
1830
|
+
readonly deleted: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1831
|
+
name: "deleted";
|
|
1832
|
+
tableName: "remoteDetectionAlert";
|
|
1833
|
+
dataType: "boolean";
|
|
1834
|
+
columnType: "SQLiteBoolean";
|
|
1835
|
+
data: boolean;
|
|
1836
|
+
driverParam: number;
|
|
1837
|
+
notNull: true;
|
|
1838
|
+
hasDefault: false;
|
|
1839
|
+
enumValues: undefined;
|
|
1840
|
+
baseColumn: never;
|
|
1841
|
+
}, object>;
|
|
1842
|
+
readonly detectionDateStart: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1843
|
+
name: "detectionDateStart";
|
|
1844
|
+
tableName: "remoteDetectionAlert";
|
|
1845
|
+
dataType: "string";
|
|
1846
|
+
columnType: "SQLiteText";
|
|
1847
|
+
data: string;
|
|
1848
|
+
driverParam: string;
|
|
1849
|
+
notNull: true;
|
|
1850
|
+
hasDefault: false;
|
|
1851
|
+
enumValues: [string, ...string[]];
|
|
1852
|
+
baseColumn: never;
|
|
1853
|
+
}, object>;
|
|
1854
|
+
readonly detectionDateEnd: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1855
|
+
name: "detectionDateEnd";
|
|
1856
|
+
tableName: "remoteDetectionAlert";
|
|
1857
|
+
dataType: "string";
|
|
1858
|
+
columnType: "SQLiteText";
|
|
1859
|
+
data: string;
|
|
1860
|
+
driverParam: string;
|
|
1861
|
+
notNull: true;
|
|
1862
|
+
hasDefault: false;
|
|
1863
|
+
enumValues: [string, ...string[]];
|
|
1864
|
+
baseColumn: never;
|
|
1865
|
+
}, object>;
|
|
1866
|
+
readonly sourceId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1867
|
+
name: "sourceId";
|
|
1868
|
+
tableName: "remoteDetectionAlert";
|
|
1869
|
+
dataType: "string";
|
|
1870
|
+
columnType: "SQLiteText";
|
|
1871
|
+
data: string;
|
|
1872
|
+
driverParam: string;
|
|
1873
|
+
notNull: true;
|
|
1874
|
+
hasDefault: false;
|
|
1875
|
+
enumValues: [string, ...string[]];
|
|
1876
|
+
baseColumn: never;
|
|
1877
|
+
}, object>;
|
|
1878
|
+
readonly metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1879
|
+
name: "metadata";
|
|
1880
|
+
tableName: "remoteDetectionAlert";
|
|
1881
|
+
dataType: "custom";
|
|
1882
|
+
columnType: "SQLiteCustomColumn";
|
|
1883
|
+
data: {
|
|
1884
|
+
[k: string]: string | number | boolean | (string | number | boolean | null)[] | null;
|
|
1885
|
+
};
|
|
1886
|
+
driverParam: string;
|
|
1887
|
+
notNull: true;
|
|
1888
|
+
hasDefault: false;
|
|
1889
|
+
enumValues: undefined;
|
|
1890
|
+
baseColumn: never;
|
|
1891
|
+
}, object>;
|
|
1892
|
+
readonly geometry: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1893
|
+
name: "geometry";
|
|
1894
|
+
tableName: "remoteDetectionAlert";
|
|
1895
|
+
dataType: "custom";
|
|
1896
|
+
columnType: "SQLiteCustomColumn";
|
|
1897
|
+
data: import("@comapeo/schema/dist/schema/remoteDetectionAlert.js").Geometry;
|
|
1898
|
+
driverParam: string;
|
|
1899
|
+
notNull: true;
|
|
1900
|
+
hasDefault: false;
|
|
1901
|
+
enumValues: undefined;
|
|
1902
|
+
baseColumn: never;
|
|
1903
|
+
}, object>;
|
|
1904
|
+
forks: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
1905
|
+
name: "forks";
|
|
1906
|
+
tableName: "remoteDetectionAlert";
|
|
1907
|
+
dataType: "custom";
|
|
1908
|
+
columnType: "SQLiteCustomColumn";
|
|
1909
|
+
data: string[];
|
|
1910
|
+
driverParam: string;
|
|
1911
|
+
notNull: true;
|
|
1912
|
+
hasDefault: false;
|
|
1913
|
+
enumValues: undefined;
|
|
1914
|
+
baseColumn: never;
|
|
1915
|
+
}, object>;
|
|
1916
|
+
};
|
|
1917
|
+
dialect: "sqlite";
|
|
1918
|
+
}>, "remoteDetectionAlert", {
|
|
1919
|
+
schemaName: "remoteDetectionAlert";
|
|
1920
|
+
detectionDateStart: string;
|
|
1921
|
+
detectionDateEnd: string;
|
|
1922
|
+
sourceId: string;
|
|
1923
|
+
metadata: {
|
|
1924
|
+
[k: string]: boolean | number | string | null | (boolean | number | string | null)[];
|
|
1925
|
+
};
|
|
1926
|
+
geometry: import("@comapeo/schema/dist/schema/remoteDetectionAlert.js").Geometry;
|
|
1927
|
+
docId: string;
|
|
1928
|
+
versionId: string;
|
|
1929
|
+
originalVersionId: string;
|
|
1930
|
+
createdAt: string;
|
|
1931
|
+
updatedAt: string;
|
|
1932
|
+
links: string[];
|
|
1933
|
+
deleted: boolean;
|
|
1934
|
+
}, {
|
|
1935
|
+
schemaName: "remoteDetectionAlert";
|
|
1936
|
+
detectionDateStart: string;
|
|
1937
|
+
detectionDateEnd: string;
|
|
1938
|
+
sourceId: string;
|
|
1939
|
+
metadata: {
|
|
1940
|
+
[k: string]: boolean | number | string | null | (boolean | number | string | null)[];
|
|
1941
|
+
};
|
|
1942
|
+
geometry: import("@comapeo/schema/dist/schema/remoteDetectionAlert.js").Geometry;
|
|
1943
|
+
}>;
|
|
1944
|
+
preset: DataType<DataStore<"config", "translation" | "projectSettings" | "preset" | "icon" | "field" | "deviceInfo">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
1537
1945
|
name: "preset";
|
|
1538
1946
|
schema: undefined;
|
|
1539
1947
|
columns: {
|
|
@@ -1803,7 +2211,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
1803
2211
|
terms: string[];
|
|
1804
2212
|
color?: string | undefined;
|
|
1805
2213
|
}>;
|
|
1806
|
-
field: DataType<DataStore<"config", "translation" | "
|
|
2214
|
+
field: DataType<DataStore<"config", "translation" | "projectSettings" | "preset" | "icon" | "field" | "deviceInfo">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
1807
2215
|
name: "field";
|
|
1808
2216
|
schema: undefined;
|
|
1809
2217
|
columns: {
|
|
@@ -2064,7 +2472,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
2064
2472
|
placeholder?: string | undefined;
|
|
2065
2473
|
helperText?: string | undefined;
|
|
2066
2474
|
}>;
|
|
2067
|
-
projectSettings: DataType<DataStore<"config", "translation" | "
|
|
2475
|
+
projectSettings: DataType<DataStore<"config", "translation" | "projectSettings" | "preset" | "icon" | "field" | "deviceInfo">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
2068
2476
|
name: "projectSettings";
|
|
2069
2477
|
schema: undefined;
|
|
2070
2478
|
columns: {
|
|
@@ -2265,7 +2673,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
2265
2673
|
fileVersion: string;
|
|
2266
2674
|
} | undefined;
|
|
2267
2675
|
}>;
|
|
2268
|
-
coreOwnership: DataType<DataStore<"auth", "
|
|
2676
|
+
coreOwnership: DataType<DataStore<"auth", "role" | "coreOwnership">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
2269
2677
|
name: "coreOwnership";
|
|
2270
2678
|
schema: undefined;
|
|
2271
2679
|
columns: {
|
|
@@ -2461,7 +2869,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
2461
2869
|
blobCoreId: string;
|
|
2462
2870
|
blobIndexCoreId: string;
|
|
2463
2871
|
}>;
|
|
2464
|
-
role: DataType<DataStore<"auth", "
|
|
2872
|
+
role: DataType<DataStore<"auth", "role" | "coreOwnership">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
2465
2873
|
name: "role";
|
|
2466
2874
|
schema: undefined;
|
|
2467
2875
|
columns: {
|
|
@@ -2615,7 +3023,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
2615
3023
|
roleId: string;
|
|
2616
3024
|
fromIndex: number;
|
|
2617
3025
|
}>;
|
|
2618
|
-
deviceInfo: DataType<DataStore<"config", "translation" | "
|
|
3026
|
+
deviceInfo: DataType<DataStore<"config", "translation" | "projectSettings" | "preset" | "icon" | "field" | "deviceInfo">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
2619
3027
|
name: "deviceInfo";
|
|
2620
3028
|
schema: undefined;
|
|
2621
3029
|
columns: {
|
|
@@ -2739,6 +3147,20 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
2739
3147
|
enumValues: ["device_type_unspecified", "mobile", "tablet", "desktop", "selfHostedServer", "UNRECOGNIZED"];
|
|
2740
3148
|
baseColumn: never;
|
|
2741
3149
|
}, object>;
|
|
3150
|
+
readonly selfHostedServerDetails: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
3151
|
+
name: "selfHostedServerDetails";
|
|
3152
|
+
tableName: "deviceInfo";
|
|
3153
|
+
dataType: "custom";
|
|
3154
|
+
columnType: "SQLiteCustomColumn";
|
|
3155
|
+
data: {
|
|
3156
|
+
baseUrl: string;
|
|
3157
|
+
} | undefined;
|
|
3158
|
+
driverParam: string;
|
|
3159
|
+
notNull: false;
|
|
3160
|
+
hasDefault: false;
|
|
3161
|
+
enumValues: undefined;
|
|
3162
|
+
baseColumn: never;
|
|
3163
|
+
}, object>;
|
|
2742
3164
|
forks: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
2743
3165
|
name: "forks";
|
|
2744
3166
|
tableName: "deviceInfo";
|
|
@@ -2757,6 +3179,9 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
2757
3179
|
schemaName: "deviceInfo";
|
|
2758
3180
|
name: string;
|
|
2759
3181
|
deviceType: "device_type_unspecified" | "mobile" | "tablet" | "desktop" | "selfHostedServer" | "UNRECOGNIZED";
|
|
3182
|
+
selfHostedServerDetails?: {
|
|
3183
|
+
baseUrl: string;
|
|
3184
|
+
} | undefined;
|
|
2760
3185
|
docId: string;
|
|
2761
3186
|
versionId: string;
|
|
2762
3187
|
originalVersionId: string;
|
|
@@ -2768,8 +3193,11 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
2768
3193
|
schemaName: "deviceInfo";
|
|
2769
3194
|
name: string;
|
|
2770
3195
|
deviceType: "device_type_unspecified" | "mobile" | "tablet" | "desktop" | "selfHostedServer" | "UNRECOGNIZED";
|
|
3196
|
+
selfHostedServerDetails?: {
|
|
3197
|
+
baseUrl: string;
|
|
3198
|
+
} | undefined;
|
|
2771
3199
|
}>;
|
|
2772
|
-
icon: DataType<DataStore<"config", "translation" | "
|
|
3200
|
+
icon: DataType<DataStore<"config", "translation" | "projectSettings" | "preset" | "icon" | "field" | "deviceInfo">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
2773
3201
|
name: "icon";
|
|
2774
3202
|
schema: undefined;
|
|
2775
3203
|
columns: {
|
|
@@ -2950,7 +3378,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
2950
3378
|
blobVersionId: import("@comapeo/schema/dist/schema/icon.js").BlobVersionId;
|
|
2951
3379
|
})[];
|
|
2952
3380
|
}>;
|
|
2953
|
-
translation: DataType<DataStore<"config", "translation" | "
|
|
3381
|
+
translation: DataType<DataStore<"config", "translation" | "projectSettings" | "preset" | "icon" | "field" | "deviceInfo">, import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
2954
3382
|
name: "translation";
|
|
2955
3383
|
schema: undefined;
|
|
2956
3384
|
columns: {
|
|
@@ -3070,7 +3498,7 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
3070
3498
|
tableName: "translation";
|
|
3071
3499
|
dataType: "string";
|
|
3072
3500
|
columnType: "SQLiteText";
|
|
3073
|
-
data: "
|
|
3501
|
+
data: "track" | "role" | "projectSettings" | "preset" | "observation" | "field" | "deviceInfo" | "UNRECOGNIZED" | "type_unspecified";
|
|
3074
3502
|
driverParam: string;
|
|
3075
3503
|
notNull: true;
|
|
3076
3504
|
hasDefault: false;
|
|
@@ -3174,21 +3602,25 @@ export class MapeoProject extends TypedEmitter<{
|
|
|
3174
3602
|
/**
|
|
3175
3603
|
* Replicate a project to a @hyperswarm/secret-stream. Invites will not
|
|
3176
3604
|
* function because the RPC channel is not connected for project replication,
|
|
3177
|
-
* and only this project will replicate
|
|
3178
|
-
* need to replicate the manager instance via manager[kManagerReplicate])
|
|
3605
|
+
* and only this project will replicate.
|
|
3179
3606
|
*
|
|
3180
|
-
* @param {
|
|
3607
|
+
* @param {(
|
|
3608
|
+
* boolean |
|
|
3609
|
+
* import('stream').Duplex |
|
|
3610
|
+
* import('streamx').Duplex
|
|
3611
|
+
* )} isInitiatorOrStream
|
|
3612
|
+
* @returns {ReplicationStream}
|
|
3181
3613
|
*/
|
|
3182
|
-
[kProjectReplicate](
|
|
3183
|
-
noiseStream: Omit<import("@hyperswarm/secret-stream")<import("streamx").Duplex<any, any, any, any, true, true, import("streamx").DuplexEvents<any, any>>>, "userData"> & {
|
|
3184
|
-
userData: import("protomux");
|
|
3185
|
-
};
|
|
3186
|
-
} & import("protomux")<import("streamx").Duplex<any, any, any, any, true, true, import("streamx").DuplexEvents<any, any>>>;
|
|
3614
|
+
[kProjectReplicate](isInitiatorOrStream: (boolean | import("stream").Duplex | import("streamx").Duplex)): ReplicationStream;
|
|
3187
3615
|
/**
|
|
3188
|
-
* @param {Pick<import('@comapeo/schema').DeviceInfoValue, 'name' | 'deviceType'>} value
|
|
3616
|
+
* @param {Pick<import('@comapeo/schema').DeviceInfoValue, 'name' | 'deviceType' | 'selfHostedServerDetails'>} value
|
|
3189
3617
|
* @returns {Promise<import('@comapeo/schema').DeviceInfo>}
|
|
3190
3618
|
*/
|
|
3191
|
-
[kSetOwnDeviceInfo](value: Pick<import("@comapeo/schema").DeviceInfoValue, "name" | "deviceType">): Promise<import("@comapeo/schema").DeviceInfo>;
|
|
3619
|
+
[kSetOwnDeviceInfo](value: Pick<import("@comapeo/schema").DeviceInfoValue, "name" | "deviceType" | "selfHostedServerDetails">): Promise<import("@comapeo/schema").DeviceInfo>;
|
|
3620
|
+
/** @param {boolean} isArchiveDevice */
|
|
3621
|
+
[kSetIsArchiveDevice](isArchiveDevice: boolean): Promise<void>;
|
|
3622
|
+
/** @returns {boolean} */
|
|
3623
|
+
get [kIsArchiveDevice](): boolean;
|
|
3192
3624
|
[kProjectLeave](): Promise<void>;
|
|
3193
3625
|
/**
|
|
3194
3626
|
* Clear data if we've left the project. No-op if you're still in the project.
|
|
@@ -3210,6 +3642,7 @@ import { IconApi } from './icon-api.js';
|
|
|
3210
3642
|
import { CoreManager } from './core-manager/index.js';
|
|
3211
3643
|
import { CoreOwnership } from './core-ownership.js';
|
|
3212
3644
|
import { BlobStore } from './blob-store/index.js';
|
|
3645
|
+
import type { ReplicationStream } from './types.js';
|
|
3213
3646
|
import { IndexWriter } from './index-writer/index.js';
|
|
3214
3647
|
import type { CoreStorage } from './types.js';
|
|
3215
3648
|
import { Logger } from './logger.js';
|