@logixjs/sandbox 0.0.1 → 0.0.2

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 (248) hide show
  1. package/LICENSE +201 -0
  2. package/package.json +3 -1
  3. package/public/sandbox/chunks/chunk-2AUQRESB.js +1114 -0
  4. package/public/sandbox/chunks/chunk-2F72LQKW.js +194 -0
  5. package/public/sandbox/chunks/chunk-2PYDGDD3.js +4071 -0
  6. package/public/sandbox/chunks/chunk-2UGKSXDZ.js +16 -0
  7. package/public/sandbox/chunks/chunk-2XVE7F26.js +153 -0
  8. package/public/sandbox/chunks/chunk-3A7TFNZN.js +219 -0
  9. package/public/sandbox/chunks/chunk-3BHC6JAV.js +1070 -0
  10. package/public/sandbox/chunks/chunk-3U4CAKCX.js +61 -0
  11. package/public/sandbox/chunks/chunk-3VU3JLZO.js +272 -0
  12. package/public/sandbox/chunks/chunk-4CPONKWY.js +1170 -0
  13. package/public/sandbox/chunks/chunk-4GMUQTWH.js +850 -0
  14. package/public/sandbox/chunks/chunk-4KIYG5E4.js +749 -0
  15. package/public/sandbox/chunks/chunk-4MY35XR3.js +175 -0
  16. package/public/sandbox/chunks/chunk-5DNHJMHA.js +69 -0
  17. package/public/sandbox/chunks/chunk-5EC4S7X6.js +42 -0
  18. package/public/sandbox/chunks/chunk-5FB7QFSH.js +227 -0
  19. package/public/sandbox/chunks/chunk-5GEYCJW2.js +206 -0
  20. package/public/sandbox/chunks/chunk-5PT7Q5SS.js +373 -0
  21. package/public/sandbox/chunks/chunk-5WN5IGKA.js +166 -0
  22. package/public/sandbox/chunks/chunk-5XOBKSOT.js +213 -0
  23. package/public/sandbox/chunks/chunk-67RVISUC.js +313 -0
  24. package/public/sandbox/chunks/chunk-6ELJEKZS.js +12 -0
  25. package/public/sandbox/chunks/chunk-6FKWRVP4.js +85 -0
  26. package/public/sandbox/chunks/chunk-6JRP52YT.js +34 -0
  27. package/public/sandbox/chunks/chunk-6JYAC3G6.js +42 -0
  28. package/public/sandbox/chunks/chunk-6TUOP63Q.js +86 -0
  29. package/public/sandbox/chunks/{chunk-A6JFUNQQ.js → chunk-74C5VW7Z.js} +2 -2
  30. package/public/sandbox/chunks/chunk-75DQFC5M.js +16 -0
  31. package/public/sandbox/chunks/{chunk-UCFEP3BH.js → chunk-7GPAF2UK.js} +1 -1
  32. package/public/sandbox/chunks/chunk-7KQFTS2Y.js +135 -0
  33. package/public/sandbox/chunks/chunk-7POKWYE3.js +112 -0
  34. package/public/sandbox/chunks/chunk-7VUEF5F3.js +395 -0
  35. package/public/sandbox/chunks/chunk-7W5APZS2.js +77 -0
  36. package/public/sandbox/chunks/chunk-A6OFCXDQ.js +397 -0
  37. package/public/sandbox/chunks/chunk-A7HLOSO6.js +216 -0
  38. package/public/sandbox/chunks/chunk-AGF4RRCB.js +408 -0
  39. package/public/sandbox/chunks/chunk-ASJSJAAL.js +122 -0
  40. package/public/sandbox/chunks/chunk-ASVMK364.js +283 -0
  41. package/public/sandbox/chunks/chunk-AUDTI2BQ.js +895 -0
  42. package/public/sandbox/chunks/chunk-B2SZTA3M.js +16 -0
  43. package/public/sandbox/chunks/chunk-B6YS2UMV.js +372 -0
  44. package/public/sandbox/chunks/chunk-BCEO3MGD.js +244 -0
  45. package/public/sandbox/chunks/chunk-BCOO65D4.js +373 -0
  46. package/public/sandbox/chunks/chunk-BJOWSSEL.js +38 -0
  47. package/public/sandbox/chunks/chunk-BS2WBFW4.js +373 -0
  48. package/public/sandbox/chunks/chunk-BUVHG3NJ.js +439 -0
  49. package/public/sandbox/chunks/chunk-BVE33AN6.js +42 -0
  50. package/public/sandbox/chunks/chunk-BWTGJZVP.js +19 -0
  51. package/public/sandbox/chunks/chunk-BXD7GZC3.js +1025 -0
  52. package/public/sandbox/chunks/chunk-BZH4EUUD.js +164 -0
  53. package/public/sandbox/chunks/{chunk-HFV5GJPK.js → chunk-C2MYMMO4.js} +3 -3
  54. package/public/sandbox/chunks/chunk-CRE4NJJ6.js +271 -0
  55. package/public/sandbox/chunks/chunk-CVZPRIDB.js +706 -0
  56. package/public/sandbox/chunks/chunk-CWOXD5NG.js +991 -0
  57. package/public/sandbox/chunks/chunk-D6DOC3BJ.js +373 -0
  58. package/public/sandbox/chunks/chunk-DEPSGFSY.js +1698 -0
  59. package/public/sandbox/chunks/chunk-DM7C5NP5.js +819 -0
  60. package/public/sandbox/chunks/chunk-DN33LMOF.js +1112 -0
  61. package/public/sandbox/chunks/{chunk-S46P7MC6.js → chunk-DT7YIIWE.js} +2 -2
  62. package/public/sandbox/chunks/chunk-DVB5WRCI.js +260 -0
  63. package/public/sandbox/chunks/{chunk-TOHCFMQS.js → chunk-E3EVW7NR.js} +11 -18
  64. package/public/sandbox/chunks/chunk-E5BV567Q.js +417 -0
  65. package/public/sandbox/chunks/chunk-E7BIWMQQ.js +203 -0
  66. package/public/sandbox/chunks/chunk-EAKGPSOQ.js +83 -0
  67. package/public/sandbox/chunks/chunk-EGUYL2ER.js +75 -0
  68. package/public/sandbox/chunks/chunk-EP5GQYZ5.js +85 -0
  69. package/public/sandbox/chunks/chunk-ET6CJEHC.js +221 -0
  70. package/public/sandbox/chunks/chunk-EU67YZHZ.js +1070 -0
  71. package/public/sandbox/chunks/{chunk-PTSJJANP.js → chunk-EYNDQLSB.js} +1 -1
  72. package/public/sandbox/chunks/{chunk-CEGSWZ5S.js → chunk-EZTMVCJF.js} +1 -1
  73. package/public/sandbox/chunks/chunk-F5CLVIS6.js +907 -0
  74. package/public/sandbox/chunks/chunk-F743SKYD.js +85 -0
  75. package/public/sandbox/chunks/chunk-FEGFZ5OX.js +86 -0
  76. package/public/sandbox/chunks/chunk-FG5B7ZX3.js +373 -0
  77. package/public/sandbox/chunks/chunk-FKZPYMDG.js +373 -0
  78. package/public/sandbox/chunks/chunk-FNLXHWIU.js +220 -0
  79. package/public/sandbox/chunks/chunk-FQRUTYAD.js +1991 -0
  80. package/public/sandbox/chunks/{chunk-VLYP4WUS.js → chunk-FY5A73NK.js} +5 -5
  81. package/public/sandbox/chunks/chunk-G7FAOG3O.js +221 -0
  82. package/public/sandbox/chunks/chunk-GFXHUC7Y.js +73 -0
  83. package/public/sandbox/chunks/chunk-GIPXUIZQ.js +534 -0
  84. package/public/sandbox/chunks/chunk-GP37MEGJ.js +52 -0
  85. package/public/sandbox/chunks/chunk-GXL5QCMF.js +4511 -0
  86. package/public/sandbox/chunks/chunk-GZ2NSE6A.js +177 -0
  87. package/public/sandbox/chunks/chunk-GZATW4YD.js +69 -0
  88. package/public/sandbox/chunks/chunk-H4EBXROQ.js +166 -0
  89. package/public/sandbox/chunks/chunk-HETCPK6Z.js +153 -0
  90. package/public/sandbox/chunks/chunk-HGUFQ2QC.js +4431 -0
  91. package/public/sandbox/chunks/chunk-HGV3VNH3.js +255 -0
  92. package/public/sandbox/chunks/chunk-HIJ67QWR.js +5397 -0
  93. package/public/sandbox/chunks/chunk-IDHERBKW.js +1114 -0
  94. package/public/sandbox/chunks/chunk-IDTK4FIY.js +102 -0
  95. package/public/sandbox/chunks/chunk-ILFVY7H5.js +164 -0
  96. package/public/sandbox/chunks/chunk-ISGSRYGO.js +57 -0
  97. package/public/sandbox/chunks/chunk-J45VPU24.js +408 -0
  98. package/public/sandbox/chunks/chunk-JAUIM3O5.js +42 -0
  99. package/public/sandbox/chunks/chunk-JB7OQEM6.js +373 -0
  100. package/public/sandbox/chunks/chunk-JCKW6NHD.js +15 -0
  101. package/public/sandbox/chunks/chunk-JMA7GY7Z.js +221 -0
  102. package/public/sandbox/chunks/chunk-JY46J6IL.js +836 -0
  103. package/public/sandbox/chunks/{chunk-X72PZOFA.js → chunk-K2MQ66O7.js} +1 -1
  104. package/public/sandbox/chunks/chunk-KA7PZA6F.js +464 -0
  105. package/public/sandbox/chunks/chunk-KDEQTUID.js +102 -0
  106. package/public/sandbox/chunks/chunk-KDJR27JV.js +1696 -0
  107. package/public/sandbox/chunks/chunk-KFE3JO6N.js +77 -0
  108. package/public/sandbox/chunks/chunk-KLDSYWT5.js +536 -0
  109. package/public/sandbox/chunks/chunk-KQWWFYBF.js +203 -0
  110. package/public/sandbox/chunks/chunk-KTFZSXOW.js +6473 -0
  111. package/public/sandbox/chunks/chunk-KXVIC55U.js +108 -0
  112. package/public/sandbox/chunks/{chunk-HNEDTEGQ.js → chunk-L4PNO2H6.js} +1 -1
  113. package/public/sandbox/chunks/{chunk-WE4STGO2.js → chunk-L4ZNW5DI.js} +2 -2
  114. package/public/sandbox/chunks/chunk-LBUINGZ4.js +836 -0
  115. package/public/sandbox/chunks/chunk-LIYPPU6I.js +112 -0
  116. package/public/sandbox/chunks/chunk-LJHTOJXW.js +221 -0
  117. package/public/sandbox/chunks/{chunk-BWSNPKO5.js → chunk-LQL23SWJ.js} +2 -2
  118. package/public/sandbox/chunks/chunk-LTFCYZQ6.js +46 -0
  119. package/public/sandbox/chunks/chunk-LTWLVCKQ.js +166 -0
  120. package/public/sandbox/chunks/chunk-LWI7BXFN.js +395 -0
  121. package/public/sandbox/chunks/chunk-LYBBX6WM.js +225 -0
  122. package/public/sandbox/chunks/chunk-MXE7HIBM.js +474 -0
  123. package/public/sandbox/chunks/chunk-MYBDYNK4.js +6004 -0
  124. package/public/sandbox/chunks/chunk-NC2MIWZX.js +732 -0
  125. package/public/sandbox/chunks/chunk-NE447XAF.js +597 -0
  126. package/public/sandbox/chunks/chunk-NEAYV5C2.js +255 -0
  127. package/public/sandbox/chunks/chunk-NMGFJZ4I.js +26 -0
  128. package/public/sandbox/chunks/chunk-NWCJJZNQ.js +71 -0
  129. package/public/sandbox/chunks/chunk-O57OZBDR.js +214 -0
  130. package/public/sandbox/chunks/chunk-OJJT664Q.js +731 -0
  131. package/public/sandbox/chunks/chunk-OKTBUTCH.js +1175 -0
  132. package/public/sandbox/chunks/chunk-OQ4SYV5D.js +534 -0
  133. package/public/sandbox/chunks/chunk-OTVVIHJD.js +219 -0
  134. package/public/sandbox/chunks/chunk-OWTMSCF7.js +1052 -0
  135. package/public/sandbox/chunks/chunk-P5ZQNFC3.js +122 -0
  136. package/public/sandbox/chunks/chunk-PBPT2U2N.js +1698 -0
  137. package/public/sandbox/chunks/chunk-PHBJLCP3.js +836 -0
  138. package/public/sandbox/chunks/chunk-PHV4HYHB.js +397 -0
  139. package/public/sandbox/chunks/chunk-PIXQ6SOX.js +4071 -0
  140. package/public/sandbox/chunks/chunk-PKJL6YLK.js +73 -0
  141. package/public/sandbox/chunks/chunk-PKPOITIU.js +221 -0
  142. package/public/sandbox/chunks/{chunk-NQW73ACJ.js → chunk-PMXBOYQI.js} +1 -1
  143. package/public/sandbox/chunks/chunk-PQLZD7NR.js +836 -0
  144. package/public/sandbox/chunks/chunk-QEESVOZU.js +16 -0
  145. package/public/sandbox/chunks/chunk-QGIM3FQK.js +159 -0
  146. package/public/sandbox/chunks/chunk-QL5JNEDO.js +69 -0
  147. package/public/sandbox/chunks/chunk-QQOZ3RMH.js +867 -0
  148. package/public/sandbox/chunks/chunk-QUMEVT2F.js +194 -0
  149. package/public/sandbox/chunks/chunk-QVZBXYVY.js +102 -0
  150. package/public/sandbox/chunks/chunk-R5HQS6RB.js +135 -0
  151. package/public/sandbox/chunks/chunk-R75Q2CTT.js +900 -0
  152. package/public/sandbox/chunks/chunk-RBB6SHW2.js +253 -0
  153. package/public/sandbox/chunks/chunk-RDHNRWQP.js +383 -0
  154. package/public/sandbox/chunks/chunk-RIWOEI3T.js +1101 -0
  155. package/public/sandbox/chunks/chunk-RS5FFPUV.js +103 -0
  156. package/public/sandbox/chunks/chunk-RYSSJBGX.js +203 -0
  157. package/public/sandbox/chunks/chunk-S3KBAE5Z.js +1114 -0
  158. package/public/sandbox/chunks/chunk-S6ZZHV6G.js +244 -0
  159. package/public/sandbox/chunks/chunk-SFXJ24HY.js +499 -0
  160. package/public/sandbox/chunks/chunk-SH7TP5CJ.js +1109 -0
  161. package/public/sandbox/chunks/chunk-SI5OKFFY.js +317 -0
  162. package/public/sandbox/chunks/chunk-SIXNQNIR.js +86 -0
  163. package/public/sandbox/chunks/chunk-ST353BOX.js +42 -0
  164. package/public/sandbox/chunks/chunk-SYEHKMLP.js +1140 -0
  165. package/public/sandbox/chunks/chunk-SZ4KQUJU.js +69 -0
  166. package/public/sandbox/chunks/{chunk-5SOP6EKV.js → chunk-SZI65PSP.js} +5 -10
  167. package/public/sandbox/chunks/chunk-T7RLTSMX.js +78 -0
  168. package/public/sandbox/chunks/chunk-TJ2RLUTW.js +57 -0
  169. package/public/sandbox/chunks/chunk-TJB73XPN.js +4071 -0
  170. package/public/sandbox/chunks/chunk-TXJCYO56.js +4046 -0
  171. package/public/sandbox/chunks/chunk-U5J3LCYI.js +731 -0
  172. package/public/sandbox/chunks/chunk-UABFN3NH.js +208 -0
  173. package/public/sandbox/chunks/chunk-UBMUY7WO.js +13 -0
  174. package/public/sandbox/chunks/chunk-UC27CE32.js +69 -0
  175. package/public/sandbox/chunks/chunk-UJGVDFZN.js +147 -0
  176. package/public/sandbox/chunks/chunk-UNVLTK4N.js +122 -0
  177. package/public/sandbox/chunks/chunk-UQKQ6V3V.js +208 -0
  178. package/public/sandbox/chunks/chunk-UZZBHWIO.js +703 -0
  179. package/public/sandbox/chunks/chunk-VKZIJERL.js +1114 -0
  180. package/public/sandbox/chunks/chunk-VQQEAGID.js +372 -0
  181. package/public/sandbox/chunks/{chunk-3LX3KIQQ.js → chunk-W365QUZ5.js} +3 -5
  182. package/public/sandbox/chunks/chunk-WJY2LSWG.js +1052 -0
  183. package/public/sandbox/chunks/chunk-WNOBN3DX.js +391 -0
  184. package/public/sandbox/chunks/chunk-X2Z5VYG3.js +245 -0
  185. package/public/sandbox/chunks/chunk-X74KU74D.js +959 -0
  186. package/public/sandbox/chunks/chunk-XE7ULSGQ.js +46 -0
  187. package/public/sandbox/chunks/chunk-XRXUJZ3X.js +431 -0
  188. package/public/sandbox/chunks/chunk-XWHIN7CC.js +85 -0
  189. package/public/sandbox/chunks/chunk-Y2TVGGVL.js +527 -0
  190. package/public/sandbox/chunks/chunk-YMVMZA3U.js +1395 -0
  191. package/public/sandbox/chunks/chunk-YOBLFWDV.js +431 -0
  192. package/public/sandbox/chunks/chunk-YR2RFEZA.js +11 -0
  193. package/public/sandbox/chunks/chunk-YTD6A35P.js +836 -0
  194. package/public/sandbox/chunks/chunk-Z5L7EZXS.js +81 -0
  195. package/public/sandbox/chunks/chunk-Z65I5ET2.js +108 -0
  196. package/public/sandbox/chunks/chunk-Z6LV34RO.js +390 -0
  197. package/public/sandbox/chunks/chunk-ZAKUP6QG.js +1634 -0
  198. package/public/sandbox/chunks/chunk-ZHNYE2YH.js +731 -0
  199. package/public/sandbox/chunks/chunk-ZHQX3B3Y.js +867 -0
  200. package/public/sandbox/chunks/chunk-ZIXDFRHJ.js +731 -0
  201. package/public/sandbox/chunks/chunk-ZPZ2MZ4D.js +528 -0
  202. package/public/sandbox/chunks/chunk-ZQD6NZXB.js +373 -0
  203. package/public/sandbox/chunks/chunk-ZVVBP7ON.js +16 -0
  204. package/public/sandbox/chunks/chunk-ZWE3P6X2.js +11 -0
  205. package/public/sandbox/logix-core/Bound.js +14 -14
  206. package/public/sandbox/logix-core/Debug.js +12 -10
  207. package/public/sandbox/logix-core/EffectOp.js +3 -4
  208. package/public/sandbox/logix-core/Env.js +5 -2
  209. package/public/sandbox/logix-core/ExternalStore.js +239 -0
  210. package/public/sandbox/logix-core/Flow.js +7 -8
  211. package/public/sandbox/logix-core/Kernel.js +7 -4
  212. package/public/sandbox/logix-core/Link.js +33 -25
  213. package/public/sandbox/logix-core/Middleware.js +13 -11
  214. package/public/sandbox/logix-core/Module.js +93 -30
  215. package/public/sandbox/logix-core/ModuleTag.js +28 -25
  216. package/public/sandbox/logix-core/Observability.js +21 -19
  217. package/public/sandbox/logix-core/Process.js +27 -22
  218. package/public/sandbox/logix-core/ReadQuery.js +7 -11
  219. package/public/sandbox/logix-core/Reflection.js +173 -53
  220. package/public/sandbox/logix-core/Resource.js +6 -3
  221. package/public/sandbox/logix-core/Root.js +7 -3
  222. package/public/sandbox/logix-core/Runtime.js +54 -40
  223. package/public/sandbox/logix-core/ScopeRegistry.js +6 -3
  224. package/public/sandbox/logix-core/StateTrait.js +17 -14
  225. package/public/sandbox/logix-core/TraitLifecycle.js +8 -8
  226. package/public/sandbox/logix-core/Workflow.js +332 -0
  227. package/public/sandbox/logix-core.js +11133 -6622
  228. package/public/sandbox/logix-core.manifest.json +4 -2
  229. package/public/sandbox/worker.js +3 -3
  230. package/public/sandbox/chunks/chunk-4LRLOTMA.js +0 -1698
  231. package/public/sandbox/chunks/chunk-CDLXJHXY.js +0 -120
  232. package/public/sandbox/chunks/chunk-CZRI7MHA.js +0 -46
  233. package/public/sandbox/chunks/chunk-EJDFUZ4B.js +0 -408
  234. package/public/sandbox/chunks/chunk-IP63FME6.js +0 -282
  235. package/public/sandbox/chunks/chunk-JIXTOQXJ.js +0 -1103
  236. package/public/sandbox/chunks/chunk-MPUSOFJ3.js +0 -1928
  237. package/public/sandbox/chunks/chunk-ON2LY6HJ.js +0 -135
  238. package/public/sandbox/chunks/chunk-POIBXAH5.js +0 -995
  239. package/public/sandbox/chunks/chunk-PQ652ULI.js +0 -6359
  240. package/public/sandbox/chunks/chunk-RJQ4PG2F.js +0 -77
  241. package/public/sandbox/chunks/chunk-S4EXG3OS.js +0 -533
  242. package/public/sandbox/chunks/chunk-SUXDGXVE.js +0 -390
  243. package/public/sandbox/chunks/chunk-TOQ6SJ6O.js +0 -244
  244. package/public/sandbox/chunks/chunk-UKYAF3NL.js +0 -1036
  245. package/public/sandbox/chunks/chunk-UMVN3AWO.js +0 -395
  246. package/public/sandbox/chunks/chunk-WFV5PPWJ.js +0 -194
  247. package/public/sandbox/chunks/chunk-YF6IO732.js +0 -206
  248. package/public/sandbox/chunks/chunk-ZUBABAAO.js +0 -86
