@derivesome/core 1.0.2 → 1.0.4

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 (69) hide show
  1. package/.package.json.~undo-tree~ +4 -2
  2. package/dist/cjs/index.d.ts +2 -0
  3. package/dist/cjs/index.d.ts.map +1 -1
  4. package/dist/cjs/index.js +2 -0
  5. package/dist/cjs/index.js.map +1 -1
  6. package/dist/cjs/map-proxy.d.ts +25 -0
  7. package/dist/cjs/map-proxy.d.ts.map +1 -0
  8. package/dist/cjs/map-proxy.js +80 -0
  9. package/dist/cjs/map-proxy.js.map +1 -0
  10. package/dist/cjs/reference.d.ts.map +1 -1
  11. package/dist/cjs/reference.js +3 -2
  12. package/dist/cjs/reference.js.map +1 -1
  13. package/dist/cjs/set-proxy.d.ts +26 -0
  14. package/dist/cjs/set-proxy.d.ts.map +1 -0
  15. package/dist/cjs/set-proxy.js +80 -0
  16. package/dist/cjs/set-proxy.js.map +1 -0
  17. package/dist/cjs/utils/maybeProxy.d.ts +2 -0
  18. package/dist/cjs/utils/maybeProxy.d.ts.map +1 -0
  19. package/dist/cjs/utils/maybeProxy.js +18 -0
  20. package/dist/cjs/utils/maybeProxy.js.map +1 -0
  21. package/dist/cjs/utils/nextTick.d.ts +1 -1
  22. package/dist/cjs/utils/nextTick.d.ts.map +1 -1
  23. package/dist/cjs/utils/nextTick.js +1 -1
  24. package/dist/cjs/utils/nextTick.js.map +1 -1
  25. package/dist/esm/index.d.ts +2 -0
  26. package/dist/esm/index.d.ts.map +1 -1
  27. package/dist/esm/index.js +2 -0
  28. package/dist/esm/index.js.map +1 -1
  29. package/dist/esm/map-proxy.d.ts +25 -0
  30. package/dist/esm/map-proxy.d.ts.map +1 -0
  31. package/dist/esm/map-proxy.js +76 -0
  32. package/dist/esm/map-proxy.js.map +1 -0
  33. package/dist/esm/reference.d.ts.map +1 -1
  34. package/dist/esm/reference.js +3 -2
  35. package/dist/esm/reference.js.map +1 -1
  36. package/dist/esm/set-proxy.d.ts +26 -0
  37. package/dist/esm/set-proxy.d.ts.map +1 -0
  38. package/dist/esm/set-proxy.js +76 -0
  39. package/dist/esm/set-proxy.js.map +1 -0
  40. package/dist/esm/utils/maybeProxy.d.ts +2 -0
  41. package/dist/esm/utils/maybeProxy.d.ts.map +1 -0
  42. package/dist/esm/utils/maybeProxy.js +14 -0
  43. package/dist/esm/utils/maybeProxy.js.map +1 -0
  44. package/dist/esm/utils/nextTick.d.ts +1 -1
  45. package/dist/esm/utils/nextTick.d.ts.map +1 -1
  46. package/dist/esm/utils/nextTick.js +1 -1
  47. package/dist/esm/utils/nextTick.js.map +1 -1
  48. package/package.json +1 -1
  49. package/package.json~ +1 -1
  50. package/src/.index.ts.~undo-tree~ +7 -0
  51. package/src/.map-proxy.test.ts.~undo-tree~ +68 -0
  52. package/src/.map-proxy.ts.~undo-tree~ +434 -0
  53. package/src/.reference.test.ts.~undo-tree~ +110 -0
  54. package/src/.reference.ts.~undo-tree~ +9 -0
  55. package/src/index.ts +2 -0
  56. package/src/index.ts~ +7 -0
  57. package/src/map-proxy.test.ts +65 -0
  58. package/src/map-proxy.test.ts~ +35 -0
  59. package/src/map-proxy.ts +96 -0
  60. package/src/map-proxy.ts~ +78 -0
  61. package/src/reference.test.ts +63 -0
  62. package/src/reference.test.ts~ +62 -0
  63. package/src/reference.ts +3 -2
  64. package/src/reference.ts~ +63 -0
  65. package/src/set-proxy.ts +87 -0
  66. package/src/utils/.maybeProxy.ts.~undo-tree~ +25 -0
  67. package/src/utils/maybeProxy.ts +10 -0
  68. package/src/utils/maybeProxy.ts~ +7 -0
  69. package/src/utils/nextTick.ts +3 -3
