@platforma-sdk/model 1.58.5 → 1.58.11

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 (365) hide show
  1. package/dist/_virtual/_rolldown/runtime.cjs +43 -0
  2. package/dist/_virtual/_rolldown/runtime.js +18 -0
  3. package/dist/annotations/converter.cjs +15 -20
  4. package/dist/annotations/converter.cjs.map +1 -1
  5. package/dist/annotations/converter.d.ts +6 -2
  6. package/dist/annotations/converter.js +14 -18
  7. package/dist/annotations/converter.js.map +1 -1
  8. package/dist/annotations/index.cjs +1 -0
  9. package/dist/annotations/index.d.ts +2 -3
  10. package/dist/annotations/index.js +1 -0
  11. package/dist/annotations/types.d.ts +21 -16
  12. package/dist/bconfig/index.cjs +2 -0
  13. package/dist/bconfig/index.d.ts +5 -6
  14. package/dist/bconfig/index.js +2 -0
  15. package/dist/bconfig/lambdas.d.ts +52 -52
  16. package/dist/bconfig/normalization.cjs +13 -18
  17. package/dist/bconfig/normalization.cjs.map +1 -1
  18. package/dist/bconfig/normalization.d.ts +10 -6
  19. package/dist/bconfig/normalization.js +12 -16
  20. package/dist/bconfig/normalization.js.map +1 -1
  21. package/dist/bconfig/types.cjs +4 -3
  22. package/dist/bconfig/types.cjs.map +1 -1
  23. package/dist/bconfig/types.d.ts +10 -5
  24. package/dist/bconfig/types.js +4 -2
  25. package/dist/bconfig/types.js.map +1 -1
  26. package/dist/bconfig/util.d.ts +7 -4
  27. package/dist/bconfig/v3.d.ts +10 -6
  28. package/dist/block_api_v1.d.ts +62 -58
  29. package/dist/block_api_v2.d.ts +51 -47
  30. package/dist/block_api_v3.d.ts +33 -29
  31. package/dist/block_migrations.cjs +481 -413
  32. package/dist/block_migrations.cjs.map +1 -1
  33. package/dist/block_migrations.d.ts +258 -204
  34. package/dist/block_migrations.js +482 -408
  35. package/dist/block_migrations.js.map +1 -1
  36. package/dist/block_model.cjs +312 -343
  37. package/dist/block_model.cjs.map +1 -1
  38. package/dist/block_model.d.ts +143 -147
  39. package/dist/block_model.js +312 -341
  40. package/dist/block_model.js.map +1 -1
  41. package/dist/block_model_legacy.cjs +231 -255
  42. package/dist/block_model_legacy.cjs.map +1 -1
  43. package/dist/block_model_legacy.d.ts +108 -106
  44. package/dist/block_model_legacy.js +231 -253
  45. package/dist/block_model_legacy.js.map +1 -1
  46. package/dist/block_state_patch.d.ts +10 -10
  47. package/dist/block_state_util.cjs +15 -19
  48. package/dist/block_state_util.cjs.map +1 -1
  49. package/dist/block_state_util.d.ts +14 -13
  50. package/dist/block_state_util.js +15 -18
  51. package/dist/block_state_util.js.map +1 -1
  52. package/dist/block_storage.cjs +233 -238
  53. package/dist/block_storage.cjs.map +1 -1
  54. package/dist/block_storage.d.ts +62 -78
  55. package/dist/block_storage.js +234 -237
  56. package/dist/block_storage.js.map +1 -1
  57. package/dist/block_storage_callbacks.cjs +156 -195
  58. package/dist/block_storage_callbacks.cjs.map +1 -1
  59. package/dist/block_storage_callbacks.js +156 -192
  60. package/dist/block_storage_callbacks.js.map +1 -1
  61. package/dist/block_storage_facade.cjs +29 -85
  62. package/dist/block_storage_facade.cjs.map +1 -1
  63. package/dist/block_storage_facade.d.ts +83 -126
  64. package/dist/block_storage_facade.js +29 -83
  65. package/dist/block_storage_facade.js.map +1 -1
  66. package/dist/components/PFrameForGraphs.cjs +26 -24
  67. package/dist/components/PFrameForGraphs.cjs.map +1 -1
  68. package/dist/components/PFrameForGraphs.d.ts +12 -7
  69. package/dist/components/PFrameForGraphs.js +25 -22
  70. package/dist/components/PFrameForGraphs.js.map +1 -1
  71. package/dist/components/PlAnnotations/filter.d.ts +62 -79
  72. package/dist/components/PlAnnotations/filters_ui.cjs +135 -171
  73. package/dist/components/PlAnnotations/filters_ui.cjs.map +1 -1
  74. package/dist/components/PlAnnotations/filters_ui.d.ts +48 -46
  75. package/dist/components/PlAnnotations/filters_ui.js +135 -170
  76. package/dist/components/PlAnnotations/filters_ui.js.map +1 -1
  77. package/dist/components/PlAnnotations/index.d.ts +2 -3
  78. package/dist/components/PlDataTable/index.cjs +2 -0
  79. package/dist/components/PlDataTable/index.d.ts +3 -5
  80. package/dist/components/PlDataTable/index.js +2 -0
  81. package/dist/components/PlDataTable/labels.cjs +59 -81
  82. package/dist/components/PlDataTable/labels.cjs.map +1 -1
  83. package/dist/components/PlDataTable/labels.js +58 -79
  84. package/dist/components/PlDataTable/labels.js.map +1 -1
  85. package/dist/components/PlDataTable/state-migration.cjs +186 -144
  86. package/dist/components/PlDataTable/state-migration.cjs.map +1 -1
  87. package/dist/components/PlDataTable/state-migration.d.ts +85 -82
  88. package/dist/components/PlDataTable/state-migration.js +185 -142
  89. package/dist/components/PlDataTable/state-migration.js.map +1 -1
  90. package/dist/components/PlDataTable/table.cjs +172 -194
  91. package/dist/components/PlDataTable/table.cjs.map +1 -1
  92. package/dist/components/PlDataTable/table.d.ts +16 -12
  93. package/dist/components/PlDataTable/table.js +171 -192
  94. package/dist/components/PlDataTable/table.js.map +1 -1
  95. package/dist/components/PlDataTable/v4.d.ts +84 -119
  96. package/dist/components/PlDataTable/v5.d.ts +80 -103
  97. package/dist/components/PlMultiSequenceAlignment.cjs +27 -29
  98. package/dist/components/PlMultiSequenceAlignment.cjs.map +1 -1
  99. package/dist/components/PlMultiSequenceAlignment.d.ts +36 -27
  100. package/dist/components/PlMultiSequenceAlignment.js +26 -27
  101. package/dist/components/PlMultiSequenceAlignment.js.map +1 -1
  102. package/dist/components/PlSelectionModel.cjs +7 -6
  103. package/dist/components/PlSelectionModel.cjs.map +1 -1
  104. package/dist/components/PlSelectionModel.d.ts +10 -8
  105. package/dist/components/PlSelectionModel.js +7 -5
  106. package/dist/components/PlSelectionModel.js.map +1 -1
  107. package/dist/components/index.cjs +8 -0
  108. package/dist/components/index.d.ts +11 -6
  109. package/dist/components/index.js +8 -0
  110. package/dist/config/actions.cjs +138 -171
  111. package/dist/config/actions.cjs.map +1 -1
  112. package/dist/config/actions.d.ts +47 -47
  113. package/dist/config/actions.js +146 -178
  114. package/dist/config/actions.js.map +1 -1
  115. package/dist/config/actions_kinds.d.ts +114 -121
  116. package/dist/config/index.cjs +1 -0
  117. package/dist/config/index.d.ts +6 -7
  118. package/dist/config/index.js +1 -0
  119. package/dist/config/model.d.ts +131 -127
  120. package/dist/config/model_meta.d.ts +4 -1
  121. package/dist/config/type_engine.d.ts +22 -21
  122. package/dist/config/type_util.d.ts +12 -10
  123. package/dist/env_value.cjs +5 -6
  124. package/dist/env_value.cjs.map +1 -1
  125. package/dist/env_value.d.ts +4 -1
  126. package/dist/env_value.js +5 -5
  127. package/dist/env_value.js.map +1 -1
  128. package/dist/filters/converters/filterToQuery.cjs +273 -239
  129. package/dist/filters/converters/filterToQuery.cjs.map +1 -1
  130. package/dist/filters/converters/filterToQuery.d.ts +6 -2
  131. package/dist/filters/converters/filterToQuery.js +272 -237
  132. package/dist/filters/converters/filterToQuery.js.map +1 -1
  133. package/dist/filters/converters/filterUiToExpressionImpl.cjs +56 -85
  134. package/dist/filters/converters/filterUiToExpressionImpl.cjs.map +1 -1
  135. package/dist/filters/converters/filterUiToExpressionImpl.d.ts +8 -4
  136. package/dist/filters/converters/filterUiToExpressionImpl.js +55 -83
  137. package/dist/filters/converters/filterUiToExpressionImpl.js.map +1 -1
  138. package/dist/filters/converters/index.cjs +2 -0
  139. package/dist/filters/converters/index.d.ts +2 -3
  140. package/dist/filters/converters/index.js +2 -0
  141. package/dist/filters/distill.cjs +59 -60
  142. package/dist/filters/distill.cjs.map +1 -1
  143. package/dist/filters/distill.d.ts +6 -3
  144. package/dist/filters/distill.js +58 -58
  145. package/dist/filters/distill.js.map +1 -1
  146. package/dist/filters/index.cjs +4 -0
  147. package/dist/filters/index.d.ts +5 -4
  148. package/dist/filters/index.js +4 -0
  149. package/dist/filters/traverse.cjs +31 -40
  150. package/dist/filters/traverse.cjs.map +1 -1
  151. package/dist/filters/traverse.js +31 -39
  152. package/dist/filters/traverse.js.map +1 -1
  153. package/dist/filters/types.d.ts +10 -7
  154. package/dist/index.cjs +193 -187
  155. package/dist/index.d.ts +61 -28
  156. package/dist/index.js +49 -41
  157. package/dist/internal.cjs +48 -62
  158. package/dist/internal.cjs.map +1 -1
  159. package/dist/internal.js +49 -60
  160. package/dist/internal.js.map +1 -1
  161. package/dist/package.cjs +12 -0
  162. package/dist/package.cjs.map +1 -0
  163. package/dist/package.js +6 -0
  164. package/dist/package.js.map +1 -0
  165. package/dist/pframe.cjs +32 -37
  166. package/dist/pframe.cjs.map +1 -1
  167. package/dist/pframe.d.ts +14 -10
  168. package/dist/pframe.js +32 -35
  169. package/dist/pframe.js.map +1 -1
  170. package/dist/pframe_utils/axes.cjs +81 -114
  171. package/dist/pframe_utils/axes.cjs.map +1 -1
  172. package/dist/pframe_utils/axes.d.ts +10 -13
  173. package/dist/pframe_utils/axes.js +80 -112
  174. package/dist/pframe_utils/axes.js.map +1 -1
  175. package/dist/pframe_utils/columns.cjs +61 -81
  176. package/dist/pframe_utils/columns.cjs.map +1 -1
  177. package/dist/pframe_utils/columns.d.ts +15 -6
  178. package/dist/pframe_utils/columns.js +60 -79
  179. package/dist/pframe_utils/columns.js.map +1 -1
  180. package/dist/pframe_utils/index.cjs +232 -253
  181. package/dist/pframe_utils/index.cjs.map +1 -1
  182. package/dist/pframe_utils/index.d.ts +39 -35
  183. package/dist/pframe_utils/index.js +231 -251
  184. package/dist/pframe_utils/index.js.map +1 -1
  185. package/dist/platforma.d.ts +48 -46
  186. package/dist/plugin_handle.cjs +6 -14
  187. package/dist/plugin_handle.cjs.map +1 -1
  188. package/dist/plugin_handle.d.ts +20 -25
  189. package/dist/plugin_handle.js +6 -13
  190. package/dist/plugin_handle.js.map +1 -1
  191. package/dist/plugin_model.cjs +364 -163
  192. package/dist/plugin_model.cjs.map +1 -1
  193. package/dist/plugin_model.d.ts +280 -129
  194. package/dist/plugin_model.js +362 -163
  195. package/dist/plugin_model.js.map +1 -1
  196. package/dist/raw_globals.cjs +10 -22
  197. package/dist/raw_globals.cjs.map +1 -1
  198. package/dist/raw_globals.d.ts +8 -5
  199. package/dist/raw_globals.js +10 -20
  200. package/dist/raw_globals.js.map +1 -1
  201. package/dist/ref_util.cjs +14 -13
  202. package/dist/ref_util.cjs.map +1 -1
  203. package/dist/ref_util.d.ts +18 -12
  204. package/dist/ref_util.js +14 -11
  205. package/dist/ref_util.js.map +1 -1
  206. package/dist/render/accessor.cjs +213 -226
  207. package/dist/render/accessor.cjs.map +1 -1
  208. package/dist/render/accessor.d.ts +115 -120
  209. package/dist/render/accessor.js +212 -224
  210. package/dist/render/accessor.js.map +1 -1
  211. package/dist/render/api.cjs +478 -580
  212. package/dist/render/api.cjs.map +1 -1
  213. package/dist/render/api.d.ts +207 -209
  214. package/dist/render/api.js +476 -578
  215. package/dist/render/api.js.map +1 -1
  216. package/dist/render/future.cjs +28 -32
  217. package/dist/render/future.cjs.map +1 -1
  218. package/dist/render/future.d.ts +15 -11
  219. package/dist/render/future.js +28 -30
  220. package/dist/render/future.js.map +1 -1
  221. package/dist/render/index.cjs +8 -0
  222. package/dist/render/index.d.ts +10 -8
  223. package/dist/render/index.js +8 -0
  224. package/dist/render/internal.cjs +33 -29
  225. package/dist/render/internal.cjs.map +1 -1
  226. package/dist/render/internal.d.ts +78 -72
  227. package/dist/render/internal.js +29 -26
  228. package/dist/render/internal.js.map +1 -1
  229. package/dist/render/traversal_ops.d.ts +42 -43
  230. package/dist/render/util/axis_filtering.cjs +63 -86
  231. package/dist/render/util/axis_filtering.cjs.map +1 -1
  232. package/dist/render/util/axis_filtering.d.ts +10 -7
  233. package/dist/render/util/axis_filtering.js +63 -85
  234. package/dist/render/util/axis_filtering.js.map +1 -1
  235. package/dist/render/util/column_collection.cjs +266 -321
  236. package/dist/render/util/column_collection.cjs.map +1 -1
  237. package/dist/render/util/column_collection.d.ts +47 -47
  238. package/dist/render/util/column_collection.js +264 -319
  239. package/dist/render/util/column_collection.js.map +1 -1
  240. package/dist/render/util/index.cjs +4 -0
  241. package/dist/render/util/index.d.ts +4 -5
  242. package/dist/render/util/index.js +4 -0
  243. package/dist/render/util/label.cjs +129 -163
  244. package/dist/render/util/label.cjs.map +1 -1
  245. package/dist/render/util/label.d.ts +45 -46
  246. package/dist/render/util/label.js +128 -161
  247. package/dist/render/util/label.js.map +1 -1
  248. package/dist/render/util/pcolumn_data.cjs +315 -375
  249. package/dist/render/util/pcolumn_data.cjs.map +1 -1
  250. package/dist/render/util/pcolumn_data.d.ts +33 -32
  251. package/dist/render/util/pcolumn_data.js +314 -373
  252. package/dist/render/util/pcolumn_data.js.map +1 -1
  253. package/dist/render/util/pframe_upgraders.cjs +37 -42
  254. package/dist/render/util/pframe_upgraders.cjs.map +1 -1
  255. package/dist/render/util/pframe_upgraders.js +37 -41
  256. package/dist/render/util/pframe_upgraders.js.map +1 -1
  257. package/dist/render/util/split_selectors.d.ts +13 -9
  258. package/dist/version.cjs +6 -8
  259. package/dist/version.cjs.map +1 -1
  260. package/dist/version.d.ts +7 -4
  261. package/dist/version.js +5 -5
  262. package/dist/version.js.map +1 -1
  263. package/package.json +15 -9
  264. package/src/block_migrations.test.ts +184 -14
  265. package/src/block_migrations.ts +185 -30
  266. package/src/block_model.ts +111 -66
  267. package/src/block_storage.test.ts +147 -3
  268. package/src/block_storage.ts +43 -8
  269. package/src/block_storage_callbacks.ts +9 -4
  270. package/src/env_value.ts +0 -2
  271. package/src/index.ts +12 -11
  272. package/src/internal.ts +0 -1
  273. package/src/platforma.ts +4 -4
  274. package/src/plugin_handle.ts +1 -1
  275. package/src/plugin_model.test.ts +217 -21
  276. package/src/plugin_model.ts +450 -55
  277. package/src/raw_globals.ts +0 -1
  278. package/dist/annotations/converter.d.ts.map +0 -1
  279. package/dist/annotations/index.d.ts.map +0 -1
  280. package/dist/annotations/types.d.ts.map +0 -1
  281. package/dist/bconfig/index.d.ts.map +0 -1
  282. package/dist/bconfig/lambdas.d.ts.map +0 -1
  283. package/dist/bconfig/normalization.d.ts.map +0 -1
  284. package/dist/bconfig/types.d.ts.map +0 -1
  285. package/dist/bconfig/util.d.ts.map +0 -1
  286. package/dist/bconfig/v3.d.ts.map +0 -1
  287. package/dist/block_api_v1.d.ts.map +0 -1
  288. package/dist/block_api_v2.d.ts.map +0 -1
  289. package/dist/block_api_v3.d.ts.map +0 -1
  290. package/dist/block_migrations.d.ts.map +0 -1
  291. package/dist/block_model.d.ts.map +0 -1
  292. package/dist/block_model_legacy.d.ts.map +0 -1
  293. package/dist/block_state_patch.d.ts.map +0 -1
  294. package/dist/block_state_util.d.ts.map +0 -1
  295. package/dist/block_storage.d.ts.map +0 -1
  296. package/dist/block_storage_callbacks.d.ts +0 -115
  297. package/dist/block_storage_callbacks.d.ts.map +0 -1
  298. package/dist/block_storage_facade.d.ts.map +0 -1
  299. package/dist/components/PFrameForGraphs.d.ts.map +0 -1
  300. package/dist/components/PlAnnotations/filter.d.ts.map +0 -1
  301. package/dist/components/PlAnnotations/filters_ui.d.ts.map +0 -1
  302. package/dist/components/PlAnnotations/index.d.ts.map +0 -1
  303. package/dist/components/PlAnnotations/types.d.ts +0 -3
  304. package/dist/components/PlAnnotations/types.d.ts.map +0 -1
  305. package/dist/components/PlDataTable/index.d.ts.map +0 -1
  306. package/dist/components/PlDataTable/labels.d.ts +0 -7
  307. package/dist/components/PlDataTable/labels.d.ts.map +0 -1
  308. package/dist/components/PlDataTable/state-migration.d.ts.map +0 -1
  309. package/dist/components/PlDataTable/table.d.ts.map +0 -1
  310. package/dist/components/PlDataTable/v4.d.ts.map +0 -1
  311. package/dist/components/PlDataTable/v5.d.ts.map +0 -1
  312. package/dist/components/PlMultiSequenceAlignment.d.ts.map +0 -1
  313. package/dist/components/PlSelectionModel.d.ts.map +0 -1
  314. package/dist/components/index.d.ts.map +0 -1
  315. package/dist/config/actions.d.ts.map +0 -1
  316. package/dist/config/actions_kinds.d.ts.map +0 -1
  317. package/dist/config/index.d.ts.map +0 -1
  318. package/dist/config/model.d.ts.map +0 -1
  319. package/dist/config/model_meta.d.ts.map +0 -1
  320. package/dist/config/type_engine.d.ts.map +0 -1
  321. package/dist/config/type_util.d.ts.map +0 -1
  322. package/dist/env_value.d.ts.map +0 -1
  323. package/dist/filters/converters/filterToQuery.d.ts.map +0 -1
  324. package/dist/filters/converters/filterUiToExpressionImpl.d.ts.map +0 -1
  325. package/dist/filters/converters/index.d.ts.map +0 -1
  326. package/dist/filters/distill.d.ts.map +0 -1
  327. package/dist/filters/index.d.ts.map +0 -1
  328. package/dist/filters/traverse.d.ts +0 -27
  329. package/dist/filters/traverse.d.ts.map +0 -1
  330. package/dist/filters/types.d.ts.map +0 -1
  331. package/dist/index.cjs.map +0 -1
  332. package/dist/index.d.ts.map +0 -1
  333. package/dist/index.js.map +0 -1
  334. package/dist/internal.d.ts +0 -36
  335. package/dist/internal.d.ts.map +0 -1
  336. package/dist/package.json.cjs +0 -6
  337. package/dist/package.json.cjs.map +0 -1
  338. package/dist/package.json.js +0 -4
  339. package/dist/package.json.js.map +0 -1
  340. package/dist/pframe.d.ts.map +0 -1
  341. package/dist/pframe_utils/axes.d.ts.map +0 -1
  342. package/dist/pframe_utils/columns.d.ts.map +0 -1
  343. package/dist/pframe_utils/index.d.ts.map +0 -1
  344. package/dist/pframe_utils/querySpec.d.ts +0 -2
  345. package/dist/pframe_utils/querySpec.d.ts.map +0 -1
  346. package/dist/platforma.d.ts.map +0 -1
  347. package/dist/plugin_handle.d.ts.map +0 -1
  348. package/dist/plugin_model.d.ts.map +0 -1
  349. package/dist/raw_globals.d.ts.map +0 -1
  350. package/dist/ref_util.d.ts.map +0 -1
  351. package/dist/render/accessor.d.ts.map +0 -1
  352. package/dist/render/api.d.ts.map +0 -1
  353. package/dist/render/future.d.ts.map +0 -1
  354. package/dist/render/index.d.ts.map +0 -1
  355. package/dist/render/internal.d.ts.map +0 -1
  356. package/dist/render/traversal_ops.d.ts.map +0 -1
  357. package/dist/render/util/axis_filtering.d.ts.map +0 -1
  358. package/dist/render/util/column_collection.d.ts.map +0 -1
  359. package/dist/render/util/index.d.ts.map +0 -1
  360. package/dist/render/util/label.d.ts.map +0 -1
  361. package/dist/render/util/pcolumn_data.d.ts.map +0 -1
  362. package/dist/render/util/pframe_upgraders.d.ts +0 -3
  363. package/dist/render/util/pframe_upgraders.d.ts.map +0 -1
  364. package/dist/render/util/split_selectors.d.ts.map +0 -1
  365. package/dist/version.d.ts.map +0 -1
