@comapeo/core 4.4.0 → 5.0.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 +5 -2
- package/dist/blob-store/downloader.d.ts.map +1 -1
- package/dist/constants.d.ts +0 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/datatype/index.d.ts +1 -1
- package/dist/datatype/index.d.ts.map +1 -1
- package/dist/discovery/local-discovery.d.ts.map +1 -1
- package/dist/import-categories.d.ts +19 -0
- package/dist/import-categories.d.ts.map +1 -0
- package/dist/intl/iso639.d.ts +4 -0
- package/dist/intl/iso639.d.ts.map +1 -0
- package/dist/intl/parse-bcp-47.d.ts +22 -0
- package/dist/intl/parse-bcp-47.d.ts.map +1 -0
- package/dist/invite/invite-api.d.ts.map +1 -1
- package/dist/lib/drizzle-helpers.d.ts +19 -1
- package/dist/lib/drizzle-helpers.d.ts.map +1 -1
- package/dist/mapeo-manager.d.ts +15 -9
- package/dist/mapeo-manager.d.ts.map +1 -1
- package/dist/mapeo-project.d.ts +4968 -3017
- package/dist/mapeo-project.d.ts.map +1 -1
- package/dist/schema/client.d.ts +246 -232
- package/dist/schema/client.d.ts.map +1 -1
- package/dist/schema/comapeo-to-drizzle.d.ts +65 -0
- package/dist/schema/comapeo-to-drizzle.d.ts.map +1 -0
- package/dist/schema/json-schema-to-drizzle.d.ts +18 -0
- package/dist/schema/json-schema-to-drizzle.d.ts.map +1 -0
- package/dist/schema/project.d.ts +2711 -1835
- package/dist/schema/project.d.ts.map +1 -1
- package/dist/schema/types.d.ts +73 -66
- package/dist/schema/types.d.ts.map +1 -1
- package/dist/translation-api.d.ts +111 -189
- package/dist/translation-api.d.ts.map +1 -1
- package/dist/utils.d.ts +10 -0
- package/dist/utils.d.ts.map +1 -1
- package/drizzle/client/0004_glorious_shape.sql +1 -0
- package/drizzle/client/meta/0000_snapshot.json +13 -9
- package/drizzle/client/meta/0001_snapshot.json +13 -9
- package/drizzle/client/meta/0002_snapshot.json +13 -9
- package/drizzle/client/meta/0003_snapshot.json +13 -9
- package/drizzle/client/meta/0004_snapshot.json +239 -0
- package/drizzle/client/meta/_journal.json +7 -0
- package/drizzle/project/meta/0000_snapshot.json +43 -24
- package/drizzle/project/meta/0001_snapshot.json +47 -26
- package/drizzle/project/meta/0002_snapshot.json +47 -26
- package/package.json +16 -8
- package/src/constants.js +0 -3
- package/src/datatype/index.js +8 -5
- package/src/discovery/local-discovery.js +3 -2
- package/src/import-categories.js +364 -0
- package/src/index-writer/index.js +1 -1
- package/src/intl/iso639.js +8118 -0
- package/src/intl/parse-bcp-47.js +91 -0
- package/src/invite/invite-api.js +2 -0
- package/src/lib/drizzle-helpers.js +70 -18
- package/src/mapeo-manager.js +138 -88
- package/src/mapeo-project.js +56 -218
- package/src/roles.js +1 -1
- package/src/schema/client.js +22 -28
- package/src/schema/comapeo-to-drizzle.js +57 -0
- package/src/schema/{schema-to-drizzle.js → json-schema-to-drizzle.js} +25 -25
- package/src/schema/project.js +24 -37
- package/src/schema/types.ts +138 -99
- package/src/translation-api.js +64 -12
- package/src/utils.js +13 -0
- package/dist/config-import.d.ts +0 -74
- package/dist/config-import.d.ts.map +0 -1
- package/dist/schema/schema-to-drizzle.d.ts +0 -20
- package/dist/schema/schema-to-drizzle.d.ts.map +0 -1
- package/dist/schema/utils.d.ts +0 -55
- package/dist/schema/utils.d.ts.map +0 -1
- package/src/config-import.js +0 -603
- package/src/schema/utils.js +0 -51
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @import { JsonSchemaToDrizzleSqliteTable } from './types.js'
|
|
3
|
+
* @import { SQLiteTextJsonBuilder } from 'drizzle-orm/sqlite-core'
|
|
4
|
+
* @import { $Type } from 'drizzle-orm'
|
|
5
|
+
* @import { MapeoDocMap } from '../types.js'
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* @typedef {typeof import('@comapeo/schema').dereferencedDocSchemas} ComapeoSchemaMap
|
|
9
|
+
* @typedef {{ forks: $Type<SQLiteTextJsonBuilder, string[]> }} AdditionalColumns
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* @template {ComapeoSchemaMap[keyof ComapeoSchemaMap]} TSchema
|
|
13
|
+
* @param {TSchema} schema
|
|
14
|
+
* @returns {JsonSchemaToDrizzleSqliteTable<
|
|
15
|
+
* MapeoDocMap[TSchema['properties']['schemaName']['const']],
|
|
16
|
+
* TSchema,
|
|
17
|
+
* TSchema['properties']['schemaName']['const'],
|
|
18
|
+
* AdditionalColumns,
|
|
19
|
+
* 'docId'
|
|
20
|
+
* >}
|
|
21
|
+
*/
|
|
22
|
+
export function comapeoSchemaToDrizzleTable<TSchema extends ComapeoSchemaMap[keyof ComapeoSchemaMap]>(schema: TSchema): JsonSchemaToDrizzleSqliteTable<MapeoDocMap[TSchema["properties"]["schemaName"]["const"]], TSchema, TSchema["properties"]["schemaName"]["const"], AdditionalColumns, "docId">;
|
|
23
|
+
/**
|
|
24
|
+
* Table for storing backlinks, used for indexing. There needs to be one for
|
|
25
|
+
* each indexed document type, with a specific name `<datatype>_backlink`
|
|
26
|
+
*
|
|
27
|
+
* @param {import('@comapeo/schema').MapeoDoc['schemaName']} schemaName
|
|
28
|
+
*/
|
|
29
|
+
export function backlinkTable(schemaName: import("@comapeo/schema").MapeoDoc["schemaName"]): import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
30
|
+
name: string;
|
|
31
|
+
schema: undefined;
|
|
32
|
+
columns: {
|
|
33
|
+
versionId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
34
|
+
name: string;
|
|
35
|
+
tableName: string;
|
|
36
|
+
dataType: "string";
|
|
37
|
+
data: string;
|
|
38
|
+
driverParam: string;
|
|
39
|
+
notNull: true;
|
|
40
|
+
hasDefault: false;
|
|
41
|
+
isPrimaryKey: true;
|
|
42
|
+
isAutoincrement: false;
|
|
43
|
+
hasRuntimeDefault: false;
|
|
44
|
+
enumValues: [string, ...string[]];
|
|
45
|
+
baseColumn: never;
|
|
46
|
+
identity: undefined;
|
|
47
|
+
generated: undefined;
|
|
48
|
+
}, {}>;
|
|
49
|
+
};
|
|
50
|
+
dialect: "sqlite";
|
|
51
|
+
}>;
|
|
52
|
+
/**
|
|
53
|
+
* @param {string} tableName
|
|
54
|
+
*/
|
|
55
|
+
export function getBacklinkTableName(tableName: string): string;
|
|
56
|
+
export const BACKLINK_TABLE_POSTFIX: "_backlink";
|
|
57
|
+
export type ComapeoSchemaMap = typeof import("@comapeo/schema").dereferencedDocSchemas;
|
|
58
|
+
export type AdditionalColumns = {
|
|
59
|
+
forks: $Type<SQLiteTextJsonBuilder, string[]>;
|
|
60
|
+
};
|
|
61
|
+
import type { MapeoDocMap } from '../types.js';
|
|
62
|
+
import type { JsonSchemaToDrizzleSqliteTable } from './types.js';
|
|
63
|
+
import type { SQLiteTextJsonBuilder } from 'drizzle-orm/sqlite-core';
|
|
64
|
+
import type { $Type } from 'drizzle-orm';
|
|
65
|
+
//# sourceMappingURL=comapeo-to-drizzle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comapeo-to-drizzle.d.ts","sourceRoot":"","sources":["../../src/schema/comapeo-to-drizzle.js"],"names":[],"mappings":"AAKA;;;;;GAKG;AAEH;;;GAGG;AAEH;;;;;;;;;;GAUG;AACH,4CAVwD,OAAO,SAAjD,gBAAgB,CAAC,MAAM,gBAAgB,CAAE,UAC5C,OAAO,GACL,+BACR,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,EACzD,OAAO,EACP,OAAO,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EAC5C,iBAAiB,EACrB,OAAW,CACR,CAWH;AAED;;;;;GAKG;AACH,0CAFW,OAAO,iBAAiB,EAAE,QAAQ,CAAC,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;GAM1D;AAED;;GAEG;AACH,gDAFW,MAAM,UAIhB;AArDD,iDAAiD;+BAUpC,cAAc,iBAAiB,EAAE,sBAAsB;gCACvD;IAAE,KAAK,EAAE,MAAM,qBAAqB,EAAE,MAAM,EAAE,CAAC,CAAA;CAAE;iCAL9B,aAAa;oDAHM,YAAY;2CACrB,yBAAyB;2BACzC,aAAa"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @template {{ [ K in keyof TSchema['properties'] ]?: any }} TObjectType
|
|
3
|
+
* @template {import('./types.js').JSONSchema7Object} TSchema
|
|
4
|
+
* @template {string} TTableName
|
|
5
|
+
* @template {Record<string, import('drizzle-orm').ColumnBuilderBase>} TColumnsMap
|
|
6
|
+
* @template {keyof TSchema['properties']} TPrimaryKey
|
|
7
|
+
* @param {TTableName} tableName
|
|
8
|
+
* @param {TSchema} schema
|
|
9
|
+
* @param {object} [opts]
|
|
10
|
+
* @param {TColumnsMap} [opts.additionalColumns]
|
|
11
|
+
* @param {TPrimaryKey} [opts.primaryKey] - Column name to use as primary key, if not specified in schema
|
|
12
|
+
* @returns {import('./types.js').JsonSchemaToDrizzleSqliteTable<TObjectType, TSchema, TTableName, TColumnsMap, TPrimaryKey>}
|
|
13
|
+
*/
|
|
14
|
+
export function jsonSchemaToDrizzleSqliteTable<TObjectType extends { [K in keyof TSchema["properties"]]?: any; }, TSchema extends import("./types.js").JSONSchema7Object, TTableName extends string, TColumnsMap extends Record<string, import("drizzle-orm").ColumnBuilderBase>, TPrimaryKey extends keyof TSchema["properties"]>(tableName: TTableName, schema: TSchema, { additionalColumns, primaryKey }?: {
|
|
15
|
+
additionalColumns?: TColumnsMap | undefined;
|
|
16
|
+
primaryKey?: TPrimaryKey | undefined;
|
|
17
|
+
} | undefined): import("./types.js").JsonSchemaToDrizzleSqliteTable<TObjectType, TSchema, TTableName, TColumnsMap, TPrimaryKey>;
|
|
18
|
+
//# sourceMappingURL=json-schema-to-drizzle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-schema-to-drizzle.d.ts","sourceRoot":"","sources":["../../src/schema/json-schema-to-drizzle.js"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;AACH,+CAZ8D,WAAW,SAA5D,GAAK,CAAgC,IAA3B,MAAM,OAAO,CAAC,YAAY,CAAC,CAAE,CAAC,EAAE,GAAG,GAAG,EACP,OAAO,SAAhD,OAAQ,YAAY,EAAE,iBAAkB,EAC/B,UAAU,SAAnB,MAAQ,EACkD,WAAW,SAApE,MAAM,CAAC,MAAM,EAAE,OAAO,aAAa,EAAE,iBAAiB,CAAE,EAC3B,WAAW,SAAzC,MAAO,OAAO,CAAC,YAAY,CAAE,aAC/B,UAAU,UACV,OAAO;;;gBAIL,OAAO,YAAY,EAAE,8BAA8B,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,CAAC,CA6D3H"}
|