@@ -0,0 +1,239 @@
1
+ // @logixjs/core subpath bundles for @logixjs/sandbox
2
+
3
+ import {
4
+ compile
5
+ } from "../chunks/chunk-BWTGJZVP.js";
6
+ import {
7
+ attachExternalStoreDescriptor
8
+ } from "../chunks/chunk-NMGFJZ4I.js";
9
+ import {
10
+ getGlobalHostScheduler
11
+ } from "../chunks/chunk-UJGVDFZN.js";
12
+ import "../chunks/chunk-LWI7BXFN.js";
13
+ import {
14
+ fnv1a32,
15
+ stableStringify
16
+ } from "../chunks/chunk-DT7YIIWE.js";
17
+
18
+ // ../logix-core/src/ExternalStore.ts
19
+ import { Effect, Fiber, Stream, SubscriptionRef } from "../effect.js";
20
+ var makeError = (code, message) => Object.assign(new Error(message), { _tag: "ExternalStoreRuntimeError", code });
21
+ var hasOwn = (value, key) => !!value && typeof value === "object" && Object.prototype.hasOwnProperty.call(value, key);
22
+ var makeStoreId = (payload) => `es_${fnv1a32(stableStringify(payload))}`;
23
+ var defineDescriptor = (store, descriptor) => {
24
+ attachExternalStoreDescriptor(store, descriptor);
25
+ return store;
26
+ };
27
+ var makeNotifyScheduler = (listeners) => {
28
+ let scheduled = false;
29
+ return () => {
30
+ if (scheduled) return;
31
+ scheduled = true;
32
+ getGlobalHostScheduler().scheduleMicrotask(() => {
33
+ scheduled = false;
34
+ for (const listener of listeners) {
35
+ listener();
36
+ }
37
+ });
38
+ };
39
+ };
40
+ var resolveTagId = (tag) => {
41
+ const id = tag.id;
42
+ if (typeof id === "string" && id.length > 0) return id;
43
+ const key = tag.key;
44
+ return typeof key === "string" && key.length > 0 ? key : void 0;
45
+ };
46
+ var resolveModuleIdOrThrow = (module) => {
47
+ if (module && typeof module === "object") {
48
+ const moduleId = module.moduleId;
49
+ if (typeof moduleId === "string" && moduleId.length > 0) return moduleId;
50
+ const id = module.id;
51
+ if (typeof id === "string" && id.length > 0) return id;
52
+ const tag = module.tag;
53
+ if (tag && (typeof tag === "object" || typeof tag === "function")) {
54
+ const tagId = tag.id;
55
+ if (typeof tagId === "string" && tagId.length > 0) return tagId;
56
+ }
57
+ const moduleTagId = module.id;
58
+ if (typeof moduleTagId === "string" && moduleTagId.length > 0) return moduleTagId;
59
+ }
60
+ throw makeError(
61
+ "external_store::unresolvable_module_id",
62
+ "[ExternalStore.fromModule] Failed to resolve moduleId.\nFix: pass a ModuleTag/Module/ModuleImpl/ModuleRuntime (has .id/.tag.id/.moduleId), not a read-only ModuleHandle."
63
+ );
64
+ };
65
+ var fromService = (tag, map) => {
66
+ const tagId = resolveTagId(tag);
67
+ if (!tagId) {
68
+ throw makeError(
69
+ "external_store::unresolved",
70
+ "[ExternalStore.fromService] Tag.id is missing; cannot build a stable storeId."
71
+ );
72
+ }
73
+ const storeId = makeStoreId({ kind: "service", tagId });
74
+ const store = {
75
+ getSnapshot: () => {
76
+ throw makeError(
77
+ "external_store::unresolved",
78
+ `[ExternalStore.fromService] Store is unresolved (tagId=${tagId}). Use it via StateTrait.externalStore install/runtime.`
79
+ );
80
+ },
81
+ subscribe: () => {
82
+ throw makeError(
83
+ "external_store::unresolved",
84
+ `[ExternalStore.fromService] Store is unresolved (tagId=${tagId}). Use it via StateTrait.externalStore install/runtime.`
85
+ );
86
+ }
87
+ };
88
+ return defineDescriptor(store, { kind: "service", storeId, tagId, tag, map });
89
+ };
90
+ var nextAnonStoreSeq = 0;
91
+ var storeIdByRef = /* @__PURE__ */ new WeakMap();
92
+ var getOrAssignAnonStoreId = (key, prefix) => {
93
+ const existing = storeIdByRef.get(key);
94
+ if (existing) return existing;
95
+ nextAnonStoreSeq += 1;
96
+ const storeId = `${prefix}_u${nextAnonStoreSeq}`;
97
+ storeIdByRef.set(key, storeId);
98
+ return storeId;
99
+ };
100
+ var fromSubscriptionRef = (ref) => {
101
+ const storeId = getOrAssignAnonStoreId(ref, "es_ref");
102
+ let hasSnapshot = false;
103
+ let current;
104
+ const listeners = /* @__PURE__ */ new Set();
105
+ const scheduleNotify = makeNotifyScheduler(listeners);
106
+ let fiber;
107
+ const ensureSubscription = () => {
108
+ if (fiber) return;
109
+ fiber = Effect.runFork(
110
+ Stream.runForEach(
111
+ ref.changes,
112
+ (value) => Effect.sync(() => {
113
+ current = value;
114
+ hasSnapshot = true;
115
+ scheduleNotify();
116
+ })
117
+ )
118
+ );
119
+ };
120
+ const refreshSnapshotIfStale = () => {
121
+ if (!hasSnapshot) return;
122
+ try {
123
+ const latest = Effect.runSync(SubscriptionRef.get(ref));
124
+ if (!Object.is(current, latest)) {
125
+ current = latest;
126
+ scheduleNotify();
127
+ }
128
+ } catch {
129
+ }
130
+ };
131
+ const store = {
132
+ getSnapshot: () => {
133
+ if (hasSnapshot) return current;
134
+ current = Effect.runSync(SubscriptionRef.get(ref));
135
+ hasSnapshot = true;
136
+ return current;
137
+ },
138
+ subscribe: (listener) => {
139
+ listeners.add(listener);
140
+ ensureSubscription();
141
+ refreshSnapshotIfStale();
142
+ return () => {
143
+ listeners.delete(listener);
144
+ if (listeners.size > 0) return;
145
+ const running = fiber;
146
+ if (!running) return;
147
+ fiber = void 0;
148
+ Effect.runFork(Fiber.interrupt(running));
149
+ };
150
+ }
151
+ };
152
+ return defineDescriptor(store, { kind: "subscriptionRef", storeId, ref });
153
+ };
154
+ var fromStream = (stream, options) => {
155
+ const hasCurrent = hasOwn(options, "current");
156
+ const hasInitial = hasOwn(options, "initial");
157
+ if (!hasCurrent && !hasInitial) {
158
+ throw makeError(
159
+ "external_store::missing_initial",
160
+ "[ExternalStore.fromStream] Missing { initial } or { current } (Stream has no current snapshot)."
161
+ );
162
+ }
163
+ const initial = hasCurrent ? options.current : options.initial;
164
+ const initialHint = hasCurrent ? "current" : "initial";
165
+ const storeId = getOrAssignAnonStoreId(stream, "es_stream");
166
+ let current = initial;
167
+ const listeners = /* @__PURE__ */ new Set();
168
+ const scheduleNotify = makeNotifyScheduler(listeners);
169
+ let fiber;
170
+ const ensureSubscription = () => {
171
+ if (fiber) return;
172
+ fiber = Effect.runFork(
173
+ Stream.runForEach(
174
+ stream,
175
+ (value) => Effect.sync(() => {
176
+ current = value;
177
+ scheduleNotify();
178
+ })
179
+ )
180
+ );
181
+ };
182
+ const store = {
183
+ getSnapshot: () => current,
184
+ subscribe: (listener) => {
185
+ listeners.add(listener);
186
+ ensureSubscription();
187
+ return () => {
188
+ listeners.delete(listener);
189
+ if (listeners.size > 0) return;
190
+ const running = fiber;
191
+ if (!running) return;
192
+ fiber = void 0;
193
+ Effect.runFork(Fiber.interrupt(running));
194
+ };
195
+ }
196
+ };
197
+ return defineDescriptor(store, { kind: "stream", storeId, stream, initial, initialHint });
198
+ };
199
+ var fromModule = (module, selector) => {
200
+ const moduleId = resolveModuleIdOrThrow(module);
201
+ const instanceId = module && typeof module === "object" && typeof module.instanceId === "string" && module.instanceId.length > 0 ? module.instanceId : void 0;
202
+ const compiled = compile(selector);
203
+ if (compiled.fallbackReason === "unstableSelectorId" || compiled.staticIr.fallbackReason === "unstableSelectorId") {
204
+ throw makeError(
205
+ "external_store::unstable_selector_id",
206
+ `[ExternalStore.fromModule] selectorId is unstable (fallbackReason=unstableSelectorId). Fix: add a stable debugKey, or pass an explicit ReadQuery (manual/static lane).`
207
+ );
208
+ }
209
+ const storeId = makeStoreId({ kind: "module", moduleId, selectorId: compiled.selectorId });
210
+ const store = {
211
+ getSnapshot: () => {
212
+ throw makeError(
213
+ "external_store::unresolved",
214
+ `[ExternalStore.fromModule] Store is unresolved (moduleId=${moduleId}, selectorId=${compiled.selectorId}). Use it via StateTrait.externalStore + TickScheduler/RuntimeStore (Module-as-Source).`
215
+ );
216
+ },
217
+ subscribe: () => {
218
+ throw makeError(
219
+ "external_store::unresolved",
220
+ `[ExternalStore.fromModule] Store is unresolved (moduleId=${moduleId}, selectorId=${compiled.selectorId}). Use it via StateTrait.externalStore + TickScheduler/RuntimeStore (Module-as-Source).`
221
+ );
222
+ }
223
+ };
224
+ return defineDescriptor(store, {
225
+ kind: "module",
226
+ storeId,
227
+ module,
228
+ moduleId,
229
+ ...instanceId ? { instanceId } : {},
230
+ readQuery: compiled
231
+ });
232
+ };
233
+ export {
234
+ fromModule,
235
+ fromService,
236
+ fromStream,
237
+ fromSubscriptionRef
238
+ };
239
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vbG9naXgtY29yZS9zcmMvRXh0ZXJuYWxTdG9yZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHsgRWZmZWN0LCBGaWJlciwgU3RyZWFtLCBTdWJzY3JpcHRpb25SZWYgfSBmcm9tICdlZmZlY3QnXG5pbXBvcnQgdHlwZSB7IENvbnRleHQgfSBmcm9tICdlZmZlY3QnXG5pbXBvcnQgKiBhcyBSZWFkUXVlcnkgZnJvbSAnLi9SZWFkUXVlcnkuanMnXG5pbXBvcnQgeyBmbnYxYTMyLCBzdGFibGVTdHJpbmdpZnkgfSBmcm9tICcuL2ludGVybmFsL2RpZ2VzdC5qcydcbmltcG9ydCB7IGF0dGFjaEV4dGVybmFsU3RvcmVEZXNjcmlwdG9yLCB0eXBlIEV4dGVybmFsU3RvcmVEZXNjcmlwdG9yIH0gZnJvbSAnLi9pbnRlcm5hbC9leHRlcm5hbC1zdG9yZS1kZXNjcmlwdG9yLmpzJ1xuaW1wb3J0IHsgZ2V0R2xvYmFsSG9zdFNjaGVkdWxlciB9IGZyb20gJy4vaW50ZXJuYWwvcnVudGltZS9jb3JlL0hvc3RTY2hlZHVsZXIuanMnXG5cbmV4cG9ydCB0eXBlIEV4dGVybmFsU3RvcmU8VD4gPSB7XG4gIHJlYWRvbmx5IGdldFNuYXBzaG90OiAoKSA9PiBUXG4gIHJlYWRvbmx5IGdldFNlcnZlclNuYXBzaG90PzogKCkgPT4gVFxuICByZWFkb25seSBzdWJzY3JpYmU6IChsaXN0ZW5lcjogKCkgPT4gdm9pZCkgPT4gKCkgPT4gdm9pZFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV4dGVybmFsU3RvcmVSdW50aW1lRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIHJlYWRvbmx5IF90YWc6ICdFeHRlcm5hbFN0b3JlUnVudGltZUVycm9yJ1xuICByZWFkb25seSBjb2RlOlxuICAgIHwgJ2V4dGVybmFsX3N0b3JlOjp1bnJlc29sdmVkJ1xuICAgIHwgJ2V4dGVybmFsX3N0b3JlOjptaXNzaW5nX2luaXRpYWwnXG4gICAgfCAnZXh0ZXJuYWxfc3RvcmU6OnVucmVzb2x2YWJsZV9tb2R1bGVfaWQnXG4gICAgfCAnZXh0ZXJuYWxfc3RvcmU6OnVuc3RhYmxlX3NlbGVjdG9yX2lkJ1xufVxuXG5jb25zdCBtYWtlRXJyb3IgPSAoY29kZTogRXh0ZXJuYWxTdG9yZVJ1bnRpbWVFcnJvclsnY29kZSddLCBtZXNzYWdlOiBzdHJpbmcpOiBFeHRlcm5hbFN0b3JlUnVudGltZUVycm9yID0+XG4gIE9iamVjdC5hc3NpZ24obmV3IEVycm9yKG1lc3NhZ2UpLCB7IF90YWc6ICdFeHRlcm5hbFN0b3JlUnVudGltZUVycm9yJyBhcyBjb25zdCwgY29kZSB9KVxuXG5jb25zdCBoYXNPd24gPSAodmFsdWU6IHVua25vd24sIGtleTogc3RyaW5nKTogYm9vbGVhbiA9PlxuICAhIXZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHZhbHVlLCBrZXkpXG5cbmNvbnN0IG1ha2VTdG9yZUlkID0gKHBheWxvYWQ6IHVua25vd24pOiBzdHJpbmcgPT4gYGVzXyR7Zm52MWEzMihzdGFibGVTdHJpbmdpZnkocGF5bG9hZCkpfWBcblxuY29uc3QgZGVmaW5lRGVzY3JpcHRvciA9IDxUPihzdG9yZTogRXh0ZXJuYWxTdG9yZTxUPiwgZGVzY3JpcHRvcjogRXh0ZXJuYWxTdG9yZURlc2NyaXB0b3IpOiBFeHRlcm5hbFN0b3JlPFQ+ID0+IHtcbiAgYXR0YWNoRXh0ZXJuYWxTdG9yZURlc2NyaXB0b3Ioc3RvcmUgYXMgb2JqZWN0LCBkZXNjcmlwdG9yKVxuICByZXR1cm4gc3RvcmVcbn1cblxuY29uc3QgbWFrZU5vdGlmeVNjaGVkdWxlciA9IChsaXN0ZW5lcnM6IFNldDwoKSA9PiB2b2lkPik6ICgoKSA9PiB2b2lkKSA9PiB7XG4gIGxldCBzY2hlZHVsZWQgPSBmYWxzZVxuICByZXR1cm4gKCkgPT4ge1xuICAgIGlmIChzY2hlZHVsZWQpIHJldHVyblxuICAgIHNjaGVkdWxlZCA9IHRydWVcbiAgICBnZXRHbG9iYWxIb3N0U2NoZWR1bGVyKCkuc2NoZWR1bGVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgc2NoZWR1bGVkID0gZmFsc2VcbiAgICAgIGZvciAoY29uc3QgbGlzdGVuZXIgb2YgbGlzdGVuZXJzKSB7XG4gICAgICAgIGxpc3RlbmVyKClcbiAgICAgIH1cbiAgICB9KVxuICB9XG59XG5cbmNvbnN0IHJlc29sdmVUYWdJZCA9ICh0YWc6IENvbnRleHQuVGFnPGFueSwgYW55Pik6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIGNvbnN0IGlkID0gKHRhZyBhcyBhbnkpLmlkXG4gIGlmICh0eXBlb2YgaWQgPT09ICdzdHJpbmcnICYmIGlkLmxlbmd0aCA+IDApIHJldHVybiBpZFxuXG4gIGNvbnN0IGtleSA9ICh0YWcgYXMgYW55KS5rZXlcbiAgcmV0dXJuIHR5cGVvZiBrZXkgPT09ICdzdHJpbmcnICYmIGtleS5sZW5ndGggPiAwID8ga2V5IDogdW5kZWZpbmVkXG59XG5cbmNvbnN0IHJlc29sdmVNb2R1bGVJZE9yVGhyb3cgPSAobW9kdWxlOiB1bmtub3duKTogc3RyaW5nID0+IHtcbiAgaWYgKG1vZHVsZSAmJiB0eXBlb2YgbW9kdWxlID09PSAnb2JqZWN0Jykge1xuICAgIGNvbnN0IG1vZHVsZUlkID0gKG1vZHVsZSBhcyBhbnkpLm1vZHVsZUlkXG4gICAgaWYgKHR5cGVvZiBtb2R1bGVJZCA9PT0gJ3N0cmluZycgJiYgbW9kdWxlSWQubGVuZ3RoID4gMCkgcmV0dXJuIG1vZHVsZUlkXG5cbiAgICBjb25zdCBpZCA9IChtb2R1bGUgYXMgYW55KS5pZFxuICAgIGlmICh0eXBlb2YgaWQgPT09ICdzdHJpbmcnICYmIGlkLmxlbmd0aCA+IDApIHJldHVybiBpZFxuXG4gICAgY29uc3QgdGFnID0gKG1vZHVsZSBhcyBhbnkpLnRhZ1xuICAgIGlmICh0YWcgJiYgKHR5cGVvZiB0YWcgPT09ICdvYmplY3QnIHx8IHR5cGVvZiB0YWcgPT09ICdmdW5jdGlvbicpKSB7XG4gICAgICBjb25zdCB0YWdJZCA9ICh0YWcgYXMgYW55KS5pZFxuICAgICAgaWYgKHR5cGVvZiB0YWdJZCA9PT0gJ3N0cmluZycgJiYgdGFnSWQubGVuZ3RoID4gMCkgcmV0dXJuIHRhZ0lkXG4gICAgfVxuXG4gICAgY29uc3QgbW9kdWxlVGFnSWQgPSAobW9kdWxlIGFzIGFueSkuaWRcbiAgICBpZiAodHlwZW9mIG1vZHVsZVRhZ0lkID09PSAnc3RyaW5nJyAmJiBtb2R1bGVUYWdJZC5sZW5ndGggPiAwKSByZXR1cm4gbW9kdWxlVGFnSWRcbiAgfVxuXG4gIHRocm93IG1ha2VFcnJvcihcbiAgICAnZXh0ZXJuYWxfc3RvcmU6OnVucmVzb2x2YWJsZV9tb2R1bGVfaWQnLFxuICAgICdbRXh0ZXJuYWxTdG9yZS5mcm9tTW9kdWxlXSBGYWlsZWQgdG8gcmVzb2x2ZSBtb2R1bGVJZC5cXG4nICtcbiAgICAgICdGaXg6IHBhc3MgYSBNb2R1bGVUYWcvTW9kdWxlL01vZHVsZUltcGwvTW9kdWxlUnVudGltZSAoaGFzIC5pZC8udGFnLmlkLy5tb2R1bGVJZCksIG5vdCBhIHJlYWQtb25seSBNb2R1bGVIYW5kbGUuJyxcbiAgKVxufVxuXG4vKipcbiAqIENyZWF0ZSBhbiBFeHRlcm5hbFN0b3JlIGJ5IHJlc29sdmluZyBhIHNlcnZpY2UgZnJvbSB0aGUgRWZmZWN0IENvbnRleHQuXG4gKlxuICogTm90ZXM6XG4gKiAtIFRoaXMgc3VnYXIgaXMgaW50ZW5kZWQgdG8gYmUgdXNlZCB2aWEgYFN0YXRlVHJhaXQuZXh0ZXJuYWxTdG9yZWAgKHJlc29sdmVkIGR1cmluZyBpbnN0YWxsL3J1bnRpbWUpLlxuICogLSBgbWFwKHNlcnZpY2UpYCBtdXN0IHJldHVybiBhIHN5bmMgYGdldFNuYXBzaG90KClgIChubyBJTykgYW5kIGEgYHN1YnNjcmliZShsaXN0ZW5lcilgIHRoYXQgc2lnbmFscyBjaGFuZ2UuXG4gKi9cbmV4cG9ydCBjb25zdCBmcm9tU2VydmljZSA9IDxJZCwgU3ZjLCBUPihcbiAgdGFnOiBDb250ZXh0LlRhZzxJZCwgU3ZjPixcbiAgbWFwOiAoc2VydmljZTogU3ZjKSA9PiBFeHRlcm5hbFN0b3JlPFQ+LFxuKTogRXh0ZXJuYWxTdG9yZTxUPiA9PiB7XG4gIGNvbnN0IHRhZ0lkID0gcmVzb2x2ZVRhZ0lkKHRhZyBhcyBhbnkpXG4gIGlmICghdGFnSWQpIHtcbiAgICB0aHJvdyBtYWtlRXJyb3IoXG4gICAgICAnZXh0ZXJuYWxfc3RvcmU6OnVucmVzb2x2ZWQnLFxuICAgICAgJ1tFeHRlcm5hbFN0b3JlLmZyb21TZXJ2aWNlXSBUYWcuaWQgaXMgbWlzc2luZzsgY2Fubm90IGJ1aWxkIGEgc3RhYmxlIHN0b3JlSWQuJyxcbiAgICApXG4gIH1cblxuICBjb25zdCBzdG9yZUlkID0gbWFrZVN0b3JlSWQoeyBraW5kOiAnc2VydmljZScsIHRhZ0lkIH0pXG5cbiAgY29uc3Qgc3RvcmU6IEV4dGVybmFsU3RvcmU8VD4gPSB7XG4gICAgZ2V0U25hcHNob3Q6ICgpID0+IHtcbiAgICAgIHRocm93IG1ha2VFcnJvcihcbiAgICAgICAgJ2V4dGVybmFsX3N0b3JlOjp1bnJlc29sdmVkJyxcbiAgICAgICAgYFtFeHRlcm5hbFN0b3JlLmZyb21TZXJ2aWNlXSBTdG9yZSBpcyB1bnJlc29sdmVkICh0YWdJZD0ke3RhZ0lkfSkuIFVzZSBpdCB2aWEgU3RhdGVUcmFpdC5leHRlcm5hbFN0b3JlIGluc3RhbGwvcnVudGltZS5gLFxuICAgICAgKVxuICAgIH0sXG4gICAgc3Vic2NyaWJlOiAoKSA9PiB7XG4gICAgICB0aHJvdyBtYWtlRXJyb3IoXG4gICAgICAgICdleHRlcm5hbF9zdG9yZTo6dW5yZXNvbHZlZCcsXG4gICAgICAgIGBbRXh0ZXJuYWxTdG9yZS5mcm9tU2VydmljZV0gU3RvcmUgaXMgdW5yZXNvbHZlZCAodGFnSWQ9JHt0YWdJZH0pLiBVc2UgaXQgdmlhIFN0YXRlVHJhaXQuZXh0ZXJuYWxTdG9yZSBpbnN0YWxsL3J1bnRpbWUuYCxcbiAgICAgIClcbiAgICB9LFxuICB9XG5cbiAgcmV0dXJuIGRlZmluZURlc2NyaXB0b3Ioc3RvcmUsIHsga2luZDogJ3NlcnZpY2UnLCBzdG9yZUlkLCB0YWdJZCwgdGFnOiB0YWcgYXMgYW55LCBtYXA6IG1hcCBhcyBhbnkgfSlcbn1cblxubGV0IG5leHRBbm9uU3RvcmVTZXEgPSAwXG5jb25zdCBzdG9yZUlkQnlSZWYgPSBuZXcgV2Vha01hcDxvYmplY3QsIHN0cmluZz4oKVxuXG5jb25zdCBnZXRPckFzc2lnbkFub25TdG9yZUlkID0gKGtleTogb2JqZWN0LCBwcmVmaXg6IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIGNvbnN0IGV4aXN0aW5nID0gc3RvcmVJZEJ5UmVmLmdldChrZXkpXG4gIGlmIChleGlzdGluZykgcmV0dXJuIGV4aXN0aW5nXG4gIG5leHRBbm9uU3RvcmVTZXEgKz0gMVxuICBjb25zdCBzdG9yZUlkID0gYCR7cHJlZml4fV91JHtuZXh0QW5vblN0b3JlU2VxfWBcbiAgc3RvcmVJZEJ5UmVmLnNldChrZXksIHN0b3JlSWQpXG4gIHJldHVybiBzdG9yZUlkXG59XG5cbi8qKlxuICogQ3JlYXRlIGFuIEV4dGVybmFsU3RvcmUgZnJvbSBhIFN1YnNjcmlwdGlvblJlZi5cbiAqXG4gKiBOb3RlczpcbiAqIC0gYGdldFNuYXBzaG90KClgIGlzIGltcGxlbWVudGVkIHZpYSBgU3Vic2NyaXB0aW9uUmVmLmdldChyZWYpYCAobXVzdCBiZSBhIHN5bmNocm9ub3VzIHB1cmUgcmVhZDsgZG8gbm90IGhpZGUgSU8gaW5zaWRlKS5cbiAqIC0gY2hhbmdlIG5vdGlmaWNhdGlvbnMgYXJlIGJhdGNoZWQgdmlhIG1pY3JvdGFzayAobXVsdGlwbGUgdXBkYXRlcyBpbiB0aGUgc2FtZSBtaWNyb3Rhc2sgdHJpZ2dlciBhIHNpbmdsZSBub3RpZnkpLlxuICovXG5leHBvcnQgY29uc3QgZnJvbVN1YnNjcmlwdGlvblJlZiA9IDxUPihyZWY6IFN1YnNjcmlwdGlvblJlZi5TdWJzY3JpcHRpb25SZWY8VD4pOiBFeHRlcm5hbFN0b3JlPFQ+ID0+IHtcbiAgY29uc3Qgc3RvcmVJZCA9IGdldE9yQXNzaWduQW5vblN0b3JlSWQocmVmIGFzIGFueSwgJ2VzX3JlZicpXG5cbiAgbGV0IGhhc1NuYXBzaG90ID0gZmFsc2VcbiAgbGV0IGN1cnJlbnQ6IFQgfCB1bmRlZmluZWRcbiAgY29uc3QgbGlzdGVuZXJzID0gbmV3IFNldDwoKSA9PiB2b2lkPigpXG4gIGNvbnN0IHNjaGVkdWxlTm90aWZ5ID0gbWFrZU5vdGlmeVNjaGVkdWxlcihsaXN0ZW5lcnMpXG5cbiAgbGV0IGZpYmVyOiBGaWJlci5GaWJlcjx2b2lkLCBhbnk+IHwgdW5kZWZpbmVkXG5cbiAgY29uc3QgZW5zdXJlU3Vic2NyaXB0aW9uID0gKCkgPT4ge1xuICAgIGlmIChmaWJlcikgcmV0dXJuXG4gICAgZmliZXIgPSBFZmZlY3QucnVuRm9yayhcbiAgICAgIFN0cmVhbS5ydW5Gb3JFYWNoKHJlZi5jaGFuZ2VzLCAodmFsdWUpID0+XG4gICAgICAgIEVmZmVjdC5zeW5jKCgpID0+IHtcbiAgICAgICAgICBjdXJyZW50ID0gdmFsdWVcbiAgICAgICAgICBoYXNTbmFwc2hvdCA9IHRydWVcbiAgICAgICAgICBzY2hlZHVsZU5vdGlmeSgpXG4gICAgICAgIH0pLFxuICAgICAgKSxcbiAgICApXG4gIH1cblxuICBjb25zdCByZWZyZXNoU25hcHNob3RJZlN0YWxlID0gKCkgPT4ge1xuICAgIGlmICghaGFzU25hcHNob3QpIHJldHVyblxuICAgIHRyeSB7XG4gICAgICBjb25zdCBsYXRlc3QgPSBFZmZlY3QucnVuU3luYyhTdWJzY3JpcHRpb25SZWYuZ2V0KHJlZikpIGFzIFRcbiAgICAgIGlmICghT2JqZWN0LmlzKGN1cnJlbnQsIGxhdGVzdCkpIHtcbiAgICAgICAgY3VycmVudCA9IGxhdGVzdFxuICAgICAgICBzY2hlZHVsZU5vdGlmeSgpXG4gICAgICB9XG4gICAgfSBjYXRjaCB7XG4gICAgICAvLyBiZXN0LWVmZm9ydFxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IHN0b3JlOiBFeHRlcm5hbFN0b3JlPFQ+ID0ge1xuICAgIGdldFNuYXBzaG90OiAoKSA9PiB7XG4gICAgICBpZiAoaGFzU25hcHNob3QpIHJldHVybiBjdXJyZW50IGFzIFRcbiAgICAgIGN1cnJlbnQgPSBFZmZlY3QucnVuU3luYyhTdWJzY3JpcHRpb25SZWYuZ2V0KHJlZikpIGFzIFRcbiAgICAgIGhhc1NuYXBzaG90ID0gdHJ1ZVxuICAgICAgcmV0dXJuIGN1cnJlbnRcbiAgICB9LFxuICAgIHN1YnNjcmliZTogKGxpc3RlbmVyKSA9PiB7XG4gICAgICBsaXN0ZW5lcnMuYWRkKGxpc3RlbmVyKVxuICAgICAgZW5zdXJlU3Vic2NyaXB0aW9uKClcbiAgICAgIHJlZnJlc2hTbmFwc2hvdElmU3RhbGUoKVxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgbGlzdGVuZXJzLmRlbGV0ZShsaXN0ZW5lcilcbiAgICAgICAgaWYgKGxpc3RlbmVycy5zaXplID4gMCkgcmV0dXJuXG4gICAgICAgIGNvbnN0IHJ1bm5pbmcgPSBmaWJlclxuICAgICAgICBpZiAoIXJ1bm5pbmcpIHJldHVyblxuICAgICAgICBmaWJlciA9IHVuZGVmaW5lZFxuICAgICAgICBFZmZlY3QucnVuRm9yayhGaWJlci5pbnRlcnJ1cHQocnVubmluZykpXG4gICAgICB9XG4gICAgfSxcbiAgfVxuXG4gIHJldHVybiBkZWZpbmVEZXNjcmlwdG9yKHN0b3JlLCB7IGtpbmQ6ICdzdWJzY3JpcHRpb25SZWYnLCBzdG9yZUlkLCByZWY6IHJlZiBhcyBhbnkgfSlcbn1cblxuLyoqXG4gKiBDcmVhdGUgYW4gRXh0ZXJuYWxTdG9yZSBmcm9tIGEgU3RyZWFtLlxuICpcbiAqIE5vdGVzOlxuICogLSBTdHJlYW0gaGFzIG5vIHN5bmNocm9ub3VzIFwiY3VycmVudFwiIHNuYXBzaG90OyB5b3UgTVVTVCBwcm92aWRlIGB7IGluaXRpYWwgfWAgKG9yIGB7IGN1cnJlbnQgfWApLlxuICogLSBgeyBpbml0aWFsIH1gIG1heSBiZSBzdGFsZSBpZiB0aGUgc3RyZWFtIGFscmVhZHkgZW1pdHRlZCBiZWZvcmUgc3Vic2NyaXB0aW9uOyBwcmVmZXIgYGZyb21TZXJ2aWNlL2Zyb21TdWJzY3JpcHRpb25SZWZgIGZvciByZWxpYWJsZSBjdXJyZW50LlxuICovXG5leHBvcnQgY29uc3QgZnJvbVN0cmVhbSA9IDxBLCBFPihcbiAgc3RyZWFtOiBTdHJlYW0uU3RyZWFtPEEsIEUsIG5ldmVyPixcbiAgb3B0aW9ucz86IHsgcmVhZG9ubHkgaW5pdGlhbD86IEE7IHJlYWRvbmx5IGN1cnJlbnQ/OiBBIH0sXG4pOiBFeHRlcm5hbFN0b3JlPEE+ID0+IHtcbiAgY29uc3QgaGFzQ3VycmVudCA9IGhhc093bihvcHRpb25zLCAnY3VycmVudCcpXG4gIGNvbnN0IGhhc0luaXRpYWwgPSBoYXNPd24ob3B0aW9ucywgJ2luaXRpYWwnKVxuXG4gIGlmICghaGFzQ3VycmVudCAmJiAhaGFzSW5pdGlhbCkge1xuICAgIHRocm93IG1ha2VFcnJvcihcbiAgICAgICdleHRlcm5hbF9zdG9yZTo6bWlzc2luZ19pbml0aWFsJyxcbiAgICAgICdbRXh0ZXJuYWxTdG9yZS5mcm9tU3RyZWFtXSBNaXNzaW5nIHsgaW5pdGlhbCB9IG9yIHsgY3VycmVudCB9IChTdHJlYW0gaGFzIG5vIGN1cnJlbnQgc25hcHNob3QpLicsXG4gICAgKVxuICB9XG5cbiAgY29uc3QgaW5pdGlhbCA9IGhhc0N1cnJlbnQgPyAob3B0aW9ucyBhcyBhbnkpLmN1cnJlbnQgOiAob3B0aW9ucyBhcyBhbnkpLmluaXRpYWxcbiAgY29uc3QgaW5pdGlhbEhpbnQgPSBoYXNDdXJyZW50ID8gKCdjdXJyZW50JyBhcyBjb25zdCkgOiAoJ2luaXRpYWwnIGFzIGNvbnN0KVxuXG4gIGNvbnN0IHN0b3JlSWQgPSBnZXRPckFzc2lnbkFub25TdG9yZUlkKHN0cmVhbSBhcyBhbnksICdlc19zdHJlYW0nKVxuXG4gIGxldCBjdXJyZW50ID0gaW5pdGlhbCBhcyBBXG4gIGNvbnN0IGxpc3RlbmVycyA9IG5ldyBTZXQ8KCkgPT4gdm9pZD4oKVxuICBjb25zdCBzY2hlZHVsZU5vdGlmeSA9IG1ha2VOb3RpZnlTY2hlZHVsZXIobGlzdGVuZXJzKVxuXG4gIGxldCBmaWJlcjogRmliZXIuRmliZXI8dm9pZCwgYW55PiB8IHVuZGVmaW5lZFxuXG4gIGNvbnN0IGVuc3VyZVN1YnNjcmlwdGlvbiA9ICgpID0+IHtcbiAgICBpZiAoZmliZXIpIHJldHVyblxuICAgIGZpYmVyID0gRWZmZWN0LnJ1bkZvcmsoXG4gICAgICBTdHJlYW0ucnVuRm9yRWFjaChzdHJlYW0sICh2YWx1ZSkgPT5cbiAgICAgICAgRWZmZWN0LnN5bmMoKCkgPT4ge1xuICAgICAgICAgIGN1cnJlbnQgPSB2YWx1ZVxuICAgICAgICAgIHNjaGVkdWxlTm90aWZ5KClcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgIClcbiAgfVxuXG4gIGNvbnN0IHN0b3JlOiBFeHRlcm5hbFN0b3JlPEE+ID0ge1xuICAgIGdldFNuYXBzaG90OiAoKSA9PiBjdXJyZW50LFxuICAgIHN1YnNjcmliZTogKGxpc3RlbmVyKSA9PiB7XG4gICAgICBsaXN0ZW5lcnMuYWRkKGxpc3RlbmVyKVxuICAgICAgZW5zdXJlU3Vic2NyaXB0aW9uKClcbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGxpc3RlbmVycy5kZWxldGUobGlzdGVuZXIpXG4gICAgICAgIGlmIChsaXN0ZW5lcnMuc2l6ZSA+IDApIHJldHVyblxuICAgICAgICBjb25zdCBydW5uaW5nID0gZmliZXJcbiAgICAgICAgaWYgKCFydW5uaW5nKSByZXR1cm5cbiAgICAgICAgZmliZXIgPSB1bmRlZmluZWRcbiAgICAgICAgRWZmZWN0LnJ1bkZvcmsoRmliZXIuaW50ZXJydXB0KHJ1bm5pbmcpKVxuICAgICAgfVxuICAgIH0sXG4gIH1cblxuICByZXR1cm4gZGVmaW5lRGVzY3JpcHRvcihzdG9yZSwgeyBraW5kOiAnc3RyZWFtJywgc3RvcmVJZCwgc3RyZWFtOiBzdHJlYW0gYXMgYW55LCBpbml0aWFsLCBpbml0aWFsSGludCB9KVxufVxuXG4vKipcbiAqIE1vZHVsZS1hcy1Tb3VyY2U6IHRyZWF0IGEgbW9kdWxlIHNlbGVjdG9yIGFzIGFuIEV4dGVybmFsU3RvcmUgc291cmNlIChJUi1yZWNvZ25pemFibGUgZGVwZW5kZW5jeSkuXG4gKlxuICogTm90ZXM6XG4gKiAtIGBtb2R1bGVJZGAgbXVzdCBiZSByZXNvbHZhYmxlOyBwYXNzaW5nIGEgcmVhZC1vbmx5IGBNb2R1bGVIYW5kbGVgIGlzIGZvcmJpZGRlbiAoZmFpbC1mYXN0KS5cbiAqIC0gc2VsZWN0b3JJZCBtdXN0IGJlIHN0YWJsZTogYFJlYWRRdWVyeS5jb21waWxlKHNlbGVjdG9yKWAgbXVzdCBOT1QgZmFsbCBiYWNrIHRvIGBmYWxsYmFja1JlYXNvbj1cInVuc3RhYmxlU2VsZWN0b3JJZFwiYCAoZmFpbC1mYXN0KS5cbiAqIC0gVmFsdWUgc2VtYW50aWNzOiB0aGUgcnVudGltZSBkb2VzIG5vdCBjbG9uZTsgd3JpdGViYWNrIHN0b3JlcyB0aGUgc2VsZWN0b3IgcmV0dXJuIHZhbHVlIGFzLWlzIChrZWVwIHNlbGVjdG9ycyBzbWFsbCBhbmQgc3RhYmxlKS5cbiAqL1xuZXhwb3J0IGNvbnN0IGZyb21Nb2R1bGUgPSA8UywgVj4obW9kdWxlOiB1bmtub3duLCBzZWxlY3RvcjogUmVhZFF1ZXJ5LlJlYWRRdWVyeUlucHV0PFMsIFY+KTogRXh0ZXJuYWxTdG9yZTxWPiA9PiB7XG4gIGNvbnN0IG1vZHVsZUlkID0gcmVzb2x2ZU1vZHVsZUlkT3JUaHJvdyhtb2R1bGUpXG4gIGNvbnN0IGluc3RhbmNlSWQgPVxuICAgIG1vZHVsZSAmJiB0eXBlb2YgbW9kdWxlID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgKG1vZHVsZSBhcyBhbnkpLmluc3RhbmNlSWQgPT09ICdzdHJpbmcnICYmIChtb2R1bGUgYXMgYW55KS5pbnN0YW5jZUlkLmxlbmd0aCA+IDBcbiAgICAgID8gKChtb2R1bGUgYXMgYW55KS5pbnN0YW5jZUlkIGFzIHN0cmluZylcbiAgICAgIDogdW5kZWZpbmVkXG4gIGNvbnN0IGNvbXBpbGVkID0gUmVhZFF1ZXJ5LmNvbXBpbGUoc2VsZWN0b3IpXG5cbiAgaWYgKGNvbXBpbGVkLmZhbGxiYWNrUmVhc29uID09PSAndW5zdGFibGVTZWxlY3RvcklkJyB8fCBjb21waWxlZC5zdGF0aWNJci5mYWxsYmFja1JlYXNvbiA9PT0gJ3Vuc3RhYmxlU2VsZWN0b3JJZCcpIHtcbiAgICB0aHJvdyBtYWtlRXJyb3IoXG4gICAgICAnZXh0ZXJuYWxfc3RvcmU6OnVuc3RhYmxlX3NlbGVjdG9yX2lkJyxcbiAgICAgIGBbRXh0ZXJuYWxTdG9yZS5mcm9tTW9kdWxlXSBzZWxlY3RvcklkIGlzIHVuc3RhYmxlIChmYWxsYmFja1JlYXNvbj11bnN0YWJsZVNlbGVjdG9ySWQpLiBgICtcbiAgICAgICAgJ0ZpeDogYWRkIGEgc3RhYmxlIGRlYnVnS2V5LCBvciBwYXNzIGFuIGV4cGxpY2l0IFJlYWRRdWVyeSAobWFudWFsL3N0YXRpYyBsYW5lKS4nLFxuICAgIClcbiAgfVxuXG4gIGNvbnN0IHN0b3JlSWQgPSBtYWtlU3RvcmVJZCh7IGtpbmQ6ICdtb2R1bGUnLCBtb2R1bGVJZCwgc2VsZWN0b3JJZDogY29tcGlsZWQuc2VsZWN0b3JJZCB9KVxuXG4gIGNvbnN0IHN0b3JlOiBFeHRlcm5hbFN0b3JlPFY+ID0ge1xuICAgIGdldFNuYXBzaG90OiAoKSA9PiB7XG4gICAgICB0aHJvdyBtYWtlRXJyb3IoXG4gICAgICAgICdleHRlcm5hbF9zdG9yZTo6dW5yZXNvbHZlZCcsXG4gICAgICAgIGBbRXh0ZXJuYWxTdG9yZS5mcm9tTW9kdWxlXSBTdG9yZSBpcyB1bnJlc29sdmVkIChtb2R1bGVJZD0ke21vZHVsZUlkfSwgc2VsZWN0b3JJZD0ke2NvbXBpbGVkLnNlbGVjdG9ySWR9KS4gYCArXG4gICAgICAgICAgJ1VzZSBpdCB2aWEgU3RhdGVUcmFpdC5leHRlcm5hbFN0b3JlICsgVGlja1NjaGVkdWxlci9SdW50aW1lU3RvcmUgKE1vZHVsZS1hcy1Tb3VyY2UpLicsXG4gICAgICApXG4gICAgfSxcbiAgICBzdWJzY3JpYmU6ICgpID0+IHtcbiAgICAgIHRocm93IG1ha2VFcnJvcihcbiAgICAgICAgJ2V4dGVybmFsX3N0b3JlOjp1bnJlc29sdmVkJyxcbiAgICAgICAgYFtFeHRlcm5hbFN0b3JlLmZyb21Nb2R1bGVdIFN0b3JlIGlzIHVucmVzb2x2ZWQgKG1vZHVsZUlkPSR7bW9kdWxlSWR9LCBzZWxlY3RvcklkPSR7Y29tcGlsZWQuc2VsZWN0b3JJZH0pLiBgICtcbiAgICAgICAgICAnVXNlIGl0IHZpYSBTdGF0ZVRyYWl0LmV4dGVybmFsU3RvcmUgKyBUaWNrU2NoZWR1bGVyL1J1bnRpbWVTdG9yZSAoTW9kdWxlLWFzLVNvdXJjZSkuJyxcbiAgICAgIClcbiAgICB9LFxuICB9XG5cbiAgcmV0dXJuIGRlZmluZURlc2NyaXB0b3Ioc3RvcmUsIHtcbiAgICBraW5kOiAnbW9kdWxlJyxcbiAgICBzdG9yZUlkLFxuICAgIG1vZHVsZSxcbiAgICBtb2R1bGVJZCxcbiAgICAuLi4oaW5zdGFuY2VJZCA/IHsgaW5zdGFuY2VJZCB9IDoge30pLFxuICAgIHJlYWRRdWVyeTogY29tcGlsZWQsXG4gIH0pXG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxTQUFTLFFBQVEsT0FBTyxRQUFRLHVCQUF1QjtBQXNCdkQsSUFBTSxZQUFZLENBQUMsTUFBeUMsWUFDMUQsT0FBTyxPQUFPLElBQUksTUFBTSxPQUFPLEdBQUcsRUFBRSxNQUFNLDZCQUFzQyxLQUFLLENBQUM7QUFFeEYsSUFBTSxTQUFTLENBQUMsT0FBZ0IsUUFDOUIsQ0FBQyxDQUFDLFNBQVMsT0FBTyxVQUFVLFlBQVksT0FBTyxVQUFVLGVBQWUsS0FBSyxPQUFPLEdBQUc7QUFFekYsSUFBTSxjQUFjLENBQUMsWUFBNkIsTUFBTSxRQUFRLGdCQUFnQixPQUFPLENBQUMsQ0FBQztBQUV6RixJQUFNLG1CQUFtQixDQUFJLE9BQXlCLGVBQTBEO0FBQzlHLGdDQUE4QixPQUFpQixVQUFVO0FBQ3pELFNBQU87QUFDVDtBQUVBLElBQU0sc0JBQXNCLENBQUMsY0FBNkM7QUFDeEUsTUFBSSxZQUFZO0FBQ2hCLFNBQU8sTUFBTTtBQUNYLFFBQUksVUFBVztBQUNmLGdCQUFZO0FBQ1osMkJBQXVCLEVBQUUsa0JBQWtCLE1BQU07QUFDL0Msa0JBQVk7QUFDWixpQkFBVyxZQUFZLFdBQVc7QUFDaEMsaUJBQVM7QUFBQSxNQUNYO0FBQUEsSUFDRixDQUFDO0FBQUEsRUFDSDtBQUNGO0FBRUEsSUFBTSxlQUFlLENBQUMsUUFBbUQ7QUFDdkUsUUFBTSxLQUFNLElBQVk7QUFDeEIsTUFBSSxPQUFPLE9BQU8sWUFBWSxHQUFHLFNBQVMsRUFBRyxRQUFPO0FBRXBELFFBQU0sTUFBTyxJQUFZO0FBQ3pCLFNBQU8sT0FBTyxRQUFRLFlBQVksSUFBSSxTQUFTLElBQUksTUFBTTtBQUMzRDtBQUVBLElBQU0seUJBQXlCLENBQUMsV0FBNEI7QUFDMUQsTUFBSSxVQUFVLE9BQU8sV0FBVyxVQUFVO0FBQ3hDLFVBQU0sV0FBWSxPQUFlO0FBQ2pDLFFBQUksT0FBTyxhQUFhLFlBQVksU0FBUyxTQUFTLEVBQUcsUUFBTztBQUVoRSxVQUFNLEtBQU0sT0FBZTtBQUMzQixRQUFJLE9BQU8sT0FBTyxZQUFZLEdBQUcsU0FBUyxFQUFHLFFBQU87QUFFcEQsVUFBTSxNQUFPLE9BQWU7QUFDNUIsUUFBSSxRQUFRLE9BQU8sUUFBUSxZQUFZLE9BQU8sUUFBUSxhQUFhO0FBQ2pFLFlBQU0sUUFBUyxJQUFZO0FBQzNCLFVBQUksT0FBTyxVQUFVLFlBQVksTUFBTSxTQUFTLEVBQUcsUUFBTztBQUFBLElBQzVEO0FBRUEsVUFBTSxjQUFlLE9BQWU7QUFDcEMsUUFBSSxPQUFPLGdCQUFnQixZQUFZLFlBQVksU0FBUyxFQUFHLFFBQU87QUFBQSxFQUN4RTtBQUVBLFFBQU07QUFBQSxJQUNKO0FBQUEsSUFDQTtBQUFBLEVBRUY7QUFDRjtBQVNPLElBQU0sY0FBYyxDQUN6QixLQUNBLFFBQ3FCO0FBQ3JCLFFBQU0sUUFBUSxhQUFhLEdBQVU7QUFDckMsTUFBSSxDQUFDLE9BQU87QUFDVixVQUFNO0FBQUEsTUFDSjtBQUFBLE1BQ0E7QUFBQSxJQUNGO0FBQUEsRUFDRjtBQUVBLFFBQU0sVUFBVSxZQUFZLEVBQUUsTUFBTSxXQUFXLE1BQU0sQ0FBQztBQUV0RCxRQUFNLFFBQTBCO0FBQUEsSUFDOUIsYUFBYSxNQUFNO0FBQ2pCLFlBQU07QUFBQSxRQUNKO0FBQUEsUUFDQSwwREFBMEQsS0FBSztBQUFBLE1BQ2pFO0FBQUEsSUFDRjtBQUFBLElBQ0EsV0FBVyxNQUFNO0FBQ2YsWUFBTTtBQUFBLFFBQ0o7QUFBQSxRQUNBLDBEQUEwRCxLQUFLO0FBQUEsTUFDakU7QUFBQSxJQUNGO0FBQUEsRUFDRjtBQUVBLFNBQU8saUJBQWlCLE9BQU8sRUFBRSxNQUFNLFdBQVcsU0FBUyxPQUFPLEtBQWlCLElBQWdCLENBQUM7QUFDdEc7QUFFQSxJQUFJLG1CQUFtQjtBQUN2QixJQUFNLGVBQWUsb0JBQUksUUFBd0I7QUFFakQsSUFBTSx5QkFBeUIsQ0FBQyxLQUFhLFdBQTJCO0FBQ3RFLFFBQU0sV0FBVyxhQUFhLElBQUksR0FBRztBQUNyQyxNQUFJLFNBQVUsUUFBTztBQUNyQixzQkFBb0I7QUFDcEIsUUFBTSxVQUFVLEdBQUcsTUFBTSxLQUFLLGdCQUFnQjtBQUM5QyxlQUFhLElBQUksS0FBSyxPQUFPO0FBQzdCLFNBQU87QUFDVDtBQVNPLElBQU0sc0JBQXNCLENBQUksUUFBOEQ7QUFDbkcsUUFBTSxVQUFVLHVCQUF1QixLQUFZLFFBQVE7QUFFM0QsTUFBSSxjQUFjO0FBQ2xCLE1BQUk7QUFDSixRQUFNLFlBQVksb0JBQUksSUFBZ0I7QUFDdEMsUUFBTSxpQkFBaUIsb0JBQW9CLFNBQVM7QUFFcEQsTUFBSTtBQUVKLFFBQU0scUJBQXFCLE1BQU07QUFDL0IsUUFBSSxNQUFPO0FBQ1gsWUFBUSxPQUFPO0FBQUEsTUFDYixPQUFPO0FBQUEsUUFBVyxJQUFJO0FBQUEsUUFBUyxDQUFDLFVBQzlCLE9BQU8sS0FBSyxNQUFNO0FBQ2hCLG9CQUFVO0FBQ1Ysd0JBQWM7QUFDZCx5QkFBZTtBQUFBLFFBQ2pCLENBQUM7QUFBQSxNQUNIO0FBQUEsSUFDRjtBQUFBLEVBQ0Y7QUFFQSxRQUFNLHlCQUF5QixNQUFNO0FBQ25DLFFBQUksQ0FBQyxZQUFhO0FBQ2xCLFFBQUk7QUFDRixZQUFNLFNBQVMsT0FBTyxRQUFRLGdCQUFnQixJQUFJLEdBQUcsQ0FBQztBQUN0RCxVQUFJLENBQUMsT0FBTyxHQUFHLFNBQVMsTUFBTSxHQUFHO0FBQy9CLGtCQUFVO0FBQ1YsdUJBQWU7QUFBQSxNQUNqQjtBQUFBLElBQ0YsUUFBUTtBQUFBLElBRVI7QUFBQSxFQUNGO0FBRUEsUUFBTSxRQUEwQjtBQUFBLElBQzlCLGFBQWEsTUFBTTtBQUNqQixVQUFJLFlBQWEsUUFBTztBQUN4QixnQkFBVSxPQUFPLFFBQVEsZ0JBQWdCLElBQUksR0FBRyxDQUFDO0FBQ2pELG9CQUFjO0FBQ2QsYUFBTztBQUFBLElBQ1Q7QUFBQSxJQUNBLFdBQVcsQ0FBQyxhQUFhO0FBQ3ZCLGdCQUFVLElBQUksUUFBUTtBQUN0Qix5QkFBbUI7QUFDbkIsNkJBQXVCO0FBQ3ZCLGFBQU8sTUFBTTtBQUNYLGtCQUFVLE9BQU8sUUFBUTtBQUN6QixZQUFJLFVBQVUsT0FBTyxFQUFHO0FBQ3hCLGNBQU0sVUFBVTtBQUNoQixZQUFJLENBQUMsUUFBUztBQUNkLGdCQUFRO0FBQ1IsZUFBTyxRQUFRLE1BQU0sVUFBVSxPQUFPLENBQUM7QUFBQSxNQUN6QztBQUFBLElBQ0Y7QUFBQSxFQUNGO0FBRUEsU0FBTyxpQkFBaUIsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLFNBQVMsSUFBZ0IsQ0FBQztBQUN0RjtBQVNPLElBQU0sYUFBYSxDQUN4QixRQUNBLFlBQ3FCO0FBQ3JCLFFBQU0sYUFBYSxPQUFPLFNBQVMsU0FBUztBQUM1QyxRQUFNLGFBQWEsT0FBTyxTQUFTLFNBQVM7QUFFNUMsTUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZO0FBQzlCLFVBQU07QUFBQSxNQUNKO0FBQUEsTUFDQTtBQUFBLElBQ0Y7QUFBQSxFQUNGO0FBRUEsUUFBTSxVQUFVLGFBQWMsUUFBZ0IsVUFBVyxRQUFnQjtBQUN6RSxRQUFNLGNBQWMsYUFBYyxZQUF1QjtBQUV6RCxRQUFNLFVBQVUsdUJBQXVCLFFBQWUsV0FBVztBQUVqRSxNQUFJLFVBQVU7QUFDZCxRQUFNLFlBQVksb0JBQUksSUFBZ0I7QUFDdEMsUUFBTSxpQkFBaUIsb0JBQW9CLFNBQVM7QUFFcEQsTUFBSTtBQUVKLFFBQU0scUJBQXFCLE1BQU07QUFDL0IsUUFBSSxNQUFPO0FBQ1gsWUFBUSxPQUFPO0FBQUEsTUFDYixPQUFPO0FBQUEsUUFBVztBQUFBLFFBQVEsQ0FBQyxVQUN6QixPQUFPLEtBQUssTUFBTTtBQUNoQixvQkFBVTtBQUNWLHlCQUFlO0FBQUEsUUFDakIsQ0FBQztBQUFBLE1BQ0g7QUFBQSxJQUNGO0FBQUEsRUFDRjtBQUVBLFFBQU0sUUFBMEI7QUFBQSxJQUM5QixhQUFhLE1BQU07QUFBQSxJQUNuQixXQUFXLENBQUMsYUFBYTtBQUN2QixnQkFBVSxJQUFJLFFBQVE7QUFDdEIseUJBQW1CO0FBQ25CLGFBQU8sTUFBTTtBQUNYLGtCQUFVLE9BQU8sUUFBUTtBQUN6QixZQUFJLFVBQVUsT0FBTyxFQUFHO0FBQ3hCLGNBQU0sVUFBVTtBQUNoQixZQUFJLENBQUMsUUFBUztBQUNkLGdCQUFRO0FBQ1IsZUFBTyxRQUFRLE1BQU0sVUFBVSxPQUFPLENBQUM7QUFBQSxNQUN6QztBQUFBLElBQ0Y7QUFBQSxFQUNGO0FBRUEsU0FBTyxpQkFBaUIsT0FBTyxFQUFFLE1BQU0sVUFBVSxTQUFTLFFBQXVCLFNBQVMsWUFBWSxDQUFDO0FBQ3pHO0FBVU8sSUFBTSxhQUFhLENBQU8sUUFBaUIsYUFBK0Q7QUFDL0csUUFBTSxXQUFXLHVCQUF1QixNQUFNO0FBQzlDLFFBQU0sYUFDSixVQUFVLE9BQU8sV0FBVyxZQUFZLE9BQVEsT0FBZSxlQUFlLFlBQWEsT0FBZSxXQUFXLFNBQVMsSUFDeEgsT0FBZSxhQUNqQjtBQUNOLFFBQU0sV0FBcUIsUUFBUSxRQUFRO0FBRTNDLE1BQUksU0FBUyxtQkFBbUIsd0JBQXdCLFNBQVMsU0FBUyxtQkFBbUIsc0JBQXNCO0FBQ2pILFVBQU07QUFBQSxNQUNKO0FBQUEsTUFDQTtBQUFBLElBRUY7QUFBQSxFQUNGO0FBRUEsUUFBTSxVQUFVLFlBQVksRUFBRSxNQUFNLFVBQVUsVUFBVSxZQUFZLFNBQVMsV0FBVyxDQUFDO0FBRXpGLFFBQU0sUUFBMEI7QUFBQSxJQUM5QixhQUFhLE1BQU07QUFDakIsWUFBTTtBQUFBLFFBQ0o7QUFBQSxRQUNBLDREQUE0RCxRQUFRLGdCQUFnQixTQUFTLFVBQVU7QUFBQSxNQUV6RztBQUFBLElBQ0Y7QUFBQSxJQUNBLFdBQVcsTUFBTTtBQUNmLFlBQU07QUFBQSxRQUNKO0FBQUEsUUFDQSw0REFBNEQsUUFBUSxnQkFBZ0IsU0FBUyxVQUFVO0FBQUEsTUFFekc7QUFBQSxJQUNGO0FBQUEsRUFDRjtBQUVBLFNBQU8saUJBQWlCLE9BQU87QUFBQSxJQUM3QixNQUFNO0FBQUEsSUFDTjtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQSxHQUFJLGFBQWEsRUFBRSxXQUFXLElBQUksQ0FBQztBQUFBLElBQ25DLFdBQVc7QUFBQSxFQUNiLENBQUM7QUFDSDsiLAogICJuYW1lcyI6IFtdCn0K
@@ -2,17 +2,16 @@
2
2
 