@@ -1,54 +1,36 @@
1
- /**
2
- * BlockStorage - Typed storage abstraction for block persistent data.
3
- *
4
- * This module provides:
5
- * - A typed structure for block storage with versioning and plugin support
6
- * - Utility functions for manipulating storage
7
- * - Handler interfaces for model-level customization
8
- *
9
- * @module block_storage
10
- */
11
- import type { Branded } from "@milaboratories/pl-model-common";
12
- import type { DataVersioned } from "./block_migrations";
13
- import type { PluginHandle, PluginFactoryLike, InferFactoryData } from "./plugin_handle";
1
+ import { InferFactoryData, PluginFactoryLike, PluginHandle } from "./plugin_handle.js";
2
+ import { DataVersioned, TransferRecord } from "./block_migrations.js";
3
+ import { Branded } from "@milaboratories/pl-model-common";
4
+
5
+ //#region src/block_storage.d.ts
14
6
  /**
15
7
  * Discriminator key for BlockStorage format detection.
16
8
  * This unique hash-based key identifies data as BlockStorage vs legacy formats.
17
9
  */
18
- export declare const BLOCK_STORAGE_KEY = "__pl_a7f3e2b9__";
19
- /**
20
- * Current BlockStorage schema version.
21
- * Increment this when the storage structure itself changes (not block state migrations).
22
- */
23
- export declare const BLOCK_STORAGE_SCHEMA_VERSION = "v1";
24
- /**
25
- * Default data version for new blocks without migrations.
26
- * Unique identifier ensures blocks are created via DataModel API.
27
- */
28
- export declare const DATA_MODEL_LEGACY_VERSION = "__pl_v1_d4e8f2a1__";
10
+ declare const BLOCK_STORAGE_KEY = "__pl_a7f3e2b9__";
29
11
  /**
30
12
  * Type for valid schema versions
31
13
  */
