@milaboratories/pl-middle-layer 1.48.11 → 1.48.13

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 (589) hide show
  1. package/dist/_virtual/_@oxc-project_runtime@0.114.0/helpers/usingCtx.cjs +59 -0
  2. package/dist/_virtual/_@oxc-project_runtime@0.114.0/helpers/usingCtx.js +58 -0
  3. package/dist/_virtual/_rolldown/runtime.cjs +29 -0
  4. package/dist/block_registry/index.cjs +3 -0
  5. package/dist/block_registry/index.d.ts +3 -4
  6. package/dist/block_registry/index.js +3 -0
  7. package/dist/block_registry/registry-v2-provider.cjs +18 -19
  8. package/dist/block_registry/registry-v2-provider.cjs.map +1 -1
  9. package/dist/block_registry/registry-v2-provider.d.ts +10 -6
  10. package/dist/block_registry/registry-v2-provider.js +17 -17
  11. package/dist/block_registry/registry-v2-provider.js.map +1 -1
  12. package/dist/block_registry/registry.cjs +188 -219
  13. package/dist/block_registry/registry.cjs.map +1 -1
  14. package/dist/block_registry/registry.d.ts +18 -14
  15. package/dist/block_registry/registry.js +184 -217
  16. package/dist/block_registry/registry.js.map +1 -1
  17. package/dist/block_registry/watcher.cjs +141 -170
  18. package/dist/block_registry/watcher.cjs.map +1 -1
  19. package/dist/block_registry/watcher.d.ts +26 -24
  20. package/dist/block_registry/watcher.js +139 -168
  21. package/dist/block_registry/watcher.js.map +1 -1
  22. package/dist/block_registry/well_known_registries.cjs +9 -8
  23. package/dist/block_registry/well_known_registries.cjs.map +1 -1
  24. package/dist/block_registry/well_known_registries.d.ts +8 -4
  25. package/dist/block_registry/well_known_registries.js +9 -7
  26. package/dist/block_registry/well_known_registries.js.map +1 -1
  27. package/dist/cfg_render/executor.cjs +136 -137
  28. package/dist/cfg_render/executor.cjs.map +1 -1
  29. package/dist/cfg_render/executor.js +133 -135
  30. package/dist/cfg_render/executor.js.map +1 -1
  31. package/dist/cfg_render/renderer.cjs +354 -462
  32. package/dist/cfg_render/renderer.cjs.map +1 -1
  33. package/dist/cfg_render/renderer.js +353 -460
  34. package/dist/cfg_render/renderer.js.map +1 -1
  35. package/dist/cfg_render/traverse.cjs +58 -60
  36. package/dist/cfg_render/traverse.cjs.map +1 -1
  37. package/dist/cfg_render/traverse.js +57 -58
  38. package/dist/cfg_render/traverse.js.map +1 -1
  39. package/dist/cfg_render/util.cjs +14 -19
  40. package/dist/cfg_render/util.cjs.map +1 -1
  41. package/dist/cfg_render/util.js +14 -17
  42. package/dist/cfg_render/util.js.map +1 -1
  43. package/dist/debug/index.cjs +13 -17
  44. package/dist/debug/index.cjs.map +1 -1
  45. package/dist/debug/index.js +13 -16
  46. package/dist/debug/index.js.map +1 -1
  47. package/dist/dev_env/index.cjs +60 -44
  48. package/dist/dev_env/index.cjs.map +1 -1
  49. package/dist/dev_env/index.js +57 -33
  50. package/dist/dev_env/index.js.map +1 -1
  51. package/dist/dev_env/util.cjs +12 -32
  52. package/dist/dev_env/util.cjs.map +1 -1
  53. package/dist/dev_env/util.js +10 -11
  54. package/dist/dev_env/util.js.map +1 -1
  55. package/dist/index.cjs +75 -74
  56. package/dist/index.d.ts +21 -13
  57. package/dist/index.js +25 -18
  58. package/dist/js_render/computable_context.cjs +432 -568
  59. package/dist/js_render/computable_context.cjs.map +1 -1
  60. package/dist/js_render/computable_context.js +431 -566
  61. package/dist/js_render/computable_context.js.map +1 -1
  62. package/dist/js_render/context.cjs +184 -237
  63. package/dist/js_render/context.cjs.map +1 -1
  64. package/dist/js_render/context.js +184 -235
  65. package/dist/js_render/context.js.map +1 -1
  66. package/dist/js_render/index.cjs +137 -156
  67. package/dist/js_render/index.cjs.map +1 -1
  68. package/dist/js_render/index.js +136 -154
  69. package/dist/js_render/index.js.map +1 -1
  70. package/dist/middle_layer/active_cfg.cjs +28 -35
  71. package/dist/middle_layer/active_cfg.cjs.map +1 -1
  72. package/dist/middle_layer/active_cfg.js +27 -33
  73. package/dist/middle_layer/active_cfg.js.map +1 -1
  74. package/dist/middle_layer/block.cjs +36 -42
  75. package/dist/middle_layer/block.cjs.map +1 -1
  76. package/dist/middle_layer/block.js +35 -40
  77. package/dist/middle_layer/block.js.map +1 -1
  78. package/dist/middle_layer/block_ctx.cjs +91 -133
  79. package/dist/middle_layer/block_ctx.cjs.map +1 -1
  80. package/dist/middle_layer/block_ctx.js +90 -131
  81. package/dist/middle_layer/block_ctx.js.map +1 -1
  82. package/dist/middle_layer/block_ctx_unsafe.cjs +20 -19
  83. package/dist/middle_layer/block_ctx_unsafe.cjs.map +1 -1
  84. package/dist/middle_layer/block_ctx_unsafe.js +20 -18
  85. package/dist/middle_layer/block_ctx_unsafe.js.map +1 -1
  86. package/dist/middle_layer/driver_kit.cjs +47 -51
  87. package/dist/middle_layer/driver_kit.cjs.map +1 -1
  88. package/dist/middle_layer/driver_kit.d.ts +31 -27
  89. package/dist/middle_layer/driver_kit.js +46 -49
  90. package/dist/middle_layer/driver_kit.js.map +1 -1
  91. package/dist/middle_layer/frontend_path.cjs +49 -55
  92. package/dist/middle_layer/frontend_path.cjs.map +1 -1
  93. package/dist/middle_layer/frontend_path.js +48 -53
  94. package/dist/middle_layer/frontend_path.js.map +1 -1
  95. package/dist/middle_layer/index.cjs +4 -0
  96. package/dist/middle_layer/index.d.ts +4 -5
  97. package/dist/middle_layer/index.js +4 -0
  98. package/dist/middle_layer/middle_layer.cjs +216 -245
  99. package/dist/middle_layer/middle_layer.cjs.map +1 -1
  100. package/dist/middle_layer/middle_layer.d.ts +95 -91
  101. package/dist/middle_layer/middle_layer.js +215 -243
  102. package/dist/middle_layer/middle_layer.js.map +1 -1
  103. package/dist/middle_layer/navigation_states.cjs +45 -38
  104. package/dist/middle_layer/navigation_states.cjs.map +1 -1
  105. package/dist/middle_layer/navigation_states.js +44 -36
  106. package/dist/middle_layer/navigation_states.js.map +1 -1
  107. package/dist/middle_layer/ops.cjs +56 -57
  108. package/dist/middle_layer/ops.cjs.map +1 -1
  109. package/dist/middle_layer/ops.d.ts +86 -96
  110. package/dist/middle_layer/ops.js +54 -55
  111. package/dist/middle_layer/ops.js.map +1 -1
  112. package/dist/middle_layer/project.cjs +497 -527
  113. package/dist/middle_layer/project.cjs.map +1 -1
  114. package/dist/middle_layer/project.d.ts +155 -152
  115. package/dist/middle_layer/project.js +494 -525
  116. package/dist/middle_layer/project.js.map +1 -1
  117. package/dist/middle_layer/project_list.cjs +45 -43
  118. package/dist/middle_layer/project_list.cjs.map +1 -1
  119. package/dist/middle_layer/project_list.js +45 -41
  120. package/dist/middle_layer/project_list.js.map +1 -1
  121. package/dist/middle_layer/project_overview.cjs +202 -240
  122. package/dist/middle_layer/project_overview.cjs.map +1 -1
  123. package/dist/middle_layer/project_overview.js +201 -238
  124. package/dist/middle_layer/project_overview.js.map +1 -1
  125. package/dist/middle_layer/project_overview_light.cjs +11 -14
  126. package/dist/middle_layer/project_overview_light.cjs.map +1 -1
  127. package/dist/middle_layer/project_overview_light.js +10 -12
  128. package/dist/middle_layer/project_overview_light.js.map +1 -1
  129. package/dist/middle_layer/render.cjs +14 -18
  130. package/dist/middle_layer/render.cjs.map +1 -1
  131. package/dist/middle_layer/render.js +13 -16
  132. package/dist/middle_layer/render.js.map +1 -1
  133. package/dist/middle_layer/types.d.ts +7 -10
  134. package/dist/middle_layer/util.cjs +26 -21
  135. package/dist/middle_layer/util.cjs.map +1 -1
  136. package/dist/middle_layer/util.js +25 -19
  137. package/dist/middle_layer/util.js.map +1 -1
  138. package/dist/model/args.cjs +44 -53
  139. package/dist/model/args.cjs.map +1 -1
  140. package/dist/model/args.js +44 -51
  141. package/dist/model/args.js.map +1 -1
  142. package/dist/model/block_pack_spec.cjs +9 -5
  143. package/dist/model/block_pack_spec.cjs.map +1 -1
  144. package/dist/model/block_pack_spec.d.ts +34 -30
  145. package/dist/model/block_pack_spec.js +9 -4
  146. package/dist/model/block_pack_spec.js.map +1 -1
  147. package/dist/model/frontend.d.ts +8 -5
  148. package/dist/model/index.d.ts +2 -3
  149. package/dist/model/project_helper.cjs +154 -193
  150. package/dist/model/project_helper.cjs.map +1 -1
  151. package/dist/model/project_helper.d.ts +96 -92
  152. package/dist/model/project_helper.js +153 -191
  153. package/dist/model/project_helper.js.map +1 -1
  154. package/dist/model/project_model.cjs +33 -32
  155. package/dist/model/project_model.cjs.map +1 -1
  156. package/dist/model/project_model.d.ts +13 -64
  157. package/dist/model/project_model.js +34 -30
  158. package/dist/model/project_model.js.map +1 -1
  159. package/dist/model/project_model_util.cjs +119 -158
  160. package/dist/model/project_model_util.cjs.map +1 -1
  161. package/dist/model/project_model_util.js +120 -156
  162. package/dist/model/project_model_util.js.map +1 -1
  163. package/dist/model/project_model_v1.cjs +3 -2
  164. package/dist/model/project_model_v1.cjs.map +1 -1
  165. package/dist/model/project_model_v1.js +3 -1
  166. package/dist/model/project_model_v1.js.map +1 -1
  167. package/dist/model/template_spec.d.ts +20 -16
  168. package/dist/mutator/block-pack/block_pack.cjs +200 -223
  169. package/dist/mutator/block-pack/block_pack.cjs.map +1 -1
  170. package/dist/mutator/block-pack/block_pack.d.ts +20 -19
  171. package/dist/mutator/block-pack/block_pack.js +199 -221
  172. package/dist/mutator/block-pack/block_pack.js.map +1 -1
  173. package/dist/mutator/block-pack/frontend.cjs +14 -16
  174. package/dist/mutator/block-pack/frontend.cjs.map +1 -1
  175. package/dist/mutator/block-pack/frontend.js +13 -14
  176. package/dist/mutator/block-pack/frontend.js.map +1 -1
  177. package/dist/mutator/context_export.cjs +18 -17
  178. package/dist/mutator/context_export.cjs.map +1 -1
  179. package/dist/mutator/context_export.js +17 -15
  180. package/dist/mutator/context_export.js.map +1 -1
  181. package/dist/mutator/migration.cjs +86 -112
  182. package/dist/mutator/migration.cjs.map +1 -1
  183. package/dist/mutator/migration.js +85 -110
  184. package/dist/mutator/migration.js.map +1 -1
  185. package/dist/mutator/project.cjs +903 -1240
  186. package/dist/mutator/project.cjs.map +1 -1
  187. package/dist/mutator/project.js +901 -1237
  188. package/dist/mutator/project.js.map +1 -1
  189. package/dist/mutator/template/direct_template_loader.cjs +104 -130
  190. package/dist/mutator/template/direct_template_loader.cjs.map +1 -1
  191. package/dist/mutator/template/direct_template_loader.js +103 -128
  192. package/dist/mutator/template/direct_template_loader.js.map +1 -1
  193. package/dist/mutator/template/direct_template_loader_v3.cjs +104 -124
  194. package/dist/mutator/template/direct_template_loader_v3.cjs.map +1 -1
  195. package/dist/mutator/template/direct_template_loader_v3.js +103 -122
  196. package/dist/mutator/template/direct_template_loader_v3.js.map +1 -1
  197. package/dist/mutator/template/render_block.cjs +26 -30
  198. package/dist/mutator/template/render_block.cjs.map +1 -1
  199. package/dist/mutator/template/render_block.js +26 -23
  200. package/dist/mutator/template/render_block.js.map +1 -1
  201. package/dist/mutator/template/render_template.cjs +25 -25
  202. package/dist/mutator/template/render_template.cjs.map +1 -1
  203. package/dist/mutator/template/render_template.d.ts +6 -3
  204. package/dist/mutator/template/render_template.js +24 -23
  205. package/dist/mutator/template/render_template.js.map +1 -1
  206. package/dist/mutator/template/template_loading.cjs +42 -46
  207. package/dist/mutator/template/template_loading.cjs.map +1 -1
  208. package/dist/mutator/template/template_loading.d.ts +16 -12
  209. package/dist/mutator/template/template_loading.js +40 -44
  210. package/dist/mutator/template/template_loading.js.map +1 -1
  211. package/dist/network_check/network_check.cjs +149 -194
  212. package/dist/network_check/network_check.cjs.map +1 -1
  213. package/dist/network_check/network_check.d.ts +50 -66
  214. package/dist/network_check/network_check.js +146 -190
  215. package/dist/network_check/network_check.js.map +1 -1
  216. package/dist/network_check/pings.cjs +71 -69
  217. package/dist/network_check/pings.cjs.map +1 -1
  218. package/dist/network_check/pings.js +71 -65
  219. package/dist/network_check/pings.js.map +1 -1
  220. package/dist/network_check/template.cjs +256 -273
  221. package/dist/network_check/template.cjs.map +1 -1
  222. package/dist/network_check/template.js +253 -265
  223. package/dist/network_check/template.js.map +1 -1
  224. package/dist/pool/data.cjs +205 -226
  225. package/dist/pool/data.cjs.map +1 -1
  226. package/dist/pool/data.d.ts +10 -27
  227. package/dist/pool/data.js +196 -209
  228. package/dist/pool/data.js.map +1 -1
  229. package/dist/pool/driver.cjs +180 -207
  230. package/dist/pool/driver.cjs.map +1 -1
  231. package/dist/pool/driver.d.ts +12 -17
  232. package/dist/pool/driver.js +178 -205
  233. package/dist/pool/driver.js.map +1 -1
  234. package/dist/pool/index.cjs +2 -0
  235. package/dist/pool/index.d.ts +2 -3
  236. package/dist/pool/index.js +2 -0
  237. package/dist/pool/p_object_collection.cjs +67 -79
  238. package/dist/pool/p_object_collection.cjs.map +1 -1
  239. package/dist/pool/p_object_collection.d.ts +7 -28
  240. package/dist/pool/p_object_collection.js +65 -77
  241. package/dist/pool/p_object_collection.js.map +1 -1
  242. package/dist/pool/result_pool.cjs +217 -262
  243. package/dist/pool/result_pool.cjs.map +1 -1
  244. package/dist/pool/result_pool.d.ts +4 -27
  245. package/dist/pool/result_pool.js +216 -260
  246. package/dist/pool/result_pool.js.map +1 -1
  247. package/dist/worker/WorkerManager.cjs +51 -49
  248. package/dist/worker/WorkerManager.cjs.map +1 -1
  249. package/dist/worker/WorkerManager.js +49 -47
  250. package/dist/worker/WorkerManager.js.map +1 -1
  251. package/dist/worker/worker.cjs +19 -15
  252. package/dist/worker/worker.cjs.map +1 -1
  253. package/dist/worker/worker.d.ts +1 -2
  254. package/dist/worker/worker.js +18 -13
  255. package/dist/worker/worker.js.map +1 -1
  256. package/dist/worker/workerApi.cjs +14 -18
  257. package/dist/worker/workerApi.cjs.map +1 -1
  258. package/dist/worker/workerApi.js +13 -16
  259. package/dist/worker/workerApi.js.map +1 -1
  260. package/package.json +24 -24
  261. package/src/mutator/template/template_render.test.ts +22 -18
  262. package/dist/__external/.pnpm/@rollup_plugin-typescript@12.3.0_rollup@4.52.4_tslib@2.8.1_typescript@5.6.3/__external/tslib/tslib.es6.cjs +0 -77
  263. package/dist/__external/.pnpm/@rollup_plugin-typescript@12.3.0_rollup@4.52.4_tslib@2.8.1_typescript@5.6.3/__external/tslib/tslib.es6.cjs.map +0 -1
  264. package/dist/__external/.pnpm/@rollup_plugin-typescript@12.3.0_rollup@4.52.4_tslib@2.8.1_typescript@5.6.3/__external/tslib/tslib.es6.js +0 -74
  265. package/dist/__external/.pnpm/@rollup_plugin-typescript@12.3.0_rollup@4.52.4_tslib@2.8.1_typescript@5.6.3/__external/tslib/tslib.es6.js.map +0 -1
  266. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/comparator.cjs +0 -162
  267. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/comparator.cjs.map +0 -1
  268. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/comparator.js +0 -160
  269. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/comparator.js.map +0 -1
  270. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/range.cjs +0 -576
  271. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/range.cjs.map +0 -1
  272. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/range.js +0 -574
  273. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/range.js.map +0 -1
  274. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/semver.cjs +0 -337
  275. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/semver.cjs.map +0 -1
  276. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/semver.js +0 -335
  277. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/classes/semver.js.map +0 -1
  278. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/clean.cjs +0 -22
  279. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/clean.cjs.map +0 -1
  280. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/clean.js +0 -20
  281. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/clean.js.map +0 -1
  282. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/cmp.cjs +0 -73
  283. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/cmp.cjs.map +0 -1
  284. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/cmp.js +0 -71
  285. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/cmp.js.map +0 -1
  286. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/coerce.cjs +0 -78
  287. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/coerce.cjs.map +0 -1
  288. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/coerce.js +0 -76
  289. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/coerce.js.map +0 -1
  290. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-build.cjs +0 -23
  291. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-build.cjs.map +0 -1
  292. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-build.js +0 -21
  293. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-build.js.map +0 -1
  294. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-loose.cjs +0 -19
  295. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-loose.cjs.map +0 -1
  296. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-loose.js +0 -17
  297. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare-loose.js.map +0 -1
  298. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare.cjs +0 -21
  299. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare.cjs.map +0 -1
  300. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare.js +0 -19
  301. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/compare.js.map +0 -1
  302. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/diff.cjs +0 -74
  303. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/diff.cjs.map +0 -1
  304. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/diff.js +0 -72
  305. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/diff.js.map +0 -1
  306. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/eq.cjs +0 -19
  307. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/eq.cjs.map +0 -1
  308. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/eq.js +0 -17
  309. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/eq.js.map +0 -1
  310. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gt.cjs +0 -19
  311. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gt.cjs.map +0 -1
  312. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gt.js +0 -17
  313. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gt.js.map +0 -1
  314. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gte.cjs +0 -19
  315. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gte.cjs.map +0 -1
  316. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gte.js +0 -17
  317. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/gte.js.map +0 -1
  318. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/inc.cjs +0 -35
  319. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/inc.cjs.map +0 -1
  320. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/inc.js +0 -33
  321. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/inc.js.map +0 -1
  322. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lt.cjs +0 -19
  323. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lt.cjs.map +0 -1
  324. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lt.js +0 -17
  325. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lt.js.map +0 -1
  326. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lte.cjs +0 -19
  327. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lte.cjs.map +0 -1
  328. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lte.js +0 -17
  329. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/lte.js.map +0 -1
  330. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/major.cjs +0 -19
  331. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/major.cjs.map +0 -1
  332. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/major.js +0 -17
  333. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/major.js.map +0 -1
  334. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/minor.cjs +0 -19
  335. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/minor.cjs.map +0 -1
  336. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/minor.js +0 -17
  337. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/minor.js.map +0 -1
  338. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/neq.cjs +0 -19
  339. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/neq.cjs.map +0 -1
  340. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/neq.js +0 -17
  341. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/neq.js.map +0 -1
  342. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/parse.cjs +0 -32
  343. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/parse.cjs.map +0 -1
  344. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/parse.js +0 -30
  345. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/parse.js.map +0 -1
  346. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/patch.cjs +0 -19
  347. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/patch.cjs.map +0 -1
  348. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/patch.js +0 -17
  349. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/patch.js.map +0 -1
  350. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/prerelease.cjs +0 -22
  351. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/prerelease.cjs.map +0 -1
  352. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/prerelease.js +0 -20
  353. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/prerelease.js.map +0 -1
  354. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rcompare.cjs +0 -19
  355. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rcompare.cjs.map +0 -1
  356. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rcompare.js +0 -17
  357. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rcompare.js.map +0 -1
  358. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rsort.cjs +0 -19
  359. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rsort.cjs.map +0 -1
  360. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rsort.js +0 -17
  361. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/rsort.js.map +0 -1
  362. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/satisfies.cjs +0 -26
  363. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/satisfies.cjs.map +0 -1
  364. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/satisfies.js +0 -24
  365. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/satisfies.js.map +0 -1
  366. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/sort.cjs +0 -19
  367. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/sort.cjs.map +0 -1
  368. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/sort.js +0 -17
  369. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/sort.js.map +0 -1
  370. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/valid.cjs +0 -22
  371. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/valid.cjs.map +0 -1
  372. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/valid.js +0 -20
  373. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/functions/valid.js.map +0 -1
  374. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/index.cjs +0 -145
  375. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/index.cjs.map +0 -1
  376. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/index.js +0 -143
  377. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/index.js.map +0 -1
  378. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/constants.cjs +0 -49
  379. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/constants.cjs.map +0 -1
  380. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/constants.js +0 -47
  381. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/constants.js.map +0 -1
  382. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/debug.cjs +0 -23
  383. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/debug.cjs.map +0 -1
  384. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/debug.js +0 -21
  385. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/debug.js.map +0 -1
  386. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/identifiers.cjs +0 -37
  387. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/identifiers.cjs.map +0 -1
  388. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/identifiers.js +0 -35
  389. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/identifiers.js.map +0 -1
  390. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/lrucache.cjs +0 -54
  391. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/lrucache.cjs.map +0 -1
  392. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/lrucache.js +0 -52
  393. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/lrucache.js.map +0 -1
  394. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/parse-options.cjs +0 -29
  395. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/parse-options.cjs.map +0 -1
  396. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/parse-options.js +0 -27
  397. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/parse-options.js.map +0 -1
  398. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/re.cjs +0 -240
  399. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/re.cjs.map +0 -1
  400. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/re.js +0 -238
  401. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/internal/re.js.map +0 -1
  402. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/gtr.cjs +0 -20
  403. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/gtr.cjs.map +0 -1
  404. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/gtr.js +0 -18
  405. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/gtr.js.map +0 -1
  406. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/intersects.cjs +0 -23
  407. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/intersects.cjs.map +0 -1
  408. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/intersects.js +0 -21
  409. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/intersects.js.map +0 -1
  410. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/ltr.cjs +0 -20
  411. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/ltr.cjs.map +0 -1
  412. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/ltr.js +0 -18
  413. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/ltr.js.map +0 -1
  414. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/max-satisfying.cjs +0 -42
  415. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/max-satisfying.cjs.map +0 -1
  416. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/max-satisfying.js +0 -40
  417. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/max-satisfying.js.map +0 -1
  418. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-satisfying.cjs +0 -41
  419. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-satisfying.cjs.map +0 -1
  420. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-satisfying.js +0 -39
  421. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-satisfying.js.map +0 -1
  422. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-version.cjs +0 -79
  423. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-version.cjs.map +0 -1
  424. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-version.js +0 -77
  425. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/min-version.js.map +0 -1
  426. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/outside.cjs +0 -103
  427. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/outside.cjs.map +0 -1
  428. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/outside.js +0 -101
  429. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/outside.js.map +0 -1
  430. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/simplify.cjs +0 -64
  431. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/simplify.cjs.map +0 -1
  432. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/simplify.js +0 -62
  433. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/simplify.js.map +0 -1
  434. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/subset.cjs +0 -266
  435. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/subset.cjs.map +0 -1
  436. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/subset.js +0 -264
  437. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/subset.js.map +0 -1
  438. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/to-comparators.cjs +0 -24
  439. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/to-comparators.cjs.map +0 -1
  440. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/to-comparators.js +0 -22
  441. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/to-comparators.js.map +0 -1
  442. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/valid.cjs +0 -27
  443. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/valid.cjs.map +0 -1
  444. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/valid.js +0 -25
  445. package/dist/__external/.pnpm/semver@7.7.2/__external/semver/ranges/valid.js.map +0 -1
  446. package/dist/_virtual/index.cjs +0 -8
  447. package/dist/_virtual/index.cjs.map +0 -1
  448. package/dist/_virtual/index.js +0 -6
  449. package/dist/_virtual/index.js.map +0 -1
  450. package/dist/_virtual/re.cjs +0 -6
  451. package/dist/_virtual/re.cjs.map +0 -1
  452. package/dist/_virtual/re.js +0 -4
  453. package/dist/_virtual/re.js.map +0 -1
  454. package/dist/block_registry/index.d.ts.map +0 -1
  455. package/dist/block_registry/registry-v2-provider.d.ts.map +0 -1
  456. package/dist/block_registry/registry.d.ts.map +0 -1
  457. package/dist/block_registry/registry.test.d.ts +0 -2
  458. package/dist/block_registry/registry.test.d.ts.map +0 -1
  459. package/dist/block_registry/watcher.d.ts.map +0 -1
  460. package/dist/block_registry/well_known_registries.d.ts.map +0 -1
  461. package/dist/cfg_render/executor.d.ts +0 -9
  462. package/dist/cfg_render/executor.d.ts.map +0 -1
  463. package/dist/cfg_render/executor.test.d.ts +0 -2
  464. package/dist/cfg_render/executor.test.d.ts.map +0 -1
  465. package/dist/cfg_render/operation.d.ts +0 -29
  466. package/dist/cfg_render/operation.d.ts.map +0 -1
  467. package/dist/cfg_render/renderer.d.ts +0 -6
  468. package/dist/cfg_render/renderer.d.ts.map +0 -1
  469. package/dist/cfg_render/traverse.d.ts +0 -3
  470. package/dist/cfg_render/traverse.d.ts.map +0 -1
  471. package/dist/cfg_render/util.d.ts +0 -5
  472. package/dist/cfg_render/util.d.ts.map +0 -1
  473. package/dist/debug/index.d.ts +0 -9
  474. package/dist/debug/index.d.ts.map +0 -1
  475. package/dist/dev_env/index.d.ts +0 -21
  476. package/dist/dev_env/index.d.ts.map +0 -1
  477. package/dist/dev_env/util.d.ts +0 -3
  478. package/dist/dev_env/util.d.ts.map +0 -1
  479. package/dist/index.cjs.map +0 -1
  480. package/dist/index.d.ts.map +0 -1
  481. package/dist/index.js.map +0 -1
  482. package/dist/js_render/computable_context.d.ts +0 -74
  483. package/dist/js_render/computable_context.d.ts.map +0 -1
  484. package/dist/js_render/context.d.ts +0 -73
  485. package/dist/js_render/context.d.ts.map +0 -1
  486. package/dist/js_render/index.d.ts +0 -57
  487. package/dist/js_render/index.d.ts.map +0 -1
  488. package/dist/middle_layer/active_cfg.d.ts +0 -6
  489. package/dist/middle_layer/active_cfg.d.ts.map +0 -1
  490. package/dist/middle_layer/block.d.ts +0 -10
  491. package/dist/middle_layer/block.d.ts.map +0 -1
  492. package/dist/middle_layer/block_ctx.d.ts +0 -23
  493. package/dist/middle_layer/block_ctx.d.ts.map +0 -1
  494. package/dist/middle_layer/block_ctx_unsafe.d.ts +0 -16
  495. package/dist/middle_layer/block_ctx_unsafe.d.ts.map +0 -1
  496. package/dist/middle_layer/driver_kit.d.ts.map +0 -1
  497. package/dist/middle_layer/frontend_path.d.ts +0 -6
  498. package/dist/middle_layer/frontend_path.d.ts.map +0 -1
  499. package/dist/middle_layer/index.d.ts.map +0 -1
  500. package/dist/middle_layer/middle_layer.d.ts.map +0 -1
  501. package/dist/middle_layer/navigation_states.d.ts +0 -10
  502. package/dist/middle_layer/navigation_states.d.ts.map +0 -1
  503. package/dist/middle_layer/ops.d.ts.map +0 -1
  504. package/dist/middle_layer/project.d.ts.map +0 -1
  505. package/dist/middle_layer/project_list.d.ts +0 -11
  506. package/dist/middle_layer/project_list.d.ts.map +0 -1
  507. package/dist/middle_layer/project_overview.d.ts +0 -8
  508. package/dist/middle_layer/project_overview.d.ts.map +0 -1
  509. package/dist/middle_layer/project_overview_light.d.ts +0 -8
  510. package/dist/middle_layer/project_overview_light.d.ts.map +0 -1
  511. package/dist/middle_layer/render.d.ts +0 -7
  512. package/dist/middle_layer/render.d.ts.map +0 -1
  513. package/dist/middle_layer/render.test.d.ts +0 -5
  514. package/dist/middle_layer/render.test.d.ts.map +0 -1
  515. package/dist/middle_layer/types.d.ts.map +0 -1
  516. package/dist/middle_layer/util.d.ts +0 -16
  517. package/dist/middle_layer/util.d.ts.map +0 -1
  518. package/dist/model/args.d.ts +0 -14
  519. package/dist/model/args.d.ts.map +0 -1
  520. package/dist/model/block_pack.d.ts +0 -8
  521. package/dist/model/block_pack.d.ts.map +0 -1
  522. package/dist/model/block_pack_spec.d.ts.map +0 -1
  523. package/dist/model/frontend.d.ts.map +0 -1
  524. package/dist/model/index.d.ts.map +0 -1
  525. package/dist/model/project_helper.d.ts.map +0 -1
  526. package/dist/model/project_model.d.ts.map +0 -1
  527. package/dist/model/project_model.test.d.ts +0 -2
  528. package/dist/model/project_model.test.d.ts.map +0 -1
  529. package/dist/model/project_model_util.d.ts +0 -43
  530. package/dist/model/project_model_util.d.ts.map +0 -1
  531. package/dist/model/project_model_util.test.d.ts +0 -2
  532. package/dist/model/project_model_util.test.d.ts.map +0 -1
  533. package/dist/model/project_model_v1.d.ts +0 -8
  534. package/dist/model/project_model_v1.d.ts.map +0 -1
  535. package/dist/model/template_spec.d.ts.map +0 -1
  536. package/dist/mutator/block-pack/block_pack.d.ts.map +0 -1
  537. package/dist/mutator/block-pack/block_pack.test.d.ts +0 -2
  538. package/dist/mutator/block-pack/block_pack.test.d.ts.map +0 -1
  539. package/dist/mutator/block-pack/frontend.d.ts +0 -4
  540. package/dist/mutator/block-pack/frontend.d.ts.map +0 -1
  541. package/dist/mutator/context_export.d.ts +0 -9
  542. package/dist/mutator/context_export.d.ts.map +0 -1
  543. package/dist/mutator/migration.d.ts +0 -9
  544. package/dist/mutator/migration.d.ts.map +0 -1
  545. package/dist/mutator/project-v3.test.d.ts +0 -2
  546. package/dist/mutator/project-v3.test.d.ts.map +0 -1
  547. package/dist/mutator/project.d.ts +0 -211
  548. package/dist/mutator/project.d.ts.map +0 -1
  549. package/dist/mutator/project.test.d.ts +0 -2
  550. package/dist/mutator/project.test.d.ts.map +0 -1
  551. package/dist/mutator/template/direct_template_loader.d.ts +0 -5
  552. package/dist/mutator/template/direct_template_loader.d.ts.map +0 -1
  553. package/dist/mutator/template/direct_template_loader_v3.d.ts +0 -15
  554. package/dist/mutator/template/direct_template_loader_v3.d.ts.map +0 -1
  555. package/dist/mutator/template/render_block.d.ts +0 -32
  556. package/dist/mutator/template/render_block.d.ts.map +0 -1
  557. package/dist/mutator/template/render_template.d.ts.map +0 -1
  558. package/dist/mutator/template/template_loading.d.ts.map +0 -1
  559. package/dist/mutator/template/template_render.test.d.ts +0 -2
  560. package/dist/mutator/template/template_render.test.d.ts.map +0 -1
  561. package/dist/network_check/network_check.d.ts.map +0 -1
  562. package/dist/network_check/network_check.test.d.ts +0 -2
  563. package/dist/network_check/network_check.test.d.ts.map +0 -1
  564. package/dist/network_check/pings.d.ts +0 -32
  565. package/dist/network_check/pings.d.ts.map +0 -1
  566. package/dist/network_check/template.d.ts +0 -57
  567. package/dist/network_check/template.d.ts.map +0 -1
  568. package/dist/network_check/template.test.d.ts +0 -2
  569. package/dist/network_check/template.test.d.ts.map +0 -1
  570. package/dist/network_check/test_utils.d.ts +0 -6
  571. package/dist/network_check/test_utils.d.ts.map +0 -1
  572. package/dist/pool/data.d.ts.map +0 -1
  573. package/dist/pool/driver.d.ts.map +0 -1
  574. package/dist/pool/index.d.ts.map +0 -1
  575. package/dist/pool/p_object_collection.d.ts.map +0 -1
  576. package/dist/pool/result_pool.d.ts.map +0 -1
  577. package/dist/test/block_packs.d.ts +0 -6
  578. package/dist/test/block_packs.d.ts.map +0 -1
  579. package/dist/test/explicit_templates.d.ts +0 -3
  580. package/dist/test/explicit_templates.d.ts.map +0 -1
  581. package/dist/test/known_templates.d.ts +0 -6
  582. package/dist/test/known_templates.d.ts.map +0 -1
  583. package/dist/test_env.d.ts +0 -6
  584. package/dist/test_env.d.ts.map +0 -1
  585. package/dist/worker/WorkerManager.d.ts +0 -12
  586. package/dist/worker/WorkerManager.d.ts.map +0 -1
  587. package/dist/worker/worker.d.ts.map +0 -1
  588. package/dist/worker/workerApi.d.ts +0 -15
  589. package/dist/worker/workerApi.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"context_export.cjs","sources":["../../src/mutator/context_export.ts"],"sourcesContent":["import type { AnyRef, PlTransaction } from \"@milaboratories/pl-client\";\nimport { createRenderTemplate } from \"./template/render_template\";\nimport { prepareTemplateSpec } from \"./template/template_loading\";\nimport type { TemplateSpecPrepared } from \"../model/template_spec\";\nimport { createHash } from \"node:crypto\";\n\n// Workaround to prevent bundling of @platforma-sdk/workflow-tengo\n// if bundling happens import.meta.dirname will be transfered as is without transferring corresponding assets\n// Construct like new URL(…, import.meta.url) also does not work properly.\n// const require = createRequire(import.meta.url);\n// const SdkTemplates = require('@platforma-sdk/workflow-tengo').Templates;\n\nimport { Templates as SdkTemplates } from \"@platforma-sdk/workflow-tengo\";\n\nexport type TemplateEnvelop = { spec: TemplateSpecPrepared; hash: string };\n\nlet preparedTemplateEnvelop: TemplateEnvelop | undefined;\n\nexport async function getPreparedExportTemplateEnvelope(): Promise<TemplateEnvelop> {\n if (preparedTemplateEnvelop === undefined) {\n // (await import('@platforma-sdk/workflow-tengo')).Templates['pframes.export-pframe']\n const preparedTemplate = await prepareTemplateSpec(\n SdkTemplates[\"pframes.export-pframe-for-ui\"],\n );\n if (preparedTemplate.type !== \"explicit\") throw new Error(\"Unexpected prepared template type.\");\n const hash = createHash(\"sha256\").update(preparedTemplate.content).digest(\"hex\");\n preparedTemplateEnvelop = { spec: preparedTemplate, hash };\n }\n\n return preparedTemplateEnvelop;\n}\n\nexport function exportContext(tx: PlTransaction, exportTpl: AnyRef, ctx: AnyRef) {\n return createRenderTemplate(tx, exportTpl, true, { pf: ctx }, [\"result\"]).result;\n}\n"],"names":["prepareTemplateSpec","SdkTemplates","createHash","createRenderTemplate"],"mappings":";;;;;;;AAgBA,IAAI,uBAAoD;AAEjD,eAAe,iCAAiC,GAAA;AACrD,IAAA,IAAI,uBAAuB,KAAK,SAAS,EAAE;;QAEzC,MAAM,gBAAgB,GAAG,MAAMA,oCAAmB,CAChDC,uBAAY,CAAC,8BAA8B,CAAC,CAC7C;AACD,QAAA,IAAI,gBAAgB,CAAC,IAAI,KAAK,UAAU;AAAE,YAAA,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC;AAC/F,QAAA,MAAM,IAAI,GAAGC,sBAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QAChF,uBAAuB,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE;IAC5D;AAEA,IAAA,OAAO,uBAAuB;AAChC;SAEgB,aAAa,CAAC,EAAiB,EAAE,SAAiB,EAAE,GAAW,EAAA;IAC7E,OAAOC,oCAAoB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;AAClF;;;;;"}
