@milaboratories/pl-middle-layer 1.47.2 → 1.48.0

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.
@@ -369,9 +369,14 @@ class ComputableContextHelper {
369
369
  const args = this.blockCtx.args(this.computableCtx);
370
370
  return args === undefined ? vm.undefined : vm.newString(args);
371
371
  });
372
+ exportCtxFunction("blockStorage", () => {
373
+ if (this.computableCtx === undefined)
374
+ throw new Error(`Add dummy call to ctx.blockStorage outside the future lambda. Can't be directly used in this context.`);
375
+ return vm.newString(this.blockCtx.blockStorage(this.computableCtx) ?? "{}");
376
+ });
372
377
  exportCtxFunction("data", () => {
373
378
  if (this.computableCtx === undefined)
374
- throw new Error(`Add dummy call to ctx.state outside the future lambda. Can't be directly used in this context.`);
379
+ throw new Error(`Add dummy call to ctx.data outside the future lambda. Can't be directly used in this context.`);
375
380
  return vm.newString(this.blockCtx.data(this.computableCtx) ?? "{}");
376
381
  });
377
382
  exportCtxFunction("activeArgs", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"computable_context.cjs","sources":["../../src/js_render/computable_context.ts"],"sourcesContent":["import type { ComputableCtx } from \"@milaboratories/computable\";\nimport { Computable } from \"@milaboratories/computable\";\nimport type { PlTreeNodeAccessor } from \"@milaboratories/pl-tree\";\nimport { checkBlockFlag } from \"@platforma-sdk/model\";\nimport type {\n ArchiveFormat,\n CommonFieldTraverseOps as CommonFieldTraverseOpsFromSDK,\n DataInfo,\n FieldTraversalStep as FieldTraversalStepFromSDK,\n Option,\n PColumn,\n PColumnValues,\n PFrameDef,\n PFrameHandle,\n PObject,\n PObjectSpec,\n PSpecPredicate,\n PTableDef,\n PTableDefV2,\n PTableHandle,\n ResourceType as ResourceTypeFromSDK,\n ResultCollection,\n ValueOrError,\n RangeBytes,\n BlockCodeKnownFeatureFlags,\n JsRenderInternal,\n} from \"@platforma-sdk/model\";\nimport {\n isDataInfo,\n mapDataInfo,\n mapPObjectData,\n mapPTableDef,\n mapPTableDefV2,\n mapValueInVOE,\n} from \"@platforma-sdk/model\";\nimport { notEmpty } from \"@milaboratories/ts-helpers\";\nimport { randomUUID } from \"node:crypto\";\nimport type { Optional } from \"utility-types\";\nimport type { BlockContextAny } from \"../middle_layer/block_ctx\";\nimport type { MiddleLayerEnvironment } from \"../middle_layer/middle_layer\";\nimport type { Block } from \"../model/project_model\";\nimport { parseFinalPObjectCollection } from \"../pool/p_object_collection\";\nimport type { ResultPool } from \"../pool/result_pool\";\nimport type { JsExecutionContext } from \"./context\";\nimport type { VmFunctionImplementation } from \"quickjs-emscripten\";\nimport { Scope, type QuickJSHandle } from \"quickjs-emscripten\";\n\nfunction bytesToBase64(data: Uint8Array | undefined): string | undefined {\n return data !== undefined ? Buffer.from(data).toString(\"base64\") : undefined;\n}\n\nexport class ComputableContextHelper implements JsRenderInternal.GlobalCfgRenderCtxMethods<\n string,\n string\n> {\n public readonly computablesToResolve: Record<string, Computable<unknown>> = {};\n\n private computableCtx: ComputableCtx | undefined;\n private readonly accessors = new Map<string, PlTreeNodeAccessor | undefined>();\n\n private readonly meta: Map<string, Block>;\n\n constructor(\n private readonly parent: JsExecutionContext,\n private readonly blockCtx: BlockContextAny,\n private readonly env: MiddleLayerEnvironment,\n private readonly featureFlags: BlockCodeKnownFeatureFlags | undefined,\n computableCtx: ComputableCtx,\n ) {\n this.computableCtx = computableCtx;\n this.meta = blockCtx.blockMeta(computableCtx);\n }\n\n public resetComputableCtx() {\n this.computableCtx = undefined;\n this.accessors.clear();\n }\n\n //\n // Methods for injected ctx object\n //\n\n getAccessorHandleByName(name: string): string | undefined {\n if (this.computableCtx === undefined)\n throw new Error(\"Accessors can't be used in this context\");\n const wellKnownAccessor = (name: string, ctxKey: \"staging\" | \"prod\"): string | undefined => {\n if (!this.accessors.has(name)) {\n const lambda = this.blockCtx[ctxKey];\n if (lambda === undefined) throw new Error(\"Staging context not available\");\n const entry = lambda(this.computableCtx!);\n if (!entry) this.accessors.set(name, undefined);\n else\n this.accessors.set(name, this.computableCtx!.accessor(entry).node({ ignoreError: true }));\n }\n return this.accessors.get(name) ? name : undefined;\n };\n if (name === \"staging\") return wellKnownAccessor(\"staging\", \"staging\");\n else if (name === \"main\") return wellKnownAccessor(\"main\", \"prod\");\n return undefined;\n }\n\n //\n // Accessors\n //\n\n resolveWithCommon(\n handle: string,\n commonOptions: CommonFieldTraverseOpsFromSDK,\n ...steps: (FieldTraversalStepFromSDK | string)[]\n ): string | undefined {\n return this.wrapAccessor(this.getAccessor(handle).traverseWithCommon(commonOptions, ...steps));\n }\n\n getResourceType(handle: string): ResourceTypeFromSDK {\n return this.getAccessor(handle).resourceType;\n }\n\n getInputsLocked(handle: string): boolean {\n return this.getAccessor(handle).getInputsLocked();\n }\n\n getOutputsLocked(handle: string): boolean {\n return this.getAccessor(handle).getOutputsLocked();\n }\n\n getIsReadyOrError(handle: string): boolean {\n return this.getAccessor(handle).getIsReadyOrError();\n }\n\n getIsFinal(handle: string): boolean {\n return this.getAccessor(handle).getIsFinal();\n }\n\n getError(handle: string): string | undefined {\n return this.wrapAccessor(this.getAccessor(handle).getError());\n }\n\n listInputFields(handle: string): string[] {\n return this.getAccessor(handle).listInputFields();\n }\n\n listOutputFields(handle: string): string[] {\n return this.getAccessor(handle).listOutputFields();\n }\n\n listDynamicFields(handle: string): string[] {\n return this.getAccessor(handle).listDynamicFields();\n }\n\n getKeyValueBase64(handle: string, key: string): string | undefined {\n return bytesToBase64(this.getAccessor(handle).getKeyValue(key));\n }\n\n getKeyValueAsString(handle: string, key: string): string | undefined {\n return this.getAccessor(handle).getKeyValueAsString(key);\n }\n\n getDataBase64(handle: string): string | undefined {\n return bytesToBase64(this.getAccessor(handle).getData());\n }\n\n getDataAsString(handle: string): string | undefined {\n return this.getAccessor(handle).getDataAsString();\n }\n\n //\n // Accessor helpers\n //\n\n parsePObjectCollection(\n handle: string,\n errorOnUnknownField: boolean,\n prefix: string,\n ...resolveSteps: string[]\n ): Record<string, PObject<string>> | undefined {\n const acc = this.getAccessor(handle);\n if (!acc.getIsReadyOrError()) return undefined;\n const accResult = parseFinalPObjectCollection(acc, errorOnUnknownField, prefix, resolveSteps);\n const result: Record<string, PObject<string>> = {};\n for (const [key, obj] of Object.entries(accResult)) {\n result[key] = mapPObjectData(obj, (d) => this.wrapAccessor(d));\n }\n return result;\n }\n\n //\n // Blobs\n //\n\n private registerComputable(hPrefix: string, computable: Computable<unknown>): string {\n const fHandle = `${hPrefix}_${randomUUID()}`;\n this.computablesToResolve[fHandle] = computable;\n return fHandle;\n }\n\n public getBlobContentAsString(handle: string, range?: RangeBytes): string {\n const resourceInfo = this.getAccessor(handle).resourceInfo;\n return this.registerComputable(\n \"getBlobContentAsString\",\n Computable.make((ctx) => this.env.driverKit.blobDriver.getDownloadedBlob(resourceInfo, ctx), {\n postprocessValue: async (value) => {\n if (value === undefined) return undefined;\n return Buffer.from(\n await this.env.driverKit.blobDriver.getContent(value.handle, range),\n ).toString(\"utf-8\");\n },\n }),\n );\n }\n\n public getBlobContentAsBase64(handle: string, range?: RangeBytes): string {\n const resourceInfo = this.getAccessor(handle).resourceInfo;\n return this.registerComputable(\n \"getBlobContentAsBase64\",\n Computable.make((ctx) => this.env.driverKit.blobDriver.getDownloadedBlob(resourceInfo, ctx), {\n postprocessValue: async (value) => {\n if (value === undefined) return undefined;\n return Buffer.from(\n await this.env.driverKit.blobDriver.getContent(value.handle, range),\n ).toString(\"base64\");\n },\n }),\n );\n }\n\n public getDownloadedBlobContentHandle(handle: string): string {\n const resourceInfo = this.getAccessor(handle).resourceInfo;\n return this.registerComputable(\n \"getDownloadedBlobContentHandle\",\n this.env.driverKit.blobDriver.getDownloadedBlob(resourceInfo),\n );\n }\n\n public getOnDemandBlobContentHandle(handle: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getOnDemandBlobContentHandle\",\n this.env.driverKit.blobDriver.getOnDemandBlob(resource),\n );\n }\n\n //\n // Blobs to URLs\n //\n\n public extractArchiveAndGetURL(handle: string, format: ArchiveFormat): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"extractArchiveAndGetURL\",\n this.env.driverKit.blobToURLDriver.extractArchiveAndGetURL(resource, format),\n );\n }\n\n //\n // Import progress\n //\n\n getImportProgress(handle: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getImportProgress\",\n this.env.driverKit.uploadDriver.getProgressId(resource),\n );\n }\n\n //\n // Logs\n //\n\n getLastLogs(handle: string, nLines: number): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getLastLogs\",\n this.env.driverKit.logDriver.getLastLogs(resource, nLines),\n );\n }\n\n getProgressLog(handle: string, patternToSearch: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getProgressLog\",\n this.env.driverKit.logDriver.getProgressLog(resource, patternToSearch),\n );\n }\n\n getProgressLogWithInfo(handle: string, patternToSearch: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getProgressLogWithInfo\",\n this.env.driverKit.logDriver.getProgressLogWithInfo(resource, patternToSearch),\n );\n }\n\n getLogHandle(handle: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getLogHandle\",\n this.env.driverKit.logDriver.getLogHandle(resource),\n );\n }\n\n //\n // Blocks\n //\n\n public getBlockLabel(blockId: string): string {\n const b = this.meta.get(blockId);\n if (b === undefined) throw new Error(`Block ${blockId} not found.`);\n return b.label;\n }\n\n //\n // Result Pool\n //\n\n private _resultPool: ResultPool | undefined = undefined;\n private get resultPool(): ResultPool {\n if (this._resultPool === undefined) {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't use result pool in this context (most porbably called from the future mapper)\",\n );\n this._resultPool = notEmpty(\n this.blockCtx.getResultsPool,\n \"getResultsPool\",\n )(this.computableCtx);\n }\n return this._resultPool;\n }\n\n public calculateOptions(predicate: PSpecPredicate): Option[] {\n return this.resultPool.calculateOptions(predicate);\n }\n\n public getDataFromResultPool(): ResultCollection<PObject<string>> {\n const collection = this.resultPool.getData();\n if (collection.instabilityMarker !== undefined)\n this.computableCtx!.markUnstable(`incomplete_result_pool:${collection.instabilityMarker}`);\n return {\n isComplete: collection.isComplete,\n entries: collection.entries.map((e) => ({\n ref: e.ref,\n obj: mapPObjectData(e.obj, (d) => this.wrapAccessor(d)),\n })),\n };\n }\n\n public getDataWithErrorsFromResultPool(): ResultCollection<\n Optional<PObject<ValueOrError<string, Error>>, \"id\">\n > {\n const collection = this.resultPool.getDataWithErrors();\n if (collection.instabilityMarker !== undefined)\n this.computableCtx!.markUnstable(`incomplete_result_pool:${collection.instabilityMarker}`);\n return {\n isComplete: collection.isComplete,\n entries: collection.entries.map((e) => ({\n ref: e.ref,\n obj: {\n id: e.obj.id,\n spec: e.obj.spec,\n data: mapValueInVOE(e.obj.data, (d) => this.wrapAccessor(d)),\n },\n })),\n };\n }\n\n public getSpecsFromResultPool(): ResultCollection<PObjectSpec> {\n const specs = this.resultPool.getSpecs();\n if (specs.instabilityMarker !== undefined)\n this.computableCtx!.markUnstable(`specs_from_pool_incomplete:${specs.instabilityMarker}`);\n return specs;\n }\n\n getSpecFromResultPoolByRef(blockId: string, exportName: string): PObjectSpec | undefined {\n return this.resultPool.getSpecByRef(blockId, exportName);\n }\n\n getDataFromResultPoolByRef(blockId: string, exportName: string): PObject<string> | undefined {\n return mapPObjectData(this.resultPool.getDataByRef(blockId, exportName), (acc) =>\n this.wrapAccessor(acc),\n );\n }\n\n //\n // PFrames / PTables\n //\n\n public createPFrame(\n def: PFrameDef<PColumn<string | PColumnValues | DataInfo<string>>>,\n ): PFrameHandle {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't instantiate PFrames from this context (most porbably called from the future mapper)\",\n );\n const { key, unref } = this.env.driverKit.pFrameDriver.createPFrame(\n def.map((c) => mapPObjectData(c, (d) => this.transformInputPData(d))),\n );\n this.computableCtx.addOnDestroy(unref);\n return key;\n }\n\n public createPTable(\n def: PTableDef<PColumn<string | PColumnValues | DataInfo<string>>>,\n ): PTableHandle {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't instantiate PTable from this context (most porbably called from the future mapper)\",\n );\n const { key, unref } = this.env.driverKit.pFrameDriver.createPTable(\n mapPTableDef(def, (c) => mapPObjectData(c, (d) => this.transformInputPData(d))),\n );\n this.computableCtx.addOnDestroy(unref);\n return key;\n }\n public createPTableV2(\n def: PTableDefV2<PColumn<string | PColumnValues | DataInfo<string>>>,\n ): PTableHandle {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't instantiate PTable from this context (most porbably called from the future mapper)\",\n );\n const { key, unref } = this.env.driverKit.pFrameDriver.createPTableV2(\n mapPTableDefV2(def, (c) => mapPObjectData(c, (d) => this.transformInputPData(d))),\n );\n this.computableCtx.addOnDestroy(unref);\n return key;\n }\n\n /**\n * Transforms input data for PFrame/PTable creation\n * - Converts string handles to accessors\n * - Maps accessors in DataInfo objects\n * - Passes through other values\n */\n private transformInputPData(\n d: string | PColumnValues | DataInfo<string>,\n ): PlTreeNodeAccessor | PColumnValues | DataInfo<PlTreeNodeAccessor> {\n if (typeof d === \"string\") {\n return this.getAccessor(d);\n } else if (isDataInfo(d)) {\n return mapDataInfo(d, (a) => this.getAccessor(a));\n } else {\n return d;\n }\n }\n\n //\n // Computable\n //\n\n public getCurrentUnstableMarker(): string | undefined {\n return this.computableCtx?.unstableMarker;\n }\n\n //\n // Logging\n //\n\n public logInfo(message: string): void {\n this.env.blockEventDispatcher.logInfo(this.blockCtx.blockId, message);\n }\n\n public logWarn(message: string): void {\n this.env.blockEventDispatcher.logWarn(this.blockCtx.blockId, message);\n }\n\n public logError(message: string): void {\n this.env.blockEventDispatcher.logError(this.blockCtx.blockId, message);\n }\n\n //\n // Helpers\n //\n\n private getAccessor(handle: string): PlTreeNodeAccessor {\n const accessor = this.accessors.get(handle);\n if (accessor === undefined) throw new Error(\"No such accessor\");\n return accessor;\n }\n\n private wrapAccessor(accessor: PlTreeNodeAccessor): string;\n private wrapAccessor(accessor: PlTreeNodeAccessor | undefined): string | undefined;\n private wrapAccessor(accessor: PlTreeNodeAccessor | undefined): string | undefined {\n if (accessor === undefined) return undefined;\n else {\n const nextHandle = randomUUID();\n this.accessors.set(nextHandle, accessor);\n return nextHandle;\n }\n }\n\n public injectCtx(configCtx: QuickJSHandle): void {\n const parent = this.parent;\n const vm = parent.vm;\n\n Scope.withScope((localScope) => {\n // Exporting methods\n\n const exportCtxFunction = (\n name: string,\n fn: VmFunctionImplementation<QuickJSHandle>,\n ): void => {\n const withCachedError: VmFunctionImplementation<QuickJSHandle> = (...args) => {\n // QuickJS strips all fields from errors apart from 'name' and 'message'.\n // That's why here we need to store them, and rethrow them when we exit\n // from QuickJS code.\n try {\n return (fn as any)(...args);\n } catch (e: unknown) {\n const newErr = parent.errorRepo.setAndRecreateForQuickJS(e);\n throw vm.newError(newErr);\n }\n };\n\n vm.newFunction(name, withCachedError).consume((fnh) => vm.setProp(configCtx, name, fnh));\n vm.newFunction(name, fn).consume((fnh) =>\n vm.setProp(configCtx, name + \"__internal__\", fnh),\n );\n };\n\n // Check if this is a v1/v2 block (requiresModelAPIVersion !== 2)\n // For v1/v2 blocks, state is {args, uiState} and we need to inject uiState separately\n const isLegacyBlock = !checkBlockFlag(this.featureFlags, \"requiresModelAPIVersion\", 2);\n\n // Helper to extract uiState from legacy state format {args, uiState}\n const extractUiState = (stateJson: string | undefined): string => {\n if (!stateJson) return \"{}\";\n try {\n const parsed = JSON.parse(stateJson);\n return JSON.stringify(parsed?.uiState ?? {});\n } catch {\n return \"{}\";\n }\n };\n\n if (checkBlockFlag(this.featureFlags, \"supportsLazyState\")) {\n // injecting lazy state functions\n exportCtxFunction(\"args\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.args outside the future lambda. Can't be directly used in this context.`,\n );\n const args = this.blockCtx.args(this.computableCtx);\n return args === undefined ? vm.undefined : vm.newString(args);\n });\n exportCtxFunction(\"data\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.state outside the future lambda. Can't be directly used in this context.`,\n );\n return vm.newString(this.blockCtx.data(this.computableCtx) ?? \"{}\");\n });\n exportCtxFunction(\"activeArgs\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.activeArgs outside the future lambda. Can't be directly used in this context.`,\n );\n const res = this.blockCtx.activeArgs(this.computableCtx);\n return res === undefined ? vm.undefined : vm.newString(res);\n });\n // For v1/v2 blocks, also inject uiState (extracted from state.uiState)\n if (isLegacyBlock) {\n exportCtxFunction(\"uiState\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.uiState outside the future lambda. Can't be directly used in this context.`,\n );\n return vm.newString(extractUiState(this.blockCtx.data(this.computableCtx)));\n });\n }\n } else {\n const args = this.blockCtx.args(this.computableCtx!);\n const activeArgs = this.blockCtx.activeArgs(this.computableCtx!);\n const data = this.blockCtx.data(this.computableCtx!);\n if (args !== undefined) {\n vm.setProp(configCtx, \"args\", localScope.manage(vm.newString(args)));\n }\n vm.setProp(configCtx, \"data\", localScope.manage(vm.newString(data ?? \"{}\")));\n if (activeArgs !== undefined)\n vm.setProp(configCtx, \"activeArgs\", localScope.manage(vm.newString(activeArgs)));\n // For v1/v2 blocks, also inject uiState (extracted from state.uiState)\n if (isLegacyBlock) {\n vm.setProp(configCtx, \"uiState\", localScope.manage(vm.newString(extractUiState(data))));\n }\n }\n\n //\n // Methods for injected ctx object\n //\n\n exportCtxFunction(\"getAccessorHandleByName\", (name) => {\n return parent.exportSingleValue(\n this.getAccessorHandleByName(vm.getString(name)),\n undefined,\n );\n });\n\n //\n // Accessors\n //\n\n exportCtxFunction(\"resolveWithCommon\", (handle, commonOptions, ...steps) => {\n return parent.exportSingleValue(\n this.resolveWithCommon(\n vm.getString(handle),\n parent.importObjectViaJson(commonOptions) as CommonFieldTraverseOpsFromSDK,\n ...steps.map(\n (step) => parent.importObjectViaJson(step) as FieldTraversalStepFromSDK | string,\n ),\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"getResourceType\", (handle) => {\n return parent.exportObjectViaJson(this.getResourceType(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getInputsLocked\", (handle) => {\n return parent.exportSingleValue(this.getInputsLocked(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getOutputsLocked\", (handle) => {\n return parent.exportSingleValue(this.getOutputsLocked(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getIsReadyOrError\", (handle) => {\n return parent.exportSingleValue(this.getIsReadyOrError(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getIsFinal\", (handle) => {\n return parent.exportSingleValue(this.getIsFinal(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getError\", (handle) => {\n return parent.exportSingleValue(this.getError(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"listInputFields\", (handle) => {\n return parent.exportObjectViaJson(this.listInputFields(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"listOutputFields\", (handle) => {\n return parent.exportObjectViaJson(this.listInputFields(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"listDynamicFields\", (handle) => {\n return parent.exportObjectViaJson(this.listInputFields(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getKeyValueBase64\", (handle, key) => {\n return parent.exportSingleValue(\n this.getKeyValueBase64(vm.getString(handle), vm.getString(key)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getKeyValueAsString\", (handle, key) => {\n return parent.exportSingleValue(\n this.getKeyValueAsString(vm.getString(handle), vm.getString(key)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getDataBase64\", (handle) => {\n return parent.exportSingleValue(this.getDataBase64(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getDataAsString\", (handle) => {\n return parent.exportSingleValue(this.getDataAsString(vm.getString(handle)), undefined);\n });\n\n //\n // Accessor helpers\n //\n\n exportCtxFunction(\n \"parsePObjectCollection\",\n (handle, errorOnUnknownField, prefix, ...resolveSteps) => {\n return parent.exportObjectUniversal(\n this.parsePObjectCollection(\n vm.getString(handle),\n vm.dump(errorOnUnknownField) as boolean,\n vm.getString(prefix),\n ...resolveSteps.map((stepHandle) => vm.getString(stepHandle)),\n ),\n undefined,\n );\n },\n );\n\n //\n // Blobs\n //\n\n exportCtxFunction(\"getBlobContentAsBase64\", (handle, range) => {\n return parent.exportSingleValue(\n this.getBlobContentAsBase64(\n vm.getString(handle),\n parent.importObjectUniversal(range) as RangeBytes | undefined,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"getBlobContentAsString\", (handle, range) => {\n return parent.exportSingleValue(\n this.getBlobContentAsString(\n vm.getString(handle),\n parent.importObjectUniversal(range) as RangeBytes | undefined,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"getDownloadedBlobContentHandle\", (handle) => {\n return parent.exportSingleValue(\n this.getDownloadedBlobContentHandle(vm.getString(handle)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getOnDemandBlobContentHandle\", (handle) => {\n return parent.exportSingleValue(\n this.getOnDemandBlobContentHandle(vm.getString(handle)),\n undefined,\n );\n });\n\n //\n // Blobs to URLs\n //\n\n exportCtxFunction(\"extractArchiveAndGetURL\", (handle, format) => {\n return parent.exportSingleValue(\n this.extractArchiveAndGetURL(vm.getString(handle), vm.getString(format) as ArchiveFormat),\n undefined,\n );\n });\n\n //\n // ImportProgress\n //\n\n exportCtxFunction(\"getImportProgress\", (handle) => {\n return parent.exportSingleValue(this.getImportProgress(vm.getString(handle)), undefined);\n });\n\n //\n // Logs\n //\n\n exportCtxFunction(\"getLastLogs\", (handle, nLines) => {\n return parent.exportSingleValue(\n this.getLastLogs(vm.getString(handle), vm.getNumber(nLines)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getProgressLog\", (handle, patternToSearch) => {\n return parent.exportSingleValue(\n this.getProgressLog(vm.getString(handle), vm.getString(patternToSearch)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getProgressLogWithInfo\", (handle, patternToSearch) => {\n return parent.exportSingleValue(\n this.getProgressLogWithInfo(vm.getString(handle), vm.getString(patternToSearch)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getLogHandle\", (handle) => {\n return parent.exportSingleValue(this.getLogHandle(vm.getString(handle)), undefined);\n });\n\n //\n // Blocks\n //\n\n exportCtxFunction(\"getBlockLabel\", (blockId) => {\n return parent.exportSingleValue(this.getBlockLabel(vm.getString(blockId)), undefined);\n });\n\n //\n // Result pool\n //\n\n exportCtxFunction(\"getDataFromResultPool\", () => {\n return parent.exportObjectUniversal(this.getDataFromResultPool(), undefined);\n });\n\n exportCtxFunction(\"getDataWithErrorsFromResultPool\", () => {\n return parent.exportObjectUniversal(this.getDataWithErrorsFromResultPool(), undefined);\n });\n\n exportCtxFunction(\"getSpecsFromResultPool\", () => {\n return parent.exportObjectUniversal(this.getSpecsFromResultPool(), undefined);\n });\n\n exportCtxFunction(\"calculateOptions\", (predicate) => {\n return parent.exportObjectUniversal(\n this.calculateOptions(parent.importObjectViaJson(predicate) as PSpecPredicate),\n undefined,\n );\n });\n\n exportCtxFunction(\"getSpecFromResultPoolByRef\", (blockId, exportName) => {\n return parent.exportObjectUniversal(\n this.getSpecFromResultPoolByRef(vm.getString(blockId), vm.getString(exportName)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getDataFromResultPoolByRef\", (blockId, exportName) => {\n return parent.exportObjectUniversal(\n this.getDataFromResultPoolByRef(vm.getString(blockId), vm.getString(exportName)),\n undefined,\n );\n });\n\n //\n // PFrames / PTables\n //\n\n exportCtxFunction(\"createPFrame\", (def) => {\n return parent.exportSingleValue(\n this.createPFrame(\n parent.importObjectViaJson(def) as PFrameDef<PColumn<string | PColumnValues>>,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"createPTable\", (def) => {\n return parent.exportSingleValue(\n this.createPTable(\n parent.importObjectViaJson(def) as PTableDef<PColumn<string | PColumnValues>>,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"createPTableV2\", (def) => {\n return parent.exportSingleValue(\n this.createPTableV2(\n parent.importObjectViaJson(def) as PTableDefV2<PColumn<string | PColumnValues>>,\n ),\n undefined,\n );\n });\n\n //\n // Computable\n //\n\n exportCtxFunction(\"getCurrentUnstableMarker\", () => {\n return parent.exportSingleValue(this.getCurrentUnstableMarker(), undefined);\n });\n\n //\n // Logging\n //\n\n exportCtxFunction(\"logInfo\", (message) => {\n this.logInfo(vm.getString(message));\n });\n\n exportCtxFunction(\"logWarn\", (message) => {\n this.logWarn(vm.getString(message));\n });\n\n exportCtxFunction(\"logError\", (message) => {\n this.logError(vm.getString(message));\n });\n });\n }\n}\n"],"names":["parseFinalPObjectCollection","mapPObjectData","randomUUID","Computable","notEmpty","mapValueInVOE","mapPTableDef","mapPTableDefV2","isDataInfo","mapDataInfo","Scope","checkBlockFlag"],"mappings":"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"}