32
- export type BlockStorageSchemaVersion = "v1";
14
+ type BlockStorageSchemaVersion = "v1";
33
15
  /**
34
16
  * Branded type for plugin names - globally unique plugin type identifiers.
35
17
  * Using a branded type enforces explicit casting (`as PluginName`) which makes
36
18
  * it easy to find all plugin name definitions in the codebase and verify uniqueness.
37
19
  */
38
- export type PluginName = Branded<string, "PluginName">;
20
+ type PluginName = Branded<string, "PluginName">;
39
21
  /**
40
22
  * Plugin registry - maps pluginId (unique within a block) to pluginName (globally unique plugin type).
41
23
  * Using a Record highlights that pluginIds must be unique within a block.
42
24
  */
43
- export type PluginRegistry = Record<PluginHandle, PluginName>;
25
+ type PluginRegistry = Record<PluginHandle, PluginName>;
44
26
  /**
45
27
  * Versioned data - used for both block data and plugin data
46
28
  */
47
- export interface VersionedData<TData = unknown> {
48
- /** Version of the data, used for migrations */
49
- __dataVersion: string;
50
- /** The persistent data */
51
- __data: TData;
29
+ interface VersionedData<TData = unknown> {
30
+ /** Version of the data, used for migrations */
31
+ __dataVersion: string;
32
+ /** The persistent data */
33
+ __data: TData;
52
34
  }
53
35
  /**
54
36
  * Core BlockStorage type that holds:
@@ -58,19 +40,16 @@ export interface VersionedData<TData = unknown> {
58
40
  * - __pluginRegistry: Map from pluginId to pluginName (optional)
59
41
  * - __plugins: Plugin-specific data keyed by pluginId (optional)
60
42
  */
61
- export type BlockStorage<TState = unknown> = {
62
- /** Schema version - the key itself is the discriminator */
63
- readonly [BLOCK_STORAGE_KEY]: BlockStorageSchemaVersion;
64
- /** Registry of plugins: pluginId -> pluginName */
65
- __pluginRegistry?: PluginRegistry;
66
- /** Plugin-specific data, keyed by plugin handle */
67
- __plugins?: Record<PluginHandle, VersionedData<unknown>>;
43
+ type BlockStorage<TState = unknown> = {
44
+ /** Schema version - the key itself is the discriminator */readonly [BLOCK_STORAGE_KEY]: BlockStorageSchemaVersion; /** Registry of plugins: pluginId -> pluginName */
45
+ __pluginRegistry?: PluginRegistry; /** Plugin-specific data, keyed by plugin handle */
46
+ __plugins?: Record<PluginHandle, VersionedData<unknown>>;
68
47
  } & VersionedData<TState>;
69
48
  /**
70
49
  * Type guard to check if a value is a valid BlockStorage object.
71
50
  * Checks for the discriminator key and valid schema version.
72
51
  */
73
- export declare function isBlockStorage(value: unknown): value is BlockStorage;
52
+ declare function isBlockStorage(value: unknown): value is BlockStorage;
74
53
  /**
75
54
  * Creates a BlockStorage with the given initial data
76
55
  *
@@ -78,7 +57,7 @@ export declare function isBlockStorage(value: unknown): value is BlockStorage;
78
57
  * @param version - The initial data version key (defaults to DATA_MODEL_LEGACY_VERSION)
79
58
  * @returns A new BlockStorage instance with discriminator key
80
59
  */
81
- export declare function createBlockStorage<TState = unknown>(initialData?: TState, version?: string): BlockStorage<TState>;
60
+ declare function createBlockStorage<TState = unknown>(initialData?: TState, version?: string): BlockStorage<TState>;
82
61
  /**
83
62
  * Normalizes raw storage data to BlockStorage format.
84
63
  * If the input is already a BlockStorage, returns it as-is (with defaults for missing fields).
@@ -87,14 +66,14 @@ export declare function createBlockStorage<TState = unknown>(initialData?: TStat
87
66
  * @param raw - Raw storage data (may be legacy format or BlockStorage)
88
67
  * @returns Normalized BlockStorage
89
68
  */
90
- export declare function normalizeBlockStorage<TState = unknown>(raw: unknown): BlockStorage<TState>;
69
+ declare function normalizeBlockStorage<TState = unknown>(raw: unknown): BlockStorage<TState>;
91
70
  /**
92
71
  * Gets the data from BlockStorage
93
72
  *
94
73
  * @param storage - The BlockStorage instance
95
74
  * @returns The data value
96
75
  */
97
- export declare function getStorageData<TState>(storage: BlockStorage<TState>): TState;
76
+ declare function getStorageData<TState>(storage: BlockStorage<TState>): TState;
98
77
  /**
99
78
  * Derives data from raw block storage.
100
79
  * This function is meant to be called from sdk/ui-vue to extract
@@ -106,15 +85,15 @@ export declare function getStorageData<TState>(storage: BlockStorage<TState>): T
106
85
  * @param rawStorage - Raw storage data from middle layer (may be any format)
107
86
  * @returns The extracted data value, or undefined if storage is undefined/null
108
87
  */
109
- export declare function deriveDataFromStorage<TData = unknown>(rawStorage: unknown): TData;
88
+ declare function deriveDataFromStorage<TData = unknown>(rawStorage: unknown): TData;
110
89
  /** Payload for storage mutation operations. SDK defines specific operations. */
111
- export type MutateStoragePayload<T = unknown> = {
112
- operation: "update-block-data";
113
- value: T;
90
+ type MutateStoragePayload<T = unknown> = {
91
+ operation: "update-block-data";
92
+ value: T;
114
93
  } | {
115
- operation: "update-plugin-data";
116
- pluginId: PluginHandle;
117
- value: unknown;
94
+ operation: "update-plugin-data";
95
+ pluginId: PluginHandle;
96
+ value: unknown;
118
97
  };
119
98
  /**
120
99
  * Updates the data in BlockStorage (immutable)
@@ -123,51 +102,54 @@ export type MutateStoragePayload<T = unknown> = {
123
102
  * @param payload - The update payload with operation and value
124
103
  * @returns A new BlockStorage with updated data
125
104
  */
126
- export declare function updateStorageData<TValue = unknown>(storage: BlockStorage<TValue>, payload: MutateStoragePayload<TValue>): BlockStorage<TValue>;
105
+ declare function updateStorageData<TValue = unknown>(storage: BlockStorage<TValue>, payload: MutateStoragePayload<TValue>): BlockStorage<TValue>;
127
106
  /**
128
107
  * Storage debug view returned by __pl_storage_debugView callback.
129
108
  * Used by developer tools to display block storage info.
130
109
  */
131
- export interface StorageDebugView {
132
- /** Current data version key */
133
- dataVersion: string;
134
- /** Raw data payload stored in BlockStorage */
135
- data: unknown;
110
+ interface StorageDebugView {
111
+ /** Current data version key */
112
+ dataVersion: string;
113
+ /** Raw data payload stored in BlockStorage */
114
+ data: unknown;
136
115
  }
137
116
  /**
138
117
  * Result of a successful atomic migration.
139
118
  */
140
- export interface MigrationSuccess<TState> {
141
- success: true;
142
- /** The fully migrated storage - commit this to persist */
143
- storage: BlockStorage<TState>;
119
+ interface MigrationSuccess<TState> {
120
+ success: true;
121
+ /** The fully migrated storage - commit this to persist */
122
+ storage: BlockStorage<TState>;
144
123
  }
145
124
  /**
146
125
  * Result of a failed atomic migration.
147
126
  * The original storage is untouched - user must choose to abort or reset.
148
127
  */
149
- export interface MigrationFailure {
150
- success: false;
151
- /** Description of what failed */
152
- error: string;
153
- /** Which step failed: 'block' or pluginId */
154
- failedAt: string;
128
+ interface MigrationFailure {
129
+ success: false;
130
+ /** Description of what failed */
131
+ error: string;
132
+ /** Which step failed: 'block' or pluginId */
133
+ failedAt: string;
155
134
  }
156
- export type MigrationResult<TState> = MigrationSuccess<TState> | MigrationFailure;
135
+ type MigrationResult<TState> = MigrationSuccess<TState> | MigrationFailure;
157
136
  /**
158
137
  * Configuration for atomic block storage migration.
159
138
  * Callbacks use DataVersioned format (the DataModel API format).
160
139
  * Conversion to internal VersionedData format is handled by migrateBlockStorage().
161
140
  */
162
- export interface MigrateBlockStorageConfig {
163
- /** Migrate block data from any version to latest. Throws on failure. */
164
- migrateBlockData: (versioned: DataVersioned<unknown>) => DataVersioned<unknown>;
165
- /** Migrate each plugin's data. Return undefined to remove the plugin. Throws on failure. */
166
- migratePluginData: (handle: PluginHandle, versioned: DataVersioned<unknown>) => DataVersioned<unknown> | undefined;
167
- /** The new plugin registry after migration (pluginId -> pluginName) */
168
- newPluginRegistry: PluginRegistry;
169
- /** Factory to create initial data for new plugins */
170
- createPluginData: (handle: PluginHandle) => DataVersioned<unknown>;
141
+ interface MigrateBlockStorageConfig {
142
+ /** Migrate block data from any version to latest. Returns migrated data and transfers. */
143
+ migrateBlockData: (versioned: DataVersioned<unknown>) => DataVersioned<unknown> & {
144
+ transfers: TransferRecord;
145
+ };
146
+ /** Migrate each plugin's data. Return undefined to remove the plugin. Throws on failure. */
147
+ migratePluginData: (handle: PluginHandle, versioned: DataVersioned<unknown>) => DataVersioned<unknown> | undefined;
148
+ /** The new plugin registry after migration (pluginId -> pluginName) */
149
+ newPluginRegistry: PluginRegistry;
150
+ /** Factory to create initial data for new plugins. Transfer is provided when a
151
+ * .transfer() was defined for this plugin in the block's migration chain. */
152
+ createPluginData: (handle: PluginHandle, transfer?: DataVersioned<unknown>) => DataVersioned<unknown>;
171
153
  }
172
154
  /**
173
155
  * Performs atomic migration of block storage including block data and all plugins.
@@ -209,7 +191,7 @@ export interface MigrateBlockStorageConfig {
209
191
  * // else: abort, keep original
210
192
  * }
211
193
  */
212
- export declare function migrateBlockStorage(storage: BlockStorage<unknown>, config: MigrateBlockStorageConfig): MigrationResult<unknown>;
194
+ declare function migrateBlockStorage(storage: BlockStorage<unknown>, config: MigrateBlockStorageConfig): MigrationResult<unknown>;
213
195
  /**
214
196
  * Gets plugin-specific data from block storage.
215
197
  * Accepts raw storage (any format) and normalizes internally.
@@ -222,5 +204,7 @@ export declare function migrateBlockStorage(storage: BlockStorage<unknown>, conf
222
204
  * @returns The plugin data, typed via factory inference
223
205
  * @throws If plugin is not found in storage
224
206
  */
225
- export declare function getPluginData<F extends PluginFactoryLike>(rawStorage: unknown, handle: PluginHandle<F>): InferFactoryData<F>;
207
+ declare function getPluginData<F extends PluginFactoryLike>(rawStorage: unknown, handle: PluginHandle<F>): InferFactoryData<F>;
208
+ //#endregion
209
+ export { BlockStorage, BlockStorageSchemaVersion, MigrateBlockStorageConfig, MigrationFailure, MigrationResult, MigrationSuccess, MutateStoragePayload, PluginName, PluginRegistry, StorageDebugView, VersionedData, createBlockStorage, deriveDataFromStorage, getPluginData, getStorageData, isBlockStorage, migrateBlockStorage, normalizeBlockStorage, updateStorageData };
226
210
  //# sourceMappingURL=block_storage.d.ts.map