lib0 0.2.112 → 0.2.115-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/README.md +1 -1
- package/broadcastchannel.js +1 -1
- package/buffer.d.ts +3 -3
- package/buffer.d.ts.map +1 -1
- package/buffer.js +1 -1
- package/coverage/tmp/coverage-27667-1761218530660-0.json +1 -0
- package/coverage/tmp/{coverage-20055-1752683207886-0.json → coverage-27668-1761218485882-0.json} +1 -1
- package/crypto/aes-gcm.d.ts +4 -4
- package/crypto/aes-gcm.d.ts.map +1 -1
- package/crypto/aes-gcm.js +6 -6
- package/crypto/common.d.ts +1 -1
- package/crypto/common.d.ts.map +1 -1
- package/crypto/common.js +1 -1
- package/crypto/ecdsa.d.ts +2 -2
- package/crypto/ecdsa.d.ts.map +1 -1
- package/crypto/ecdsa.js +4 -4
- package/crypto/rsa-oaep.d.ts +2 -2
- package/crypto/rsa-oaep.d.ts.map +1 -1
- package/crypto/rsa-oaep.js +3 -3
- package/decoding.d.ts +27 -14
- package/decoding.d.ts.map +1 -1
- package/decoding.js +12 -8
- package/delta/abstract-array.d.ts +166 -0
- package/delta/abstract-array.d.ts.map +1 -0
- package/delta/abstract-array.js +421 -0
- package/delta/abstract.d.ts +69 -0
- package/delta/abstract.d.ts.map +1 -0
- package/delta/abstract.js +102 -0
- package/delta/array.d.ts +23 -0
- package/delta/array.d.ts.map +1 -0
- package/delta/array.js +45 -0
- package/delta/array.test.d.ts +2 -0
- package/delta/array.test.d.ts.map +1 -0
- package/delta/binding.d.ts +105 -0
- package/delta/binding.d.ts.map +1 -0
- package/delta/binding.js +369 -0
- package/delta/binding.test.d.ts +5 -0
- package/delta/binding.test.d.ts.map +1 -0
- package/delta/d2.d.ts +705 -0
- package/delta/d2.d.ts.map +1 -0
- package/delta/d2.js +1309 -0
- package/delta/d2.test.d.ts +15 -0
- package/delta/d2.test.d.ts.map +1 -0
- package/delta/index.d.ts +14 -0
- package/delta/index.d.ts.map +1 -0
- package/delta/index.js +79 -0
- package/delta/map.d.ts +230 -0
- package/delta/map.d.ts.map +1 -0
- package/delta/map.js +304 -0
- package/delta/node.d.ts +119 -0
- package/delta/node.d.ts.map +1 -0
- package/delta/node.js +183 -0
- package/delta/node.test.d.ts +4 -0
- package/delta/node.test.d.ts.map +1 -0
- package/delta/ops.d.ts +466 -0
- package/delta/ops.d.ts.map +1 -0
- package/delta/ops.js +544 -0
- package/delta/readme.md +129 -0
- package/delta/text.d.ts +43 -0
- package/delta/text.d.ts.map +1 -0
- package/delta/text.js +54 -0
- package/delta/text.test.d.ts +6 -0
- package/delta/text.test.d.ts.map +1 -0
- package/delta/transformer.d.ts +164 -0
- package/delta/transformer.d.ts.map +1 -0
- package/delta/transformer.js +888 -0
- package/delta/transformer.test.d.ts +13 -0
- package/delta/transformer.test.d.ts.map +1 -0
- package/delta/value.d.ts +84 -0
- package/delta/value.d.ts.map +1 -0
- package/delta/value.js +168 -0
- package/dist/abstract-array.cjs +433 -0
- package/dist/abstract-array.cjs.map +1 -0
- package/dist/abstract.cjs +122 -0
- package/dist/abstract.cjs.map +1 -0
- package/dist/aes-gcm.cjs +12 -12
- package/dist/aes-gcm.cjs.map +1 -1
- package/dist/array.cjs +60 -17
- package/dist/array.cjs.map +1 -1
- package/dist/array2.cjs +26 -0
- package/dist/array2.cjs.map +1 -0
- package/dist/binding.cjs +398 -0
- package/dist/binding.cjs.map +1 -0
- package/dist/{broadcastchannel-2c4b0a1c.cjs → broadcastchannel-b4eaea6e.cjs} +4 -4
- package/dist/broadcastchannel-b4eaea6e.cjs.map +1 -0
- package/dist/broadcastchannel.cjs +12 -12
- package/dist/{buffer-a74f7330.cjs → buffer-adc4e6ea.cjs} +7 -7
- package/dist/buffer-adc4e6ea.cjs.map +1 -0
- package/dist/buffer.cjs +11 -11
- package/dist/buffer.d.ts +3 -3
- package/dist/buffer.d.ts.map +1 -1
- package/dist/cache.cjs +6 -6
- package/dist/common.cjs +1 -1
- package/dist/common.cjs.map +1 -1
- package/dist/component.cjs +14 -9
- package/dist/component.cjs.map +1 -1
- package/dist/crypto/aes-gcm.d.ts +4 -4
- package/dist/crypto/aes-gcm.d.ts.map +1 -1
- package/dist/crypto/common.d.ts +1 -1
- package/dist/crypto/common.d.ts.map +1 -1
- package/dist/crypto/ecdsa.d.ts +2 -2
- package/dist/crypto/ecdsa.d.ts.map +1 -1
- package/dist/crypto/rsa-oaep.d.ts +2 -2
- package/dist/crypto/rsa-oaep.d.ts.map +1 -1
- package/dist/d2.cjs +1347 -0
- package/dist/d2.cjs.map +1 -0
- package/dist/{decoding-2b136346.cjs → decoding-50b9ce38.cjs} +18 -14
- package/dist/decoding-50b9ce38.cjs.map +1 -0
- package/dist/decoding.cjs +6 -6
- package/dist/decoding.d.ts +27 -14
- package/dist/decoding.d.ts.map +1 -1
- package/dist/delta/abstract-array.d.ts +166 -0
- package/dist/delta/abstract-array.d.ts.map +1 -0
- package/dist/delta/abstract.d.ts +69 -0
- package/dist/delta/abstract.d.ts.map +1 -0
- package/dist/delta/array.d.ts +23 -0
- package/dist/delta/array.d.ts.map +1 -0
- package/dist/delta/array.test.d.ts +2 -0
- package/dist/delta/array.test.d.ts.map +1 -0
- package/dist/delta/binding.d.ts +105 -0
- package/dist/delta/binding.d.ts.map +1 -0
- package/dist/delta/binding.test.d.ts +5 -0
- package/dist/delta/binding.test.d.ts.map +1 -0
- package/dist/delta/d2.d.ts +705 -0
- package/dist/delta/d2.d.ts.map +1 -0
- package/dist/delta/d2.test.d.ts +15 -0
- package/dist/delta/d2.test.d.ts.map +1 -0
- package/dist/delta/index.d.ts +14 -0
- package/dist/delta/index.d.ts.map +1 -0
- package/dist/delta/map.d.ts +230 -0
- package/dist/delta/map.d.ts.map +1 -0
- package/dist/delta/node.d.ts +119 -0
- package/dist/delta/node.d.ts.map +1 -0
- package/dist/delta/node.test.d.ts +4 -0
- package/dist/delta/node.test.d.ts.map +1 -0
- package/dist/delta/ops.d.ts +466 -0
- package/dist/delta/ops.d.ts.map +1 -0
- package/dist/delta/text.d.ts +43 -0
- package/dist/delta/text.d.ts.map +1 -0
- package/dist/delta/text.test.d.ts +6 -0
- package/dist/delta/text.test.d.ts.map +1 -0
- package/dist/delta/transformer.d.ts +164 -0
- package/dist/delta/transformer.d.ts.map +1 -0
- package/dist/delta/transformer.test.d.ts +13 -0
- package/dist/delta/transformer.test.d.ts.map +1 -0
- package/dist/delta/value.d.ts +84 -0
- package/dist/delta/value.d.ts.map +1 -0
- package/dist/{diff-77c4cf8e.cjs → diff-f0776c15.cjs} +2 -2
- package/dist/{diff-77c4cf8e.cjs.map → diff-f0776c15.cjs.map} +1 -1
- package/dist/diff.cjs +3 -3
- package/dist/{dom-16daf1a0.cjs → dom-2b123630.cjs} +31 -2
- package/dist/dom-2b123630.cjs.map +1 -0
- package/dist/dom.cjs +17 -2
- package/dist/dom.cjs.map +1 -1
- package/dist/dom.d.ts +17 -0
- package/dist/dom.d.ts.map +1 -1
- package/dist/ecdsa.cjs +4 -4
- package/dist/ecdsa.cjs.map +1 -1
- package/dist/{encoding-1acb59c4.cjs → encoding-7f85922c.cjs} +5 -5
- package/dist/encoding-7f85922c.cjs.map +1 -0
- package/dist/encoding.cjs +4 -4
- package/dist/encoding.d.ts +6 -6
- package/dist/encoding.d.ts.map +1 -1
- package/dist/{environment-2de08e0e.cjs → environment-90227ead.cjs} +4 -4
- package/dist/{environment-2de08e0e.cjs.map → environment-90227ead.cjs.map} +1 -1
- package/dist/environment.cjs +5 -5
- package/dist/{error-8582d695.cjs → error-0c1f634f.cjs} +10 -2
- package/dist/error-0c1f634f.cjs.map +1 -0
- package/dist/error.cjs +2 -1
- package/dist/error.cjs.map +1 -1
- package/dist/error.d.ts +1 -0
- package/dist/error.d.ts.map +1 -1
- package/dist/{eventloop-b299a889.cjs → eventloop-a0168106.cjs} +2 -2
- package/dist/{eventloop-b299a889.cjs.map → eventloop-a0168106.cjs.map} +1 -1
- package/dist/eventloop.cjs +3 -3
- package/dist/{function-09b8292c.cjs → function-e7d18feb.cjs} +2 -2
- package/dist/{function-09b8292c.cjs.map → function-e7d18feb.cjs.map} +1 -1
- package/dist/function.cjs +2 -2
- package/dist/index.cjs +23 -22
- package/dist/index.cjs.map +1 -1
- package/dist/index2.cjs +71 -0
- package/dist/index2.cjs.map +1 -0
- package/dist/{indexeddb-0cbb4d6f.cjs → indexeddb-46d1e737.cjs} +3 -3
- package/dist/{indexeddb-0cbb4d6f.cjs.map → indexeddb-46d1e737.cjs.map} +1 -1
- package/dist/indexeddb.cjs +5 -5
- package/dist/indexeddbV2.cjs +2 -1
- package/dist/indexeddbV2.cjs.map +1 -1
- package/dist/jwt.cjs +12 -12
- package/dist/list.cjs +39 -12
- package/dist/list.cjs.map +1 -1
- package/dist/list.d.ts +13 -3
- package/dist/list.d.ts.map +1 -1
- package/dist/logging.cjs +11 -9
- package/dist/logging.cjs.map +1 -1
- package/dist/logging.common.cjs +7 -7
- package/dist/logging.node.cjs +7 -7
- package/dist/{map-0dabcc55.cjs → map-24d263c0.cjs} +7 -1
- package/dist/map-24d263c0.cjs.map +1 -0
- package/dist/map.cjs +314 -7
- package/dist/map.cjs.map +1 -1
- package/dist/map.d.ts +1 -0
- package/dist/map.d.ts.map +1 -1
- package/dist/map2.cjs +15 -0
- package/dist/map2.cjs.map +1 -0
- package/dist/{math-08e068f9.cjs → math-96d5e8c4.cjs} +4 -2
- package/dist/math-96d5e8c4.cjs.map +1 -0
- package/dist/math.cjs +1 -1
- package/dist/math.d.ts.map +1 -1
- package/dist/metric.cjs +1 -1
- package/dist/node.cjs +206 -0
- package/dist/node.cjs.map +1 -0
- package/dist/{number-466d8922.cjs → number-1fb57bba.cjs} +2 -2
- package/dist/{number-466d8922.cjs.map → number-1fb57bba.cjs.map} +1 -1
- package/dist/number.cjs +2 -2
- package/dist/{object-491858d1.cjs → object-18980796.cjs} +12 -2
- package/dist/object-18980796.cjs.map +1 -0
- package/dist/object.cjs +3 -1
- package/dist/object.cjs.map +1 -1
- package/dist/object.d.ts +3 -0
- package/dist/object.d.ts.map +1 -1
- package/dist/observable.cjs +1 -1
- package/dist/ops.cjs +575 -0
- package/dist/ops.cjs.map +1 -0
- package/dist/patience.cjs +2 -2
- package/dist/performance.node.cjs +4 -4
- package/dist/pledge.cjs +2 -1
- package/dist/pledge.cjs.map +1 -1
- package/dist/{prng-24dfe0bf.cjs → prng-004c76e8.cjs} +5 -5
- package/dist/{prng-24dfe0bf.cjs.map → prng-004c76e8.cjs.map} +1 -1
- package/dist/prng.cjs +12 -12
- package/dist/prng.d.ts +1 -1
- package/dist/prng.d.ts.map +1 -1
- package/dist/{promise-7d13a97c.cjs → promise-cda7b9bb.cjs} +2 -2
- package/dist/{promise-7d13a97c.cjs.map → promise-cda7b9bb.cjs.map} +1 -1
- package/dist/promise.cjs +3 -3
- package/dist/rabin-gf2-polynomial.cjs +11 -11
- package/dist/rabin-uncached.cjs +11 -11
- package/dist/rabin.cjs +11 -11
- package/dist/random.cjs +1 -1
- package/dist/rsa-oaep.cjs +3 -3
- package/dist/rsa-oaep.cjs.map +1 -1
- package/dist/schema.cjs +572 -167
- package/dist/schema.cjs.map +1 -1
- package/dist/schema.d.ts +326 -122
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.test.d.ts +5 -0
- package/dist/schema.test.d.ts.map +1 -1
- package/dist/{sort-b8702761.cjs → sort-812cc211.cjs} +2 -2
- package/dist/{sort-b8702761.cjs.map → sort-812cc211.cjs.map} +1 -1
- package/dist/sort.cjs +2 -2
- package/dist/{statistics-c2316dca.cjs → statistics-65f6114b.cjs} +2 -2
- package/dist/{statistics-c2316dca.cjs.map → statistics-65f6114b.cjs.map} +1 -1
- package/dist/statistics.cjs +2 -2
- package/dist/{string-b2827a90.cjs → string-fddc5f8b.cjs} +3 -3
- package/dist/string-fddc5f8b.cjs.map +1 -0
- package/dist/string.cjs +1 -1
- package/dist/string.d.ts +3 -3
- package/dist/string.d.ts.map +1 -1
- package/dist/testing.cjs +16 -16
- package/dist/text.cjs +79 -0
- package/dist/text.cjs.map +1 -0
- package/dist/{time-bc2081b9.cjs → time-d8438852.cjs} +2 -2
- package/dist/{time-bc2081b9.cjs.map → time-d8438852.cjs.map} +1 -1
- package/dist/time.cjs +2 -2
- package/dist/traits.cjs +22 -0
- package/dist/traits.cjs.map +1 -1
- package/dist/traits.d.ts +1 -0
- package/dist/traits.d.ts.map +1 -1
- package/dist/traits.test.d.ts.map +1 -1
- package/dist/transformer.cjs +930 -0
- package/dist/transformer.cjs.map +1 -0
- package/dist/url.cjs +2 -1
- package/dist/url.cjs.map +1 -1
- package/dist/value.cjs +187 -0
- package/dist/value.cjs.map +1 -0
- package/dist/webcrypto.d.ts +1 -1
- package/dist/webcrypto.d.ts.map +1 -1
- package/dist/{websocket-40a601d4.cjs → websocket-b073d0fc.cjs} +3 -3
- package/dist/{websocket-40a601d4.cjs.map → websocket-b073d0fc.cjs.map} +1 -1
- package/dist/websocket.cjs +4 -4
- package/dom.d.ts +17 -0
- package/dom.d.ts.map +1 -1
- package/dom.js +21 -0
- package/encoding.d.ts +6 -6
- package/encoding.d.ts.map +1 -1
- package/encoding.js +1 -1
- package/error.d.ts +1 -0
- package/error.d.ts.map +1 -1
- package/error.js +6 -0
- package/list.d.ts +13 -3
- package/list.d.ts.map +1 -1
- package/list.js +36 -8
- package/map.d.ts +1 -0
- package/map.d.ts.map +1 -1
- package/map.js +6 -0
- package/math.d.ts.map +1 -1
- package/math.js +3 -1
- package/object.d.ts +3 -0
- package/object.d.ts.map +1 -1
- package/object.js +9 -1
- package/package.json +9 -3
- package/prng.d.ts +1 -1
- package/prng.d.ts.map +1 -1
- package/prng.js +1 -1
- package/schema.d.ts +326 -122
- package/schema.d.ts.map +1 -1
- package/schema.js +513 -141
- package/schema.test.d.ts +5 -0
- package/schema.test.d.ts.map +1 -1
- package/string.d.ts +3 -3
- package/string.d.ts.map +1 -1
- package/string.js +2 -2
- package/test.html +1 -0
- package/test.js +13 -1
- package/traits.d.ts +1 -0
- package/traits.d.ts.map +1 -1
- package/traits.js +21 -0
- package/traits.test.d.ts.map +1 -1
- package/webcrypto.d.ts +1 -1
- package/webcrypto.d.ts.map +1 -1
- package/coverage/tmp/coverage-20054-1752683240888-0.json +0 -1
- package/dist/broadcastchannel-2c4b0a1c.cjs.map +0 -1
- package/dist/buffer-a74f7330.cjs.map +0 -1
- package/dist/decoding-2b136346.cjs.map +0 -1
- package/dist/dom-16daf1a0.cjs.map +0 -1
- package/dist/encoding-1acb59c4.cjs.map +0 -1
- package/dist/error-8582d695.cjs.map +0 -1
- package/dist/map-0dabcc55.cjs.map +0 -1
- package/dist/math-08e068f9.cjs.map +0 -1
- package/dist/object-491858d1.cjs.map +0 -1
- package/dist/string-b2827a90.cjs.map +0 -1
package/delta/text.js
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import * as s from '../schema.js'
|
|
2
|
+
import { AbstractDeltaArrayBuilder } from './abstract-array.js'
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* @template Embeds
|
|
6
|
+
* @typedef {import('./abstract-array.js').AbstractDeltaArray<'text',import('./ops.js').DeltaTextOps<Embeds>>} DeltaText
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* @template {any} Embeds
|
|
11
|
+
* @extends {AbstractDeltaArrayBuilder<'text',import('./ops.js').DeltaTextOps<Embeds>>}
|
|
12
|
+
*/
|
|
13
|
+
export class DeltaTextBuilder extends AbstractDeltaArrayBuilder {
|
|
14
|
+
/**
|
|
15
|
+
* @param {s.Schema<Embeds>} $embeds
|
|
16
|
+
*/
|
|
17
|
+
constructor ($embeds) {
|
|
18
|
+
super('text', $embeds)
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* @overload
|
|
24
|
+
* @return {DeltaTextBuilder<never>}
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* @overload
|
|
28
|
+
* @param {string} [content]
|
|
29
|
+
* @return {DeltaTextBuilder<never>}
|
|
30
|
+
*/
|
|
31
|
+
/**
|
|
32
|
+
* @template Embeds
|
|
33
|
+
* @overload
|
|
34
|
+
* @param {s.Schema<Embeds>} [$embeds]
|
|
35
|
+
* @return {DeltaTextBuilder<Embeds>}
|
|
36
|
+
*/
|
|
37
|
+
/**
|
|
38
|
+
* @template {s.Schema<any>|string|undefined} Arg1
|
|
39
|
+
* @param {Arg1} arg1
|
|
40
|
+
* @return {DeltaTextBuilder<Arg1 extends s.Schema<infer Embeds> ? Embeds : never>}
|
|
41
|
+
*/
|
|
42
|
+
export const text = arg1 => s.$$schema.check(arg1) ? new DeltaTextBuilder(/** @type {s.Schema<any>} */ (arg1)) : (s.$string.check(arg1) ? new DeltaTextBuilder(s.$never).insert(arg1) : new DeltaTextBuilder(s.$never))
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* @template {{ [key:string]: any }} Vals
|
|
46
|
+
* @param {s.Schema<Vals>} $embeds
|
|
47
|
+
* @return {s.Schema<DeltaText<Vals>>}
|
|
48
|
+
*/
|
|
49
|
+
export const $text = $embeds => /** @type {s.Schema<DeltaText<Vals>>} */ (s.$instanceOf(DeltaTextBuilder, o => $embeds.extends(o.$insert)))
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* @return {s.Schema<DeltaText<any>>}
|
|
53
|
+
*/
|
|
54
|
+
export const $textAny = /** @type {s.Schema<DeltaText<any>>} */ (s.$instanceOf(DeltaTextBuilder))
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export function testDelta(_tc: t.TestCase): void;
|
|
2
|
+
export function testDeltaMerging(_tc: t.TestCase): void;
|
|
3
|
+
export function testUseAttributes(_tc: t.TestCase): void;
|
|
4
|
+
export function testUseAttribution(_tc: t.TestCase): void;
|
|
5
|
+
import * as t from 'lib0/testing';
|
|
6
|
+
//# sourceMappingURL=text.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.test.d.ts","sourceRoot":"","sources":["text.test.js"],"names":[],"mappings":"AAOO,+BAFI,CAAC,CAAC,QAAQ,QAKpB;AAKM,sCAFI,CAAC,CAAC,QAAQ,QAYpB;AAKM,uCAFI,CAAC,CAAC,QAAQ,QAwBpB;AAKM,wCAFI,CAAC,CAAC,QAAQ,QAwBpB;mBA/EkB,cAAc"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
export function transformResult<DeltaA extends s.Unwrap<s.Schema<delta.AbstractDelta>> | null, DeltaB extends s.Unwrap<s.Schema<delta.AbstractDelta>> | null>(a: DeltaA, b: DeltaB): TransformResult<DeltaA, DeltaB>;
|
|
2
|
+
export const transformResultEmpty: TransformResult<null, null>;
|
|
3
|
+
/**
|
|
4
|
+
* @template {any} State
|
|
5
|
+
* @template {s.Unwrap<delta.$delta>} DeltaA
|
|
6
|
+
* @template {s.Unwrap<delta.$delta>} DeltaB
|
|
7
|
+
* @typedef {object} TransformerDef
|
|
8
|
+
* @property {s.Schema<DeltaA>} TransformerDef.$in
|
|
9
|
+
* @property {s.Schema<DeltaB>} TransformerDef.$out
|
|
10
|
+
* @property {function (this: Template<State,DeltaA,DeltaB>): State} TransformerDef.state
|
|
11
|
+
* @property {(deltaIn:NoInfer<DeltaA>,s:NoInfer<State>) => TransformResult<NoInfer<DeltaA>?,NoInfer<DeltaB>?>} TransformerDef.applyA
|
|
12
|
+
* @property {(deltaOut:NoInfer<DeltaB>,s:NoInfer<State>) => TransformResult<NoInfer<DeltaA>?,NoInfer<DeltaB>?>} TransformerDef.applyB
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* A Delta Transformer ensures that it keeps two sources A and B in-sync, even if they use a
|
|
16
|
+
* different update format.
|
|
17
|
+
*
|
|
18
|
+
* @template {any} State
|
|
19
|
+
* @template {s.Unwrap<typeof delta.$delta>} DeltaA
|
|
20
|
+
* @template {s.Unwrap<typeof delta.$delta>} DeltaB
|
|
21
|
+
*/
|
|
22
|
+
export class Transformer<State extends unknown, DeltaA extends s.Unwrap<typeof delta.$delta>, DeltaB extends s.Unwrap<typeof delta.$delta>> {
|
|
23
|
+
/**
|
|
24
|
+
* @param {Template<State,DeltaA,DeltaB>} t
|
|
25
|
+
* @param {State} s
|
|
26
|
+
*/
|
|
27
|
+
constructor(t: Template<State, DeltaA, DeltaB>, s: State);
|
|
28
|
+
t: Template<State, DeltaA, DeltaB>;
|
|
29
|
+
_state: State;
|
|
30
|
+
/**
|
|
31
|
+
* Pending a op, for internal use only
|
|
32
|
+
* @type {DeltaA?}
|
|
33
|
+
*/
|
|
34
|
+
_pa: DeltaA | null;
|
|
35
|
+
/**
|
|
36
|
+
* Pending a op, for internal use only
|
|
37
|
+
* @type {DeltaB?}
|
|
38
|
+
*/
|
|
39
|
+
_pb: DeltaB | null;
|
|
40
|
+
/**
|
|
41
|
+
* Whether this transformer value has been initially consumebd by the parent transformer.
|
|
42
|
+
*/
|
|
43
|
+
_init: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* @type {Transformer<any,any,any>?}
|
|
46
|
+
*/
|
|
47
|
+
parent: Transformer<any, any, any> | null;
|
|
48
|
+
/**
|
|
49
|
+
* @param {DeltaA} deltaA
|
|
50
|
+
* @return {TransformResult<DeltaA?,DeltaB?>}
|
|
51
|
+
*/
|
|
52
|
+
applyA(deltaA: DeltaA): TransformResult<DeltaA | null, DeltaB | null>;
|
|
53
|
+
/**
|
|
54
|
+
* @param {DeltaB} deltaB
|
|
55
|
+
* @return {TransformResult<DeltaA?,DeltaB?>}
|
|
56
|
+
*/
|
|
57
|
+
applyB(deltaB: DeltaB): TransformResult<DeltaA | null, DeltaB | null>;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* @template State
|
|
61
|
+
* @template {s.Unwrap<typeof delta.$delta>} DeltaA
|
|
62
|
+
* @template {s.Unwrap<typeof delta.$delta>} DeltaB
|
|
63
|
+
*/
|
|
64
|
+
export class Template<State, DeltaA extends s.Unwrap<typeof delta.$delta>, DeltaB extends s.Unwrap<typeof delta.$delta>> {
|
|
65
|
+
/**
|
|
66
|
+
* @param {TransformerDef<State,DeltaA,DeltaB>} def
|
|
67
|
+
*/
|
|
68
|
+
constructor({ $in, $out, state, applyA, applyB }: TransformerDef<State, DeltaA, DeltaB>);
|
|
69
|
+
/**
|
|
70
|
+
* @type {s.Schema<DeltaA>}
|
|
71
|
+
*/
|
|
72
|
+
$in: s.Schema<DeltaA>;
|
|
73
|
+
/**
|
|
74
|
+
* @type {s.Schema<DeltaB>}
|
|
75
|
+
*/
|
|
76
|
+
$out: s.Schema<DeltaB>;
|
|
77
|
+
/**
|
|
78
|
+
* @type {() => State}
|
|
79
|
+
*/
|
|
80
|
+
_state: () => State;
|
|
81
|
+
/**
|
|
82
|
+
* @type {typeof applyA}
|
|
83
|
+
*/
|
|
84
|
+
_applyA: (deltaIn: NoInfer<DeltaA>, s: NoInfer<State>) => TransformResult<NoInfer<DeltaA> | null, NoInfer<DeltaB> | null>;
|
|
85
|
+
/**
|
|
86
|
+
* @type {typeof applyB}
|
|
87
|
+
*/
|
|
88
|
+
_applyB: (deltaOut: NoInfer<DeltaB>, s: NoInfer<State>) => TransformResult<NoInfer<DeltaA> | null, NoInfer<DeltaB> | null>;
|
|
89
|
+
/**
|
|
90
|
+
* Cache for stateless transformers.
|
|
91
|
+
*
|
|
92
|
+
* @type {Transformer<State,DeltaA,DeltaB>?}
|
|
93
|
+
*/
|
|
94
|
+
_tr: Transformer<State, DeltaA, DeltaB> | null;
|
|
95
|
+
/**
|
|
96
|
+
* @template {delta.AbstractDelta} R
|
|
97
|
+
* @param {($d: s.Schema<DeltaB>) => Template<any,DeltaB,R>} t
|
|
98
|
+
* @return {Template<any,DeltaA,R>}
|
|
99
|
+
*/
|
|
100
|
+
pipe<R extends delta.AbstractDelta>(t: ($d: s.Schema<DeltaB>) => Template<any, DeltaB, R>): Template<any, DeltaA, R>;
|
|
101
|
+
init(): Transformer<State, DeltaA, DeltaB>;
|
|
102
|
+
}
|
|
103
|
+
export function $template<DeltaA extends delta.AbstractDelta, DeltaB extends delta.AbstractDelta>($deltaA: s.Schema<DeltaA>, $deltaB: s.Schema<DeltaB>): s.Schema<Template<any, DeltaA, DeltaB>>;
|
|
104
|
+
export const $templateAny: s.Schema<Template<any, any, any>>;
|
|
105
|
+
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]>>;
|
|
106
|
+
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;
|
|
107
|
+
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;
|
|
108
|
+
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>;
|
|
109
|
+
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>;
|
|
110
|
+
export function fixed<FixedContent>(fixedContent: FixedContent): Template<any, any, FixedContent extends delta.AbstractDelta ? FixedContent : delta.Value<FixedContent>>;
|
|
111
|
+
export function map<T extends {
|
|
112
|
+
[key: string]: any;
|
|
113
|
+
}>(definition: T): MapDefToTemplate<T> extends Template<any, infer A, infer B> ? Template<any, A, B> : never;
|
|
114
|
+
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>>;
|
|
115
|
+
export function node<NodeName extends string, Attrs extends {
|
|
116
|
+
[key: string]: any;
|
|
117
|
+
} | Template<any, any, delta.Map<{
|
|
118
|
+
[key: string]: any;
|
|
119
|
+
}>>, 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>>;
|
|
120
|
+
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>>>;
|
|
121
|
+
export function id<Delta extends delta.AbstractDelta>($in: s.Schema<Delta>): Template<null, Delta, Delta>;
|
|
122
|
+
/**
|
|
123
|
+
* Creates a transformer template after receiving schema for DeltaA.
|
|
124
|
+
*/
|
|
125
|
+
export type TransformerFactory<DeltaA extends delta.AbstractDelta> = <DA extends DeltaA>($deltaA: s.Schema<DA>) => Template<any, DA, any>;
|
|
126
|
+
export type DeltaBFromTransformerFactory<T extends TransformerFactory<any>, DeltaA extends delta.AbstractDelta> = T extends (($deltaA: s.Schema<DeltaA>) => Template<any, DeltaA, infer DeltaB>) ? DeltaB : never;
|
|
127
|
+
export type TransformResult<DeltaA extends s.Unwrap<s.Schema<delta.AbstractDelta>> | null = delta.AbstractDelta | null, DeltaB extends s.Unwrap<s.Schema<delta.AbstractDelta>> | null = delta.AbstractDelta | null> = {
|
|
128
|
+
a: DeltaA;
|
|
129
|
+
b: DeltaB;
|
|
130
|
+
};
|
|
131
|
+
export type TransformerDef<State extends unknown, DeltaA extends s.Unwrap<s.Schema<delta.AbstractDelta>>, DeltaB extends s.Unwrap<s.Schema<delta.AbstractDelta>>> = {
|
|
132
|
+
$in: s.Schema<DeltaA>;
|
|
133
|
+
$out: s.Schema<DeltaB>;
|
|
134
|
+
state: (this: Template<State, DeltaA, DeltaB>) => State;
|
|
135
|
+
applyA: (deltaIn: NoInfer<DeltaA>, s: NoInfer<State>) => TransformResult<NoInfer<DeltaA> | null, NoInfer<DeltaB> | null>;
|
|
136
|
+
applyB: (deltaOut: NoInfer<DeltaB>, s: NoInfer<State>) => TransformResult<NoInfer<DeltaA> | null, NoInfer<DeltaB> | null>;
|
|
137
|
+
};
|
|
138
|
+
export type MaybeFixedTemplate<DeltaA extends delta.AbstractDelta, DeltaB extends delta.AbstractDelta> = Template<any, DeltaA, DeltaB> | (DeltaB extends delta.Map<infer MKV> ? (MKV | DeltaB) : (DeltaB extends delta.Array<infer MArr> ? (MArr | DeltaB) : DeltaB));
|
|
139
|
+
export type UnwrapTemplateForArray<X> = X extends Template<any, any, infer D> ? (D extends delta.Value<infer V> ? V : D) : X;
|
|
140
|
+
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 {
|
|
141
|
+
[key: string]: any;
|
|
142
|
+
} ? delta.Map<MaybeFixed> : never))>;
|
|
143
|
+
export type AnyToTemplate<MaybeTemplate> = [MaybeTemplate] extends [Template<any, any, any>] ? MaybeTemplate : Template<any, any, [MaybeTemplate] extends [delta.AbstractDelta] ? MaybeTemplate : delta.Value<MaybeTemplate>>;
|
|
144
|
+
export type AnyMapToTemplate<MaybeTemplateMap extends {
|
|
145
|
+
[key: string]: any;
|
|
146
|
+
}> = { [K in keyof MaybeTemplateMap]: AnyToTemplate<MaybeTemplateMap[K]>; };
|
|
147
|
+
export type AnyArrayToTemplate<MaybeTemplateArray extends Array<any>> = { [K in keyof MaybeTemplateArray]: AnyToTemplate<MaybeTemplateArray[K]>; };
|
|
148
|
+
export type MapDefToTemplate<T extends {
|
|
149
|
+
[key: string]: any;
|
|
150
|
+
}> = 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]>; }>>;
|
|
151
|
+
export type MapOrMapDefToTemplate<T extends {
|
|
152
|
+
[key: string]: any;
|
|
153
|
+
} | Template<any, any, delta.Map<any>>> = T extends Template<any, any, any> ? T : MapDefToTemplate<T>;
|
|
154
|
+
export type _FollowPath<KV extends {
|
|
155
|
+
[k: string]: any;
|
|
156
|
+
}> = delta.Map<KV> | delta.Node<any, KV, any, any>;
|
|
157
|
+
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;
|
|
158
|
+
export type _AttrDeltaType<Attrs extends {
|
|
159
|
+
[k: string]: any;
|
|
160
|
+
}> = delta.Map<Partial<Attrs>> | delta.Node<any, Partial<Attrs>, any, any>;
|
|
161
|
+
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;
|
|
162
|
+
import * as s from '../schema.js';
|
|
163
|
+
import * as delta from './index.js';
|
|
164
|
+
//# sourceMappingURL=transformer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["transformer.js"],"names":[],"mappings":"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"}
|