{"version":3,"file":"plugins.cjs","names":["ResolutionSessionService","PluginAdminService"],"sources":["../../src/handlers/plugins.ts"],"sourcesContent":["import { PluginAdminService } from \"../services/plugins-admin\";\nimport { ResolutionSessionService } from \"../services/resolution/session\";\nimport type { BosBuilder } from \"./shared\";\n\nexport function registerPlugins(builder: BosBuilder) {\n  return {\n    pluginAdd: builder.pluginAdd.effect(function* (_opts, input) {\n      const session = yield* ResolutionSessionService;\n      const admin = yield* PluginAdminService;\n      return yield* admin.add(session, input);\n    }),\n\n    pluginRemove: builder.pluginRemove.effect(function* (_opts, input) {\n      const session = yield* ResolutionSessionService;\n      const admin = yield* PluginAdminService;\n      return yield* admin.remove(session, input);\n    }),\n\n    pluginList: builder.pluginList.effect(function* () {\n      const session = yield* ResolutionSessionService;\n      const admin = yield* PluginAdminService;\n      const plugins = yield* admin.list(session);\n      return {\n        status: \"listed\" as const,\n        plugins,\n      };\n    }),\n\n    pluginPublish: builder.pluginPublish.effect(function* (_opts, input) {\n      const session = yield* ResolutionSessionService;\n      const admin = yield* PluginAdminService;\n      return yield* admin.publish(session, input);\n    }),\n  };\n}\n"],"mappings":";;;;AAIA,SAAgB,gBAAgB,SAAqB;CACnD,OAAO;EACL,WAAW,QAAQ,UAAU,OAAO,WAAW,OAAO,OAAO;GAC3D,MAAM,UAAU,OAAOA;GAEvB,OAAO,QAAO,OADOC,yCACF,CAAC,IAAI,SAAS,KAAK;EACxC,CAAC;EAED,cAAc,QAAQ,aAAa,OAAO,WAAW,OAAO,OAAO;GACjE,MAAM,UAAU,OAAOD;GAEvB,OAAO,QAAO,OADOC,yCACF,CAAC,OAAO,SAAS,KAAK;EAC3C,CAAC;EAED,YAAY,QAAQ,WAAW,OAAO,aAAa;GACjD,MAAM,UAAU,OAAOD;GAGvB,OAAO;IACL,QAAQ;IACR,iBAHqB,OADFC,yCACO,CAAC,KAAK,OAAO;GAIzC;EACF,CAAC;EAED,eAAe,QAAQ,cAAc,OAAO,WAAW,OAAO,OAAO;GACnE,MAAM,UAAU,OAAOD;GAEvB,OAAO,QAAO,OADOC,yCACF,CAAC,QAAQ,SAAS,KAAK;EAC5C,CAAC;CACH;AACF"}