3
3
  import {
4
4
  make
5
- } from "../chunks/chunk-VLYP4WUS.js";
6
- import "../chunks/chunk-UMVN3AWO.js";
7
- import "../chunks/chunk-UKYAF3NL.js";
8
- import "../chunks/chunk-S46P7MC6.js";
9
- import "../chunks/chunk-3LX3KIQQ.js";
10
- import "../chunks/chunk-BWSNPKO5.js";
11
- import "../chunks/chunk-TOQ6SJ6O.js";
5
+ } from "../chunks/chunk-2XVE7F26.js";
6
+ import "../chunks/chunk-W365QUZ5.js";
7
+ import "../chunks/chunk-SH7TP5CJ.js";
8
+ import "../chunks/chunk-SI5OKFFY.js";
9
+ import "../chunks/chunk-LWI7BXFN.js";
10
+ import "../chunks/chunk-DT7YIIWE.js";
12
11
 
13
12
  // ../logix-core/src/Flow.ts
14
13
  var make2 = make;
15
14
  export {
16
15
  make2 as make
17
16
  };
18
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vbG9naXgtY29yZS9zcmMvRmxvdy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHR5cGUgeyBBbnlNb2R1bGVTaGFwZSwgTW9kdWxlU2hhcGUgfSBmcm9tICcuL2ludGVybmFsL21vZHVsZS5qcydcbmltcG9ydCB0eXBlICogYXMgTG9naWMgZnJvbSAnLi9Mb2dpYy5qcydcbmltcG9ydCAqIGFzIEZsb3dSdW50aW1lIGZyb20gJy4vaW50ZXJuYWwvcnVudGltZS9GbG93UnVudGltZS5qcydcblxuLy8gRmxvdzogcHVibGljIEFQSSBmb3IgYnVzaW5lc3MgZmxvdyBvcmNoZXN0cmF0aW9uICh3cmFwcyBpbnRlcm5hbC9ydW50aW1lL0Zsb3dSdW50aW1lIGtlcm5lbCkuXG5cbmV4cG9ydCB0eXBlIEVudjxTaCBleHRlbmRzIEFueU1vZHVsZVNoYXBlLCBSID0gdW5rbm93bj4gPSBMb2dpYy5FbnY8U2gsIFI+XG5cbmV4cG9ydCB0eXBlIEFwaTxTaCBleHRlbmRzIE1vZHVsZVNoYXBlPGFueSwgYW55PiwgUiA9IG5ldmVyPiA9IEZsb3dSdW50aW1lLkFwaTxTaCwgUj5cblxuZXhwb3J0IGNvbnN0IG1ha2UgPSBGbG93UnVudGltZS5tYWtlXG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7O0FBVU8sSUFBTUEsUUFBbUI7IiwKICAibmFtZXMiOiBbIm1ha2UiXQp9Cg==
17
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vbG9naXgtY29yZS9zcmMvRmxvdy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHR5cGUgeyBBbnlNb2R1bGVTaGFwZSwgTW9kdWxlU2hhcGUgfSBmcm9tICcuL2ludGVybmFsL21vZHVsZS5qcydcbmltcG9ydCB0eXBlICogYXMgTG9naWMgZnJvbSAnLi9Mb2dpYy5qcydcbmltcG9ydCAqIGFzIEZsb3dSdW50aW1lIGZyb20gJy4vaW50ZXJuYWwvcnVudGltZS9GbG93UnVudGltZS5qcydcblxuLy8gRmxvdzogcHVibGljIEFQSSBmb3IgYnVzaW5lc3MgZmxvdyBvcmNoZXN0cmF0aW9uICh3cmFwcyBpbnRlcm5hbC9ydW50aW1lL0Zsb3dSdW50aW1lIGtlcm5lbCkuXG5cbmV4cG9ydCB0eXBlIEVudjxTaCBleHRlbmRzIEFueU1vZHVsZVNoYXBlLCBSID0gdW5rbm93bj4gPSBMb2dpYy5FbnY8U2gsIFI+XG5cbmV4cG9ydCB0eXBlIEFwaTxTaCBleHRlbmRzIE1vZHVsZVNoYXBlPGFueSwgYW55PiwgUiA9IG5ldmVyPiA9IEZsb3dSdW50aW1lLkFwaTxTaCwgUj5cblxuZXhwb3J0IGNvbnN0IG1ha2UgPSBGbG93UnVudGltZS5tYWtlXG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7QUFVTyxJQUFNQSxRQUFtQjsiLAogICJuYW1lcyI6IFsibWFrZSJdCn0K
@@ -13,12 +13,15 @@ import {
13
13
  kernelLayer,
14
14
  runtimeDefaultServicesOverridesLayer,
15
15
  runtimeServicesRegistryLayer
16
- } from "../chunks/chunk-WE4STGO2.js";
16
+ } from "../chunks/chunk-L4ZNW5DI.js";
17
17
  import {
18
18
  RuntimeServiceBuiltinsTag
19
- } from "../chunks/chunk-ZUBABAAO.js";
20
- import "../chunks/chunk-HNEDTEGQ.js";
21
- import "../chunks/chunk-CZRI7MHA.js";
19
+ } from "../chunks/chunk-6TUOP63Q.js";
20
+ import "../chunks/chunk-L4PNO2H6.js";
21
+ import "../chunks/chunk-YMVMZA3U.js";
22
+ import "../chunks/chunk-UJGVDFZN.js";
23
+ import "../chunks/chunk-SH7TP5CJ.js";
24
+ import "../chunks/chunk-SI5OKFFY.js";
22
25
  export {
23
26
  CutoverCoverageMatrix,
24
27
  KernelContractMetaAllowlist,
@@ -1,41 +1,49 @@
1
1
  // @logixjs/core subpath bundles for @logixjs/sandbox
2
2
 
3
3
  import {
4
- link
5
- } from "../chunks/chunk-5SOP6EKV.js";
6
- import "../chunks/chunk-YF6IO732.js";
7
- import "../chunks/chunk-PQ652ULI.js";
8
- import "../chunks/chunk-MPUSOFJ3.js";
9
- import "../chunks/chunk-HFV5GJPK.js";
10
- import "../chunks/chunk-CEGSWZ5S.js";
11
- import "../chunks/chunk-ZUBABAAO.js";
12
- import "../chunks/chunk-4LRLOTMA.js";
13
- import "../chunks/chunk-HNEDTEGQ.js";
4
+ link,
5
+ linkDeclarative
6
+ } from "../chunks/chunk-DVB5WRCI.js";
7
+ import "../chunks/chunk-5GEYCJW2.js";
8
+ import "../chunks/chunk-KTFZSXOW.js";
9
+ import "../chunks/chunk-FQRUTYAD.js";
10
+ import "../chunks/chunk-C2MYMMO4.js";
11
+ import "../chunks/chunk-BJOWSSEL.js";
12
+ import "../chunks/chunk-KDJR27JV.js";
13
+ import "../chunks/chunk-EZTMVCJF.js";
14
+ import "../chunks/chunk-6TUOP63Q.js";
15
+ import "../chunks/chunk-L4PNO2H6.js";
14
16
  import "../chunks/chunk-NTN6T6I6.js";
