{"version":3,"sources":["../src/zapp.ts","../src/permissions.ts"],"sourcesContent":["import * as v from \"valibot\";\nimport { PermissionRequestSchema } from \"./permissions.js\";\n\nexport const ZappSchema = v.object({\n  name: v.string(),\n  permissions: PermissionRequestSchema\n});\n\nexport type Zapp = v.InferOutput<typeof ZappSchema>;\n","import * as v from \"valibot\";\nimport type { ParcnetRPCMethodName } from \"./protocol.js\";\n\nexport class MissingPermissionError extends Error {\n  public constructor(\n    public readonly missingPermission: keyof PermissionRequest,\n    public readonly method: ParcnetRPCMethodName\n  ) {\n    super(`Missing permission ${missingPermission} when invoking ${method}`);\n  }\n}\n\nexport const PermissionRequestSchema = v.partial(\n  v.object({\n    READ_PUBLIC_IDENTIFIERS: v.object({}),\n    SIGN_POD: v.object({}),\n    REQUEST_PROOF: v.object({ collections: v.array(v.string()) }),\n    READ_POD: v.object({ collections: v.array(v.string()) }),\n    INSERT_POD: v.object({ collections: v.array(v.string()) }),\n    DELETE_POD: v.object({ collections: v.array(v.string()) }),\n    SUGGEST_PODS: v.object({ collections: v.array(v.string()) })\n  })\n);\n\nexport type PermissionRequest = v.InferOutput<typeof PermissionRequestSchema>;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAAA,KAAmB;;;ACAnB,QAAmB;AAYZ,IAAM,0BAA4B;AAAA,EACrC,SAAO;AAAA,IACP,yBAA2B,SAAO,CAAC,CAAC;AAAA,IACpC,UAAY,SAAO,CAAC,CAAC;AAAA,IACrB,eAAiB,SAAO,EAAE,aAAe,QAAQ,SAAO,CAAC,EAAE,CAAC;AAAA,IAC5D,UAAY,SAAO,EAAE,aAAe,QAAQ,SAAO,CAAC,EAAE,CAAC;AAAA,IACvD,YAAc,SAAO,EAAE,aAAe,QAAQ,SAAO,CAAC,EAAE,CAAC;AAAA,IACzD,YAAc,SAAO,EAAE,aAAe,QAAQ,SAAO,CAAC,EAAE,CAAC;AAAA,IACzD,cAAgB,SAAO,EAAE,aAAe,QAAQ,SAAO,CAAC,EAAE,CAAC;AAAA,EAC7D,CAAC;AACH;;;ADnBO,IAAM,aAAe,UAAO;AAAA,EACjC,MAAQ,UAAO;AAAA,EACf,aAAa;AACf,CAAC;","names":["v"]}