@@ -0,0 +1,110 @@
1
+ (undo-tree-save-format-version . 1)
2
+ "163edeed01e9a2ccafd61ce6ca034ed1b17971a0"
3
+ [nil nil nil nil (27034 12935 643460 230000) 0 nil]
4
+ ([nil nil ((684 . 686) (680 . 684) (#(" " 0 4 (part-side typescript)) . 679) (undo-tree-id457 . -4) (678 . 684) (677 . 678) (661 . 675) (653 . 662) (652 . 654) (649 . 652) (#("re" 0 2 (part-side typescript)) . 649) (649 . 651) (#("ref" 0 3 (part-side typescript)) . -649) (undo-tree-id458 . -3) (undo-tree-id459 . -3) (undo-tree-id460 . -3) (undo-tree-id461 . -3) 652 (639 . 652) (635 . 639) (636 . 638) (#(" " 0 4 (part-side typescript)) . 635) (635 . 639) (634 . 636) (#("}" 0 1 (part-side typescript)) . -634) (634 . 635) (#("}" 0 1 (part-side typescript)) . -634) (634 . 635) (629 . 635) (#(")" 0 1 (part-side typescript)) . -628) (628 . 629) (#(")" 0 1 (part-side typescript)) . -628) (628 . 629) (626 . 629) (625 . 626) (623 . 624) (#("'" 0 1 (font-lock-face web-mode-part-string-face part-token string part-side typescript)) . -623) (undo-tree-id462 . -1) (#("s" 0 1 (font-lock-face web-mode-part-string-face part-token string part-side typescript)) . -624) (undo-tree-id463 . -1) 625 (606 . 625) (#("e" 0 1 (font-lock-face web-mode-part-string-face part-token string part-side typescript)) . -606) (undo-tree-id464 . -1) (#("r" 0 1 (font-lock-face web-mode-part-string-face part-token string part-side typescript)) . -607) (undo-tree-id465 . -1) 608 (603 . 608) (#("\"" 0 1 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript)) . -603) (nil part-side typescript 603 . 604) (nil part-token string 603 . 604) (nil font-lock-face web-mode-part-string-face 603 . 604) (603 . 604) (#("\"" 0 1 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript)) . -603) (603 . 604) (602 . 604) (#("\"" 0 1 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript)) . -602) (602 . 603) (#(")" 0 1 (part-side typescript)) . -602) (602 . 603) (#(")" 0 1 (part-side typescript)) . -602) (602 . 603) (599 . 603) (597 . 599) (#(" " 0 2 (part-side typescript)) . 596) (undo-tree-id466 . -2) (595 . 599) (t 27022 26469 975131 717000)) nil (27034 12935 643457 747000) 0 nil])
5
+ ([nil nil ((#(" r.
6
+ " 0 6 (part-side typescript) 6 7 (part-side typescript)) . 680) (undo-tree-id450 . -6) (undo-tree-id451 . -6) (undo-tree-id452 . -6) (undo-tree-id453 . 1) (undo-tree-id454 . -6) (undo-tree-id455 . -5) (undo-tree-id456 . -6) 685) nil (27034 12935 643451 703000) 0 nil])
7
+ ([nil nil ((685 . 691) (#("a" 0 1 (part-side typescript)) . -685) (undo-tree-id348 . -1) (undo-tree-id349 . -1) (undo-tree-id350 . -1) (undo-tree-id351 . -1) (undo-tree-id352 . -1) (#("s" 0 1 (face web-mode-keyword-face part-side typescript)) . -686) (undo-tree-id353 . -1) (undo-tree-id354 . -1) (undo-tree-id355 . -1) (undo-tree-id356 . -1) (undo-tree-id357 . -1) (#("s" 0 1 (part-side typescript)) . -687) (undo-tree-id358 . -1) (undo-tree-id359 . -1) (undo-tree-id360 . -1) (undo-tree-id361 . -1) (undo-tree-id362 . -1) (#("e" 0 1 (part-side typescript)) . -688) (undo-tree-id363 . -1) (undo-tree-id364 . -1) (undo-tree-id365 . -1) (undo-tree-id366 . -1) (undo-tree-id367 . -1) (#("r" 0 1 (part-side typescript)) . -689) (undo-tree-id368 . -1) (undo-tree-id369 . -1) (undo-tree-id370 . -1) (undo-tree-id371 . -1) (undo-tree-id372 . -1) (#("t" 0 1 (part-side typescript)) . -690) (undo-tree-id373 . -1) (undo-tree-id374 . -1) (undo-tree-id375 . -1) (undo-tree-id376 . -1) (undo-tree-id377 . -1) (#("." 0 1 (part-side typescript)) . -691) (undo-tree-id378 . -1) (undo-tree-id379 . -1) (undo-tree-id380 . -1) (undo-tree-id381 . -1) (undo-tree-id382 . -1) (#("s" 0 1 (part-side typescript)) . -692) (undo-tree-id383 . -1) (undo-tree-id384 . -1) (undo-tree-id385 . -1) (undo-tree-id386 . -1) (#("t" 0 1 (part-side typescript)) . -693) (undo-tree-id387 . -1) (undo-tree-id388 . -1) (undo-tree-id389 . -1) (undo-tree-id390 . -1) (#("r" 0 1 (part-side typescript)) . -694) (undo-tree-id391 . -1) (undo-tree-id392 . -1) (undo-tree-id393 . -1) (undo-tree-id394 . -1) (#("i" 0 1 (part-side typescript)) . -695) (undo-tree-id395 . -1) (undo-tree-id396 . -1) (undo-tree-id397 . -1) (undo-tree-id398 . -1) (#("c" 0 1 (part-side typescript)) . -696) (undo-tree-id399 . -1) (undo-tree-id400 . -1) (undo-tree-id401 . -1) (undo-tree-id402 . -1) (#("t" 0 1 (part-side typescript)) . -697) (undo-tree-id403 . -1) (undo-tree-id404 . -1) (undo-tree-id405 . -1) (undo-tree-id406 . -1) (#("E" 0 1 (part-side typescript)) . -698) (undo-tree-id407 . -1) (undo-tree-id408 . -1) (undo-tree-id409 . -1) (undo-tree-id410 . -1) (#("q" 0 1 (part-side typescript)) . -699) (undo-tree-id411 . -1) (undo-tree-id412 . -1) (undo-tree-id413 . -1) (undo-tree-id414 . -1) (#("u" 0 1 (part-side typescript)) . -700) (undo-tree-id415 . -1) (undo-tree-id416 . -1) (undo-tree-id417 . -1) (undo-tree-id418 . -1) (#("a" 0 1 (part-side typescript)) . -701) (undo-tree-id419 . -1) (undo-tree-id420 . -1) (undo-tree-id421 . -1) (undo-tree-id422 . -1) (#("l" 0 1 (part-side typescript)) . -702) (undo-tree-id423 . -1) (undo-tree-id424 . -1) (undo-tree-id425 . -1) (undo-tree-id426 . -1) (#("(" 0 1 (part-side typescript)) . -703) (undo-tree-id427 . -1) (undo-tree-id428 . -1) (#(")" 0 1 (part-side typescript)) . -704) (undo-tree-id429 . -1) (undo-tree-id430 . -1) 705 (685 . 705) (#("r" 0 1 (part-side typescript)) . -685) (undo-tree-id431 . -1) (undo-tree-id432 . -1) (undo-tree-id433 . -1) (undo-tree-id434 . -1) (undo-tree-id435 . -1) (#("." 0 1 (part-side typescript)) . -686) (undo-tree-id436 . -1) (undo-tree-id437 . -1) (undo-tree-id438 . -1) (undo-tree-id439 . -1) (undo-tree-id440 . -1) (#("p" 0 1 (part-side typescript)) . -687) (undo-tree-id441 . -1) (undo-tree-id442 . -1) (undo-tree-id443 . -1) (undo-tree-id444 . -1) (#("e" 0 1 (part-side typescript)) . -688) (undo-tree-id445 . -1) (undo-tree-id446 . -1) (undo-tree-id447 . -1) (undo-tree-id448 . -1) 689 (685 . 689) (681 . 685) (#(" " 0 4 (part-side typescript)) . 680) (undo-tree-id449 . -4) (680 . 685) (#(" " 0 4 (part-side typescript)) . 679) (679 . 683) (679 . 680)) nil (27034 12935 643446 963000) 0 nil])
8
+ ([nil nil ((#(" const
9
+ " 0 4 (part-side typescript) 4 9 (face web-mode-keyword-face part-side typescript) 9 10 (part-side typescript) 10 11 (part-side typescript)) . 681) (undo-tree-id341 . -4) (undo-tree-id342 . -9) (undo-tree-id343 . -9) (undo-tree-id344 . 1) (undo-tree-id345 . -10) (undo-tree-id346 . -9) (undo-tree-id347 . -9) 690) nil (27034 12935 643418 901000) 0 nil])
10
+ ([nil nil ((150 . 152) (143 . 150) (#("derived" 0 7 (part-side typescript)) . -143) (143 . 150) (#("der" 0 3 (part-side typescript)) . -143) (undo-tree-id337 . -3) (undo-tree-id338 . -3) (undo-tree-id339 . -3) (undo-tree-id340 . -3) 146 (134 . 146) (125 . 132) (124 . 126) (#("}" 0 1 (part-side typescript)) . -124) (124 . 125) (#("}" 0 1 (part-side typescript)) . -124) (124 . 125) (116 . 125) (115 . 116)) nil (27034 12935 643416 459000) 0 nil])
11
+ ([nil nil ((#(")" 0 1 (part-side typescript)) . -773) (773 . 774) (#(")" 0 1 (part-side typescript)) . -773) (773 . 774) (765 . 774) (#(")" 0 1 (part-side typescript)) . -764) (764 . 765) (#(")" 0 1 (part-side typescript)) . -764) (764 . 765) (759 . 765) (#("." 0 1 (part-side typescript)) . -759) (undo-tree-id320 . -1) (undo-tree-id321 . -1) (undo-tree-id322 . -1) (undo-tree-id323 . -1) (undo-tree-id324 . -1) (#("v" 0 1 (part-side typescript)) . -760) (undo-tree-id325 . -1) (undo-tree-id326 . -1) (undo-tree-id327 . -1) (undo-tree-id328 . -1) (#("a" 0 1 (part-side typescript)) . -761) (undo-tree-id329 . -1) (undo-tree-id330 . -1) 762 (758 . 762) (#(")" 0 1 (part-side typescript)) . -758) (758 . 759) (#(")" 0 1 (part-side typescript)) . -758) (758 . 759) (743 . 759) (#("=" 0 1 (part-side typescript)) . -743) (undo-tree-id331 . -1) (undo-tree-id332 . -1) 744 (743 . 744) (#(")" 0 1 (part-side typescript)) . -742) (742 . 743) (#(")" 0 1 (part-side typescript)) . -742) (742 . 743) (741 . 743) (740 . 742) (733 . 740) (#("d" 0 1 (part-side typescript)) . 733) (733 . 734) (#("derived" 0 7 (part-side typescript)) . -733) (733 . 740) (#("deri" 0 4 (part-side typescript)) . -733) (undo-tree-id333 . -4) (undo-tree-id334 . -4) (undo-tree-id335 . -4) (undo-tree-id336 . -4) 737 (721 . 737) (717 . 721) (#(" " 0 4 (part-side typescript)) . 716) (716 . 720) (716 . 717)) nil (27034 12935 643413 831000) 0 nil])
12
+ ([nil nil ((843 . 844) (839 . 842) (#(")" 0 1 (part-side typescript)) . -838) (838 . 839) (#(")" 0 1 (part-side typescript)) . -838) (838 . 839) (829 . 839) (828 . 830) (817 . 828) (#("s" 0 1 (part-side typescript)) . 817) (817 . 818) (#("strictEqual" 0 11 (part-side typescript)) . -817) (817 . 828) (#("stri" 0 4 (part-side typescript)) . -817) (undo-tree-id311 . -4) (undo-tree-id312 . -4) (undo-tree-id313 . -4) (undo-tree-id314 . -4) 821 (810 . 821) (806 . 810) (#(" " 0 4 (part-side typescript)) . 805) (undo-tree-id315 . -4) (804 . 810) (803 . 804) (795 . 801) (#("=" 0 1 (part-side typescript)) . -795) (undo-tree-id316 . -1) (undo-tree-id317 . -1) (#("+" 0 1 (part-side typescript)) . -796) (undo-tree-id318 . -1) (undo-tree-id319 . -1) 797 (789 . 797) (784 . 788) (783 . 785) (775 . 784)) nil (27034 12935 643407 401000) 0 nil])
13
+ ([nil nil ((870 . 871) (867 . 869) (866 . 867) (864 . 865) (863 . 865) (#(")" 0 1 (part-side typescript)) . -863) (863 . 864) (#(")" 0 1 (part-side typescript)) . -863) (863 . 864) (858 . 864) (#(")" 0 1 (part-side typescript)) . -857) (857 . 858) (#(")" 0 1 (part-side typescript)) . -857) (857 . 858) (852 . 858) (#("s" 0 1 (part-side typescript)) . -852) (undo-tree-id266 . -1) (undo-tree-id267 . -1) (undo-tree-id268 . -1) (undo-tree-id269 . -1) (undo-tree-id270 . -1) (#("e" 0 1 (part-side typescript)) . -853) (undo-tree-id271 . -1) (undo-tree-id272 . -1) (undo-tree-id273 . -1) (undo-tree-id274 . -1) (undo-tree-id275 . -1) (#("t" 0 1 (part-side typescript)) . -854) (undo-tree-id276 . -1) (undo-tree-id277 . -1) (undo-tree-id278 . -1) (undo-tree-id279 . -1) (undo-tree-id280 . -1) 855 (#("(" 0 1 (part-side typescript)) . -855) (undo-tree-id281 . -1) (undo-tree-id282 . -1) (undo-tree-id283 . -1) (undo-tree-id284 . -1) (undo-tree-id285 . -1) (#(")" 0 1 (part-side typescript)) . 856) (undo-tree-id286 . -1) (#("'" 0 1 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript)) . -856) (undo-tree-id287 . -1) (undo-tree-id288 . -1) (undo-tree-id289 . -1) (undo-tree-id290 . -1) (#("x" 0 1 (part-side typescript)) . -857) (undo-tree-id291 . -1) (undo-tree-id292 . -1) (undo-tree-id293 . -1) (undo-tree-id294 . -1) (#("'" 0 1 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript)) . -858) (undo-tree-id295 . -1) (undo-tree-id296 . -1) (undo-tree-id297 . -1) (undo-tree-id298 . -1) (#("," 0 1 (part-side typescript)) . -859) (undo-tree-id299 . -1) (undo-tree-id300 . -1) (undo-tree-id301 . -1) (undo-tree-id302 . -1) (#(" " 0 1 (part-side typescript)) . -860) (undo-tree-id303 . -1) (undo-tree-id304 . -1) (undo-tree-id305 . -1) (undo-tree-id306 . -1) (#("0" 0 1 (part-side typescript)) . -861) (undo-tree-id307 . -1) (undo-tree-id308 . -1) (undo-tree-id309 . -1) 862 (859 . 862) (857 . 858) (856 . 858) (851 . 857) (850 . 851) (846 . 850) (#(" " 0 4 (part-side typescript)) . 845) (undo-tree-id310 . -4) (844 . 850)) nil (27034 12935 643402 589000) 0 nil])
14
+ ([nil nil ((nil rear-nonsticky nil 875 . 876) (#("
15
+ " 0 1 (part-side typescript)) . -910) (871 . 911) 870) nil (27034 12935 643391 22000) 0 nil])
16
+ ([nil nil ((873 . 877) (#(" " 0 3 (part-side typescript) 3 4 (part-side typescript rear-nonsticky t)) . 872) (undo-tree-id265 . -4) (876 . 877)) nil (27034 12935 643390 684000) 0 nil])
17
+ ([nil nil ((908 . 909) (#("0" 0 1 (part-side typescript)) . -908) (undo-tree-id264 . -1) 909) nil (27034 12935 643390 54000) 0 nil])
18
+ ([nil nil ((nil rear-nonsticky nil 915 . 916) (#("
19
+ " 0 1 (part-side typescript)) . -937) (911 . 938) 897) nil (27034 12935 643389 467000) 0 nil])
20
+ ([nil nil ((913 . 917) (#(" " 0 3 (part-side typescript) 3 4 (part-side typescript rear-nonsticky t)) . 912) (undo-tree-id263 . -4) (916 . 917)) nil (27034 12935 643389 129000) 0 nil])
21
+ ([nil nil ((935 . 936) (#("1" 0 1 (part-side typescript)) . -935) (undo-tree-id262 . -1) 936) nil (27034 12935 643388 527000) 0 nil])
22
+ ([nil nil ((nil rear-nonsticky nil 942 . 943) (#("
23
+ " 0 1 (part-side typescript)) . -977) (938 . 978) 933) nil (27034 12935 643387 994000) 0 nil])
24
+ ([nil nil ((940 . 944) (#(" " 0 3 (part-side typescript) 3 4 (part-side typescript rear-nonsticky t)) . 939) (undo-tree-id261 . -4) (943 . 944)) nil (27034 12935 643387 657000) 0 nil])
25
+ ([nil nil ((975 . 976) (#("1" 0 1 (part-side typescript)) . -975) (undo-tree-id259 . -1) (#("2" 0 1 (part-side typescript)) . -976) (undo-tree-id260 . -1) 977 (976 . 977)) nil (27034 12935 643386 280000) 0 nil])
26
+ ([nil nil ((nil rear-nonsticky nil 982 . 983) (#("
27
+ " 0 1 (part-side typescript)) . -1004) (978 . 1005) 964) nil (27034 12935 643385 261000) 0 nil])
28
+ ([nil nil ((1003 . 1004) (#(")" 0 1 (part-side typescript)) . -1003) (1002 . 1004) (#("2" 0 1 (part-side typescript)) . -1002) (undo-tree-id255 . -1) (#(")" 0 1 (part-side typescript)) . -1003) (undo-tree-id256 . -1) 1004 (998 . 999) (#("x" 0 1 (font-lock-face web-mode-part-string-face part-token string part-side typescript)) . -998) (undo-tree-id257 . -1) 999 (980 . 984) (#(" " 0 3 (part-side typescript) 3 4 (part-side typescript rear-nonsticky t)) . 979) (undo-tree-id258 . -4) (983 . 984)) nil (27034 12935 643384 613000) 0 nil])
29
+ ([nil nil ((nil rear-nonsticky nil 1009 . 1010) (#("
30
+ " 0 1 (part-side typescript)) . -1044) (1005 . 1045) 1003) nil (27034 12935 643382 716000) 0 nil])
31
+ ([nil nil ((1007 . 1011) (#(" " 0 3 (part-side typescript) 3 4 (part-side typescript rear-nonsticky t)) . 1006) (undo-tree-id254 . -4) (1010 . 1011)) nil (27034 12935 643382 257000) 0 nil])
32
+ ([nil nil ((1042 . 1043) (#("2" 0 1 (part-side typescript)) . -1042) (undo-tree-id225 . -1) (undo-tree-id226 . -1) (undo-tree-id227 . -1) (undo-tree-id228 . -1) (undo-tree-id229 . -1) (undo-tree-id230 . -1) (undo-tree-id231 . -1) (undo-tree-id232 . -1) (undo-tree-id233 . -1) (undo-tree-id234 . -1) (undo-tree-id235 . -1) (undo-tree-id236 . -1) (undo-tree-id237 . -1) (undo-tree-id238 . -1) (undo-tree-id239 . -1) (undo-tree-id240 . -1) (undo-tree-id241 . -1) (undo-tree-id242 . -1) (undo-tree-id243 . -1) (undo-tree-id244 . -1) (undo-tree-id245 . -1) (undo-tree-id246 . -1) (undo-tree-id247 . -1) (undo-tree-id248 . -1) (undo-tree-id249 . -1) (undo-tree-id250 . -1) (undo-tree-id251 . -1) (undo-tree-id252 . -1) (undo-tree-id253 . -1) 1043) nil (27034 12935 643381 394000) 0 nil])
33
+ ([nil nil ((nil rear-nonsticky nil 1049 . 1050) (#("
34
+ " 0 1 (part-side typescript)) . -1071) (1045 . 1072) 1031) nil (27034 12935 643373 740000) 0 nil])
35
+ ([nil nil ((#("," 0 1 (part-side typescript)) . -1070) (undo-tree-id202 . -1) (undo-tree-id203 . -1) (undo-tree-id204 . -1) (undo-tree-id205 . -1) (undo-tree-id206 . -1) (undo-tree-id207 . -1) (undo-tree-id208 . -1) (undo-tree-id209 . -1) (undo-tree-id210 . -1) (undo-tree-id211 . -1) (undo-tree-id212 . -1) (undo-tree-id213 . -1) (undo-tree-id214 . -1) (undo-tree-id215 . -1) (undo-tree-id216 . -1) (undo-tree-id217 . -1) (undo-tree-id218 . -1) (#(" " 0 1 (part-side typescript)) . -1071) (undo-tree-id219 . -1) (#("1" 0 1 (part-side typescript)) . -1072) (undo-tree-id220 . -1) 1073 (1060 . 1066) (#("s" 0 1 (face web-mode-function-call-face part-side typescript)) . -1060) (undo-tree-id221 . -1) (#("e" 0 1 (face web-mode-function-call-face part-side typescript)) . -1061) (undo-tree-id222 . -1) (#("t" 0 1 (face web-mode-function-call-face part-side typescript)) . -1062) (undo-tree-id223 . -1) 1063 (1047 . 1051) (#(" " 0 3 (part-side typescript) 3 4 (part-side typescript rear-nonsticky t)) . 1046) (undo-tree-id224 . -4) (1050 . 1051)) nil (27034 12935 643372 823000) 0 nil])
36
+ ([nil nil ((nil rear-nonsticky nil 1076 . 1077) (#("
37
+ " 0 1 (part-side typescript)) . -1111) (1072 . 1112) 1069) nil (27034 12935 643366 405000) 0 nil])
38
+ ([nil nil ((1074 . 1078) (#(" " 0 3 (part-side typescript) 3 4 (part-side typescript rear-nonsticky t)) . 1073) (undo-tree-id156 . -4) (undo-tree-id157 . -4) (undo-tree-id158 . -4) (undo-tree-id159 . -4) (undo-tree-id160 . -4) (undo-tree-id161 . -4) (undo-tree-id162 . -4) (undo-tree-id163 . -4) (undo-tree-id164 . -4) (undo-tree-id165 . -4) (undo-tree-id166 . -4) (undo-tree-id167 . -4) (undo-tree-id168 . -4) (undo-tree-id169 . -4) (undo-tree-id170 . -4) (undo-tree-id171 . -4) (undo-tree-id172 . -4) (undo-tree-id173 . -4) (undo-tree-id174 . -4) (undo-tree-id175 . -4) (undo-tree-id176 . -4) (undo-tree-id177 . -4) (undo-tree-id178 . -4) (undo-tree-id179 . -4) (undo-tree-id180 . -4) (undo-tree-id181 . -4) (undo-tree-id182 . -4) (undo-tree-id183 . -4) (undo-tree-id184 . -4) (undo-tree-id185 . -4) (undo-tree-id186 . -4) (undo-tree-id187 . -4) (undo-tree-id188 . -4) (undo-tree-id189 . -4) (undo-tree-id190 . -4) (undo-tree-id191 . -4) (undo-tree-id192 . -4) (undo-tree-id193 . -4) (undo-tree-id194 . -4) (undo-tree-id195 . -4) (undo-tree-id196 . -4) (undo-tree-id197 . -4) (undo-tree-id198 . -4) (undo-tree-id199 . -4) (undo-tree-id200 . -4) (undo-tree-id201 . -4) (1077 . 1078)) nil (27034 12935 643365 586000) 0 nil])
39
+ ([nil nil ((1109 . 1110) (#("3" 0 1 (part-side typescript)) . -1109) (undo-tree-id97 . -1) (undo-tree-id98 . -1) (undo-tree-id99 . -1) (undo-tree-id100 . -1) (undo-tree-id101 . -1) (undo-tree-id102 . -1) (undo-tree-id103 . -1) (undo-tree-id104 . -1) (undo-tree-id105 . -1) (undo-tree-id106 . -1) (undo-tree-id107 . -1) (undo-tree-id108 . -1) (undo-tree-id109 . -1) (undo-tree-id110 . -1) (undo-tree-id111 . -1) (undo-tree-id112 . -1) (undo-tree-id113 . -1) (undo-tree-id114 . -1) (undo-tree-id115 . -1) (undo-tree-id116 . -1) (undo-tree-id117 . -1) (undo-tree-id118 . -1) (undo-tree-id119 . -1) (undo-tree-id120 . -1) (undo-tree-id121 . -1) (undo-tree-id122 . -1) (undo-tree-id123 . -1) (undo-tree-id124 . -1) (undo-tree-id125 . -1) (undo-tree-id126 . -1) (undo-tree-id127 . -1) (undo-tree-id128 . -1) (undo-tree-id129 . -1) (undo-tree-id130 . -1) (undo-tree-id131 . -1) (undo-tree-id132 . -1) (undo-tree-id133 . -1) (undo-tree-id134 . -1) (undo-tree-id135 . -1) (undo-tree-id136 . -1) (undo-tree-id137 . -1) (undo-tree-id138 . -1) (undo-tree-id139 . -1) (undo-tree-id140 . -1) (undo-tree-id141 . -1) (undo-tree-id142 . -1) (undo-tree-id143 . -1) (undo-tree-id144 . -1) (undo-tree-id145 . -1) (undo-tree-id146 . -1) (undo-tree-id147 . -1) (undo-tree-id148 . -1) (undo-tree-id149 . -1) (undo-tree-id150 . -1) (undo-tree-id151 . -1) (undo-tree-id152 . -1) (undo-tree-id153 . -1) (undo-tree-id154 . -1) (undo-tree-id155 . -1) 1110) nil (27034 12935 643140 137000) 0 nil])
40
+ ([nil nil ((nil rear-nonsticky nil 1116 . 1117) (#("
41
+ " 0 1 (part-side typescript)) . -1138) (1112 . 1139) 1098) nil (27034 12935 643124 835000) 0 nil])
42
+ ([nil nil ((1135 . 1136) (#("y" 0 1 (font-lock-face web-mode-part-string-face part-token string part-side typescript)) . -1135) (undo-tree-id95 . -1) 1136 (1114 . 1118) (#(" " 0 3 (part-side typescript) 3 4 (part-side typescript rear-nonsticky t)) . 1113) (undo-tree-id96 . -4) (1117 . 1118)) nil (27034 12935 643124 225000) 0 nil])
43
+ ([nil nil ((nil rear-nonsticky nil 1143 . 1144) (#("
44
+ " 0 1 (part-side typescript)) . -1178) (1139 . 1179) 1135) nil (27034 12935 643121 819000) 0 nil])
45
+ ([nil nil ((1141 . 1145) (#(" " 0 3 (part-side typescript) 3 4 (part-side typescript rear-nonsticky t)) . 1140) (undo-tree-id49 . -4) (undo-tree-id50 . -4) (undo-tree-id51 . -4) (undo-tree-id52 . -4) (undo-tree-id53 . -4) (undo-tree-id54 . -4) (undo-tree-id55 . -4) (undo-tree-id56 . -4) (undo-tree-id57 . -4) (undo-tree-id58 . -4) (undo-tree-id59 . -4) (undo-tree-id60 . -4) (undo-tree-id61 . -4) (undo-tree-id62 . -4) (undo-tree-id63 . -4) (undo-tree-id64 . -4) (undo-tree-id65 . -4) (undo-tree-id66 . -4) (undo-tree-id67 . -4) (undo-tree-id68 . -4) (undo-tree-id69 . -4) (undo-tree-id70 . -4) (undo-tree-id71 . -4) (undo-tree-id72 . -4) (undo-tree-id73 . -4) (undo-tree-id74 . -4) (undo-tree-id75 . -4) (undo-tree-id76 . -4) (undo-tree-id77 . -4) (undo-tree-id78 . -4) (undo-tree-id79 . -4) (undo-tree-id80 . -4) (undo-tree-id81 . -4) (undo-tree-id82 . -4) (undo-tree-id83 . -4) (undo-tree-id84 . -4) (undo-tree-id85 . -4) (undo-tree-id86 . -4) (undo-tree-id87 . -4) (undo-tree-id88 . -4) (undo-tree-id89 . -4) (undo-tree-id90 . -4) (undo-tree-id91 . -4) (undo-tree-id92 . -4) (undo-tree-id93 . -4) (undo-tree-id94 . -4) (1144 . 1145)) nil (27034 12935 643120 112000) 0 nil])
46
+ ([nil nil ((1176 . 1177) (#("2" 0 1 (part-side typescript)) . -1176) (undo-tree-id0 . -1) (undo-tree-id1 . -1) (undo-tree-id2 . -1) (undo-tree-id3 . -1) (undo-tree-id4 . -1) (undo-tree-id5 . -1) (undo-tree-id6 . -1) (undo-tree-id7 . -1) (undo-tree-id8 . -1) (undo-tree-id9 . -1) (undo-tree-id10 . -1) (undo-tree-id11 . -1) (undo-tree-id12 . -1) (undo-tree-id13 . -1) (undo-tree-id14 . -1) (undo-tree-id15 . -1) (undo-tree-id16 . -1) (undo-tree-id17 . -1) (undo-tree-id18 . -1) (undo-tree-id19 . -1) (undo-tree-id20 . -1) (undo-tree-id21 . -1) (undo-tree-id22 . -1) (undo-tree-id23 . -1) (undo-tree-id24 . -1) (undo-tree-id25 . -1) (undo-tree-id26 . -1) (undo-tree-id27 . -1) (undo-tree-id28 . -1) (undo-tree-id29 . -1) (undo-tree-id30 . -1) (undo-tree-id31 . -1) (undo-tree-id32 . -1) (undo-tree-id33 . -1) (undo-tree-id34 . -1) (undo-tree-id35 . -1) (undo-tree-id36 . -1) (undo-tree-id37 . -1) (undo-tree-id38 . -1) (undo-tree-id39 . -1) (undo-tree-id40 . -1) (undo-tree-id41 . -1) (undo-tree-id42 . -1) (undo-tree-id43 . -1) (undo-tree-id44 . -1) (undo-tree-id45 . -1) (undo-tree-id46 . -1) (undo-tree-id47 . -1) (undo-tree-id48 . -1) 1177) nil (27034 12935 643102 792000) 0 nil])
47
+ ([nil current ((1 . 1204) (#("import { describe, assert } from \"vitest\";
48
+ import { ref } from \"./reference\";
49
+ import { Context } from \"./context\";
50
+ import { derived } from './derived';
51
+
52
+ describe(\"reference\", (it) => {
53
+ it(\"notifies subscribers through context\", () => {
54
+ const r = ref<number>(0);
55
+
56
+ let last: number = -1;
57
+
58
+ Context.runEffect(() => {
59
+ const next = r.get();
60
+ last = next;
61
+ });
62
+
63
+ assert.strictEqual(last, 0);
64
+
65
+ r.set(1);
66
+ assert.strictEqual(last, 1);
67
+
68
+ r.set(2);
69
+ assert.strictEqual(last, 2);
70
+
71
+ r.set(3);
72
+ assert.strictEqual(last, 3);
73
+
74
+ r.dispose();
75
+
76
+ r.set(4);
77
+ assert.strictEqual(last, 3);
78
+ });
79
+
80
+ it(\"properly proxies Maps\", () => {
81
+ const r = ref(new Map<string, number>);
82
+
83
+ const sum = derived(() => Array.from(r.get().values()).reduce((a, b) => a + b, 0));
84
+
85
+ assert.strictEqual(sum.peek(), 0);
86
+
87
+ r.peek().set('x', 1);
88
+
89
+ assert.strictEqual(sum.peek(), 1);
90
+
91
+ r.peek().set('x', 2);
92
+
93
+ assert.strictEqual(sum.peek(), 2);
94
+
95
+ r.peek().set('y', 1);
96
+
97
+ assert.strictEqual(sum.peek(), 3);
98
+
99
+ r.peek().delete('y');
100
+
101
+ assert.strictEqual(sum.peek(), 2);
102
+
103
+ r.peek().delete('x');
104
+
105
+ assert.strictEqual(sum.peek(), 0);
106
+
107
+ })
108
+ });
109
+ " 0 6 (face web-mode-keyword-face part-side typescript) 6 28 (part-side typescript) 28 32 (face web-mode-keyword-face part-side typescript) 32 33 (part-side typescript) 33 34 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 34 40 (font-lock-face web-mode-part-string-face part-token string part-side typescript) 40 41 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 41 43 (part-side typescript) 43 49 (face web-mode-keyword-face part-side typescript) 49 58 (part-side typescript) 58 62 (face web-mode-keyword-face part-side typescript) 62 63 (part-side typescript) 63 64 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 64 75 (font-lock-face web-mode-part-string-face part-token string part-side typescript) 75 76 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 76 78 (part-side typescript) 78 84 (face web-mode-keyword-face part-side typescript) 84 97 (part-side typescript) 97 101 (face web-mode-keyword-face part-side typescript) 101 102 (part-side typescript) 102 103 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 103 112 (font-lock-face web-mode-part-string-face part-token string part-side typescript) 112 113 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 113 115 (part-side typescript) 115 121 (face web-mode-keyword-face part-side typescript) 121 122 (part-side typescript) 122 132 (part-side typescript) 132 134 (part-side typescript) 134 138 (face web-mode-keyword-face part-side typescript) 138 139 (part-side typescript) 139 140 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 140 142 (font-lock-face web-mode-part-string-face part-token string part-side typescript) 142 149 (font-lock-face web-mode-part-string-face part-token string part-side typescript) 149 150 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 150 151 (part-side typescript) 151 152 (part-side typescript) 152 153 (part-side typescript) 153 161 (face web-mode-function-call-face part-side typescript) 161 162 (part-side typescript) 162 163 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 163 172 (font-lock-face web-mode-part-string-face part-token string part-side typescript) 172 173 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 173 185 (part-side typescript) 185 187 (part-side typescript) 187 189 (face web-mode-function-call-face part-side typescript) 189 190 (part-side typescript) 190 191 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 191 227 (font-lock-face web-mode-part-string-face part-token string part-side typescript) 227 228 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 228 242 (part-side typescript) 242 247 (face web-mode-keyword-face part-side typescript) 247 248 (part-side typescript) 248 249 (face web-mode-variable-name-face part-side typescript) 249 256 (part-side typescript) 256 262 (face web-mode-type-face part-side typescript) 262 273 (part-side typescript) 273 276 (face web-mode-keyword-face part-side typescript) 276 277 (part-side typescript) 277 281 (face web-mode-variable-name-face part-side typescript) 281 309 (part-side typescript) 309 318 (face web-mode-function-call-face part-side typescript) 318 333 (part-side typescript) 333 338 (face web-mode-keyword-face part-side typescript) 338 339 (part-side typescript) 339 343 (face web-mode-variable-name-face part-side typescript) 343 348 (part-side typescript) 348 351 (face web-mode-function-call-face part-side typescript) 351 394 (part-side typescript) 394 405 (face web-mode-function-call-face part-side typescript) 405 423 (part-side typescript) 423 426 (face web-mode-function-call-face part-side typescript) 426 442 (part-side typescript) 442 453 (face web-mode-function-call-face part-side typescript) 453 471 (part-side typescript) 471 474 (face web-mode-function-call-face part-side typescript) 474 490 (part-side typescript) 490 501 (face web-mode-function-call-face part-side typescript) 501 519 (part-side typescript) 519 522 (face web-mode-function-call-face part-side typescript) 522 538 (part-side typescript) 538 549 (face web-mode-function-call-face part-side typescript) 549 567 (part-side typescript) 567 574 (face web-mode-function-call-face part-side typescript) 574 585 (part-side typescript) 585 588 (face web-mode-function-call-face part-side typescript) 588 604 (part-side typescript) 604 615 (face web-mode-function-call-face part-side typescript) 615 626 (part-side typescript) 626 632 (part-side typescript) 632 635 (part-side typescript) 635 637 (face web-mode-function-call-face part-side typescript) 637 638 (part-side typescript) 638 639 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 639 660 (font-lock-face web-mode-part-string-face part-token string part-side typescript) 660 661 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 661 663 (part-side typescript) 663 664 (part-side typescript) 664 669 (part-side typescript) 669 671 (part-side typescript) 671 675 (part-side typescript) 675 680 (face web-mode-keyword-face part-side typescript) 680 681 (part-side typescript) 681 682 (face web-mode-variable-name-face part-side typescript) 682 685 (part-side typescript) 685 688 (face web-mode-function-call-face part-side typescript) 688 689 (part-side typescript) 689 692 (face web-mode-keyword-face part-side typescript) 692 693 (part-side typescript) 693 696 (face web-mode-type-face part-side typescript) 696 697 (part-side typescript) 697 703 (face web-mode-type-face part-side typescript) 703 711 (part-side typescript) 711 712 (part-side typescript) 712 715 (part-side typescript) 715 720 (part-side typescript) 720 725 (face web-mode-keyword-face part-side typescript) 725 726 (part-side typescript) 726 729 (face web-mode-variable-name-face part-side typescript) 729 732 (part-side typescript) 732 739 (face web-mode-function-call-face part-side typescript) 739 740 (part-side typescript) 740 741 (part-side typescript) 741 752 (part-side typescript) 752 756 (face web-mode-function-call-face part-side typescript) 756 759 (part-side typescript) 759 762 (face web-mode-function-call-face part-side typescript) 762 763 (part-side typescript) 763 765 (part-side typescript) 765 771 (face web-mode-function-call-face part-side typescript) 771 772 (part-side typescript) 772 773 (part-side typescript) 773 775 (part-side typescript) 775 781 (face web-mode-function-call-face part-side typescript) 781 782 (part-side typescript) 782 800 (part-side typescript) 800 801 (part-side typescript) 801 804 (part-side typescript) 804 809 (part-side typescript) 809 816 (part-side typescript) 816 827 (face web-mode-function-call-face part-side typescript) 827 832 (part-side typescript) 832 836 (face web-mode-function-call-face part-side typescript) 836 837 (part-side typescript) 837 841 (part-side typescript) 841 844 (part-side typescript) 844 851 (part-side typescript) 851 855 (face web-mode-function-call-face part-side typescript) 855 856 (part-side typescript) 856 858 (part-side typescript) 858 861 (face web-mode-function-call-face part-side typescript) 861 862 (part-side typescript) 862 863 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 863 864 (font-lock-face web-mode-part-string-face part-token string part-side typescript) 864 865 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 865 868 (part-side typescript) 868 870 (part-side typescript) 870 871 (part-side typescript) 871 876 (part-side typescript) 876 883 (part-side typescript) 883 894 (face web-mode-function-call-face part-side typescript) 894 899 (part-side typescript) 899 903 (face web-mode-function-call-face part-side typescript) 903 910 (part-side typescript) 910 911 (part-side typescript) 911 916 (part-side typescript) 916 918 (part-side typescript) 918 922 (face web-mode-function-call-face part-side typescript) 922 925 (part-side typescript) 925 928 (face web-mode-function-call-face part-side typescript) 928 929 (part-side typescript) 929 930 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 930 931 (font-lock-face web-mode-part-string-face part-token string part-side typescript) 931 932 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 932 937 (part-side typescript) 937 938 (part-side typescript) 938 943 (part-side typescript) 943 950 (part-side typescript) 950 961 (face web-mode-function-call-face part-side typescript) 961 966 (part-side typescript) 966 970 (face web-mode-function-call-face part-side typescript) 970 977 (part-side typescript) 977 978 (part-side typescript) 978 983 (part-side typescript) 983 985 (part-side typescript) 985 989 (face web-mode-function-call-face part-side typescript) 989 992 (part-side typescript) 992 995 (face web-mode-function-call-face part-side typescript) 995 996 (part-side typescript) 996 997 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 997 998 (font-lock-face web-mode-part-string-face part-token string part-side typescript) 998 999 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 999 1002 (part-side typescript) 1002 1003 (part-side typescript) 1003 1004 (part-side typescript) 1004 1005 (part-side typescript) 1005 1010 (part-side typescript) 1010 1017 (part-side typescript) 1017 1028 (face web-mode-function-call-face part-side typescript) 1028 1033 (part-side typescript) 1033 1037 (face web-mode-function-call-face part-side typescript) 1037 1044 (part-side typescript) 1044 1045 (part-side typescript) 1045 1050 (part-side typescript) 1050 1052 (part-side typescript) 1052 1056 (face web-mode-function-call-face part-side typescript) 1056 1059 (part-side typescript) 1059 1065 (face web-mode-function-call-face part-side typescript) 1065 1066 (part-side typescript) 1066 1067 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 1067 1068 (font-lock-face web-mode-part-string-face part-token string part-side typescript) 1068 1069 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 1069 1071 (part-side typescript) 1071 1072 (part-side typescript) 1072 1077 (part-side typescript) 1077 1084 (part-side typescript) 1084 1095 (face web-mode-function-call-face part-side typescript) 1095 1100 (part-side typescript) 1100 1104 (face web-mode-function-call-face part-side typescript) 1104 1111 (part-side typescript) 1111 1112 (part-side typescript) 1112 1117 (part-side typescript) 1117 1119 (part-side typescript) 1119 1123 (face web-mode-function-call-face part-side typescript) 1123 1126 (part-side typescript) 1126 1132 (face web-mode-function-call-face part-side typescript) 1132 1133 (part-side typescript) 1133 1134 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 1134 1135 (font-lock-face web-mode-part-string-face part-token string part-side typescript) 1135 1136 (font-lock-face web-mode-part-string-face syntax-table (15) part-token string part-side typescript) 1136 1138 (part-side typescript) 1138 1139 (part-side typescript) 1139 1144 (part-side typescript) 1144 1151 (part-side typescript) 1151 1162 (face web-mode-function-call-face part-side typescript) 1162 1167 (part-side typescript) 1167 1171 (face web-mode-function-call-face part-side typescript) 1171 1178 (part-side typescript) 1178 1179 (part-side typescript) 1179 1180 (part-side typescript) 1180 1182 (part-side typescript) 1182 1183 (part-side typescript) 1183 1184 (part-side typescript) 1184 1185 (part-side typescript) 1185 1189 (part-side typescript)) . 1) (undo-tree-id467 . -1108) (undo-tree-id468 . -1109) (undo-tree-id469 . -512) (undo-tree-id470 . -1109) (undo-tree-id471 . 13) (undo-tree-id472 . -1189) (undo-tree-id473 . -1189) (undo-tree-id474 . -746) (undo-tree-id475 . 388) (undo-tree-id476 . -773) (undo-tree-id477 . -746) (undo-tree-id478 . -773) (undo-tree-id479 . -746) (undo-tree-id480 . -866) (undo-tree-id481 . -1041) (undo-tree-id482 . -1041) (undo-tree-id483 . -1041) (undo-tree-id484 . -1041) (undo-tree-id485 . -1041) (undo-tree-id486 . -1041) (undo-tree-id487 . -1041) (undo-tree-id488 . -1041) (undo-tree-id489 . -1041) (undo-tree-id490 . -1041) (undo-tree-id491 . -1041) (undo-tree-id492 . -1041) (undo-tree-id493 . -1041) (undo-tree-id494 . -1041) (undo-tree-id495 . -1041) (undo-tree-id496 . -1041) (undo-tree-id497 . -1041) (undo-tree-id498 . -1041) (undo-tree-id499 . -1041) (undo-tree-id500 . -1041) (undo-tree-id501 . -1041) (undo-tree-id502 . -1041) (undo-tree-id503 . -1041) (undo-tree-id504 . -1041) (undo-tree-id505 . -1041) (undo-tree-id506 . -1041) (undo-tree-id507 . -1041) (undo-tree-id508 . -1069) (undo-tree-id509 . -1069) (undo-tree-id510 . -1069) (undo-tree-id511 . -1069) (undo-tree-id512 . -1069) (undo-tree-id513 . -1069) (undo-tree-id514 . -1069) (undo-tree-id515 . -1069) (undo-tree-id516 . -1069) (undo-tree-id517 . -1069) (undo-tree-id518 . -1069) (undo-tree-id519 . -1069) (undo-tree-id520 . -1069) (undo-tree-id521 . -1069) (undo-tree-id522 . -1069) (undo-tree-id523 . -1072) (undo-tree-id524 . -1072) (undo-tree-id525 . -1072) (undo-tree-id526 . -1072) (undo-tree-id527 . -1072) (undo-tree-id528 . -1072) (undo-tree-id529 . -1072) (undo-tree-id530 . -1072) (undo-tree-id531 . -1072) (undo-tree-id532 . -1072) (undo-tree-id533 . -1072) (undo-tree-id534 . -1072) (undo-tree-id535 . -1072) (undo-tree-id536 . -1072) (undo-tree-id537 . -1072) (undo-tree-id538 . -1072) (undo-tree-id539 . -1072) (undo-tree-id540 . -1072) (undo-tree-id541 . -1072) (undo-tree-id542 . -1072) (undo-tree-id543 . -1072) (undo-tree-id544 . -1072) (undo-tree-id545 . -1072) (undo-tree-id546 . -1072) (undo-tree-id547 . -1072) (undo-tree-id548 . -1072) (undo-tree-id549 . -1072) (undo-tree-id550 . -1072) (undo-tree-id551 . -1072) (undo-tree-id552 . -1072) (undo-tree-id553 . -1072) (undo-tree-id554 . -1072) (undo-tree-id555 . -1072) (undo-tree-id556 . -1072) (undo-tree-id557 . -1072) (undo-tree-id558 . -1072) (undo-tree-id559 . -1072) (undo-tree-id560 . -1072) (undo-tree-id561 . -1072) (undo-tree-id562 . -1072) (undo-tree-id563 . -1072) (undo-tree-id564 . -1072) (undo-tree-id565 . -1072) (undo-tree-id566 . -1072) (undo-tree-id567 . -1108) (undo-tree-id568 . -1108) (undo-tree-id569 . -1108) (undo-tree-id570 . -1108) (undo-tree-id571 . -1108) (undo-tree-id572 . -1108) (undo-tree-id573 . -1108) (undo-tree-id574 . -1108) (undo-tree-id575 . -1108) (undo-tree-id576 . -1108) (undo-tree-id577 . -1108) (undo-tree-id578 . -1108) (undo-tree-id579 . -1108) (undo-tree-id580 . -1108) (undo-tree-id581 . -1108) (undo-tree-id582 . -1108) (undo-tree-id583 . -1108) (undo-tree-id584 . -1108) (undo-tree-id585 . -1108) (undo-tree-id586 . -1108) (undo-tree-id587 . -1108) (undo-tree-id588 . -1108) (undo-tree-id589 . -1108) (undo-tree-id590 . -1108) (undo-tree-id591 . -1108) (undo-tree-id592 . -1108) (undo-tree-id593 . -1108) (undo-tree-id594 . -1108) (undo-tree-id595 . -1108) (undo-tree-id596 . -1108) (undo-tree-id597 . -1108) (undo-tree-id598 . -1108) (undo-tree-id599 . -1108) (undo-tree-id600 . -1108) (undo-tree-id601 . -1108) (undo-tree-id602 . -1108) (undo-tree-id603 . -1108) (undo-tree-id604 . -1108) (undo-tree-id605 . -1108) (undo-tree-id606 . -1108) (undo-tree-id607 . -1108) (undo-tree-id608 . -1108) (undo-tree-id609 . -1108) (undo-tree-id610 . -1108) (undo-tree-id611 . -1108) (undo-tree-id612 . -1108) (undo-tree-id613 . -1108) (undo-tree-id614 . -1108) (undo-tree-id615 . -1108) (undo-tree-id616 . -1108) (undo-tree-id617 . -1108) (undo-tree-id618 . -1108) (undo-tree-id619 . -1108) (undo-tree-id620 . -1108) (undo-tree-id621 . -1108) (undo-tree-id622 . -1108) (undo-tree-id623 . -1108) (undo-tree-id624 . 54) (undo-tree-id625 . -1139) (undo-tree-id626 . -1139) (undo-tree-id627 . -1139) (undo-tree-id628 . -1139) (undo-tree-id629 . -1139) (undo-tree-id630 . -1139) (undo-tree-id631 . -1139) (undo-tree-id632 . -1139) (undo-tree-id633 . -1139) (undo-tree-id634 . -1139) (undo-tree-id635 . -1139) (undo-tree-id636 . -1139) (undo-tree-id637 . -1139) (undo-tree-id638 . -1139) (undo-tree-id639 . -1139) (undo-tree-id640 . -1139) (undo-tree-id641 . -1139) (undo-tree-id642 . -1139) (undo-tree-id643 . -1139) (undo-tree-id644 . -1139) (undo-tree-id645 . -1139) (undo-tree-id646 . -1139) (undo-tree-id647 . -1139) (undo-tree-id648 . -1139) (undo-tree-id649 . -1139) (undo-tree-id650 . -1139) (undo-tree-id651 . -1139) (undo-tree-id652 . -1139) (undo-tree-id653 . -1139) (undo-tree-id654 . -1139) (undo-tree-id655 . -1139) (undo-tree-id656 . -1139) (undo-tree-id657 . -1139) (undo-tree-id658 . -1139) (undo-tree-id659 . -1139) (undo-tree-id660 . -1139) (undo-tree-id661 . -1139) (undo-tree-id662 . -1139) (undo-tree-id663 . -1139) (undo-tree-id664 . -1139) (undo-tree-id665 . -1139) (undo-tree-id666 . -1139) (undo-tree-id667 . -1139) (undo-tree-id668 . -1139) (undo-tree-id669 . -1175) (undo-tree-id670 . -1175) (undo-tree-id671 . -1175) (undo-tree-id672 . -1175) (undo-tree-id673 . -1175) (undo-tree-id674 . -1175) (undo-tree-id675 . -1175) (undo-tree-id676 . -1175) (undo-tree-id677 . -1175) (undo-tree-id678 . -1175) (undo-tree-id679 . -1175) (undo-tree-id680 . -1175) (undo-tree-id681 . -1175) (undo-tree-id682 . -1175) (undo-tree-id683 . -1175) (undo-tree-id684 . -1175) (undo-tree-id685 . -1175) (undo-tree-id686 . -1175) (undo-tree-id687 . -1175) (undo-tree-id688 . -1175) (undo-tree-id689 . -1175) (undo-tree-id690 . -1175) (undo-tree-id691 . -1175) (undo-tree-id692 . -1175) (undo-tree-id693 . -1175) (undo-tree-id694 . -1175) (undo-tree-id695 . -1175) (undo-tree-id696 . -1175) (undo-tree-id697 . -1175) (undo-tree-id698 . -1175) (undo-tree-id699 . -1175) (undo-tree-id700 . -1175) (undo-tree-id701 . -1175) (undo-tree-id702 . -1175) (undo-tree-id703 . -1175) (undo-tree-id704 . -1175) (undo-tree-id705 . -1175) (undo-tree-id706 . -1175) (undo-tree-id707 . -1175) (undo-tree-id708 . -1175) (undo-tree-id709 . -1175) (undo-tree-id710 . -1175) (undo-tree-id711 . -1175) (undo-tree-id712 . -1175) (undo-tree-id713 . -1175) (undo-tree-id714 . -1175) (undo-tree-id715 . -1175) (undo-tree-id716 . -1175) (undo-tree-id717 . -1175) (undo-tree-id718 . -1175) (undo-tree-id719 . -1175) (undo-tree-id720 . -1175) (undo-tree-id721 . -1175) (undo-tree-id722 . -1175) (undo-tree-id723 . -1175) (undo-tree-id724 . -1175) (undo-tree-id725 . -1175) (undo-tree-id726 . -1175) (undo-tree-id727 . -1175) (undo-tree-id728 . -1175) (undo-tree-id729 . -1175) (undo-tree-id730 . -1175) (undo-tree-id731 . -1175) (undo-tree-id732 . -1175) (undo-tree-id733 . -1175) (undo-tree-id734 . -1175) (undo-tree-id735 . -1175) (undo-tree-id736 . -1175) (undo-tree-id737 . -1175) (undo-tree-id738 . -1175) (undo-tree-id739 . -1175) (undo-tree-id740 . -1175) (undo-tree-id741 . -1175) (undo-tree-id742 . -1175) (undo-tree-id743 . -1175) (undo-tree-id744 . -1175) (undo-tree-id745 . -1175) (undo-tree-id746 . -1175) (undo-tree-id747 . -1175) (undo-tree-id748 . -1175) (undo-tree-id749 . -1175) (undo-tree-id750 . -1175) (undo-tree-id751 . -1175) (undo-tree-id752 . -1175) (undo-tree-id753 . -1175) (undo-tree-id754 . -1175) (undo-tree-id755 . -1175) (undo-tree-id756 . -1175) (undo-tree-id757 . -1175) (undo-tree-id758 . -1175) (undo-tree-id759 . -1175) (undo-tree-id760 . -1175) (undo-tree-id761 . -1175) (undo-tree-id762 . -1175) (undo-tree-id763 . -1175) (undo-tree-id764 . -1175) (undo-tree-id765 . -1175) (undo-tree-id766 . -1175) (undo-tree-id767 . -1175) (undo-tree-id768 . -1175) (undo-tree-id769 . -1175) (undo-tree-id770 . -1175) (undo-tree-id771 . -1175) (undo-tree-id772 . -1175) (undo-tree-id773 . -1175) (undo-tree-id774 . -1175) (undo-tree-id775 . -1175) (undo-tree-id776 . -1175) (undo-tree-id777 . -1175) (undo-tree-id778 . -1175) (undo-tree-id779 . -1175) (undo-tree-id780 . -1175) (undo-tree-id781 . -1175) (undo-tree-id782 . -1175) (undo-tree-id783 . -1175) (undo-tree-id784 . -1175) (undo-tree-id785 . -1175) (undo-tree-id786 . -1175) (undo-tree-id787 . -1175) (undo-tree-id788 . -1175) (undo-tree-id789 . -1175) (undo-tree-id790 . -1175) (undo-tree-id791 . -1175) (undo-tree-id792 . -512) (undo-tree-id793 . -1175) (undo-tree-id794 . -1175) (undo-tree-id795 . -1175) (undo-tree-id796 . -1175) (undo-tree-id797 . -1175) (undo-tree-id798 . -1175) (undo-tree-id799 . -1175) (undo-tree-id800 . -1175) (undo-tree-id801 . -1175) (undo-tree-id802 . -1175) (undo-tree-id803 . -1175) (undo-tree-id804 . -1175) (undo-tree-id805 . -1175) (undo-tree-id806 . -1175) (undo-tree-id807 . -1175) (undo-tree-id808 . -1175) (undo-tree-id809 . -1175) (undo-tree-id810 . -1175) (undo-tree-id811 . -1175) (undo-tree-id812 . -1175) (undo-tree-id813 . -1175) (undo-tree-id814 . -1175) (undo-tree-id815 . -1175) (undo-tree-id816 . -1175) (undo-tree-id817 . -1175) (undo-tree-id818 . -1175) (undo-tree-id819 . -1175) (undo-tree-id820 . -1175) (undo-tree-id821 . -1175) (undo-tree-id822 . -1175) (undo-tree-id823 . -1175) (undo-tree-id824 . -1175) (undo-tree-id825 . -1175) (undo-tree-id826 . -1175) (undo-tree-id827 . -1175) (undo-tree-id828 . -1175) (undo-tree-id829 . -1175) (undo-tree-id830 . -1175) (undo-tree-id831 . -1175) (undo-tree-id832 . -1175) (undo-tree-id833 . -1175) (undo-tree-id834 . -1175) (undo-tree-id835 . -1175) (undo-tree-id836 . -1175) (undo-tree-id837 . -1175) (undo-tree-id838 . -1175) (undo-tree-id839 . -1175) (undo-tree-id840 . -1175) (undo-tree-id841 . -1175) (undo-tree-id842 . -1175) (undo-tree-id843 . -1175) (undo-tree-id844 . -1175) (undo-tree-id845 . -1175) (undo-tree-id846 . -1175) (undo-tree-id847 . -1175) (undo-tree-id848 . -1175) (undo-tree-id849 . -1175) (undo-tree-id850 . -1175) (undo-tree-id851 . -1175) (undo-tree-id852 . -1175) (undo-tree-id853 . -1175) (undo-tree-id854 . -1175) (undo-tree-id855 . -1175) (undo-tree-id856 . -1175) (undo-tree-id857 . -1175) (undo-tree-id858 . -1175) (undo-tree-id859 . -1175) (undo-tree-id860 . -1175) (undo-tree-id861 . -1175) (undo-tree-id862 . -1175) (undo-tree-id863 . -1175) (undo-tree-id864 . -1175) (undo-tree-id865 . -1175) (undo-tree-id866 . -1175) (undo-tree-id867 . -1175) (undo-tree-id868 . -1175) (undo-tree-id869 . -1175) (undo-tree-id870 . -1175) (undo-tree-id871 . -1175) (undo-tree-id872 . -1175) (undo-tree-id873 . -1175) (undo-tree-id874 . -1175) (undo-tree-id875 . -1175) (undo-tree-id876 . -512) (undo-tree-id877 . -1175) (undo-tree-id878 . -1175) (undo-tree-id879 . -1175) (undo-tree-id880 . -1175) (undo-tree-id881 . -1175) (undo-tree-id882 . -1175) (undo-tree-id883 . -1175) (undo-tree-id884 . -512) (undo-tree-id885 . -1175) (undo-tree-id886 . -1175) (undo-tree-id887 . -1189) (undo-tree-id888 . -1189) (t 27034 12936 927938 731000)) nil (27034 12939 190364 550000) 0 nil])
110
+ nil
@@ -0,0 +1,9 @@
1
+ (undo-tree-save-format-version . 1)
2
+ "bb58f63da506eccb02c4dfc8120c4e56edef25be"
3
+ [nil nil nil nil (27034 12681 192272 598000) 0 nil]
4
+ ([nil nil ((#("value" 0 5 (part-side typescript)) . 694) (undo-tree-id519 . -4) (undo-tree-id520 . -4) (undo-tree-id521 . -4) (undo-tree-id522 . -5) (undo-tree-id523 . -5) (undo-tree-id524 . -5) (undo-tree-id525 . -5) (undo-tree-id526 . -5) (undo-tree-id527 . -5) (undo-tree-id528 . -5) (undo-tree-id529 . -5) (undo-tree-id530 . -5) (undo-tree-id531 . -5) (undo-tree-id532 . -4) (undo-tree-id533 . -4) (undo-tree-id534 . -4) (undo-tree-id535 . -4) (undo-tree-id536 . -4) (undo-tree-id537 . -4) (undo-tree-id538 . -4) (undo-tree-id539 . -4) (undo-tree-id540 . -4) (undo-tree-id541 . -4) (undo-tree-id542 . -4) (undo-tree-id543 . -4) (undo-tree-id544 . -4) (undo-tree-id545 . -4) (undo-tree-id546 . -4) (undo-tree-id547 . -4) (undo-tree-id548 . -4) (undo-tree-id549 . -4) (undo-tree-id550 . -4) (undo-tree-id551 . -4) (undo-tree-id552 . -4) (undo-tree-id553 . -4) (undo-tree-id554 . -4) (undo-tree-id555 . -4) (undo-tree-id556 . -4) (undo-tree-id557 . -4) (undo-tree-id558 . -4) (undo-tree-id559 . -4) (undo-tree-id560 . -4) (undo-tree-id561 . -4) (undo-tree-id562 . -4) (undo-tree-id563 . -4) (undo-tree-id564 . -4) (undo-tree-id565 . -4) (undo-tree-id566 . -4) (undo-tree-id567 . -4) (undo-tree-id568 . -4) (undo-tree-id569 . -5) (undo-tree-id570 . -5) (t 27022 26469 975131 717000)) nil (27034 12681 192271 691000) 0 nil])
5
+ ([nil nil ((761 . 766) (760 . 762) (#(">" 0 1 (part-side typescript)) . -760) (undo-tree-id171 . 1) (undo-tree-id172 . -1) (undo-tree-id173 . -1) (undo-tree-id174 . -1) (undo-tree-id175 . -1) (undo-tree-id176 . -1) (undo-tree-id177 . -1) (undo-tree-id178 . -1) (undo-tree-id179 . -1) (undo-tree-id180 . -1) (undo-tree-id181 . -1) (undo-tree-id182 . -1) (undo-tree-id183 . -1) (undo-tree-id184 . -1) (undo-tree-id185 . -1) (undo-tree-id186 . -1) (undo-tree-id187 . -1) (undo-tree-id188 . -1) (undo-tree-id189 . -1) (undo-tree-id190 . -1) (undo-tree-id191 . -1) (undo-tree-id192 . -1) (undo-tree-id193 . -1) 761 (#("<" 0 1 (part-side typescript)) . -760) (undo-tree-id194 . -1) (undo-tree-id195 . -1) (undo-tree-id196 . -1) (undo-tree-id197 . -1) (undo-tree-id198 . -1) (undo-tree-id199 . -1) (undo-tree-id200 . -1) (undo-tree-id201 . -1) (undo-tree-id202 . -1) (undo-tree-id203 . -1) (undo-tree-id204 . -1) (undo-tree-id205 . -1) (undo-tree-id206 . -1) (undo-tree-id207 . -1) (undo-tree-id208 . -1) (undo-tree-id209 . -1) (undo-tree-id210 . -1) (undo-tree-id211 . -1) (undo-tree-id212 . -1) (undo-tree-id213 . -1) (undo-tree-id214 . -1) (undo-tree-id215 . -1) (undo-tree-id216 . -1) (undo-tree-id217 . -1) (undo-tree-id218 . -1) (undo-tree-id219 . -1) (undo-tree-id220 . -1) (undo-tree-id221 . -1) (undo-tree-id222 . -1) (undo-tree-id223 . -1) (undo-tree-id224 . -1) (undo-tree-id225 . -1) (undo-tree-id226 . -1) (undo-tree-id227 . -1) (undo-tree-id228 . -1) (undo-tree-id229 . -1) (undo-tree-id230 . -1) (undo-tree-id231 . -1) (undo-tree-id232 . -1) (undo-tree-id233 . -1) (undo-tree-id234 . -1) (undo-tree-id235 . -1) (undo-tree-id236 . -1) (undo-tree-id237 . -1) (undo-tree-id238 . -1) (undo-tree-id239 . -1) (undo-tree-id240 . -1) (undo-tree-id241 . -1) (undo-tree-id242 . -1) (undo-tree-id243 . -1) (undo-tree-id244 . -1) (undo-tree-id245 . -1) (undo-tree-id246 . -1) (undo-tree-id247 . -1) (undo-tree-id248 . -1) (undo-tree-id249 . -1) (undo-tree-id250 . -1) (undo-tree-id251 . -1) (undo-tree-id252 . -1) (undo-tree-id253 . -1) (undo-tree-id254 . -1) (undo-tree-id255 . -1) (undo-tree-id256 . -1) (undo-tree-id257 . -1) (undo-tree-id258 . -1) (undo-tree-id259 . -1) (undo-tree-id260 . -1) (undo-tree-id261 . -1) (undo-tree-id262 . -1) (undo-tree-id263 . -1) (undo-tree-id264 . -1) (undo-tree-id265 . -1) (undo-tree-id266 . -1) (undo-tree-id267 . -1) (undo-tree-id268 . -1) (undo-tree-id269 . -1) (undo-tree-id270 . -1) (undo-tree-id271 . -1) (undo-tree-id272 . -1) (undo-tree-id273 . -1) (undo-tree-id274 . -1) (undo-tree-id275 . -1) (undo-tree-id276 . -1) (undo-tree-id277 . -1) (undo-tree-id278 . -1) (undo-tree-id279 . -1) (undo-tree-id280 . -1) (undo-tree-id281 . -1) (undo-tree-id282 . -1) (undo-tree-id283 . -1) (undo-tree-id284 . -1) (undo-tree-id285 . -1) (undo-tree-id286 . -1) (undo-tree-id287 . -1) (#("v" 0 1 (face web-mode-type-face part-side typescript)) . -761) (undo-tree-id288 . -1) (undo-tree-id289 . -1) (undo-tree-id290 . -1) (undo-tree-id291 . -1) (undo-tree-id292 . -1) (undo-tree-id293 . -1) (undo-tree-id294 . -1) (undo-tree-id295 . -1) (undo-tree-id296 . -1) (undo-tree-id297 . -1) (undo-tree-id298 . -1) (undo-tree-id299 . -1) (undo-tree-id300 . -1) (undo-tree-id301 . -1) (undo-tree-id302 . -1) (undo-tree-id303 . -1) (undo-tree-id304 . -1) (undo-tree-id305 . -1) (undo-tree-id306 . -1) (undo-tree-id307 . -1) (undo-tree-id308 . -1) (undo-tree-id309 . -1) (undo-tree-id310 . -1) (undo-tree-id311 . -1) (undo-tree-id312 . -1) (undo-tree-id313 . -1) (undo-tree-id314 . -1) (undo-tree-id315 . -1) (undo-tree-id316 . -1) (undo-tree-id317 . -1) (undo-tree-id318 . -1) (undo-tree-id319 . -1) (undo-tree-id320 . -1) (undo-tree-id321 . -1) (undo-tree-id322 . -1) (undo-tree-id323 . -1) (undo-tree-id324 . -1) (undo-tree-id325 . -1) (undo-tree-id326 . -1) (undo-tree-id327 . -1) (undo-tree-id328 . -1) (undo-tree-id329 . -1) (undo-tree-id330 . -1) (undo-tree-id331 . -1) (undo-tree-id332 . -1) (undo-tree-id333 . -1) (undo-tree-id334 . -1) (undo-tree-id335 . -1) (undo-tree-id336 . -1) (undo-tree-id337 . -1) (undo-tree-id338 . -1) (undo-tree-id339 . -1) (undo-tree-id340 . -1) (undo-tree-id341 . -1) (undo-tree-id342 . -1) (undo-tree-id343 . -1) (undo-tree-id344 . -1) (undo-tree-id345 . -1) (undo-tree-id346 . -1) (undo-tree-id347 . -1) (undo-tree-id348 . -1) (undo-tree-id349 . -1) (undo-tree-id350 . -1) (undo-tree-id351 . -1) (undo-tree-id352 . -1) (undo-tree-id353 . -1) (undo-tree-id354 . -1) (undo-tree-id355 . -1) (undo-tree-id356 . -1) (undo-tree-id357 . -1) (undo-tree-id358 . -1) (undo-tree-id359 . -1) (undo-tree-id360 . -1) (undo-tree-id361 . -1) (undo-tree-id362 . -1) (undo-tree-id363 . -1) (undo-tree-id364 . -1) (undo-tree-id365 . -1) (#("a" 0 1 (face web-mode-type-face part-side typescript)) . -762) (undo-tree-id366 . -1) (undo-tree-id367 . -1) (undo-tree-id368 . -1) (undo-tree-id369 . -1) (undo-tree-id370 . -1) (undo-tree-id371 . -1) (undo-tree-id372 . -1) (undo-tree-id373 . -1) (undo-tree-id374 . -1) (undo-tree-id375 . -1) (undo-tree-id376 . -1) (undo-tree-id377 . -1) (undo-tree-id378 . -1) (undo-tree-id379 . -1) (undo-tree-id380 . -1) (undo-tree-id381 . -1) (undo-tree-id382 . -1) (undo-tree-id383 . -1) (undo-tree-id384 . -1) (undo-tree-id385 . -1) (undo-tree-id386 . -1) (undo-tree-id387 . -1) (undo-tree-id388 . -1) (undo-tree-id389 . -1) (undo-tree-id390 . -1) (undo-tree-id391 . -1) (undo-tree-id392 . -1) (undo-tree-id393 . -1) (undo-tree-id394 . -1) (undo-tree-id395 . -1) (undo-tree-id396 . -1) (undo-tree-id397 . -1) (undo-tree-id398 . -1) (undo-tree-id399 . -1) (undo-tree-id400 . -1) (undo-tree-id401 . -1) (undo-tree-id402 . -1) (undo-tree-id403 . -1) (undo-tree-id404 . -1) (undo-tree-id405 . -1) (undo-tree-id406 . -1) (undo-tree-id407 . -1) (undo-tree-id408 . -1) (undo-tree-id409 . -1) (undo-tree-id410 . -1) (undo-tree-id411 . -1) (undo-tree-id412 . -1) (undo-tree-id413 . -1) (undo-tree-id414 . -1) (undo-tree-id415 . -1) (undo-tree-id416 . -1) (undo-tree-id417 . -1) (undo-tree-id418 . -1) (undo-tree-id419 . -1) (undo-tree-id420 . -1) (undo-tree-id421 . -1) (undo-tree-id422 . -1) (undo-tree-id423 . -1) (undo-tree-id424 . -1) (undo-tree-id425 . -1) (undo-tree-id426 . -1) (undo-tree-id427 . -1) (undo-tree-id428 . -1) (#("l" 0 1 (face web-mode-type-face part-side typescript)) . -763) (undo-tree-id429 . -1) (undo-tree-id430 . -1) (undo-tree-id431 . -1) (undo-tree-id432 . -1) (undo-tree-id433 . -1) (undo-tree-id434 . -1) (undo-tree-id435 . -1) (undo-tree-id436 . -1) (undo-tree-id437 . -1) (undo-tree-id438 . -1) (undo-tree-id439 . -1) (undo-tree-id440 . -1) (undo-tree-id441 . -1) (undo-tree-id442 . -1) (undo-tree-id443 . -1) (undo-tree-id444 . -1) (undo-tree-id445 . -1) (undo-tree-id446 . -1) (undo-tree-id447 . -1) (undo-tree-id448 . -1) (undo-tree-id449 . -1) (undo-tree-id450 . -1) (undo-tree-id451 . -1) (undo-tree-id452 . -1) (undo-tree-id453 . -1) (undo-tree-id454 . -1) (undo-tree-id455 . -1) (undo-tree-id456 . -1) (undo-tree-id457 . -1) (undo-tree-id458 . -1) (undo-tree-id459 . -1) (undo-tree-id460 . -1) (undo-tree-id461 . -1) (undo-tree-id462 . -1) (undo-tree-id463 . -1) (undo-tree-id464 . -1) (undo-tree-id465 . -1) (undo-tree-id466 . -1) (undo-tree-id467 . -1) (undo-tree-id468 . -1) (undo-tree-id469 . -1) (undo-tree-id470 . -1) (undo-tree-id471 . -1) (undo-tree-id472 . -1) (undo-tree-id473 . -1) (undo-tree-id474 . -1) (undo-tree-id475 . -1) (undo-tree-id476 . -1) (#("u" 0 1 (face web-mode-type-face part-side typescript)) . -764) (undo-tree-id477 . -1) (undo-tree-id478 . -1) (undo-tree-id479 . -1) (undo-tree-id480 . -1) (undo-tree-id481 . -1) (undo-tree-id482 . -1) (undo-tree-id483 . -1) (undo-tree-id484 . -1) (undo-tree-id485 . -1) (undo-tree-id486 . -1) (undo-tree-id487 . -1) (undo-tree-id488 . -1) (undo-tree-id489 . -1) (undo-tree-id490 . -1) (undo-tree-id491 . -1) (undo-tree-id492 . -1) (undo-tree-id493 . -1) (undo-tree-id494 . -1) (undo-tree-id495 . -1) (undo-tree-id496 . -1) (undo-tree-id497 . -1) (undo-tree-id498 . -1) (undo-tree-id499 . -1) (undo-tree-id500 . -1) (undo-tree-id501 . -1) (undo-tree-id502 . -1) (undo-tree-id503 . -1) (undo-tree-id504 . -1) (#("e" 0 1 (face web-mode-type-face part-side typescript)) . -765) (undo-tree-id505 . -1) (undo-tree-id506 . -1) (undo-tree-id507 . -1) (undo-tree-id508 . -1) (undo-tree-id509 . -1) (undo-tree-id510 . -1) (undo-tree-id511 . -1) (undo-tree-id512 . -1) (undo-tree-id513 . -1) (undo-tree-id514 . -1) 766 (761 . 766) (760 . 762) (354 . 403) (701 . 701) (701 . 711) (#("ma" 0 2 (part-side typescript)) . 701) (701 . 703) (#("maybeProxy" 0 10 (part-side typescript)) . -701) (701 . 711) (#("maybe" 0 5 (part-side typescript)) . -701) (undo-tree-id515 . -5) (undo-tree-id516 . -5) (undo-tree-id517 . -5) (undo-tree-id518 . -5) 706 (694 . 706)) nil (27034 12681 192252 892000) 0 nil])
6
+ ([nil nil ((#("isFunction(fn) ? fn(state.value) : fn" 0 10 (face web-mode-function-call-face part-side typescript) 10 17 (part-side typescript) 17 19 (face web-mode-function-call-face part-side typescript) 19 37 (part-side typescript)) . 1141) (undo-tree-id4 . -36) (undo-tree-id5 . -36) (undo-tree-id6 . -36) (undo-tree-id7 . -37) (undo-tree-id8 . -37) (undo-tree-id9 . -11) (undo-tree-id10 . -11) (undo-tree-id11 . -11) (undo-tree-id12 . -11) (undo-tree-id13 . -11) (undo-tree-id14 . -11) (undo-tree-id15 . -11) (undo-tree-id16 . -11) (undo-tree-id17 . -11) (undo-tree-id18 . -11) (undo-tree-id19 . -11) (undo-tree-id20 . -11) (undo-tree-id21 . -11) (undo-tree-id22 . -11) (undo-tree-id23 . -11) (undo-tree-id24 . -11) (undo-tree-id25 . -11) (undo-tree-id26 . -11) (undo-tree-id27 . -11) (undo-tree-id28 . -11) (undo-tree-id29 . -11) (undo-tree-id30 . -11) (undo-tree-id31 . -11) (undo-tree-id32 . -11) (undo-tree-id33 . -11) (undo-tree-id34 . -11) (undo-tree-id35 . -11) (undo-tree-id36 . -11) (undo-tree-id37 . -11) (undo-tree-id38 . -11) (undo-tree-id39 . -37) (undo-tree-id40 . -37) (undo-tree-id41 . -37) (undo-tree-id42 . -37) (undo-tree-id43 . -37) (undo-tree-id44 . -37) (undo-tree-id45 . -37) (undo-tree-id46 . -37) (undo-tree-id47 . -37) (undo-tree-id48 . -37) (undo-tree-id49 . -37) (undo-tree-id50 . -37) (undo-tree-id51 . -37) (undo-tree-id52 . -37) (undo-tree-id53 . -37) (undo-tree-id54 . -36) (undo-tree-id55 . -36) (undo-tree-id56 . -36) (undo-tree-id57 . -36) (undo-tree-id58 . -36) (undo-tree-id59 . -36) (undo-tree-id60 . -36) (undo-tree-id61 . -36) (undo-tree-id62 . -36) (undo-tree-id63 . -36) (undo-tree-id64 . -36) (undo-tree-id65 . -36) (undo-tree-id66 . -36) (undo-tree-id67 . -36) (undo-tree-id68 . -36) (undo-tree-id69 . -36) (undo-tree-id70 . -36) (undo-tree-id71 . -36) (undo-tree-id72 . -36) (undo-tree-id73 . -36) (undo-tree-id74 . -36) (undo-tree-id75 . -36) (undo-tree-id76 . -36) (undo-tree-id77 . -36) (undo-tree-id78 . -36) (undo-tree-id79 . -36) (undo-tree-id80 . -36) (undo-tree-id81 . -36) (undo-tree-id82 . -36) (undo-tree-id83 . -36) (undo-tree-id84 . -36) (undo-tree-id85 . -36) (undo-tree-id86 . -36) (undo-tree-id87 . -36) (undo-tree-id88 . -36) (undo-tree-id89 . -36) (undo-tree-id90 . -36) (undo-tree-id91 . -36) (undo-tree-id92 . -36) (undo-tree-id93 . -36) (undo-tree-id94 . -36) (undo-tree-id95 . -36) (undo-tree-id96 . -35) (undo-tree-id97 . -35) (undo-tree-id98 . -35) (undo-tree-id99 . -35) (undo-tree-id100 . -35) (undo-tree-id101 . -35) (undo-tree-id102 . -35) (undo-tree-id103 . -35) (undo-tree-id104 . -35) (undo-tree-id105 . -35) (undo-tree-id106 . -35) (undo-tree-id107 . -35) (undo-tree-id108 . -35) (undo-tree-id109 . -35) (undo-tree-id110 . -35) (undo-tree-id111 . -35) (undo-tree-id112 . -35) (undo-tree-id113 . -35) (undo-tree-id114 . -35) (undo-tree-id115 . -35) (undo-tree-id116 . -35) (undo-tree-id117 . -35) (undo-tree-id118 . -33) (undo-tree-id119 . -33) (undo-tree-id120 . -33) (undo-tree-id121 . -33) (undo-tree-id122 . -33) (undo-tree-id123 . -33) (undo-tree-id124 . -33) (undo-tree-id125 . -33) (undo-tree-id126 . -33) (undo-tree-id127 . -33) (undo-tree-id128 . -33) (undo-tree-id129 . -33) (undo-tree-id130 . -17) (undo-tree-id131 . -17) (undo-tree-id132 . -17) (undo-tree-id133 . -17) (undo-tree-id134 . -17) (undo-tree-id135 . -17) (undo-tree-id136 . -17) (undo-tree-id137 . -17) (undo-tree-id138 . -17) (undo-tree-id139 . -17) (undo-tree-id140 . -17) (undo-tree-id141 . -17) (undo-tree-id142 . -17) (undo-tree-id143 . -17) (undo-tree-id144 . -17) (undo-tree-id145 . -17) (undo-tree-id146 . -17) (undo-tree-id147 . -15) (undo-tree-id148 . -15) (undo-tree-id149 . -15) (undo-tree-id150 . -15) (undo-tree-id151 . -15) (undo-tree-id152 . -15) (undo-tree-id153 . -15) (undo-tree-id154 . -15) (undo-tree-id155 . -15) (undo-tree-id156 . -15) (undo-tree-id157 . -15) (undo-tree-id158 . -15) (undo-tree-id159 . -15) (undo-tree-id160 . -15) (undo-tree-id161 . -15) (undo-tree-id162 . -15) (undo-tree-id163 . -15) (undo-tree-id164 . -15) (undo-tree-id165 . -15) (undo-tree-id166 . -15) (undo-tree-id167 . -15) (undo-tree-id168 . -15) (undo-tree-id169 . -37) (undo-tree-id170 . -37)) nil (27034 12681 192151 303000) 0 nil])
7
+ ([nil nil ((1151 . 1153) (1141 . 1151) (#("ma" 0 2 (part-side typescript)) . 1141) (1141 . 1143) (#("maybeProxy" 0 10 (part-side typescript)) . -1141) (1141 . 1151) (#("mayb" 0 4 (part-side typescript)) . -1141) (undo-tree-id0 . -4) (undo-tree-id1 . -4) (undo-tree-id2 . -4) (undo-tree-id3 . -4) 1145 (1141 . 1145)) nil (27034 12681 192026 154000) 0 nil])
8
+ ([nil current ((nil rear-nonsticky nil 1188 . 1189) (nil part-side typescript 1171 . 1189) (nil part-side typescript 1169 . 1171) (nil face web-mode-function-call-face 1169 . 1171) (nil part-side typescript 1162 . 1169) (nil part-side typescript 1152 . 1162) (nil face web-mode-function-call-face 1152 . 1162) (1152 . 1189) 1151) nil (27034 12681 192007 54000) 0 nil])
9
+ nil
package/src/index.ts CHANGED
@@ -4,4 +4,6 @@ export * from "./effect";
4
4
  export * from "./pubsub";
5
5
  export * from "./reference";
6
6
  export * from "./derived";
7
+ export * from "./map-proxy";
8
+ export * from "./set-proxy";
7
9
  export * from "./utils";
package/src/index.ts~ ADDED
@@ -0,0 +1,7 @@
1
+ export * from "./common";
2
+ export * from "./context";
3
+ export * from "./effect";
4
+ export * from "./pubsub";
5
+ export * from "./reference";
6
+ export * from "./derived";
7
+ export * from "./utils";
@@ -0,0 +1,65 @@
1
+ import { describe, assert } from "vitest";
2
+ import { MapProxy } from "./map-proxy";
3
+ import { derived } from "./derived";
4
+
5
+ type Person = {
6
+ firstname: string;
7
+ lastname: string;
8
+ age: number;
9
+ };
10
+
11
+ describe("map-proxy", (it) => {
12
+ it("causes updates when set or deleted", () => {
13
+ const map = new MapProxy<string, Person>();
14
+
15
+ const fooPerson = derived(() => map.get("foo") || null);
16
+
17
+ assert.strictEqual(fooPerson.peek(), null);
18
+
19
+ map.set("foo", {
20
+ firstname: "foo",
21
+ lastname: "bar",
22
+ age: 32,
23
+ });
24
+
25
+ assert.deepEqual(fooPerson.peek(), {
26
+ firstname: "foo",
27
+ lastname: "bar",
28
+ age: 32,
29
+ });
30
+
31
+ map.delete("foo");
32
+
33
+ assert.strictEqual(fooPerson.peek(), null);
34
+ });
35
+
36
+ it("causes updates on keys / values", () => {
37
+ const map = new MapProxy<string, Person>();
38
+
39
+ const keys = derived(() => Array.from(map.keys()));
40
+ const values = derived(() => Array.from(map.values()));
41
+
42
+ assert.deepEqual(keys.peek(), []);
43
+ assert.deepEqual(values.peek(), []);
44
+
45
+ map.set("foo", {
46
+ firstname: "foo",
47
+ lastname: "bar",
48
+ age: 32,
49
+ });
50
+
51
+ assert.deepEqual(keys.peek(), ["foo"]);
52
+ assert.deepEqual(values.peek(), [
53
+ {
54
+ firstname: "foo",
55
+ lastname: "bar",
56
+ age: 32,
57
+ },
58
+ ]);
59
+
60
+ map.delete("foo");
61
+
62
+ assert.deepEqual(keys.peek(), []);
63
+ assert.deepEqual(values.peek(), []);
64
+ });
65
+ });
@@ -0,0 +1,35 @@
1
+ import { describe, assert } from "vitest";
2
+ import { MapProxy } from './map-proxy';
3
+ import { derived } from './derived';
4
+
5
+ type Person = {
6
+ firstname: string;
7
+ lastname: string;
8
+ age: number;
9
+ }
10
+
11
+ describe('map-proxy', (it) => {
12
+ it('causes updates when set or deleted', () => {
13
+ const map = new MapProxy<string, Person>();
14
+
15
+ const fooPerson = derived(() => map.get('foo') || null);
16
+
17
+ assert.strictEqual(fooPerson.peek(), null);
18
+
19
+ map.set('foo', {
20
+ firstname: 'foo',
21
+ lastname: 'bar',
22
+ age: 32
23
+ });
24
+
25
+ assert.deepEqual(fooPerson.peek(), {
26
+ firstname: 'foo',
27
+ lastname: 'bar',
28
+ age: 32
29
+ });
30
+
31
+ map.delete('foo');
32
+
33
+ assert.strictEqual(fooPerson.peek(), null);
34
+ })
35
+ })
@@ -0,0 +1,96 @@
1
+ import {
2
+ compare,
3
+ SubscribeOptions,
4
+ Subscription,
5
+ VoidFunction,
6
+ } from "./common";
7
+ import { Context } from "./context";
8
+ import { Effect } from "./effect";
9
+ import { Observable, OBSERVABLE } from "./observable";
10
+ import { pubsub } from "./pubsub";
11
+
12
+ export class MapProxy<K extends PropertyKey = PropertyKey, V extends any = any>
13
+ extends Map<K, V>
14
+ implements Observable<Record<K, V>>
15
+ {
16
+ [OBSERVABLE]: true = true;
17
+ ps = pubsub<Record<K, V>>();
18
+ subscribers = this.ps.subscribers;
19
+ effects = this.ps.effects;
20
+ publish = this.ps.publish;
21
+ publishAsync = this.ps.publishAsync;
22
+ subscribe = this.ps.subscribe;
23
+ addEffect = this.ps.addEffect;
24
+ dispose = this.ps.dispose;
25
+
26
+ constructor(...args: ConstructorParameters<typeof Map<K, V>>) {
27
+ super(...args);
28
+ }
29
+
30
+ private getState(): Record<K, V> {
31
+ const state = {
32
+ ...Object.fromEntries(Array.from(super.entries())),
33
+ } as Record<K, V>;
34
+ return state;
35
+ }
36
+
37
+ addEffectDependency(fx: Effect) {
38
+ this.ps.addEffect(fx.run, fx.cleanup);
39
+ }
40
+
41
+ observe(
42
+ fn: Subscription<Record<K, V>>,
43
+ options: SubscribeOptions = {},
44
+ ): VoidFunction {
45
+ if (options.immediate) {
46
+ fn(this.getState());
47
+ }
48
+ return this.ps.subscribe(fn, options.cleanup);
49
+ }
50
+
51
+ set(key: K, value: V) {
52
+ const prev = super.get(key);
53
+ const next = value;
54
+ const result = super.set(key, value);
55
+
56
+ if (!compare(next, prev)) {
57
+ const state = { ...this.getState(), [key]: value } as Record<K, V>;
58
+ this.ps.publish(state);
59
+ }
60
+
61
+ return result;
62
+ }
63
+
64
+ get(key: K) {
65
+ const fx = Context.scope.current.effect;
66
+ if (fx) this.addEffectDependency(fx);
67
+ return super.get(key);
68
+ }
69
+
70
+ delete(key: K) {
71
+ const didHave = super.has(key);
72
+ const result = super.delete(key);
73
+ if (didHave) {
74
+ this.ps.publish(this.getState());
75
+ }
76
+ return result;
77
+ }
78
+
79
+ entries() {
80
+ const fx = Context.scope.current.effect;
81
+ if (fx) this.addEffectDependency(fx);
82
+ return super.entries();
83
+ }
84
+
85
+ keys() {
86
+ const fx = Context.scope.current.effect;
87
+ if (fx) this.addEffectDependency(fx);
88
+ return super.keys();
89
+ }
90
+
91
+ values() {
92
+ const fx = Context.scope.current.effect;
93
+ if (fx) this.addEffectDependency(fx);
94
+ return super.values();
95
+ }
96
+ }
@@ -0,0 +1,78 @@
1
+ import {
2
+ compare,
3
+ SubscribeOptions,
4
+ Subscription,
5
+ VoidFunction,
6
+ } from "./common";
7
+ import { Context } from "./context";
8
+ import { Effect } from "./effect";
9
+ import { Observable, OBSERVABLE } from "./observable";
10
+ import { pubsub } from "./pubsub";
11
+
12
+ export class MapProxy<K extends PropertyKey = PropertyKey, V extends any = any>
13
+ extends Map<K, V>
14
+ implements Observable<Record<K, V>>
15
+ {
16
+ [OBSERVABLE]: true = true;
17
+ ps = pubsub<Record<K, V>>();
18
+ subscribers = this.ps.subscribers;
19
+ effects = this.ps.effects;
20
+ publish = this.ps.publish;
21
+ publishAsync = this.ps.publishAsync;
22
+ subscribe = this.ps.subscribe;
23
+ addEffect = this.ps.addEffect;
24
+ dispose = this.ps.dispose;
25
+
26
+ constructor(...args: ConstructorParameters<typeof Map<K, V>>) {
27
+ super(...args);
28
+ }
29
+
30
+ private getState(): Record<K, V> {
31
+ const state = {
32
+ ...Object.fromEntries(Array.from(super.entries())),
33
+ } as Record<K, V>;
34
+ return state;
35
+ }
36
+
37
+ addEffectDependency(fx: Effect) {
38
+ this.ps.addEffect(fx.run, fx.cleanup);
39
+ }
40
+
41
+ observe(
42
+ fn: Subscription<Record<K, V>>,
43
+ options: SubscribeOptions = {},
44
+ ): VoidFunction {
45
+ if (options.immediate) {
46
+ fn(this.getState());
47
+ }
48
+ return this.ps.subscribe(fn, options.cleanup);
49
+ }
50
+
51
+ set(key: K, value: V) {
52
+ const prev = super.get(key);
53
+ const next = value;
54
+ const result = super.set(key, value);
55
+
56
+ if (!compare(next, prev)) {
57
+ const state = { ...this.getState(), [key]: value } as Record<K, V>;
58
+ this.ps.publish(state);
59
+ }
60
+
61
+ return result;
62
+ }
63
+
64
+ get(key: K) {
65
+ const fx = Context.scope.current.effect;
66
+ if (fx) this.addEffectDependency(fx);
67
+ return super.get(key);
68
+ }
69
+
70
+ delete(key: K) {
71
+ const didHave = super.has(key);
72
+ const result = super.delete(key)
73
+ if (didHave) {
74
+ this.ps.publish(this.getState());
75
+ }
76
+ return result;
77
+ }
78
+ }
@@ -1,6 +1,7 @@
1
1
  import { describe, assert } from "vitest";
2
2
  import { ref } from "./reference";
3
3
  import { Context } from "./context";
4
+ import { derived } from "./derived";
4
5
 
5
6
  describe("reference", (it) => {
6
7
  it("notifies subscribers through context", () => {
@@ -29,4 +30,66 @@ describe("reference", (it) => {
29
30
  r.set(4);
30
31
  assert.strictEqual(last, 3);
31
32
  });
33
+
34
+ it("properly proxies Sets", () => {
35
+ const r = ref(new Set<number>());
36
+
37
+ const size = derived(() => r.get().size);
38
+ const has1 = derived(() => r.get().has(1));
39
+
40
+ assert.strictEqual(size.peek(), 0);
41
+ assert.strictEqual(has1.peek(), false);
42
+
43
+ r.peek().add(1);
44
+
45
+ assert.strictEqual(size.peek(), 1);
46
+ assert.strictEqual(has1.peek(), true);
47
+
48
+ r.peek().add(2);
49
+
50
+ assert.strictEqual(size.peek(), 2);
51
+
52
+ r.peek().add(1);
53
+
54
+ assert.strictEqual(size.peek(), 2);
55
+
56
+ r.peek().delete(1);
57
+
58
+ assert.strictEqual(size.peek(), 1);
59
+ assert.strictEqual(has1.peek(), false);
60
+
61
+ r.peek().delete(2);
62
+
63
+ assert.strictEqual(size.peek(), 0);
64
+ });
65
+
66
+ it("properly proxies Maps", () => {
67
+ const r = ref(new Map<string, number>());
68
+
69
+ const sum = derived(() =>
70
+ Array.from(r.get().values()).reduce((a, b) => a + b, 0),
71
+ );
72
+
73
+ assert.strictEqual(sum.peek(), 0);
74
+
75
+ r.peek().set("x", 1);
76
+
77
+ assert.strictEqual(sum.peek(), 1);
78
+
79
+ r.peek().set("x", 2);
80
+
81
+ assert.strictEqual(sum.peek(), 2);
82
+
83
+ r.peek().set("y", 1);
84
+
85
+ assert.strictEqual(sum.peek(), 3);
86
+
87
+ r.peek().delete("y");
88
+
89
+ assert.strictEqual(sum.peek(), 2);
90
+
91
+ r.peek().delete("x");
92
+
93
+ assert.strictEqual(sum.peek(), 0);
94
+ });
32
95
  });