@verdant-web/common 2.3.0-next.0 → 2.3.1
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/esm/EventSubscriber.d.ts +18 -0
- package/dist/esm/baseline.d.ts +5 -0
- package/dist/esm/batching.d.ts +43 -0
- package/dist/esm/error.d.ts +22 -0
- package/dist/esm/files.d.ts +20 -0
- package/dist/esm/index.d.ts +21 -0
- package/dist/esm/indexes.d.ts +17 -0
- package/dist/esm/indexes.test.d.ts +1 -0
- package/dist/esm/memo.d.ts +6 -0
- package/dist/esm/memo.test.d.ts +1 -0
- package/dist/esm/migration.d.ts +174 -0
- package/dist/esm/oids.d.ts +95 -0
- package/dist/esm/oids.js +4 -4
- package/dist/esm/oids.js.map +1 -1
- package/dist/esm/oids.test.d.ts +1 -0
- package/dist/esm/operation.d.ts +142 -0
- package/dist/esm/operation.test.d.ts +1 -0
- package/dist/esm/patch.d.ts +28 -0
- package/dist/esm/presence.d.ts +29 -0
- package/dist/esm/protocol.d.ts +145 -0
- package/dist/esm/refs.d.ts +7 -0
- package/dist/esm/replica.d.ts +28 -0
- package/dist/esm/schema/children.d.ts +2 -0
- package/dist/esm/schema/defaults.test.d.ts +1 -0
- package/dist/esm/schema/fieldHelpers.d.ts +35 -0
- package/dist/esm/schema/fields.d.ts +10 -0
- package/dist/esm/schema/index.d.ts +54 -0
- package/dist/esm/schema/indexFilters.d.ts +6 -0
- package/dist/esm/schema/types/collection.d.ts +23 -0
- package/dist/esm/schema/types/compounds.d.ts +11 -0
- package/dist/esm/schema/types/fields.d.ts +55 -0
- package/dist/esm/schema/types/filters.d.ts +29 -0
- package/dist/esm/schema/types/shapes.d.ts +25 -0
- package/dist/esm/schema/types/synthetics.d.ts +37 -0
- package/dist/esm/schema/types.d.ts +18 -0
- package/dist/esm/schema/validation.d.ts +14 -0
- package/dist/esm/timestamp.d.ts +51 -0
- package/dist/esm/timestamp.test.d.ts +1 -0
- package/dist/esm/undo.d.ts +3 -0
- package/dist/esm/utils.d.ts +20 -0
- package/dist/esm/utils.test.d.ts +1 -0
- package/package.json +1 -1
- package/src/oids.ts +6 -12
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare class EventSubscriber<Events extends {
|
|
2
|
+
[key: string]: (...args: any[]) => void;
|
|
3
|
+
}> {
|
|
4
|
+
private _onAllUnsubscribed?;
|
|
5
|
+
protected subscribers: Record<string, Record<string, (...args: any[]) => void>>;
|
|
6
|
+
protected counts: Record<string, number>;
|
|
7
|
+
private _disabled;
|
|
8
|
+
protected disposed: boolean;
|
|
9
|
+
constructor(_onAllUnsubscribed?: ((event: keyof Events) => void) | undefined);
|
|
10
|
+
get disabled(): boolean;
|
|
11
|
+
subscriberCount: (event: Extract<keyof Events, string>) => number;
|
|
12
|
+
totalSubscriberCount: () => number;
|
|
13
|
+
subscribe: <K extends Extract<keyof Events, string>>(event: K, callback: Events[K]) => () => void;
|
|
14
|
+
emit: <K extends Extract<keyof Events, string>>(event: K, ...args: Parameters<Events[K]>) => void;
|
|
15
|
+
dispose: () => void;
|
|
16
|
+
disable: () => void;
|
|
17
|
+
}
|
|
18
|
+
export type EventsOf<T extends EventSubscriber<any>> = T extends EventSubscriber<infer E> ? keyof E : never;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
export declare class Batcher<T, UserData = any> {
|
|
3
|
+
private flusher;
|
|
4
|
+
private batches;
|
|
5
|
+
constructor(flusher: (items: T[], batchKey: string, userData: UserData) => any);
|
|
6
|
+
add({ key, userData, items, max, timeout, }: {
|
|
7
|
+
key: string;
|
|
8
|
+
userData?: UserData;
|
|
9
|
+
items: T[];
|
|
10
|
+
max?: number | null;
|
|
11
|
+
timeout?: number | null;
|
|
12
|
+
}): Batch<T, UserData>;
|
|
13
|
+
flush: (key: string) => any;
|
|
14
|
+
discard: (key: string) => void;
|
|
15
|
+
flushAll: () => any[];
|
|
16
|
+
getSize: (key: string) => number;
|
|
17
|
+
}
|
|
18
|
+
export declare class Batch<T, UserData = any> {
|
|
19
|
+
items: Array<T>;
|
|
20
|
+
max: number | null;
|
|
21
|
+
startedAt: number;
|
|
22
|
+
timeout: number | null;
|
|
23
|
+
flushTimeout?: NodeJS.Timeout;
|
|
24
|
+
userData?: any;
|
|
25
|
+
flusher: (items: T[], batchKey: string, userData: UserData) => any;
|
|
26
|
+
key: string;
|
|
27
|
+
constructor({ max, startedAt, timeout, userData, flusher, key, }: {
|
|
28
|
+
key: string;
|
|
29
|
+
max: number | null;
|
|
30
|
+
startedAt: number;
|
|
31
|
+
timeout: number | null;
|
|
32
|
+
userData?: UserData;
|
|
33
|
+
flusher: (items: T[], batchKey: string, userData: UserData) => any;
|
|
34
|
+
});
|
|
35
|
+
update: ({ items, max, timeout, userData, }: {
|
|
36
|
+
items: Array<T>;
|
|
37
|
+
max?: number | null | undefined;
|
|
38
|
+
timeout?: number | null | undefined;
|
|
39
|
+
userData?: UserData | undefined;
|
|
40
|
+
}) => void;
|
|
41
|
+
flush: () => any;
|
|
42
|
+
discard: () => void;
|
|
43
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export declare enum VerdantErrorCode {
|
|
2
|
+
InvalidRequest = 4000,
|
|
3
|
+
BodyRequired = 4001,
|
|
4
|
+
NoToken = 4010,
|
|
5
|
+
InvalidToken = 4011,
|
|
6
|
+
TokenExpired = 4012,
|
|
7
|
+
Forbidden = 4030,
|
|
8
|
+
NotFound = 4040,
|
|
9
|
+
Unexpected = 5000,
|
|
10
|
+
ConfigurationError = 5010,
|
|
11
|
+
NoFileStorage = 5011
|
|
12
|
+
}
|
|
13
|
+
export declare class VerdantError extends Error {
|
|
14
|
+
code: VerdantErrorCode;
|
|
15
|
+
static Code: typeof VerdantErrorCode;
|
|
16
|
+
constructor(code: VerdantErrorCode, cause?: Error | undefined, message?: string);
|
|
17
|
+
get httpStatus(): number;
|
|
18
|
+
toResponse: () => string;
|
|
19
|
+
}
|
|
20
|
+
export declare function isVerdantErrorResponse(body: any): body is {
|
|
21
|
+
code: number;
|
|
22
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
export type FileRef = {
|
|
3
|
+
'@@type': 'file';
|
|
4
|
+
id: string;
|
|
5
|
+
};
|
|
6
|
+
export declare function isFileRef(value: any): value is FileRef;
|
|
7
|
+
export declare function createFileRef(id: string): FileRef;
|
|
8
|
+
export type FileData = {
|
|
9
|
+
id: string;
|
|
10
|
+
/**
|
|
11
|
+
* For locally created files, this starts false, until it's uploaded
|
|
12
|
+
* Remote files this is always true
|
|
13
|
+
*/
|
|
14
|
+
remote: boolean;
|
|
15
|
+
name: string;
|
|
16
|
+
type: string;
|
|
17
|
+
file?: Blob;
|
|
18
|
+
url?: string;
|
|
19
|
+
};
|
|
20
|
+
export declare function getAllFileFields(snapshot: any): [string, FileRef][];
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export * from './protocol.js';
|
|
2
|
+
export * from './timestamp.js';
|
|
3
|
+
export * from './operation.js';
|
|
4
|
+
export * from './baseline.js';
|
|
5
|
+
export * from './replica.js';
|
|
6
|
+
export * from './schema/index.js';
|
|
7
|
+
export * from './utils.js';
|
|
8
|
+
export * from './indexes.js';
|
|
9
|
+
export { migrate, migrationRange, createDefaultMigration, createMigration, } from './migration.js';
|
|
10
|
+
export type { Migration, MigrationIndexDescription, MigrationEngine, } from './migration.js';
|
|
11
|
+
export type { UserInfo } from './presence.js';
|
|
12
|
+
export * from './patch.js';
|
|
13
|
+
export * from './oids.js';
|
|
14
|
+
export * from './EventSubscriber.js';
|
|
15
|
+
export * from './undo.js';
|
|
16
|
+
export * from './batching.js';
|
|
17
|
+
export * from './files.js';
|
|
18
|
+
export type { Ref } from './refs.js';
|
|
19
|
+
export { makeObjectRef, makeFileRef, isRef, compareRefs } from './refs.js';
|
|
20
|
+
export * from './memo.js';
|
|
21
|
+
export * from './error.js';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { StorageCollectionSchema, StorageDirectSyntheticSchema } from './index.js';
|
|
2
|
+
export declare const COMPOUND_INDEX_SEPARATOR = "\uFFFFFE";
|
|
3
|
+
export declare const COMPOUND_INDEX_LOWER_BOUND_SEPARATOR = "\0";
|
|
4
|
+
export declare const COMPOUND_INDEX_UPPER_BOUND_SEPARATOR = "\uFFFFFF";
|
|
5
|
+
type IndexableFieldValue = string | number | boolean | any[];
|
|
6
|
+
export type CompoundIndexValue = string | string[];
|
|
7
|
+
export declare function createCompoundIndexValue(...fields: IndexableFieldValue[]): CompoundIndexValue;
|
|
8
|
+
export declare function createUpperBoundIndexValue(...fields: IndexableFieldValue[]): string;
|
|
9
|
+
export declare function createLowerBoundIndexValue(...fields: IndexableFieldValue[]): string;
|
|
10
|
+
export declare function isDirectSynthetic(index: any): index is StorageDirectSyntheticSchema<any>;
|
|
11
|
+
export declare function computeSynthetics(schema: StorageCollectionSchema, obj: any): Record<string, any>;
|
|
12
|
+
export declare function computeCompoundIndices(schema: StorageCollectionSchema<any, any, any>, doc: any): any;
|
|
13
|
+
export declare function getIndexValues(schema: StorageCollectionSchema<any, any, any>, doc: any): any;
|
|
14
|
+
export declare function assignIndexValues(schema: StorageCollectionSchema<any, any, any>, doc: any): any;
|
|
15
|
+
export declare const NULL_INDEX_VALUE = "null";
|
|
16
|
+
export declare function sanitizeIndexValue(value: unknown): string | number | (string | number)[];
|
|
17
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Memoizes the last invocation of a function with the same memo keys.
|
|
3
|
+
* As long as key identity and set doesn't change, the last computed
|
|
4
|
+
* value will be returned.
|
|
5
|
+
*/
|
|
6
|
+
export declare function memoByKeys<TRet, TKeys extends any[]>(fn: (...args: unknown[]) => TRet, getKeys: () => TKeys): (...args: unknown[]) => TRet;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { StorageCollectionSchema, StorageSchema, StorageDocument, CollectionFilter, StorageDocumentInit } from './index.js';
|
|
2
|
+
/**@deprecated */
|
|
3
|
+
export interface DroppedCollectionMigrationStrategy<Old extends StorageCollectionSchema<any, any, any>> {
|
|
4
|
+
(old: Old): void | Promise<void>;
|
|
5
|
+
}
|
|
6
|
+
/**@deprecated */
|
|
7
|
+
export interface PreservedCollectionMigrationStrategy<Old extends StorageCollectionSchema<any, any, any>, New extends StorageCollectionSchema<any, any, any>> {
|
|
8
|
+
(old: StorageDocument<Old>): StorageDocument<New> | Promise<StorageDocument<New>>;
|
|
9
|
+
}
|
|
10
|
+
/** @deprecated */
|
|
11
|
+
export type MigrationsKeyedOnCollection<Old extends StorageSchema<any>, New extends StorageSchema<any>> = PreservedCollectionMigrations<Old, New> | DroppedCollectionMigrations<Old, New>;
|
|
12
|
+
/**@deprecated */
|
|
13
|
+
type NotInSchema<Name extends string | number | symbol, Schema extends StorageSchema<any>> = Name extends keyof Schema['collections'] ? never : Name;
|
|
14
|
+
/** @deprecated */
|
|
15
|
+
type InSchema<Name extends string | number | symbol, Schema extends StorageSchema<any>> = Name extends keyof Schema['collections'] ? Name : never;
|
|
16
|
+
/** @deprecated */
|
|
17
|
+
type DroppedCollections<Old extends StorageSchema<any>, New extends StorageSchema<any>> = {
|
|
18
|
+
[Key in keyof Old['collections'] as NotInSchema<Key, New>]: StorageCollectionSchema<any, any, any>;
|
|
19
|
+
};
|
|
20
|
+
/** @deprecated */
|
|
21
|
+
type PreservedCollections<Old extends StorageSchema<any>, New extends StorageSchema<any>> = {
|
|
22
|
+
[Key in keyof Old['collections'] as InSchema<Key, New>]: StorageCollectionSchema<any, any, any>;
|
|
23
|
+
};
|
|
24
|
+
/** @deprecated */
|
|
25
|
+
type DroppedCollectionMigrations<Old extends StorageSchema<any>, New extends StorageSchema<any>> = {
|
|
26
|
+
[Key in keyof DroppedCollections<Old, New>]: DroppedCollectionMigrationStrategy<Old['collections'][Key]>;
|
|
27
|
+
};
|
|
28
|
+
/** @deprecated */
|
|
29
|
+
type PreservedCollectionMigrations<Old extends StorageSchema<any>, New extends StorageSchema<any>> = {
|
|
30
|
+
[Key in keyof PreservedCollections<Old, New>]: PreservedCollectionMigrationStrategy<Old['collections'][Key], New['collections'][Key]>;
|
|
31
|
+
};
|
|
32
|
+
/** @deprecated */
|
|
33
|
+
type StrategyFor<Key extends string, Old extends StorageSchema<any>, New extends StorageSchema<any>> = Key extends keyof New['collections'] ? PreservedCollectionMigrationStrategy<Old['collections'][Key], New['collections'][Key]> : DroppedCollectionMigrationStrategy<Old['collections'][Key]>;
|
|
34
|
+
/** @deprecated */
|
|
35
|
+
type DeprecatedMigrationRunner<Old extends StorageSchema<any>, New extends StorageSchema<any>> = <Collection extends Extract<keyof Old['collections'], string>>(collection: Collection, strategy: StrategyFor<Collection, Old, New>) => Promise<void>;
|
|
36
|
+
/** @deprecated */
|
|
37
|
+
type DeprecatedMigrationQueryMaker<Collection extends StorageCollectionSchema<any, any, any>> = {
|
|
38
|
+
get(primaryKey: string): Promise<StorageDocument<Collection> | undefined>;
|
|
39
|
+
findOne(query: CollectionFilter): Promise<StorageDocument<Collection> | undefined>;
|
|
40
|
+
findAll(query?: CollectionFilter): Promise<StorageDocument<Collection>[]>;
|
|
41
|
+
};
|
|
42
|
+
/** @deprecated */
|
|
43
|
+
type DeprecatedMigrationQueries<Old extends StorageSchema<any>> = {
|
|
44
|
+
[Key in keyof Old['collections']]: DeprecatedMigrationQueryMaker<Old['collections'][Key]>;
|
|
45
|
+
};
|
|
46
|
+
/** @deprecated */
|
|
47
|
+
type DeprecatedMigrationMutations<New extends StorageSchema> = {
|
|
48
|
+
[Key in keyof New['collections']]: {
|
|
49
|
+
put(document: StorageDocumentInit<New['collections'][Key]>): Promise<StorageDocument<New['collections'][Key]>>;
|
|
50
|
+
delete(primaryKey: string): Promise<void>;
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
/** @deprecated */
|
|
54
|
+
export interface DeprecatedMigrationTools<Old extends StorageSchema<any>, New extends StorageSchema<any>> {
|
|
55
|
+
migrate: DeprecatedMigrationRunner<Old, New>;
|
|
56
|
+
identity: <T>(val: T) => T;
|
|
57
|
+
/**
|
|
58
|
+
* @deprecated - default field values are automatically
|
|
59
|
+
* applied during migration, you don't need to use this.
|
|
60
|
+
* Please remove it from your migrations - even old ones
|
|
61
|
+
* (old migrations can be updated!)
|
|
62
|
+
*/
|
|
63
|
+
withDefaults: (collectionName: string, value: any) => any;
|
|
64
|
+
queries: DeprecatedMigrationQueries<Old>;
|
|
65
|
+
mutations: DeprecatedMigrationMutations<New>;
|
|
66
|
+
info: {
|
|
67
|
+
changedCollections: keyof Old['collections'][];
|
|
68
|
+
addedCollections: keyof New['collections'][];
|
|
69
|
+
removedCollections: keyof Old['collections'][];
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
export interface MigrationEngine {
|
|
73
|
+
migrate: (collection: string, strategy: (val: any) => any) => Promise<void>;
|
|
74
|
+
queries: MigrationQueries<any>;
|
|
75
|
+
mutations: MigrationMutations<any>;
|
|
76
|
+
/** OIDs of any new documents created during the migration */
|
|
77
|
+
newOids: string[];
|
|
78
|
+
/** Promises that should be resolved before completing the migration */
|
|
79
|
+
awaitables: Promise<any>[];
|
|
80
|
+
/** Deletes all documents in a collection - used for removed collections */
|
|
81
|
+
deleteCollection: (collection: string) => Promise<void>;
|
|
82
|
+
log: (...messages: any[]) => void;
|
|
83
|
+
}
|
|
84
|
+
/** @deprecated */
|
|
85
|
+
type DeprecatedMigrationProcedure<Old extends StorageSchema, New extends StorageSchema> = (tools: DeprecatedMigrationTools<Old, New>) => Promise<void>;
|
|
86
|
+
type EmptySchema = {
|
|
87
|
+
version: 0;
|
|
88
|
+
collections: {};
|
|
89
|
+
};
|
|
90
|
+
/** @deprecated - use createMigration */
|
|
91
|
+
export declare function migrate<Schema extends StorageSchema>(schema: Schema, procedure: DeprecatedMigrationProcedure<EmptySchema, Schema>): Migration<EmptySchema, Schema>;
|
|
92
|
+
/** @deprecated = use createMigration */
|
|
93
|
+
export declare function migrate<Old extends StorageSchema, New extends StorageSchema>(oldSchema: Old, newSchema: New, procedure: DeprecatedMigrationProcedure<Old, New>): Migration<Old, New>;
|
|
94
|
+
export interface MigrationIndexDescription {
|
|
95
|
+
name: string;
|
|
96
|
+
multiEntry: boolean;
|
|
97
|
+
synthetic: boolean;
|
|
98
|
+
compound: boolean;
|
|
99
|
+
}
|
|
100
|
+
export interface Migration<Old extends StorageSchema = any, New extends StorageSchema = any> {
|
|
101
|
+
version: number;
|
|
102
|
+
oldSchema: Old;
|
|
103
|
+
newSchema: New;
|
|
104
|
+
migrate: (engine: MigrationEngine) => Promise<void>;
|
|
105
|
+
/** Collections which are added in the new schema and not present in the old */
|
|
106
|
+
addedCollections: string[];
|
|
107
|
+
/** Collections which were removed from the old schema */
|
|
108
|
+
removedCollections: string[];
|
|
109
|
+
/** All collections which exist after the migration has completed - i.e. the ones in the new schema */
|
|
110
|
+
allCollections: string[];
|
|
111
|
+
/** Only the collections which were in the old schema */
|
|
112
|
+
oldCollections: string[];
|
|
113
|
+
/** Collections whose fields or indexes changed between schemas */
|
|
114
|
+
changedCollections: string[];
|
|
115
|
+
addedIndexes: Record<string, MigrationIndexDescription[]>;
|
|
116
|
+
removedIndexes: Record<string, MigrationIndexDescription[]>;
|
|
117
|
+
}
|
|
118
|
+
export declare function migrationRange(from: number, to: number): number[];
|
|
119
|
+
/** @deprecated - use createMigration with no procedure function */
|
|
120
|
+
export declare function createDefaultMigration(schema: StorageSchema): Migration<{
|
|
121
|
+
version: 0;
|
|
122
|
+
collections: {};
|
|
123
|
+
}>;
|
|
124
|
+
/** @deprecated - use createMigration with no procedure function */
|
|
125
|
+
export declare function createDefaultMigration<Old extends StorageSchema>(oldSchema: Old, newSchema: StorageSchema): Migration<Old>;
|
|
126
|
+
/** New, simpler type-safety migration tools */
|
|
127
|
+
type DocumentShape<Init = any, Snapshot = any> = {
|
|
128
|
+
init: Init;
|
|
129
|
+
snapshot: Snapshot;
|
|
130
|
+
};
|
|
131
|
+
type SchemaDocuments = Record<string, DocumentShape>;
|
|
132
|
+
type CollectionProcedure<OldSnapshot, NewInit> = {
|
|
133
|
+
(old: OldSnapshot): NewInit | Promise<NewInit>;
|
|
134
|
+
};
|
|
135
|
+
type MigrationQueries<Old extends SchemaDocuments> = {
|
|
136
|
+
[Key in keyof Old]: {
|
|
137
|
+
get(primaryKey: string): Promise<Old[Key]['snapshot'] | undefined>;
|
|
138
|
+
findOne(query: CollectionFilter): Promise<Old[Key]['snapshot'] | undefined>;
|
|
139
|
+
findAll(query?: CollectionFilter): Promise<Old[Key]['snapshot'][]>;
|
|
140
|
+
};
|
|
141
|
+
};
|
|
142
|
+
type MigrationMutations<New extends SchemaDocuments> = {
|
|
143
|
+
[Key in keyof New]: {
|
|
144
|
+
put(document: New[Key]['init']): Promise<New[Key]['snapshot']>;
|
|
145
|
+
delete(primaryKey: string): Promise<void>;
|
|
146
|
+
};
|
|
147
|
+
};
|
|
148
|
+
type MigrationTools<Old extends SchemaDocuments, New extends SchemaDocuments> = {
|
|
149
|
+
/**
|
|
150
|
+
* Process a change in a collection's documents by taking in each existing
|
|
151
|
+
* document and returning its new shape. This is typed so you can be
|
|
152
|
+
* confident the proper transformations are made.
|
|
153
|
+
*/
|
|
154
|
+
migrate: <Collection extends keyof Old & keyof New>(collection: Collection, strategy: CollectionProcedure<Old[Collection]['snapshot'], New[Collection]['init']>) => Promise<void>;
|
|
155
|
+
mutations: MigrationMutations<New>;
|
|
156
|
+
queries: MigrationQueries<Old>;
|
|
157
|
+
info: {
|
|
158
|
+
changedCollections: (keyof Old & keyof New)[];
|
|
159
|
+
addedCollections: (keyof New)[];
|
|
160
|
+
removedCollections: (keyof Old)[];
|
|
161
|
+
};
|
|
162
|
+
};
|
|
163
|
+
type MigrationProcedure<Old extends SchemaDocuments, New extends SchemaDocuments> = {
|
|
164
|
+
(tools: MigrationTools<Old, New>): Promise<void>;
|
|
165
|
+
};
|
|
166
|
+
type InitialMigrationTools<New extends SchemaDocuments> = {
|
|
167
|
+
mutations: MigrationMutations<New>;
|
|
168
|
+
};
|
|
169
|
+
type InitialMigrationProcedure<New extends SchemaDocuments> = {
|
|
170
|
+
(tools: InitialMigrationTools<New>): Promise<void>;
|
|
171
|
+
};
|
|
172
|
+
export declare function createMigration<New extends SchemaDocuments>(newSchema: StorageSchema, procedure?: InitialMigrationProcedure<New>): any;
|
|
173
|
+
export declare function createMigration<Old extends SchemaDocuments, New extends SchemaDocuments>(oldSchema: StorageSchema, newSchema: StorageSchema, procedure?: MigrationProcedure<Old, New>): any;
|
|
174
|
+
export {};
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { ObjectRef } from './operation.js';
|
|
2
|
+
/**
|
|
3
|
+
* OIDs
|
|
4
|
+
*
|
|
5
|
+
* OIDs are used to identify objects in the document. They also encode
|
|
6
|
+
* information about the object useful to identifying an object found
|
|
7
|
+
* on its own and associating it back to its parent.
|
|
8
|
+
*
|
|
9
|
+
* An OID is structured as such:
|
|
10
|
+
* <collection>/<root id>:<random>
|
|
11
|
+
*
|
|
12
|
+
* OIDs have a few characteristics:
|
|
13
|
+
* - They include the collection name of the parent document
|
|
14
|
+
* - They include the primary key of the parent document
|
|
15
|
+
* - They may include a random sequence to identify sub-objects
|
|
16
|
+
*
|
|
17
|
+
* Collection name and document key are used to link any isolated
|
|
18
|
+
* object back to its parent document.
|
|
19
|
+
*
|
|
20
|
+
* The random sequence allows the application to encode different
|
|
21
|
+
* identities for objects at the same position in a document for
|
|
22
|
+
* conflict resolution purposes
|
|
23
|
+
*/
|
|
24
|
+
export type ObjectIdentifier = string;
|
|
25
|
+
export declare const LEGACY_OID_KEY = "__@@oid_do_not_use";
|
|
26
|
+
export declare const OID_KEY = "@@id";
|
|
27
|
+
export declare function getOid(obj: any): string;
|
|
28
|
+
export declare function maybeGetOid(obj: any): ObjectIdentifier | undefined;
|
|
29
|
+
export declare function assignOid(obj: any, oid: ObjectIdentifier): any;
|
|
30
|
+
export declare function hasOid(obj: any): boolean;
|
|
31
|
+
export declare function removeOid(obj: any): any;
|
|
32
|
+
export declare function isOidKey(key: string): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* For sub-objects, assign a random sub-OID if no OID
|
|
35
|
+
* is already assigned.
|
|
36
|
+
*/
|
|
37
|
+
export declare function ensureOid(obj: any, rootOid: ObjectIdentifier, createSubId?: () => string): string;
|
|
38
|
+
export declare function ensureCompatibleOid(obj: any, rootOid: ObjectIdentifier, createSubId?: () => string): string;
|
|
39
|
+
export declare function createOid(collection: string, documentId: string, subId?: string): string;
|
|
40
|
+
export declare function createSubOid(root: ObjectIdentifier, createSubId?: () => string): string;
|
|
41
|
+
export declare function decomposeOid(oid: ObjectIdentifier): {
|
|
42
|
+
collection: string;
|
|
43
|
+
id: string;
|
|
44
|
+
subId?: string;
|
|
45
|
+
};
|
|
46
|
+
export declare function assertAllLevelsHaveOids(obj: any, root?: any): void;
|
|
47
|
+
export declare function assignOidsToAllSubObjects(obj: any, createSubId?: () => string): void;
|
|
48
|
+
export declare function assignOidProperty(obj: any, oid: ObjectIdentifier): any;
|
|
49
|
+
export declare function maybeGetOidProperty(obj: any): any;
|
|
50
|
+
/**
|
|
51
|
+
* Assigns a special property to all objects in the given object
|
|
52
|
+
* which have an OID
|
|
53
|
+
*/
|
|
54
|
+
export declare function assignOidPropertiesToAllSubObjects(obj: any): void;
|
|
55
|
+
/**
|
|
56
|
+
*
|
|
57
|
+
* Removes the special property from all objects in the given object
|
|
58
|
+
* which have an OID, transferring the OID from the property to the OID
|
|
59
|
+
* system in-memory.
|
|
60
|
+
*/
|
|
61
|
+
export declare function removeOidPropertiesFromAllSubObjects(obj: any): void;
|
|
62
|
+
export declare function removeOidsFromAllSubObjects(obj: any): void;
|
|
63
|
+
export declare function createOidSubId(): string;
|
|
64
|
+
export declare function createRef(oid: ObjectIdentifier): ObjectRef;
|
|
65
|
+
export declare function normalize(obj: any, refs?: Map<ObjectIdentifier, any>): Map<ObjectIdentifier, any>;
|
|
66
|
+
/**
|
|
67
|
+
* Only normalizes direct children. The created map
|
|
68
|
+
* of objects will still have nested objects.
|
|
69
|
+
*/
|
|
70
|
+
export declare function normalizeFirstLevel(obj: any): {
|
|
71
|
+
refs: Map<string, any>;
|
|
72
|
+
oidKeyPairs: Map<string, string | number>;
|
|
73
|
+
};
|
|
74
|
+
export declare function getOidRoot(oid: ObjectIdentifier): string;
|
|
75
|
+
/**
|
|
76
|
+
* Returns an inclusive range of OIDs that represent
|
|
77
|
+
* all of an OID's possible sub-objects.
|
|
78
|
+
*/
|
|
79
|
+
export declare function getOidSubIdRange(oid: ObjectIdentifier): string[];
|
|
80
|
+
export declare function getLegacyDotOidSubIdRange(oid: ObjectIdentifier): string[];
|
|
81
|
+
export declare function getRoots(oids: ObjectIdentifier[]): string[];
|
|
82
|
+
export declare function areOidsRelated(oidA: ObjectIdentifier, oidB: ObjectIdentifier): boolean;
|
|
83
|
+
/**
|
|
84
|
+
* Recursively rewrites any OIDs in an object which are 'foreign' -
|
|
85
|
+
* i.e. relate to some other object/entity - to be local to the
|
|
86
|
+
* current object. This is deterministic, so it can be done
|
|
87
|
+
* on multiple clients independently with predictable results.
|
|
88
|
+
*/
|
|
89
|
+
export declare function fixForeignOids(obj: any): void;
|
|
90
|
+
export declare function isLegacyDotOid(oid: ObjectIdentifier): boolean;
|
|
91
|
+
export declare function convertLegacyOid(oid: ObjectIdentifier): string;
|
|
92
|
+
export declare const MATCH_LEGACY_OID_JSON_STRING: RegExp;
|
|
93
|
+
export declare function replaceLegacyOidsInJsonString(string: string): string;
|
|
94
|
+
export declare function replaceLegacyOidsInObject(obj: any): any;
|
|
95
|
+
export declare function isRootOid(oid: ObjectIdentifier): boolean;
|
package/dist/esm/oids.js
CHANGED
|
@@ -74,7 +74,7 @@ export function ensureCompatibleOid(obj, rootOid, createSubId) {
|
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
|
-
const
|
|
77
|
+
const SANITIZE_PLACEHOLDERS = {
|
|
78
78
|
'.': '˙',
|
|
79
79
|
'/': '&slash;',
|
|
80
80
|
':': ':',
|
|
@@ -82,9 +82,9 @@ const SANTIIZE_PLACEHOLDERS = {
|
|
|
82
82
|
function sanitizeFragment(id) {
|
|
83
83
|
// replaces separator characters with placeholders
|
|
84
84
|
return id
|
|
85
|
-
.replace(/[/]/g,
|
|
86
|
-
.replace(/[:]/g,
|
|
87
|
-
.replace(/[.]/g,
|
|
85
|
+
.replace(/[/]/g, SANITIZE_PLACEHOLDERS['/'])
|
|
86
|
+
.replace(/[:]/g, SANITIZE_PLACEHOLDERS[':'])
|
|
87
|
+
.replace(/[.]/g, SANITIZE_PLACEHOLDERS['.']);
|
|
88
88
|
}
|
|
89
89
|
function unsanitizeFragment(id) {
|
|
90
90
|
// replaces placeholders with separator characters
|
package/dist/esm/oids.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oids.js","sourceRoot":"","sources":["../../src/oids.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"oids.js","sourceRoot":"","sources":["../../src/oids.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|