lib0 0.2.115-4 → 0.2.115-5

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.
Files changed (235) hide show
  1. package/coverage/tmp/coverage-42121-1764767245409-0.json +1 -0
  2. package/coverage/tmp/{coverage-32703-1763495370274-0.json → coverage-42122-1764767192180-0.json} +1 -1
  3. package/delta/binding.d.ts +11 -9
  4. package/delta/binding.d.ts.map +1 -1
  5. package/delta/binding.js +5 -2
  6. package/delta/binding.test.d.ts.map +1 -1
  7. package/delta/delta-pitch.test.d.ts +5 -0
  8. package/delta/delta-pitch.test.d.ts.map +1 -0
  9. package/delta/{d2.d.ts → delta.d.ts} +117 -34
  10. package/delta/delta.d.ts.map +1 -0
  11. package/delta/{d2.js → delta.js} +244 -53
  12. package/delta/{d2.test.d.ts → delta.test.d.ts} +6 -1
  13. package/delta/delta.test.d.ts.map +1 -0
  14. package/delta/t3.test.d.ts +1 -1
  15. package/delta/t3.test.d.ts.map +1 -1
  16. package/dist/array.cjs +17 -60
  17. package/dist/array.cjs.map +1 -1
  18. package/dist/binding.cjs +114 -28
  19. package/dist/binding.cjs.map +1 -1
  20. package/dist/{broadcastchannel-d0c108a2.cjs → broadcastchannel-94897809.cjs} +2 -2
  21. package/dist/{broadcastchannel-d0c108a2.cjs.map → broadcastchannel-94897809.cjs.map} +1 -1
  22. package/dist/broadcastchannel.cjs +6 -6
  23. package/dist/{buffer-7f6fa8fa.cjs → buffer-8d110bf4.cjs} +2 -2
  24. package/dist/{buffer-7f6fa8fa.cjs.map → buffer-8d110bf4.cjs.map} +1 -1
  25. package/dist/buffer.cjs +5 -5
  26. package/dist/cache.cjs +3 -3
  27. package/dist/component.cjs +12 -8
  28. package/dist/component.cjs.map +1 -1
  29. package/dist/delta/binding.d.ts +11 -9
  30. package/dist/delta/binding.d.ts.map +1 -1
  31. package/dist/delta/binding.test.d.ts.map +1 -1
  32. package/dist/delta/delta-pitch.test.d.ts +5 -0
  33. package/dist/delta/delta-pitch.test.d.ts.map +1 -0
  34. package/dist/delta/{d2.d.ts → delta.d.ts} +117 -34
  35. package/dist/delta/delta.d.ts.map +1 -0
  36. package/dist/delta/{d2.test.d.ts → delta.test.d.ts} +6 -1
  37. package/dist/delta/delta.test.d.ts.map +1 -0
  38. package/dist/delta/t3.test.d.ts +1 -1
  39. package/dist/delta/t3.test.d.ts.map +1 -1
  40. package/dist/{d2.cjs → delta.cjs} +253 -58
  41. package/dist/delta.cjs.map +1 -0
  42. package/dist/{diff-1832cb43.cjs → diff-dc7bdc65.cjs} +2 -2
  43. package/dist/{diff-1832cb43.cjs.map → diff-dc7bdc65.cjs.map} +1 -1
  44. package/dist/diff.cjs +4 -4
  45. package/dist/{dom-f5047a64.cjs → dom-cad267af.cjs} +1 -1
  46. package/dist/{dom-f5047a64.cjs.map → dom-cad267af.cjs.map} +1 -1
  47. package/dist/dom.cjs +12 -5
  48. package/dist/dom.cjs.map +1 -1
  49. package/dist/{environment-90227ead.cjs → environment-98bcf64f.cjs} +2 -2
  50. package/dist/{environment-90227ead.cjs.map → environment-98bcf64f.cjs.map} +1 -1
  51. package/dist/environment.cjs +4 -4
  52. package/dist/equality.cjs +34 -0
  53. package/dist/equality.cjs.map +1 -0
  54. package/dist/fingerprint.cjs +44 -0
  55. package/dist/fingerprint.cjs.map +1 -0
  56. package/dist/{function-e7d18feb.cjs → function-b4e49016.cjs} +6 -6
  57. package/dist/function-b4e49016.cjs.map +1 -0
  58. package/dist/function.cjs +3 -3
  59. package/dist/index.cjs +9 -9
  60. package/dist/indexeddbV2.cjs +2 -2
  61. package/dist/jwt.cjs +5 -5
  62. package/dist/list.cjs +18 -5
  63. package/dist/list.cjs.map +1 -1
  64. package/dist/list.d.ts +9 -2
  65. package/dist/list.d.ts.map +1 -1
  66. package/dist/list.test.d.ts.map +1 -1
  67. package/dist/logging.cjs +11 -5
  68. package/dist/logging.cjs.map +1 -1
  69. package/dist/logging.common.cjs +4 -4
  70. package/dist/logging.node.cjs +4 -4
  71. package/dist/map.cjs +7 -314
  72. package/dist/map.cjs.map +1 -1
  73. package/dist/{object-18980796.cjs → object-dec41ef9.cjs} +3 -3
  74. package/dist/object-dec41ef9.cjs.map +1 -0
  75. package/dist/object.cjs +2 -2
  76. package/dist/object.d.ts.map +1 -1
  77. package/dist/performance.node.cjs +3 -3
  78. package/dist/pledge.cjs +2 -2
  79. package/dist/{prng-99204216.cjs → prng-aa81e812.cjs} +2 -2
  80. package/dist/{prng-99204216.cjs.map → prng-aa81e812.cjs.map} +1 -1
  81. package/dist/prng.cjs +6 -6
  82. package/dist/rabin-gf2-polynomial.cjs +5 -5
  83. package/dist/rabin-uncached.cjs +5 -5
  84. package/dist/rabin.cjs +5 -5
  85. package/dist/schema.cjs +202 -22
  86. package/dist/schema.cjs.map +1 -1
  87. package/dist/schema.d.ts +86 -29
  88. package/dist/schema.d.ts.map +1 -1
  89. package/dist/schema.test.d.ts +4 -0
  90. package/dist/schema.test.d.ts.map +1 -1
  91. package/dist/testing.cjs +9 -9
  92. package/dist/testing.cjs.map +1 -1
  93. package/dist/{traits.d.ts → trait/equality.d.ts} +1 -1
  94. package/dist/trait/equality.d.ts.map +1 -0
  95. package/dist/trait/fingerprint.d.ts +13 -0
  96. package/dist/trait/fingerprint.d.ts.map +1 -0
  97. package/dist/trait/traits.d.ts +3 -0
  98. package/dist/trait/traits.d.ts.map +1 -0
  99. package/dist/trait/traits.test.d.ts +5 -0
  100. package/dist/trait/traits.test.d.ts.map +1 -0
  101. package/dist/traits.cjs +23 -26
  102. package/dist/traits.cjs.map +1 -1
  103. package/dist/url.cjs +2 -2
  104. package/function.js +4 -4
  105. package/list.d.ts +9 -2
  106. package/list.d.ts.map +1 -1
  107. package/list.js +17 -3
  108. package/list.test.d.ts.map +1 -1
  109. package/object.d.ts.map +1 -1
  110. package/object.js +2 -2
  111. package/package.json +8 -10
  112. package/schema.d.ts +86 -29
  113. package/schema.d.ts.map +1 -1
  114. package/schema.js +191 -20
  115. package/schema.test.d.ts +4 -0
  116. package/schema.test.d.ts.map +1 -1
  117. package/test.html +2 -4
  118. package/test.js +7 -13
  119. package/testing.js +3 -3
  120. package/{traits.d.ts → trait/equality.d.ts} +1 -1
  121. package/trait/equality.d.ts.map +1 -0
  122. package/trait/fingerprint.d.ts +13 -0
  123. package/trait/fingerprint.d.ts.map +1 -0
  124. package/trait/fingerprint.js +21 -0
  125. package/trait/traits.d.ts +3 -0
  126. package/trait/traits.d.ts.map +1 -0
  127. package/trait/traits.js +2 -0
  128. package/trait/traits.test.d.ts +5 -0
  129. package/{traits.test.d.ts.map → trait/traits.test.d.ts.map} +1 -1
  130. package/delta/abstract-array.d.ts +0 -166
  131. package/delta/abstract-array.d.ts.map +0 -1
  132. package/delta/abstract-array.js +0 -421
  133. package/delta/abstract.d.ts +0 -69
  134. package/delta/abstract.d.ts.map +0 -1
  135. package/delta/abstract.js +0 -102
  136. package/delta/array.d.ts +0 -23
  137. package/delta/array.d.ts.map +0 -1
  138. package/delta/array.js +0 -45
  139. package/delta/array.test.d.ts +0 -2
  140. package/delta/array.test.d.ts.map +0 -1
  141. package/delta/d2.d.ts.map +0 -1
  142. package/delta/d2.test.d.ts.map +0 -1
  143. package/delta/index.d.ts +0 -14
  144. package/delta/index.d.ts.map +0 -1
  145. package/delta/index.js +0 -79
  146. package/delta/map.d.ts +0 -226
  147. package/delta/map.d.ts.map +0 -1
  148. package/delta/map.js +0 -304
  149. package/delta/node.d.ts +0 -117
  150. package/delta/node.d.ts.map +0 -1
  151. package/delta/node.js +0 -183
  152. package/delta/node.test.d.ts +0 -4
  153. package/delta/node.test.d.ts.map +0 -1
  154. package/delta/ops.d.ts +0 -464
  155. package/delta/ops.d.ts.map +0 -1
  156. package/delta/ops.js +0 -544
  157. package/delta/t2.d.ts +0 -184
  158. package/delta/t2.d.ts.map +0 -1
  159. package/delta/t2.js +0 -890
  160. package/delta/text.d.ts +0 -43
  161. package/delta/text.d.ts.map +0 -1
  162. package/delta/text.js +0 -54
  163. package/delta/text.test.d.ts +0 -6
  164. package/delta/text.test.d.ts.map +0 -1
  165. package/delta/transformer.d.ts +0 -164
  166. package/delta/transformer.d.ts.map +0 -1
  167. package/delta/transformer.js +0 -888
  168. package/delta/transformer.test.d.ts +0 -13
  169. package/delta/transformer.test.d.ts.map +0 -1
  170. package/delta/value.d.ts +0 -84
  171. package/delta/value.d.ts.map +0 -1
  172. package/delta/value.js +0 -168
  173. package/dist/abstract-array.cjs +0 -433
  174. package/dist/abstract-array.cjs.map +0 -1
  175. package/dist/abstract.cjs +0 -122
  176. package/dist/abstract.cjs.map +0 -1
  177. package/dist/array2.cjs +0 -26
  178. package/dist/array2.cjs.map +0 -1
  179. package/dist/d2.cjs.map +0 -1
  180. package/dist/delta/abstract-array.d.ts +0 -166
  181. package/dist/delta/abstract-array.d.ts.map +0 -1
  182. package/dist/delta/abstract.d.ts +0 -69
  183. package/dist/delta/abstract.d.ts.map +0 -1
  184. package/dist/delta/array.d.ts +0 -23
  185. package/dist/delta/array.d.ts.map +0 -1
  186. package/dist/delta/array.test.d.ts +0 -2
  187. package/dist/delta/array.test.d.ts.map +0 -1
  188. package/dist/delta/d2.d.ts.map +0 -1
  189. package/dist/delta/d2.test.d.ts.map +0 -1
  190. package/dist/delta/index.d.ts +0 -14
  191. package/dist/delta/index.d.ts.map +0 -1
  192. package/dist/delta/map.d.ts +0 -226
  193. package/dist/delta/map.d.ts.map +0 -1
  194. package/dist/delta/node.d.ts +0 -117
  195. package/dist/delta/node.d.ts.map +0 -1
  196. package/dist/delta/node.test.d.ts +0 -4
  197. package/dist/delta/node.test.d.ts.map +0 -1
  198. package/dist/delta/ops.d.ts +0 -464
  199. package/dist/delta/ops.d.ts.map +0 -1
  200. package/dist/delta/t2.d.ts +0 -184
  201. package/dist/delta/t2.d.ts.map +0 -1
  202. package/dist/delta/text.d.ts +0 -43
  203. package/dist/delta/text.d.ts.map +0 -1
  204. package/dist/delta/text.test.d.ts +0 -6
  205. package/dist/delta/text.test.d.ts.map +0 -1
  206. package/dist/delta/transformer.d.ts +0 -164
  207. package/dist/delta/transformer.d.ts.map +0 -1
  208. package/dist/delta/transformer.test.d.ts +0 -13
  209. package/dist/delta/transformer.test.d.ts.map +0 -1
  210. package/dist/delta/value.d.ts +0 -84
  211. package/dist/delta/value.d.ts.map +0 -1
  212. package/dist/function-e7d18feb.cjs.map +0 -1
  213. package/dist/index2.cjs +0 -71
  214. package/dist/index2.cjs.map +0 -1
  215. package/dist/map2.cjs +0 -15
  216. package/dist/map2.cjs.map +0 -1
  217. package/dist/node.cjs +0 -206
  218. package/dist/node.cjs.map +0 -1
  219. package/dist/object-18980796.cjs.map +0 -1
  220. package/dist/ops.cjs +0 -575
  221. package/dist/ops.cjs.map +0 -1
  222. package/dist/t2.cjs +0 -932
  223. package/dist/t2.cjs.map +0 -1
  224. package/dist/text.cjs +0 -79
  225. package/dist/text.cjs.map +0 -1
  226. package/dist/traits.d.ts.map +0 -1
  227. package/dist/traits.test.d.ts +0 -4
  228. package/dist/traits.test.d.ts.map +0 -1
  229. package/dist/transformer.cjs +0 -930
  230. package/dist/transformer.cjs.map +0 -1
  231. package/dist/value.cjs +0 -187
  232. package/dist/value.cjs.map +0 -1
  233. package/traits.d.ts.map +0 -1
  234. package/traits.test.d.ts +0 -4
  235. /package/{traits.js → trait/equality.js} +0 -0