1
+ {"version":3,"file":"computable_context.cjs","sources":["../../src/js_render/computable_context.ts"],"sourcesContent":["import type { ComputableCtx } from \"@milaboratories/computable\";\nimport { Computable } from \"@milaboratories/computable\";\nimport type { PlTreeNodeAccessor } from \"@milaboratories/pl-tree\";\nimport { checkBlockFlag } from \"@platforma-sdk/model\";\nimport type {\n ArchiveFormat,\n CommonFieldTraverseOps as CommonFieldTraverseOpsFromSDK,\n DataInfo,\n FieldTraversalStep as FieldTraversalStepFromSDK,\n Option,\n PColumn,\n PColumnValues,\n PFrameDef,\n PFrameHandle,\n PObject,\n PObjectSpec,\n PSpecPredicate,\n PTableDef,\n PTableDefV2,\n PTableHandle,\n ResourceType as ResourceTypeFromSDK,\n ResultCollection,\n ValueOrError,\n RangeBytes,\n BlockCodeKnownFeatureFlags,\n JsRenderInternal,\n} from \"@platforma-sdk/model\";\nimport {\n isDataInfo,\n mapDataInfo,\n mapPObjectData,\n mapPTableDef,\n mapPTableDefV2,\n mapValueInVOE,\n} from \"@platforma-sdk/model\";\nimport { notEmpty } from \"@milaboratories/ts-helpers\";\nimport { randomUUID } from \"node:crypto\";\nimport type { Optional } from \"utility-types\";\nimport type { BlockContextAny } from \"../middle_layer/block_ctx\";\nimport type { MiddleLayerEnvironment } from \"../middle_layer/middle_layer\";\nimport type { Block } from \"../model/project_model\";\nimport { parseFinalPObjectCollection } from \"../pool/p_object_collection\";\nimport type { ResultPool } from \"../pool/result_pool\";\nimport type { JsExecutionContext } from \"./context\";\nimport type { VmFunctionImplementation } from \"quickjs-emscripten\";\nimport { Scope, type QuickJSHandle } from \"quickjs-emscripten\";\n\nfunction bytesToBase64(data: Uint8Array | undefined): string | undefined {\n return data !== undefined ? Buffer.from(data).toString(\"base64\") : undefined;\n}\n\nexport class ComputableContextHelper implements JsRenderInternal.GlobalCfgRenderCtxMethods<\n string,\n string\n> {\n public readonly computablesToResolve: Record<string, Computable<unknown>> = {};\n\n private computableCtx: ComputableCtx | undefined;\n private readonly accessors = new Map<string, PlTreeNodeAccessor | undefined>();\n\n private readonly meta: Map<string, Block>;\n\n constructor(\n private readonly parent: JsExecutionContext,\n private readonly blockCtx: BlockContextAny,\n private readonly env: MiddleLayerEnvironment,\n private readonly featureFlags: BlockCodeKnownFeatureFlags | undefined,\n computableCtx: ComputableCtx,\n ) {\n this.computableCtx = computableCtx;\n this.meta = blockCtx.blockMeta(computableCtx);\n }\n\n public resetComputableCtx() {\n this.computableCtx = undefined;\n this.accessors.clear();\n }\n\n //\n // Methods for injected ctx object\n //\n\n getAccessorHandleByName(name: string): string | undefined {\n if (this.computableCtx === undefined)\n throw new Error(\"Accessors can't be used in this context\");\n const wellKnownAccessor = (name: string, ctxKey: \"staging\" | \"prod\"): string | undefined => {\n if (!this.accessors.has(name)) {\n const lambda = this.blockCtx[ctxKey];\n if (lambda === undefined) throw new Error(\"Staging context not available\");\n const entry = lambda(this.computableCtx!);\n if (!entry) this.accessors.set(name, undefined);\n else\n this.accessors.set(name, this.computableCtx!.accessor(entry).node({ ignoreError: true }));\n }\n return this.accessors.get(name) ? name : undefined;\n };\n if (name === \"staging\") return wellKnownAccessor(\"staging\", \"staging\");\n else if (name === \"main\") return wellKnownAccessor(\"main\", \"prod\");\n return undefined;\n }\n\n //\n // Accessors\n //\n\n resolveWithCommon(\n handle: string,\n commonOptions: CommonFieldTraverseOpsFromSDK,\n ...steps: (FieldTraversalStepFromSDK | string)[]\n ): string | undefined {\n return this.wrapAccessor(this.getAccessor(handle).traverseWithCommon(commonOptions, ...steps));\n }\n\n getResourceType(handle: string): ResourceTypeFromSDK {\n return this.getAccessor(handle).resourceType;\n }\n\n getInputsLocked(handle: string): boolean {\n return this.getAccessor(handle).getInputsLocked();\n }\n\n getOutputsLocked(handle: string): boolean {\n return this.getAccessor(handle).getOutputsLocked();\n }\n\n getIsReadyOrError(handle: string): boolean {\n return this.getAccessor(handle).getIsReadyOrError();\n }\n\n getIsFinal(handle: string): boolean {\n return this.getAccessor(handle).getIsFinal();\n }\n\n getError(handle: string): string | undefined {\n return this.wrapAccessor(this.getAccessor(handle).getError());\n }\n\n listInputFields(handle: string): string[] {\n return this.getAccessor(handle).listInputFields();\n }\n\n listOutputFields(handle: string): string[] {\n return this.getAccessor(handle).listOutputFields();\n }\n\n listDynamicFields(handle: string): string[] {\n return this.getAccessor(handle).listDynamicFields();\n }\n\n getKeyValueBase64(handle: string, key: string): string | undefined {\n return bytesToBase64(this.getAccessor(handle).getKeyValue(key));\n }\n\n getKeyValueAsString(handle: string, key: string): string | undefined {\n return this.getAccessor(handle).getKeyValueAsString(key);\n }\n\n getDataBase64(handle: string): string | undefined {\n return bytesToBase64(this.getAccessor(handle).getData());\n }\n\n getDataAsString(handle: string): string | undefined {\n return this.getAccessor(handle).getDataAsString();\n }\n\n //\n // Accessor helpers\n //\n\n parsePObjectCollection(\n handle: string,\n errorOnUnknownField: boolean,\n prefix: string,\n ...resolveSteps: string[]\n ): Record<string, PObject<string>> | undefined {\n const acc = this.getAccessor(handle);\n if (!acc.getIsReadyOrError()) return undefined;\n const accResult = parseFinalPObjectCollection(acc, errorOnUnknownField, prefix, resolveSteps);\n const result: Record<string, PObject<string>> = {};\n for (const [key, obj] of Object.entries(accResult)) {\n result[key] = mapPObjectData(obj, (d) => this.wrapAccessor(d));\n }\n return result;\n }\n\n //\n // Blobs\n //\n\n private registerComputable(hPrefix: string, computable: Computable<unknown>): string {\n const fHandle = `${hPrefix}_${randomUUID()}`;\n this.computablesToResolve[fHandle] = computable;\n return fHandle;\n }\n\n public getBlobContentAsString(handle: string, range?: RangeBytes): string {\n const resourceInfo = this.getAccessor(handle).resourceInfo;\n return this.registerComputable(\n \"getBlobContentAsString\",\n Computable.make((ctx) => this.env.driverKit.blobDriver.getDownloadedBlob(resourceInfo, ctx), {\n postprocessValue: async (value) => {\n if (value === undefined) return undefined;\n return Buffer.from(\n await this.env.driverKit.blobDriver.getContent(value.handle, range),\n ).toString(\"utf-8\");\n },\n }),\n );\n }\n\n public getBlobContentAsBase64(handle: string, range?: RangeBytes): string {\n const resourceInfo = this.getAccessor(handle).resourceInfo;\n return this.registerComputable(\n \"getBlobContentAsBase64\",\n Computable.make((ctx) => this.env.driverKit.blobDriver.getDownloadedBlob(resourceInfo, ctx), {\n postprocessValue: async (value) => {\n if (value === undefined) return undefined;\n return Buffer.from(\n await this.env.driverKit.blobDriver.getContent(value.handle, range),\n ).toString(\"base64\");\n },\n }),\n );\n }\n\n public getDownloadedBlobContentHandle(handle: string): string {\n const resourceInfo = this.getAccessor(handle).resourceInfo;\n return this.registerComputable(\n \"getDownloadedBlobContentHandle\",\n this.env.driverKit.blobDriver.getDownloadedBlob(resourceInfo),\n );\n }\n\n public getOnDemandBlobContentHandle(handle: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getOnDemandBlobContentHandle\",\n this.env.driverKit.blobDriver.getOnDemandBlob(resource),\n );\n }\n\n //\n // Blobs to URLs\n //\n\n public extractArchiveAndGetURL(handle: string, format: ArchiveFormat): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"extractArchiveAndGetURL\",\n this.env.driverKit.blobToURLDriver.extractArchiveAndGetURL(resource, format),\n );\n }\n\n //\n // Import progress\n //\n\n getImportProgress(handle: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getImportProgress\",\n this.env.driverKit.uploadDriver.getProgressId(resource),\n );\n }\n\n //\n // Logs\n //\n\n getLastLogs(handle: string, nLines: number): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getLastLogs\",\n this.env.driverKit.logDriver.getLastLogs(resource, nLines),\n );\n }\n\n getProgressLog(handle: string, patternToSearch: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getProgressLog\",\n this.env.driverKit.logDriver.getProgressLog(resource, patternToSearch),\n );\n }\n\n getProgressLogWithInfo(handle: string, patternToSearch: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getProgressLogWithInfo\",\n this.env.driverKit.logDriver.getProgressLogWithInfo(resource, patternToSearch),\n );\n }\n\n getLogHandle(handle: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getLogHandle\",\n this.env.driverKit.logDriver.getLogHandle(resource),\n );\n }\n\n //\n // Blocks\n //\n\n public getBlockLabel(blockId: string): string {\n const b = this.meta.get(blockId);\n if (b === undefined) throw new Error(`Block ${blockId} not found.`);\n return b.label;\n }\n\n //\n // Result Pool\n //\n\n private _resultPool: ResultPool | undefined = undefined;\n private get resultPool(): ResultPool {\n if (this._resultPool === undefined) {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't use result pool in this context (most porbably called from the future mapper)\",\n );\n this._resultPool = notEmpty(\n this.blockCtx.getResultsPool,\n \"getResultsPool\",\n )(this.computableCtx);\n }\n return this._resultPool;\n }\n\n public calculateOptions(predicate: PSpecPredicate): Option[] {\n return this.resultPool.calculateOptions(predicate);\n }\n\n public getDataFromResultPool(): ResultCollection<PObject<string>> {\n const collection = this.resultPool.getData();\n if (collection.instabilityMarker !== undefined)\n this.computableCtx!.markUnstable(`incomplete_result_pool:${collection.instabilityMarker}`);\n return {\n isComplete: collection.isComplete,\n entries: collection.entries.map((e) => ({\n ref: e.ref,\n obj: mapPObjectData(e.obj, (d) => this.wrapAccessor(d)),\n })),\n };\n }\n\n public getDataWithErrorsFromResultPool(): ResultCollection<\n Optional<PObject<ValueOrError<string, Error>>, \"id\">\n > {\n const collection = this.resultPool.getDataWithErrors();\n if (collection.instabilityMarker !== undefined)\n this.computableCtx!.markUnstable(`incomplete_result_pool:${collection.instabilityMarker}`);\n return {\n isComplete: collection.isComplete,\n entries: collection.entries.map((e) => ({\n ref: e.ref,\n obj: {\n id: e.obj.id,\n spec: e.obj.spec,\n data: mapValueInVOE(e.obj.data, (d) => this.wrapAccessor(d)),\n },\n })),\n };\n }\n\n public getSpecsFromResultPool(): ResultCollection<PObjectSpec> {\n const specs = this.resultPool.getSpecs();\n if (specs.instabilityMarker !== undefined)\n this.computableCtx!.markUnstable(`specs_from_pool_incomplete:${specs.instabilityMarker}`);\n return specs;\n }\n\n getSpecFromResultPoolByRef(blockId: string, exportName: string): PObjectSpec | undefined {\n return this.resultPool.getSpecByRef(blockId, exportName);\n }\n\n getDataFromResultPoolByRef(blockId: string, exportName: string): PObject<string> | undefined {\n return mapPObjectData(this.resultPool.getDataByRef(blockId, exportName), (acc) =>\n this.wrapAccessor(acc),\n );\n }\n\n //\n // PFrames / PTables\n //\n\n public createPFrame(\n def: PFrameDef<PColumn<string | PColumnValues | DataInfo<string>>>,\n ): PFrameHandle {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't instantiate PFrames from this context (most porbably called from the future mapper)\",\n );\n const { key, unref } = this.env.driverKit.pFrameDriver.createPFrame(\n def.map((c) => mapPObjectData(c, (d) => this.transformInputPData(d))),\n );\n this.computableCtx.addOnDestroy(unref);\n return key;\n }\n\n public createPTable(\n def: PTableDef<PColumn<string | PColumnValues | DataInfo<string>>>,\n ): PTableHandle {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't instantiate PTable from this context (most porbably called from the future mapper)\",\n );\n const { key, unref } = this.env.driverKit.pFrameDriver.createPTable(\n mapPTableDef(def, (c) => mapPObjectData(c, (d) => this.transformInputPData(d))),\n );\n this.computableCtx.addOnDestroy(unref);\n return key;\n }\n public createPTableV2(\n def: PTableDefV2<PColumn<string | PColumnValues | DataInfo<string>>>,\n ): PTableHandle {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't instantiate PTable from this context (most porbably called from the future mapper)\",\n );\n const { key, unref } = this.env.driverKit.pFrameDriver.createPTableV2(\n mapPTableDefV2(def, (c) => mapPObjectData(c, (d) => this.transformInputPData(d))),\n );\n this.computableCtx.addOnDestroy(unref);\n return key;\n }\n\n /**\n * Transforms input data for PFrame/PTable creation\n * - Converts string handles to accessors\n * - Maps accessors in DataInfo objects\n * - Passes through other values\n */\n private transformInputPData(\n d: string | PColumnValues | DataInfo<string>,\n ): PlTreeNodeAccessor | PColumnValues | DataInfo<PlTreeNodeAccessor> {\n if (typeof d === \"string\") {\n return this.getAccessor(d);\n } else if (isDataInfo(d)) {\n return mapDataInfo(d, (a) => this.getAccessor(a));\n } else {\n return d;\n }\n }\n\n //\n // Computable\n //\n\n public getCurrentUnstableMarker(): string | undefined {\n return this.computableCtx?.unstableMarker;\n }\n\n //\n // Logging\n //\n\n public logInfo(message: string): void {\n this.env.blockEventDispatcher.logInfo(this.blockCtx.blockId, message);\n }\n\n public logWarn(message: string): void {\n this.env.blockEventDispatcher.logWarn(this.blockCtx.blockId, message);\n }\n\n public logError(message: string): void {\n this.env.blockEventDispatcher.logError(this.blockCtx.blockId, message);\n }\n\n //\n // Helpers\n //\n\n private getAccessor(handle: string): PlTreeNodeAccessor {\n const accessor = this.accessors.get(handle);\n if (accessor === undefined) throw new Error(\"No such accessor\");\n return accessor;\n }\n\n private wrapAccessor(accessor: PlTreeNodeAccessor): string;\n private wrapAccessor(accessor: PlTreeNodeAccessor | undefined): string | undefined;\n private wrapAccessor(accessor: PlTreeNodeAccessor | undefined): string | undefined {\n if (accessor === undefined) return undefined;\n else {\n const nextHandle = randomUUID();\n this.accessors.set(nextHandle, accessor);\n return nextHandle;\n }\n }\n\n public injectCtx(configCtx: QuickJSHandle): void {\n const parent = this.parent;\n const vm = parent.vm;\n\n Scope.withScope((localScope) => {\n // Exporting methods\n\n const exportCtxFunction = (\n name: string,\n fn: VmFunctionImplementation<QuickJSHandle>,\n ): void => {\n const withCachedError: VmFunctionImplementation<QuickJSHandle> = (...args) => {\n // QuickJS strips all fields from errors apart from 'name' and 'message'.\n // That's why here we need to store them, and rethrow them when we exit\n // from QuickJS code.\n try {\n return (fn as any)(...args);\n } catch (e: unknown) {\n const newErr = parent.errorRepo.setAndRecreateForQuickJS(e);\n throw vm.newError(newErr);\n }\n };\n\n vm.newFunction(name, withCachedError).consume((fnh) => vm.setProp(configCtx, name, fnh));\n vm.newFunction(name, fn).consume((fnh) =>\n vm.setProp(configCtx, name + \"__internal__\", fnh),\n );\n };\n\n // Check if this is a v1/v2 block (requiresModelAPIVersion !== 2)\n // For v1/v2 blocks, state is {args, uiState} and we need to inject uiState separately\n const isLegacyBlock = !checkBlockFlag(this.featureFlags, \"requiresModelAPIVersion\", 2);\n\n // Helper to extract uiState from legacy state format {args, uiState}\n const extractUiState = (stateJson: string | undefined): string => {\n if (!stateJson) return \"{}\";\n try {\n const parsed = JSON.parse(stateJson);\n return JSON.stringify(parsed?.uiState ?? {});\n } catch {\n return \"{}\";\n }\n };\n\n if (checkBlockFlag(this.featureFlags, \"supportsLazyState\")) {\n // injecting lazy state functions\n exportCtxFunction(\"args\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.args outside the future lambda. Can't be directly used in this context.`,\n );\n const args = this.blockCtx.args(this.computableCtx);\n return args === undefined ? vm.undefined : vm.newString(args);\n });\n exportCtxFunction(\"blockStorage\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.blockStorage outside the future lambda. Can't be directly used in this context.`,\n );\n return vm.newString(this.blockCtx.blockStorage(this.computableCtx) ?? \"{}\");\n });\n exportCtxFunction(\"data\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.data outside the future lambda. Can't be directly used in this context.`,\n );\n return vm.newString(this.blockCtx.data(this.computableCtx) ?? \"{}\");\n });\n exportCtxFunction(\"activeArgs\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.activeArgs outside the future lambda. Can't be directly used in this context.`,\n );\n const res = this.blockCtx.activeArgs(this.computableCtx);\n return res === undefined ? vm.undefined : vm.newString(res);\n });\n // For v1/v2 blocks, also inject uiState (extracted from state.uiState)\n if (isLegacyBlock) {\n exportCtxFunction(\"uiState\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.uiState outside the future lambda. Can't be directly used in this context.`,\n );\n return vm.newString(extractUiState(this.blockCtx.data(this.computableCtx)));\n });\n }\n } else {\n const args = this.blockCtx.args(this.computableCtx!);\n const activeArgs = this.blockCtx.activeArgs(this.computableCtx!);\n const data = this.blockCtx.data(this.computableCtx!);\n if (args !== undefined) {\n vm.setProp(configCtx, \"args\", localScope.manage(vm.newString(args)));\n }\n vm.setProp(configCtx, \"data\", localScope.manage(vm.newString(data ?? \"{}\")));\n if (activeArgs !== undefined)\n vm.setProp(configCtx, \"activeArgs\", localScope.manage(vm.newString(activeArgs)));\n // For v1/v2 blocks, also inject uiState (extracted from state.uiState)\n if (isLegacyBlock) {\n vm.setProp(configCtx, \"uiState\", localScope.manage(vm.newString(extractUiState(data))));\n }\n }\n\n //\n // Methods for injected ctx object\n //\n\n exportCtxFunction(\"getAccessorHandleByName\", (name) => {\n return parent.exportSingleValue(\n this.getAccessorHandleByName(vm.getString(name)),\n undefined,\n );\n });\n\n //\n // Accessors\n //\n\n exportCtxFunction(\"resolveWithCommon\", (handle, commonOptions, ...steps) => {\n return parent.exportSingleValue(\n this.resolveWithCommon(\n vm.getString(handle),\n parent.importObjectViaJson(commonOptions) as CommonFieldTraverseOpsFromSDK,\n ...steps.map(\n (step) => parent.importObjectViaJson(step) as FieldTraversalStepFromSDK | string,\n ),\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"getResourceType\", (handle) => {\n return parent.exportObjectViaJson(this.getResourceType(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getInputsLocked\", (handle) => {\n return parent.exportSingleValue(this.getInputsLocked(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getOutputsLocked\", (handle) => {\n return parent.exportSingleValue(this.getOutputsLocked(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getIsReadyOrError\", (handle) => {\n return parent.exportSingleValue(this.getIsReadyOrError(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getIsFinal\", (handle) => {\n return parent.exportSingleValue(this.getIsFinal(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getError\", (handle) => {\n return parent.exportSingleValue(this.getError(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"listInputFields\", (handle) => {\n return parent.exportObjectViaJson(this.listInputFields(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"listOutputFields\", (handle) => {\n return parent.exportObjectViaJson(this.listInputFields(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"listDynamicFields\", (handle) => {\n return parent.exportObjectViaJson(this.listInputFields(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getKeyValueBase64\", (handle, key) => {\n return parent.exportSingleValue(\n this.getKeyValueBase64(vm.getString(handle), vm.getString(key)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getKeyValueAsString\", (handle, key) => {\n return parent.exportSingleValue(\n this.getKeyValueAsString(vm.getString(handle), vm.getString(key)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getDataBase64\", (handle) => {\n return parent.exportSingleValue(this.getDataBase64(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getDataAsString\", (handle) => {\n return parent.exportSingleValue(this.getDataAsString(vm.getString(handle)), undefined);\n });\n\n //\n // Accessor helpers\n //\n\n exportCtxFunction(\n \"parsePObjectCollection\",\n (handle, errorOnUnknownField, prefix, ...resolveSteps) => {\n return parent.exportObjectUniversal(\n this.parsePObjectCollection(\n vm.getString(handle),\n vm.dump(errorOnUnknownField) as boolean,\n vm.getString(prefix),\n ...resolveSteps.map((stepHandle) => vm.getString(stepHandle)),\n ),\n undefined,\n );\n },\n );\n\n //\n // Blobs\n //\n\n exportCtxFunction(\"getBlobContentAsBase64\", (handle, range) => {\n return parent.exportSingleValue(\n this.getBlobContentAsBase64(\n vm.getString(handle),\n parent.importObjectUniversal(range) as RangeBytes | undefined,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"getBlobContentAsString\", (handle, range) => {\n return parent.exportSingleValue(\n this.getBlobContentAsString(\n vm.getString(handle),\n parent.importObjectUniversal(range) as RangeBytes | undefined,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"getDownloadedBlobContentHandle\", (handle) => {\n return parent.exportSingleValue(\n this.getDownloadedBlobContentHandle(vm.getString(handle)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getOnDemandBlobContentHandle\", (handle) => {\n return parent.exportSingleValue(\n this.getOnDemandBlobContentHandle(vm.getString(handle)),\n undefined,\n );\n });\n\n //\n // Blobs to URLs\n //\n\n exportCtxFunction(\"extractArchiveAndGetURL\", (handle, format) => {\n return parent.exportSingleValue(\n this.extractArchiveAndGetURL(vm.getString(handle), vm.getString(format) as ArchiveFormat),\n undefined,\n );\n });\n\n //\n // ImportProgress\n //\n\n exportCtxFunction(\"getImportProgress\", (handle) => {\n return parent.exportSingleValue(this.getImportProgress(vm.getString(handle)), undefined);\n });\n\n //\n // Logs\n //\n\n exportCtxFunction(\"getLastLogs\", (handle, nLines) => {\n return parent.exportSingleValue(\n this.getLastLogs(vm.getString(handle), vm.getNumber(nLines)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getProgressLog\", (handle, patternToSearch) => {\n return parent.exportSingleValue(\n this.getProgressLog(vm.getString(handle), vm.getString(patternToSearch)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getProgressLogWithInfo\", (handle, patternToSearch) => {\n return parent.exportSingleValue(\n this.getProgressLogWithInfo(vm.getString(handle), vm.getString(patternToSearch)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getLogHandle\", (handle) => {\n return parent.exportSingleValue(this.getLogHandle(vm.getString(handle)), undefined);\n });\n\n //\n // Blocks\n //\n\n exportCtxFunction(\"getBlockLabel\", (blockId) => {\n return parent.exportSingleValue(this.getBlockLabel(vm.getString(blockId)), undefined);\n });\n\n //\n // Result pool\n //\n\n exportCtxFunction(\"getDataFromResultPool\", () => {\n return parent.exportObjectUniversal(this.getDataFromResultPool(), undefined);\n });\n\n exportCtxFunction(\"getDataWithErrorsFromResultPool\", () => {\n return parent.exportObjectUniversal(this.getDataWithErrorsFromResultPool(), undefined);\n });\n\n exportCtxFunction(\"getSpecsFromResultPool\", () => {\n return parent.exportObjectUniversal(this.getSpecsFromResultPool(), undefined);\n });\n\n exportCtxFunction(\"calculateOptions\", (predicate) => {\n return parent.exportObjectUniversal(\n this.calculateOptions(parent.importObjectViaJson(predicate) as PSpecPredicate),\n undefined,\n );\n });\n\n exportCtxFunction(\"getSpecFromResultPoolByRef\", (blockId, exportName) => {\n return parent.exportObjectUniversal(\n this.getSpecFromResultPoolByRef(vm.getString(blockId), vm.getString(exportName)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getDataFromResultPoolByRef\", (blockId, exportName) => {\n return parent.exportObjectUniversal(\n this.getDataFromResultPoolByRef(vm.getString(blockId), vm.getString(exportName)),\n undefined,\n );\n });\n\n //\n // PFrames / PTables\n //\n\n exportCtxFunction(\"createPFrame\", (def) => {\n return parent.exportSingleValue(\n this.createPFrame(\n parent.importObjectViaJson(def) as PFrameDef<PColumn<string | PColumnValues>>,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"createPTable\", (def) => {\n return parent.exportSingleValue(\n this.createPTable(\n parent.importObjectViaJson(def) as PTableDef<PColumn<string | PColumnValues>>,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"createPTableV2\", (def) => {\n return parent.exportSingleValue(\n this.createPTableV2(\n parent.importObjectViaJson(def) as PTableDefV2<PColumn<string | PColumnValues>>,\n ),\n undefined,\n );\n });\n\n //\n // Computable\n //\n\n exportCtxFunction(\"getCurrentUnstableMarker\", () => {\n return parent.exportSingleValue(this.getCurrentUnstableMarker(), undefined);\n });\n\n //\n // Logging\n //\n\n exportCtxFunction(\"logInfo\", (message) => {\n this.logInfo(vm.getString(message));\n });\n\n exportCtxFunction(\"logWarn\", (message) => {\n this.logWarn(vm.getString(message));\n });\n\n exportCtxFunction(\"logError\", (message) => {\n this.logError(vm.getString(message));\n });\n });\n }\n}\n"],"names":["parseFinalPObjectCollection","mapPObjectData","randomUUID","Computable","notEmpty","mapValueInVOE","mapPTableDef","mapPTableDefV2","isDataInfo","mapDataInfo","Scope","checkBlockFlag"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"computable_context.d.ts","sourceRoot":"","sources":["../../src/js_render/computable_context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"computable_context.d.ts","sourceRoot":"","sources":["../../src/js_render/computable_context.ts"],"names":[],"mappings":"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"}
@@ -367,9 +367,14 @@ class ComputableContextHelper {
367
367
  const args = this.blockCtx.args(this.computableCtx);
368
368
  return args === undefined ? vm.undefined : vm.newString(args);
369
369
  });
370
+ exportCtxFunction("blockStorage", () => {
371
+ if (this.computableCtx === undefined)
372
+ throw new Error(`Add dummy call to ctx.blockStorage outside the future lambda. Can't be directly used in this context.`);
373
+ return vm.newString(this.blockCtx.blockStorage(this.computableCtx) ?? "{}");
374
+ });
370
375
  exportCtxFunction("data", () => {
371
376
  if (this.computableCtx === undefined)
372
- throw new Error(`Add dummy call to ctx.state outside the future lambda. Can't be directly used in this context.`);
377
+ throw new Error(`Add dummy call to ctx.data outside the future lambda. Can't be directly used in this context.`);
373
378
  return vm.newString(this.blockCtx.data(this.computableCtx) ?? "{}");
374
379
  });
375
380
  exportCtxFunction("activeArgs", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"computable_context.js","sources":["../../src/js_render/computable_context.ts"],"sourcesContent":["import type { ComputableCtx } from \"@milaboratories/computable\";\nimport { Computable } from \"@milaboratories/computable\";\nimport type { PlTreeNodeAccessor } from \"@milaboratories/pl-tree\";\nimport { checkBlockFlag } from \"@platforma-sdk/model\";\nimport type {\n ArchiveFormat,\n CommonFieldTraverseOps as CommonFieldTraverseOpsFromSDK,\n DataInfo,\n FieldTraversalStep as FieldTraversalStepFromSDK,\n Option,\n PColumn,\n PColumnValues,\n PFrameDef,\n PFrameHandle,\n PObject,\n PObjectSpec,\n PSpecPredicate,\n PTableDef,\n PTableDefV2,\n PTableHandle,\n ResourceType as ResourceTypeFromSDK,\n ResultCollection,\n ValueOrError,\n RangeBytes,\n BlockCodeKnownFeatureFlags,\n JsRenderInternal,\n} from \"@platforma-sdk/model\";\nimport {\n isDataInfo,\n mapDataInfo,\n mapPObjectData,\n mapPTableDef,\n mapPTableDefV2,\n mapValueInVOE,\n} from \"@platforma-sdk/model\";\nimport { notEmpty } from \"@milaboratories/ts-helpers\";\nimport { randomUUID } from \"node:crypto\";\nimport type { Optional } from \"utility-types\";\nimport type { BlockContextAny } from \"../middle_layer/block_ctx\";\nimport type { MiddleLayerEnvironment } from \"../middle_layer/middle_layer\";\nimport type { Block } from \"../model/project_model\";\nimport { parseFinalPObjectCollection } from \"../pool/p_object_collection\";\nimport type { ResultPool } from \"../pool/result_pool\";\nimport type { JsExecutionContext } from \"./context\";\nimport type { VmFunctionImplementation } from \"quickjs-emscripten\";\nimport { Scope, type QuickJSHandle } from \"quickjs-emscripten\";\n\nfunction bytesToBase64(data: Uint8Array | undefined): string | undefined {\n return data !== undefined ? Buffer.from(data).toString(\"base64\") : undefined;\n}\n\nexport class ComputableContextHelper implements JsRenderInternal.GlobalCfgRenderCtxMethods<\n string,\n string\n> {\n public readonly computablesToResolve: Record<string, Computable<unknown>> = {};\n\n private computableCtx: ComputableCtx | undefined;\n private readonly accessors = new Map<string, PlTreeNodeAccessor | undefined>();\n\n private readonly meta: Map<string, Block>;\n\n constructor(\n private readonly parent: JsExecutionContext,\n private readonly blockCtx: BlockContextAny,\n private readonly env: MiddleLayerEnvironment,\n private readonly featureFlags: BlockCodeKnownFeatureFlags | undefined,\n computableCtx: ComputableCtx,\n ) {\n this.computableCtx = computableCtx;\n this.meta = blockCtx.blockMeta(computableCtx);\n }\n\n public resetComputableCtx() {\n this.computableCtx = undefined;\n this.accessors.clear();\n }\n\n //\n // Methods for injected ctx object\n //\n\n getAccessorHandleByName(name: string): string | undefined {\n if (this.computableCtx === undefined)\n throw new Error(\"Accessors can't be used in this context\");\n const wellKnownAccessor = (name: string, ctxKey: \"staging\" | \"prod\"): string | undefined => {\n if (!this.accessors.has(name)) {\n const lambda = this.blockCtx[ctxKey];\n if (lambda === undefined) throw new Error(\"Staging context not available\");\n const entry = lambda(this.computableCtx!);\n if (!entry) this.accessors.set(name, undefined);\n else\n this.accessors.set(name, this.computableCtx!.accessor(entry).node({ ignoreError: true }));\n }\n return this.accessors.get(name) ? name : undefined;\n };\n if (name === \"staging\") return wellKnownAccessor(\"staging\", \"staging\");\n else if (name === \"main\") return wellKnownAccessor(\"main\", \"prod\");\n return undefined;\n }\n\n //\n // Accessors\n //\n\n resolveWithCommon(\n handle: string,\n commonOptions: CommonFieldTraverseOpsFromSDK,\n ...steps: (FieldTraversalStepFromSDK | string)[]\n ): string | undefined {\n return this.wrapAccessor(this.getAccessor(handle).traverseWithCommon(commonOptions, ...steps));\n }\n\n getResourceType(handle: string): ResourceTypeFromSDK {\n return this.getAccessor(handle).resourceType;\n }\n\n getInputsLocked(handle: string): boolean {\n return this.getAccessor(handle).getInputsLocked();\n }\n\n getOutputsLocked(handle: string): boolean {\n return this.getAccessor(handle).getOutputsLocked();\n }\n\n getIsReadyOrError(handle: string): boolean {\n return this.getAccessor(handle).getIsReadyOrError();\n }\n\n getIsFinal(handle: string): boolean {\n return this.getAccessor(handle).getIsFinal();\n }\n\n getError(handle: string): string | undefined {\n return this.wrapAccessor(this.getAccessor(handle).getError());\n }\n\n listInputFields(handle: string): string[] {\n return this.getAccessor(handle).listInputFields();\n }\n\n listOutputFields(handle: string): string[] {\n return this.getAccessor(handle).listOutputFields();\n }\n\n listDynamicFields(handle: string): string[] {\n return this.getAccessor(handle).listDynamicFields();\n }\n\n getKeyValueBase64(handle: string, key: string): string | undefined {\n return bytesToBase64(this.getAccessor(handle).getKeyValue(key));\n }\n\n getKeyValueAsString(handle: string, key: string): string | undefined {\n return this.getAccessor(handle).getKeyValueAsString(key);\n }\n\n getDataBase64(handle: string): string | undefined {\n return bytesToBase64(this.getAccessor(handle).getData());\n }\n\n getDataAsString(handle: string): string | undefined {\n return this.getAccessor(handle).getDataAsString();\n }\n\n //\n // Accessor helpers\n //\n\n parsePObjectCollection(\n handle: string,\n errorOnUnknownField: boolean,\n prefix: string,\n ...resolveSteps: string[]\n ): Record<string, PObject<string>> | undefined {\n const acc = this.getAccessor(handle);\n if (!acc.getIsReadyOrError()) return undefined;\n const accResult = parseFinalPObjectCollection(acc, errorOnUnknownField, prefix, resolveSteps);\n const result: Record<string, PObject<string>> = {};\n for (const [key, obj] of Object.entries(accResult)) {\n result[key] = mapPObjectData(obj, (d) => this.wrapAccessor(d));\n }\n return result;\n }\n\n //\n // Blobs\n //\n\n private registerComputable(hPrefix: string, computable: Computable<unknown>): string {\n const fHandle = `${hPrefix}_${randomUUID()}`;\n this.computablesToResolve[fHandle] = computable;\n return fHandle;\n }\n\n public getBlobContentAsString(handle: string, range?: RangeBytes): string {\n const resourceInfo = this.getAccessor(handle).resourceInfo;\n return this.registerComputable(\n \"getBlobContentAsString\",\n Computable.make((ctx) => this.env.driverKit.blobDriver.getDownloadedBlob(resourceInfo, ctx), {\n postprocessValue: async (value) => {\n if (value === undefined) return undefined;\n return Buffer.from(\n await this.env.driverKit.blobDriver.getContent(value.handle, range),\n ).toString(\"utf-8\");\n },\n }),\n );\n }\n\n public getBlobContentAsBase64(handle: string, range?: RangeBytes): string {\n const resourceInfo = this.getAccessor(handle).resourceInfo;\n return this.registerComputable(\n \"getBlobContentAsBase64\",\n Computable.make((ctx) => this.env.driverKit.blobDriver.getDownloadedBlob(resourceInfo, ctx), {\n postprocessValue: async (value) => {\n if (value === undefined) return undefined;\n return Buffer.from(\n await this.env.driverKit.blobDriver.getContent(value.handle, range),\n ).toString(\"base64\");\n },\n }),\n );\n }\n\n public getDownloadedBlobContentHandle(handle: string): string {\n const resourceInfo = this.getAccessor(handle).resourceInfo;\n return this.registerComputable(\n \"getDownloadedBlobContentHandle\",\n this.env.driverKit.blobDriver.getDownloadedBlob(resourceInfo),\n );\n }\n\n public getOnDemandBlobContentHandle(handle: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getOnDemandBlobContentHandle\",\n this.env.driverKit.blobDriver.getOnDemandBlob(resource),\n );\n }\n\n //\n // Blobs to URLs\n //\n\n public extractArchiveAndGetURL(handle: string, format: ArchiveFormat): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"extractArchiveAndGetURL\",\n this.env.driverKit.blobToURLDriver.extractArchiveAndGetURL(resource, format),\n );\n }\n\n //\n // Import progress\n //\n\n getImportProgress(handle: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getImportProgress\",\n this.env.driverKit.uploadDriver.getProgressId(resource),\n );\n }\n\n //\n // Logs\n //\n\n getLastLogs(handle: string, nLines: number): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getLastLogs\",\n this.env.driverKit.logDriver.getLastLogs(resource, nLines),\n );\n }\n\n getProgressLog(handle: string, patternToSearch: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getProgressLog\",\n this.env.driverKit.logDriver.getProgressLog(resource, patternToSearch),\n );\n }\n\n getProgressLogWithInfo(handle: string, patternToSearch: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getProgressLogWithInfo\",\n this.env.driverKit.logDriver.getProgressLogWithInfo(resource, patternToSearch),\n );\n }\n\n getLogHandle(handle: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getLogHandle\",\n this.env.driverKit.logDriver.getLogHandle(resource),\n );\n }\n\n //\n // Blocks\n //\n\n public getBlockLabel(blockId: string): string {\n const b = this.meta.get(blockId);\n if (b === undefined) throw new Error(`Block ${blockId} not found.`);\n return b.label;\n }\n\n //\n // Result Pool\n //\n\n private _resultPool: ResultPool | undefined = undefined;\n private get resultPool(): ResultPool {\n if (this._resultPool === undefined) {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't use result pool in this context (most porbably called from the future mapper)\",\n );\n this._resultPool = notEmpty(\n this.blockCtx.getResultsPool,\n \"getResultsPool\",\n )(this.computableCtx);\n }\n return this._resultPool;\n }\n\n public calculateOptions(predicate: PSpecPredicate): Option[] {\n return this.resultPool.calculateOptions(predicate);\n }\n\n public getDataFromResultPool(): ResultCollection<PObject<string>> {\n const collection = this.resultPool.getData();\n if (collection.instabilityMarker !== undefined)\n this.computableCtx!.markUnstable(`incomplete_result_pool:${collection.instabilityMarker}`);\n return {\n isComplete: collection.isComplete,\n entries: collection.entries.map((e) => ({\n ref: e.ref,\n obj: mapPObjectData(e.obj, (d) => this.wrapAccessor(d)),\n })),\n };\n }\n\n public getDataWithErrorsFromResultPool(): ResultCollection<\n Optional<PObject<ValueOrError<string, Error>>, \"id\">\n > {\n const collection = this.resultPool.getDataWithErrors();\n if (collection.instabilityMarker !== undefined)\n this.computableCtx!.markUnstable(`incomplete_result_pool:${collection.instabilityMarker}`);\n return {\n isComplete: collection.isComplete,\n entries: collection.entries.map((e) => ({\n ref: e.ref,\n obj: {\n id: e.obj.id,\n spec: e.obj.spec,\n data: mapValueInVOE(e.obj.data, (d) => this.wrapAccessor(d)),\n },\n })),\n };\n }\n\n public getSpecsFromResultPool(): ResultCollection<PObjectSpec> {\n const specs = this.resultPool.getSpecs();\n if (specs.instabilityMarker !== undefined)\n this.computableCtx!.markUnstable(`specs_from_pool_incomplete:${specs.instabilityMarker}`);\n return specs;\n }\n\n getSpecFromResultPoolByRef(blockId: string, exportName: string): PObjectSpec | undefined {\n return this.resultPool.getSpecByRef(blockId, exportName);\n }\n\n getDataFromResultPoolByRef(blockId: string, exportName: string): PObject<string> | undefined {\n return mapPObjectData(this.resultPool.getDataByRef(blockId, exportName), (acc) =>\n this.wrapAccessor(acc),\n );\n }\n\n //\n // PFrames / PTables\n //\n\n public createPFrame(\n def: PFrameDef<PColumn<string | PColumnValues | DataInfo<string>>>,\n ): PFrameHandle {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't instantiate PFrames from this context (most porbably called from the future mapper)\",\n );\n const { key, unref } = this.env.driverKit.pFrameDriver.createPFrame(\n def.map((c) => mapPObjectData(c, (d) => this.transformInputPData(d))),\n );\n this.computableCtx.addOnDestroy(unref);\n return key;\n }\n\n public createPTable(\n def: PTableDef<PColumn<string | PColumnValues | DataInfo<string>>>,\n ): PTableHandle {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't instantiate PTable from this context (most porbably called from the future mapper)\",\n );\n const { key, unref } = this.env.driverKit.pFrameDriver.createPTable(\n mapPTableDef(def, (c) => mapPObjectData(c, (d) => this.transformInputPData(d))),\n );\n this.computableCtx.addOnDestroy(unref);\n return key;\n }\n public createPTableV2(\n def: PTableDefV2<PColumn<string | PColumnValues | DataInfo<string>>>,\n ): PTableHandle {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't instantiate PTable from this context (most porbably called from the future mapper)\",\n );\n const { key, unref } = this.env.driverKit.pFrameDriver.createPTableV2(\n mapPTableDefV2(def, (c) => mapPObjectData(c, (d) => this.transformInputPData(d))),\n );\n this.computableCtx.addOnDestroy(unref);\n return key;\n }\n\n /**\n * Transforms input data for PFrame/PTable creation\n * - Converts string handles to accessors\n * - Maps accessors in DataInfo objects\n * - Passes through other values\n */\n private transformInputPData(\n d: string | PColumnValues | DataInfo<string>,\n ): PlTreeNodeAccessor | PColumnValues | DataInfo<PlTreeNodeAccessor> {\n if (typeof d === \"string\") {\n return this.getAccessor(d);\n } else if (isDataInfo(d)) {\n return mapDataInfo(d, (a) => this.getAccessor(a));\n } else {\n return d;\n }\n }\n\n //\n // Computable\n //\n\n public getCurrentUnstableMarker(): string | undefined {\n return this.computableCtx?.unstableMarker;\n }\n\n //\n // Logging\n //\n\n public logInfo(message: string): void {\n this.env.blockEventDispatcher.logInfo(this.blockCtx.blockId, message);\n }\n\n public logWarn(message: string): void {\n this.env.blockEventDispatcher.logWarn(this.blockCtx.blockId, message);\n }\n\n public logError(message: string): void {\n this.env.blockEventDispatcher.logError(this.blockCtx.blockId, message);\n }\n\n //\n // Helpers\n //\n\n private getAccessor(handle: string): PlTreeNodeAccessor {\n const accessor = this.accessors.get(handle);\n if (accessor === undefined) throw new Error(\"No such accessor\");\n return accessor;\n }\n\n private wrapAccessor(accessor: PlTreeNodeAccessor): string;\n private wrapAccessor(accessor: PlTreeNodeAccessor | undefined): string | undefined;\n private wrapAccessor(accessor: PlTreeNodeAccessor | undefined): string | undefined {\n if (accessor === undefined) return undefined;\n else {\n const nextHandle = randomUUID();\n this.accessors.set(nextHandle, accessor);\n return nextHandle;\n }\n }\n\n public injectCtx(configCtx: QuickJSHandle): void {\n const parent = this.parent;\n const vm = parent.vm;\n\n Scope.withScope((localScope) => {\n // Exporting methods\n\n const exportCtxFunction = (\n name: string,\n fn: VmFunctionImplementation<QuickJSHandle>,\n ): void => {\n const withCachedError: VmFunctionImplementation<QuickJSHandle> = (...args) => {\n // QuickJS strips all fields from errors apart from 'name' and 'message'.\n // That's why here we need to store them, and rethrow them when we exit\n // from QuickJS code.\n try {\n return (fn as any)(...args);\n } catch (e: unknown) {\n const newErr = parent.errorRepo.setAndRecreateForQuickJS(e);\n throw vm.newError(newErr);\n }\n };\n\n vm.newFunction(name, withCachedError).consume((fnh) => vm.setProp(configCtx, name, fnh));\n vm.newFunction(name, fn).consume((fnh) =>\n vm.setProp(configCtx, name + \"__internal__\", fnh),\n );\n };\n\n // Check if this is a v1/v2 block (requiresModelAPIVersion !== 2)\n // For v1/v2 blocks, state is {args, uiState} and we need to inject uiState separately\n const isLegacyBlock = !checkBlockFlag(this.featureFlags, \"requiresModelAPIVersion\", 2);\n\n // Helper to extract uiState from legacy state format {args, uiState}\n const extractUiState = (stateJson: string | undefined): string => {\n if (!stateJson) return \"{}\";\n try {\n const parsed = JSON.parse(stateJson);\n return JSON.stringify(parsed?.uiState ?? {});\n } catch {\n return \"{}\";\n }\n };\n\n if (checkBlockFlag(this.featureFlags, \"supportsLazyState\")) {\n // injecting lazy state functions\n exportCtxFunction(\"args\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.args outside the future lambda. Can't be directly used in this context.`,\n );\n const args = this.blockCtx.args(this.computableCtx);\n return args === undefined ? vm.undefined : vm.newString(args);\n });\n exportCtxFunction(\"data\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.state outside the future lambda. Can't be directly used in this context.`,\n );\n return vm.newString(this.blockCtx.data(this.computableCtx) ?? \"{}\");\n });\n exportCtxFunction(\"activeArgs\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.activeArgs outside the future lambda. Can't be directly used in this context.`,\n );\n const res = this.blockCtx.activeArgs(this.computableCtx);\n return res === undefined ? vm.undefined : vm.newString(res);\n });\n // For v1/v2 blocks, also inject uiState (extracted from state.uiState)\n if (isLegacyBlock) {\n exportCtxFunction(\"uiState\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.uiState outside the future lambda. Can't be directly used in this context.`,\n );\n return vm.newString(extractUiState(this.blockCtx.data(this.computableCtx)));\n });\n }\n } else {\n const args = this.blockCtx.args(this.computableCtx!);\n const activeArgs = this.blockCtx.activeArgs(this.computableCtx!);\n const data = this.blockCtx.data(this.computableCtx!);\n if (args !== undefined) {\n vm.setProp(configCtx, \"args\", localScope.manage(vm.newString(args)));\n }\n vm.setProp(configCtx, \"data\", localScope.manage(vm.newString(data ?? \"{}\")));\n if (activeArgs !== undefined)\n vm.setProp(configCtx, \"activeArgs\", localScope.manage(vm.newString(activeArgs)));\n // For v1/v2 blocks, also inject uiState (extracted from state.uiState)\n if (isLegacyBlock) {\n vm.setProp(configCtx, \"uiState\", localScope.manage(vm.newString(extractUiState(data))));\n }\n }\n\n //\n // Methods for injected ctx object\n //\n\n exportCtxFunction(\"getAccessorHandleByName\", (name) => {\n return parent.exportSingleValue(\n this.getAccessorHandleByName(vm.getString(name)),\n undefined,\n );\n });\n\n //\n // Accessors\n //\n\n exportCtxFunction(\"resolveWithCommon\", (handle, commonOptions, ...steps) => {\n return parent.exportSingleValue(\n this.resolveWithCommon(\n vm.getString(handle),\n parent.importObjectViaJson(commonOptions) as CommonFieldTraverseOpsFromSDK,\n ...steps.map(\n (step) => parent.importObjectViaJson(step) as FieldTraversalStepFromSDK | string,\n ),\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"getResourceType\", (handle) => {\n return parent.exportObjectViaJson(this.getResourceType(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getInputsLocked\", (handle) => {\n return parent.exportSingleValue(this.getInputsLocked(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getOutputsLocked\", (handle) => {\n return parent.exportSingleValue(this.getOutputsLocked(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getIsReadyOrError\", (handle) => {\n return parent.exportSingleValue(this.getIsReadyOrError(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getIsFinal\", (handle) => {\n return parent.exportSingleValue(this.getIsFinal(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getError\", (handle) => {\n return parent.exportSingleValue(this.getError(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"listInputFields\", (handle) => {\n return parent.exportObjectViaJson(this.listInputFields(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"listOutputFields\", (handle) => {\n return parent.exportObjectViaJson(this.listInputFields(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"listDynamicFields\", (handle) => {\n return parent.exportObjectViaJson(this.listInputFields(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getKeyValueBase64\", (handle, key) => {\n return parent.exportSingleValue(\n this.getKeyValueBase64(vm.getString(handle), vm.getString(key)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getKeyValueAsString\", (handle, key) => {\n return parent.exportSingleValue(\n this.getKeyValueAsString(vm.getString(handle), vm.getString(key)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getDataBase64\", (handle) => {\n return parent.exportSingleValue(this.getDataBase64(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getDataAsString\", (handle) => {\n return parent.exportSingleValue(this.getDataAsString(vm.getString(handle)), undefined);\n });\n\n //\n // Accessor helpers\n //\n\n exportCtxFunction(\n \"parsePObjectCollection\",\n (handle, errorOnUnknownField, prefix, ...resolveSteps) => {\n return parent.exportObjectUniversal(\n this.parsePObjectCollection(\n vm.getString(handle),\n vm.dump(errorOnUnknownField) as boolean,\n vm.getString(prefix),\n ...resolveSteps.map((stepHandle) => vm.getString(stepHandle)),\n ),\n undefined,\n );\n },\n );\n\n //\n // Blobs\n //\n\n exportCtxFunction(\"getBlobContentAsBase64\", (handle, range) => {\n return parent.exportSingleValue(\n this.getBlobContentAsBase64(\n vm.getString(handle),\n parent.importObjectUniversal(range) as RangeBytes | undefined,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"getBlobContentAsString\", (handle, range) => {\n return parent.exportSingleValue(\n this.getBlobContentAsString(\n vm.getString(handle),\n parent.importObjectUniversal(range) as RangeBytes | undefined,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"getDownloadedBlobContentHandle\", (handle) => {\n return parent.exportSingleValue(\n this.getDownloadedBlobContentHandle(vm.getString(handle)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getOnDemandBlobContentHandle\", (handle) => {\n return parent.exportSingleValue(\n this.getOnDemandBlobContentHandle(vm.getString(handle)),\n undefined,\n );\n });\n\n //\n // Blobs to URLs\n //\n\n exportCtxFunction(\"extractArchiveAndGetURL\", (handle, format) => {\n return parent.exportSingleValue(\n this.extractArchiveAndGetURL(vm.getString(handle), vm.getString(format) as ArchiveFormat),\n undefined,\n );\n });\n\n //\n // ImportProgress\n //\n\n exportCtxFunction(\"getImportProgress\", (handle) => {\n return parent.exportSingleValue(this.getImportProgress(vm.getString(handle)), undefined);\n });\n\n //\n // Logs\n //\n\n exportCtxFunction(\"getLastLogs\", (handle, nLines) => {\n return parent.exportSingleValue(\n this.getLastLogs(vm.getString(handle), vm.getNumber(nLines)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getProgressLog\", (handle, patternToSearch) => {\n return parent.exportSingleValue(\n this.getProgressLog(vm.getString(handle), vm.getString(patternToSearch)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getProgressLogWithInfo\", (handle, patternToSearch) => {\n return parent.exportSingleValue(\n this.getProgressLogWithInfo(vm.getString(handle), vm.getString(patternToSearch)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getLogHandle\", (handle) => {\n return parent.exportSingleValue(this.getLogHandle(vm.getString(handle)), undefined);\n });\n\n //\n // Blocks\n //\n\n exportCtxFunction(\"getBlockLabel\", (blockId) => {\n return parent.exportSingleValue(this.getBlockLabel(vm.getString(blockId)), undefined);\n });\n\n //\n // Result pool\n //\n\n exportCtxFunction(\"getDataFromResultPool\", () => {\n return parent.exportObjectUniversal(this.getDataFromResultPool(), undefined);\n });\n\n exportCtxFunction(\"getDataWithErrorsFromResultPool\", () => {\n return parent.exportObjectUniversal(this.getDataWithErrorsFromResultPool(), undefined);\n });\n\n exportCtxFunction(\"getSpecsFromResultPool\", () => {\n return parent.exportObjectUniversal(this.getSpecsFromResultPool(), undefined);\n });\n\n exportCtxFunction(\"calculateOptions\", (predicate) => {\n return parent.exportObjectUniversal(\n this.calculateOptions(parent.importObjectViaJson(predicate) as PSpecPredicate),\n undefined,\n );\n });\n\n exportCtxFunction(\"getSpecFromResultPoolByRef\", (blockId, exportName) => {\n return parent.exportObjectUniversal(\n this.getSpecFromResultPoolByRef(vm.getString(blockId), vm.getString(exportName)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getDataFromResultPoolByRef\", (blockId, exportName) => {\n return parent.exportObjectUniversal(\n this.getDataFromResultPoolByRef(vm.getString(blockId), vm.getString(exportName)),\n undefined,\n );\n });\n\n //\n // PFrames / PTables\n //\n\n exportCtxFunction(\"createPFrame\", (def) => {\n return parent.exportSingleValue(\n this.createPFrame(\n parent.importObjectViaJson(def) as PFrameDef<PColumn<string | PColumnValues>>,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"createPTable\", (def) => {\n return parent.exportSingleValue(\n this.createPTable(\n parent.importObjectViaJson(def) as PTableDef<PColumn<string | PColumnValues>>,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"createPTableV2\", (def) => {\n return parent.exportSingleValue(\n this.createPTableV2(\n parent.importObjectViaJson(def) as PTableDefV2<PColumn<string | PColumnValues>>,\n ),\n undefined,\n );\n });\n\n //\n // Computable\n //\n\n exportCtxFunction(\"getCurrentUnstableMarker\", () => {\n return parent.exportSingleValue(this.getCurrentUnstableMarker(), undefined);\n });\n\n //\n // Logging\n //\n\n exportCtxFunction(\"logInfo\", (message) => {\n this.logInfo(vm.getString(message));\n });\n\n exportCtxFunction(\"logWarn\", (message) => {\n this.logWarn(vm.getString(message));\n });\n\n exportCtxFunction(\"logError\", (message) => {\n this.logError(vm.getString(message));\n });\n });\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"computable_context.js","sources":["../../src/js_render/computable_context.ts"],"sourcesContent":["import type { ComputableCtx } from \"@milaboratories/computable\";\nimport { Computable } from \"@milaboratories/computable\";\nimport type { PlTreeNodeAccessor } from \"@milaboratories/pl-tree\";\nimport { checkBlockFlag } from \"@platforma-sdk/model\";\nimport type {\n ArchiveFormat,\n CommonFieldTraverseOps as CommonFieldTraverseOpsFromSDK,\n DataInfo,\n FieldTraversalStep as FieldTraversalStepFromSDK,\n Option,\n PColumn,\n PColumnValues,\n PFrameDef,\n PFrameHandle,\n PObject,\n PObjectSpec,\n PSpecPredicate,\n PTableDef,\n PTableDefV2,\n PTableHandle,\n ResourceType as ResourceTypeFromSDK,\n ResultCollection,\n ValueOrError,\n RangeBytes,\n BlockCodeKnownFeatureFlags,\n JsRenderInternal,\n} from \"@platforma-sdk/model\";\nimport {\n isDataInfo,\n mapDataInfo,\n mapPObjectData,\n mapPTableDef,\n mapPTableDefV2,\n mapValueInVOE,\n} from \"@platforma-sdk/model\";\nimport { notEmpty } from \"@milaboratories/ts-helpers\";\nimport { randomUUID } from \"node:crypto\";\nimport type { Optional } from \"utility-types\";\nimport type { BlockContextAny } from \"../middle_layer/block_ctx\";\nimport type { MiddleLayerEnvironment } from \"../middle_layer/middle_layer\";\nimport type { Block } from \"../model/project_model\";\nimport { parseFinalPObjectCollection } from \"../pool/p_object_collection\";\nimport type { ResultPool } from \"../pool/result_pool\";\nimport type { JsExecutionContext } from \"./context\";\nimport type { VmFunctionImplementation } from \"quickjs-emscripten\";\nimport { Scope, type QuickJSHandle } from \"quickjs-emscripten\";\n\nfunction bytesToBase64(data: Uint8Array | undefined): string | undefined {\n return data !== undefined ? Buffer.from(data).toString(\"base64\") : undefined;\n}\n\nexport class ComputableContextHelper implements JsRenderInternal.GlobalCfgRenderCtxMethods<\n string,\n string\n> {\n public readonly computablesToResolve: Record<string, Computable<unknown>> = {};\n\n private computableCtx: ComputableCtx | undefined;\n private readonly accessors = new Map<string, PlTreeNodeAccessor | undefined>();\n\n private readonly meta: Map<string, Block>;\n\n constructor(\n private readonly parent: JsExecutionContext,\n private readonly blockCtx: BlockContextAny,\n private readonly env: MiddleLayerEnvironment,\n private readonly featureFlags: BlockCodeKnownFeatureFlags | undefined,\n computableCtx: ComputableCtx,\n ) {\n this.computableCtx = computableCtx;\n this.meta = blockCtx.blockMeta(computableCtx);\n }\n\n public resetComputableCtx() {\n this.computableCtx = undefined;\n this.accessors.clear();\n }\n\n //\n // Methods for injected ctx object\n //\n\n getAccessorHandleByName(name: string): string | undefined {\n if (this.computableCtx === undefined)\n throw new Error(\"Accessors can't be used in this context\");\n const wellKnownAccessor = (name: string, ctxKey: \"staging\" | \"prod\"): string | undefined => {\n if (!this.accessors.has(name)) {\n const lambda = this.blockCtx[ctxKey];\n if (lambda === undefined) throw new Error(\"Staging context not available\");\n const entry = lambda(this.computableCtx!);\n if (!entry) this.accessors.set(name, undefined);\n else\n this.accessors.set(name, this.computableCtx!.accessor(entry).node({ ignoreError: true }));\n }\n return this.accessors.get(name) ? name : undefined;\n };\n if (name === \"staging\") return wellKnownAccessor(\"staging\", \"staging\");\n else if (name === \"main\") return wellKnownAccessor(\"main\", \"prod\");\n return undefined;\n }\n\n //\n // Accessors\n //\n\n resolveWithCommon(\n handle: string,\n commonOptions: CommonFieldTraverseOpsFromSDK,\n ...steps: (FieldTraversalStepFromSDK | string)[]\n ): string | undefined {\n return this.wrapAccessor(this.getAccessor(handle).traverseWithCommon(commonOptions, ...steps));\n }\n\n getResourceType(handle: string): ResourceTypeFromSDK {\n return this.getAccessor(handle).resourceType;\n }\n\n getInputsLocked(handle: string): boolean {\n return this.getAccessor(handle).getInputsLocked();\n }\n\n getOutputsLocked(handle: string): boolean {\n return this.getAccessor(handle).getOutputsLocked();\n }\n\n getIsReadyOrError(handle: string): boolean {\n return this.getAccessor(handle).getIsReadyOrError();\n }\n\n getIsFinal(handle: string): boolean {\n return this.getAccessor(handle).getIsFinal();\n }\n\n getError(handle: string): string | undefined {\n return this.wrapAccessor(this.getAccessor(handle).getError());\n }\n\n listInputFields(handle: string): string[] {\n return this.getAccessor(handle).listInputFields();\n }\n\n listOutputFields(handle: string): string[] {\n return this.getAccessor(handle).listOutputFields();\n }\n\n listDynamicFields(handle: string): string[] {\n return this.getAccessor(handle).listDynamicFields();\n }\n\n getKeyValueBase64(handle: string, key: string): string | undefined {\n return bytesToBase64(this.getAccessor(handle).getKeyValue(key));\n }\n\n getKeyValueAsString(handle: string, key: string): string | undefined {\n return this.getAccessor(handle).getKeyValueAsString(key);\n }\n\n getDataBase64(handle: string): string | undefined {\n return bytesToBase64(this.getAccessor(handle).getData());\n }\n\n getDataAsString(handle: string): string | undefined {\n return this.getAccessor(handle).getDataAsString();\n }\n\n //\n // Accessor helpers\n //\n\n parsePObjectCollection(\n handle: string,\n errorOnUnknownField: boolean,\n prefix: string,\n ...resolveSteps: string[]\n ): Record<string, PObject<string>> | undefined {\n const acc = this.getAccessor(handle);\n if (!acc.getIsReadyOrError()) return undefined;\n const accResult = parseFinalPObjectCollection(acc, errorOnUnknownField, prefix, resolveSteps);\n const result: Record<string, PObject<string>> = {};\n for (const [key, obj] of Object.entries(accResult)) {\n result[key] = mapPObjectData(obj, (d) => this.wrapAccessor(d));\n }\n return result;\n }\n\n //\n // Blobs\n //\n\n private registerComputable(hPrefix: string, computable: Computable<unknown>): string {\n const fHandle = `${hPrefix}_${randomUUID()}`;\n this.computablesToResolve[fHandle] = computable;\n return fHandle;\n }\n\n public getBlobContentAsString(handle: string, range?: RangeBytes): string {\n const resourceInfo = this.getAccessor(handle).resourceInfo;\n return this.registerComputable(\n \"getBlobContentAsString\",\n Computable.make((ctx) => this.env.driverKit.blobDriver.getDownloadedBlob(resourceInfo, ctx), {\n postprocessValue: async (value) => {\n if (value === undefined) return undefined;\n return Buffer.from(\n await this.env.driverKit.blobDriver.getContent(value.handle, range),\n ).toString(\"utf-8\");\n },\n }),\n );\n }\n\n public getBlobContentAsBase64(handle: string, range?: RangeBytes): string {\n const resourceInfo = this.getAccessor(handle).resourceInfo;\n return this.registerComputable(\n \"getBlobContentAsBase64\",\n Computable.make((ctx) => this.env.driverKit.blobDriver.getDownloadedBlob(resourceInfo, ctx), {\n postprocessValue: async (value) => {\n if (value === undefined) return undefined;\n return Buffer.from(\n await this.env.driverKit.blobDriver.getContent(value.handle, range),\n ).toString(\"base64\");\n },\n }),\n );\n }\n\n public getDownloadedBlobContentHandle(handle: string): string {\n const resourceInfo = this.getAccessor(handle).resourceInfo;\n return this.registerComputable(\n \"getDownloadedBlobContentHandle\",\n this.env.driverKit.blobDriver.getDownloadedBlob(resourceInfo),\n );\n }\n\n public getOnDemandBlobContentHandle(handle: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getOnDemandBlobContentHandle\",\n this.env.driverKit.blobDriver.getOnDemandBlob(resource),\n );\n }\n\n //\n // Blobs to URLs\n //\n\n public extractArchiveAndGetURL(handle: string, format: ArchiveFormat): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"extractArchiveAndGetURL\",\n this.env.driverKit.blobToURLDriver.extractArchiveAndGetURL(resource, format),\n );\n }\n\n //\n // Import progress\n //\n\n getImportProgress(handle: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getImportProgress\",\n this.env.driverKit.uploadDriver.getProgressId(resource),\n );\n }\n\n //\n // Logs\n //\n\n getLastLogs(handle: string, nLines: number): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getLastLogs\",\n this.env.driverKit.logDriver.getLastLogs(resource, nLines),\n );\n }\n\n getProgressLog(handle: string, patternToSearch: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getProgressLog\",\n this.env.driverKit.logDriver.getProgressLog(resource, patternToSearch),\n );\n }\n\n getProgressLogWithInfo(handle: string, patternToSearch: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getProgressLogWithInfo\",\n this.env.driverKit.logDriver.getProgressLogWithInfo(resource, patternToSearch),\n );\n }\n\n getLogHandle(handle: string): string {\n const resource = this.getAccessor(handle).persist();\n return this.registerComputable(\n \"getLogHandle\",\n this.env.driverKit.logDriver.getLogHandle(resource),\n );\n }\n\n //\n // Blocks\n //\n\n public getBlockLabel(blockId: string): string {\n const b = this.meta.get(blockId);\n if (b === undefined) throw new Error(`Block ${blockId} not found.`);\n return b.label;\n }\n\n //\n // Result Pool\n //\n\n private _resultPool: ResultPool | undefined = undefined;\n private get resultPool(): ResultPool {\n if (this._resultPool === undefined) {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't use result pool in this context (most porbably called from the future mapper)\",\n );\n this._resultPool = notEmpty(\n this.blockCtx.getResultsPool,\n \"getResultsPool\",\n )(this.computableCtx);\n }\n return this._resultPool;\n }\n\n public calculateOptions(predicate: PSpecPredicate): Option[] {\n return this.resultPool.calculateOptions(predicate);\n }\n\n public getDataFromResultPool(): ResultCollection<PObject<string>> {\n const collection = this.resultPool.getData();\n if (collection.instabilityMarker !== undefined)\n this.computableCtx!.markUnstable(`incomplete_result_pool:${collection.instabilityMarker}`);\n return {\n isComplete: collection.isComplete,\n entries: collection.entries.map((e) => ({\n ref: e.ref,\n obj: mapPObjectData(e.obj, (d) => this.wrapAccessor(d)),\n })),\n };\n }\n\n public getDataWithErrorsFromResultPool(): ResultCollection<\n Optional<PObject<ValueOrError<string, Error>>, \"id\">\n > {\n const collection = this.resultPool.getDataWithErrors();\n if (collection.instabilityMarker !== undefined)\n this.computableCtx!.markUnstable(`incomplete_result_pool:${collection.instabilityMarker}`);\n return {\n isComplete: collection.isComplete,\n entries: collection.entries.map((e) => ({\n ref: e.ref,\n obj: {\n id: e.obj.id,\n spec: e.obj.spec,\n data: mapValueInVOE(e.obj.data, (d) => this.wrapAccessor(d)),\n },\n })),\n };\n }\n\n public getSpecsFromResultPool(): ResultCollection<PObjectSpec> {\n const specs = this.resultPool.getSpecs();\n if (specs.instabilityMarker !== undefined)\n this.computableCtx!.markUnstable(`specs_from_pool_incomplete:${specs.instabilityMarker}`);\n return specs;\n }\n\n getSpecFromResultPoolByRef(blockId: string, exportName: string): PObjectSpec | undefined {\n return this.resultPool.getSpecByRef(blockId, exportName);\n }\n\n getDataFromResultPoolByRef(blockId: string, exportName: string): PObject<string> | undefined {\n return mapPObjectData(this.resultPool.getDataByRef(blockId, exportName), (acc) =>\n this.wrapAccessor(acc),\n );\n }\n\n //\n // PFrames / PTables\n //\n\n public createPFrame(\n def: PFrameDef<PColumn<string | PColumnValues | DataInfo<string>>>,\n ): PFrameHandle {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't instantiate PFrames from this context (most porbably called from the future mapper)\",\n );\n const { key, unref } = this.env.driverKit.pFrameDriver.createPFrame(\n def.map((c) => mapPObjectData(c, (d) => this.transformInputPData(d))),\n );\n this.computableCtx.addOnDestroy(unref);\n return key;\n }\n\n public createPTable(\n def: PTableDef<PColumn<string | PColumnValues | DataInfo<string>>>,\n ): PTableHandle {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't instantiate PTable from this context (most porbably called from the future mapper)\",\n );\n const { key, unref } = this.env.driverKit.pFrameDriver.createPTable(\n mapPTableDef(def, (c) => mapPObjectData(c, (d) => this.transformInputPData(d))),\n );\n this.computableCtx.addOnDestroy(unref);\n return key;\n }\n public createPTableV2(\n def: PTableDefV2<PColumn<string | PColumnValues | DataInfo<string>>>,\n ): PTableHandle {\n if (this.computableCtx === undefined)\n throw new Error(\n \"can't instantiate PTable from this context (most porbably called from the future mapper)\",\n );\n const { key, unref } = this.env.driverKit.pFrameDriver.createPTableV2(\n mapPTableDefV2(def, (c) => mapPObjectData(c, (d) => this.transformInputPData(d))),\n );\n this.computableCtx.addOnDestroy(unref);\n return key;\n }\n\n /**\n * Transforms input data for PFrame/PTable creation\n * - Converts string handles to accessors\n * - Maps accessors in DataInfo objects\n * - Passes through other values\n */\n private transformInputPData(\n d: string | PColumnValues | DataInfo<string>,\n ): PlTreeNodeAccessor | PColumnValues | DataInfo<PlTreeNodeAccessor> {\n if (typeof d === \"string\") {\n return this.getAccessor(d);\n } else if (isDataInfo(d)) {\n return mapDataInfo(d, (a) => this.getAccessor(a));\n } else {\n return d;\n }\n }\n\n //\n // Computable\n //\n\n public getCurrentUnstableMarker(): string | undefined {\n return this.computableCtx?.unstableMarker;\n }\n\n //\n // Logging\n //\n\n public logInfo(message: string): void {\n this.env.blockEventDispatcher.logInfo(this.blockCtx.blockId, message);\n }\n\n public logWarn(message: string): void {\n this.env.blockEventDispatcher.logWarn(this.blockCtx.blockId, message);\n }\n\n public logError(message: string): void {\n this.env.blockEventDispatcher.logError(this.blockCtx.blockId, message);\n }\n\n //\n // Helpers\n //\n\n private getAccessor(handle: string): PlTreeNodeAccessor {\n const accessor = this.accessors.get(handle);\n if (accessor === undefined) throw new Error(\"No such accessor\");\n return accessor;\n }\n\n private wrapAccessor(accessor: PlTreeNodeAccessor): string;\n private wrapAccessor(accessor: PlTreeNodeAccessor | undefined): string | undefined;\n private wrapAccessor(accessor: PlTreeNodeAccessor | undefined): string | undefined {\n if (accessor === undefined) return undefined;\n else {\n const nextHandle = randomUUID();\n this.accessors.set(nextHandle, accessor);\n return nextHandle;\n }\n }\n\n public injectCtx(configCtx: QuickJSHandle): void {\n const parent = this.parent;\n const vm = parent.vm;\n\n Scope.withScope((localScope) => {\n // Exporting methods\n\n const exportCtxFunction = (\n name: string,\n fn: VmFunctionImplementation<QuickJSHandle>,\n ): void => {\n const withCachedError: VmFunctionImplementation<QuickJSHandle> = (...args) => {\n // QuickJS strips all fields from errors apart from 'name' and 'message'.\n // That's why here we need to store them, and rethrow them when we exit\n // from QuickJS code.\n try {\n return (fn as any)(...args);\n } catch (e: unknown) {\n const newErr = parent.errorRepo.setAndRecreateForQuickJS(e);\n throw vm.newError(newErr);\n }\n };\n\n vm.newFunction(name, withCachedError).consume((fnh) => vm.setProp(configCtx, name, fnh));\n vm.newFunction(name, fn).consume((fnh) =>\n vm.setProp(configCtx, name + \"__internal__\", fnh),\n );\n };\n\n // Check if this is a v1/v2 block (requiresModelAPIVersion !== 2)\n // For v1/v2 blocks, state is {args, uiState} and we need to inject uiState separately\n const isLegacyBlock = !checkBlockFlag(this.featureFlags, \"requiresModelAPIVersion\", 2);\n\n // Helper to extract uiState from legacy state format {args, uiState}\n const extractUiState = (stateJson: string | undefined): string => {\n if (!stateJson) return \"{}\";\n try {\n const parsed = JSON.parse(stateJson);\n return JSON.stringify(parsed?.uiState ?? {});\n } catch {\n return \"{}\";\n }\n };\n\n if (checkBlockFlag(this.featureFlags, \"supportsLazyState\")) {\n // injecting lazy state functions\n exportCtxFunction(\"args\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.args outside the future lambda. Can't be directly used in this context.`,\n );\n const args = this.blockCtx.args(this.computableCtx);\n return args === undefined ? vm.undefined : vm.newString(args);\n });\n exportCtxFunction(\"blockStorage\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.blockStorage outside the future lambda. Can't be directly used in this context.`,\n );\n return vm.newString(this.blockCtx.blockStorage(this.computableCtx) ?? \"{}\");\n });\n exportCtxFunction(\"data\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.data outside the future lambda. Can't be directly used in this context.`,\n );\n return vm.newString(this.blockCtx.data(this.computableCtx) ?? \"{}\");\n });\n exportCtxFunction(\"activeArgs\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.activeArgs outside the future lambda. Can't be directly used in this context.`,\n );\n const res = this.blockCtx.activeArgs(this.computableCtx);\n return res === undefined ? vm.undefined : vm.newString(res);\n });\n // For v1/v2 blocks, also inject uiState (extracted from state.uiState)\n if (isLegacyBlock) {\n exportCtxFunction(\"uiState\", () => {\n if (this.computableCtx === undefined)\n throw new Error(\n `Add dummy call to ctx.uiState outside the future lambda. Can't be directly used in this context.`,\n );\n return vm.newString(extractUiState(this.blockCtx.data(this.computableCtx)));\n });\n }\n } else {\n const args = this.blockCtx.args(this.computableCtx!);\n const activeArgs = this.blockCtx.activeArgs(this.computableCtx!);\n const data = this.blockCtx.data(this.computableCtx!);\n if (args !== undefined) {\n vm.setProp(configCtx, \"args\", localScope.manage(vm.newString(args)));\n }\n vm.setProp(configCtx, \"data\", localScope.manage(vm.newString(data ?? \"{}\")));\n if (activeArgs !== undefined)\n vm.setProp(configCtx, \"activeArgs\", localScope.manage(vm.newString(activeArgs)));\n // For v1/v2 blocks, also inject uiState (extracted from state.uiState)\n if (isLegacyBlock) {\n vm.setProp(configCtx, \"uiState\", localScope.manage(vm.newString(extractUiState(data))));\n }\n }\n\n //\n // Methods for injected ctx object\n //\n\n exportCtxFunction(\"getAccessorHandleByName\", (name) => {\n return parent.exportSingleValue(\n this.getAccessorHandleByName(vm.getString(name)),\n undefined,\n );\n });\n\n //\n // Accessors\n //\n\n exportCtxFunction(\"resolveWithCommon\", (handle, commonOptions, ...steps) => {\n return parent.exportSingleValue(\n this.resolveWithCommon(\n vm.getString(handle),\n parent.importObjectViaJson(commonOptions) as CommonFieldTraverseOpsFromSDK,\n ...steps.map(\n (step) => parent.importObjectViaJson(step) as FieldTraversalStepFromSDK | string,\n ),\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"getResourceType\", (handle) => {\n return parent.exportObjectViaJson(this.getResourceType(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getInputsLocked\", (handle) => {\n return parent.exportSingleValue(this.getInputsLocked(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getOutputsLocked\", (handle) => {\n return parent.exportSingleValue(this.getOutputsLocked(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getIsReadyOrError\", (handle) => {\n return parent.exportSingleValue(this.getIsReadyOrError(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getIsFinal\", (handle) => {\n return parent.exportSingleValue(this.getIsFinal(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getError\", (handle) => {\n return parent.exportSingleValue(this.getError(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"listInputFields\", (handle) => {\n return parent.exportObjectViaJson(this.listInputFields(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"listOutputFields\", (handle) => {\n return parent.exportObjectViaJson(this.listInputFields(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"listDynamicFields\", (handle) => {\n return parent.exportObjectViaJson(this.listInputFields(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getKeyValueBase64\", (handle, key) => {\n return parent.exportSingleValue(\n this.getKeyValueBase64(vm.getString(handle), vm.getString(key)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getKeyValueAsString\", (handle, key) => {\n return parent.exportSingleValue(\n this.getKeyValueAsString(vm.getString(handle), vm.getString(key)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getDataBase64\", (handle) => {\n return parent.exportSingleValue(this.getDataBase64(vm.getString(handle)), undefined);\n });\n\n exportCtxFunction(\"getDataAsString\", (handle) => {\n return parent.exportSingleValue(this.getDataAsString(vm.getString(handle)), undefined);\n });\n\n //\n // Accessor helpers\n //\n\n exportCtxFunction(\n \"parsePObjectCollection\",\n (handle, errorOnUnknownField, prefix, ...resolveSteps) => {\n return parent.exportObjectUniversal(\n this.parsePObjectCollection(\n vm.getString(handle),\n vm.dump(errorOnUnknownField) as boolean,\n vm.getString(prefix),\n ...resolveSteps.map((stepHandle) => vm.getString(stepHandle)),\n ),\n undefined,\n );\n },\n );\n\n //\n // Blobs\n //\n\n exportCtxFunction(\"getBlobContentAsBase64\", (handle, range) => {\n return parent.exportSingleValue(\n this.getBlobContentAsBase64(\n vm.getString(handle),\n parent.importObjectUniversal(range) as RangeBytes | undefined,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"getBlobContentAsString\", (handle, range) => {\n return parent.exportSingleValue(\n this.getBlobContentAsString(\n vm.getString(handle),\n parent.importObjectUniversal(range) as RangeBytes | undefined,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"getDownloadedBlobContentHandle\", (handle) => {\n return parent.exportSingleValue(\n this.getDownloadedBlobContentHandle(vm.getString(handle)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getOnDemandBlobContentHandle\", (handle) => {\n return parent.exportSingleValue(\n this.getOnDemandBlobContentHandle(vm.getString(handle)),\n undefined,\n );\n });\n\n //\n // Blobs to URLs\n //\n\n exportCtxFunction(\"extractArchiveAndGetURL\", (handle, format) => {\n return parent.exportSingleValue(\n this.extractArchiveAndGetURL(vm.getString(handle), vm.getString(format) as ArchiveFormat),\n undefined,\n );\n });\n\n //\n // ImportProgress\n //\n\n exportCtxFunction(\"getImportProgress\", (handle) => {\n return parent.exportSingleValue(this.getImportProgress(vm.getString(handle)), undefined);\n });\n\n //\n // Logs\n //\n\n exportCtxFunction(\"getLastLogs\", (handle, nLines) => {\n return parent.exportSingleValue(\n this.getLastLogs(vm.getString(handle), vm.getNumber(nLines)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getProgressLog\", (handle, patternToSearch) => {\n return parent.exportSingleValue(\n this.getProgressLog(vm.getString(handle), vm.getString(patternToSearch)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getProgressLogWithInfo\", (handle, patternToSearch) => {\n return parent.exportSingleValue(\n this.getProgressLogWithInfo(vm.getString(handle), vm.getString(patternToSearch)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getLogHandle\", (handle) => {\n return parent.exportSingleValue(this.getLogHandle(vm.getString(handle)), undefined);\n });\n\n //\n // Blocks\n //\n\n exportCtxFunction(\"getBlockLabel\", (blockId) => {\n return parent.exportSingleValue(this.getBlockLabel(vm.getString(blockId)), undefined);\n });\n\n //\n // Result pool\n //\n\n exportCtxFunction(\"getDataFromResultPool\", () => {\n return parent.exportObjectUniversal(this.getDataFromResultPool(), undefined);\n });\n\n exportCtxFunction(\"getDataWithErrorsFromResultPool\", () => {\n return parent.exportObjectUniversal(this.getDataWithErrorsFromResultPool(), undefined);\n });\n\n exportCtxFunction(\"getSpecsFromResultPool\", () => {\n return parent.exportObjectUniversal(this.getSpecsFromResultPool(), undefined);\n });\n\n exportCtxFunction(\"calculateOptions\", (predicate) => {\n return parent.exportObjectUniversal(\n this.calculateOptions(parent.importObjectViaJson(predicate) as PSpecPredicate),\n undefined,\n );\n });\n\n exportCtxFunction(\"getSpecFromResultPoolByRef\", (blockId, exportName) => {\n return parent.exportObjectUniversal(\n this.getSpecFromResultPoolByRef(vm.getString(blockId), vm.getString(exportName)),\n undefined,\n );\n });\n\n exportCtxFunction(\"getDataFromResultPoolByRef\", (blockId, exportName) => {\n return parent.exportObjectUniversal(\n this.getDataFromResultPoolByRef(vm.getString(blockId), vm.getString(exportName)),\n undefined,\n );\n });\n\n //\n // PFrames / PTables\n //\n\n exportCtxFunction(\"createPFrame\", (def) => {\n return parent.exportSingleValue(\n this.createPFrame(\n parent.importObjectViaJson(def) as PFrameDef<PColumn<string | PColumnValues>>,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"createPTable\", (def) => {\n return parent.exportSingleValue(\n this.createPTable(\n parent.importObjectViaJson(def) as PTableDef<PColumn<string | PColumnValues>>,\n ),\n undefined,\n );\n });\n\n exportCtxFunction(\"createPTableV2\", (def) => {\n return parent.exportSingleValue(\n this.createPTableV2(\n parent.importObjectViaJson(def) as PTableDefV2<PColumn<string | PColumnValues>>,\n ),\n undefined,\n );\n });\n\n //\n // Computable\n //\n\n exportCtxFunction(\"getCurrentUnstableMarker\", () => {\n return parent.exportSingleValue(this.getCurrentUnstableMarker(), undefined);\n });\n\n //\n // Logging\n //\n\n exportCtxFunction(\"logInfo\", (message) => {\n this.logInfo(vm.getString(message));\n });\n\n exportCtxFunction(\"logWarn\", (message) => {\n this.logWarn(vm.getString(message));\n });\n\n exportCtxFunction(\"logError\", (message) => {\n this.logError(vm.getString(message));\n });\n });\n }\n}\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@milaboratories/pl-middle-layer",
3
- "version": "1.47.2",
3
+ "version": "1.48.0",
4
4
  "description": "Pl Middle Layer",
5
5
  "keywords": [],
6
6
  "license": "UNLICENSED",
@@ -29,22 +29,22 @@
29
29
  "utility-types": "^3.11.0",
30
30
  "yaml": "^2.8.0",
31
31
  "zod": "~3.23.8",
32
+ "@milaboratories/pf-driver": "1.0.53",
32
33
  "@milaboratories/computable": "2.8.5",
33
- "@milaboratories/pl-client": "2.17.6",
34
- "@milaboratories/pl-deployments": "2.15.16",
35
- "@milaboratories/pf-driver": "1.0.52",
36
34
  "@milaboratories/pl-errors": "1.1.68",
35
+ "@milaboratories/pl-model-backend": "1.1.53",
36
+ "@milaboratories/pl-deployments": "2.15.16",
37
37
  "@milaboratories/pl-drivers": "1.11.56",
38
- "@milaboratories/pl-model-middle-layer": "1.12.0",
38
+ "@milaboratories/pl-client": "2.17.6",
39
39
  "@milaboratories/pl-http": "1.2.3",
40
+ "@milaboratories/pl-model-common": "1.25.0",
40
41
  "@milaboratories/pl-tree": "1.8.44",
41
- "@milaboratories/pl-model-backend": "1.1.53",
42
42
  "@milaboratories/resolve-helper": "1.1.2",
43
- "@milaboratories/pl-model-common": "1.25.0",
44
43
  "@milaboratories/ts-helpers": "1.7.2",
45
- "@platforma-sdk/block-tools": "2.6.55",
46
- "@platforma-sdk/model": "1.55.0",
47
- "@platforma-sdk/workflow-tengo": "5.8.3"
44
+ "@platforma-sdk/model": "1.56.0",
45
+ "@milaboratories/pl-model-middle-layer": "1.12.1",
46
+ "@platforma-sdk/workflow-tengo": "5.8.3",
47
+ "@platforma-sdk/block-tools": "2.6.56"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@types/node": "~24.5.2",
@@ -54,8 +54,8 @@
54
54
  "typescript": "~5.6.3",
55
55
  "vitest": "^4.0.16",
56
56
  "@milaboratories/ts-builder": "1.2.10",
57
- "@milaboratories/ts-configs": "1.2.1",
58
- "@milaboratories/build-configs": "1.4.4"
57
+ "@milaboratories/build-configs": "1.4.4",
58
+ "@milaboratories/ts-configs": "1.2.1"
59
59
  },
60
60
  "engines": {
61
61
  "node": ">=22.19.0"
@@ -543,10 +543,17 @@ export class ComputableContextHelper implements JsRenderInternal.GlobalCfgRender
543
543
  const args = this.blockCtx.args(this.computableCtx);
544
544
  return args === undefined ? vm.undefined : vm.newString(args);
545
545
  });
546
+ exportCtxFunction("blockStorage", () => {
547
+ if (this.computableCtx === undefined)
548
+ throw new Error(
549
+ `Add dummy call to ctx.blockStorage outside the future lambda. Can't be directly used in this context.`,
550
+ );
551
+ return vm.newString(this.blockCtx.blockStorage(this.computableCtx) ?? "{}");
552
+ });
546
553
  exportCtxFunction("data", () => {
547
554
  if (this.computableCtx === undefined)
548
555
  throw new Error(
549
- `Add dummy call to ctx.state outside the future lambda. Can't be directly used in this context.`,
556
+ `Add dummy call to ctx.data outside the future lambda. Can't be directly used in this context.`,
550
557
  );
551
558
  return vm.newString(this.blockCtx.data(this.computableCtx) ?? "{}");
552
559
  });