1
+ {"version":3,"file":"context_export.cjs","names":["prepareTemplateSpec","SdkTemplates","createRenderTemplate"],"sources":["../../src/mutator/context_export.ts"],"sourcesContent":["import type { AnyRef, PlTransaction } from \"@milaboratories/pl-client\";\nimport { createRenderTemplate } from \"./template/render_template\";\nimport { prepareTemplateSpec } from \"./template/template_loading\";\nimport type { TemplateSpecPrepared } from \"../model/template_spec\";\nimport { createHash } from \"node:crypto\";\n\n// Workaround to prevent bundling of @platforma-sdk/workflow-tengo\n// if bundling happens import.meta.dirname will be transfered as is without transferring corresponding assets\n// Construct like new URL(…, import.meta.url) also does not work properly.\n// const require = createRequire(import.meta.url);\n// const SdkTemplates = require('@platforma-sdk/workflow-tengo').Templates;\n\nimport { Templates as SdkTemplates } from \"@platforma-sdk/workflow-tengo\";\n\nexport type TemplateEnvelop = { spec: TemplateSpecPrepared; hash: string };\n\nlet preparedTemplateEnvelop: TemplateEnvelop | undefined;\n\nexport async function getPreparedExportTemplateEnvelope(): Promise<TemplateEnvelop> {\n if (preparedTemplateEnvelop === undefined) {\n // (await import('@platforma-sdk/workflow-tengo')).Templates['pframes.export-pframe']\n const preparedTemplate = await prepareTemplateSpec(\n SdkTemplates[\"pframes.export-pframe-for-ui\"],\n );\n if (preparedTemplate.type !== \"explicit\") throw new Error(\"Unexpected prepared template type.\");\n const hash = createHash(\"sha256\").update(preparedTemplate.content).digest(\"hex\");\n preparedTemplateEnvelop = { spec: preparedTemplate, hash };\n }\n\n return preparedTemplateEnvelop;\n}\n\nexport function exportContext(tx: PlTransaction, exportTpl: AnyRef, ctx: AnyRef) {\n return createRenderTemplate(tx, exportTpl, true, { pf: ctx }, [\"result\"]).result;\n}\n"],"mappings":";;;;;;;AAgBA,IAAI;AAEJ,eAAsB,oCAA8D;AAClF,KAAI,4BAA4B,QAAW;EAEzC,MAAM,mBAAmB,MAAMA,6CAC7BC,wCAAa,gCACd;AACD,MAAI,iBAAiB,SAAS,WAAY,OAAM,IAAI,MAAM,qCAAqC;AAE/F,4BAA0B;GAAE,MAAM;GAAkB,kCAD5B,SAAS,CAAC,OAAO,iBAAiB,QAAQ,CAAC,OAAO,MAAM;GACtB;;AAG5D,QAAO;;AAGT,SAAgB,cAAc,IAAmB,WAAmB,KAAa;AAC/E,QAAOC,6CAAqB,IAAI,WAAW,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC"}
@@ -1,23 +1,25 @@
1
- import { createRenderTemplate } from './template/render_template.js';
2
- import { prepareTemplateSpec } from './template/template_loading.js';
3
- import { createHash } from 'node:crypto';
4
- import { Templates } from '@platforma-sdk/workflow-tengo';
1
+ import { createRenderTemplate } from "./template/render_template.js";
2
+ import { prepareTemplateSpec } from "./template/template_loading.js";
3
+ import { createHash } from "node:crypto";
4
+ import { Templates } from "@platforma-sdk/workflow-tengo";
5
5
 