package/delta/text.d.ts DELETED
@@ -1,43 +0,0 @@
1
- /**
2
- * @template Embeds
3
- * @typedef {import('./abstract-array.js').AbstractDeltaArray<'text',import('./ops.js').DeltaTextOps<Embeds>>} DeltaText
4
- */
5
- /**
6
- * @template {any} Embeds
7
- * @extends {AbstractDeltaArrayBuilder<'text',import('./ops.js').DeltaTextOps<Embeds>>}
8
- */
9
- export class DeltaTextBuilder<Embeds extends unknown> extends AbstractDeltaArrayBuilder<"text", import("./ops.js").DeltaTextOps<Embeds>> {
10
- /**
11
- * @param {s.Schema<Embeds>} $embeds
12
- */
13
- constructor($embeds: s.Schema<Embeds>);
14
- }
15
- /**
16
- * @overload
17
- * @return {DeltaTextBuilder<never>}
18
- */
19
- export function text(): DeltaTextBuilder<never>;
20
- /**
21
- * @overload
22
- * @param {string} [content]
23
- * @return {DeltaTextBuilder<never>}
24
- */
25
- export function text(content?: string | undefined): DeltaTextBuilder<never>;
26
- /**
27
- * @template Embeds
28
- * @overload
29
- * @param {s.Schema<Embeds>} [$embeds]
30
- * @return {DeltaTextBuilder<Embeds>}
31
- */
32
- export function text<Embeds>($embeds?: s.Schema<Embeds> | undefined): DeltaTextBuilder<Embeds>;
33
- export function $text<Vals extends {
34
- [key: string]: any;
35
- }>($embeds: s.Schema<Vals>): s.Schema<DeltaText<Vals>>;
36
- /**
37
- * @return {s.Schema<DeltaText<any>>}
38
- */
39
- export const $textAny: s.Schema<DeltaText<any>>;
40
- export type DeltaText<Embeds_1> = import("./abstract-array.js").AbstractDeltaArray<"text", import("./ops.js").DeltaTextOps<Embeds_1>>;
41
- import { AbstractDeltaArrayBuilder } from './abstract-array.js';
42
- import * as s from '../schema.js';
43
- //# sourceMappingURL=text.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["text.js"],"names":[],"mappings":"AAGA;;;GAGG;AAEH;;;GAGG;AACH,8BAHmB,MAAM;IAIvB;;OAEG;IACH,qBAFW,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAI1B;CACF;;;;;AAGE,wBACS,gBAAgB,CAAC,KAAK,CAAC,CAClC;;;;;;AAEE,oDAES,gBAAgB,CAAC,KAAK,CAAC,CAClC;;;;;;;AAGE,qBADU,MAAM,2CAGP,gBAAgB,CAAC,MAAM,CAAC,CACnC;AAaM,sBAJ8B,IAAI,SAA5B;IAAG,CAAC,GAAG,EAAC,MAAM,GAAG,GAAG,CAAA;CAAG,WACzB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GACb,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAEsG;AAE3I;;GAEG;AACH,uBAAmC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAsC;kCAhDpF,OAAO,qBAAqB,EAAE,kBAAkB,CAAC,MAAM,EAAC,OAAO,UAAU,EAAE,YAAY,CAAC,QAAM,CAAC,CAAC;0CAJnE,qBAAqB;mBAD5C,cAAc"}
package/delta/text.js DELETED
@@ -1,54 +0,0 @@
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))
@@ -1,6 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,164 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["transformer.js"],"names":[],"mappings":"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"}