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/dist/t2.cjs.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"t2.cjs","sources":["../delta/t2.js"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\nimport * as delta from './d2.js'\nimport * as s from '../schema.js'\nimport * as error from '../error.js'\n\n/**\n * Creates a transformer template after receiving schema for DeltaA.\n *\n * @template {delta.DeltaAny} DeltaA\n * @typedef {<DA extends DeltaA> ($deltaA: s.Schema<DA>) => Template<any,DA,any>} TransformerFactory\n */\n\n/**\n * @template {TransformerFactory<any>} T\n * @template {delta.DeltaAny} DeltaA\n * @typedef {T extends (($deltaA: s.Schema<DeltaA>) => Template<any,DeltaA,infer DeltaB>) ? DeltaB : never } DeltaBFromTransformerFactory\n */\n\n/**\n * @template {delta.DeltaAny|null} [DeltaA=delta.DeltaAny|null]\n * @template {delta.DeltaAny|null} [DeltaB=delta.DeltaAny|null]\n * @typedef {{ a: DeltaA, b: DeltaB }} TransformResult\n */\n\n/**\n * @template {s.Unwrap<delta.$delta>|null} DeltaA\n * @template {s.Unwrap<delta.$delta>|null} DeltaB\n * @param {DeltaA} a\n * @param {DeltaB} b\n * @return {TransformResult<DeltaA,DeltaB>}\n */\nexport const transformResult = (a, b) => ({ a, b })\nexport const transformResultEmpty = transformResult(null, null)\n\n/**\n * @template {any} State\n * @template {delta.DeltaAny} DeltaA\n * @template {delta.DeltaAny} DeltaB\n * @typedef {object} TransformerDef\n * @property {s.Schema<DeltaA>} TransformerDef.$in\n * @property {s.Schema<DeltaB>} TransformerDef.$out\n * @property {function (this: Template<State,DeltaA,DeltaB>): State} TransformerDef.state\n * @property {(deltaIn:NoInfer<DeltaA>,s:NoInfer<State>) => TransformResult<NoInfer<DeltaA>?,NoInfer<DeltaB>?>} TransformerDef.applyA\n * @property {(deltaOut:NoInfer<DeltaB>,s:NoInfer<State>) => TransformResult<NoInfer<DeltaA>?,NoInfer<DeltaB>?>} TransformerDef.applyB\n */\n\n/**\n * A Delta Transformer ensures that it keeps two sources A and B in-sync, even if they use a\n * different update format.\n *\n * @template {any} State\n * @template {delta.DeltaAny} DeltaA\n * @template {delta.DeltaAny} DeltaB\n */\nexport class Transformer {\n /**\n * @param {Template<State,DeltaA,DeltaB>} t\n * @param {State} s\n */\n constructor (t, s) {\n this.t = t\n this._state = s\n /**\n * Pending a op, for internal use only\n * @type {DeltaA?}\n */\n this._pa = null\n /**\n * Pending a op, for internal use only\n * @type {DeltaB?}\n */\n this._pb = null\n /**\n * Whether this transformer value has been initially consumebd by the parent transformer.\n */\n this._init = false\n /**\n * @type {Transformer<any,any,any>?}\n */\n this.parent = null\n }\n\n /**\n * @param {DeltaA} deltaA\n * @return {TransformResult<DeltaA?,DeltaB?>}\n */\n applyA (deltaA) {\n return this.t._applyA(deltaA, this._state)\n }\n\n /**\n * @param {DeltaB} deltaB\n * @return {TransformResult<DeltaA?,DeltaB?>}\n */\n applyB (deltaB) {\n return this.t._applyB(deltaB, this._state)\n }\n}\n\n/**\n * @param {Array<Transformer<any,delta.DeltaAny,delta.DeltaAny>>} trs\n * @param {TransformResult} output\n * @return {boolean}\n */\nconst _forwardPipe = (trs, output) => {\n let again = false\n for (let i = 0; i < trs.length; i++) {\n const tr = trs[i]\n if (tr._pa === null) continue\n const { a, b } = tr.applyA(tr._pa)\n tr._pa = null\n if (a !== null) {\n if (i === 0) {\n output.a = delta.mergeDeltas(output.a, a)\n } else {\n // need to interate back to integrate the produced backwards-change\n again = true\n trs[i - 1]._pb = a\n }\n }\n if (b !== null) {\n if (i === trs.length - 1) {\n output.b = delta.mergeDeltas(output.b, b)\n } else {\n trs[i + 1]._pa = b\n }\n }\n }\n return again\n}\n\n/**\n * @param {Array<Transformer<any,delta.DeltaAny,delta.DeltaAny>>} trs\n * @param {TransformResult} output\n * @return {boolean}\n */\nconst _backwardPipe = (trs, output) => {\n let again = false\n for (let i = trs.length - 1; i >= 0; i--) {\n const tr = trs[i]\n if (tr._pb === null) continue\n const { a, b } = tr.applyA(tr._pb)\n tr._pb = null\n if (a !== null) {\n if (i === 0) {\n output.a = delta.mergeDeltas(output.a, a)\n } else {\n // need to interate back to integrate the produced backwards-change\n trs[i - 1]._pb = a\n }\n }\n if (b !== null) {\n if (i === trs.length - 1) {\n output.b = delta.mergeDeltas(output.b, b)\n } else {\n // need to interate back to integrate the produced backwards-change\n again = true\n trs[i + 1]._pa = a\n }\n }\n }\n return again\n}\n\n/**\n * @template State\n * @template {delta.DeltaAny} DeltaA\n * @template {delta.DeltaAny} DeltaB\n */\nexport class Template {\n /**\n * @param {TransformerDef<State,DeltaA,DeltaB>} def\n */\n constructor ({ $in, $out, state, applyA, applyB }) {\n /**\n * @type {s.Schema<DeltaA>}\n */\n this.$in = $in\n /**\n * @type {s.Schema<DeltaB>}\n */\n this.$out = $out\n /**\n * @type {() => State}\n */\n this._state = state\n /**\n * @type {typeof applyA}\n */\n this._applyA = applyA\n /**\n * @type {typeof applyB}\n */\n this._applyB = applyB\n /**\n * Cache for stateless transformers.\n *\n * @type {Transformer<State,DeltaA,DeltaB>?}\n */\n this._tr = null\n }\n\n /**\n * @template {delta.DeltaAny} R\n * @param {($d: s.Schema<DeltaB>) => Template<any,DeltaB,R>} t\n * @return {Template<any,DeltaA,R>}\n */\n pipe (t) {\n /**\n * @type {TransformerPipeTemplate<any,any>}\n */\n const tpipe = new TransformerPipeTemplate()\n tpipe.templates.push(this, t(this.$out))\n return tpipe\n }\n\n init () {\n if (this._tr != null) return this._tr\n // reuse stateless transformers\n const s = this._state()\n if (s === null) {\n return (this._tr = new Transformer(this, s))\n }\n return new Transformer(this, s)\n }\n}\n\n/**\n * @template {delta.DeltaAny} DeltaA\n * @template {delta.DeltaAny} DeltaB\n * @param {s.Schema<DeltaA>} $deltaA\n * @param {s.Schema<DeltaB>} $deltaB\n * @return {s.Schema<Template<any,DeltaA,DeltaB>>}\n */\nexport const $template = ($deltaA, $deltaB) => /** @type {s.Schema<Template<any,any,any>>} */ (s.$instanceOf(Template, o => o.$in.extends($deltaA) && o.$out.extends($deltaB)))\nexport const $templateAny = /** @type {s.Schema<Template<any,any,any>>} */ (s.$instanceOf(Template))\n\n/**\n * @template {delta.DeltaAny} DeltaA\n * @template {delta.DeltaAny} DeltaB\n * @typedef {Template<any,DeltaA,DeltaB>|(\n * DeltaB extends delta.Map<infer MKV>\n * ? (MKV|DeltaB)\n * : (DeltaB extends delta.Array<infer MArr> ? (MArr|DeltaB) : DeltaB))\n * } MaybeFixedTemplate\n */\n\n/**\n * @template X\n * @typedef {X extends Template<any,any,infer D> ? (D extends delta.Value<infer V> ? V : D) : X} UnwrapTemplateForArray\n */\n\n/**\n * @template {any} MaybeFixed\n * @typedef {MaybeFixed extends Template<any,any,any>\n * ? MaybeFixed\n * : Template<any,any,\n * MaybeFixed extends delta.AbstractDelta\n * ? MaybeFixed\n * : (MaybeFixed extends Array<any>\n * ? delta.Array<UnwrapTemplateForArray<MaybeFixed[number]>>\n * : (MaybeFixed extends {[key:string]:any} ? delta.Map<MaybeFixed> : never))\n * >\n * } MaybeFixedTemplateToTemplate\n */\n\n/**\n * @template MaybeFixed\n * @param {MaybeFixed} maybeFixed\n * @return {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]>>}\n */\nexport const maybeFixedToTemplate = maybeFixed => $templateAny.check(maybeFixed)\n ? /** @type {any} */ (maybeFixed)\n : (delta.$delta.check(maybeFixed)\n ? /** @type {any} */ (fixed(maybeFixed))\n : (s.$arrayAny.check(maybeFixed)\n ? /** @type {any} */ (fixed(delta.array().insert(maybeFixed).done()))\n : (s.$objectAny.check(maybeFixed) ? /** @type {any} */ (fixed(delta.map().setMany(maybeFixed).done())) : error.unexpectedCase())\n )\n )\n\n/**\n * @template {delta.AbstractDelta} DeltaA\n * @template {Template<any,DeltaA,any>} Tr\n * @param {s.Schema<DeltaA>} _$deltaA\n * @param {Tr} transformer\n * @return {<DA extends DeltaA>($d:s.Schema<DA>) => Tr extends Template<any,any,infer DeltaB> ? Template<any,DA,DeltaB> : never}\n */\nexport const transformStatic = (_$deltaA, transformer) => () => /** @type {any} */ (transformer)\n\n/**\n * @template {delta.AbstractDelta} DeltaA\n * @template {<DA extends DeltaA> ($deltaA: s.Schema<DA>) => Template<any,DA,any>} TF\n * @param {s.Schema<DeltaA>} _$deltaA\n * @param {TF} transformerFactory\n * @return {TF}\n */\nexport const transform = (_$deltaA, transformerFactory) => transformerFactory\n\n/**\n * @type {TransformerDef<any,any,any>}\n */\nconst pipeTemplateDef = {\n $in: s.$any,\n $out: s.$any,\n state: function () { return /** @type {TransformerPipeTemplate<any,any>} */ (/** @type {unknown} */ (this)).templates.map(t => t.init()) },\n applyA: (dchange, trs) => {\n const output = transformResult(null, null)\n let again = true\n trs[0]._pa = dchange\n while (again) {\n // apply forwards\n again = _forwardPipe(trs, output)\n // iterate back\n if (again) {\n again = _backwardPipe(trs, output)\n }\n }\n return output\n },\n applyB: (dchange, trs) => {\n const output = transformResult(null, null)\n let again = true\n trs[trs.length - 1]._pb = dchange\n while (again) {\n // iterate back\n again = _backwardPipe(trs, output)\n // apply forwards\n if (again) {\n again = _forwardPipe(trs, output)\n }\n }\n return output\n }\n}\n\n/**\n * @todo just have something like \"previousTemplate\" to implement pipe. This can be assembled when\n * init the template.\n * @template {s.Unwrap<typeof delta.$delta>} DeltaA\n * @template {s.Unwrap<typeof delta.$delta>} DeltaB\n * @extends {Template<any,DeltaA,DeltaB>}\n */\nclass TransformerPipeTemplate extends Template {\n constructor () {\n super(pipeTemplateDef)\n /**\n * @type {Array<Template<any,DeltaA,DeltaB>>}\n */\n this.templates = []\n }\n\n /**\n * @template {delta.AbstractDelta} R\n * @param {($d: s.Schema<DeltaB>) => Template<any,DeltaB,R>} t\n * @return {Template<any,DeltaA,R>}\n */\n pipe (t) {\n /**\n * @type {TransformerPipeTemplate<any,any>}\n */\n const tpipe = new TransformerPipeTemplate()\n tpipe.templates = this.templates.slice()\n tpipe.templates.push(t(this.$out))\n return /** @type {any} */ (tpipe)\n }\n}\n\n/**\n * @template {delta.AbstractDelta} DeltaA\n * @template {delta.AbstractDelta} DeltaB\n * @template {delta.AbstractDelta} DeltaC\n * @param {($s: s.Schema<DeltaA>) => Template<any,DeltaA,DeltaB>} t1\n * @param {($s: s.Schema<DeltaB>) => Template<any,DeltaB,DeltaC>} t2\n * @return {($d: s.Schema<DeltaA>) => Template<any,DeltaA,DeltaC>}\n */\nexport const pipe = (t1, t2) => ($d) => {\n /**\n * @type {TransformerPipeTemplate<any,any>}\n */\n const tpipe = new TransformerPipeTemplate()\n const t1t = t1($d)\n tpipe.templates.push(t1t, t2(t1t.$out))\n return tpipe\n}\n\n/**\n * @template {any} State\n * @template {s.Unwrap<typeof delta.$delta>} DeltaIn\n * @template {s.Unwrap<typeof delta.$delta>} DeltaOut\n * @param {TransformerDef<State,DeltaIn,DeltaOut>} def\n * @return {Template<State,DeltaIn,DeltaOut>}\n */\nexport const template = def => new Template(/** @type {any} */ (def))\n\n/**\n * @template FixedContent\n * @param {FixedContent} fixedContent\n * @return {Template<any,any,FixedContent extends delta.AbstractDelta ? FixedContent : delta.Value<FixedContent>>}\n */\nexport const fixed = fixedContent => {\n const staticDelta = delta.$delta.check(fixedContent) ? fixedContent : delta.value().set(fixedContent).done()\n return template({\n $in: s.$any,\n $out: s.$any,\n state: () => ({ e: false }),\n applyA: (_d, s) => {\n if (!s.e) {\n s.e = true\n return transformResult(null, staticDelta)\n }\n return transformResultEmpty\n },\n applyB: () => {\n // @todo should reverse the change and give back\n error.unexpectedCase()\n }\n })\n}\n\n/**\n * @template MaybeTemplate\n * @typedef {[MaybeTemplate] extends [Template<any,any,any>] ? MaybeTemplate : Template<any,any,\n * [MaybeTemplate] extends [delta.AbstractDelta] ? MaybeTemplate : delta.Value<MaybeTemplate>\n * >} AnyToTemplate\n */\n\n/**\n * @template {{ [key: string]: any }} MaybeTemplateMap\n * @typedef {{ [K in keyof MaybeTemplateMap]: AnyToTemplate<MaybeTemplateMap[K]> }} AnyMapToTemplate\n */\n\n/**\n * @template {Array<any>} MaybeTemplateArray\n * @typedef {{ [K in keyof MaybeTemplateArray]: AnyToTemplate<MaybeTemplateArray[K]> }} AnyArrayToTemplate\n */\n\n/**\n * @template {{ [key:string]: any }} T\n * @typedef {Template<\n * any,\n * AnyMapToTemplate<T>[keyof T] extends Template<any, infer DeltaA,any> ? DeltaA : never,\n * delta.Map<{ [K in keyof T]: AnyToTemplate<T[K]> extends Template<any, any, infer DeltaB>\n * ? (DeltaB extends delta.Value<infer V> ? V : DeltaB) : AnyToTemplate<T[K]> }>\n * >} MapDefToTemplate\n */\n\n/**\n * @template {{ [key:string]: any }} T\n * @param {T} definition\n * @return {MapDefToTemplate<T> extends Template<any,infer A,infer B> ? Template<any,A,B> : never}\n */\nexport const map = (definition) => {\n /**\n * @type {{ [key:string]: Template<any,any,any> }}\n */\n const def = {}\n for (const key in definition) {\n const d = definition[key]\n def[key] = $templateAny.check(d) ? d : fixed(d)\n }\n return template({\n $in: s.$any,\n $out: s.$any,\n state: () => {\n const mapState = /** @type {{ [key: string]: Transformer<any,any,any> }} */ ({})\n for (const key in def) {\n mapState[key] = def[key].init()\n }\n return /** @type {{ [key in keyof T]: T extends Template<any,infer SDIn, infer SDOut> ? Transformer<any, SDIn, SDOut>: never }} */ (mapState)\n },\n applyA: (d, state) => {\n return _applyMapOpHelper(state, [{ d, src: null }])\n },\n applyB: (d, state) => {\n s.assert(d, delta.$mapAny)\n /**\n * @type {Array<{ d: delta.AbstractDelta, src: Transformer<any,any,any>? }>}\n */\n const reverseAChanges = []\n d.forEach(op => {\n if (delta.$deleteOp.check(op)) {\n error.unexpectedCase()\n }\n const src = state[op.key]\n // src expects a delta value\n const res = src.applyB(delta.$modifyOp.check(op) ? delta.value().modify(op.value) : delta.value().set(op.value))\n src._pa = res.a\n src._pb = res.b\n if (res.a != null) {\n reverseAChanges.push({ d: res.a, src })\n }\n })\n return _applyMapOpHelper(state, reverseAChanges)\n }\n })\n}\n\n/**\n * @param {{ [key: string]: Transformer<any, any, any> }} state\n * @param {Array<{ d: delta.AbstractDelta, src: Transformer<any,any,any>? }>} reverseAChanges\n * @return {TransformResult<delta.AbstractDelta?,delta.Map<any>?>}\n */\nconst _applyMapOpHelper = (state, reverseAChanges) => {\n /**\n * @type {TransformResult<delta.AbstractDelta?,delta.Map<any>?>}\n */\n const applyResult = transformResult(null, null)\n while (reverseAChanges.length > 0) {\n /**\n * @type {Array<{ d: delta.AbstractDelta, src: Transformer<any,any,any>? }>}\n */\n let nextReverseAChanges = []\n for (const key in state) {\n const s = state[key]\n let transformPriority = false // false until own is found\n for (let i = 0; i < reverseAChanges.length; i++) {\n // changes are applied in reverseAChanges order.\n // rebase against all concurrent (the op stored on transformer), then apply\n const r = reverseAChanges[i]\n if (r.src === s) {\n transformPriority = true // own has less priority, concurrent is applied with higher prio\n continue // don't apply own\n }\n let rd = r.d\n if (s._pa != null) {\n rd = rd.clone()\n rd.rebase(s._pa, transformPriority)\n }\n const res = s.applyA(rd)\n s._pa = res.a\n s._pb = delta.mergeDeltas(s._pb, res.b)\n if (res.a != null) {\n nextReverseAChanges.push({ d: res.a, src: s })\n }\n }\n }\n // merge changes for output\n for (let i = 0; i < reverseAChanges.length; i++) {\n const rc = reverseAChanges[i]\n if (rc.src != null) { // don't apply received deltas\n applyResult.a = delta.mergeDeltas(applyResult.a, rc.d)\n }\n }\n reverseAChanges = nextReverseAChanges\n nextReverseAChanges = []\n }\n // accumulate b changes stored on transformers\n const bRes = delta.map()\n for (const key in state) {\n const s = state[key]\n if (s._pb) {\n if (s._init) {\n bRes.modify(key, s._pb)\n } else {\n s._init = true\n bRes.set(key, s._pb)\n }\n }\n }\n if (bRes._changes.size > 0) {\n // opt values (iff delta is of type DeltaValue, map the change to the map)\n bRes._changes.forEach((change, key) => {\n if (delta.$valueAny.check(change.value)) {\n const changeOp = change.value.change\n if (delta.$insertOp.check(changeOp) || delta.$modifyOp.check(changeOp)) {\n bRes.set(key, changeOp.value)\n } else if (delta.$deleteOp.check(changeOp)) {\n bRes.delete(key)\n } else {\n error.unexpectedCase()\n }\n }\n })\n applyResult.b = bRes\n }\n return applyResult\n}\n\n/**\n * @todo This is similar to dt.map. Consider the similarities and try to merge them.\n *\n * @template {Array<any>} T\n * @param {T} definition\n * @return {Template<\n * any,\n * AnyArrayToTemplate<T>[number] extends Template<any, infer DeltaA, any> ? DeltaA : never,\n * delta.Array<AnyArrayToTemplate<T>[number] extends Template<any, any, infer DeltaB> ? delta.ValueUnwrap<DeltaB> : never>\n * >}\n */\nexport const array = (definition) => {\n /**\n * @type {Array<Template<any,any,any>>}\n */\n const def = []\n for (let i = 0; i < definition.length; i++) {\n const d = definition[i]\n def[i] = $templateAny.check(d) ? d : fixed(d)\n }\n return /** @type {any} */ (template({\n $in: s.$any,\n $out: delta.$arrayAny,\n state: () => {\n const arrState = /** @type {Transformer<any,any,any>[]} */ ([])\n for (let i = 0; i < def.length; i++) {\n arrState[i] = def[i].init()\n }\n return /** @type {(T extends Template<any,infer SDIn, infer SDOut> ? Transformer<any, SDIn, SDOut>: never)[]} */ (arrState)\n },\n applyA: (d, state) => {\n return _applyArrayOpHelper(state, [{ d, src: null }])\n },\n applyB: (d, state) => {\n s.assert(d, delta.$arrayAny)\n /**\n * @type {Array<{ d: delta.AbstractDelta, src: Transformer<any,any,any>? }>}\n */\n const reverseAChanges = []\n d.forEach((op, index) => {\n if (delta.$deleteOp.check(op) || delta.$insertOp.check(op)) {\n error.unexpectedCase()\n } else if (delta.$modifyOp.check(op)) {\n const src = state[index]\n const res = src.applyB(op.modify)\n src._pa = res.a\n src._pb = res.b\n if (res.a != null) {\n reverseAChanges.push({ d: res.a, src })\n }\n }\n })\n return _applyArrayOpHelper(state, reverseAChanges)\n }\n }))\n}\n\n/**\n * @param {Transformer<any, any, any>[]} state\n * @param {Array<{ d: delta.AbstractDelta, src: Transformer<any,any,any>? }>} reverseAChanges\n * @return {TransformResult<delta.AbstractDelta?,delta.Array<any>?>}\n */\nconst _applyArrayOpHelper = (state, reverseAChanges) => {\n /**\n * @type {TransformResult<delta.AbstractDelta?,delta.Array<any>?>}\n */\n const applyResult = transformResult(null, null)\n while (reverseAChanges.length > 0) {\n /**\n * @type {Array<{ d: delta.AbstractDelta, src: Transformer<any,any,any>? }>}\n */\n let nextReverseAChanges = []\n for (let i = 0; i < state.length; i++) {\n const s = state[i]\n let transformPriority = false // false until own is found\n for (let i = 0; i < reverseAChanges.length; i++) {\n // changes are applied in reverseAChanges order.\n // rebase against all concurrent (the op stored on transformer), then apply\n const r = reverseAChanges[i]\n if (r.src === s) {\n transformPriority = true // own has less priority, concurrent is applied with higher prio\n continue // don't apply own\n }\n let rd = r.d\n if (s._pa != null) {\n rd = rd.clone()\n rd.rebase(s._pa, transformPriority)\n }\n const res = s.applyA(rd)\n s._pa = res.a\n s._pb = delta.mergeDeltas(s._pb, res.b)\n if (res.a != null) {\n nextReverseAChanges.push({ d: res.a, src: s })\n }\n }\n }\n // merge changes for output\n for (let i = 0; i < nextReverseAChanges.length; i++) {\n applyResult.a = delta.mergeDeltas(applyResult.a, nextReverseAChanges[i].d)\n }\n reverseAChanges = nextReverseAChanges\n nextReverseAChanges = []\n }\n // accumulate b changes stored on transformers\n const bRes = delta.array()\n let performedChange = false\n for (let i = 0; i < state.length; i++) {\n const s = state[i]\n let spb = s._pb\n if (spb) {\n if (delta.$valueAny.check(spb)) {\n spb = spb.get()\n }\n if (s._init) {\n bRes.modify(spb)\n } else {\n s._init = true\n bRes.insert([spb])\n }\n performedChange = true\n } else {\n bRes.retain(1)\n }\n }\n if (performedChange) {\n applyResult.b = bRes.done()\n }\n return applyResult\n}\n\n/**\n * @param {TransformResult<delta.AbstractDelta?, delta.Node<any,any,any>>} res\n * @param {{ attrs: Transformer<any,any,any>, children: Transformer<any,any,any> }} state\n * @param {delta.AbstractDelta?} nextAAttrs apply this in reverse!\n * @param {delta.AbstractDelta?} nextAChildren\n */\nconst _nodeApplyA = (res, state, nextAAttrs, nextAChildren) => {\n while (nextAAttrs != null || nextAChildren != null) {\n const resChildren = nextAChildren && state.children.applyA(nextAChildren)\n const resAttrs = (nextAAttrs || resChildren?.a) ? state.attrs.applyA(delta.mergeDeltas(nextAAttrs, resChildren?.a)) : null\n nextAChildren = resAttrs?.a\n nextAAttrs = null\n res.a = delta.mergeDeltas(delta.mergeDeltas(res.a, resChildren?.a), resAttrs?.a)\n resChildren?.b && res.b.children.apply(resChildren.b)\n resAttrs?.b && res.b.attributes.apply(resAttrs.b)\n }\n}\n\n/**\n * @template {{ [key:string]: any } | Template<any,any,delta.Map<any>>} T\n * @typedef {T extends Template<any,any,any> ? T : MapDefToTemplate<T>} MapOrMapDefToTemplate\n */\n\n/**\n * @template {string} NodeName\n * @template {{ [key:string]:any } | Template<any,any,delta.Map<{[key:string]:any}>>} Attrs - accepts map or map definition\n * @template {Template<any,any,delta.Array<any,any>> | Array<any>} Children\n * @param {NodeName} name\n * @param {Attrs} attributes\n * @param {Children} children\n * @return {Template<\n * any,\n * MapOrMapDefToTemplate<Attrs> extends Template<any, infer A, any> ? A : never,\n * delta.Node<\n * NodeName,\n * MapOrMapDefToTemplate<Attrs> extends Template<any,any,delta.Map<infer M>> ? M : never,\n * MaybeFixedTemplateToTemplate<Children> extends Template<any,any,delta.Array<infer BChildren,any>> ? BChildren : never,\n * any\n * >\n * >}\n */\nexport const node = (name, attributes, children) => {\n const attrs = /** @type {Template<any,any,delta.Map<any>>} */ ($templateAny.check(attributes) ? attributes : map(attributes))\n const childs = /** @type {Template<any,any,delta.Array<any>>} */ (maybeFixedToTemplate(children))\n // @todo this should be properly inferred\n return /** @type {any} */ (template({\n $in: s.$any,\n $out: delta.$node(s.$literal(name), s.$any, s.$any),\n state: () => ({\n attrs: attrs.init(),\n children: childs.init()\n }),\n applyA: (d, state) => {\n const res = transformResult(null, /** @type {delta.Node<NodeName,any,any,any>} */ (delta.node(name)))\n _nodeApplyA(res, state, d, d)\n return res\n },\n applyB: (d, state) => {\n s.assert(d, delta.$nodeAny)\n const res = transformResult(null, /** @type {delta.Node<NodeName,any,any,any>} */ (delta.node(name)))\n const childrenRes = d.children.ops.length === 0 ? transformResultEmpty : state.children.applyB(/** @type {delta.Array<any,any>} */(d.children))\n const attrsRes = d.attributes._changes.size === 0 ? transformResultEmpty : state.attrs.applyB(d.attributes)\n attrsRes.b && res.b.attributes.apply(attrsRes.b)\n childrenRes.b && res.b.children.apply(/** @type {delta.Array<any,false>} */ (childrenRes.b))\n res.a = delta.mergeDeltas(attrsRes.a, childrenRes.a)\n _nodeApplyA(res, state, childrenRes.a, attrsRes.a)\n return res\n }\n }))\n}\n\n/**\n * @template {{[k:string]:any}} KV\n * @typedef {delta.Map<KV> | delta.Node<any,KV,any,any>} _FollowPath\n */\n\n/**\n * @template {any} D\n * @template {string[]} Path\n * @typedef {Path extends []\n * ? D\n * : Path extends [infer P, ...infer PRest]\n * ? (\n * P extends string ? (D extends _AttrDeltaType<{ [K in P]: infer V }> ? QueryFollowPath<V,PRest extends string[] ? PRest : never> : never) : never\n * )\n * : never\n * } QueryFollowPath\n */\n\n/**\n * @template {{[k:string]:any}} Attrs\n * @typedef {delta.Map<Partial<Attrs>> | delta.Node<any,Partial<Attrs>,any,any>} _AttrDeltaType\n */\n\n/**\n * @template {Array<string>} Path\n * @typedef {Path extends [infer P, ...infer PRest] ? (_AttrDeltaType<{ [K in (P extends string ? P : any)]: PathToDelta<PRest extends Array<string> ? PRest : any> }>) : any} PathToDelta\n */\n\n/**\n * @template {Array<string>} Path\n * @param {Path} path\n * @return {<DA extends PathToDelta<Path>>($in: s.Schema<DA>) => Template<any, DA, delta.Value<QueryFollowPath<DA,Path>>>}\n */\nexport const query = (...path) => transformStatic(s.$any, template({\n $in: delta.$delta,\n $out: delta.$valueAny,\n state: () => null,\n applyA: d => {\n d = delta.$nodeAny.check(d) ? d.attributes : d\n let cd = /** @type {delta.Map<any>?} */ (delta.$mapAny.cast(d))\n let overwritten = false\n for (let i = 0; i < path.length && cd != null; i++) {\n if (delta.$mapAny.check(cd)) {\n const c = cd.get(path[i])\n if (delta.$insertOp.check(c)) {\n overwritten = true\n cd = c.value\n } else if (delta.$deleteOp.check(c)) {\n overwritten = true\n cd = null\n break\n } else if (delta.$modifyOp.check(c)) {\n cd = c.value\n }\n } else {\n cd = null\n }\n }\n const dv = delta.value()\n if (overwritten) {\n // @todo implement some kind of \"ValueDelta\" with insert, delete, modify ops. dmap is supposed\n // to automatically translate this.\n if (cd == null) {\n dv.delete()\n } else {\n dv.set(cd)\n }\n } else {\n dv.modify(cd)\n }\n return transformResult(null, dv)\n },\n applyB: (d) => {\n const dop = d.change\n let resD = delta.map()\n let i = path.length - 1\n const p = path[i]\n if (delta.$modifyOp.check(dop)) {\n resD.modify(p, dop.value)\n } else if (delta.$insertOp.check(dop)) {\n resD.set(p, dop.value)\n } else if (delta.$deleteOp.check(dop)) {\n resD.delete(p)\n }\n for (i--; i >= 0; i--) {\n const tmpDmap = delta.map()\n tmpDmap.modify(p, resD)\n resD = tmpDmap\n }\n return /** @type {TransformResult<any,null>} */ (transformResult(resD, null))\n }\n}))\n\n/**\n * @template {delta.AbstractDelta} Delta\n * @param {s.Schema<Delta>} $in\n * @return {Template<null,Delta,Delta>}\n */\nexport const id = $in => template({\n $in,\n $out: $in,\n state: () => null,\n applyA: d => {\n return transformResult(null, d)\n },\n applyB: d => {\n return transformResult(d, null)\n }\n})\n"],"names":["delta.mergeDeltas","s.$instanceOf","delta.$delta","s.$arrayAny","delta.array","s.$objectAny","delta.map","error.unexpectedCase","s.$any","delta.value","s.assert","delta.$mapAny","delta.$deleteOp","delta.$modifyOp","delta.$valueAny.check","delta.$insertOp","delta.$arrayAny","delta.$node","s.$literal","delta.node","delta.$nodeAny","delta.$valueAny","delta.$nodeAny.check","delta.$mapAny.cast","delta.$mapAny.check"],"mappings":"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"}
package/dist/text.cjs DELETED
@@ -1,79 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var schema = require('./schema.cjs');
6
- var abstractArray = require('./abstract-array.cjs');
7
- require('./object-18980796.cjs');
8
- require('./traits.cjs');
9
- require('./array-78849c95.cjs');
10
- require('./set-5b47859e.cjs');
11
- require('./error-0c1f634f.cjs');
12
- require('./environment-90227ead.cjs');
13
- require('./map-24d263c0.cjs');
14
- require('./string-fddc5f8b.cjs');
15
- require('./conditions-f5c0c102.cjs');
16
- require('./storage.cjs');
17
- require('./function-e7d18feb.cjs');
18
- require('./abstract.cjs');
19
- require('./ops.cjs');
20
- require('./list.cjs');
21
- require('./math-96d5e8c4.cjs');
22
-
23
- /**
24
- * @template Embeds
25
- * @typedef {import('./abstract-array.js').AbstractDeltaArray<'text',import('./ops.js').DeltaTextOps<Embeds>>} DeltaText
26
- */
27
-
28
- /**
29
- * @template {any} Embeds
30
- * @extends {AbstractDeltaArrayBuilder<'text',import('./ops.js').DeltaTextOps<Embeds>>}
31
- */
32
- class DeltaTextBuilder extends abstractArray.AbstractDeltaArrayBuilder {
33
- /**
34
- * @param {s.Schema<Embeds>} $embeds
35
- */
36
- constructor ($embeds) {
37
- super('text', $embeds);
38
- }
39
- }
40
-
41
- /**
42
- * @overload
43
- * @return {DeltaTextBuilder<never>}
44
- */
45
- /**
46
- * @overload
47
- * @param {string} [content]
48
- * @return {DeltaTextBuilder<never>}
49
- */
50
- /**
51
- * @template Embeds
52
- * @overload
53
- * @param {s.Schema<Embeds>} [$embeds]
54
- * @return {DeltaTextBuilder<Embeds>}
55
- */
56
- /**
57
- * @template {s.Schema<any>|string|undefined} Arg1
58
- * @param {Arg1} arg1
59
- * @return {DeltaTextBuilder<Arg1 extends s.Schema<infer Embeds> ? Embeds : never>}
60
- */
61
- const text = arg1 => schema.$$schema.check(arg1) ? new DeltaTextBuilder(/** @type {s.Schema<any>} */ (arg1)) : (schema.$string.check(arg1) ? new DeltaTextBuilder(schema.$never).insert(arg1) : new DeltaTextBuilder(schema.$never));
62
-
63
- /**
64
- * @template {{ [key:string]: any }} Vals
65
- * @param {s.Schema<Vals>} $embeds
66
- * @return {s.Schema<DeltaText<Vals>>}
67
- */
68
- const $text = $embeds => /** @type {s.Schema<DeltaText<Vals>>} */ (schema.$instanceOf(DeltaTextBuilder, o => $embeds.extends(o.$insert)));
69
-
70
- /**
71
- * @return {s.Schema<DeltaText<any>>}
72
- */
73
- const $textAny = /** @type {s.Schema<DeltaText<any>>} */ (schema.$instanceOf(DeltaTextBuilder));
74
-
75
- exports.$text = $text;
76
- exports.$textAny = $textAny;
77
- exports.DeltaTextBuilder = DeltaTextBuilder;
78
- exports.text = text;
79
- //# sourceMappingURL=text.cjs.map
package/dist/text.cjs.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"text.cjs","sources":["../delta/text.js"],"sourcesContent":["import * as s from '../schema.js'\nimport { AbstractDeltaArrayBuilder } from './abstract-array.js'\n\n/**\n * @template Embeds\n * @typedef {import('./abstract-array.js').AbstractDeltaArray<'text',import('./ops.js').DeltaTextOps<Embeds>>} DeltaText\n */\n\n/**\n * @template {any} Embeds\n * @extends {AbstractDeltaArrayBuilder<'text',import('./ops.js').DeltaTextOps<Embeds>>}\n */\nexport class DeltaTextBuilder extends AbstractDeltaArrayBuilder {\n /**\n * @param {s.Schema<Embeds>} $embeds\n */\n constructor ($embeds) {\n super('text', $embeds)\n }\n}\n\n/**\n * @overload\n * @return {DeltaTextBuilder<never>}\n */\n/**\n * @overload\n * @param {string} [content]\n * @return {DeltaTextBuilder<never>}\n */\n/**\n * @template Embeds\n * @overload\n * @param {s.Schema<Embeds>} [$embeds]\n * @return {DeltaTextBuilder<Embeds>}\n */\n/**\n * @template {s.Schema<any>|string|undefined} Arg1\n * @param {Arg1} arg1\n * @return {DeltaTextBuilder<Arg1 extends s.Schema<infer Embeds> ? Embeds : never>}\n */\nexport 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))\n\n/**\n * @template {{ [key:string]: any }} Vals\n * @param {s.Schema<Vals>} $embeds\n * @return {s.Schema<DeltaText<Vals>>}\n */\nexport const $text = $embeds => /** @type {s.Schema<DeltaText<Vals>>} */ (s.$instanceOf(DeltaTextBuilder, o => $embeds.extends(o.$insert)))\n\n/**\n * @return {s.Schema<DeltaText<any>>}\n */\nexport const $textAny = /** @type {s.Schema<DeltaText<any>>} */ (s.$instanceOf(DeltaTextBuilder))\n"],"names":["AbstractDeltaArrayBuilder","s.$$schema","s.$string","s.$never","s.$instanceOf"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,gBAAgB,SAASA,uCAAyB,CAAC;AAChE;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,OAAO,EAAE;AACxB,IAAI,KAAK,CAAC,MAAM,EAAE,OAAO,EAAC;AAC1B,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,IAAI,GAAG,IAAI,IAAIC,eAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,gBAAgB,+BAA+B,IAAI,EAAE,IAAIC,cAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,gBAAgB,CAACC,aAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,gBAAgB,CAACA,aAAQ,CAAC,EAAC;AACvN;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,KAAK,GAAG,OAAO,8CAA8CC,kBAAa,CAAC,gBAAgB,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAC;AAC3I;AACA;AACA;AACA;AACY,MAAC,QAAQ,4CAA4CA,kBAAa,CAAC,gBAAgB,CAAC;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"traits.d.ts","sourceRoot":"","sources":["../traits.js"],"names":[],"mappings":"AAAA,gDAAqD;AAyB9C,uBALsB,CAAC,SAAhB,aAAc,KACjB,OAAO,CAAC,CAAC,CAAC,KACV,CAAC,GACA,OAAO,CAE4D;4BAtBlE;IAAE,CAAC,mBAAmB,CAAC,EAAC,CAAC,KAAK,EAAC,aAAa,KAAG,OAAO,CAAA;CAAE"}
@@ -1,4 +0,0 @@
1
- export function testEqualityTrait1(_tc: t.TestCase): void;
2
- export function testEqualityTrait2(_tc: t.TestCase): void;
3
- import * as t from './testing.js';
4
- //# sourceMappingURL=traits.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"traits.test.d.ts","sourceRoot":"","sources":["../traits.test.js"],"names":[],"mappings":"AAQO,wCAFI,CAAC,CAAC,QAAQ,QAwCpB;AAKM,wCAFI,CAAC,CAAC,QAAQ,QA2BpB;mBA5EkB,cAAc"}