@evolu/common 5.1.0 → 5.1.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/src/Crdt.d.ts +4 -4
- package/dist/src/Crdt.d.ts.map +1 -1
- package/dist/src/Crypto.d.ts +2 -2
- package/dist/src/Crypto.d.ts.map +1 -1
- package/dist/src/Db.d.ts +3 -3
- package/dist/src/Db.d.ts.map +1 -1
- package/dist/src/Evolu.d.ts +3 -3
- package/dist/src/Model.d.ts +22 -22
- package/dist/src/Model.d.ts.map +1 -1
- package/dist/src/Model.js +4 -4
- package/package.json +5 -5
- package/src/Crdt.ts +2 -2
- package/src/Crypto.ts +1 -1
- package/src/Db.ts +1 -1
- package/src/Evolu.ts +3 -3
- package/src/Model.ts +13 -15
package/dist/src/Crdt.d.ts
CHANGED
|
@@ -22,11 +22,11 @@ export declare const AllowedTimeRange: {
|
|
|
22
22
|
* the device clock is out of range, Evolu will not store data until it's
|
|
23
23
|
* fixed.
|
|
24
24
|
*/
|
|
25
|
-
export declare const Millis: S.brand<S.Schema<number, number, never
|
|
26
|
-
export type Millis =
|
|
25
|
+
export declare const Millis: S.brand<S.filter<S.Schema<number, number, never>>, "Millis">;
|
|
26
|
+
export type Millis = typeof Millis.Type;
|
|
27
27
|
export declare const initialMillis: number & Brand.Brand<"Millis">;
|
|
28
|
-
export declare const Counter: S.brand<S.Schema<number, number, never
|
|
29
|
-
export type Counter =
|
|
28
|
+
export declare const Counter: S.brand<S.filter<S.Schema<number, number, never>>, "Counter">;
|
|
29
|
+
export type Counter = typeof Counter.Type;
|
|
30
30
|
export type TimestampHash = number & Brand.Brand<"TimestampHash">;
|
|
31
31
|
export type TimestampString = string & Brand.Brand<"TimestampString">;
|
|
32
32
|
export declare const timestampToString: (t: Timestamp) => TimestampString;
|
package/dist/src/Crdt.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Crdt.d.ts","sourceRoot":"","sources":["../../src/Crdt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,uBAAuB,CAAC;AAE3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAQtD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED,eAAO,MAAM,gBAAgB;;;CAG5B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"Crdt.d.ts","sourceRoot":"","sources":["../../src/Crdt.ts"],"names":[],"mappings":"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"}
|
package/dist/src/Crypto.d.ts
CHANGED
|
@@ -32,8 +32,8 @@ export declare class NanoIdGenerator extends NanoIdGenerator_base {
|
|
|
32
32
|
}
|
|
33
33
|
export declare const createNanoIdGeneratorLive: (customAlphabet: (alphabet: string, defaultSize?: number | undefined) => (size?: number | undefined) => string, nanoid: (size?: number) => string) => Layer.Layer<NanoIdGenerator, never, never>;
|
|
34
34
|
export type NanoId = string & Brand.Brand<"NanoId">;
|
|
35
|
-
export declare const NodeId: S.brand<S.Schema<string, string, never
|
|
36
|
-
export type NodeId =
|
|
35
|
+
export declare const NodeId: S.brand<S.filter<S.Schema<string, string, never>>, "NodeId">;
|
|
36
|
+
export type NodeId = typeof NodeId.Type;
|
|
37
37
|
export declare const slip21Derive: (seed: Uint8Array, path: ReadonlyArray<string>) => Effect.Effect<Uint8Array>;
|
|
38
38
|
declare const SecretBox_base: Context.TagClass<SecretBox, "SecretBox", {
|
|
39
39
|
readonly seal: (key: Uint8Array, plaintext: Uint8Array) => Effect.Effect<Uint8Array>;
|
package/dist/src/Crypto.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Crypto.d.ts","sourceRoot":"","sources":["../../src/Crypto.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,uBAAuB,CAAC;AAM3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;;mBAKb,OAAO,MAAM,CAAC,QAAQ,CAAC;qBAErB,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,MAAM,CAAC,UAAU,CAAC;oBAElD,CACd,QAAQ,EAAE,MAAM,KACb,OAAO,MAAM,CAAC,QAAQ,EAAE,oBAAoB,CAAC;;AATtD,qBAAa,KAAM,SAAQ,UAWxB;CAAG;AAEN,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;CACvC;AAED,eAAO,MAAM,wBAAwB,qBAChB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,OAAO,gBAExD,MAAM,YACN,MAAM,EAAE,KACjB,OAAO,MAAM,CAAC,QAAQ,EAAE,oBAAoB,EAAE,KAAK,CAOrD,CAAC;AAEJ;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;;qBAKnC,OAAO,MAAM,CAAC,MAAM,CAAC;qBACrB,OAAO,MAAM,CAAC,MAAM,CAAC;oBACtB,OAAO,MAAM,CAAC,EAAE,CAAC;;AALrC,qBAAa,eAAgB,SAAQ,oBAOlC;CAAG;AAEN,eAAO,MAAM,yBAAyB,mBACpB,CACd,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,KAC7B,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,KAAK,MAAM,UAClC,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,MAAM,KAChC,MAAM,KAAK,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAU3C,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAEpD,eAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"Crypto.d.ts","sourceRoot":"","sources":["../../src/Crypto.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,uBAAuB,CAAC;AAM3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;;mBAKb,OAAO,MAAM,CAAC,QAAQ,CAAC;qBAErB,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,MAAM,CAAC,UAAU,CAAC;oBAElD,CACd,QAAQ,EAAE,MAAM,KACb,OAAO,MAAM,CAAC,QAAQ,EAAE,oBAAoB,CAAC;;AATtD,qBAAa,KAAM,SAAQ,UAWxB;CAAG;AAEN,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;CACvC;AAED,eAAO,MAAM,wBAAwB,qBAChB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,OAAO,gBAExD,MAAM,YACN,MAAM,EAAE,KACjB,OAAO,MAAM,CAAC,QAAQ,EAAE,oBAAoB,EAAE,KAAK,CAOrD,CAAC;AAEJ;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;;qBAKnC,OAAO,MAAM,CAAC,MAAM,CAAC;qBACrB,OAAO,MAAM,CAAC,MAAM,CAAC;oBACtB,OAAO,MAAM,CAAC,EAAE,CAAC;;AALrC,qBAAa,eAAgB,SAAQ,oBAOlC;CAAG;AAEN,eAAO,MAAM,yBAAyB,mBACpB,CACd,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,KAC7B,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,KAAK,MAAM,UAClC,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,MAAM,KAChC,MAAM,KAAK,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAU3C,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAEpD,eAAO,MAAM,MAAM,8DAGlB,CAAC;AACF,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,IAAI,CAAC;AAIxC,eAAO,MAAM,YAAY,SACjB,UAAU,QACV,cAAc,MAAM,CAAC,KAC1B,OAAO,MAAM,CAAC,UAAU,CAWvB,CAAC;;mBAKc,CACb,GAAG,EAAE,UAAU,EACf,SAAS,EAAE,UAAU,KAClB,OAAO,MAAM,CAAC,UAAU,CAAC;mBAEf,CACb,GAAG,EAAE,UAAU,EACf,UAAU,EAAE,UAAU,KACnB,OAAO,MAAM,CAAC,UAAU,CAAC;;AAXlC,qBAAa,SAAU,SAAQ,cAa5B;IACD,MAAM,CAAC,IAAI,uCAgBT;CACH"}
|
package/dist/src/Db.d.ts
CHANGED
|
@@ -33,10 +33,10 @@ export interface Table {
|
|
|
33
33
|
readonly columns: ReadonlyArray<string>;
|
|
34
34
|
}
|
|
35
35
|
export declare const Index: S.Struct<{
|
|
36
|
-
name: S
|
|
37
|
-
sql: S
|
|
36
|
+
name: typeof S.String;
|
|
37
|
+
sql: typeof S.String;
|
|
38
38
|
}>;
|
|
39
|
-
export type Index =
|
|
39
|
+
export type Index = typeof Index.Type;
|
|
40
40
|
export interface Mutation {
|
|
41
41
|
readonly table: string;
|
|
42
42
|
readonly id: Id;
|
package/dist/src/Db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Db.d.ts","sourceRoot":"","sources":["../../src/Db.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Db.d.ts","sourceRoot":"","sources":["../../src/Db.ts"],"names":[],"mappings":"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"}
|
package/dist/src/Evolu.d.ts
CHANGED
|
@@ -334,13 +334,13 @@ declare const EvoluFactory_base: Context.TagClass<EvoluFactory, "EvoluFactory",
|
|
|
334
334
|
* // import * as E from "@evolu/common-web";
|
|
335
335
|
*
|
|
336
336
|
* const TodoId = E.id("Todo");
|
|
337
|
-
* type TodoId =
|
|
337
|
+
* type TodoId = typeof TodoId.Type;
|
|
338
338
|
*
|
|
339
339
|
* const TodoTable = E.table({
|
|
340
340
|
* id: TodoId,
|
|
341
341
|
* title: E.NonEmptyString1000,
|
|
342
342
|
* });
|
|
343
|
-
* type TodoTable =
|
|
343
|
+
* type TodoTable = typeof TodoTable.Type;
|
|
344
344
|
*
|
|
345
345
|
* const Database = E.database({
|
|
346
346
|
* todo: TodoTable,
|
|
@@ -348,7 +348,7 @@ declare const EvoluFactory_base: Context.TagClass<EvoluFactory, "EvoluFactory",
|
|
|
348
348
|
* // Prefix `_` makes the table local-only (it will not sync)
|
|
349
349
|
* _todo: TodoTable,
|
|
350
350
|
* });
|
|
351
|
-
* type Database =
|
|
351
|
+
* type Database = typeof Database.Type;
|
|
352
352
|
*
|
|
353
353
|
* const evolu = E.createEvolu(Database);
|
|
354
354
|
*/
|
package/dist/src/Model.d.ts
CHANGED
|
@@ -2,8 +2,8 @@ import * as S from "@effect/schema/Schema";
|
|
|
2
2
|
import * as Types from "effect/Types";
|
|
3
3
|
import { Value } from "./Sqlite.js";
|
|
4
4
|
/** Branded Id Schema. To create Id Schema for a specific table, use {@link id}. */
|
|
5
|
-
export declare const Id: S.brand<S.Schema<string, string, never
|
|
6
|
-
export type Id =
|
|
5
|
+
export declare const Id: S.brand<S.filter<S.Schema<string, string, never>>, "Id">;
|
|
6
|
+
export type Id = typeof Id.Type;
|
|
7
7
|
/**
|
|
8
8
|
* A factory function to create {@link Id} Schema for a specific table.
|
|
9
9
|
*
|
|
@@ -12,7 +12,7 @@ export type Id = S.Schema.Type<typeof Id>;
|
|
|
12
12
|
* import { id } from "@evolu/react";
|
|
13
13
|
*
|
|
14
14
|
* const TodoId = id("Todo");
|
|
15
|
-
* type TodoId =
|
|
15
|
+
* type TodoId = typeof TodoId.Type;
|
|
16
16
|
*/
|
|
17
17
|
export declare const id: <T extends string>(table: T) => S.brand<S.brand<S.Schema<string, string, never>, "Id">, T>;
|
|
18
18
|
/**
|
|
@@ -20,15 +20,15 @@ export declare const id: <T extends string>(table: T) => S.brand<S.brand<S.Schem
|
|
|
20
20
|
* the {@link cast} helper to cast SqliteDate from Date and back.
|
|
21
21
|
* https://www.sqlite.org/quirks.html#no_separate_datetime_datatype
|
|
22
22
|
*/
|
|
23
|
-
export declare const SqliteDate: S.brand<S.
|
|
24
|
-
export type SqliteDate =
|
|
23
|
+
export declare const SqliteDate: S.brand<S.filter<typeof S.String>, "SqliteDate">;
|
|
24
|
+
export type SqliteDate = typeof SqliteDate.Type;
|
|
25
25
|
/**
|
|
26
26
|
* SQLite doesn't support the boolean type, so Evolu uses SqliteBoolean instead.
|
|
27
27
|
* Use the {@link cast} helper to cast SqliteBoolean from boolean and back.
|
|
28
28
|
* https://www.sqlite.org/quirks.html#no_separate_boolean_datatype
|
|
29
29
|
*/
|
|
30
|
-
export declare const SqliteBoolean: S.brand<S.Schema<number, number, never
|
|
31
|
-
export type SqliteBoolean =
|
|
30
|
+
export declare const SqliteBoolean: S.brand<S.filter<S.filter<S.Schema<number, number, never>>>, "SqliteBoolean">;
|
|
31
|
+
export type SqliteBoolean = typeof SqliteBoolean.Type;
|
|
32
32
|
/**
|
|
33
33
|
* A helper for casting types not supported by SQLite. SQLite doesn't support
|
|
34
34
|
* Date nor Boolean types, so Evolu emulates them with {@link SqliteBoolean} and
|
|
@@ -61,20 +61,20 @@ interface EvoluTypeError<E extends string> {
|
|
|
61
61
|
*
|
|
62
62
|
* @example
|
|
63
63
|
* const TodoId = id("Todo");
|
|
64
|
-
* type TodoId =
|
|
64
|
+
* type TodoId = typeof TodoId.Type;
|
|
65
65
|
*
|
|
66
66
|
* const TodoTable = table({
|
|
67
67
|
* id: TodoId,
|
|
68
68
|
* title: NonEmptyString1000,
|
|
69
69
|
* isCompleted: S.nullable(SqliteBoolean),
|
|
70
70
|
* });
|
|
71
|
-
* type TodoTable =
|
|
71
|
+
* type TodoTable = typeof TodoTable.Type;
|
|
72
72
|
*/
|
|
73
|
-
export declare const table: <Fields extends TableFields>(fields: Fields) => ValidateFieldsTypes<Fields> extends true ? ValidateFieldsNames<Fields> extends true ? ValidateFieldsHasId<Fields> extends true ? S.Schema<Types.Simplify<S.Struct.Type<Fields> &
|
|
73
|
+
export declare const table: <Fields extends TableFields>(fields: Fields) => ValidateFieldsTypes<Fields> extends true ? ValidateFieldsNames<Fields> extends true ? ValidateFieldsHasId<Fields> extends true ? S.Schema<Types.Simplify<S.Struct.Type<Fields> & typeof ReservedColumns.Type>, Types.Simplify<S.Struct.Encoded<Fields> & typeof ReservedColumns.Encoded>> : EvoluTypeError<"table() called without id column."> : EvoluTypeError<"table() called with a reserved column. Reserved columns are createdAt, updatedAt, isDeleted. Those columns are added by default."> : EvoluTypeError<"table() called with unsupported type. Supported types are null, string, number, Uint8Array, JSON Object, and JSON Array. Use SqliteDate for dates and SqliteBoolean for booleans.">;
|
|
74
74
|
declare const ReservedColumns: S.Struct<{
|
|
75
|
-
createdAt: S.brand<S.
|
|
76
|
-
updatedAt: S.brand<S.
|
|
77
|
-
isDeleted: S.brand<S.Schema<number, number, never
|
|
75
|
+
createdAt: S.brand<S.filter<typeof S.String>, "SqliteDate">;
|
|
76
|
+
updatedAt: S.brand<S.filter<typeof S.String>, "SqliteDate">;
|
|
77
|
+
isDeleted: S.brand<S.filter<S.filter<S.Schema<number, number, never>>>, "SqliteBoolean">;
|
|
78
78
|
}>;
|
|
79
79
|
type TableFields = Record<string, S.Schema<any>>;
|
|
80
80
|
type ValidateFieldsTypes<Fields extends TableFields> = keyof Fields extends infer K ? K extends keyof Fields ? Fields[K] extends TableFields ? ValidateFieldsTypes<Fields[K]> : Fields[K] extends S.Schema<infer A, infer _I> ? A extends Value ? true : false : never : never : never;
|
|
@@ -93,7 +93,7 @@ type ValidateFieldsHasId<Fields extends TableFields> = "id" extends keyof Fields
|
|
|
93
93
|
* todo: TodoTable,
|
|
94
94
|
* todoCategory: TodoCategoryTable,
|
|
95
95
|
* });
|
|
96
|
-
* type Database =
|
|
96
|
+
* type Database = typeof Database.Type;
|
|
97
97
|
*/
|
|
98
98
|
export declare const database: typeof S.Struct;
|
|
99
99
|
/**
|
|
@@ -102,8 +102,8 @@ export declare const database: typeof S.Struct;
|
|
|
102
102
|
* not automatically parsed to a JSON object or array when retrieved. Use String
|
|
103
103
|
* schema for all string-based schemas.
|
|
104
104
|
*/
|
|
105
|
-
export declare const String: S.brand<S.
|
|
106
|
-
export type String =
|
|
105
|
+
export declare const String: S.brand<S.filter<typeof S.String>, "String">;
|
|
106
|
+
export type String = typeof String.Type;
|
|
107
107
|
/**
|
|
108
108
|
* A string with a maximum length of 1000 characters.
|
|
109
109
|
*
|
|
@@ -113,8 +113,8 @@ export type String = S.Schema.Type<typeof String>;
|
|
|
113
113
|
*
|
|
114
114
|
* S.decode(String1000)(value);
|
|
115
115
|
*/
|
|
116
|
-
export declare const String1000: S.brand<S.Schema<string & import("effect/Brand").Brand<"String">, string, never
|
|
117
|
-
export type String1000 =
|
|
116
|
+
export declare const String1000: S.brand<S.filter<S.Schema<string & import("effect/Brand").Brand<"String">, string, never>>, "String1000">;
|
|
117
|
+
export type String1000 = typeof String1000.Type;
|
|
118
118
|
/**
|
|
119
119
|
* A nonempty string with a maximum length of 1000 characters.
|
|
120
120
|
*
|
|
@@ -124,8 +124,8 @@ export type String1000 = S.Schema.Type<typeof String1000>;
|
|
|
124
124
|
*
|
|
125
125
|
* S.decode(NonEmptyString1000)(value);
|
|
126
126
|
*/
|
|
127
|
-
export declare const NonEmptyString1000: S.brand<S.Schema<string & import("effect/Brand").Brand<"String">, string, never
|
|
128
|
-
export type NonEmptyString1000 =
|
|
127
|
+
export declare const NonEmptyString1000: S.brand<S.filter<S.Schema<string & import("effect/Brand").Brand<"String">, string, never>>, "NonEmptyString1000">;
|
|
128
|
+
export type NonEmptyString1000 = typeof NonEmptyString1000.Type;
|
|
129
129
|
/**
|
|
130
130
|
* A positive integer.
|
|
131
131
|
*
|
|
@@ -135,7 +135,7 @@ export type NonEmptyString1000 = S.Schema.Type<typeof NonEmptyString1000>;
|
|
|
135
135
|
*
|
|
136
136
|
* S.decode(PositiveInt)(value);
|
|
137
137
|
*/
|
|
138
|
-
export declare const PositiveInt: S.brand<S.Schema<number, number, never
|
|
139
|
-
export type PositiveInt =
|
|
138
|
+
export declare const PositiveInt: S.brand<S.filter<S.Schema<number, number, never>>, "PositiveInt">;
|
|
139
|
+
export type PositiveInt = typeof PositiveInt.Type;
|
|
140
140
|
export {};
|
|
141
141
|
//# sourceMappingURL=Model.d.ts.map
|
package/dist/src/Model.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Model.d.ts","sourceRoot":"","sources":["../../src/Model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,uBAAuB,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,KAAK,EAAa,MAAM,aAAa,CAAC;AAE/C,mFAAmF;AACnF,eAAO,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"Model.d.ts","sourceRoot":"","sources":["../../src/Model.ts"],"names":[],"mappings":"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"}
|
package/dist/src/Model.js
CHANGED
|
@@ -10,7 +10,7 @@ export const Id = S.String.pipe(S.pattern(/^[\w-]{21}$/), S.brand("Id"));
|
|
|
10
10
|
* import { id } from "@evolu/react";
|
|
11
11
|
*
|
|
12
12
|
* const TodoId = id("Todo");
|
|
13
|
-
* type TodoId =
|
|
13
|
+
* type TodoId = typeof TodoId.Type;
|
|
14
14
|
*/
|
|
15
15
|
export const id = (table) => Id.pipe(S.brand(table));
|
|
16
16
|
/**
|
|
@@ -45,14 +45,14 @@ export function cast(value) {
|
|
|
45
45
|
*
|
|
46
46
|
* @example
|
|
47
47
|
* const TodoId = id("Todo");
|
|
48
|
-
* type TodoId =
|
|
48
|
+
* type TodoId = typeof TodoId.Type;
|
|
49
49
|
*
|
|
50
50
|
* const TodoTable = table({
|
|
51
51
|
* id: TodoId,
|
|
52
52
|
* title: NonEmptyString1000,
|
|
53
53
|
* isCompleted: S.nullable(SqliteBoolean),
|
|
54
54
|
* });
|
|
55
|
-
* type TodoTable =
|
|
55
|
+
* type TodoTable = typeof TodoTable.Type;
|
|
56
56
|
*/
|
|
57
57
|
export const table = (fields) => S.Struct(fields).pipe(S.extend(ReservedColumns));
|
|
58
58
|
const ReservedColumns = S.Struct({
|
|
@@ -73,7 +73,7 @@ const ReservedColumns = S.Struct({
|
|
|
73
73
|
* todo: TodoTable,
|
|
74
74
|
* todoCategory: TodoCategoryTable,
|
|
75
75
|
* });
|
|
76
|
-
* type Database =
|
|
76
|
+
* type Database = typeof Database.Type;
|
|
77
77
|
*/
|
|
78
78
|
export const database = S.Struct;
|
|
79
79
|
/**
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@evolu/common",
|
|
3
|
-
"version": "5.1.
|
|
3
|
+
"version": "5.1.1",
|
|
4
4
|
"description": "Local-first platform designed for privacy, ease of use, and no vendor lock-in to sync and backup people's lifetime data",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"evolu",
|
|
@@ -52,12 +52,12 @@
|
|
|
52
52
|
"nanoid": "^5.0.7"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
|
-
"@effect/platform": "^0.53.
|
|
56
|
-
"@effect/schema": "^0.
|
|
55
|
+
"@effect/platform": "^0.53.2",
|
|
56
|
+
"@effect/schema": "^0.67.0",
|
|
57
57
|
"@protobuf-ts/plugin": "^2.9.4",
|
|
58
58
|
"@protobuf-ts/protoc": "^2.9.4",
|
|
59
59
|
"array-shuffle": "^3.0.0",
|
|
60
|
-
"effect": "^3.1.
|
|
60
|
+
"effect": "^3.1.3",
|
|
61
61
|
"eslint": "^8.57.0",
|
|
62
62
|
"typescript": "^5.4.5",
|
|
63
63
|
"vitest": "^1.6.0",
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
},
|
|
67
67
|
"peerDependencies": {
|
|
68
68
|
"@effect/platform": "^0.53.0",
|
|
69
|
-
"@effect/schema": "^0.
|
|
69
|
+
"@effect/schema": "^0.67.0",
|
|
70
70
|
"effect": "^3.1.2"
|
|
71
71
|
},
|
|
72
72
|
"publishConfig": {
|
package/src/Crdt.ts
CHANGED
|
@@ -42,14 +42,14 @@ export const Millis = S.Number.pipe(
|
|
|
42
42
|
S.brand("Millis"),
|
|
43
43
|
);
|
|
44
44
|
|
|
45
|
-
export type Millis =
|
|
45
|
+
export type Millis = typeof Millis.Type;
|
|
46
46
|
|
|
47
47
|
export const initialMillis = S.decodeSync(Millis)(
|
|
48
48
|
AllowedTimeRange.greaterThan + 1,
|
|
49
49
|
);
|
|
50
50
|
|
|
51
51
|
export const Counter = S.Number.pipe(S.between(0, 65535), S.brand("Counter"));
|
|
52
|
-
export type Counter =
|
|
52
|
+
export type Counter = typeof Counter.Type;
|
|
53
53
|
|
|
54
54
|
const initialCounter = S.decodeSync(Counter)(0);
|
|
55
55
|
|
package/src/Crypto.ts
CHANGED
|
@@ -84,7 +84,7 @@ export const NodeId = S.String.pipe(
|
|
|
84
84
|
S.pattern(/^[\w-]{16}$/),
|
|
85
85
|
S.brand("NodeId"),
|
|
86
86
|
);
|
|
87
|
-
export type NodeId =
|
|
87
|
+
export type NodeId = typeof NodeId.Type;
|
|
88
88
|
|
|
89
89
|
// SLIP-21 implementation
|
|
90
90
|
// https://github.com/satoshilabs/slips/blob/master/slip-0021.md
|
package/src/Db.ts
CHANGED
package/src/Evolu.ts
CHANGED
|
@@ -440,13 +440,13 @@ export class EvoluFactory extends Context.Tag("EvoluFactory")<
|
|
|
440
440
|
* // import * as E from "@evolu/common-web";
|
|
441
441
|
*
|
|
442
442
|
* const TodoId = E.id("Todo");
|
|
443
|
-
* type TodoId =
|
|
443
|
+
* type TodoId = typeof TodoId.Type;
|
|
444
444
|
*
|
|
445
445
|
* const TodoTable = E.table({
|
|
446
446
|
* id: TodoId,
|
|
447
447
|
* title: E.NonEmptyString1000,
|
|
448
448
|
* });
|
|
449
|
-
* type TodoTable =
|
|
449
|
+
* type TodoTable = typeof TodoTable.Type;
|
|
450
450
|
*
|
|
451
451
|
* const Database = E.database({
|
|
452
452
|
* todo: TodoTable,
|
|
@@ -454,7 +454,7 @@ export class EvoluFactory extends Context.Tag("EvoluFactory")<
|
|
|
454
454
|
* // Prefix `_` makes the table local-only (it will not sync)
|
|
455
455
|
* _todo: TodoTable,
|
|
456
456
|
* });
|
|
457
|
-
* type Database =
|
|
457
|
+
* type Database = typeof Database.Type;
|
|
458
458
|
*
|
|
459
459
|
* const evolu = E.createEvolu(Database);
|
|
460
460
|
*/
|
package/src/Model.ts
CHANGED
|
@@ -4,7 +4,7 @@ import { Value, maybeJson } from "./Sqlite.js";
|
|
|
4
4
|
|
|
5
5
|
/** Branded Id Schema. To create Id Schema for a specific table, use {@link id}. */
|
|
6
6
|
export const Id = S.String.pipe(S.pattern(/^[\w-]{21}$/), S.brand("Id"));
|
|
7
|
-
export type Id =
|
|
7
|
+
export type Id = typeof Id.Type;
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* A factory function to create {@link Id} Schema for a specific table.
|
|
@@ -14,7 +14,7 @@ export type Id = S.Schema.Type<typeof Id>;
|
|
|
14
14
|
* import { id } from "@evolu/react";
|
|
15
15
|
*
|
|
16
16
|
* const TodoId = id("Todo");
|
|
17
|
-
* type TodoId =
|
|
17
|
+
* type TodoId = typeof TodoId.Type;
|
|
18
18
|
*/
|
|
19
19
|
export const id = <T extends string>(
|
|
20
20
|
table: T,
|
|
@@ -30,7 +30,7 @@ export const SqliteDate = S.String.pipe(
|
|
|
30
30
|
S.filter((s) => !isNaN(Date.parse(s))),
|
|
31
31
|
S.brand("SqliteDate"),
|
|
32
32
|
);
|
|
33
|
-
export type SqliteDate =
|
|
33
|
+
export type SqliteDate = typeof SqliteDate.Type;
|
|
34
34
|
|
|
35
35
|
/**
|
|
36
36
|
* SQLite doesn't support the boolean type, so Evolu uses SqliteBoolean instead.
|
|
@@ -42,7 +42,7 @@ export const SqliteBoolean = S.Number.pipe(
|
|
|
42
42
|
S.filter((s) => s === 0 || s === 1),
|
|
43
43
|
S.brand("SqliteBoolean"),
|
|
44
44
|
);
|
|
45
|
-
export type SqliteBoolean =
|
|
45
|
+
export type SqliteBoolean = typeof SqliteBoolean.Type;
|
|
46
46
|
|
|
47
47
|
/**
|
|
48
48
|
* A helper for casting types not supported by SQLite. SQLite doesn't support
|
|
@@ -87,14 +87,14 @@ interface EvoluTypeError<E extends string> {
|
|
|
87
87
|
*
|
|
88
88
|
* @example
|
|
89
89
|
* const TodoId = id("Todo");
|
|
90
|
-
* type TodoId =
|
|
90
|
+
* type TodoId = typeof TodoId.Type;
|
|
91
91
|
*
|
|
92
92
|
* const TodoTable = table({
|
|
93
93
|
* id: TodoId,
|
|
94
94
|
* title: NonEmptyString1000,
|
|
95
95
|
* isCompleted: S.nullable(SqliteBoolean),
|
|
96
96
|
* });
|
|
97
|
-
* type TodoTable =
|
|
97
|
+
* type TodoTable = typeof TodoTable.Type;
|
|
98
98
|
*/
|
|
99
99
|
export const table = <Fields extends TableFields>(
|
|
100
100
|
fields: Fields,
|
|
@@ -103,11 +103,9 @@ export const table = <Fields extends TableFields>(
|
|
|
103
103
|
? ValidateFieldsNames<Fields> extends true
|
|
104
104
|
? ValidateFieldsHasId<Fields> extends true
|
|
105
105
|
? S.Schema<
|
|
106
|
+
Types.Simplify<S.Struct.Type<Fields> & typeof ReservedColumns.Type>,
|
|
106
107
|
Types.Simplify<
|
|
107
|
-
S.Struct.
|
|
108
|
-
>,
|
|
109
|
-
Types.Simplify<
|
|
110
|
-
S.Struct.Encoded<Fields> & S.Schema.Encoded<typeof ReservedColumns>
|
|
108
|
+
S.Struct.Encoded<Fields> & typeof ReservedColumns.Encoded
|
|
111
109
|
>
|
|
112
110
|
>
|
|
113
111
|
: EvoluTypeError<"table() called without id column.">
|
|
@@ -163,7 +161,7 @@ type ValidateFieldsHasId<Fields extends TableFields> = "id" extends keyof Fields
|
|
|
163
161
|
* todo: TodoTable,
|
|
164
162
|
* todoCategory: TodoCategoryTable,
|
|
165
163
|
* });
|
|
166
|
-
* type Database =
|
|
164
|
+
* type Database = typeof Database.Type;
|
|
167
165
|
*/
|
|
168
166
|
export const database = S.Struct;
|
|
169
167
|
|
|
@@ -188,7 +186,7 @@ export const String = S.String.pipe(
|
|
|
188
186
|
),
|
|
189
187
|
S.brand("String"),
|
|
190
188
|
);
|
|
191
|
-
export type String =
|
|
189
|
+
export type String = typeof String.Type;
|
|
192
190
|
|
|
193
191
|
/**
|
|
194
192
|
* A string with a maximum length of 1000 characters.
|
|
@@ -200,7 +198,7 @@ export type String = S.Schema.Type<typeof String>;
|
|
|
200
198
|
* S.decode(String1000)(value);
|
|
201
199
|
*/
|
|
202
200
|
export const String1000 = String.pipe(S.maxLength(1000), S.brand("String1000"));
|
|
203
|
-
export type String1000 =
|
|
201
|
+
export type String1000 = typeof String1000.Type;
|
|
204
202
|
|
|
205
203
|
/**
|
|
206
204
|
* A nonempty string with a maximum length of 1000 characters.
|
|
@@ -216,7 +214,7 @@ export const NonEmptyString1000 = String.pipe(
|
|
|
216
214
|
S.maxLength(1000),
|
|
217
215
|
S.brand("NonEmptyString1000"),
|
|
218
216
|
);
|
|
219
|
-
export type NonEmptyString1000 =
|
|
217
|
+
export type NonEmptyString1000 = typeof NonEmptyString1000.Type;
|
|
220
218
|
|
|
221
219
|
/**
|
|
222
220
|
* A positive integer.
|
|
@@ -232,4 +230,4 @@ export const PositiveInt = S.Number.pipe(
|
|
|
232
230
|
S.positive(),
|
|
233
231
|
S.brand("PositiveInt"),
|
|
234
232
|
);
|
|
235
|
-
export type PositiveInt =
|
|
233
|
+
export type PositiveInt = typeof PositiveInt.Type;
|