6
+ //#region src/mutator/context_export.ts
6
7
  let preparedTemplateEnvelop;
7
8
  async function getPreparedExportTemplateEnvelope() {
8
- if (preparedTemplateEnvelop === undefined) {
9
- // (await import('@platforma-sdk/workflow-tengo')).Templates['pframes.export-pframe']
10
- const preparedTemplate = await prepareTemplateSpec(Templates["pframes.export-pframe-for-ui"]);
11
- if (preparedTemplate.type !== "explicit")
12
- throw new Error("Unexpected prepared template type.");
13
- const hash = createHash("sha256").update(preparedTemplate.content).digest("hex");
14
- preparedTemplateEnvelop = { spec: preparedTemplate, hash };
15
- }
16
- return preparedTemplateEnvelop;
9
+ if (preparedTemplateEnvelop === void 0) {
10
+ const preparedTemplate = await prepareTemplateSpec(Templates["pframes.export-pframe-for-ui"]);
11
+ if (preparedTemplate.type !== "explicit") throw new Error("Unexpected prepared template type.");
12
+ preparedTemplateEnvelop = {
13
+ spec: preparedTemplate,
14
+ hash: createHash("sha256").update(preparedTemplate.content).digest("hex")
15
+ };
16
+ }
17
+ return preparedTemplateEnvelop;
17
18
  }
