@credo-ts/action-menu 0.6.1-pr-2091-20241119140918 → 0.6.2-alpha-20251210145840
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.
- package/build/ActionMenuApi.d.mts +59 -0
- package/build/ActionMenuApi.d.mts.map +1 -0
- package/build/ActionMenuApi.mjs +117 -0
- package/build/ActionMenuApi.mjs.map +1 -0
- package/build/ActionMenuApiOptions.d.mts +42 -0
- package/build/ActionMenuApiOptions.d.mts.map +1 -0
- package/build/ActionMenuEvents.d.mts +25 -0
- package/build/ActionMenuEvents.d.mts.map +1 -0
- package/build/ActionMenuEvents.mjs +12 -0
- package/build/ActionMenuEvents.mjs.map +1 -0
- package/build/ActionMenuModule.d.mts +19 -0
- package/build/ActionMenuModule.d.mts.map +1 -0
- package/build/ActionMenuModule.mjs +48 -0
- package/build/ActionMenuModule.mjs.map +1 -0
- package/build/ActionMenuRole.d.mts +14 -0
- package/build/ActionMenuRole.d.mts.map +1 -0
- package/build/ActionMenuRole.mjs +16 -0
- package/build/ActionMenuRole.mjs.map +1 -0
- package/build/ActionMenuState.d.mts +18 -0
- package/build/ActionMenuState.d.mts.map +1 -0
- package/build/ActionMenuState.mjs +20 -0
- package/build/ActionMenuState.mjs.map +1 -0
- package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs +10 -0
- package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs +7 -0
- package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateParam.mjs +9 -0
- package/build/errors/ActionMenuProblemReportError.mjs +22 -0
- package/build/errors/ActionMenuProblemReportError.mjs.map +1 -0
- package/build/errors/ActionMenuProblemReportReason.mjs +15 -0
- package/build/errors/ActionMenuProblemReportReason.mjs.map +1 -0
- package/build/handlers/ActionMenuProblemReportHandler.mjs +20 -0
- package/build/handlers/ActionMenuProblemReportHandler.mjs.map +1 -0
- package/build/handlers/MenuMessageHandler.mjs +21 -0
- package/build/handlers/MenuMessageHandler.mjs.map +1 -0
- package/build/handlers/MenuRequestMessageHandler.mjs +21 -0
- package/build/handlers/MenuRequestMessageHandler.mjs.map +1 -0
- package/build/handlers/PerformMessageHandler.mjs +21 -0
- package/build/handlers/PerformMessageHandler.mjs.map +1 -0
- package/build/handlers/index.mjs +4 -0
- package/build/index.d.mts +20 -0
- package/build/index.mjs +21 -0
- package/build/messages/ActionMenuProblemReportMessage.d.mts +16 -0
- package/build/messages/ActionMenuProblemReportMessage.d.mts.map +1 -0
- package/build/messages/ActionMenuProblemReportMessage.mjs +21 -0
- package/build/messages/ActionMenuProblemReportMessage.mjs.map +1 -0
- package/build/messages/MenuMessage.d.mts +32 -0
- package/build/messages/MenuMessage.d.mts.map +1 -0
- package/build/messages/MenuMessage.mjs +45 -0
- package/build/messages/MenuMessage.mjs.map +1 -0
- package/build/messages/MenuRequestMessage.d.mts +21 -0
- package/build/messages/MenuRequestMessage.d.mts.map +1 -0
- package/build/messages/MenuRequestMessage.mjs +21 -0
- package/build/messages/MenuRequestMessage.mjs.map +1 -0
- package/build/messages/PerformMessage.d.mts +26 -0
- package/build/messages/PerformMessage.d.mts.map +1 -0
- package/build/messages/PerformMessage.mjs +34 -0
- package/build/messages/PerformMessage.mjs.map +1 -0
- package/build/messages/index.d.mts +4 -0
- package/build/messages/index.mjs +4 -0
- package/build/models/ActionMenu.d.mts +24 -0
- package/build/models/ActionMenu.d.mts.map +1 -0
- package/build/models/ActionMenu.mjs +30 -0
- package/build/models/ActionMenu.mjs.map +1 -0
- package/build/models/ActionMenuOption.d.mts +28 -0
- package/build/models/ActionMenuOption.d.mts.map +1 -0
- package/build/models/ActionMenuOption.mjs +40 -0
- package/build/models/ActionMenuOption.mjs.map +1 -0
- package/build/models/ActionMenuOptionForm.d.mts +24 -0
- package/build/models/ActionMenuOptionForm.d.mts.map +1 -0
- package/build/models/ActionMenuOptionForm.mjs +34 -0
- package/build/models/ActionMenuOptionForm.mjs.map +1 -0
- package/build/models/ActionMenuOptionFormParameter.d.mts +33 -0
- package/build/models/ActionMenuOptionFormParameter.d.mts.map +1 -0
- package/build/models/ActionMenuOptionFormParameter.mjs +50 -0
- package/build/models/ActionMenuOptionFormParameter.mjs.map +1 -0
- package/build/models/ActionMenuSelection.d.mts +19 -0
- package/build/models/ActionMenuSelection.d.mts.map +1 -0
- package/build/models/ActionMenuSelection.mjs +27 -0
- package/build/models/ActionMenuSelection.mjs.map +1 -0
- package/build/models/index.mjs +5 -0
- package/build/repository/ActionMenuRecord.d.mts +58 -0
- package/build/repository/ActionMenuRecord.d.mts.map +1 -0
- package/build/repository/ActionMenuRecord.mjs +52 -0
- package/build/repository/ActionMenuRecord.mjs.map +1 -0
- package/build/repository/ActionMenuRepository.d.mts +14 -0
- package/build/repository/ActionMenuRepository.d.mts.map +1 -0
- package/build/repository/ActionMenuRepository.mjs +22 -0
- package/build/repository/ActionMenuRepository.mjs.map +1 -0
- package/build/repository/index.d.mts +2 -0
- package/build/repository/index.mjs +2 -0
- package/build/services/ActionMenuService.d.mts +46 -0
- package/build/services/ActionMenuService.d.mts.map +1 -0
- package/build/services/ActionMenuService.mjs +258 -0
- package/build/services/ActionMenuService.mjs.map +1 -0
- package/build/services/ActionMenuServiceOptions.d.mts +45 -0
- package/build/services/ActionMenuServiceOptions.d.mts.map +1 -0
- package/build/services/index.d.mts +2 -0
- package/build/services/index.mjs +1 -0
- package/package.json +15 -14
- package/build/ActionMenuApi.d.ts +0 -50
- package/build/ActionMenuApi.js +0 -135
- package/build/ActionMenuApi.js.map +0 -1
- package/build/ActionMenuApiOptions.d.ts +0 -36
- package/build/ActionMenuApiOptions.js +0 -3
- package/build/ActionMenuApiOptions.js.map +0 -1
- package/build/ActionMenuEvents.d.ts +0 -19
- package/build/ActionMenuEvents.js +0 -11
- package/build/ActionMenuEvents.js.map +0 -1
- package/build/ActionMenuModule.d.ts +0 -12
- package/build/ActionMenuModule.js +0 -32
- package/build/ActionMenuModule.js.map +0 -1
- package/build/ActionMenuRole.d.ts +0 -10
- package/build/ActionMenuRole.js +0 -15
- package/build/ActionMenuRole.js.map +0 -1
- package/build/ActionMenuState.d.ts +0 -14
- package/build/ActionMenuState.js +0 -19
- package/build/ActionMenuState.js.map +0 -1
- package/build/errors/ActionMenuProblemReportError.d.ts +0 -19
- package/build/errors/ActionMenuProblemReportError.js +0 -22
- package/build/errors/ActionMenuProblemReportError.js.map +0 -1
- package/build/errors/ActionMenuProblemReportReason.d.ts +0 -9
- package/build/errors/ActionMenuProblemReportReason.js +0 -14
- package/build/errors/ActionMenuProblemReportReason.js.map +0 -1
- package/build/handlers/ActionMenuProblemReportHandler.d.ts +0 -12
- package/build/handlers/ActionMenuProblemReportHandler.js +0 -18
- package/build/handlers/ActionMenuProblemReportHandler.js.map +0 -1
- package/build/handlers/MenuMessageHandler.d.ts +0 -12
- package/build/handlers/MenuMessageHandler.js +0 -19
- package/build/handlers/MenuMessageHandler.js.map +0 -1
- package/build/handlers/MenuRequestMessageHandler.d.ts +0 -12
- package/build/handlers/MenuRequestMessageHandler.js +0 -19
- package/build/handlers/MenuRequestMessageHandler.js.map +0 -1
- package/build/handlers/PerformMessageHandler.d.ts +0 -12
- package/build/handlers/PerformMessageHandler.js +0 -19
- package/build/handlers/PerformMessageHandler.js.map +0 -1
- package/build/handlers/index.d.ts +0 -4
- package/build/handlers/index.js +0 -21
- package/build/handlers/index.js.map +0 -1
- package/build/index.d.ts +0 -9
- package/build/index.js +0 -26
- package/build/index.js.map +0 -1
- package/build/messages/ActionMenuProblemReportMessage.d.ts +0 -16
- package/build/messages/ActionMenuProblemReportMessage.js +0 -34
- package/build/messages/ActionMenuProblemReportMessage.js.map +0 -1
- package/build/messages/MenuMessage.d.ts +0 -26
- package/build/messages/MenuMessage.js +0 -64
- package/build/messages/MenuMessage.js.map +0 -1
- package/build/messages/MenuRequestMessage.d.ts +0 -15
- package/build/messages/MenuRequestMessage.js +0 -33
- package/build/messages/MenuRequestMessage.js.map +0 -1
- package/build/messages/PerformMessage.d.ts +0 -20
- package/build/messages/PerformMessage.js +0 -48
- package/build/messages/PerformMessage.js.map +0 -1
- package/build/messages/index.d.ts +0 -4
- package/build/messages/index.js +0 -21
- package/build/messages/index.js.map +0 -1
- package/build/models/ActionMenu.d.ts +0 -19
- package/build/models/ActionMenu.js +0 -42
- package/build/models/ActionMenu.js.map +0 -1
- package/build/models/ActionMenuOption.d.ts +0 -23
- package/build/models/ActionMenuOption.js +0 -56
- package/build/models/ActionMenuOption.js.map +0 -1
- package/build/models/ActionMenuOptionForm.d.ts +0 -19
- package/build/models/ActionMenuOptionForm.js +0 -43
- package/build/models/ActionMenuOptionForm.js.map +0 -1
- package/build/models/ActionMenuOptionFormParameter.d.ts +0 -29
- package/build/models/ActionMenuOptionFormParameter.js +0 -64
- package/build/models/ActionMenuOptionFormParameter.js.map +0 -1
- package/build/models/ActionMenuSelection.d.ts +0 -15
- package/build/models/ActionMenuSelection.js +0 -35
- package/build/models/ActionMenuSelection.js.map +0 -1
- package/build/models/index.d.ts +0 -5
- package/build/models/index.js +0 -22
- package/build/models/index.js.map +0 -1
- package/build/repository/ActionMenuRecord.d.ts +0 -52
- package/build/repository/ActionMenuRecord.js +0 -63
- package/build/repository/ActionMenuRecord.js.map +0 -1
- package/build/repository/ActionMenuRepository.d.ts +0 -8
- package/build/repository/ActionMenuRepository.js +0 -32
- package/build/repository/ActionMenuRepository.js.map +0 -1
- package/build/repository/index.d.ts +0 -2
- package/build/repository/index.js +0 -19
- package/build/repository/index.js.map +0 -1
- package/build/services/ActionMenuService.d.ts +0 -36
- package/build/services/ActionMenuService.js +0 -295
- package/build/services/ActionMenuService.js.map +0 -1
- package/build/services/ActionMenuServiceOptions.d.ts +0 -39
- package/build/services/ActionMenuServiceOptions.js +0 -3
- package/build/services/ActionMenuServiceOptions.js.map +0 -1
- package/build/services/index.d.ts +0 -2
- package/build/services/index.js +0 -19
- package/build/services/index.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActionMenuService.mjs","names":["ActionMenuService"],"sources":["../../src/services/ActionMenuService.ts"],"sourcesContent":["import type { AgentContext, Logger, Query, QueryOptions } from '@credo-ts/core'\nimport { AgentConfig, CredoError, EventEmitter, injectable } from '@credo-ts/core'\nimport type { DidCommInboundMessageContext } from '@credo-ts/didcomm'\nimport type { ActionMenuStateChangedEvent } from '../ActionMenuEvents'\nimport { ActionMenuEventTypes } from '../ActionMenuEvents'\nimport { ActionMenuRole } from '../ActionMenuRole'\nimport { ActionMenuState } from '../ActionMenuState'\nimport { ActionMenuProblemReportError } from '../errors/ActionMenuProblemReportError'\nimport { ActionMenuProblemReportReason } from '../errors/ActionMenuProblemReportReason'\nimport type { ActionMenuProblemReportMessage } from '../messages'\nimport { MenuMessage, MenuRequestMessage, PerformMessage } from '../messages'\nimport { ActionMenu, ActionMenuSelection } from '../models'\nimport { ActionMenuRecord, ActionMenuRepository } from '../repository'\nimport type {\n ClearMenuOptions,\n CreateMenuOptions,\n CreatePerformOptions,\n CreateRequestOptions,\n FindMenuOptions,\n} from './ActionMenuServiceOptions'\n\n/**\n * @internal\n */\n@injectable()\nexport class ActionMenuService {\n private actionMenuRepository: ActionMenuRepository\n private eventEmitter: EventEmitter\n private logger: Logger\n\n public constructor(actionMenuRepository: ActionMenuRepository, agentConfig: AgentConfig, eventEmitter: EventEmitter) {\n this.actionMenuRepository = actionMenuRepository\n this.eventEmitter = eventEmitter\n this.logger = agentConfig.logger\n }\n\n public async createRequest(agentContext: AgentContext, options: CreateRequestOptions) {\n // Assert\n options.connection.assertReady()\n\n // Create message\n const menuRequestMessage = new MenuRequestMessage({})\n\n // Create record if not existent for connection/role\n let actionMenuRecord = await this.find(agentContext, {\n connectionId: options.connection.id,\n role: ActionMenuRole.Requester,\n })\n\n if (actionMenuRecord) {\n // Protocol will be restarted and menu cleared\n const previousState = actionMenuRecord.state\n actionMenuRecord.state = ActionMenuState.AwaitingRootMenu\n actionMenuRecord.threadId = menuRequestMessage.id\n actionMenuRecord.menu = undefined\n actionMenuRecord.performedAction = undefined\n\n await this.actionMenuRepository.update(agentContext, actionMenuRecord)\n this.emitStateChangedEvent(agentContext, actionMenuRecord, previousState)\n } else {\n actionMenuRecord = new ActionMenuRecord({\n connectionId: options.connection.id,\n role: ActionMenuRole.Requester,\n state: ActionMenuState.AwaitingRootMenu,\n threadId: menuRequestMessage.threadId,\n })\n\n await this.actionMenuRepository.save(agentContext, actionMenuRecord)\n this.emitStateChangedEvent(agentContext, actionMenuRecord, null)\n }\n\n return { message: menuRequestMessage, record: actionMenuRecord }\n }\n\n public async processRequest(messageContext: DidCommInboundMessageContext<MenuRequestMessage>) {\n const { message: menuRequestMessage, agentContext } = messageContext\n\n this.logger.debug(`Processing menu request with id ${menuRequestMessage.id}`)\n\n // Assert\n const connection = messageContext.assertReadyConnection()\n\n let actionMenuRecord = await this.find(agentContext, {\n connectionId: connection.id,\n role: ActionMenuRole.Responder,\n })\n\n if (actionMenuRecord) {\n // Protocol will be restarted and menu cleared\n const previousState = actionMenuRecord.state\n actionMenuRecord.state = ActionMenuState.PreparingRootMenu\n actionMenuRecord.threadId = menuRequestMessage.id\n actionMenuRecord.menu = undefined\n actionMenuRecord.performedAction = undefined\n\n await this.actionMenuRepository.update(agentContext, actionMenuRecord)\n this.emitStateChangedEvent(agentContext, actionMenuRecord, previousState)\n } else {\n // Create record\n actionMenuRecord = new ActionMenuRecord({\n connectionId: connection.id,\n role: ActionMenuRole.Responder,\n state: ActionMenuState.PreparingRootMenu,\n threadId: menuRequestMessage.threadId,\n })\n\n await this.actionMenuRepository.save(agentContext, actionMenuRecord)\n this.emitStateChangedEvent(agentContext, actionMenuRecord, null)\n }\n\n return actionMenuRecord\n }\n\n public async createMenu(agentContext: AgentContext, options: CreateMenuOptions) {\n // Assert connection ready\n options.connection.assertReady()\n\n const uniqueNames = new Set(options.menu.options.map((v) => v.name))\n if (uniqueNames.size < options.menu.options.length) {\n throw new CredoError('Action Menu contains duplicated options')\n }\n\n // Create message\n const menuMessage = new MenuMessage({\n title: options.menu.title,\n description: options.menu.description,\n options: options.menu.options,\n })\n\n // Check if there is an existing menu for this connection and role\n let actionMenuRecord = await this.find(agentContext, {\n connectionId: options.connection.id,\n role: ActionMenuRole.Responder,\n })\n\n // If so, continue existing flow\n if (actionMenuRecord) {\n actionMenuRecord.assertState([ActionMenuState.Null, ActionMenuState.PreparingRootMenu, ActionMenuState.Done])\n // The new menu will be bound to the existing thread\n // unless it is in null state (protocol reset)\n if (actionMenuRecord.state !== ActionMenuState.Null) {\n menuMessage.setThread({ threadId: actionMenuRecord.threadId })\n }\n\n const previousState = actionMenuRecord.state\n actionMenuRecord.menu = options.menu\n actionMenuRecord.state = ActionMenuState.AwaitingSelection\n actionMenuRecord.threadId = menuMessage.threadId\n\n await this.actionMenuRepository.update(agentContext, actionMenuRecord)\n this.emitStateChangedEvent(agentContext, actionMenuRecord, previousState)\n } else {\n // Create record\n actionMenuRecord = new ActionMenuRecord({\n connectionId: options.connection.id,\n role: ActionMenuRole.Responder,\n state: ActionMenuState.AwaitingSelection,\n menu: options.menu,\n threadId: menuMessage.threadId,\n })\n\n await this.actionMenuRepository.save(agentContext, actionMenuRecord)\n this.emitStateChangedEvent(agentContext, actionMenuRecord, null)\n }\n\n return { message: menuMessage, record: actionMenuRecord }\n }\n\n public async processMenu(messageContext: DidCommInboundMessageContext<MenuMessage>) {\n const { message: menuMessage, agentContext } = messageContext\n\n this.logger.debug(`Processing action menu with id ${menuMessage.id}`)\n\n // Assert\n const connection = messageContext.assertReadyConnection()\n\n // Check if there is an existing menu for this connection and role\n const record = await this.find(agentContext, {\n connectionId: connection.id,\n role: ActionMenuRole.Requester,\n })\n\n if (record) {\n // Record found: update with menu details\n const previousState = record.state\n\n record.state = ActionMenuState.PreparingSelection\n record.menu = new ActionMenu({\n title: menuMessage.title,\n description: menuMessage.description,\n options: menuMessage.options,\n })\n record.threadId = menuMessage.threadId\n record.performedAction = undefined\n\n await this.actionMenuRepository.update(agentContext, record)\n\n this.emitStateChangedEvent(agentContext, record, previousState)\n } else {\n // Record not found: create it\n const actionMenuRecord = new ActionMenuRecord({\n connectionId: connection.id,\n role: ActionMenuRole.Requester,\n state: ActionMenuState.PreparingSelection,\n threadId: menuMessage.threadId,\n menu: new ActionMenu({\n title: menuMessage.title,\n description: menuMessage.description,\n options: menuMessage.options,\n }),\n })\n\n await this.actionMenuRepository.save(agentContext, actionMenuRecord)\n\n this.emitStateChangedEvent(agentContext, actionMenuRecord, null)\n }\n }\n\n public async createPerform(agentContext: AgentContext, options: CreatePerformOptions) {\n const { actionMenuRecord: record, performedAction: performedSelection } = options\n\n // Assert\n record.assertRole(ActionMenuRole.Requester)\n record.assertState([ActionMenuState.PreparingSelection])\n\n const validSelection = record.menu?.options.some((item) => item.name === performedSelection.name)\n if (!validSelection) {\n throw new CredoError('Selection does not match valid actions')\n }\n\n const previousState = record.state\n\n // Create message\n const menuMessage = new PerformMessage({\n name: performedSelection.name,\n params: performedSelection.params,\n threadId: record.threadId,\n })\n\n // Update record\n record.performedAction = options.performedAction\n record.state = ActionMenuState.Done\n\n await this.actionMenuRepository.update(agentContext, record)\n\n this.emitStateChangedEvent(agentContext, record, previousState)\n\n return { message: menuMessage, record }\n }\n\n public async processPerform(messageContext: DidCommInboundMessageContext<PerformMessage>) {\n const { message: performMessage, agentContext } = messageContext\n\n this.logger.debug(`Processing action menu perform with id ${performMessage.id}`)\n\n const connection = messageContext.assertReadyConnection()\n\n // Check if there is an existing menu for this connection and role\n const record = await this.find(agentContext, {\n connectionId: connection.id,\n role: ActionMenuRole.Responder,\n threadId: performMessage.threadId,\n })\n\n if (record) {\n // Record found: check state and update with menu details\n\n // A Null state means that menu has been cleared by the responder.\n // Requester should be informed in order to request another menu\n if (record.state === ActionMenuState.Null) {\n throw new ActionMenuProblemReportError('Action Menu has been cleared by the responder', {\n problemCode: ActionMenuProblemReportReason.Timeout,\n })\n }\n record.assertState([ActionMenuState.AwaitingSelection])\n\n const validSelection = record.menu?.options.some((item) => item.name === performMessage.name)\n if (!validSelection) {\n throw new CredoError('Selection does not match valid actions')\n }\n\n const previousState = record.state\n\n record.state = ActionMenuState.Done\n record.performedAction = new ActionMenuSelection({ name: performMessage.name, params: performMessage.params })\n\n await this.actionMenuRepository.update(agentContext, record)\n\n this.emitStateChangedEvent(agentContext, record, previousState)\n } else {\n throw new CredoError(`No Action Menu found with thread id ${messageContext.message.threadId}`)\n }\n }\n\n public async clearMenu(agentContext: AgentContext, options: ClearMenuOptions) {\n const { actionMenuRecord: record } = options\n\n const previousState = record.state\n\n // Update record\n record.state = ActionMenuState.Null\n record.menu = undefined\n record.performedAction = undefined\n\n await this.actionMenuRepository.update(agentContext, record)\n\n this.emitStateChangedEvent(agentContext, record, previousState)\n\n return record\n }\n\n public async processProblemReport(\n messageContext: DidCommInboundMessageContext<ActionMenuProblemReportMessage>\n ): Promise<ActionMenuRecord> {\n const { message: actionMenuProblemReportMessage, agentContext } = messageContext\n\n const connection = messageContext.assertReadyConnection()\n\n this.logger.debug(`Processing problem report with id ${actionMenuProblemReportMessage.id}`)\n\n const actionMenuRecord = await this.find(agentContext, {\n role: ActionMenuRole.Requester,\n connectionId: connection.id,\n })\n\n if (!actionMenuRecord) {\n throw new CredoError(`Unable to process action menu problem: record not found for connection id ${connection.id}`)\n }\n // Clear menu to restart flow\n return await this.clearMenu(agentContext, { actionMenuRecord })\n }\n\n public async findById(agentContext: AgentContext, actionMenuRecordId: string) {\n return await this.actionMenuRepository.findById(agentContext, actionMenuRecordId)\n }\n\n public async find(agentContext: AgentContext, options: FindMenuOptions) {\n return await this.actionMenuRepository.findSingleByQuery(agentContext, {\n connectionId: options.connectionId,\n role: options.role,\n threadId: options.threadId,\n })\n }\n\n public async findAllByQuery(\n agentContext: AgentContext,\n options: Query<ActionMenuRecord>,\n queryOptions?: QueryOptions\n ) {\n return await this.actionMenuRepository.findByQuery(agentContext, options, queryOptions)\n }\n\n private emitStateChangedEvent(\n agentContext: AgentContext,\n actionMenuRecord: ActionMenuRecord,\n previousState: ActionMenuState | null\n ) {\n this.eventEmitter.emit<ActionMenuStateChangedEvent>(agentContext, {\n type: ActionMenuEventTypes.ActionMenuStateChanged,\n payload: {\n actionMenuRecord: actionMenuRecord.clone(),\n previousState: previousState,\n },\n })\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { ActionMenuRole } from "../ActionMenuRole.mjs";
|
|
2
|
+
import { ActionMenu } from "../models/ActionMenu.mjs";
|
|
3
|
+
import { ActionMenuSelection } from "../models/ActionMenuSelection.mjs";
|
|
4
|
+
import { ActionMenuRecord } from "../repository/ActionMenuRecord.mjs";
|
|
5
|
+
import "../repository/index.mjs";
|
|
6
|
+
import { DidCommConnectionRecord } from "@credo-ts/didcomm";
|
|
7
|
+
|
|
8
|
+
//#region src/services/ActionMenuServiceOptions.d.ts
|
|
9
|
+
/**
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
interface CreateRequestOptions {
|
|
13
|
+
connection: DidCommConnectionRecord;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* @internal
|
|
17
|
+
*/
|
|
18
|
+
interface CreateMenuOptions {
|
|
19
|
+
connection: DidCommConnectionRecord;
|
|
20
|
+
menu: ActionMenu;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* @internal
|
|
24
|
+
*/
|
|
25
|
+
interface CreatePerformOptions {
|
|
26
|
+
actionMenuRecord: ActionMenuRecord;
|
|
27
|
+
performedAction: ActionMenuSelection;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
interface ClearMenuOptions {
|
|
33
|
+
actionMenuRecord: ActionMenuRecord;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* @internal
|
|
37
|
+
*/
|
|
38
|
+
interface FindMenuOptions {
|
|
39
|
+
connectionId: string;
|
|
40
|
+
role: ActionMenuRole;
|
|
41
|
+
threadId?: string;
|
|
42
|
+
}
|
|
43
|
+
//#endregion
|
|
44
|
+
export { ClearMenuOptions, CreateMenuOptions, CreatePerformOptions, CreateRequestOptions, FindMenuOptions };
|
|
45
|
+
//# sourceMappingURL=ActionMenuServiceOptions.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActionMenuServiceOptions.d.mts","names":[],"sources":["../../src/services/ActionMenuServiceOptions.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;AASiB,UAAA,oBAAA,CAAoB;EAOpB,UAAA,EANH,uBAOA;AAOd;AAQA;AAOA;;UAvBiB,iBAAA;cACH;QACN;;;;;UAMS,oBAAA;oBACG;mBACD;;;;;UAMF,gBAAA;oBACG;;;;;UAMH,eAAA;;QAET"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { ActionMenuService } from "./ActionMenuService.mjs";
|
package/package.json
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@credo-ts/action-menu",
|
|
3
|
-
"
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
"exports": {
|
|
4
|
+
".": "./build/index.mjs",
|
|
5
|
+
"./package.json": "./package.json"
|
|
6
|
+
},
|
|
7
|
+
"version": "0.6.2-alpha-20251210145840",
|
|
6
8
|
"files": [
|
|
7
9
|
"build"
|
|
8
10
|
],
|
|
@@ -18,19 +20,18 @@
|
|
|
18
20
|
},
|
|
19
21
|
"dependencies": {
|
|
20
22
|
"class-transformer": "0.5.1",
|
|
21
|
-
"class-validator": "0.14.1",
|
|
22
|
-
"rxjs": "^7.8.
|
|
23
|
-
"@credo-ts/core": "0.6.
|
|
23
|
+
"class-validator": "^0.14.1",
|
|
24
|
+
"rxjs": "^7.8.2",
|
|
25
|
+
"@credo-ts/core": "0.6.2-alpha-20251210145840",
|
|
26
|
+
"@credo-ts/didcomm": "0.6.2-alpha-20251210145840"
|
|
24
27
|
},
|
|
25
28
|
"devDependencies": {
|
|
26
|
-
"reflect-metadata": "
|
|
27
|
-
"
|
|
28
|
-
"typescript": "~5.5.2"
|
|
29
|
+
"reflect-metadata": "0.2.2",
|
|
30
|
+
"typescript": "~5.9.3"
|
|
29
31
|
},
|
|
30
32
|
"scripts": {
|
|
31
|
-
"build": "
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}
|
|
33
|
+
"build": "tsdown --config-loader unconfig"
|
|
34
|
+
},
|
|
35
|
+
"types": "./build/index.d.mts",
|
|
36
|
+
"module": "./build/index.mjs"
|
|
36
37
|
}
|
package/build/ActionMenuApi.d.ts
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import type { ClearActiveMenuOptions, FindActiveMenuOptions, PerformActionOptions, RequestMenuOptions, SendMenuOptions } from './ActionMenuApiOptions';
|
|
2
|
-
import { AgentContext, ConnectionService, MessageSender } from '@credo-ts/core';
|
|
3
|
-
import { ActionMenuService } from './services';
|
|
4
|
-
/**
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
export declare class ActionMenuApi {
|
|
8
|
-
private connectionService;
|
|
9
|
-
private messageSender;
|
|
10
|
-
private actionMenuService;
|
|
11
|
-
private agentContext;
|
|
12
|
-
constructor(connectionService: ConnectionService, messageSender: MessageSender, actionMenuService: ActionMenuService, agentContext: AgentContext);
|
|
13
|
-
/**
|
|
14
|
-
* Start Action Menu protocol as requester, asking for root menu. Any active menu will be cleared.
|
|
15
|
-
*
|
|
16
|
-
* @param options options for requesting menu
|
|
17
|
-
* @returns Action Menu record associated to this new request
|
|
18
|
-
*/
|
|
19
|
-
requestMenu(options: RequestMenuOptions): Promise<import("./repository").ActionMenuRecord>;
|
|
20
|
-
/**
|
|
21
|
-
* Send a new Action Menu as responder. This menu will be sent as response if there is an
|
|
22
|
-
* existing menu thread.
|
|
23
|
-
*
|
|
24
|
-
* @param options options for sending menu
|
|
25
|
-
* @returns Action Menu record associated to this action
|
|
26
|
-
*/
|
|
27
|
-
sendMenu(options: SendMenuOptions): Promise<import("./repository").ActionMenuRecord>;
|
|
28
|
-
/**
|
|
29
|
-
* Perform action in active Action Menu, as a requester. The related
|
|
30
|
-
* menu will be closed.
|
|
31
|
-
*
|
|
32
|
-
* @param options options for requesting menu
|
|
33
|
-
* @returns Action Menu record associated to this selection
|
|
34
|
-
*/
|
|
35
|
-
performAction(options: PerformActionOptions): Promise<import("./repository").ActionMenuRecord>;
|
|
36
|
-
/**
|
|
37
|
-
* Find the current active menu for a given connection and the specified role.
|
|
38
|
-
*
|
|
39
|
-
* @param options options for requesting active menu
|
|
40
|
-
* @returns Active Action Menu record, or null if no active menu found
|
|
41
|
-
*/
|
|
42
|
-
findActiveMenu(options: FindActiveMenuOptions): Promise<import("./repository").ActionMenuRecord | null>;
|
|
43
|
-
/**
|
|
44
|
-
* Clears the current active menu for a given connection and the specified role.
|
|
45
|
-
*
|
|
46
|
-
* @param options options for clearing active menu
|
|
47
|
-
* @returns Active Action Menu record, or null if no active menu record found
|
|
48
|
-
*/
|
|
49
|
-
clearActiveMenu(options: ClearActiveMenuOptions): Promise<import("./repository").ActionMenuRecord | null>;
|
|
50
|
-
}
|
package/build/ActionMenuApi.js
DELETED
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.ActionMenuApi = void 0;
|
|
13
|
-
const core_1 = require("@credo-ts/core");
|
|
14
|
-
const ActionMenuRole_1 = require("./ActionMenuRole");
|
|
15
|
-
const handlers_1 = require("./handlers");
|
|
16
|
-
const services_1 = require("./services");
|
|
17
|
-
/**
|
|
18
|
-
* @public
|
|
19
|
-
*/
|
|
20
|
-
let ActionMenuApi = class ActionMenuApi {
|
|
21
|
-
constructor(connectionService, messageSender, actionMenuService, agentContext) {
|
|
22
|
-
this.connectionService = connectionService;
|
|
23
|
-
this.messageSender = messageSender;
|
|
24
|
-
this.actionMenuService = actionMenuService;
|
|
25
|
-
this.agentContext = agentContext;
|
|
26
|
-
this.agentContext.dependencyManager.registerMessageHandlers([
|
|
27
|
-
new handlers_1.ActionMenuProblemReportHandler(this.actionMenuService),
|
|
28
|
-
new handlers_1.MenuMessageHandler(this.actionMenuService),
|
|
29
|
-
new handlers_1.MenuRequestMessageHandler(this.actionMenuService),
|
|
30
|
-
new handlers_1.PerformMessageHandler(this.actionMenuService),
|
|
31
|
-
]);
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Start Action Menu protocol as requester, asking for root menu. Any active menu will be cleared.
|
|
35
|
-
*
|
|
36
|
-
* @param options options for requesting menu
|
|
37
|
-
* @returns Action Menu record associated to this new request
|
|
38
|
-
*/
|
|
39
|
-
async requestMenu(options) {
|
|
40
|
-
const connection = await this.connectionService.getById(this.agentContext, options.connectionId);
|
|
41
|
-
const { message, record } = await this.actionMenuService.createRequest(this.agentContext, {
|
|
42
|
-
connection,
|
|
43
|
-
});
|
|
44
|
-
const outboundMessageContext = await (0, core_1.getOutboundMessageContext)(this.agentContext, {
|
|
45
|
-
message,
|
|
46
|
-
associatedRecord: record,
|
|
47
|
-
connectionRecord: connection,
|
|
48
|
-
});
|
|
49
|
-
await this.messageSender.sendMessage(outboundMessageContext);
|
|
50
|
-
return record;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Send a new Action Menu as responder. This menu will be sent as response if there is an
|
|
54
|
-
* existing menu thread.
|
|
55
|
-
*
|
|
56
|
-
* @param options options for sending menu
|
|
57
|
-
* @returns Action Menu record associated to this action
|
|
58
|
-
*/
|
|
59
|
-
async sendMenu(options) {
|
|
60
|
-
const connection = await this.connectionService.getById(this.agentContext, options.connectionId);
|
|
61
|
-
const { message, record } = await this.actionMenuService.createMenu(this.agentContext, {
|
|
62
|
-
connection,
|
|
63
|
-
menu: options.menu,
|
|
64
|
-
});
|
|
65
|
-
const outboundMessageContext = await (0, core_1.getOutboundMessageContext)(this.agentContext, {
|
|
66
|
-
message,
|
|
67
|
-
associatedRecord: record,
|
|
68
|
-
connectionRecord: connection,
|
|
69
|
-
});
|
|
70
|
-
await this.messageSender.sendMessage(outboundMessageContext);
|
|
71
|
-
return record;
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Perform action in active Action Menu, as a requester. The related
|
|
75
|
-
* menu will be closed.
|
|
76
|
-
*
|
|
77
|
-
* @param options options for requesting menu
|
|
78
|
-
* @returns Action Menu record associated to this selection
|
|
79
|
-
*/
|
|
80
|
-
async performAction(options) {
|
|
81
|
-
const connection = await this.connectionService.getById(this.agentContext, options.connectionId);
|
|
82
|
-
const actionMenuRecord = await this.actionMenuService.find(this.agentContext, {
|
|
83
|
-
connectionId: connection.id,
|
|
84
|
-
role: ActionMenuRole_1.ActionMenuRole.Requester,
|
|
85
|
-
});
|
|
86
|
-
if (!actionMenuRecord) {
|
|
87
|
-
throw new core_1.CredoError(`No active menu found for connection id ${options.connectionId}`);
|
|
88
|
-
}
|
|
89
|
-
const { message, record } = await this.actionMenuService.createPerform(this.agentContext, {
|
|
90
|
-
actionMenuRecord,
|
|
91
|
-
performedAction: options.performedAction,
|
|
92
|
-
});
|
|
93
|
-
const outboundMessageContext = await (0, core_1.getOutboundMessageContext)(this.agentContext, {
|
|
94
|
-
message,
|
|
95
|
-
associatedRecord: record,
|
|
96
|
-
connectionRecord: connection,
|
|
97
|
-
});
|
|
98
|
-
await this.messageSender.sendMessage(outboundMessageContext);
|
|
99
|
-
return record;
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* Find the current active menu for a given connection and the specified role.
|
|
103
|
-
*
|
|
104
|
-
* @param options options for requesting active menu
|
|
105
|
-
* @returns Active Action Menu record, or null if no active menu found
|
|
106
|
-
*/
|
|
107
|
-
async findActiveMenu(options) {
|
|
108
|
-
return this.actionMenuService.find(this.agentContext, {
|
|
109
|
-
connectionId: options.connectionId,
|
|
110
|
-
role: options.role,
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Clears the current active menu for a given connection and the specified role.
|
|
115
|
-
*
|
|
116
|
-
* @param options options for clearing active menu
|
|
117
|
-
* @returns Active Action Menu record, or null if no active menu record found
|
|
118
|
-
*/
|
|
119
|
-
async clearActiveMenu(options) {
|
|
120
|
-
const actionMenuRecord = await this.actionMenuService.find(this.agentContext, {
|
|
121
|
-
connectionId: options.connectionId,
|
|
122
|
-
role: options.role,
|
|
123
|
-
});
|
|
124
|
-
return actionMenuRecord ? await this.actionMenuService.clearMenu(this.agentContext, { actionMenuRecord }) : null;
|
|
125
|
-
}
|
|
126
|
-
};
|
|
127
|
-
exports.ActionMenuApi = ActionMenuApi;
|
|
128
|
-
exports.ActionMenuApi = ActionMenuApi = __decorate([
|
|
129
|
-
(0, core_1.injectable)(),
|
|
130
|
-
__metadata("design:paramtypes", [core_1.ConnectionService,
|
|
131
|
-
core_1.MessageSender,
|
|
132
|
-
services_1.ActionMenuService,
|
|
133
|
-
core_1.AgentContext])
|
|
134
|
-
], ActionMenuApi);
|
|
135
|
-
//# sourceMappingURL=ActionMenuApi.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActionMenuApi.js","sourceRoot":"","sources":["../src/ActionMenuApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import type { ActionMenuRole } from './ActionMenuRole';
|
|
2
|
-
import type { ActionMenu, ActionMenuSelection } from './models';
|
|
3
|
-
/**
|
|
4
|
-
* @public
|
|
5
|
-
*/
|
|
6
|
-
export interface FindActiveMenuOptions {
|
|
7
|
-
connectionId: string;
|
|
8
|
-
role: ActionMenuRole;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* @public
|
|
12
|
-
*/
|
|
13
|
-
export interface ClearActiveMenuOptions {
|
|
14
|
-
connectionId: string;
|
|
15
|
-
role: ActionMenuRole;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* @public
|
|
19
|
-
*/
|
|
20
|
-
export interface RequestMenuOptions {
|
|
21
|
-
connectionId: string;
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* @public
|
|
25
|
-
*/
|
|
26
|
-
export interface SendMenuOptions {
|
|
27
|
-
connectionId: string;
|
|
28
|
-
menu: ActionMenu;
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* @public
|
|
32
|
-
*/
|
|
33
|
-
export interface PerformActionOptions {
|
|
34
|
-
connectionId: string;
|
|
35
|
-
performedAction: ActionMenuSelection;
|
|
36
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActionMenuApiOptions.js","sourceRoot":"","sources":["../src/ActionMenuApiOptions.ts"],"names":[],"mappings":""}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import type { ActionMenuState } from './ActionMenuState';
|
|
2
|
-
import type { ActionMenuRecord } from './repository';
|
|
3
|
-
import type { BaseEvent } from '@credo-ts/core';
|
|
4
|
-
/**
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
export declare enum ActionMenuEventTypes {
|
|
8
|
-
ActionMenuStateChanged = "ActionMenuStateChanged"
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* @public
|
|
12
|
-
*/
|
|
13
|
-
export interface ActionMenuStateChangedEvent extends BaseEvent {
|
|
14
|
-
type: typeof ActionMenuEventTypes.ActionMenuStateChanged;
|
|
15
|
-
payload: {
|
|
16
|
-
actionMenuRecord: ActionMenuRecord;
|
|
17
|
-
previousState: ActionMenuState | null;
|
|
18
|
-
};
|
|
19
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ActionMenuEventTypes = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
var ActionMenuEventTypes;
|
|
8
|
-
(function (ActionMenuEventTypes) {
|
|
9
|
-
ActionMenuEventTypes["ActionMenuStateChanged"] = "ActionMenuStateChanged";
|
|
10
|
-
})(ActionMenuEventTypes || (exports.ActionMenuEventTypes = ActionMenuEventTypes = {}));
|
|
11
|
-
//# sourceMappingURL=ActionMenuEvents.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActionMenuEvents.js","sourceRoot":"","sources":["../src/ActionMenuEvents.ts"],"names":[],"mappings":";;;AAIA;;GAEG;AACH,IAAY,oBAEX;AAFD,WAAY,oBAAoB;IAC9B,yEAAiD,CAAA;AACnD,CAAC,EAFW,oBAAoB,oCAApB,oBAAoB,QAE/B"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { DependencyManager, FeatureRegistry, Module } from '@credo-ts/core';
|
|
2
|
-
import { ActionMenuApi } from './ActionMenuApi';
|
|
3
|
-
/**
|
|
4
|
-
* @public
|
|
5
|
-
*/
|
|
6
|
-
export declare class ActionMenuModule implements Module {
|
|
7
|
-
readonly api: typeof ActionMenuApi;
|
|
8
|
-
/**
|
|
9
|
-
* Registers the dependencies of the question answer module on the dependency manager.
|
|
10
|
-
*/
|
|
11
|
-
register(dependencyManager: DependencyManager, featureRegistry: FeatureRegistry): void;
|
|
12
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ActionMenuModule = void 0;
|
|
4
|
-
const core_1 = require("@credo-ts/core");
|
|
5
|
-
const ActionMenuApi_1 = require("./ActionMenuApi");
|
|
6
|
-
const ActionMenuRole_1 = require("./ActionMenuRole");
|
|
7
|
-
const repository_1 = require("./repository");
|
|
8
|
-
const services_1 = require("./services");
|
|
9
|
-
/**
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
|
-
class ActionMenuModule {
|
|
13
|
-
constructor() {
|
|
14
|
-
this.api = ActionMenuApi_1.ActionMenuApi;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Registers the dependencies of the question answer module on the dependency manager.
|
|
18
|
-
*/
|
|
19
|
-
register(dependencyManager, featureRegistry) {
|
|
20
|
-
// Services
|
|
21
|
-
dependencyManager.registerSingleton(services_1.ActionMenuService);
|
|
22
|
-
// Repositories
|
|
23
|
-
dependencyManager.registerSingleton(repository_1.ActionMenuRepository);
|
|
24
|
-
// Feature Registry
|
|
25
|
-
featureRegistry.register(new core_1.Protocol({
|
|
26
|
-
id: 'https://didcomm.org/action-menu/1.0',
|
|
27
|
-
roles: [ActionMenuRole_1.ActionMenuRole.Requester, ActionMenuRole_1.ActionMenuRole.Responder],
|
|
28
|
-
}));
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
exports.ActionMenuModule = ActionMenuModule;
|
|
32
|
-
//# sourceMappingURL=ActionMenuModule.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActionMenuModule.js","sourceRoot":"","sources":["../src/ActionMenuModule.ts"],"names":[],"mappings":";;;AAEA,yCAAyC;AAEzC,mDAA+C;AAC/C,qDAAiD;AACjD,6CAAmD;AACnD,yCAA8C;AAE9C;;GAEG;AACH,MAAa,gBAAgB;IAA7B;QACkB,QAAG,GAAG,6BAAa,CAAA;IAoBrC,CAAC;IAlBC;;OAEG;IACI,QAAQ,CAAC,iBAAoC,EAAE,eAAgC;QACpF,WAAW;QACX,iBAAiB,CAAC,iBAAiB,CAAC,4BAAiB,CAAC,CAAA;QAEtD,eAAe;QACf,iBAAiB,CAAC,iBAAiB,CAAC,iCAAoB,CAAC,CAAA;QAEzD,mBAAmB;QACnB,eAAe,CAAC,QAAQ,CACtB,IAAI,eAAQ,CAAC;YACX,EAAE,EAAE,qCAAqC;YACzC,KAAK,EAAE,CAAC,+BAAc,CAAC,SAAS,EAAE,+BAAc,CAAC,SAAS,CAAC;SAC5D,CAAC,CACH,CAAA;IACH,CAAC;CACF;AArBD,4CAqBC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Action Menu roles based on the flow defined in RFC 0509.
|
|
3
|
-
*
|
|
4
|
-
* @see https://github.com/hyperledger/aries-rfcs/tree/main/features/0509-action-menu#roles
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
export declare enum ActionMenuRole {
|
|
8
|
-
Requester = "requester",
|
|
9
|
-
Responder = "responder"
|
|
10
|
-
}
|
package/build/ActionMenuRole.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ActionMenuRole = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Action Menu roles based on the flow defined in RFC 0509.
|
|
6
|
-
*
|
|
7
|
-
* @see https://github.com/hyperledger/aries-rfcs/tree/main/features/0509-action-menu#roles
|
|
8
|
-
* @public
|
|
9
|
-
*/
|
|
10
|
-
var ActionMenuRole;
|
|
11
|
-
(function (ActionMenuRole) {
|
|
12
|
-
ActionMenuRole["Requester"] = "requester";
|
|
13
|
-
ActionMenuRole["Responder"] = "responder";
|
|
14
|
-
})(ActionMenuRole || (exports.ActionMenuRole = ActionMenuRole = {}));
|
|
15
|
-
//# sourceMappingURL=ActionMenuRole.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActionMenuRole.js","sourceRoot":"","sources":["../src/ActionMenuRole.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,yCAAuB,CAAA;IACvB,yCAAuB,CAAA;AACzB,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Action Menu states based on the flow defined in RFC 0509.
|
|
3
|
-
*
|
|
4
|
-
* @see https://github.com/hyperledger/aries-rfcs/tree/main/features/0509-action-menu#states
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
export declare enum ActionMenuState {
|
|
8
|
-
Null = "null",
|
|
9
|
-
AwaitingRootMenu = "awaiting-root-menu",
|
|
10
|
-
PreparingRootMenu = "preparing-root-menu",
|
|
11
|
-
PreparingSelection = "preparing-selection",
|
|
12
|
-
AwaitingSelection = "awaiting-selection",
|
|
13
|
-
Done = "done"
|
|
14
|
-
}
|
package/build/ActionMenuState.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ActionMenuState = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Action Menu states based on the flow defined in RFC 0509.
|
|
6
|
-
*
|
|
7
|
-
* @see https://github.com/hyperledger/aries-rfcs/tree/main/features/0509-action-menu#states
|
|
8
|
-
* @public
|
|
9
|
-
*/
|
|
10
|
-
var ActionMenuState;
|
|
11
|
-
(function (ActionMenuState) {
|
|
12
|
-
ActionMenuState["Null"] = "null";
|
|
13
|
-
ActionMenuState["AwaitingRootMenu"] = "awaiting-root-menu";
|
|
14
|
-
ActionMenuState["PreparingRootMenu"] = "preparing-root-menu";
|
|
15
|
-
ActionMenuState["PreparingSelection"] = "preparing-selection";
|
|
16
|
-
ActionMenuState["AwaitingSelection"] = "awaiting-selection";
|
|
17
|
-
ActionMenuState["Done"] = "done";
|
|
18
|
-
})(ActionMenuState || (exports.ActionMenuState = ActionMenuState = {}));
|
|
19
|
-
//# sourceMappingURL=ActionMenuState.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActionMenuState.js","sourceRoot":"","sources":["../src/ActionMenuState.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,IAAY,eAOX;AAPD,WAAY,eAAe;IACzB,gCAAa,CAAA;IACb,0DAAuC,CAAA;IACvC,4DAAyC,CAAA;IACzC,6DAA0C,CAAA;IAC1C,2DAAwC,CAAA;IACxC,gCAAa,CAAA;AACf,CAAC,EAPW,eAAe,+BAAf,eAAe,QAO1B"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import type { ActionMenuProblemReportReason } from './ActionMenuProblemReportReason';
|
|
2
|
-
import type { ProblemReportErrorOptions } from '@credo-ts/core';
|
|
3
|
-
import { ProblemReportError } from '@credo-ts/core';
|
|
4
|
-
import { ActionMenuProblemReportMessage } from '../messages';
|
|
5
|
-
/**
|
|
6
|
-
* @internal
|
|
7
|
-
*/
|
|
8
|
-
interface ActionMenuProblemReportErrorOptions extends ProblemReportErrorOptions {
|
|
9
|
-
problemCode: ActionMenuProblemReportReason;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* @internal
|
|
13
|
-
*/
|
|
14
|
-
export declare class ActionMenuProblemReportError extends ProblemReportError {
|
|
15
|
-
message: string;
|
|
16
|
-
problemReport: ActionMenuProblemReportMessage;
|
|
17
|
-
constructor(message: string, { problemCode }: ActionMenuProblemReportErrorOptions);
|
|
18
|
-
}
|
|
19
|
-
export {};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ActionMenuProblemReportError = void 0;
|
|
4
|
-
const core_1 = require("@credo-ts/core");
|
|
5
|
-
const messages_1 = require("../messages");
|
|
6
|
-
/**
|
|
7
|
-
* @internal
|
|
8
|
-
*/
|
|
9
|
-
class ActionMenuProblemReportError extends core_1.ProblemReportError {
|
|
10
|
-
constructor(message, { problemCode }) {
|
|
11
|
-
super(message, { problemCode });
|
|
12
|
-
this.message = message;
|
|
13
|
-
this.problemReport = new messages_1.ActionMenuProblemReportMessage({
|
|
14
|
-
description: {
|
|
15
|
-
en: message,
|
|
16
|
-
code: problemCode,
|
|
17
|
-
},
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
exports.ActionMenuProblemReportError = ActionMenuProblemReportError;
|
|
22
|
-
//# sourceMappingURL=ActionMenuProblemReportError.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActionMenuProblemReportError.js","sourceRoot":"","sources":["../../src/errors/ActionMenuProblemReportError.ts"],"names":[],"mappings":";;;AAGA,yCAAmD;AAEnD,0CAA4D;AAS5D;;GAEG;AACH,MAAa,4BAA6B,SAAQ,yBAAkB;IAGlE,YAA0B,OAAe,EAAE,EAAE,WAAW,EAAuC;QAC7F,KAAK,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,CAAC,CAAA;QADP,YAAO,GAAP,OAAO,CAAQ;QAEvC,IAAI,CAAC,aAAa,GAAG,IAAI,yCAA8B,CAAC;YACtD,WAAW,EAAE;gBACX,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,WAAW;aAClB;SACF,CAAC,CAAA;IACJ,CAAC;CACF;AAZD,oEAYC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ActionMenuProblemReportReason = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Action Menu errors discussed in RFC 0509.
|
|
6
|
-
*
|
|
7
|
-
* @see https://github.com/hyperledger/aries-rfcs/tree/main/features/0509-action-menu#unresolved-questions
|
|
8
|
-
* @internal
|
|
9
|
-
*/
|
|
10
|
-
var ActionMenuProblemReportReason;
|
|
11
|
-
(function (ActionMenuProblemReportReason) {
|
|
12
|
-
ActionMenuProblemReportReason["Timeout"] = "timeout";
|
|
13
|
-
})(ActionMenuProblemReportReason || (exports.ActionMenuProblemReportReason = ActionMenuProblemReportReason = {}));
|
|
14
|
-
//# sourceMappingURL=ActionMenuProblemReportReason.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActionMenuProblemReportReason.js","sourceRoot":"","sources":["../../src/errors/ActionMenuProblemReportReason.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,IAAY,6BAEX;AAFD,WAAY,6BAA6B;IACvC,oDAAmB,CAAA;AACrB,CAAC,EAFW,6BAA6B,6CAA7B,6BAA6B,QAExC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { ActionMenuService } from '../services';
|
|
2
|
-
import type { MessageHandler, MessageHandlerInboundMessage } from '@credo-ts/core';
|
|
3
|
-
import { ActionMenuProblemReportMessage } from '../messages';
|
|
4
|
-
/**
|
|
5
|
-
* @internal
|
|
6
|
-
*/
|
|
7
|
-
export declare class ActionMenuProblemReportHandler implements MessageHandler {
|
|
8
|
-
private actionMenuService;
|
|
9
|
-
supportedMessages: (typeof ActionMenuProblemReportMessage)[];
|
|
10
|
-
constructor(actionMenuService: ActionMenuService);
|
|
11
|
-
handle(messageContext: MessageHandlerInboundMessage<ActionMenuProblemReportHandler>): Promise<void>;
|
|
12
|
-
}
|