15
- import "../chunks/chunk-JIXTOQXJ.js";
17
+ import "../chunks/chunk-RIWOEI3T.js";
16
18
  import "../chunks/chunk-KE2H62D6.js";
17
- import "../chunks/chunk-WFV5PPWJ.js";
18
19
  import "../chunks/chunk-CTSYKMM6.js";
19
- import "../chunks/chunk-RJQ4PG2F.js";
20
+ import "../chunks/chunk-NWCJJZNQ.js";
21
+ import "../chunks/chunk-UBMUY7WO.js";
20
22
  import "../chunks/chunk-GFOF7NCX.js";
21
23
  import "../chunks/chunk-DOBF6YTQ.js";
22
24
  import "../chunks/chunk-2LZ43SWS.js";
23
- import "../chunks/chunk-IP63FME6.js";
24
- import "../chunks/chunk-UCFEP3BH.js";
25
- import "../chunks/chunk-CZRI7MHA.js";
26
- import "../chunks/chunk-VLYP4WUS.js";
27
- import "../chunks/chunk-UMVN3AWO.js";
28
- import "../chunks/chunk-UKYAF3NL.js";
29
- import "../chunks/chunk-S46P7MC6.js";
30
- import "../chunks/chunk-3LX3KIQQ.js";
31
- import "../chunks/chunk-BWSNPKO5.js";
32
- import "../chunks/chunk-TOQ6SJ6O.js";
25
+ import "../chunks/chunk-X2Z5VYG3.js";
26
+ import "../chunks/chunk-ASVMK364.js";
27
+ import "../chunks/chunk-7GPAF2UK.js";
28
+ import "../chunks/chunk-YMVMZA3U.js";
29
+ import "../chunks/chunk-BWTGJZVP.js";
30
+ import "../chunks/chunk-UJGVDFZN.js";
31
+ import "../chunks/chunk-2XVE7F26.js";
32
+ import "../chunks/chunk-W365QUZ5.js";
33
+ import "../chunks/chunk-SH7TP5CJ.js";
34
+ import "../chunks/chunk-SI5OKFFY.js";
35
+ import "../chunks/chunk-LWI7BXFN.js";
36
+ import "../chunks/chunk-DT7YIIWE.js";
33
37
 