18
19
  function exportContext(tx, exportTpl, ctx) {
19
- return createRenderTemplate(tx, exportTpl, true, { pf: ctx }, ["result"]).result;
20
+ return createRenderTemplate(tx, exportTpl, true, { pf: ctx }, ["result"]).result;
20
21
  }
21
22
 
23
+ //#endregion
22
24
  export { exportContext, getPreparedExportTemplateEnvelope };
23
- //# sourceMappingURL=context_export.js.map
25
+ //# sourceMappingURL=context_export.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context_export.js","sources":["../../src/mutator/context_export.ts"],"sourcesContent":["import type { AnyRef, PlTransaction } from \"@milaboratories/pl-client\";\nimport { createRenderTemplate } from \"./template/render_template\";\nimport { prepareTemplateSpec } from \"./template/template_loading\";\nimport type { TemplateSpecPrepared } from \"../model/template_spec\";\nimport { createHash } from \"node:crypto\";\n\n// Workaround to prevent bundling of @platforma-sdk/workflow-tengo\n// if bundling happens import.meta.dirname will be transfered as is without transferring corresponding assets\n// Construct like new URL(…, import.meta.url) also does not work properly.\n// const require = createRequire(import.meta.url);\n// const SdkTemplates = require('@platforma-sdk/workflow-tengo').Templates;\n\nimport { Templates as SdkTemplates } from \"@platforma-sdk/workflow-tengo\";\n\nexport type TemplateEnvelop = { spec: TemplateSpecPrepared; hash: string };\n\nlet preparedTemplateEnvelop: TemplateEnvelop | undefined;\n\nexport async function getPreparedExportTemplateEnvelope(): Promise<TemplateEnvelop> {\n if (preparedTemplateEnvelop === undefined) {\n // (await import('@platforma-sdk/workflow-tengo')).Templates['pframes.export-pframe']\n const preparedTemplate = await prepareTemplateSpec(\n SdkTemplates[\"pframes.export-pframe-for-ui\"],\n );\n if (preparedTemplate.type !== \"explicit\") throw new Error(\"Unexpected prepared template type.\");\n const hash = createHash(\"sha256\").update(preparedTemplate.content).digest(\"hex\");\n preparedTemplateEnvelop = { spec: preparedTemplate, hash };\n }\n\n return preparedTemplateEnvelop;\n}\n\nexport function exportContext(tx: PlTransaction, exportTpl: AnyRef, ctx: AnyRef) {\n return createRenderTemplate(tx, exportTpl, true, { pf: ctx }, [\"result\"]).result;\n}\n"],"names":["SdkTemplates"],"mappings":";;;;;AAgBA,IAAI,uBAAoD;AAEjD,eAAe,iCAAiC,GAAA;AACrD,IAAA,IAAI,uBAAuB,KAAK,SAAS,EAAE;;QAEzC,MAAM,gBAAgB,GAAG,MAAM,mBAAmB,CAChDA,SAAY,CAAC,8BAA8B,CAAC,CAC7C;AACD,QAAA,IAAI,gBAAgB,CAAC,IAAI,KAAK,UAAU;AAAE,YAAA,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC;AAC/F,QAAA,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QAChF,uBAAuB,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE;IAC5D;AAEA,IAAA,OAAO,uBAAuB;AAChC;SAEgB,aAAa,CAAC,EAAiB,EAAE,SAAiB,EAAE,GAAW,EAAA;IAC7E,OAAO,oBAAoB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;AAClF;;;;"}
1
+ {"version":3,"file":"context_export.js","names":["SdkTemplates"],"sources":["../../src/mutator/context_export.ts"],"sourcesContent":["import type { AnyRef, PlTransaction } from \"@milaboratories/pl-client\";\nimport { createRenderTemplate } from \"./template/render_template\";\nimport { prepareTemplateSpec } from \"./template/template_loading\";\nimport type { TemplateSpecPrepared } from \"../model/template_spec\";\nimport { createHash } from \"node:crypto\";\n\n// Workaround to prevent bundling of @platforma-sdk/workflow-tengo\n// if bundling happens import.meta.dirname will be transfered as is without transferring corresponding assets\n// Construct like new URL(…, import.meta.url) also does not work properly.\n// const require = createRequire(import.meta.url);\n// const SdkTemplates = require('@platforma-sdk/workflow-tengo').Templates;\n\nimport { Templates as SdkTemplates } from \"@platforma-sdk/workflow-tengo\";\n\nexport type TemplateEnvelop = { spec: TemplateSpecPrepared; hash: string };\n\nlet preparedTemplateEnvelop: TemplateEnvelop | undefined;\n\nexport async function getPreparedExportTemplateEnvelope(): Promise<TemplateEnvelop> {\n if (preparedTemplateEnvelop === undefined) {\n // (await import('@platforma-sdk/workflow-tengo')).Templates['pframes.export-pframe']\n const preparedTemplate = await prepareTemplateSpec(\n SdkTemplates[\"pframes.export-pframe-for-ui\"],\n );\n if (preparedTemplate.type !== \"explicit\") throw new Error(\"Unexpected prepared template type.\");\n const hash = createHash(\"sha256\").update(preparedTemplate.content).digest(\"hex\");\n preparedTemplateEnvelop = { spec: preparedTemplate, hash };\n }\n\n return preparedTemplateEnvelop;\n}\n\nexport function exportContext(tx: PlTransaction, exportTpl: AnyRef, ctx: AnyRef) {\n return createRenderTemplate(tx, exportTpl, true, { pf: ctx }, [\"result\"]).result;\n}\n"],"mappings":";;;;;;AAgBA,IAAI;AAEJ,eAAsB,oCAA8D;AAClF,KAAI,4BAA4B,QAAW;EAEzC,MAAM,mBAAmB,MAAM,oBAC7BA,UAAa,gCACd;AACD,MAAI,iBAAiB,SAAS,WAAY,OAAM,IAAI,MAAM,qCAAqC;AAE/F,4BAA0B;GAAE,MAAM;GAAkB,MADvC,WAAW,SAAS,CAAC,OAAO,iBAAiB,QAAQ,CAAC,OAAO,MAAM;GACtB;;AAG5D,QAAO;;AAGT,SAAgB,cAAc,IAAmB,WAAmB,KAAa;AAC/E,QAAO,qBAAqB,IAAI,WAAW,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC"}
@@ -1,124 +1,98 @@
1
- 'use strict';
2
-
3
- var project_model = require('../model/project_model.cjs');
4
- var project_model_v1 = require('../model/project_model_v1.cjs');
5
- var plClient = require('@milaboratories/pl-client');
6
- var tsHelpers = require('@milaboratories/ts-helpers');
7
- var project_model_util = require('../model/project_model_util.cjs');
1
+ const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
2
+ const require_project_model = require('../model/project_model.cjs');
3
+ const require_project_model_util = require('../model/project_model_util.cjs');
4
+ const require_project_model_v1 = require('../model/project_model_v1.cjs');
5
+ let _milaboratories_ts_helpers = require("@milaboratories/ts-helpers");
6
+ let _milaboratories_pl_client = require("@milaboratories/pl-client");
8
7
 
