{"version":3,"file":"authorFacade-z16KmFUL.cjs","names":["Type","defineDoomPluginMethod"],"sources":["../src/schemas/authorFacade.ts"],"sourcesContent":["import type { DoomApiScope } from '@agimon-ai/doompi-core/packageApi';\nimport { defineDoomPluginMethod } from '@agimon-ai/doompi-core/pluginProtocol';\nimport { type Static, Type } from 'typebox';\n\nconst AuthorCapabilityNameSchema = Type.String({\n  minLength: 1,\n  maxLength: 30,\n  pattern: '^[a-z][a-z0-9_]*$',\n});\n\nexport const AuthorAliasSchema = Type.String({ minLength: 1, maxLength: 64, pattern: '^[a-z][a-z0-9_-]{0,63}$' });\n\n/** Lists canvases or the capabilities of one named canvas. */\nexport const AuthorDescribeToolsInputSchema = Type.Object(\n  { alias: Type.Optional(AuthorAliasSchema) },\n  { additionalProperties: false },\n);\nexport type AuthorDescribeToolsInput = Static<typeof AuthorDescribeToolsInputSchema>;\n\n/** Invokes one capability exposed by the current Author viewport. */\nexport const AuthorUseToolsInputSchema = Type.Object(\n  {\n    alias: Type.Optional(AuthorAliasSchema),\n    catalogToken: Type.String({ minLength: 1, maxLength: 256 }),\n    name: AuthorCapabilityNameSchema,\n    arguments: Type.Record(Type.String(), Type.Unknown()),\n  },\n  { additionalProperties: false },\n);\nexport type AuthorUseToolsInput = Static<typeof AuthorUseToolsInputSchema>;\n\nconst AuthorBridgeBase = {\n  alias: AuthorAliasSchema,\n  generation: Type.Number({ minimum: 0 }),\n};\n\n/** Browser-to-server lease messages, validated before Author sees the payload. */\nexport const AuthorBridgeMessageSchema = Type.Union([\n  Type.Object({ ...AuthorBridgeBase, kind: Type.Literal('register') }, { additionalProperties: false }),\n  Type.Object({ ...AuthorBridgeBase, kind: Type.Literal('release') }, { additionalProperties: false }),\n  Type.Object(\n    {\n      ...AuthorBridgeBase,\n      kind: Type.Literal('catalog'),\n      ownerToken: Type.String({ minLength: 1 }),\n      tools: Type.Array(\n        Type.Object(\n          {\n            name: Type.String({ minLength: 1 }),\n            label: Type.String(),\n            description: Type.String(),\n            inputSchema: Type.Record(Type.String(), Type.Unknown()),\n          },\n          { additionalProperties: false },\n        ),\n      ),\n    },\n    { additionalProperties: false },\n  ),\n  Type.Object(\n    {\n      ...AuthorBridgeBase,\n      kind: Type.Literal('result'),\n      ownerToken: Type.String({ minLength: 1 }),\n      catalogToken: Type.String({ minLength: 1 }),\n      requestId: Type.String({ minLength: 1 }),\n      result: Type.Unknown(),\n    },\n    { additionalProperties: false },\n  ),\n  Type.Object(\n    {\n      ...AuthorBridgeBase,\n      kind: Type.Literal('cancelled'),\n      ownerToken: Type.String({ minLength: 1 }),\n      catalogToken: Type.String({ minLength: 1 }),\n      requestId: Type.String({ minLength: 1 }),\n    },\n    { additionalProperties: false },\n  ),\n]);\n\nexport const AuthorBridgeInputSchema = Type.Object(\n  { sessionId: Type.String({ minLength: 1 }), message: AuthorBridgeMessageSchema },\n  { additionalProperties: false },\n);\n\nexport function authorBridgeMethod(scope: Extract<DoomApiScope, 'global' | 'workspace'>) {\n  return defineDoomPluginMethod({\n    service: 'author.bridge',\n    method: 'send',\n    scope,\n    direction: 'client-to-server',\n    input: AuthorBridgeInputSchema,\n    output: Type.Object({}, { additionalProperties: false }),\n  });\n}\n"],"mappings":"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"}