lib0 0.2.115-1 → 0.2.115-3
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/coverage/tmp/{coverage-27668-1761218485882-0.json → coverage-32703-1763495370274-0.json} +1 -1
- package/delta/abstract.d.ts +2 -2
- package/delta/abstract.d.ts.map +1 -1
- package/delta/d2.d.ts +318 -112
- package/delta/d2.d.ts.map +1 -1
- package/delta/d2.js +837 -155
- package/delta/d2.test.d.ts +6 -1
- package/delta/d2.test.d.ts.map +1 -1
- package/delta/map.d.ts +19 -23
- package/delta/map.d.ts.map +1 -1
- package/delta/map.js +1 -1
- package/delta/node.d.ts +8 -10
- package/delta/node.d.ts.map +1 -1
- package/delta/ops.d.ts +26 -28
- package/delta/ops.d.ts.map +1 -1
- package/delta/t2.d.ts +184 -0
- package/delta/t2.d.ts.map +1 -0
- package/delta/t2.js +890 -0
- package/delta/t3.test.d.ts +19 -0
- package/delta/t3.test.d.ts.map +1 -0
- package/dist/aes-gcm.cjs +2 -2
- package/dist/binding.cjs +1 -1
- package/dist/{broadcastchannel-b4eaea6e.cjs → broadcastchannel-d0c108a2.cjs} +2 -2
- package/dist/{broadcastchannel-b4eaea6e.cjs.map → broadcastchannel-d0c108a2.cjs.map} +1 -1
- package/dist/broadcastchannel.cjs +4 -4
- package/dist/{buffer-adc4e6ea.cjs → buffer-7f6fa8fa.cjs} +3 -3
- package/dist/{buffer-adc4e6ea.cjs.map → buffer-7f6fa8fa.cjs.map} +1 -1
- package/dist/buffer.cjs +3 -3
- package/dist/component.cjs +1 -1
- package/dist/d2.cjs +845 -159
- package/dist/d2.cjs.map +1 -1
- package/dist/{decoding-50b9ce38.cjs → decoding-76e75827.cjs} +2 -2
- package/dist/{decoding-50b9ce38.cjs.map → decoding-76e75827.cjs.map} +1 -1
- package/dist/decoding.cjs +2 -2
- package/dist/delta/abstract.d.ts +2 -2
- package/dist/delta/abstract.d.ts.map +1 -1
- package/dist/delta/d2.d.ts +318 -112
- package/dist/delta/d2.d.ts.map +1 -1
- package/dist/delta/d2.test.d.ts +6 -1
- package/dist/delta/d2.test.d.ts.map +1 -1
- package/dist/delta/map.d.ts +19 -23
- package/dist/delta/map.d.ts.map +1 -1
- package/dist/delta/node.d.ts +8 -10
- package/dist/delta/node.d.ts.map +1 -1
- package/dist/delta/ops.d.ts +26 -28
- package/dist/delta/ops.d.ts.map +1 -1
- package/dist/delta/t2.d.ts +184 -0
- package/dist/delta/t2.d.ts.map +1 -0
- package/dist/delta/t3.test.d.ts +19 -0
- package/dist/delta/t3.test.d.ts.map +1 -0
- package/dist/{dom-2b123630.cjs → dom-f5047a64.cjs} +1 -1
- package/dist/{dom-2b123630.cjs.map → dom-f5047a64.cjs.map} +1 -1
- package/dist/dom.cjs +1 -1
- package/dist/{encoding-7f85922c.cjs → encoding-1a745c43.cjs} +10 -2
- package/dist/encoding-1a745c43.cjs.map +1 -0
- package/dist/encoding.cjs +1 -1
- package/dist/encoding.d.ts +5 -3
- package/dist/encoding.d.ts.map +1 -1
- package/dist/encoding.test.d.ts.map +1 -1
- package/dist/index.cjs +6 -6
- package/dist/jwt.cjs +3 -3
- package/dist/list.test.d.ts +1 -0
- package/dist/list.test.d.ts.map +1 -1
- package/dist/logging.cjs +1 -1
- package/dist/map.cjs +1 -1
- package/dist/map.cjs.map +1 -1
- package/dist/mutex.test.d.ts +3 -0
- package/dist/mutex.test.d.ts.map +1 -0
- package/dist/{prng-004c76e8.cjs → prng-99204216.cjs} +2 -2
- package/dist/{prng-004c76e8.cjs.map → prng-99204216.cjs.map} +1 -1
- package/dist/prng.cjs +4 -4
- package/dist/rabin-gf2-polynomial.cjs +3 -3
- package/dist/rabin-uncached.cjs +3 -3
- package/dist/rabin.cjs +3 -3
- package/dist/schema.cjs +72 -11
- package/dist/schema.cjs.map +1 -1
- package/dist/schema.d.ts +21 -13
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.test.d.ts +2 -0
- package/dist/schema.test.d.ts.map +1 -1
- package/dist/t2.cjs +932 -0
- package/dist/t2.cjs.map +1 -0
- package/dist/testing.cjs +4 -4
- package/encoding.d.ts +5 -3
- package/encoding.d.ts.map +1 -1
- package/encoding.js +9 -1
- package/encoding.test.d.ts.map +1 -1
- package/list.test.d.ts +1 -0
- package/list.test.d.ts.map +1 -1
- package/mutex.test.d.ts +3 -0
- package/mutex.test.d.ts.map +1 -0
- package/package.json +1 -1
- package/schema.d.ts +21 -13
- package/schema.d.ts.map +1 -1
- package/schema.js +68 -11
- package/schema.test.d.ts +2 -0
- package/schema.test.d.ts.map +1 -1
- package/test.js +3 -1
- package/coverage/tmp/coverage-27667-1761218530660-0.json +0 -1
- package/dist/encoding-7f85922c.cjs.map +0 -1
package/delta/d2.test.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
export function
|
|
1
|
+
export function testDeltaBasicApi(_tc: t.TestCase): void;
|
|
2
|
+
export function testDeltaValues(_tc: t.TestCase): void;
|
|
3
|
+
export function testDeltaBasicCases(): void;
|
|
2
4
|
export function testAssignability(): void;
|
|
3
5
|
export function testText(): void;
|
|
4
6
|
export function testDelta(_tc: t.TestCase): void;
|
|
@@ -12,5 +14,8 @@ export function testMapDelta(_tc: t.TestCase): void;
|
|
|
12
14
|
export function testRepeatRebaseMergeDeltas(tc: t.TestCase): void;
|
|
13
15
|
export function testNodeDelta(_tc: t.TestCase): void;
|
|
14
16
|
export function testRecursiveNode(): void;
|
|
17
|
+
export function testSimplifiedDeltaSchemaDefinition(): void;
|
|
18
|
+
export function testDiffing(): void;
|
|
19
|
+
export function testSlice(): void;
|
|
15
20
|
import * as t from 'lib0/testing';
|
|
16
21
|
//# sourceMappingURL=d2.test.d.ts.map
|
package/delta/d2.test.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d2.test.d.ts","sourceRoot":"","sources":["d2.test.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"d2.test.d.ts","sourceRoot":"","sources":["d2.test.js"],"names":[],"mappings":"AAqCO,uCAFI,CAAC,CAAC,QAAQ,QAWpB;AAYM,qCAFI,CAAC,CAAC,QAAQ,QAwBpB;AAEM,4CA2BN;AAKM,0CAkJN;AAEM,iCAWN;AAKM,+BAFI,CAAC,CAAC,QAAQ,QAKpB;AAKM,sCAFI,CAAC,CAAC,QAAQ,QAYpB;AAKM,uCAFI,CAAC,CAAC,QAAQ,QAuBpB;AAKM,wCAFI,CAAC,CAAC,QAAQ,QAsBpB;AAEM,sCAaN;AAKM,wCAFI,CAAC,CAAC,QAAQ,QA4BpB;AAKM,wCAFI,CAAC,CAAC,QAAQ,QA2CpB;AAKM,kCAFI,CAAC,CAAC,QAAQ,QAqDpB;AAKM,gDAFI,CAAC,CAAC,QAAQ,QAoEpB;AAKM,mCAFI,CAAC,CAAC,QAAQ,QAiCpB;AAEM,0CAmBN;AAEM,4DAON;AAEM,oCAKN;AAEM,kCAGN;mBApoBkB,cAAc"}
|
package/delta/map.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export const $mapJson: s.Schema<{
|
|
2
|
-
[x: string]:
|
|
3
|
-
attribution?:
|
|
2
|
+
[x: string]: {
|
|
3
|
+
attribution?: {
|
|
4
4
|
insert?: string[] | undefined;
|
|
5
5
|
insertAt?: number | undefined;
|
|
6
6
|
delete?: string[] | undefined;
|
|
@@ -9,15 +9,14 @@ export const $mapJson: s.Schema<{
|
|
|
9
9
|
[x: string]: string[];
|
|
10
10
|
} | undefined;
|
|
11
11
|
attributesAt?: number | undefined;
|
|
12
|
-
}
|
|
13
|
-
} & {
|
|
12
|
+
} | null | undefined;
|
|
14
13
|
type: "insert";
|
|
15
14
|
value: any;
|
|
16
|
-
}
|
|
15
|
+
} | {
|
|
17
16
|
type: "modify";
|
|
18
17
|
value: any;
|
|
19
|
-
}
|
|
20
|
-
attribution?:
|
|
18
|
+
} | {
|
|
19
|
+
attribution?: {
|
|
21
20
|
insert?: string[] | undefined;
|
|
22
21
|
insertAt?: number | undefined;
|
|
23
22
|
delete?: string[] | undefined;
|
|
@@ -26,10 +25,9 @@ export const $mapJson: s.Schema<{
|
|
|
26
25
|
[x: string]: string[];
|
|
27
26
|
} | undefined;
|
|
28
27
|
attributesAt?: number | undefined;
|
|
29
|
-
}
|
|
30
|
-
} & {
|
|
28
|
+
} | null | undefined;
|
|
31
29
|
type: "delete";
|
|
32
|
-
}
|
|
30
|
+
};
|
|
33
31
|
}>;
|
|
34
32
|
/**
|
|
35
33
|
* @template {{ [key:string]: ops.DeltaMapOps }} OPS
|
|
@@ -47,11 +45,11 @@ export class DeltaMap<Vals extends {
|
|
|
47
45
|
* @param {s.Schema<Vals>} $vals
|
|
48
46
|
*/
|
|
49
47
|
constructor($vals: s.Schema<Vals>);
|
|
50
|
-
$vals: s.Schema<Partial<s.$ObjectToType<{
|
|
48
|
+
$vals: s.Schema<Vals> | s.Schema<Partial<s.$ObjectToType<{
|
|
51
49
|
[key: string]: s.Schema<any>;
|
|
52
50
|
[key: number]: s.Schema<any>;
|
|
53
51
|
[key: symbol]: s.Schema<any>;
|
|
54
|
-
}
|
|
52
|
+
}>>>;
|
|
55
53
|
/**
|
|
56
54
|
* @type {gmap.GlobalMap<any,ops.DeltaMapOps>}
|
|
57
55
|
*/
|
|
@@ -114,8 +112,8 @@ export class DeltaMap<Vals extends {
|
|
|
114
112
|
* @return {s.Unwrap<$mapJson>}
|
|
115
113
|
*/
|
|
116
114
|
toJSON(): s.Unwrap<s.Schema<{
|
|
117
|
-
[x: string]:
|
|
118
|
-
attribution?:
|
|
115
|
+
[x: string]: {
|
|
116
|
+
attribution?: {
|
|
119
117
|
insert?: string[] | undefined;
|
|
120
118
|
insertAt?: number | undefined;
|
|
121
119
|
delete?: string[] | undefined;
|
|
@@ -124,15 +122,14 @@ export class DeltaMap<Vals extends {
|
|
|
124
122
|
[x: string]: string[];
|
|
125
123
|
} | undefined;
|
|
126
124
|
attributesAt?: number | undefined;
|
|
127
|
-
}
|
|
128
|
-
} & {
|
|
125
|
+
} | null | undefined;
|
|
129
126
|
type: "insert";
|
|
130
127
|
value: any;
|
|
131
|
-
}
|
|
128
|
+
} | {
|
|
132
129
|
type: "modify";
|
|
133
130
|
value: any;
|
|
134
|
-
}
|
|
135
|
-
attribution?:
|
|
131
|
+
} | {
|
|
132
|
+
attribution?: {
|
|
136
133
|
insert?: string[] | undefined;
|
|
137
134
|
insertAt?: number | undefined;
|
|
138
135
|
delete?: string[] | undefined;
|
|
@@ -141,10 +138,9 @@ export class DeltaMap<Vals extends {
|
|
|
141
138
|
[x: string]: string[];
|
|
142
139
|
} | undefined;
|
|
143
140
|
attributesAt?: number | undefined;
|
|
144
|
-
}
|
|
145
|
-
} & {
|
|
141
|
+
} | null | undefined;
|
|
146
142
|
type: "delete";
|
|
147
|
-
}
|
|
143
|
+
};
|
|
148
144
|
}>>;
|
|
149
145
|
/**
|
|
150
146
|
* @template {keyof Vals} K
|
|
@@ -209,7 +205,7 @@ export function map<$Vals extends s.Schema<{
|
|
|
209
205
|
[key: string]: s.Schema<any>;
|
|
210
206
|
} = s.Schema<{
|
|
211
207
|
[key: string]: any;
|
|
212
|
-
}>>($vals?: $Vals): DeltaMap<$Vals extends s.Schema<infer $V> ? $V : (s.
|
|
208
|
+
}>>($vals?: $Vals): DeltaMap<$Vals extends s.Schema<infer $V> ? $V : (s._ReadObjectDef<$Vals> extends s.Schema<infer $V> ? $V : never)>;
|
|
213
209
|
export function $map<Vals extends {
|
|
214
210
|
[key: string]: any;
|
|
215
211
|
}>($vals: s.Schema<Vals>): s.Schema<DeltaMap<Vals>>;
|
package/delta/map.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map.d.ts","sourceRoot":"","sources":["map.js"],"names":[],"mappings":"AAOA
|
|
1
|
+
{"version":3,"file":"map.d.ts","sourceRoot":"","sources":["map.js"],"names":[],"mappings":"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"}
|
package/delta/map.js
CHANGED
|
@@ -286,7 +286,7 @@ const valsKeySchema = ($ops, k) => s.$$object.check($ops) ? ($ops.shape[k] || s.
|
|
|
286
286
|
*
|
|
287
287
|
* @template {s.Schema<{ [key:string]: any }> | { [key:string]: s.Schema<any> }} [$Vals=s.Schema<{ [key:string]: any }>]
|
|
288
288
|
* @param {$Vals} $vals
|
|
289
|
-
* @return {DeltaMap<$Vals extends s.Schema<infer $V> ? $V : (s.
|
|
289
|
+
* @return {DeltaMap<$Vals extends s.Schema<infer $V> ? $V : (s._ReadObjectDef<$Vals> extends s.Schema<infer $V> ? $V : never)>}
|
|
290
290
|
*/
|
|
291
291
|
export const map = ($vals = /** @type {any} */ (s.$record(s.$string, s.$any))) => /** @type {any} */ (new DeltaMap(/** @type {any} */ (s.$$schema.check($vals) ? $vals : s.$object($vals))))
|
|
292
292
|
|
package/delta/node.d.ts
CHANGED
|
@@ -48,8 +48,8 @@ export class DeltaNode<NodeName extends string | undefined = string, Attrs exten
|
|
|
48
48
|
toJSON(): {
|
|
49
49
|
name: NodeName;
|
|
50
50
|
attributes: {
|
|
51
|
-
[x: string]:
|
|
52
|
-
attribution?:
|
|
51
|
+
[x: string]: {
|
|
52
|
+
attribution?: {
|
|
53
53
|
insert?: string[] | undefined;
|
|
54
54
|
insertAt?: number | undefined;
|
|
55
55
|
delete?: string[] | undefined;
|
|
@@ -58,15 +58,14 @@ export class DeltaNode<NodeName extends string | undefined = string, Attrs exten
|
|
|
58
58
|
[x: string]: string[];
|
|
59
59
|
} | undefined;
|
|
60
60
|
attributesAt?: number | undefined;
|
|
61
|
-
}
|
|
62
|
-
} & {
|
|
61
|
+
} | null | undefined;
|
|
63
62
|
type: "insert";
|
|
64
63
|
value: any;
|
|
65
|
-
}
|
|
64
|
+
} | {
|
|
66
65
|
type: "modify";
|
|
67
66
|
value: any;
|
|
68
|
-
}
|
|
69
|
-
attribution?:
|
|
67
|
+
} | {
|
|
68
|
+
attribution?: {
|
|
70
69
|
insert?: string[] | undefined;
|
|
71
70
|
insertAt?: number | undefined;
|
|
72
71
|
delete?: string[] | undefined;
|
|
@@ -75,10 +74,9 @@ export class DeltaNode<NodeName extends string | undefined = string, Attrs exten
|
|
|
75
74
|
[x: string]: string[];
|
|
76
75
|
} | undefined;
|
|
77
76
|
attributesAt?: number | undefined;
|
|
78
|
-
}
|
|
79
|
-
} & {
|
|
77
|
+
} | null | undefined;
|
|
80
78
|
type: "delete";
|
|
81
|
-
}
|
|
79
|
+
};
|
|
82
80
|
};
|
|
83
81
|
children: import("./abstract-array.js").DeltaJson;
|
|
84
82
|
};
|
package/delta/node.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["node.js"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,uBALiC,QAAQ,SAA3B,MAAM,GAAC,SAAU,WACI,KAAK,SAA3B;IAAE,CAAC,GAAG,EAAC,MAAM,GAAE,GAAG,CAAA;CAAE;;GACnB,QAAQ,QACE,QAAQ,SAAnB,OAAS;IAGpB;;;;OAIG;IACH,sBAJW,QAAQ,cACR,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,YACpB,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAC,QAAQ,CAAC,EAa9C;IATC,eAAoB;IACpB;;OAEG;IACH,YAFU,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAEmB;IACjD;;OAEG;IACH,UAFU,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAC,QAAQ,CAAC,CAED;IAO/C;;OAEG;IACH,SAFY,IAAI,CAIf;IAED;;OAEG;IACH,eAFW,CAAC,QAAQ,SAAS,IAAI,GAAG,MAAM,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,QAMpE;IAED;;;;;;OAMG;IACH,IAN2B,CAAC,SAAf,MAAO,KAAM,OACf,CAAC,UACD,KAAK,CAAC,CAAC,CAAC,WACR,KAAK,CAAC,CAAC,CAAC,GAAC,SAAS,eAClB,OAAO,eAAe,EAAE,WAAW,OAAC,QAK9C;IAED;;;OAGG;IACH,YAFW,OAAO,CAAC,KAAK,CAAC,gBADd,OAAO,eAAe,EAAE,WAAW,OAAC,QAM9C;IAsBD
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["node.js"],"names":[],"mappings":"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"}
|
package/delta/ops.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export class TextOp extends list.ListNode {
|
|
|
7
7
|
constructor(insert: string, attributes: FormattingAttributes | null, attribution: d.Attribution | null);
|
|
8
8
|
insert: string;
|
|
9
9
|
attributes: FormattingAttributes | null;
|
|
10
|
-
attribution:
|
|
10
|
+
attribution: {
|
|
11
11
|
insert?: string[] | undefined;
|
|
12
12
|
insertAt?: number | undefined;
|
|
13
13
|
delete?: string[] | undefined;
|
|
@@ -16,7 +16,7 @@ export class TextOp extends list.ListNode {
|
|
|
16
16
|
[x: string]: string[];
|
|
17
17
|
} | undefined;
|
|
18
18
|
attributesAt?: number | undefined;
|
|
19
|
-
}
|
|
19
|
+
} | null;
|
|
20
20
|
/**
|
|
21
21
|
* @return {'insert'}
|
|
22
22
|
*/
|
|
@@ -54,7 +54,7 @@ export class InsertOp<ArrayContent extends unknown> extends list.ListNode {
|
|
|
54
54
|
constructor(insert: Array<ArrayContent>, attributes: FormattingAttributes | null, attribution: d.Attribution | null);
|
|
55
55
|
insert: ArrayContent[];
|
|
56
56
|
attributes: FormattingAttributes | null;
|
|
57
|
-
attribution:
|
|
57
|
+
attribution: {
|
|
58
58
|
insert?: string[] | undefined;
|
|
59
59
|
insertAt?: number | undefined;
|
|
60
60
|
delete?: string[] | undefined;
|
|
@@ -63,7 +63,7 @@ export class InsertOp<ArrayContent extends unknown> extends list.ListNode {
|
|
|
63
63
|
[x: string]: string[];
|
|
64
64
|
} | undefined;
|
|
65
65
|
attributesAt?: number | undefined;
|
|
66
|
-
}
|
|
66
|
+
} | null;
|
|
67
67
|
/**
|
|
68
68
|
* @return {'insert'}
|
|
69
69
|
*/
|
|
@@ -126,7 +126,7 @@ export class RetainOp extends list.ListNode {
|
|
|
126
126
|
constructor(retain: number, attributes: FormattingAttributes | null, attribution: d.Attribution | null);
|
|
127
127
|
retain: number;
|
|
128
128
|
attributes: FormattingAttributes | null;
|
|
129
|
-
attribution:
|
|
129
|
+
attribution: {
|
|
130
130
|
insert?: string[] | undefined;
|
|
131
131
|
insertAt?: number | undefined;
|
|
132
132
|
delete?: string[] | undefined;
|
|
@@ -135,7 +135,7 @@ export class RetainOp extends list.ListNode {
|
|
|
135
135
|
[x: string]: string[];
|
|
136
136
|
} | undefined;
|
|
137
137
|
attributesAt?: number | undefined;
|
|
138
|
-
}
|
|
138
|
+
} | null;
|
|
139
139
|
/**
|
|
140
140
|
* @return {'retain'}
|
|
141
141
|
*/
|
|
@@ -176,7 +176,7 @@ export class ModifyOp<DTypes extends {
|
|
|
176
176
|
constructor(delta: DTypes, attributes: FormattingAttributes | null, attribution: d.Attribution | null);
|
|
177
177
|
modify: DTypes;
|
|
178
178
|
attributes: FormattingAttributes | null;
|
|
179
|
-
attribution:
|
|
179
|
+
attribution: {
|
|
180
180
|
insert?: string[] | undefined;
|
|
181
181
|
insertAt?: number | undefined;
|
|
182
182
|
delete?: string[] | undefined;
|
|
@@ -185,7 +185,7 @@ export class ModifyOp<DTypes extends {
|
|
|
185
185
|
[x: string]: string[];
|
|
186
186
|
} | undefined;
|
|
187
187
|
attributesAt?: number | undefined;
|
|
188
|
-
}
|
|
188
|
+
} | null;
|
|
189
189
|
/**
|
|
190
190
|
* @return {'modify'}
|
|
191
191
|
*/
|
|
@@ -231,7 +231,7 @@ export class MapInsertOp<V, K = string> {
|
|
|
231
231
|
[x: string]: string[];
|
|
232
232
|
} | undefined;
|
|
233
233
|
attributesAt?: number | undefined;
|
|
234
|
-
}
|
|
234
|
+
}>> | null);
|
|
235
235
|
/**
|
|
236
236
|
* @type {K}
|
|
237
237
|
*/
|
|
@@ -244,7 +244,7 @@ export class MapInsertOp<V, K = string> {
|
|
|
244
244
|
* @type {V|undefined}
|
|
245
245
|
*/
|
|
246
246
|
prevValue: V | undefined;
|
|
247
|
-
attribution:
|
|
247
|
+
attribution: {
|
|
248
248
|
insert?: string[] | undefined;
|
|
249
249
|
insertAt?: number | undefined;
|
|
250
250
|
delete?: string[] | undefined;
|
|
@@ -253,7 +253,7 @@ export class MapInsertOp<V, K = string> {
|
|
|
253
253
|
[x: string]: string[];
|
|
254
254
|
} | undefined;
|
|
255
255
|
attributesAt?: number | undefined;
|
|
256
|
-
}
|
|
256
|
+
} | null;
|
|
257
257
|
/**
|
|
258
258
|
* @return {'insert'}
|
|
259
259
|
*/
|
|
@@ -261,7 +261,7 @@ export class MapInsertOp<V, K = string> {
|
|
|
261
261
|
toJSON(): {
|
|
262
262
|
type: "insert";
|
|
263
263
|
value: any;
|
|
264
|
-
attribution:
|
|
264
|
+
attribution: {
|
|
265
265
|
insert?: string[] | undefined;
|
|
266
266
|
insertAt?: number | undefined;
|
|
267
267
|
delete?: string[] | undefined;
|
|
@@ -270,7 +270,7 @@ export class MapInsertOp<V, K = string> {
|
|
|
270
270
|
[x: string]: string[];
|
|
271
271
|
} | undefined;
|
|
272
272
|
attributesAt?: number | undefined;
|
|
273
|
-
}
|
|
273
|
+
} | null;
|
|
274
274
|
};
|
|
275
275
|
/**
|
|
276
276
|
* @return {MapInsertOp<V,K>}
|
|
@@ -300,7 +300,7 @@ export class MapDeleteOp<V, K = string> {
|
|
|
300
300
|
[x: string]: string[];
|
|
301
301
|
} | undefined;
|
|
302
302
|
attributesAt?: number | undefined;
|
|
303
|
-
}
|
|
303
|
+
}>> | null);
|
|
304
304
|
/**
|
|
305
305
|
* @type {K}
|
|
306
306
|
*/
|
|
@@ -309,7 +309,7 @@ export class MapDeleteOp<V, K = string> {
|
|
|
309
309
|
* @type {V|undefined}
|
|
310
310
|
*/
|
|
311
311
|
prevValue: V | undefined;
|
|
312
|
-
attribution:
|
|
312
|
+
attribution: {
|
|
313
313
|
insert?: string[] | undefined;
|
|
314
314
|
insertAt?: number | undefined;
|
|
315
315
|
delete?: string[] | undefined;
|
|
@@ -318,7 +318,7 @@ export class MapDeleteOp<V, K = string> {
|
|
|
318
318
|
[x: string]: string[];
|
|
319
319
|
} | undefined;
|
|
320
320
|
attributesAt?: number | undefined;
|
|
321
|
-
}
|
|
321
|
+
} | null;
|
|
322
322
|
get value(): undefined;
|
|
323
323
|
/**
|
|
324
324
|
* @type {'delete'}
|
|
@@ -326,7 +326,7 @@ export class MapDeleteOp<V, K = string> {
|
|
|
326
326
|
get type(): "delete";
|
|
327
327
|
toJSON(): {
|
|
328
328
|
type: "delete";
|
|
329
|
-
attribution:
|
|
329
|
+
attribution: {
|
|
330
330
|
insert?: string[] | undefined;
|
|
331
331
|
insertAt?: number | undefined;
|
|
332
332
|
delete?: string[] | undefined;
|
|
@@ -335,7 +335,7 @@ export class MapDeleteOp<V, K = string> {
|
|
|
335
335
|
[x: string]: string[];
|
|
336
336
|
} | undefined;
|
|
337
337
|
attributesAt?: number | undefined;
|
|
338
|
-
}
|
|
338
|
+
} | null;
|
|
339
339
|
};
|
|
340
340
|
clone(): MapDeleteOp<V, K>;
|
|
341
341
|
/**
|
|
@@ -378,8 +378,8 @@ export class MapModifyOp<Modifiers extends d.AbstractDelta, K = string> {
|
|
|
378
378
|
*/
|
|
379
379
|
[traits.EqualityTraitSymbol](other: MapModifyOp<Modifiers>): boolean;
|
|
380
380
|
}
|
|
381
|
-
export const $deltaMapChangeJson: s.Schema<
|
|
382
|
-
attribution?:
|
|
381
|
+
export const $deltaMapChangeJson: s.Schema<{
|
|
382
|
+
attribution?: {
|
|
383
383
|
insert?: string[] | undefined;
|
|
384
384
|
insertAt?: number | undefined;
|
|
385
385
|
delete?: string[] | undefined;
|
|
@@ -388,15 +388,14 @@ export const $deltaMapChangeJson: s.Schema<({
|
|
|
388
388
|
[x: string]: string[];
|
|
389
389
|
} | undefined;
|
|
390
390
|
attributesAt?: number | undefined;
|
|
391
|
-
}
|
|
392
|
-
} & {
|
|
391
|
+
} | null | undefined;
|
|
393
392
|
type: "insert";
|
|
394
393
|
value: any;
|
|
395
|
-
}
|
|
394
|
+
} | {
|
|
396
395
|
type: "modify";
|
|
397
396
|
value: any;
|
|
398
|
-
}
|
|
399
|
-
attribution?:
|
|
397
|
+
} | {
|
|
398
|
+
attribution?: {
|
|
400
399
|
insert?: string[] | undefined;
|
|
401
400
|
insertAt?: number | undefined;
|
|
402
401
|
delete?: string[] | undefined;
|
|
@@ -405,10 +404,9 @@ export const $deltaMapChangeJson: s.Schema<({
|
|
|
405
404
|
[x: string]: string[];
|
|
406
405
|
} | undefined;
|
|
407
406
|
attributesAt?: number | undefined;
|
|
408
|
-
}
|
|
409
|
-
} & {
|
|
407
|
+
} | null | undefined;
|
|
410
408
|
type: "delete";
|
|
411
|
-
}
|
|
409
|
+
}>;
|
|
412
410
|
/**
|
|
413
411
|
* @type {s.Schema<MapDeleteOp<any> | DeleteOp>}
|
|
414
412
|
*/
|
package/delta/ops.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ops.d.ts","sourceRoot":"","sources":["ops.js"],"names":[],"mappings":"AA6DA;IACE;;;;OAIG;IACH,oBAJW,MAAM,cACN,oBAAoB,GAAC,IAAI,eACzB,CAAC,CAAC,WAAW,GAAC,IAAI,EAO5B;IAHC,eAAoB;IACpB,wCAA4B;IAC5B;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"ops.d.ts","sourceRoot":"","sources":["ops.js"],"names":[],"mappings":"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"}
|
package/delta/t2.d.ts
ADDED
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
export function transformResult<DeltaA extends s.Unwrap<(<NodeNameSchema extends s.Schema<string> | string | Array<string> = s.Schema<any>, AttrsSchema extends s.Schema<{
|
|
2
|
+
[key: string | number]: any;
|
|
3
|
+
}> | {
|
|
4
|
+
[key: string | number]: any;
|
|
5
|
+
} = s.Schema<{}>, ChildrenSchema extends unknown = s.Schema<never>, HasText extends boolean = false, Recursive extends boolean = false>({ name, attrs, children, text, recursive }: {
|
|
6
|
+
name?: NodeNameSchema | null | undefined;
|
|
7
|
+
attrs?: AttrsSchema | null | undefined;
|
|
8
|
+
children?: ChildrenSchema | null | undefined;
|
|
9
|
+
text?: HasText | undefined;
|
|
10
|
+
recursive?: Recursive | undefined;
|
|
11
|
+
}) => [s.Unwrap<s.ReadSchema<NodeNameSchema>>, s.Unwrap<s.ReadSchema<AttrsSchema>>, s.Unwrap<s.ReadSchema<ChildrenSchema>>] extends [infer NodeName, infer Attrs, infer Children] ? s.Schema<Delta<NodeName, Attrs, Children | (Recursive extends true ? RecursiveDelta<NodeName, Attrs, Children, HasText extends true ? string : never> : never), HasText extends true ? string : never>> : never)> | null, DeltaB extends s.Unwrap<(<NodeNameSchema extends s.Schema<string> | string | Array<string> = s.Schema<any>, AttrsSchema extends s.Schema<{
|
|
12
|
+
[key: string | number]: any;
|
|
13
|
+
}> | {
|
|
14
|
+
[key: string | number]: any;
|
|
15
|
+
} = s.Schema<{}>, ChildrenSchema extends unknown = s.Schema<never>, HasText extends boolean = false, Recursive extends boolean = false>({ name, attrs, children, text, recursive }: {
|
|
16
|
+
name?: NodeNameSchema | null | undefined;
|
|
17
|
+
attrs?: AttrsSchema | null | undefined;
|
|
18
|
+
children?: ChildrenSchema | null | undefined;
|
|
19
|
+
text?: HasText | undefined;
|
|
20
|
+
recursive?: Recursive | undefined;
|
|
21
|
+
}) => [s.Unwrap<s.ReadSchema<NodeNameSchema>>, s.Unwrap<s.ReadSchema<AttrsSchema>>, s.Unwrap<s.ReadSchema<ChildrenSchema>>] extends [infer NodeName, infer Attrs, infer Children] ? s.Schema<Delta<NodeName, Attrs, Children | (Recursive extends true ? RecursiveDelta<NodeName, Attrs, Children, HasText extends true ? string : never> : never), HasText extends true ? string : never>> : never)> | null>(a: DeltaA, b: DeltaB): TransformResult<DeltaA, DeltaB>;
|
|
22
|
+
export const transformResultEmpty: TransformResult<null, null>;
|
|
23
|
+
/**
|
|
24
|
+
* @template {any} State
|
|
25
|
+
* @template {delta.DeltaAny} DeltaA
|
|
26
|
+
* @template {delta.DeltaAny} DeltaB
|
|
27
|
+
* @typedef {object} TransformerDef
|
|
28
|
+
* @property {s.Schema<DeltaA>} TransformerDef.$in
|
|
29
|
+
* @property {s.Schema<DeltaB>} TransformerDef.$out
|
|
30
|
+
* @property {function (this: Template<State,DeltaA,DeltaB>): State} TransformerDef.state
|
|
31
|
+
* @property {(deltaIn:NoInfer<DeltaA>,s:NoInfer<State>) => TransformResult<NoInfer<DeltaA>?,NoInfer<DeltaB>?>} TransformerDef.applyA
|
|
32
|
+
* @property {(deltaOut:NoInfer<DeltaB>,s:NoInfer<State>) => TransformResult<NoInfer<DeltaA>?,NoInfer<DeltaB>?>} TransformerDef.applyB
|
|
33
|
+
*/
|
|
34
|
+
/**
|
|
35
|
+
* A Delta Transformer ensures that it keeps two sources A and B in-sync, even if they use a
|
|
36
|
+
* different update format.
|
|
37
|
+
*
|
|
38
|
+
* @template {any} State
|
|
39
|
+
* @template {delta.DeltaAny} DeltaA
|
|
40
|
+
* @template {delta.DeltaAny} DeltaB
|
|
41
|
+
*/
|
|
42
|
+
export class Transformer<State extends unknown, DeltaA extends delta.DeltaAny, DeltaB extends delta.DeltaAny> {
|
|
43
|
+
/**
|
|
44
|
+
* @param {Template<State,DeltaA,DeltaB>} t
|
|
45
|
+
* @param {State} s
|
|
46
|
+
*/
|
|
47
|
+
constructor(t: Template<State, DeltaA, DeltaB>, s: State);
|
|
48
|
+
t: Template<State, DeltaA, DeltaB>;
|
|
49
|
+
_state: State;
|
|
50
|
+
/**
|
|
51
|
+
* Pending a op, for internal use only
|
|
52
|
+
* @type {DeltaA?}
|
|
53
|
+
*/
|
|
54
|
+
_pa: DeltaA | null;
|
|
55
|
+
/**
|
|
56
|
+
* Pending a op, for internal use only
|
|
57
|
+
* @type {DeltaB?}
|
|
58
|
+
*/
|
|
59
|
+
_pb: DeltaB | null;
|
|
60
|
+
/**
|
|
61
|
+
* Whether this transformer value has been initially consumebd by the parent transformer.
|
|
62
|
+
*/
|
|
63
|
+
_init: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* @type {Transformer<any,any,any>?}
|
|
66
|
+
*/
|
|
67
|
+
parent: Transformer<any, any, any> | null;
|
|
68
|
+
/**
|
|
69
|
+
* @param {DeltaA} deltaA
|
|
70
|
+
* @return {TransformResult<DeltaA?,DeltaB?>}
|
|
71
|
+
*/
|
|
72
|
+
applyA(deltaA: DeltaA): TransformResult<DeltaA | null, DeltaB | null>;
|
|
73
|
+
/**
|
|
74
|
+
* @param {DeltaB} deltaB
|
|
75
|
+
* @return {TransformResult<DeltaA?,DeltaB?>}
|
|
76
|
+
*/
|
|
77
|
+
applyB(deltaB: DeltaB): TransformResult<DeltaA | null, DeltaB | null>;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* @template State
|
|
81
|
+
* @template {delta.DeltaAny} DeltaA
|
|
82
|
+
* @template {delta.DeltaAny} DeltaB
|
|
83
|
+
*/
|
|
84
|
+
export class Template<State, DeltaA extends delta.DeltaAny, DeltaB extends delta.DeltaAny> {
|
|
85
|
+
/**
|
|
86
|
+
* @param {TransformerDef<State,DeltaA,DeltaB>} def
|
|
87
|
+
*/
|
|
88
|
+
constructor({ $in, $out, state, applyA, applyB }: TransformerDef<State, DeltaA, DeltaB>);
|
|
89
|
+
/**
|
|
90
|
+
* @type {s.Schema<DeltaA>}
|
|
91
|
+
*/
|
|
92
|
+
$in: s.Schema<DeltaA>;
|
|
93
|
+
/**
|
|
94
|
+
* @type {s.Schema<DeltaB>}
|
|
95
|
+
*/
|
|
96
|
+
$out: s.Schema<DeltaB>;
|
|
97
|
+
/**
|
|
98
|
+
* @type {() => State}
|
|
99
|
+
*/
|
|
100
|
+
_state: () => State;
|
|
101
|
+
/**
|
|
102
|
+
* @type {typeof applyA}
|
|
103
|
+
*/
|
|
104
|
+
_applyA: (deltaIn: NoInfer<DeltaA>, s: NoInfer<State>) => TransformResult<NoInfer<DeltaA> | null, NoInfer<DeltaB> | null>;
|
|
105
|
+
/**
|
|
106
|
+
* @type {typeof applyB}
|
|
107
|
+
*/
|
|
108
|
+
_applyB: (deltaOut: NoInfer<DeltaB>, s: NoInfer<State>) => TransformResult<NoInfer<DeltaA> | null, NoInfer<DeltaB> | null>;
|
|
109
|
+
/**
|
|
110
|
+
* Cache for stateless transformers.
|
|
111
|
+
*
|
|
112
|
+
* @type {Transformer<State,DeltaA,DeltaB>?}
|
|
113
|
+
*/
|
|
114
|
+
_tr: Transformer<State, DeltaA, DeltaB> | null;
|
|
115
|
+
/**
|
|
116
|
+
* @template {delta.DeltaAny} R
|
|
117
|
+
* @param {($d: s.Schema<DeltaB>) => Template<any,DeltaB,R>} t
|
|
118
|
+
* @return {Template<any,DeltaA,R>}
|
|
119
|
+
*/
|
|
120
|
+
pipe<R extends delta.DeltaAny>(t: ($d: s.Schema<DeltaB>) => Template<any, DeltaB, R>): Template<any, DeltaA, R>;
|
|
121
|
+
init(): Transformer<State, DeltaA, DeltaB>;
|
|
122
|
+
}
|
|
123
|
+
export function $template<DeltaA extends delta.DeltaAny, DeltaB extends delta.DeltaAny>($deltaA: s.Schema<DeltaA>, $deltaB: s.Schema<DeltaB>): s.Schema<Template<any, DeltaA, DeltaB>>;
|
|
124
|
+
export const $templateAny: s.Schema<Template<any, any, any>>;
|
|
125
|
+
export function maybeFixedToTemplate<MaybeFixed>(maybeFixed: MaybeFixed): MaybeFixed extends Template<any, any, delta.Delta> ? (Extract<MaybeFixed, Template<any, any, any>>) : Template<any, any, MaybeFixed extends delta.Delta ? Extract<MaybeFixed, delta.Delta> : delta.Array<MaybeFixed[keyof MaybeFixed]>>;
|
|
126
|
+
export function transformStatic<DeltaA extends delta.AbstractDelta, Tr extends Template<any, DeltaA, any>>(_$deltaA: s.Schema<DeltaA>, transformer: Tr): <DA extends DeltaA>($d: s.Schema<DA>) => Tr extends Template<any, any, infer DeltaB> ? Template<any, DA, DeltaB> : never;
|
|
127
|
+
export function transform<DeltaA extends delta.AbstractDelta, TF extends <DA extends DeltaA>($deltaA: s.Schema<DA>) => Template<any, DA, any>>(_$deltaA: s.Schema<DeltaA>, transformerFactory: TF): TF;
|
|
128
|
+
export function pipe<DeltaA extends delta.AbstractDelta, DeltaB extends delta.AbstractDelta, DeltaC extends delta.AbstractDelta>(t1: ($s: s.Schema<DeltaA>) => Template<any, DeltaA, DeltaB>, t2: ($s: s.Schema<DeltaB>) => Template<any, DeltaB, DeltaC>): ($d: s.Schema<DeltaA>) => Template<any, DeltaA, DeltaC>;
|
|
129
|
+
export function template<State extends unknown, DeltaIn extends s.Unwrap<typeof delta.$delta>, DeltaOut extends s.Unwrap<typeof delta.$delta>>(def: TransformerDef<State, DeltaIn, DeltaOut>): Template<State, DeltaIn, DeltaOut>;
|
|
130
|
+
export function fixed<FixedContent>(fixedContent: FixedContent): Template<any, any, FixedContent extends delta.AbstractDelta ? FixedContent : delta.Value<FixedContent>>;
|
|
131
|
+
export function map<T extends {
|
|
132
|
+
[key: string]: any;
|
|
133
|
+
}>(definition: T): MapDefToTemplate<T> extends Template<any, infer A, infer B> ? Template<any, A, B> : never;
|
|
134
|
+
export function array<T extends Array<any>>(definition: T): Template<any, AnyArrayToTemplate<T>[number] extends Template<any, infer DeltaA, any> ? DeltaA : never, delta.Array<AnyArrayToTemplate<T>[number] extends Template<any, any, infer DeltaB> ? delta.ValueUnwrap<DeltaB> : never>>;
|
|
135
|
+
export function node<NodeName extends string, Attrs extends {
|
|
136
|
+
[key: string]: any;
|
|
137
|
+
} | Template<any, any, delta.Map<{
|
|
138
|
+
[key: string]: any;
|
|
139
|
+
}>>, Children extends Template<any, any, delta.Array<any, any>> | Array<any>>(name: NodeName, attributes: Attrs, children: Children): Template<any, MapOrMapDefToTemplate<Attrs> extends Template<any, infer A, any> ? A : never, delta.Node<NodeName, MapOrMapDefToTemplate<Attrs> extends Template<any, any, delta.Map<infer M>> ? M : never, MaybeFixedTemplateToTemplate<Children> extends Template<any, any, delta.Array<infer BChildren, any>> ? BChildren : never, any>>;
|
|
140
|
+
export function query<Path extends Array<string>>(...path: Path): <DA extends PathToDelta<Path>>($in: s.Schema<DA>) => Template<any, DA, delta.Value<QueryFollowPath<DA, Path>>>;
|
|
141
|
+
export function id<Delta extends delta.AbstractDelta>($in: s.Schema<Delta>): Template<null, Delta, Delta>;
|
|
142
|
+
/**
|
|
143
|
+
* Creates a transformer template after receiving schema for DeltaA.
|
|
144
|
+
*/
|
|
145
|
+
export type TransformerFactory<DeltaA extends delta.DeltaAny> = <DA extends DeltaA>($deltaA: s.Schema<DA>) => Template<any, DA, any>;
|
|
146
|
+
export type DeltaBFromTransformerFactory<T extends TransformerFactory<any>, DeltaA extends delta.DeltaAny> = T extends (($deltaA: s.Schema<DeltaA>) => Template<any, DeltaA, infer DeltaB>) ? DeltaB : never;
|
|
147
|
+
export type TransformResult<DeltaA extends delta.DeltaAny | null = delta.DeltaAny | null, DeltaB extends delta.DeltaAny | null = delta.DeltaAny | null> = {
|
|
148
|
+
a: DeltaA;
|
|
149
|
+
b: DeltaB;
|
|
150
|
+
};
|
|
151
|
+
export type TransformerDef<State extends unknown, DeltaA extends delta.DeltaAny, DeltaB extends delta.DeltaAny> = {
|
|
152
|
+
$in: s.Schema<DeltaA>;
|
|
153
|
+
$out: s.Schema<DeltaB>;
|
|
154
|
+
state: (this: Template<State, DeltaA, DeltaB>) => State;
|
|
155
|
+
applyA: (deltaIn: NoInfer<DeltaA>, s: NoInfer<State>) => TransformResult<NoInfer<DeltaA> | null, NoInfer<DeltaB> | null>;
|
|
156
|
+
applyB: (deltaOut: NoInfer<DeltaB>, s: NoInfer<State>) => TransformResult<NoInfer<DeltaA> | null, NoInfer<DeltaB> | null>;
|
|
157
|
+
};
|
|
158
|
+
export type MaybeFixedTemplate<DeltaA extends delta.DeltaAny, DeltaB extends delta.DeltaAny> = Template<any, DeltaA, DeltaB> | (DeltaB extends delta.Map<infer MKV> ? (MKV | DeltaB) : (DeltaB extends delta.Array<infer MArr> ? (MArr | DeltaB) : DeltaB));
|
|
159
|
+
export type UnwrapTemplateForArray<X> = X extends Template<any, any, infer D> ? (D extends delta.Value<infer V> ? V : D) : X;
|
|
160
|
+
export type MaybeFixedTemplateToTemplate<MaybeFixed extends unknown> = MaybeFixed extends Template<any, any, any> ? MaybeFixed : Template<any, any, MaybeFixed extends delta.AbstractDelta ? MaybeFixed : (MaybeFixed extends Array<any> ? delta.Array<UnwrapTemplateForArray<MaybeFixed[number]>> : (MaybeFixed extends {
|
|
161
|
+
[key: string]: any;
|
|
162
|
+
} ? delta.Map<MaybeFixed> : never))>;
|
|
163
|
+
export type AnyToTemplate<MaybeTemplate> = [MaybeTemplate] extends [Template<any, any, any>] ? MaybeTemplate : Template<any, any, [MaybeTemplate] extends [delta.AbstractDelta] ? MaybeTemplate : delta.Value<MaybeTemplate>>;
|
|
164
|
+
export type AnyMapToTemplate<MaybeTemplateMap extends {
|
|
165
|
+
[key: string]: any;
|
|
166
|
+
}> = { [K in keyof MaybeTemplateMap]: AnyToTemplate<MaybeTemplateMap[K]>; };
|
|
167
|
+
export type AnyArrayToTemplate<MaybeTemplateArray extends Array<any>> = { [K in keyof MaybeTemplateArray]: AnyToTemplate<MaybeTemplateArray[K]>; };
|
|
168
|
+
export type MapDefToTemplate<T extends {
|
|
169
|
+
[key: string]: any;
|
|
170
|
+
}> = Template<any, AnyMapToTemplate<T>[keyof T] extends Template<any, infer DeltaA, any> ? DeltaA : never, delta.Map<{ [K in keyof T]: AnyToTemplate<T[K]> extends Template<any, any, infer DeltaB> ? (DeltaB extends delta.Value<infer V> ? V : DeltaB) : AnyToTemplate<T[K]>; }>>;
|
|
171
|
+
export type MapOrMapDefToTemplate<T extends {
|
|
172
|
+
[key: string]: any;
|
|
173
|
+
} | Template<any, any, delta.Map<any>>> = T extends Template<any, any, any> ? T : MapDefToTemplate<T>;
|
|
174
|
+
export type _FollowPath<KV extends {
|
|
175
|
+
[k: string]: any;
|
|
176
|
+
}> = delta.Map<KV> | delta.Node<any, KV, any, any>;
|
|
177
|
+
export type QueryFollowPath<D extends unknown, Path extends string[]> = Path extends [] ? D : Path extends [infer P, ...infer PRest] ? (P extends string ? (D extends _AttrDeltaType<{ [K in P]: infer V; }> ? QueryFollowPath<V, PRest extends string[] ? PRest : never> : never) : never) : never;
|
|
178
|
+
export type _AttrDeltaType<Attrs extends {
|
|
179
|
+
[k: string]: any;
|
|
180
|
+
}> = delta.Map<Partial<Attrs>> | delta.Node<any, Partial<Attrs>, any, any>;
|
|
181
|
+
export type PathToDelta<Path extends Array<string>> = Path extends [infer P, ...infer PRest] ? (_AttrDeltaType<{ [K in (P extends string ? P : any)]: PathToDelta<PRest extends Array<string> ? PRest : any>; }>) : any;
|
|
182
|
+
import * as s from '../schema.js';
|
|
183
|
+
import * as delta from './d2.js';
|
|
184
|
+
//# sourceMappingURL=t2.d.ts.map
|