8
+ //#region src/mutator/migration.ts
9
9
  /**
10
- * Migrates the project to the latest schema version.
11
- *
12
- * @param pl - The client to use.
13
- * @param rid - The resource id of the project.
14
- */
10
+ * Migrates the project to the latest schema version.
11
+ *
12
+ * @param pl - The client to use.
13
+ * @param rid - The resource id of the project.
14
+ */
15
15
  async function applyProjectMigrations(pl, rid) {
16
- await pl.withWriteTx("ProjectMigration", async (tx) => {
17
- let schemaVersion = await tx.getKValueJson(rid, project_model.SchemaVersionKey);
18
- if (schemaVersion === project_model.SchemaVersionCurrent)
19
- return;
20
- // Apply migrations in sequence
21
- if (schemaVersion === project_model_v1.SchemaVersionV1) {
22
- await migrateV1ToV2(tx, rid);
23
- schemaVersion = project_model.SchemaVersionV2;
24
- }
25
- if (schemaVersion === project_model.SchemaVersionV2) {
26
- await migrateV2ToV3(tx, rid);
27
- }
28
- else if (schemaVersion !== project_model_v1.SchemaVersionV1) {
29
- // If we got here and it's not v1 (which was handled above), it's unknown
30
- throw new Error(`Unknown project schema version: ${schemaVersion}`);
31
- }
32
- tx.setKValue(rid, project_model.SchemaVersionKey, JSON.stringify(project_model.SchemaVersionCurrent));
33
- await tx.commit();
34
- });
16
+ await pl.withWriteTx("ProjectMigration", async (tx) => {
17
+ let schemaVersion = await tx.getKValueJson(rid, require_project_model.SchemaVersionKey);
18
+ if (schemaVersion === require_project_model.SchemaVersionCurrent) return;
19
+ if (schemaVersion === require_project_model_v1.SchemaVersionV1) {
20
+ await migrateV1ToV2(tx, rid);
21
+ schemaVersion = require_project_model.SchemaVersionV2;
22
+ }
23
+ if (schemaVersion === require_project_model.SchemaVersionV2) await migrateV2ToV3(tx, rid);
24
+ else if (schemaVersion !== require_project_model_v1.SchemaVersionV1) throw new Error(`Unknown project schema version: ${schemaVersion}`);
25
+ tx.setKValue(rid, require_project_model.SchemaVersionKey, JSON.stringify(require_project_model.SchemaVersionCurrent));
26
+ await tx.commit();
27
+ });
35
28
  }
36
29
  /**
37
- * Migrates the project from schema version 1 to 2.
38
- *
39
- * Summary of changes:
40
- * - uiState is now stored in a field instead of a KV
41
- *
42
- * @param tx - The transaction to use.
43
- * @param rid - The resource id of the project.
44
- */
30
+ * Migrates the project from schema version 1 to 2.
31
+ *
32
+ * Summary of changes:
33
+ * - uiState is now stored in a field instead of a KV
34
+ *
35
+ * @param tx - The transaction to use.
36
+ * @param rid - The resource id of the project.
37
+ */
45
38
  async function migrateV1ToV2(tx, rid) {
46
- const [structure, allKV] = await Promise.all([
47
- tx.getKValueJson(rid, project_model.ProjectStructureKey),
48
- tx.listKeyValues(rid),
49
- ]);
50
- const kvMap = new Map(allKV.map((kv) => [kv.key, kv.value]));
51
- for (const block of project_model_util.allBlocks(structure)) {
52
- const kvKey = project_model_v1.BlockFrontendStateKeyPrefixV1 + block.id;
53
- const uiState = kvMap.get(kvKey);
54
- const valueJson = uiState ? tsHelpers.cachedDeserialize(uiState) : {};
55
- const uiStateR = tx.createJsonGzValue(valueJson);
56
- const uiStateF = plClient.field(rid, project_model.projectFieldName(block.id, "blockStorage"));
57
- tx.createField(uiStateF, "Dynamic", uiStateR);
58
- tx.deleteKValue(rid, kvKey);
59
- }
39
+ const [structure, allKV] = await Promise.all([tx.getKValueJson(rid, require_project_model.ProjectStructureKey), tx.listKeyValues(rid)]);
40
+ const kvMap = new Map(allKV.map((kv) => [kv.key, kv.value]));
41
+ for (const block of require_project_model_util.allBlocks(structure)) {
42
+ const kvKey = require_project_model_v1.BlockFrontendStateKeyPrefixV1 + block.id;
43
+ const uiState = kvMap.get(kvKey);
44
+ const valueJson = uiState ? (0, _milaboratories_ts_helpers.cachedDeserialize)(uiState) : {};
45
+ const uiStateR = tx.createJsonGzValue(valueJson);
46
+ const uiStateF = (0, _milaboratories_pl_client.field)(rid, require_project_model.projectFieldName(block.id, "blockStorage"));
47
+ tx.createField(uiStateF, "Dynamic", uiStateR);
48
+ tx.deleteKValue(rid, kvKey);
49
+ }
60
50
  }
61
51
  /**
62
- * Migrates the project from schema version 2 to 3.
63
- *
64
- * Summary of changes:
65
- * - Introduces unified 'blockStorage' field containing { args, uiState }
66
- * - Adds 'currentPrerunArgs' field for staging/prerun rendering
67
- * - For each block:
68
- * 1. Read existing 'blockStorage' field (contains uiState in v2)
69
- * 2. Read existing 'currentArgs' field (contains args)
70
- * 3. Create unified state = { args: currentArgs, uiState: oldState }
71
- * 4. Write to new {blockId}-blockStorage field (overwrites)
72
- * 5. Initialize {blockId}-currentPrerunArgs (same as prodArgs for v1/v2 blocks)
73
- * - Note: currentArgs and prodArgs fields remain for compatibility layer
74
- *
75
- * @param tx - The transaction to use.
76
- * @param rid - The resource id of the project.
77
- */
52
+ * Migrates the project from schema version 2 to 3.
53
+ *
54
+ * Summary of changes:
55
+ * - Introduces unified 'blockStorage' field containing { args, uiState }
56
+ * - Adds 'currentPrerunArgs' field for staging/prerun rendering
57
+ * - For each block:
58
+ * 1. Read existing 'blockStorage' field (contains uiState in v2)
59
+ * 2. Read existing 'currentArgs' field (contains args)
60
+ * 3. Create unified state = { args: currentArgs, uiState: oldState }
61
+ * 4. Write to new {blockId}-blockStorage field (overwrites)
62
+ * 5. Initialize {blockId}-currentPrerunArgs (same as prodArgs for v1/v2 blocks)
63
+ * - Note: currentArgs and prodArgs fields remain for compatibility layer
64
+ *
65
+ * @param tx - The transaction to use.
66
+ * @param rid - The resource id of the project.
67
+ */
78
68
  async function migrateV2ToV3(tx, rid) {
79
- const [structure, fullResourceState] = await Promise.all([
80
- tx.getKValueJson(rid, project_model.ProjectStructureKey),
81
- tx.getResourceData(rid, true),
82
- ]);
83
- // Build a map of field name -> resource id for quick lookup
84
- const fieldMap = new Map();
85
- for (const f of fullResourceState.fields) {
86
- if (!plClient.isNullResourceId(f.value)) {
87
- fieldMap.set(f.name, f.value);
88
- }
89
- }
90
- for (const block of project_model_util.allBlocks(structure)) {
91
- // Read existing field values
92
- const uiStateFieldName = project_model.projectFieldName(block.id, "uiState");
93
- const currentArgsFieldName = project_model.projectFieldName(block.id, "currentArgs");
94
- const uiStateRid = fieldMap.get(uiStateFieldName);
95
- const currentArgsRid = fieldMap.get(currentArgsFieldName);
96
- // Read field data in parallel where available
97
- const [uiStateData, currentArgsData] = await Promise.all([
98
- uiStateRid ? tx.getResourceData(uiStateRid, false) : Promise.resolve(undefined),
99
- currentArgsRid ? tx.getResourceData(currentArgsRid, false) : Promise.resolve(undefined),
100
- ]);
101
- // Extract values - in v2, 'blockStorage' contains raw uiState, not wrapped
102
- const uiState = uiStateData?.data ? tsHelpers.cachedDeserialize(uiStateData.data) : {};
103
- const args = currentArgsData?.data ? tsHelpers.cachedDeserialize(currentArgsData.data) : {};
104
- // Create unified state: { args, uiState }
105
- const unifiedState = {
106
- args,
107
- uiState,
108
- };
109
- const blockStorageFieldName = project_model.projectFieldName(block.id, "blockStorage");
110
- // Write new unified blockStorage field (overwrite existing)
111
- const stateR = tx.createJsonGzValue(unifiedState);
112
- const stateF = plClient.field(rid, blockStorageFieldName);
113
- tx.createField(stateF, "Dynamic", stateR);
114
- // Initialize currentPrerunArgs from currentArgs (for legacy blocks, prerunArgs = args)
115
- if (currentArgsRid) {
116
- const prerunArgsR = tx.createJsonGzValue(args);
117
- const prerunArgsF = plClient.field(rid, project_model.projectFieldName(block.id, "currentPrerunArgs"));
118
- tx.createField(prerunArgsF, "Dynamic", prerunArgsR);
119
- }
120
- }
69
+ const [structure, fullResourceState] = await Promise.all([tx.getKValueJson(rid, require_project_model.ProjectStructureKey), tx.getResourceData(rid, true)]);
70
+ const fieldMap = /* @__PURE__ */ new Map();
71
+ for (const f of fullResourceState.fields) if (!(0, _milaboratories_pl_client.isNullResourceId)(f.value)) fieldMap.set(f.name, f.value);
72
+ for (const block of require_project_model_util.allBlocks(structure)) {
73
+ const uiStateFieldName = require_project_model.projectFieldName(block.id, "uiState");
74
+ const currentArgsFieldName = require_project_model.projectFieldName(block.id, "currentArgs");
75
+ const uiStateRid = fieldMap.get(uiStateFieldName);
76
+ const currentArgsRid = fieldMap.get(currentArgsFieldName);
77
+ const [uiStateData, currentArgsData] = await Promise.all([uiStateRid ? tx.getResourceData(uiStateRid, false) : Promise.resolve(void 0), currentArgsRid ? tx.getResourceData(currentArgsRid, false) : Promise.resolve(void 0)]);
78
+ const uiState = uiStateData?.data ? (0, _milaboratories_ts_helpers.cachedDeserialize)(uiStateData.data) : {};
79
+ const args = currentArgsData?.data ? (0, _milaboratories_ts_helpers.cachedDeserialize)(currentArgsData.data) : {};
80
+ const unifiedState = {
81
+ args,
82
+ uiState
83
+ };
84
+ const blockStorageFieldName = require_project_model.projectFieldName(block.id, "blockStorage");
85
+ const stateR = tx.createJsonGzValue(unifiedState);
86
+ const stateF = (0, _milaboratories_pl_client.field)(rid, blockStorageFieldName);
87
+ tx.createField(stateF, "Dynamic", stateR);
88
+ if (currentArgsRid) {
89
+ const prerunArgsR = tx.createJsonGzValue(args);
90
+ const prerunArgsF = (0, _milaboratories_pl_client.field)(rid, require_project_model.projectFieldName(block.id, "currentPrerunArgs"));
91
+ tx.createField(prerunArgsF, "Dynamic", prerunArgsR);
92
+ }
93
+ }
121
94
  }