34
38
  // ../logix-core/src/Link.ts
35
39
  function make(config, logic) {
36
40
  return link(config, logic);
37
41
  }
42
+ function makeDeclarative(config, build) {
43
+ return linkDeclarative(config, build);
44
+ }
38
45
  export {
39
- make
46
+ make,
47
+ makeDeclarative
40
48
  };
41
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vbG9naXgtY29yZS9zcmMvTGluay50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHR5cGUgeyBFZmZlY3QgfSBmcm9tICdlZmZlY3QnXG5pbXBvcnQgKiBhcyBQcm9jZXNzIGZyb20gJy4vUHJvY2Vzcy5qcydcbmltcG9ydCB0eXBlIHsgQW55TW9kdWxlU2hhcGUsIE1vZHVsZUxpa2UsIE1vZHVsZUhhbmRsZSwgTW9kdWxlVGFnIH0gZnJvbSAnLi9pbnRlcm5hbC9tb2R1bGUuanMnXG5cbnR5cGUgTGlua01vZHVsZVRva2VuPElkIGV4dGVuZHMgc3RyaW5nLCBTaCBleHRlbmRzIEFueU1vZHVsZVNoYXBlPiA9IE1vZHVsZVRhZzxJZCwgU2g+IHwgTW9kdWxlTGlrZTxJZCwgU2gsIG9iamVjdD5cblxudHlwZSBMaW5rTW9kdWxlSWRPZjxNPiA9IE0gZXh0ZW5kcyB7IHJlYWRvbmx5IGlkOiBpbmZlciBJZCB9ID8gSWQgOiBuZXZlclxudHlwZSBMaW5rTW9kdWxlU2hhcGVPZjxNPiA9XG4gIE0gZXh0ZW5kcyBNb2R1bGVMaWtlPHN0cmluZywgaW5mZXIgU2gsIG9iamVjdD4gPyBTaCA6IE0gZXh0ZW5kcyBNb2R1bGVUYWc8c3RyaW5nLCBpbmZlciBTaD4gPyBTaCA6IG5ldmVyXG5cbi8qKlxuICogTGluay5tYWtlIGNvbmZpZzpcbiAqIC0gbW9kdWxlczogbW9kdWxlcyBwYXJ0aWNpcGF0aW5nIGluIHRoaXMgTGluay5cbiAqICAgLSBLZXlzIGNvbWUgZnJvbSBtb2R1bGUgaWRzIChlLmcuIHRoZSBgXCJVc2VyXCJgIGluIGBMb2dpeC5Nb2R1bGUubWFrZShcIlVzZXJcIiwgLi4uKWApLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExpbmtDb25maWc8TXMgZXh0ZW5kcyByZWFkb25seSBMaW5rTW9kdWxlVG9rZW48c3RyaW5nLCBBbnlNb2R1bGVTaGFwZT5bXT4ge1xuICAvKipcbiAgICogTGluayBpZGVudGlmaWVyLlxuICAgKiAtIE9wdGlvbmFsOyBkZWZhdWx0cyB0byBhIHN0YWJsZSBzdHJpbmcgZGVyaXZlZCBmcm9tIHBhcnRpY2lwYXRpbmcgYG1vZHVsZXMuaWRgLlxuICAgKiAtIEludGVuZGVkIGZvciBVbml2ZXJzZSAvIERldlRvb2xzIGRpc3BsYXkgYW5kIG5hdmlnYXRpb24uXG4gICAqL1xuICByZWFkb25seSBpZD86IHN0cmluZ1xuICByZWFkb25seSBtb2R1bGVzOiBNc1xufVxuXG4vKipcbiAqIEhhbmRsZSB2aWV3IGV4cG9zZWQgdG8gTGluayBsb2dpYywgZGVyaXZlZCBmcm9tIHRoZSBtb2R1bGUgbGlzdDpcbiAqIC0ga2V5OiBtb2R1bGUgaWQuXG4gKiAtIHZhbHVlOiByZWFkLW9ubHkgaGFuZGxlIG9mIHRoYXQgbW9kdWxlLlxuICovXG5leHBvcnQgdHlwZSBMaW5rSGFuZGxlczxNcyBleHRlbmRzIHJlYWRvbmx5IExpbmtNb2R1bGVUb2tlbjxzdHJpbmcsIEFueU1vZHVsZVNoYXBlPltdPiA9IHtcbiAgW00gaW4gTXNbbnVtYmVyXSBhcyBMaW5rTW9kdWxlSWRPZjxNPl06IE1vZHVsZUhhbmRsZTxMaW5rTW9kdWxlU2hhcGVPZjxNPj5cbn1cblxuLyoqXG4gKiBMaW5rLm1ha2U6XG4gKiAtIENyZWF0ZXMgYSBMaW5rIChjcm9zcy1tb2R1bGUgZ2x1ZSBsb2dpYykgZnJvbSBhIG1vZHVsZSBsaXN0IGFuZCBhIGxvZ2ljIHByb2dyYW0uXG4gKiAtIFJldHVybnMgYSBcImNvbGRcIiBFZmZlY3QsIHR5cGljYWxseSBhdHRhY2hlZCB2aWEgYE1vZHVsZUltcGwuaW1wbGVtZW50KHsgcHJvY2Vzc2VzL2xpbmtzIH0pYCBhbmQgZm9ya2VkIGJ5IHRoZSBydW50aW1lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFrZTxNcyBleHRlbmRzIHJlYWRvbmx5IExpbmtNb2R1bGVUb2tlbjxzdHJpbmcsIEFueU1vZHVsZVNoYXBlPltdLCBFID0gbmV2ZXIsIFIgPSBuZXZlcj4oXG4gIGNvbmZpZzogTGlua0NvbmZpZzxNcz4sXG4gIGxvZ2ljOiAoJDogTGlua0hhbmRsZXM8TXM+KSA9PiBFZmZlY3QuRWZmZWN0PHZvaWQsIEUsIFI+LFxuKTogRWZmZWN0LkVmZmVjdDx2b2lkLCBFLCBSPiB7XG4gIC8vIExpbmsubWFrZSBpcyBhbiBhbGlhczsgaXQgZGVsZWdhdGVzIHRvIFByb2Nlc3MubGluayAodW5pZnlpbmcgdGhlIHN0YXRpYyBzdXJmYWNlIGFuZCBydW50aW1lIHJlY29nbml0aW9uKS5cbiAgcmV0dXJuIFByb2Nlc3MubGluayhjb25maWcgYXMgYW55LCBsb2dpYyBhcyBhbnkpIGFzIEVmZmVjdC5FZmZlY3Q8dm9pZCwgRSwgUj5cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF1Q08sU0FBUyxLQUNkLFFBQ0EsT0FDMkI7QUFFM0IsU0FBZSxLQUFLLFFBQWUsS0FBWTtBQUNqRDsiLAogICJuYW1lcyI6IFtdCn0K
49
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vbG9naXgtY29yZS9zcmMvTGluay50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHR5cGUgeyBFZmZlY3QgfSBmcm9tICdlZmZlY3QnXG5pbXBvcnQgKiBhcyBQcm9jZXNzIGZyb20gJy4vUHJvY2Vzcy5qcydcbmltcG9ydCB0eXBlIHsgQW55TW9kdWxlU2hhcGUsIE1vZHVsZUxpa2UsIE1vZHVsZUhhbmRsZSwgTW9kdWxlVGFnIH0gZnJvbSAnLi9pbnRlcm5hbC9tb2R1bGUuanMnXG5cbnR5cGUgTGlua01vZHVsZVRva2VuPElkIGV4dGVuZHMgc3RyaW5nLCBTaCBleHRlbmRzIEFueU1vZHVsZVNoYXBlPiA9IE1vZHVsZVRhZzxJZCwgU2g+IHwgTW9kdWxlTGlrZTxJZCwgU2gsIG9iamVjdD5cblxudHlwZSBMaW5rTW9kdWxlSWRPZjxNPiA9IE0gZXh0ZW5kcyB7IHJlYWRvbmx5IGlkOiBpbmZlciBJZCB9ID8gSWQgOiBuZXZlclxudHlwZSBMaW5rTW9kdWxlU2hhcGVPZjxNPiA9XG4gIE0gZXh0ZW5kcyBNb2R1bGVMaWtlPHN0cmluZywgaW5mZXIgU2gsIG9iamVjdD4gPyBTaCA6IE0gZXh0ZW5kcyBNb2R1bGVUYWc8c3RyaW5nLCBpbmZlciBTaD4gPyBTaCA6IG5ldmVyXG5cbi8qKlxuICogTGluay5tYWtlIGNvbmZpZzpcbiAqIC0gbW9kdWxlczogbW9kdWxlcyBwYXJ0aWNpcGF0aW5nIGluIHRoaXMgTGluay5cbiAqICAgLSBLZXlzIGNvbWUgZnJvbSBtb2R1bGUgaWRzIChlLmcuIHRoZSBgXCJVc2VyXCJgIGluIGBMb2dpeC5Nb2R1bGUubWFrZShcIlVzZXJcIiwgLi4uKWApLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExpbmtDb25maWc8TXMgZXh0ZW5kcyByZWFkb25seSBMaW5rTW9kdWxlVG9rZW48c3RyaW5nLCBBbnlNb2R1bGVTaGFwZT5bXT4ge1xuICAvKipcbiAgICogTGluayBpZGVudGlmaWVyLlxuICAgKiAtIE9wdGlvbmFsOyBkZWZhdWx0cyB0byBhIHN0YWJsZSBzdHJpbmcgZGVyaXZlZCBmcm9tIHBhcnRpY2lwYXRpbmcgYG1vZHVsZXMuaWRgLlxuICAgKiAtIEludGVuZGVkIGZvciBVbml2ZXJzZSAvIERldlRvb2xzIGRpc3BsYXkgYW5kIG5hdmlnYXRpb24uXG4gICAqL1xuICByZWFkb25seSBpZD86IHN0cmluZ1xuICByZWFkb25seSBtb2R1bGVzOiBNc1xufVxuXG4vKipcbiAqIEhhbmRsZSB2aWV3IGV4cG9zZWQgdG8gTGluayBsb2dpYywgZGVyaXZlZCBmcm9tIHRoZSBtb2R1bGUgbGlzdDpcbiAqIC0ga2V5OiBtb2R1bGUgaWQuXG4gKiAtIHZhbHVlOiByZWFkLW9ubHkgaGFuZGxlIG9mIHRoYXQgbW9kdWxlLlxuICovXG5leHBvcnQgdHlwZSBMaW5rSGFuZGxlczxNcyBleHRlbmRzIHJlYWRvbmx5IExpbmtNb2R1bGVUb2tlbjxzdHJpbmcsIEFueU1vZHVsZVNoYXBlPltdPiA9IHtcbiAgW00gaW4gTXNbbnVtYmVyXSBhcyBMaW5rTW9kdWxlSWRPZjxNPl06IE1vZHVsZUhhbmRsZTxMaW5rTW9kdWxlU2hhcGVPZjxNPj5cbn1cblxuLyoqXG4gKiBMaW5rLm1ha2U6XG4gKiAtIENyZWF0ZXMgYSBMaW5rIChjcm9zcy1tb2R1bGUgZ2x1ZSBsb2dpYykgZnJvbSBhIG1vZHVsZSBsaXN0IGFuZCBhIGxvZ2ljIHByb2dyYW0uXG4gKiAtIFJldHVybnMgYSBcImNvbGRcIiBFZmZlY3QsIHR5cGljYWxseSBhdHRhY2hlZCB2aWEgYE1vZHVsZUltcGwuaW1wbGVtZW50KHsgcHJvY2Vzc2VzL2xpbmtzIH0pYCBhbmQgZm9ya2VkIGJ5IHRoZSBydW50aW1lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFrZTxNcyBleHRlbmRzIHJlYWRvbmx5IExpbmtNb2R1bGVUb2tlbjxzdHJpbmcsIEFueU1vZHVsZVNoYXBlPltdLCBFID0gbmV2ZXIsIFIgPSBuZXZlcj4oXG4gIGNvbmZpZzogTGlua0NvbmZpZzxNcz4sXG4gIGxvZ2ljOiAoJDogTGlua0hhbmRsZXM8TXM+KSA9PiBFZmZlY3QuRWZmZWN0PHZvaWQsIEUsIFI+LFxuKTogRWZmZWN0LkVmZmVjdDx2b2lkLCBFLCBSPiB7XG4gIC8vIExpbmsubWFrZSBpcyBhbiBhbGlhczsgaXQgZGVsZWdhdGVzIHRvIFByb2Nlc3MubGluayAodW5pZnlpbmcgdGhlIHN0YXRpYyBzdXJmYWNlIGFuZCBydW50aW1lIHJlY29nbml0aW9uKS5cbiAgcmV0dXJuIFByb2Nlc3MubGluayhjb25maWcgYXMgYW55LCBsb2dpYyBhcyBhbnkpIGFzIEVmZmVjdC5FZmZlY3Q8dm9pZCwgRSwgUj5cbn1cblxuLyoqXG4gKiBMaW5rLm1ha2VEZWNsYXJhdGl2ZTpcbiAqIC0gQSBjb250cm9sbGVkIGJ1aWxkZXIgdGhhdCBnZW5lcmF0ZXMgRGVjbGFyYXRpdmVMaW5rSVIgKFJlYWRRdWVyeS9zdGF0aWMgZGVwcyAtPiBkaXNwYXRjaCBvbmx5KS5cbiAqIC0gU3Ryb25nIGNvbnNpc3RlbmN5IGFwcGxpZXMgdG8gdGhpcyBJUjsgcHJlZmVyIGl0IHdoZW4geW91IG5lZWQgc2FtZS10aWNrIGNyb3NzLW1vZHVsZSBjb252ZXJnZW5jZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1ha2VEZWNsYXJhdGl2ZTxNcyBleHRlbmRzIHJlYWRvbmx5IExpbmtNb2R1bGVUb2tlbjxzdHJpbmcsIEFueU1vZHVsZVNoYXBlPltdPihcbiAgY29uZmlnOiBMaW5rQ29uZmlnPE1zPixcbiAgYnVpbGQ6IChhcmdzOiBhbnkpID0+IFJlYWRvbmx5QXJyYXk8YW55Pixcbik6IEVmZmVjdC5FZmZlY3Q8dm9pZCwgbmV2ZXIsIG5ldmVyPiB7XG4gIHJldHVybiBQcm9jZXNzLmxpbmtEZWNsYXJhdGl2ZShjb25maWcgYXMgYW55LCBidWlsZCBhcyBhbnkpIGFzIEVmZmVjdC5FZmZlY3Q8dm9pZCwgbmV2ZXIsIG5ldmVyPlxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF1Q08sU0FBUyxLQUNkLFFBQ0EsT0FDMkI7QUFFM0IsU0FBZSxLQUFLLFFBQWUsS0FBWTtBQUNqRDtBQU9PLFNBQVMsZ0JBQ2QsUUFDQSxPQUNtQztBQUNuQyxTQUFlLGdCQUFnQixRQUFlLEtBQVk7QUFDNUQ7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -6,18 +6,20 @@ import {
6
6
  makeDebugLogger,
7
7
  makeDebugObserver,
8
8
  withDebug
9
- } from "../chunks/chunk-X72PZOFA.js";
10
- import "../chunks/chunk-S4EXG3OS.js";
11
- import "../chunks/chunk-A6JFUNQQ.js";
12
- import "../chunks/chunk-ON2LY6HJ.js";
9
+ } from "../chunks/chunk-K2MQ66O7.js";
10
+ import "../chunks/chunk-RBB6SHW2.js";
11
+ import "../chunks/chunk-74C5VW7Z.js";
12
+ import "../chunks/chunk-4MY35XR3.js";
13
13
  import "../chunks/chunk-2LZ43SWS.js";
14
- import "../chunks/chunk-IP63FME6.js";
15
- import "../chunks/chunk-UCFEP3BH.js";
16
- import "../chunks/chunk-CZRI7MHA.js";
17
- import "../chunks/chunk-UKYAF3NL.js";
18
- import "../chunks/chunk-S46P7MC6.js";
19
- import "../chunks/chunk-BWSNPKO5.js";
20
- import "../chunks/chunk-TOQ6SJ6O.js";
14
+ import "../chunks/chunk-X2Z5VYG3.js";
15
+ import "../chunks/chunk-ASVMK364.js";
16
+ import "../chunks/chunk-7GPAF2UK.js";
17
+ import "../chunks/chunk-YMVMZA3U.js";
18
+ import "../chunks/chunk-NMGFJZ4I.js";
19
+ import "../chunks/chunk-UJGVDFZN.js";
20
+ import "../chunks/chunk-SH7TP5CJ.js";
21
+ import "../chunks/chunk-SI5OKFFY.js";
22
+ import "../chunks/chunk-DT7YIIWE.js";
21
23
  export {
22
24
  applyDebug,
23
25
  applyDebugObserver,