UNPKG

@metamask/ocap-kernel

Version:
1 lines 2.07 kB
{"version":3,"file":"initVat.mjs","sourceRoot":"","sources":["../../../src/rpc/vat/initVat.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,8BAA8B;AAGrE,OAAO,EAAE,uBAAuB,EAAE,qBAAoB;AACtD,OAAO,EAAE,eAAe,EAAE,wBAAuB;AAGjD,MAAM,YAAY,GAAG,MAAM,CAAC;IAC1B,SAAS,EAAE,eAAe;IAC1B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;CAC1C,CAAC,CAAC;AAUH,MAAM,CAAC,MAAM,WAAW,GAAgB;IACtC,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,uBAAuB;CAChC,CAAC;AAkBF,MAAM,CAAC,MAAM,cAAc,GAAmB;IAC5C,GAAG,WAAW;IACd,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;IACxB,cAAc,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE;QAC5C,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAChE,CAAC;CACF,CAAC","sourcesContent":["import type { MethodSpec, Handler } from '@metamask/kernel-rpc-methods';\nimport { array, object, string, tuple } from '@metamask/superstruct';\nimport type { Infer } from '@metamask/superstruct';\n\nimport { VatDeliveryResultStruct } from './shared.ts';\nimport { VatConfigStruct } from '../../types.ts';\nimport type { VatConfig, VatDeliveryResult } from '../../types.ts';\n\nconst paramsStruct = object({\n vatConfig: VatConfigStruct,\n state: array(tuple([string(), string()])),\n});\n\ntype Params = Infer<typeof paramsStruct>;\n\nexport type InitVatSpec = MethodSpec<\n 'initVat',\n Params,\n Promise<VatDeliveryResult>\n>;\n\nexport const initVatSpec: InitVatSpec = {\n method: 'initVat',\n params: paramsStruct,\n result: VatDeliveryResultStruct,\n};\n\nexport type InitVat = (\n vatConfig: VatConfig,\n state: Map<string, string>,\n) => Promise<VatDeliveryResult>;\n\ntype InitVatHooks = {\n initVat: InitVat;\n};\n\nexport type InitVatHandler = Handler<\n 'initVat',\n Params,\n Promise<VatDeliveryResult>,\n InitVatHooks\n>;\n\nexport const initVatHandler: InitVatHandler = {\n ...initVatSpec,\n hooks: { initVat: true },\n implementation: async ({ initVat }, params) => {\n return await initVat(params.vatConfig, new Map(params.state));\n },\n};\n"]}