122
95
 
96
+ //#endregion
123
97
  exports.applyProjectMigrations = applyProjectMigrations;
124
- //# sourceMappingURL=migration.cjs.map
98
+ //# sourceMappingURL=migration.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"migration.cjs","sources":["../../src/mutator/migration.ts"],"sourcesContent":["import type { PlClient, PlTransaction, ResourceId } from \"@milaboratories/pl-client\";\nimport type { ProjectField, ProjectStructure } from \"../model/project_model\";\nimport {\n projectFieldName,\n ProjectStructureKey,\n SchemaVersionCurrent,\n SchemaVersionKey,\n SchemaVersionV2,\n} from \"../model/project_model\";\nimport { BlockFrontendStateKeyPrefixV1, SchemaVersionV1 } from \"../model/project_model_v1\";\nimport { field, isNullResourceId } from \"@milaboratories/pl-client\";\nimport { cachedDeserialize } from \"@milaboratories/ts-helpers\";\nimport { allBlocks } from \"../model/project_model_util\";\n\n/**\n * Migrates the project to the latest schema version.\n *\n * @param pl - The client to use.\n * @param rid - The resource id of the project.\n */\nexport async function applyProjectMigrations(pl: PlClient, rid: ResourceId) {\n await pl.withWriteTx(\"ProjectMigration\", async (tx) => {\n let schemaVersion = await tx.getKValueJson<string>(rid, SchemaVersionKey);\n if (schemaVersion === SchemaVersionCurrent) return;\n\n // Apply migrations in sequence\n if (schemaVersion === SchemaVersionV1) {\n await migrateV1ToV2(tx, rid);\n schemaVersion = SchemaVersionV2;\n }\n\n if (schemaVersion === SchemaVersionV2) {\n await migrateV2ToV3(tx, rid);\n } else if (schemaVersion !== SchemaVersionV1) {\n // If we got here and it's not v1 (which was handled above), it's unknown\n throw new Error(`Unknown project schema version: ${schemaVersion}`);\n }\n\n tx.setKValue(rid, SchemaVersionKey, JSON.stringify(SchemaVersionCurrent));\n await tx.commit();\n });\n}\n\n/**\n * Migrates the project from schema version 1 to 2.\n *\n * Summary of changes:\n * - uiState is now stored in a field instead of a KV\n *\n * @param tx - The transaction to use.\n * @param rid - The resource id of the project.\n */\nasync function migrateV1ToV2(tx: PlTransaction, rid: ResourceId) {\n const [structure, allKV] = await Promise.all([\n tx.getKValueJson<ProjectStructure>(rid, ProjectStructureKey),\n tx.listKeyValues(rid),\n ]);\n const kvMap = new Map<string, Uint8Array>(allKV.map((kv) => [kv.key, kv.value]));\n for (const block of allBlocks(structure)) {\n const kvKey = BlockFrontendStateKeyPrefixV1 + block.id;\n const uiState = kvMap.get(kvKey);\n const valueJson = uiState ? cachedDeserialize(uiState) : {};\n const uiStateR = tx.createJsonGzValue(valueJson);\n const uiStateF = field(rid, projectFieldName(block.id, \"blockStorage\"));\n tx.createField(uiStateF, \"Dynamic\", uiStateR);\n tx.deleteKValue(rid, kvKey);\n }\n}\n\n/**\n * Migrates the project from schema version 2 to 3.\n *\n * Summary of changes:\n * - Introduces unified 'blockStorage' field containing { args, uiState }\n * - Adds 'currentPrerunArgs' field for staging/prerun rendering\n * - For each block:\n * 1. Read existing 'blockStorage' field (contains uiState in v2)\n * 2. Read existing 'currentArgs' field (contains args)\n * 3. Create unified state = { args: currentArgs, uiState: oldState }\n * 4. Write to new {blockId}-blockStorage field (overwrites)\n * 5. Initialize {blockId}-currentPrerunArgs (same as prodArgs for v1/v2 blocks)\n * - Note: currentArgs and prodArgs fields remain for compatibility layer\n *\n * @param tx - The transaction to use.\n * @param rid - The resource id of the project.\n */\nasync function migrateV2ToV3(tx: PlTransaction, rid: ResourceId) {\n const [structure, fullResourceState] = await Promise.all([\n tx.getKValueJson<ProjectStructure>(rid, ProjectStructureKey),\n tx.getResourceData(rid, true),\n ]);\n\n // Build a map of field name -> resource id for quick lookup\n const fieldMap = new Map<string, ResourceId>();\n for (const f of fullResourceState.fields) {\n if (!isNullResourceId(f.value)) {\n fieldMap.set(f.name, f.value);\n }\n }\n\n for (const block of allBlocks(structure)) {\n // Read existing field values\n const uiStateFieldName = projectFieldName(block.id, \"uiState\" as ProjectField[\"fieldName\"]);\n const currentArgsFieldName = projectFieldName(block.id, \"currentArgs\");\n\n const uiStateRid = fieldMap.get(uiStateFieldName);\n const currentArgsRid = fieldMap.get(currentArgsFieldName);\n\n // Read field data in parallel where available\n const [uiStateData, currentArgsData] = await Promise.all([\n uiStateRid ? tx.getResourceData(uiStateRid, false) : Promise.resolve(undefined),\n currentArgsRid ? tx.getResourceData(currentArgsRid, false) : Promise.resolve(undefined),\n ]);\n\n // Extract values - in v2, 'blockStorage' contains raw uiState, not wrapped\n const uiState = uiStateData?.data ? cachedDeserialize(uiStateData.data) : {};\n const args = currentArgsData?.data ? cachedDeserialize(currentArgsData.data) : {};\n\n // Create unified state: { args, uiState }\n const unifiedState = {\n args,\n uiState,\n };\n\n const blockStorageFieldName = projectFieldName(block.id, \"blockStorage\");\n\n // Write new unified blockStorage field (overwrite existing)\n const stateR = tx.createJsonGzValue(unifiedState);\n const stateF = field(rid, blockStorageFieldName);\n tx.createField(stateF, \"Dynamic\", stateR);\n\n // Initialize currentPrerunArgs from currentArgs (for legacy blocks, prerunArgs = args)\n if (currentArgsRid) {\n const prerunArgsR = tx.createJsonGzValue(args);\n const prerunArgsF = field(rid, projectFieldName(block.id, \"currentPrerunArgs\"));\n tx.createField(prerunArgsF, \"Dynamic\", prerunArgsR);\n }\n }\n}\n"],"names":["SchemaVersionKey","SchemaVersionCurrent","SchemaVersionV1","SchemaVersionV2","ProjectStructureKey","allBlocks","BlockFrontendStateKeyPrefixV1","cachedDeserialize","field","projectFieldName","isNullResourceId"],"mappings":";;;;;;;;AAcA;;;;;AAKG;AACI,eAAe,sBAAsB,CAAC,EAAY,EAAE,GAAe,EAAA;IACxE,MAAM,EAAE,CAAC,WAAW,CAAC,kBAAkB,EAAE,OAAO,EAAE,KAAI;QACpD,IAAI,aAAa,GAAG,MAAM,EAAE,CAAC,aAAa,CAAS,GAAG,EAAEA,8BAAgB,CAAC;QACzE,IAAI,aAAa,KAAKC,kCAAoB;YAAE;;AAG5C,QAAA,IAAI,aAAa,KAAKC,gCAAe,EAAE;AACrC,YAAA,MAAM,aAAa,CAAC,EAAE,EAAE,GAAG,CAAC;YAC5B,aAAa,GAAGC,6BAAe;QACjC;AAEA,QAAA,IAAI,aAAa,KAAKA,6BAAe,EAAE;AACrC,YAAA,MAAM,aAAa,CAAC,EAAE,EAAE,GAAG,CAAC;QAC9B;AAAO,aAAA,IAAI,aAAa,KAAKD,gCAAe,EAAE;;AAE5C,YAAA,MAAM,IAAI,KAAK,CAAC,mCAAmC,aAAa,CAAA,CAAE,CAAC;QACrE;AAEA,QAAA,EAAE,CAAC,SAAS,CAAC,GAAG,EAAEF,8BAAgB,EAAE,IAAI,CAAC,SAAS,CAACC,kCAAoB,CAAC,CAAC;AACzE,QAAA,MAAM,EAAE,CAAC,MAAM,EAAE;AACnB,IAAA,CAAC,CAAC;AACJ;AAEA;;;;;;;;AAQG;AACH,eAAe,aAAa,CAAC,EAAiB,EAAE,GAAe,EAAA;IAC7D,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;AAC3C,QAAA,EAAE,CAAC,aAAa,CAAmB,GAAG,EAAEG,iCAAmB,CAAC;AAC5D,QAAA,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC;AACtB,KAAA,CAAC;IACF,MAAM,KAAK,GAAG,IAAI,GAAG,CAAqB,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAChF,KAAK,MAAM,KAAK,IAAIC,4BAAS,CAAC,SAAS,CAAC,EAAE;AACxC,QAAA,MAAM,KAAK,GAAGC,8CAA6B,GAAG,KAAK,CAAC,EAAE;QACtD,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;AAChC,QAAA,MAAM,SAAS,GAAG,OAAO,GAAGC,2BAAiB,CAAC,OAAO,CAAC,GAAG,EAAE;QAC3D,MAAM,QAAQ,GAAG,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;AAChD,QAAA,MAAM,QAAQ,GAAGC,cAAK,CAAC,GAAG,EAAEC,8BAAgB,CAAC,KAAK,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;QACvE,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC;AAC7C,QAAA,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC;IAC7B;AACF;AAEA;;;;;;;;;;;;;;;;AAgBG;AACH,eAAe,aAAa,CAAC,EAAiB,EAAE,GAAe,EAAA;IAC7D,MAAM,CAAC,SAAS,EAAE,iBAAiB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;AACvD,QAAA,EAAE,CAAC,aAAa,CAAmB,GAAG,EAAEL,iCAAmB,CAAC;AAC5D,QAAA,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC;AAC9B,KAAA,CAAC;;AAGF,IAAA,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAsB;AAC9C,IAAA,KAAK,MAAM,CAAC,IAAI,iBAAiB,CAAC,MAAM,EAAE;QACxC,IAAI,CAACM,yBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;YAC9B,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC;QAC/B;IACF;IAEA,KAAK,MAAM,KAAK,IAAIL,4BAAS,CAAC,SAAS,CAAC,EAAE;;QAExC,MAAM,gBAAgB,GAAGI,8BAAgB,CAAC,KAAK,CAAC,EAAE,EAAE,SAAsC,CAAC;QAC3F,MAAM,oBAAoB,GAAGA,8BAAgB,CAAC,KAAK,CAAC,EAAE,EAAE,aAAa,CAAC;QAEtE,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,gBAAgB,CAAC;QACjD,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,oBAAoB,CAAC;;QAGzD,MAAM,CAAC,WAAW,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;AACvD,YAAA,UAAU,GAAG,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;AAC/E,YAAA,cAAc,GAAG,EAAE,CAAC,eAAe,CAAC,cAAc,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;AACxF,SAAA,CAAC;;AAGF,QAAA,MAAM,OAAO,GAAG,WAAW,EAAE,IAAI,GAAGF,2BAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE;AAC5E,QAAA,MAAM,IAAI,GAAG,eAAe,EAAE,IAAI,GAAGA,2BAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE;;AAGjF,QAAA,MAAM,YAAY,GAAG;YACnB,IAAI;YACJ,OAAO;SACR;QAED,MAAM,qBAAqB,GAAGE,8BAAgB,CAAC,KAAK,CAAC,EAAE,EAAE,cAAc,CAAC;;QAGxE,MAAM,MAAM,GAAG,EAAE,CAAC,iBAAiB,CAAC,YAAY,CAAC;QACjD,MAAM,MAAM,GAAGD,cAAK,CAAC,GAAG,EAAE,qBAAqB,CAAC;QAChD,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC;;QAGzC,IAAI,cAAc,EAAE;YAClB,MAAM,WAAW,GAAG,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC;AAC9C,YAAA,MAAM,WAAW,GAAGA,cAAK,CAAC,GAAG,EAAEC,8BAAgB,CAAC,KAAK,CAAC,EAAE,EAAE,mBAAmB,CAAC,CAAC;YAC/E,EAAE,CAAC,WAAW,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC;QACrD;IACF;AACF;;;;"}
1
+ {"version":3,"file":"migration.cjs","names":["SchemaVersionKey","SchemaVersionCurrent","SchemaVersionV1","SchemaVersionV2","ProjectStructureKey","allBlocks","BlockFrontendStateKeyPrefixV1","projectFieldName"],"sources":["../../src/mutator/migration.ts"],"sourcesContent":["import type { PlClient, PlTransaction, ResourceId } from \"@milaboratories/pl-client\";\nimport type { ProjectField, ProjectStructure } from \"../model/project_model\";\nimport {\n projectFieldName,\n ProjectStructureKey,\n SchemaVersionCurrent,\n SchemaVersionKey,\n SchemaVersionV2,\n} from \"../model/project_model\";\nimport { BlockFrontendStateKeyPrefixV1, SchemaVersionV1 } from \"../model/project_model_v1\";\nimport { field, isNullResourceId } from \"@milaboratories/pl-client\";\nimport { cachedDeserialize } from \"@milaboratories/ts-helpers\";\nimport { allBlocks } from \"../model/project_model_util\";\n\n/**\n * Migrates the project to the latest schema version.\n *\n * @param pl - The client to use.\n * @param rid - The resource id of the project.\n */\nexport async function applyProjectMigrations(pl: PlClient, rid: ResourceId) {\n await pl.withWriteTx(\"ProjectMigration\", async (tx) => {\n let schemaVersion = await tx.getKValueJson<string>(rid, SchemaVersionKey);\n if (schemaVersion === SchemaVersionCurrent) return;\n\n // Apply migrations in sequence\n if (schemaVersion === SchemaVersionV1) {\n await migrateV1ToV2(tx, rid);\n schemaVersion = SchemaVersionV2;\n }\n\n if (schemaVersion === SchemaVersionV2) {\n await migrateV2ToV3(tx, rid);\n } else if (schemaVersion !== SchemaVersionV1) {\n // If we got here and it's not v1 (which was handled above), it's unknown\n throw new Error(`Unknown project schema version: ${schemaVersion}`);\n }\n\n tx.setKValue(rid, SchemaVersionKey, JSON.stringify(SchemaVersionCurrent));\n await tx.commit();\n });\n}\n\n/**\n * Migrates the project from schema version 1 to 2.\n *\n * Summary of changes:\n * - uiState is now stored in a field instead of a KV\n *\n * @param tx - The transaction to use.\n * @param rid - The resource id of the project.\n */\nasync function migrateV1ToV2(tx: PlTransaction, rid: ResourceId) {\n const [structure, allKV] = await Promise.all([\n tx.getKValueJson<ProjectStructure>(rid, ProjectStructureKey),\n tx.listKeyValues(rid),\n ]);\n const kvMap = new Map<string, Uint8Array>(allKV.map((kv) => [kv.key, kv.value]));\n for (const block of allBlocks(structure)) {\n const kvKey = BlockFrontendStateKeyPrefixV1 + block.id;\n const uiState = kvMap.get(kvKey);\n const valueJson = uiState ? cachedDeserialize(uiState) : {};\n const uiStateR = tx.createJsonGzValue(valueJson);\n const uiStateF = field(rid, projectFieldName(block.id, \"blockStorage\"));\n tx.createField(uiStateF, \"Dynamic\", uiStateR);\n tx.deleteKValue(rid, kvKey);\n }\n}\n\n/**\n * Migrates the project from schema version 2 to 3.\n *\n * Summary of changes:\n * - Introduces unified 'blockStorage' field containing { args, uiState }\n * - Adds 'currentPrerunArgs' field for staging/prerun rendering\n * - For each block:\n * 1. Read existing 'blockStorage' field (contains uiState in v2)\n * 2. Read existing 'currentArgs' field (contains args)\n * 3. Create unified state = { args: currentArgs, uiState: oldState }\n * 4. Write to new {blockId}-blockStorage field (overwrites)\n * 5. Initialize {blockId}-currentPrerunArgs (same as prodArgs for v1/v2 blocks)\n * - Note: currentArgs and prodArgs fields remain for compatibility layer\n *\n * @param tx - The transaction to use.\n * @param rid - The resource id of the project.\n */\nasync function migrateV2ToV3(tx: PlTransaction, rid: ResourceId) {\n const [structure, fullResourceState] = await Promise.all([\n tx.getKValueJson<ProjectStructure>(rid, ProjectStructureKey),\n tx.getResourceData(rid, true),\n ]);\n\n // Build a map of field name -> resource id for quick lookup\n const fieldMap = new Map<string, ResourceId>();\n for (const f of fullResourceState.fields) {\n if (!isNullResourceId(f.value)) {\n fieldMap.set(f.name, f.value);\n }\n }\n\n for (const block of allBlocks(structure)) {\n // Read existing field values\n const uiStateFieldName = projectFieldName(block.id, \"uiState\" as ProjectField[\"fieldName\"]);\n const currentArgsFieldName = projectFieldName(block.id, \"currentArgs\");\n\n const uiStateRid = fieldMap.get(uiStateFieldName);\n const currentArgsRid = fieldMap.get(currentArgsFieldName);\n\n // Read field data in parallel where available\n const [uiStateData, currentArgsData] = await Promise.all([\n uiStateRid ? tx.getResourceData(uiStateRid, false) : Promise.resolve(undefined),\n currentArgsRid ? tx.getResourceData(currentArgsRid, false) : Promise.resolve(undefined),\n ]);\n\n // Extract values - in v2, 'blockStorage' contains raw uiState, not wrapped\n const uiState = uiStateData?.data ? cachedDeserialize(uiStateData.data) : {};\n const args = currentArgsData?.data ? cachedDeserialize(currentArgsData.data) : {};\n\n // Create unified state: { args, uiState }\n const unifiedState = {\n args,\n uiState,\n };\n\n const blockStorageFieldName = projectFieldName(block.id, \"blockStorage\");\n\n // Write new unified blockStorage field (overwrite existing)\n const stateR = tx.createJsonGzValue(unifiedState);\n const stateF = field(rid, blockStorageFieldName);\n tx.createField(stateF, \"Dynamic\", stateR);\n\n // Initialize currentPrerunArgs from currentArgs (for legacy blocks, prerunArgs = args)\n if (currentArgsRid) {\n const prerunArgsR = tx.createJsonGzValue(args);\n const prerunArgsF = field(rid, projectFieldName(block.id, \"currentPrerunArgs\"));\n tx.createField(prerunArgsF, \"Dynamic\", prerunArgsR);\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAoBA,eAAsB,uBAAuB,IAAc,KAAiB;AAC1E,OAAM,GAAG,YAAY,oBAAoB,OAAO,OAAO;EACrD,IAAI,gBAAgB,MAAM,GAAG,cAAsB,KAAKA,uCAAiB;AACzE,MAAI,kBAAkBC,2CAAsB;AAG5C,MAAI,kBAAkBC,0CAAiB;AACrC,SAAM,cAAc,IAAI,IAAI;AAC5B,mBAAgBC;;AAGlB,MAAI,kBAAkBA,sCACpB,OAAM,cAAc,IAAI,IAAI;WACnB,kBAAkBD,yCAE3B,OAAM,IAAI,MAAM,mCAAmC,gBAAgB;AAGrE,KAAG,UAAU,KAAKF,wCAAkB,KAAK,UAAUC,2CAAqB,CAAC;AACzE,QAAM,GAAG,QAAQ;GACjB;;;;;;;;;;;AAYJ,eAAe,cAAc,IAAmB,KAAiB;CAC/D,MAAM,CAAC,WAAW,SAAS,MAAM,QAAQ,IAAI,CAC3C,GAAG,cAAgC,KAAKG,0CAAoB,EAC5D,GAAG,cAAc,IAAI,CACtB,CAAC;CACF,MAAM,QAAQ,IAAI,IAAwB,MAAM,KAAK,OAAO,CAAC,GAAG,KAAK,GAAG,MAAM,CAAC,CAAC;AAChF,MAAK,MAAM,SAASC,qCAAU,UAAU,EAAE;EACxC,MAAM,QAAQC,yDAAgC,MAAM;EACpD,MAAM,UAAU,MAAM,IAAI,MAAM;EAChC,MAAM,YAAY,4DAA4B,QAAQ,GAAG,EAAE;EAC3D,MAAM,WAAW,GAAG,kBAAkB,UAAU;EAChD,MAAM,gDAAiB,KAAKC,uCAAiB,MAAM,IAAI,eAAe,CAAC;AACvE,KAAG,YAAY,UAAU,WAAW,SAAS;AAC7C,KAAG,aAAa,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;AAqB/B,eAAe,cAAc,IAAmB,KAAiB;CAC/D,MAAM,CAAC,WAAW,qBAAqB,MAAM,QAAQ,IAAI,CACvD,GAAG,cAAgC,KAAKH,0CAAoB,EAC5D,GAAG,gBAAgB,KAAK,KAAK,CAC9B,CAAC;CAGF,MAAM,2BAAW,IAAI,KAAyB;AAC9C,MAAK,MAAM,KAAK,kBAAkB,OAChC,KAAI,iDAAkB,EAAE,MAAM,CAC5B,UAAS,IAAI,EAAE,MAAM,EAAE,MAAM;AAIjC,MAAK,MAAM,SAASC,qCAAU,UAAU,EAAE;EAExC,MAAM,mBAAmBE,uCAAiB,MAAM,IAAI,UAAuC;EAC3F,MAAM,uBAAuBA,uCAAiB,MAAM,IAAI,cAAc;EAEtE,MAAM,aAAa,SAAS,IAAI,iBAAiB;EACjD,MAAM,iBAAiB,SAAS,IAAI,qBAAqB;EAGzD,MAAM,CAAC,aAAa,mBAAmB,MAAM,QAAQ,IAAI,CACvD,aAAa,GAAG,gBAAgB,YAAY,MAAM,GAAG,QAAQ,QAAQ,OAAU,EAC/E,iBAAiB,GAAG,gBAAgB,gBAAgB,MAAM,GAAG,QAAQ,QAAQ,OAAU,CACxF,CAAC;EAGF,MAAM,UAAU,aAAa,yDAAyB,YAAY,KAAK,GAAG,EAAE;EAC5E,MAAM,OAAO,iBAAiB,yDAAyB,gBAAgB,KAAK,GAAG,EAAE;EAGjF,MAAM,eAAe;GACnB;GACA;GACD;EAED,MAAM,wBAAwBA,uCAAiB,MAAM,IAAI,eAAe;EAGxE,MAAM,SAAS,GAAG,kBAAkB,aAAa;EACjD,MAAM,8CAAe,KAAK,sBAAsB;AAChD,KAAG,YAAY,QAAQ,WAAW,OAAO;AAGzC,MAAI,gBAAgB;GAClB,MAAM,cAAc,GAAG,kBAAkB,KAAK;GAC9C,MAAM,mDAAoB,KAAKA,uCAAiB,MAAM,IAAI,oBAAoB,CAAC;AAC/E,MAAG,YAAY,aAAa,WAAW,YAAY"}
@@ -1,122 +1,97 @@
1
- import { SchemaVersionKey, SchemaVersionCurrent, SchemaVersionV2, ProjectStructureKey, projectFieldName } from '../model/project_model.js';
2
- import { SchemaVersionV1, BlockFrontendStateKeyPrefixV1 } from '../model/project_model_v1.js';
3
- import { field, isNullResourceId } from '@milaboratories/pl-client';
4
- import { cachedDeserialize } from '@milaboratories/ts-helpers';
5
- import { allBlocks } from '../model/project_model_util.js';
1
+ import { ProjectStructureKey, SchemaVersionCurrent, SchemaVersionKey, SchemaVersionV2, projectFieldName } from "../model/project_model.js";
2
+ import { allBlocks } from "../model/project_model_util.js";
3
+ import { BlockFrontendStateKeyPrefixV1, SchemaVersionV1 } from "../model/project_model_v1.js";
4
+ import { cachedDeserialize } from "@milaboratories/ts-helpers";
5
+ import { field, isNullResourceId } from "@milaboratories/pl-client";
6
6
 
7
+ //#region src/mutator/migration.ts
7
8
  /**
8
- * Migrates the project to the latest schema version.
9
- *
10
- * @param pl - The client to use.
11
- * @param rid - The resource id of the project.
12
- */
9
+ * Migrates the project to the latest schema version.
10
+ *
11
+ * @param pl - The client to use.
12
+ * @param rid - The resource id of the project.
13
+ */
13
14
  async function applyProjectMigrations(pl, rid) {
14
- await pl.withWriteTx("ProjectMigration", async (tx) => {
15
- let schemaVersion = await tx.getKValueJson(rid, SchemaVersionKey);
16
- if (schemaVersion === SchemaVersionCurrent)
17
- return;
18
- // Apply migrations in sequence
19
- if (schemaVersion === SchemaVersionV1) {
20
- await migrateV1ToV2(tx, rid);
21
- schemaVersion = SchemaVersionV2;
22
- }
23
- if (schemaVersion === SchemaVersionV2) {
24
- await migrateV2ToV3(tx, rid);
25
- }
26
- else if (schemaVersion !== SchemaVersionV1) {
27
- // If we got here and it's not v1 (which was handled above), it's unknown
28
- throw new Error(`Unknown project schema version: ${schemaVersion}`);
29
- }
30
- tx.setKValue(rid, SchemaVersionKey, JSON.stringify(SchemaVersionCurrent));
31
- await tx.commit();
32
- });
15
+ await pl.withWriteTx("ProjectMigration", async (tx) => {
16
+ let schemaVersion = await tx.getKValueJson(rid, SchemaVersionKey);
17
+ if (schemaVersion === SchemaVersionCurrent) return;
18
+ if (schemaVersion === SchemaVersionV1) {
19
+ await migrateV1ToV2(tx, rid);
20
+ schemaVersion = SchemaVersionV2;
21
+ }
22
+ if (schemaVersion === SchemaVersionV2) await migrateV2ToV3(tx, rid);
23
+ else if (schemaVersion !== SchemaVersionV1) throw new Error(`Unknown project schema version: ${schemaVersion}`);
24
+ tx.setKValue(rid, SchemaVersionKey, JSON.stringify(SchemaVersionCurrent));
25
+ await tx.commit();
26
+ });
33
27
  }
34
28
  /**
35
- * Migrates the project from schema version 1 to 2.
36
- *
37
- * Summary of changes:
38
- * - uiState is now stored in a field instead of a KV
39
- *
40
- * @param tx - The transaction to use.
41
- * @param rid - The resource id of the project.
42
- */
29
+ * Migrates the project from schema version 1 to 2.
30
+ *
31
+ * Summary of changes:
32
+ * - uiState is now stored in a field instead of a KV
33
+ *
34
+ * @param tx - The transaction to use.
35
+ * @param rid - The resource id of the project.
36
+ */
43
37
  async function migrateV1ToV2(tx, rid) {
44
- const [structure, allKV] = await Promise.all([
45
- tx.getKValueJson(rid, ProjectStructureKey),
46
- tx.listKeyValues(rid),
47
- ]);
48
- const kvMap = new Map(allKV.map((kv) => [kv.key, kv.value]));
49
- for (const block of allBlocks(structure)) {
50
- const kvKey = BlockFrontendStateKeyPrefixV1 + block.id;
51
- const uiState = kvMap.get(kvKey);
52
- const valueJson = uiState ? cachedDeserialize(uiState) : {};
53
- const uiStateR = tx.createJsonGzValue(valueJson);
54
- const uiStateF = field(rid, projectFieldName(block.id, "blockStorage"));
55
- tx.createField(uiStateF, "Dynamic", uiStateR);
56
- tx.deleteKValue(rid, kvKey);
57
- }
38
+ const [structure, allKV] = await Promise.all([tx.getKValueJson(rid, ProjectStructureKey), tx.listKeyValues(rid)]);
39
+ const kvMap = new Map(allKV.map((kv) => [kv.key, kv.value]));
40
+ for (const block of allBlocks(structure)) {
41
+ const kvKey = BlockFrontendStateKeyPrefixV1 + block.id;
42
+ const uiState = kvMap.get(kvKey);
43
+ const valueJson = uiState ? cachedDeserialize(uiState) : {};
44
+ const uiStateR = tx.createJsonGzValue(valueJson);
45
+ const uiStateF = field(rid, projectFieldName(block.id, "blockStorage"));
46
+ tx.createField(uiStateF, "Dynamic", uiStateR);
47
+ tx.deleteKValue(rid, kvKey);
48
+ }
58
49
  }
59
50
  /**
60
- * Migrates the project from schema version 2 to 3.
61
- *
62
- * Summary of changes:
63
- * - Introduces unified 'blockStorage' field containing { args, uiState }
64
- * - Adds 'currentPrerunArgs' field for staging/prerun rendering
65
- * - For each block:
66
- * 1. Read existing 'blockStorage' field (contains uiState in v2)
67
- * 2. Read existing 'currentArgs' field (contains args)
68
- * 3. Create unified state = { args: currentArgs, uiState: oldState }
69
- * 4. Write to new {blockId}-blockStorage field (overwrites)
70
- * 5. Initialize {blockId}-currentPrerunArgs (same as prodArgs for v1/v2 blocks)
71
- * - Note: currentArgs and prodArgs fields remain for compatibility layer
72
- *
73
- * @param tx - The transaction to use.
74
- * @param rid - The resource id of the project.
75
- */
51
+ * Migrates the project from schema version 2 to 3.
52
+ *
53
+ * Summary of changes:
54
+ * - Introduces unified 'blockStorage' field containing { args, uiState }
55
+ * - Adds 'currentPrerunArgs' field for staging/prerun rendering
56
+ * - For each block:
57
+ * 1. Read existing 'blockStorage' field (contains uiState in v2)
58
+ * 2. Read existing 'currentArgs' field (contains args)
59
+ * 3. Create unified state = { args: currentArgs, uiState: oldState }
60
+ * 4. Write to new {blockId}-blockStorage field (overwrites)
61
+ * 5. Initialize {blockId}-currentPrerunArgs (same as prodArgs for v1/v2 blocks)
62
+ * - Note: currentArgs and prodArgs fields remain for compatibility layer
63
+ *
64
+ * @param tx - The transaction to use.
65
+ * @param rid - The resource id of the project.
66
+ */
76
67
  async function migrateV2ToV3(tx, rid) {
77
- const [structure, fullResourceState] = await Promise.all([
78
- tx.getKValueJson(rid, ProjectStructureKey),
79
- tx.getResourceData(rid, true),
80
- ]);
81
- // Build a map of field name -> resource id for quick lookup
82
- const fieldMap = new Map();
83
- for (const f of fullResourceState.fields) {
84
- if (!isNullResourceId(f.value)) {
85
- fieldMap.set(f.name, f.value);
86
- }
87
- }
88
- for (const block of allBlocks(structure)) {
89
- // Read existing field values
90
- const uiStateFieldName = projectFieldName(block.id, "uiState");
91
- const currentArgsFieldName = projectFieldName(block.id, "currentArgs");
92
- const uiStateRid = fieldMap.get(uiStateFieldName);
93
- const currentArgsRid = fieldMap.get(currentArgsFieldName);
94
- // Read field data in parallel where available
95
- const [uiStateData, currentArgsData] = await Promise.all([
96
- uiStateRid ? tx.getResourceData(uiStateRid, false) : Promise.resolve(undefined),
97
- currentArgsRid ? tx.getResourceData(currentArgsRid, false) : Promise.resolve(undefined),
98
- ]);
99
- // Extract values - in v2, 'blockStorage' contains raw uiState, not wrapped
100
- const uiState = uiStateData?.data ? cachedDeserialize(uiStateData.data) : {};
101
- const args = currentArgsData?.data ? cachedDeserialize(currentArgsData.data) : {};
102
- // Create unified state: { args, uiState }
103
- const unifiedState = {
104
- args,
105
- uiState,
106
- };
107
- const blockStorageFieldName = projectFieldName(block.id, "blockStorage");
108
- // Write new unified blockStorage field (overwrite existing)
109
- const stateR = tx.createJsonGzValue(unifiedState);
110
- const stateF = field(rid, blockStorageFieldName);
111
- tx.createField(stateF, "Dynamic", stateR);
112
- // Initialize currentPrerunArgs from currentArgs (for legacy blocks, prerunArgs = args)
113
- if (currentArgsRid) {
114
- const prerunArgsR = tx.createJsonGzValue(args);
115
- const prerunArgsF = field(rid, projectFieldName(block.id, "currentPrerunArgs"));
116
- tx.createField(prerunArgsF, "Dynamic", prerunArgsR);
117
- }
118
- }
68
+ const [structure, fullResourceState] = await Promise.all([tx.getKValueJson(rid, ProjectStructureKey), tx.getResourceData(rid, true)]);
69
+ const fieldMap = /* @__PURE__ */ new Map();
70
+ for (const f of fullResourceState.fields) if (!isNullResourceId(f.value)) fieldMap.set(f.name, f.value);
71
+ for (const block of allBlocks(structure)) {
72
+ const uiStateFieldName = projectFieldName(block.id, "uiState");
73
+ const currentArgsFieldName = projectFieldName(block.id, "currentArgs");
74
+ const uiStateRid = fieldMap.get(uiStateFieldName);
75
+ const currentArgsRid = fieldMap.get(currentArgsFieldName);
76
+ const [uiStateData, currentArgsData] = await Promise.all([uiStateRid ? tx.getResourceData(uiStateRid, false) : Promise.resolve(void 0), currentArgsRid ? tx.getResourceData(currentArgsRid, false) : Promise.resolve(void 0)]);
77
+ const uiState = uiStateData?.data ? cachedDeserialize(uiStateData.data) : {};
78
+ const args = currentArgsData?.data ? cachedDeserialize(currentArgsData.data) : {};
79
+ const unifiedState = {
80
+ args,
81
+ uiState
82
+ };
83
+ const blockStorageFieldName = projectFieldName(block.id, "blockStorage");
84
+ const stateR = tx.createJsonGzValue(unifiedState);
85
+ const stateF = field(rid, blockStorageFieldName);
86
+ tx.createField(stateF, "Dynamic", stateR);
87
+ if (currentArgsRid) {
88
+ const prerunArgsR = tx.createJsonGzValue(args);
89
+ const prerunArgsF = field(rid, projectFieldName(block.id, "currentPrerunArgs"));
90
+ tx.createField(prerunArgsF, "Dynamic", prerunArgsR);
91
+ }
92
+ }
119
93
  }
120
94
 
95
+ //#endregion
121
96
  export { applyProjectMigrations };
122
- //# sourceMappingURL=migration.js.map
97
+ //# sourceMappingURL=migration.js.map