@acorex/modules 21.0.0-next.45 → 21.0.0-next.47

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.
Files changed (67) hide show
  1. package/fesm2022/{acorex-modules-ai-management-agent.entity-D6-0_Ms3.mjs → acorex-modules-ai-management-agent.entity-Bnt9zkci.mjs} +15 -1
  2. package/fesm2022/acorex-modules-ai-management-agent.entity-Bnt9zkci.mjs.map +1 -0
  3. package/fesm2022/acorex-modules-ai-management.mjs +53 -165
  4. package/fesm2022/acorex-modules-ai-management.mjs.map +1 -1
  5. package/fesm2022/{acorex-modules-common-search-popup.component-BbRyjGia.mjs → acorex-modules-common-search-popup.component-CVuE0xgM.mjs} +14 -7
  6. package/fesm2022/acorex-modules-common-search-popup.component-CVuE0xgM.mjs.map +1 -0
  7. package/fesm2022/acorex-modules-common.mjs +2 -2
  8. package/fesm2022/{acorex-modules-conversation-acorex-modules-conversation-BJU2_R9O.mjs → acorex-modules-conversation-acorex-modules-conversation-F7nQo1GU.mjs} +749 -335
  9. package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-F7nQo1GU.mjs.map +1 -0
  10. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-BB5Uyydt.mjs +287 -0
  11. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-BB5Uyydt.mjs.map +1 -0
  12. package/fesm2022/{acorex-modules-conversation-comments-page.component-Bg6m7UTG.mjs → acorex-modules-conversation-comments-page.component-QnDogSDy.mjs} +2 -2
  13. package/fesm2022/{acorex-modules-conversation-comments-page.component-Bg6m7UTG.mjs.map → acorex-modules-conversation-comments-page.component-QnDogSDy.mjs.map} +1 -1
  14. package/fesm2022/acorex-modules-conversation-start-assist-chat.command-DRlWzEDp.mjs +45 -0
  15. package/fesm2022/acorex-modules-conversation-start-assist-chat.command-DRlWzEDp.mjs.map +1 -0
  16. package/fesm2022/acorex-modules-conversation.mjs +1 -1
  17. package/fesm2022/{acorex-modules-dashboard-management-acorex-modules-dashboard-management-D11VudG8.mjs → acorex-modules-dashboard-management-acorex-modules-dashboard-management-kk0CINL1.mjs} +5 -5
  18. package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-kk0CINL1.mjs.map +1 -0
  19. package/fesm2022/{acorex-modules-dashboard-management-index-DB3Uh1wL.mjs → acorex-modules-dashboard-management-index-Bhm8mAON.mjs} +2 -2
  20. package/fesm2022/{acorex-modules-dashboard-management-index-DB3Uh1wL.mjs.map → acorex-modules-dashboard-management-index-Bhm8mAON.mjs.map} +1 -1
  21. package/fesm2022/acorex-modules-dashboard-management.mjs +1 -1
  22. package/fesm2022/acorex-modules-document-management.mjs +8 -5
  23. package/fesm2022/acorex-modules-document-management.mjs.map +1 -1
  24. package/fesm2022/acorex-modules-person-core.mjs +4 -0
  25. package/fesm2022/acorex-modules-person-core.mjs.map +1 -1
  26. package/fesm2022/{acorex-modules-platform-dev-tools-menu.provider-BFueKnuF.mjs → acorex-modules-platform-dev-tools-menu.provider-DDjYvQr7.mjs} +6 -2
  27. package/fesm2022/acorex-modules-platform-dev-tools-menu.provider-DDjYvQr7.mjs.map +1 -0
  28. package/fesm2022/acorex-modules-platform-dev-tools.mjs +42 -5
  29. package/fesm2022/acorex-modules-platform-dev-tools.mjs.map +1 -1
  30. package/fesm2022/acorex-modules-project-management.mjs +33 -3
  31. package/fesm2022/acorex-modules-project-management.mjs.map +1 -1
  32. package/fesm2022/acorex-modules-report-management.mjs +12 -8
  33. package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
  34. package/fesm2022/{acorex-modules-task-management-acorex-modules-task-management-DDUq9FpA.mjs → acorex-modules-task-management-acorex-modules-task-management-BL2IOcx3.mjs} +63 -6
  35. package/fesm2022/acorex-modules-task-management-acorex-modules-task-management-BL2IOcx3.mjs.map +1 -0
  36. package/fesm2022/{acorex-modules-task-management-task-board.page-C6j-_aSD.mjs → acorex-modules-task-management-task-board.page-DUIHtqnr.mjs} +138 -68
  37. package/fesm2022/acorex-modules-task-management-task-board.page-DUIHtqnr.mjs.map +1 -0
  38. package/fesm2022/acorex-modules-task-management.mjs +1 -1
  39. package/fesm2022/{acorex-modules-workflow-management-activity-command-configurator-widget-edit.component-Dj6LkQeZ.mjs → acorex-modules-workflow-management-activity-command-configurator-widget-edit.component-CYyr1kQk.mjs} +3 -3
  40. package/fesm2022/{acorex-modules-workflow-management-activity-command-configurator-widget-edit.component-Dj6LkQeZ.mjs.map → acorex-modules-workflow-management-activity-command-configurator-widget-edit.component-CYyr1kQk.mjs.map} +1 -1
  41. package/fesm2022/{acorex-modules-workflow-management-index-Eh5DDK-V.mjs → acorex-modules-workflow-management-index-DC_9M9dk.mjs} +3 -3
  42. package/fesm2022/{acorex-modules-workflow-management-index-Eh5DDK-V.mjs.map → acorex-modules-workflow-management-index-DC_9M9dk.mjs.map} +1 -1
  43. package/fesm2022/{acorex-modules-workflow-management-index-V4OesZTq.mjs → acorex-modules-workflow-management-index-jin24dmb.mjs} +3 -3
  44. package/fesm2022/{acorex-modules-workflow-management-index-V4OesZTq.mjs.map → acorex-modules-workflow-management-index-jin24dmb.mjs.map} +1 -1
  45. package/fesm2022/{acorex-modules-workflow-management-workflow-instance.entity-B_V3uMSI.mjs → acorex-modules-workflow-management-workflow-instance.entity-BnKT3Wgh.mjs} +2 -2
  46. package/fesm2022/{acorex-modules-workflow-management-workflow-instance.entity-B_V3uMSI.mjs.map → acorex-modules-workflow-management-workflow-instance.entity-BnKT3Wgh.mjs.map} +1 -1
  47. package/fesm2022/acorex-modules-workflow-management.mjs +11 -20
  48. package/fesm2022/acorex-modules-workflow-management.mjs.map +1 -1
  49. package/package.json +2 -2
  50. package/types/acorex-modules-ai-management.d.ts +19 -22
  51. package/types/acorex-modules-conversation.d.ts +31 -39
  52. package/types/acorex-modules-dashboard-management.d.ts +2 -2
  53. package/types/acorex-modules-platform-dev-tools.d.ts +16 -2
  54. package/types/acorex-modules-report-management.d.ts +8 -1
  55. package/types/acorex-modules-task-management.d.ts +26 -1
  56. package/types/acorex-modules-workflow-management.d.ts +2 -3
  57. package/fesm2022/acorex-modules-ai-management-agent.entity-D6-0_Ms3.mjs.map +0 -1
  58. package/fesm2022/acorex-modules-common-search-popup.component-BbRyjGia.mjs.map +0 -1
  59. package/fesm2022/acorex-modules-conversation-acorex-modules-conversation-BJU2_R9O.mjs.map +0 -1
  60. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-DX2JPckF.mjs +0 -324
  61. package/fesm2022/acorex-modules-conversation-assist-delegated-agent-detail-popup.component-DX2JPckF.mjs.map +0 -1
  62. package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-D11VudG8.mjs.map +0 -1
  63. package/fesm2022/acorex-modules-platform-dev-tools-menu.provider-BFueKnuF.mjs.map +0 -1
  64. package/fesm2022/acorex-modules-task-management-acorex-modules-task-management-DDUq9FpA.mjs.map +0 -1
  65. package/fesm2022/acorex-modules-task-management-task-board.page-C6j-_aSD.mjs.map +0 -1
  66. package/fesm2022/acorex-modules-workflow-management-workflow-task-popover.component-l37iXJIY.mjs +0 -362
  67. package/fesm2022/acorex-modules-workflow-management-workflow-task-popover.component-l37iXJIY.mjs.map +0 -1
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@acorex/modules",
3
- "version": "21.0.0-next.45",
3
+ "version": "21.0.0-next.47",
4
4
  "peerDependencies": {
5
- "@acorex/platform": "21.0.0-next.45",
5
+ "@acorex/platform": "21.0.0-next.47",
6
6
  "@angular/service-worker": "^20.0.0",
7
7
  "d3": "^7.0.0",
8
8
  "html2canvas": "^1.0.0",
@@ -5,6 +5,7 @@ import { AXPModuleManifest, AXPDataSourceDefinitionProvider, AXPDataSourceDefini
5
5
  import * as i2 from '@acorex/platform/layout/widgets';
6
6
  import { AXPEntity, AXPMenuProvider, AXPMenuProviderContext, AXPFileStorageService } from '@acorex/platform/common';
7
7
  import { AXPEntityDefinitionLoader, AXPEntityPreloadEntity, AXPEntityModel } from '@acorex/platform/layout/entity';
8
+ import { AXPPermissionDefinitionProvider, AXPPermissionDefinitionProviderContext } from '@acorex/platform/auth';
8
9
 
9
10
  declare class AXMAiManagementModule {
10
11
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMAiManagementModule, never>;
@@ -309,6 +310,18 @@ declare class AXMAiManagementMenuProvider implements AXPMenuProvider {
309
310
  static ɵprov: i0.ɵɵInjectableDeclaration<AXMAiManagementMenuProvider>;
310
311
  }
311
312
 
313
+ declare const AXMPermissionsKeys: {
314
+ readonly AiManagement: {
315
+ readonly Management: "AiManagement:Permission:Management";
316
+ };
317
+ };
318
+
319
+ declare class AXMPermissionDefinitionProvider implements AXPPermissionDefinitionProvider {
320
+ define(context: AXPPermissionDefinitionProviderContext): Promise<void>;
321
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXMPermissionDefinitionProvider, never>;
322
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXMPermissionDefinitionProvider>;
323
+ }
324
+
312
325
  /**
313
326
  * AI Management setting keys.
314
327
  * Pattern: AiManagement:Setting:{Path}
@@ -316,24 +329,12 @@ declare class AXMAiManagementMenuProvider implements AXPMenuProvider {
316
329
  declare const AXPAiManagementSettings: {
317
330
  /** Assist primary key (`id`) used when no assist is explicitly selected (tenant-scoped). */
318
331
  readonly DefaultAssistId: "AiManagement:Setting:DefaultAssistId";
319
- /**
320
- * Optional catalog `AiModel` row id (`id`) used as a tenant-wide fallback when a feature does not
321
- * receive an explicit model (e.g. chat picker, vision/OCR pipeline, image, speech, TTS).
322
- */
323
- readonly DefaultModelChat: "AiManagement:Setting:DefaultModel.Chat";
324
- /** Preferred model for document/vision extraction and similar OCR-style tasks. */
325
- readonly DefaultModelVision: "AiManagement:Setting:DefaultModel.Vision";
326
- readonly DefaultModelImage: "AiManagement:Setting:DefaultModel.Image";
327
- readonly DefaultModelSpeech: "AiManagement:Setting:DefaultModel.Speech";
328
- readonly DefaultModelTts: "AiManagement:Setting:DefaultModel.Tts";
329
332
  readonly Providers: {
330
333
  readonly Gemini: {
331
334
  readonly ApiKey: "AiManagement:Setting:Providers.Gemini.ApiKey";
332
335
  };
333
336
  readonly Demis: {
334
337
  readonly BearerToken: "AiManagement:Setting:Providers.Demis.BearerToken";
335
- /** AiAgent catalog `name` (slug) used as Demisco `agent_uuid` when no agent run context exists. */
336
- readonly DefaultAgentName: "AiManagement:Setting:Providers.Demis.DefaultAgentName";
337
338
  };
338
339
  };
339
340
  };
@@ -429,6 +430,8 @@ interface AXMAiManagementAgentEntityModel extends AXPEntityModel<string> {
429
430
  toolIds?: unknown;
430
431
  queryIds?: unknown;
431
432
  maxSteps?: number;
433
+ /** When true, this agent is offered in Conversation “Chat with AI” and runs as a direct agent chat. */
434
+ isAssist?: boolean;
432
435
  }
433
436
 
434
437
  /** Aligns with {@link AXPAiPlanningMode} in ai-engine.types (avoid circular imports). */
@@ -1035,17 +1038,11 @@ declare class AXPAiAssistChatModelCatalogService {
1035
1038
  }
1036
1039
 
1037
1040
  declare class AXPAiDefaultModelPickerService {
1038
- private readonly settings;
1039
- /**
1040
- * Reads the tenant setting for the given catalog purpose (catalog `AiModel` row id, or empty).
1041
- */
1042
- getTenantDefaultModelIdForPurpose(purpose: AXMAiModelPurposeSlug): Promise<string | undefined>;
1043
1041
  /**
1044
- * Picks a model from chat/vision catalog candidates:
1045
- * tenant default when it matches an entry and supports the purpose; otherwise first candidate
1046
- * that supports the purpose; otherwise the first candidate.
1042
+ * Picks a model from chat/vision catalog candidates: first entry that supports the purpose;
1043
+ * otherwise the first candidate.
1047
1044
  */
1048
- pickFromChatCatalogForPurpose(models: AXPAiChatModelListItem[], purpose: 'chat' | 'vision', tenantPreferredId: string | undefined): AXPAiChatModelListItem | undefined;
1045
+ pickFromChatCatalogForPurpose(models: AXPAiChatModelListItem[], purpose: 'chat' | 'vision'): AXPAiChatModelListItem | undefined;
1049
1046
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPAiDefaultModelPickerService, never>;
1050
1047
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPAiDefaultModelPickerService>;
1051
1048
  }
@@ -1146,5 +1143,5 @@ declare class AXMAiAssistPromptBoxComponent implements OnInit, OnDestroy {
1146
1143
  static ɵcmp: i0.ɵɵComponentDeclaration<AXMAiAssistPromptBoxComponent, "axm-ai-assist-prompt-box", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "initialPrompt": { "alias": "initialPrompt"; "required": false; "isSignal": true; }; "contentMaxWidthPx": { "alias": "contentMaxWidthPx"; "required": false; "isSignal": true; }; "initialAssistId": { "alias": "initialAssistId"; "required": false; "isSignal": true; }; "initialDirectAgentId": { "alias": "initialDirectAgentId"; "required": false; "isSignal": true; }; "runPrompt": { "alias": "runPrompt"; "required": true; "isSignal": true; }; "requestClose": { "alias": "requestClose"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
1147
1144
  }
1148
1145
 
1149
- export { AIMANAGEMENT_CHAT_GENERATE_IMAGE_COMMAND_KEY, AIMANAGEMENT_CHAT_SYNTHESIZE_SPEECH_COMMAND_KEY, AIMANAGEMENT_CHAT_TRANSCRIBE_SPEECH_COMMAND_KEY, AIMANAGEMENT_EXTRACT_DOCUMENT_TEXT_COMMAND_KEY, AIMANAGEMENT_STRUCTURED_TEXT_COMPLETION_COMMAND_KEY, AI_AGENT_CATALOG_DATASOURCE_NAME, AI_CHAT_ATTACHMENT_CATEGORY, AI_CHAT_ATTACHMENT_REF_TYPE, AI_CHAT_GENERATED_IMAGE_REF_TYPE, AI_CHAT_GENERATED_SPEECH_REF_TYPE, AI_COMMAND_REGISTRY_CATALOG_DATASOURCE_NAME, AI_GENERATED_IMAGE_MAX_REMOTE_URL_IN_TOOL, AI_MODEL_CATALOG_DATASOURCE_NAME, AI_MODEL_IMAGE_CATALOG_DATASOURCE_NAME, AI_MODEL_SPEECH_CATALOG_DATASOURCE_NAME, AI_MODEL_TTS_CATALOG_DATASOURCE_NAME, AI_QUERY_REGISTRY_CATALOG_DATASOURCE_NAME, AXMAiAgentCatalogDataSourceDefinition, AXMAiAssistPromptBoxComponent, AXMAiAssistPromptBoxService, AXMAiCommandRegistryCatalogDataSourceDefinition, AXMAiManagementEntityProvider, AXMAiManagementMenuProvider, AXMAiManagementModule, AXMAiModelCatalogDataSourceDefinition, AXMAiQueryRegistryCatalogDataSourceDefinition, AXPAI_DELEGATED_AGENT_DEFAULT_MAX_STEPS, AXPAI_DOCUMENT_VISION_DEFAULT_USER_INSTRUCTION, AXPAI_DOCUMENT_VISION_EXTRACTION_SYSTEM, AXPAI_ENGINE_DEFAULT_MAX_STEPS, AXPAI_SUPERVISOR_AGENT_TOOL_PREFIX, AXPAiAssistChatModelCatalogService, AXPAiAssistDefaultMaxStructuredRetries, AXPAiAssistDefaultStructuredMaxTokens, AXPAiAssistService, AXPAiChatToolRunContextService, AXPAiDefaultModelPickerService, AXPAiEngine, AXPAiManagementMenuKeys, AXPAiManagementSettings, AXPAiManagerService, AXPAiPlatformRuntimeContextBuilder, AXPAiStructuredOutputError, AiManagementManifest, RootConfig, axpAiAssistInitialMessagesToTranscript, axpAiChatAgentResultMessage, axpAiChatDelegatedReflectionAssistantMessage, axpAiChatMessageGetText, axpAiChatMessageIsDelegatedReflectionExcluded, axpAiChatMessagesFromProviderAssistant, axpAiChatTextMessage, axpAiChatToolOrAgentResultBodyJson, axpAiChatToolResultBodyJson, axpAiChatToolResultMessage, axpAiChatUserMessage, axpAiCoercePlanningAssistantTextToThink, axpAiCollectDelegatedAgentOutcomeResponses, axpAiDelegatedAgentOutcomeResponsesPlainText, axpAiDelegatedAgentPromptPreview, axpAiDelegatedSubTranscriptAppendFileArtifactFromToolResults, axpAiExtractLastStoredFileArtifactFromChatMessages, axpAiExtractStoredFileArtifactFromUnknown, axpAiMergePlainAssistantTextTurn, axpAiNormalizeHandlerResultToToolBody, axpAiParseDelegatedAgentResultSegmentsFromUnknown, axpAiParseSupervisorAgentToolName, axpAiPruneAssistantPiecesToFirstToolOnly, axpAiStripAssistInitialHtmlToPlain, axpAiSupervisorAgentToolName, axpAiToolCallFromAssistantToolMessage, blobOrFileFromImageResult, getAiChatCommandLlmParametersOverride, isChatPurposeModelRow, isImagePurposeModelRow, isSpeechPurposeModelRow, isTtsPurposeModelRow, modelRowHasPurpose, normalizeAiToolCommandArgs, normalizeModelPurposes, persistAiChatAttachmentImage, persistAiGeneratedImage, persistAiGeneratedSpeech };
1146
+ export { AIMANAGEMENT_CHAT_GENERATE_IMAGE_COMMAND_KEY, AIMANAGEMENT_CHAT_SYNTHESIZE_SPEECH_COMMAND_KEY, AIMANAGEMENT_CHAT_TRANSCRIBE_SPEECH_COMMAND_KEY, AIMANAGEMENT_EXTRACT_DOCUMENT_TEXT_COMMAND_KEY, AIMANAGEMENT_STRUCTURED_TEXT_COMPLETION_COMMAND_KEY, AI_AGENT_CATALOG_DATASOURCE_NAME, AI_CHAT_ATTACHMENT_CATEGORY, AI_CHAT_ATTACHMENT_REF_TYPE, AI_CHAT_GENERATED_IMAGE_REF_TYPE, AI_CHAT_GENERATED_SPEECH_REF_TYPE, AI_COMMAND_REGISTRY_CATALOG_DATASOURCE_NAME, AI_GENERATED_IMAGE_MAX_REMOTE_URL_IN_TOOL, AI_MODEL_CATALOG_DATASOURCE_NAME, AI_MODEL_IMAGE_CATALOG_DATASOURCE_NAME, AI_MODEL_SPEECH_CATALOG_DATASOURCE_NAME, AI_MODEL_TTS_CATALOG_DATASOURCE_NAME, AI_QUERY_REGISTRY_CATALOG_DATASOURCE_NAME, AXMAiAgentCatalogDataSourceDefinition, AXMAiAssistPromptBoxComponent, AXMAiAssistPromptBoxService, AXMAiCommandRegistryCatalogDataSourceDefinition, AXMAiManagementEntityProvider, AXMAiManagementMenuProvider, AXMAiManagementModule, AXMAiModelCatalogDataSourceDefinition, AXMAiQueryRegistryCatalogDataSourceDefinition, AXMPermissionDefinitionProvider, AXMPermissionsKeys, AXPAI_DELEGATED_AGENT_DEFAULT_MAX_STEPS, AXPAI_DOCUMENT_VISION_DEFAULT_USER_INSTRUCTION, AXPAI_DOCUMENT_VISION_EXTRACTION_SYSTEM, AXPAI_ENGINE_DEFAULT_MAX_STEPS, AXPAI_SUPERVISOR_AGENT_TOOL_PREFIX, AXPAiAssistChatModelCatalogService, AXPAiAssistDefaultMaxStructuredRetries, AXPAiAssistDefaultStructuredMaxTokens, AXPAiAssistService, AXPAiChatToolRunContextService, AXPAiDefaultModelPickerService, AXPAiEngine, AXPAiManagementMenuKeys, AXPAiManagementSettings, AXPAiManagerService, AXPAiPlatformRuntimeContextBuilder, AXPAiStructuredOutputError, AiManagementManifest, RootConfig, axpAiAssistInitialMessagesToTranscript, axpAiChatAgentResultMessage, axpAiChatDelegatedReflectionAssistantMessage, axpAiChatMessageGetText, axpAiChatMessageIsDelegatedReflectionExcluded, axpAiChatMessagesFromProviderAssistant, axpAiChatTextMessage, axpAiChatToolOrAgentResultBodyJson, axpAiChatToolResultBodyJson, axpAiChatToolResultMessage, axpAiChatUserMessage, axpAiCoercePlanningAssistantTextToThink, axpAiCollectDelegatedAgentOutcomeResponses, axpAiDelegatedAgentOutcomeResponsesPlainText, axpAiDelegatedAgentPromptPreview, axpAiDelegatedSubTranscriptAppendFileArtifactFromToolResults, axpAiExtractLastStoredFileArtifactFromChatMessages, axpAiExtractStoredFileArtifactFromUnknown, axpAiMergePlainAssistantTextTurn, axpAiNormalizeHandlerResultToToolBody, axpAiParseDelegatedAgentResultSegmentsFromUnknown, axpAiParseSupervisorAgentToolName, axpAiPruneAssistantPiecesToFirstToolOnly, axpAiStripAssistInitialHtmlToPlain, axpAiSupervisorAgentToolName, axpAiToolCallFromAssistantToolMessage, blobOrFileFromImageResult, getAiChatCommandLlmParametersOverride, isChatPurposeModelRow, isImagePurposeModelRow, isSpeechPurposeModelRow, isTtsPurposeModelRow, modelRowHasPurpose, normalizeAiToolCommandArgs, normalizeModelPurposes, persistAiChatAttachmentImage, persistAiGeneratedImage, persistAiGeneratedSpeech };
1150
1147
  export type { AXMAiManagementAgentEntityModel, AXMAiManagementAssistEntityModel, AXMAiManagementAssistPlanningMode, AXMAiManagementModelChatTransport, AXMAiManagementModelEntityModel, AXMAiManagementModelPurposeSlug, AXMAiManagementOpenAiEndpointEntityModel, AXMAiModelPurposeSlug, AXPAiAssistPopupSize, AXPAiAssistPromptSubmitPayload, AXPAiAssistRunContext, AXPAiAssistRunInput, AXPAiAssistRunLoadingDialogSpec, AXPAiAssistRunResult, AXPAiAssistShowOptions, AXPAiAssistStructuredOutputAttemptRecord, AXPAiAssistStructuredOutputRunRaw, AXPAiAssistTokenUsageSnapshot, AXPAiAssistUserMediaAttachment, AXPAiChatAgentAssistantResponse, AXPAiChatAgentResultBody, AXPAiChatAgentResultResponse, AXPAiChatFileResponse, AXPAiChatMessage, AXPAiChatModelListItem, AXPAiChatModelListRequest, AXPAiChatNodeResponse, AXPAiChatResponse, AXPAiChatTextResponse, AXPAiChatThinkResponse, AXPAiChatToolAssistantResponse, AXPAiChatToolInvocationContent, AXPAiChatToolResultBody, AXPAiChatToolResultResponse, AXPAiChatToolRunContext, AXPAiChatTransport, AXPAiDelegatedAgentResultPayload, AXPAiDelegatedAgentResultSegment, AXPAiDelegatedAgentTranscriptEntry, AXPAiDelegatedNestedToolCallContext, AXPAiDelegatedParameterBinding, AXPAiDelegatedParameterDefinition, AXPAiEffectiveAgentRow, AXPAiEffectiveAssistRow, AXPAiEngineLastProviderPayload, AXPAiEngineRegistryToolFields, AXPAiEngineRunEvent, AXPAiEngineRunOptions, AXPAiEngineRunResult, AXPAiEngineUsageTotals, AXPAiExtractDocumentTextFromStoredFileRequest, AXPAiPlanningMode, AXPAiPlatformRuntimeContext, AXPAiStructuredTextCompletionOptions, AXPAiStructuredValidator, AXPAiToolCall, AXPAiToolSchema };
@@ -462,57 +462,43 @@ declare abstract class AXMChatRealtimeApi extends AXRealtimeApi {
462
462
  }
463
463
 
464
464
  /**
465
- * Reorders assist transcript lines for chat UI: all **think** first, then tool/agent
466
- * and `tool`-role results in their original order, then all **text** (final answer).
467
- * This matches chronological expectation (agent call and its result appear before the
468
- * assistant's closing message).
465
+ * Reorders assist transcript for debug UI: think first, tool/agent + tool results, then text blocks.
469
466
  */
470
467
  declare function axmNormalizeAssistTranscriptForChatUi(input: AXPAiChatMessage[]): AXPAiChatMessage[];
471
- /**
472
- * Reads AI transcript lines from assist message metadata (final `aiTranscript` or streaming `aiTranscriptDraft`),
473
- * in display order for the assist renderer.
474
- */
468
+ /** Debug transcript from {@code metadata.transcripts} or streaming {@code metadata.transcriptDraft}. */
475
469
  declare function axmReadAssistAiTranscript(metadata: unknown): AXPAiChatMessage[] | null;
476
- /**
477
- * Raw {@link AXPAiChatMessage} lines as persisted by the engine/mock (`aiTranscript` / `aiTranscriptDraft`),
478
- * without chat UI reordering.
479
- */
470
+ /** Raw engine transcript (chronological), without debug UI reordering. */
480
471
  declare function axmReadAssistAiTranscriptRaw(metadata: unknown): AXPAiChatMessage[];
481
- /**
482
- * Returns `content` as an {@link AXPWidgetNode} when it looks like a widget tree.
483
- * Rejects assistant transcript segment shapes (e.g. `{ type: 'text', content: '...' }`) and unwraps
484
- * a single `{ type: 'node', content: <widget> }` envelope if present.
485
- */
486
472
  declare function axmAssistWidgetNodeFromUnknown(content: unknown, depth?: number): AXPWidgetNode | null;
487
- /**
488
- * Returns the first `node` segment's content as an {@link AXPWidgetNode} when it looks like a widget tree.
489
- */
490
- declare function axmAssistNodeAsLayoutNode(message: AXPAiChatMessage): AXPWidgetNode | null;
491
- /**
492
- * Builds a synthetic {@link AXMessage} for embedding default conversation renderers (text, image, etc.).
493
- */
494
473
  declare function axmSyntheticEmbedMessage(parent: AXMessage, suffix: string, partial: Pick<AXMessage, 'type' | 'payload'>): AXMessage;
495
- /**
496
- * Parses assistant transcript text: strips {@code redacted_thinking} blocks into {@code thinking}
497
- * and returns the visible {@code body} (same rules as the assist message renderer).
498
- */
474
+ declare const AXM_ASSIST_TRANSCRIPT_LINE_PAYLOAD_TYPE: "assist-transcript-line";
475
+ interface AxmAssistTranscriptLinePayload {
476
+ type: typeof AXM_ASSIST_TRANSCRIPT_LINE_PAYLOAD_TYPE;
477
+ line: AXPAiChatMessage;
478
+ }
479
+ declare function axmNormalizeAssistTranscriptLineResponses(line: AXPAiChatMessage): AXPAiChatMessage;
480
+ /** Last {@link AXPAiChatMessage} in the engine turn (index {@code length - 1}). */
481
+ declare function axmAssistLastTranscriptLine(transcript: AXPAiChatMessage[]): AXPAiChatMessage | null;
482
+ declare function axmBuildAssistTranscriptLinePayload(line: AXPAiChatMessage): AxmAssistTranscriptLinePayload;
483
+ declare function axmParseAssistTranscriptLinePayload(payload: unknown): AXPAiChatMessage | null;
499
484
  declare function axmParseAssistTranscriptTextEnvelope(raw: string): {
500
485
  thinking: string | null;
501
486
  body: string;
502
487
  };
503
- /** Canonical user-visible assist payload derived from a chronological AI transcript. */
504
- type AxmAssistFinalDeliverable = {
488
+ /** Flattened user-visible items for one transcript line (payload bubble). */
489
+ type AxmAssistUserVisibleItem = {
490
+ kind: 'text';
491
+ content: string;
492
+ } | {
505
493
  kind: 'node';
506
494
  content: unknown;
507
495
  } | {
508
- kind: 'text';
509
- text: string;
496
+ kind: 'file';
497
+ fileId: string;
498
+ mimeType: string;
499
+ name?: string;
510
500
  };
511
- /**
512
- * Last chronological assistant {@code node} (renderable widget) or non-empty {@code text} segment wins.
513
- * When the transcript has no such segment, {@code fallbackText} is used as plain text.
514
- */
515
- declare function axmExtractAssistFinalDeliverableFromTranscript(transcript: AXPAiChatMessage[], fallbackText: string): AxmAssistFinalDeliverable;
501
+ declare function axmAssistUserVisibleItemsForLine(line: AXPAiChatMessage): AxmAssistUserVisibleItem[];
516
502
 
517
503
  /**
518
504
  * True when the participant is an AI Assist peer (synthetic `assist-*` id or assist metadata).
@@ -745,5 +731,11 @@ declare class AXMCommentPopupStartAction extends AXPWorkflowAction {
745
731
  }
746
732
  declare const AXMCommentPopupWorkflow: AXPWorkflow;
747
733
 
748
- export { AXMChatComponent, AXMChatConversationApi, AXMChatManagementService, AXMChatMessageApi, AXMChatRealtimeApi, AXMChatRealtimeService, AXMChatRealtimeServiceImpl, AXMChatService, AXMChatServiceImpl, AXMChatUserApi, AXMCommentComponent, AXMCommentManagementService, AXMCommentPopupComponent, AXMCommentPopupStartAction, AXMCommentPopupWorkflow, AXMCommentRealtimeService, AXMCommentRealtimeServiceImpl, AXMCommentService, AXMCommentServiceImpl, AXMCommentWidgetViewComponent, AXMConversationModule, AXMConversationTabEntityModule, AXMConversationTabService, AXMConversationTabServiceImpl, AXMMessageEntityModule, AXMMessageService, AXMMessageServiceImpl, AXMRoomEntityModule, AXMRoomService, AXMRoomServiceImpl, AXPCommentWidget, COMMENTS_PAGE_COMPONENT_KEY, RootConfig, axmAssistNodeAsLayoutNode, axmAssistWidgetNodeFromUnknown, axmExtractAssistFinalDeliverableFromTranscript, axmIsAssistPeerParticipant, axmNormalizeAssistTranscriptForChatUi, axmParseAssistTranscriptTextEnvelope, axmReadAssistAiTranscript, axmReadAssistAiTranscriptRaw, axmSyntheticEmbedMessage, commentsPlugin, messageFactory, roomFactory, tabFactory };
749
- export type { AXMChatMessage, AXMChatMessageEvent, AXMChatRoom, AXMChatRoomEvent, AXMChatTabEvent, AXMComment, AXMCommentEntityData, AXMCommentEvent, AXMCommentEventType, AXMCommentThread, AXMConversationMessage, AXMConversationReaction, AXMConversationRoom, AXMConversationSeen, AXMConversationTab, AXMReactionType, AXMSeenType, AXMThreadEvent, AXMThreadEventType, AxmAssistFinalDeliverable, CommentsDisplayMode, CommentsPluginOptions };
734
+ declare const AXMPermissionsKeys: {
735
+ Conversation: {
736
+ Management: string;
737
+ };
738
+ };
739
+
740
+ export { AXMChatComponent, AXMChatConversationApi, AXMChatManagementService, AXMChatMessageApi, AXMChatRealtimeApi, AXMChatRealtimeService, AXMChatRealtimeServiceImpl, AXMChatService, AXMChatServiceImpl, AXMChatUserApi, AXMCommentComponent, AXMCommentManagementService, AXMCommentPopupComponent, AXMCommentPopupStartAction, AXMCommentPopupWorkflow, AXMCommentRealtimeService, AXMCommentRealtimeServiceImpl, AXMCommentService, AXMCommentServiceImpl, AXMCommentWidgetViewComponent, AXMConversationModule, AXMConversationTabEntityModule, AXMConversationTabService, AXMConversationTabServiceImpl, AXMMessageEntityModule, AXMMessageService, AXMMessageServiceImpl, AXMPermissionsKeys, AXMRoomEntityModule, AXMRoomService, AXMRoomServiceImpl, AXM_ASSIST_TRANSCRIPT_LINE_PAYLOAD_TYPE, AXPCommentWidget, COMMENTS_PAGE_COMPONENT_KEY, RootConfig, axmAssistLastTranscriptLine, axmAssistUserVisibleItemsForLine, axmAssistWidgetNodeFromUnknown, axmBuildAssistTranscriptLinePayload, axmIsAssistPeerParticipant, axmNormalizeAssistTranscriptForChatUi, axmNormalizeAssistTranscriptLineResponses, axmParseAssistTranscriptLinePayload, axmParseAssistTranscriptTextEnvelope, axmReadAssistAiTranscript, axmReadAssistAiTranscriptRaw, axmSyntheticEmbedMessage, commentsPlugin, messageFactory, roomFactory, tabFactory };
741
+ export type { AXMChatMessage, AXMChatMessageEvent, AXMChatRoom, AXMChatRoomEvent, AXMChatTabEvent, AXMComment, AXMCommentEntityData, AXMCommentEvent, AXMCommentEventType, AXMCommentThread, AXMConversationMessage, AXMConversationReaction, AXMConversationRoom, AXMConversationSeen, AXMConversationTab, AXMReactionType, AXMSeenType, AXMThreadEvent, AXMThreadEventType, AxmAssistTranscriptLinePayload, AxmAssistUserVisibleItem, CommentsDisplayMode, CommentsPluginOptions };
@@ -1450,8 +1450,8 @@ declare const AXPClockCalendarWidget: AXPWidgetConfig;
1450
1450
 
1451
1451
  interface AXPShortcutItem {
1452
1452
  name: string;
1453
- title: string;
1454
- description?: string;
1453
+ title: string | AXPMultiLanguageString;
1454
+ description?: string | AXPMultiLanguageString;
1455
1455
  icon: string;
1456
1456
  command: AXPExecuteCommand;
1457
1457
  }
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { AXPModuleManifest, AXPFeatureDefinition, AXPBreadcrumbItem } from '@acorex/platform/core';
3
- import { AXPPermissionDefinition } from '@acorex/platform/auth';
3
+ import { AXPPermissionDefinitionProvider, AXPPermissionDefinitionProviderContext, AXPPermissionDefinition } from '@acorex/platform/auth';
4
4
  import { AXTreeViewComponent, AXTreeViewNode, AXTreeViewNodeSelectEvent, AXTreeViewNodeToggleEvent } from '@acorex/components/tree-view';
5
5
  import { AXPPageLayoutBaseComponent } from '@acorex/platform/layout/views';
6
6
  import { AXPEntity } from '@acorex/platform/common';
@@ -38,6 +38,20 @@ declare enum AXPPlatformDevToolsSettings {
38
38
  DebugMode = "PlatformDevTools:Setting:Developer.DebugMode"
39
39
  }
40
40
 
41
+ declare const AXMPermissionsKeys: {
42
+ readonly PlatformDevTools: {
43
+ readonly PlatformExplorer: {
44
+ readonly View: "PlatformDevTools:Permission:PlatformExplorer.View";
45
+ };
46
+ };
47
+ };
48
+
49
+ declare class AXMPermissionDefinitionProvider implements AXPPermissionDefinitionProvider {
50
+ define(context: AXPPermissionDefinitionProviderContext): Promise<void>;
51
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXMPermissionDefinitionProvider, never>;
52
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXMPermissionDefinitionProvider>;
53
+ }
54
+
41
55
  type PlatformExplorerNodeKind = 'module' | 'entities' | 'entity' | 'permissions' | 'permission' | 'features' | 'feature';
42
56
  interface PlatformExplorerTreeNode {
43
57
  id: string;
@@ -159,5 +173,5 @@ declare class AXPlatformExplorerFeaturesListDetailComponent {
159
173
  static ɵcmp: i0.ɵɵComponentDeclaration<AXPlatformExplorerFeaturesListDetailComponent, "axp-platform-explorer-features-list-detail", never, { "moduleName": { "alias": "moduleName"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
160
174
  }
161
175
 
162
- export { AXMPlatformDevToolsModule, AXPPlatformDevToolsSettings, AXPlatformExplorerDetailComponent, AXPlatformExplorerEntityDetailComponent, AXPlatformExplorerFeaturesListDetailComponent, AXPlatformExplorerModuleDetailComponent, AXPlatformExplorerPageComponent, AXPlatformExplorerPermissionsListDetailComponent, AXPlatformExplorerTreeNodeComponent, PlatformDevToolsManifest, PlatformExplorerDataService, RootConfig };
176
+ export { AXMPermissionDefinitionProvider, AXMPermissionsKeys, AXMPlatformDevToolsModule, AXPPlatformDevToolsSettings, AXPlatformExplorerDetailComponent, AXPlatformExplorerEntityDetailComponent, AXPlatformExplorerFeaturesListDetailComponent, AXPlatformExplorerModuleDetailComponent, AXPlatformExplorerPageComponent, AXPlatformExplorerPermissionsListDetailComponent, AXPlatformExplorerTreeNodeComponent, PlatformDevToolsManifest, PlatformExplorerDataService, RootConfig };
163
177
  export type { PlatformExplorerNodeKind, PlatformExplorerTreeNode };
@@ -58,6 +58,13 @@ declare const RootConfig: {
58
58
  };
59
59
  };
60
60
 
61
+ declare const AXPReportManagementFeatureKeys: {
62
+ readonly ReportBuilder: "ReportManagement:Feature:ReportBuilder";
63
+ readonly SavedReports: "ReportManagement:Feature:SavedReports";
64
+ readonly ScheduledReports: "ReportManagement:Feature:ScheduledReports";
65
+ readonly BackgroundReports: "ReportManagement:Feature:BackgroundReports";
66
+ };
67
+
61
68
  declare const AXPReportManagementMenuKeys: {
62
69
  readonly Root: "report-management:menu";
63
70
  readonly Reports: "report-management:menu:reports";
@@ -1193,5 +1200,5 @@ declare class AXPReportTableViewComponent {
1193
1200
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPReportTableViewComponent, "axp-report-table-view", never, {}, {}, never, never, true, never>;
1194
1201
  }
1195
1202
 
1196
- export { AXBarChartReportMapper, AXLineChartReportMapper, AXMPermissionDefinitionProvider, AXMPermissionsKeys, AXMReportManagementModule, AXPReportBarChartViewComponent, AXPReportManagementMenuKeys, AXPReportTableViewComponent, AXPReportViewerPageComponent, AXPReportViewerService, AXPReportViewerViewModel, AXPieChartReportMapper, RootConfig, convertContextDataToFilterClause };
1203
+ export { AXBarChartReportMapper, AXLineChartReportMapper, AXMPermissionDefinitionProvider, AXMPermissionsKeys, AXMReportManagementModule, AXPReportBarChartViewComponent, AXPReportManagementFeatureKeys, AXPReportManagementMenuKeys, AXPReportTableViewComponent, AXPReportViewerPageComponent, AXPReportViewerService, AXPReportViewerViewModel, AXPieChartReportMapper, RootConfig, convertContextDataToFilterClause };
1197
1204
  export type { AXPAggregatedDataSource, AXPAggregation, AXPChartAxisConfig, AXPChartDataMapping, AXPChartInteractivity, AXPChartStyling, AXPConditionalFormatRule, AXPCustomDataSource, AXPDataTransformation, AXPExecutionReportCommand, AXPExecutionReportCommandResult, AXPExecutionReportResult, AXPLayoutDataSourceResolution, AXPLayoutExecutionContext, AXPLayoutSwitcherOption, AXPLayoutValidationResult, AXPQueryDataSource, AXPReportCategory, AXPReportChartLayout, AXPReportChartOptions, AXPReportColumn, AXPReportDataSource, AXPReportDefinition, AXPReportExecutionError, AXPReportExecutionOptions, AXPReportExecutionRequest, AXPReportExecutionStatus, AXPReportHeaderFooter, AXPReportLayout, AXPReportLayoutAction, AXPReportLayoutDefinition, AXPReportLayoutState, AXPReportLayoutType, AXPReportParameter, AXPReportParameterBinding, AXPReportParameterGroup, AXPReportPdfLayout, AXPReportPdfOptions, AXPReportSummaryOptions, AXPReportTableLayout, AXPReportTableLayoutRowAction, AXPTableOptions, AXPTransformedDataSource };
@@ -13,6 +13,7 @@ import { AXPUserReference, AXPActionMenuItem, AXPExecuteCommand, AXPExecuteComma
13
13
  import { AXContextMenuItemsClickEvent, AXContextMenuOpeningEvent } from '@acorex/components/menu';
14
14
  import { AXHolidayDate } from '@acorex/core/date-time';
15
15
  import { Subject } from 'rxjs';
16
+ import { AXPSessionService } from '@acorex/platform/auth';
16
17
 
17
18
  declare class AXPTaskBoardModule {
18
19
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPTaskBoardModule, never>;
@@ -546,6 +547,30 @@ declare class AXPTaskBoardService {
546
547
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPTaskBoardService>;
547
548
  }
548
549
 
550
+ /** Sentinel id for the task-board assignee filter option: tasks with no assignee. */
551
+ declare const AXM_TASK_BOARD_UNASSIGNED_ASSIGNEE_ID = "TaskManagement:TaskBoard:Assignee:Unassigned";
552
+ /** Permission to view and filter tasks across all assignees on the task board. */
553
+ declare const AXM_TASK_VIEW_ALL_PERMISSION: "TaskManagement:Permission:Task.ViewAll";
554
+ /**
555
+ * Returns whether the current session may filter tasks by any assignee.
556
+ */
557
+ declare function canViewAllTaskAssignees(sessionService: AXPSessionService): boolean;
558
+ declare function isTaskBoardUnassignedAssigneeId(id: string | number): boolean;
559
+ /**
560
+ * Restricts assignee filter ids to the current user when {@link canViewAllTaskAssignees} is false.
561
+ * Strips the unassigned sentinel for users without view-all permission.
562
+ */
563
+ declare function normalizeTaskBoardAssigneeIds(sessionService: AXPSessionService, assigneeIds: (string | number)[]): (string | number)[];
564
+ /**
565
+ * Whether a task matches the selected assignee filter ids (OR semantics).
566
+ * Supports {@link AXM_TASK_BOARD_UNASSIGNED_ASSIGNEE_ID} for tasks without an assignee.
567
+ */
568
+ declare function matchesTaskBoardAssigneeFilter(assigneeId: string | undefined | null, filterIds: (string | number)[]): boolean;
569
+ /**
570
+ * Whether a workflow task matches assignee filters using assigned/candidate user ids.
571
+ */
572
+ declare function matchesTaskBoardAssigneeUserIdsFilter(userIds: string[], filterIds: (string | number)[]): boolean;
573
+
549
574
  type TaskPriority$1 = NonNullable<AXPTask['priority']>;
550
575
  type PriorityFilterKey$1 = TaskPriority$1 | 'no_priority';
551
576
  type Priority = {
@@ -661,5 +686,5 @@ declare const AXP_TASK_MANAGEMENT_DASHBOARD_WIDGET_CATEGORY: AXPDefinitionCatego
661
686
  declare const AXP_TASK_MANAGEMENT_DASHBOARD_SUB_SHORTCUT: AXPDefinitionCategory;
662
687
  declare const AXP_TASK_MANAGEMENT_DASHBOARD_SUB_BOARD: AXPDefinitionCategory;
663
688
 
664
- export { AXMPermissionsKeys, AXMSearchCommandProvider, AXMSettingProvider, AXMTaskManagementEntityProvider, AXMTaskManagementMenuProvider, AXMTaskManagementModule, AXPTaskBoardModule, AXPTaskBoardService, AXPTaskBoardShortcut, AXPTaskBoardShortcutViewComponent, AXPTaskBoardWidget, AXPTaskBoardWidgetViewComponent, AXPTaskPopoverComponent, AXPTaskTypeDataSourceDefinition, AXPWorkflowTaskProvider, AXP_TASK_MANAGEMENT_DASHBOARD_SUB_BOARD, AXP_TASK_MANAGEMENT_DASHBOARD_SUB_SHORTCUT, AXP_TASK_MANAGEMENT_DASHBOARD_WIDGET_CATEGORY, AXP_WORKFLOW_TASK_PROVIDER, RootConfig, taskAssignmentFactory, taskChecklistItemFactory, taskContextFactory, taskDependencyFactory, taskFactory, taskStatusFactory, taskTemplateFactory, taskTypeFactory, timeLogFactory };
689
+ export { AXMPermissionsKeys, AXMSearchCommandProvider, AXMSettingProvider, AXMTaskManagementEntityProvider, AXMTaskManagementMenuProvider, AXMTaskManagementModule, AXM_TASK_BOARD_UNASSIGNED_ASSIGNEE_ID, AXM_TASK_VIEW_ALL_PERMISSION, AXPTaskBoardModule, AXPTaskBoardService, AXPTaskBoardShortcut, AXPTaskBoardShortcutViewComponent, AXPTaskBoardWidget, AXPTaskBoardWidgetViewComponent, AXPTaskPopoverComponent, AXPTaskTypeDataSourceDefinition, AXPWorkflowTaskProvider, AXP_TASK_MANAGEMENT_DASHBOARD_SUB_BOARD, AXP_TASK_MANAGEMENT_DASHBOARD_SUB_SHORTCUT, AXP_TASK_MANAGEMENT_DASHBOARD_WIDGET_CATEGORY, AXP_WORKFLOW_TASK_PROVIDER, RootConfig, canViewAllTaskAssignees, isTaskBoardUnassignedAssigneeId, matchesTaskBoardAssigneeFilter, matchesTaskBoardAssigneeUserIdsFilter, normalizeTaskBoardAssigneeIds, taskAssignmentFactory, taskChecklistItemFactory, taskContextFactory, taskDependencyFactory, taskFactory, taskStatusFactory, taskTemplateFactory, taskTypeFactory, timeLogFactory };
665
690
  export type { AXMTaskManagementTaskAssignmentEntityModel, AXMTaskManagementTaskChecklistItemEntityModel, AXMTaskManagementTaskContextEntityModel, AXMTaskManagementTaskDependencyEntityModel, AXMTaskManagementTaskEntityModel, AXMTaskManagementTaskStatusEntityModel, AXMTaskManagementTaskTemplateEntityModel, AXMTaskManagementTaskTypeEntityModel, AXMTaskManagementTimeLogEntityModel, AXPExtraField, AXPResource, AXPTask, AXPTaskAction, AXPTaskActionMenuItem, AXPTaskFilter, AXPTaskStatus };
@@ -1,7 +1,7 @@
1
1
  import { AXPEntity, AXPMenuProvider, AXPMenuProviderContext } from '@acorex/platform/common';
2
2
  import { AXPEntityDefinitionLoader, AXPEntityPreloadEntity, AXPEntityModel } from '@acorex/platform/layout/entity';
3
3
  import * as i0 from '@angular/core';
4
- import { Type, InjectionToken } from '@angular/core';
4
+ import { InjectionToken } from '@angular/core';
5
5
  import * as i1 from '@acorex/modules/calendar-management';
6
6
  import * as i2 from '@acorex/platform/domain';
7
7
  import * as i4 from '@acorex/platform/layout/widget-core';
@@ -11,7 +11,7 @@ import { AXPFilterClause, AXPExecuteCommandResult, AXPActionMenuItem, AXPExecute
11
11
  import { AXPCommand } from '@acorex/platform/runtime';
12
12
  import { AXStyleColorType } from '@acorex/cdk/common';
13
13
  import { AXPopupSizeType } from '@acorex/components/popup';
14
- import { AXPWorkflowTaskProvider, AXPTaskFilter, AXPTask, AXPTaskActionMenuItem, AXPExtraField, AXPTaskStatus, AXPTaskPopoverComponent } from '@acorex/modules/task-management';
14
+ import { AXPWorkflowTaskProvider, AXPTaskFilter, AXPTask, AXPTaskActionMenuItem, AXPExtraField, AXPTaskStatus } from '@acorex/modules/task-management';
15
15
 
16
16
  declare const RootConfig: {
17
17
  config: {
@@ -1006,7 +1006,6 @@ declare class AXPGenericWorkflowTaskProvider extends AXPWorkflowTaskProvider<Rec
1006
1006
  getActions(task?: AXPTask<Record<string, any>>): Promise<AXPTaskActionMenuItem[]>;
1007
1007
  getExtraFields(): Promise<AXPExtraField[]>;
1008
1008
  getStatuses(): Promise<AXPTaskStatus[]>;
1009
- getComponent(): (() => Promise<Type<AXPTaskPopoverComponent>>) | Type<AXPTaskPopoverComponent> | null;
1010
1009
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPGenericWorkflowTaskProvider, never>;
1011
1010
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPGenericWorkflowTaskProvider>;
1012
1011
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-modules-ai-management-agent.entity-D6-0_Ms3.mjs","sources":["../../../../libs/modules/ai-management/src/lib/entities/agent/agent.entity.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPWidgetsList } from '@acorex/modules/common';\nimport { AXPEntity, createAllQueryView } from '@acorex/platform/common';\nimport { objectKeyValueTransforms } from '@acorex/platform/core';\nimport { entityMasterCrudActions, entityMasterRecordActions } from '@acorex/platform/layout/entity';\nimport { RootConfig } from '../../const';\nimport { AI_MODEL_CATALOG_DATASOURCE_NAME } from '../../features/datasources/ai-model-catalog.datasource';\n\n//#endregion\n\n//#region ---- Repeater children (registry command / query) ----\n\nconst AGENT_COMMAND_REGISTRY_REPEATER_CHILDREN = [\n {\n type: 'agent-registry-tool-configurator',\n mode: 'edit' as const,\n path: 'command',\n name: 'command',\n options: {\n registryKind: 'command',\n label: '@ai-management:agents.entities.agent.fields.command-registry.item-label',\n },\n },\n];\n\nconst AGENT_QUERY_REGISTRY_REPEATER_CHILDREN = [\n {\n type: 'agent-registry-tool-configurator',\n mode: 'edit' as const,\n path: 'query',\n name: 'query',\n options: {\n registryKind: 'query',\n label: '@ai-management:agents.entities.agent.fields.query-registry.item-label',\n },\n },\n];\n\n//#endregion\n\n//#region ---- Entity ----\n\nexport async function agentFactory(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.agent.name,\n title: RootConfig.entities.agent.title,\n icon: RootConfig.entities.agent.icon,\n formats: {\n individual: RootConfig.entities.agent.title,\n plural: RootConfig.entities.agent.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ description }}',\n },\n },\n relatedEntities: [],\n groups: [\n { id: 'basic-info', title: '@general:terms.interface.basic-info' },\n { id: 'registry-commands', title: '@ai-management:agents.entities.agent.groups.registry-commands' },\n { id: 'registry-queries', title: '@ai-management:agents.entities.agent.groups.registry-queries' },\n { id: 'access', title: '@ai-management:agents.entities.agent.groups.access' },\n { id: 'prompt-behaviour', title: '@ai-management:agents.entities.agent.groups.prompt-behaviour' },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n groupId: 'basic-info',\n schema: { dataType: 'string', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'name',\n title: '@general:terms.common.name',\n groupId: 'basic-info',\n schema: { dataType: 'string', interface: { type: AXPWidgetsList.Editors.TextBox } },\n options: { sort: { enabled: true }, filter: { advance: { enabled: true }, inline: { enabled: true } } },\n validations: [{ rule: 'required' }, { rule: 'unique' }],\n },\n {\n name: 'title',\n title: '@general:terms.common.title',\n groupId: 'basic-info',\n schema: { dataType: 'string', interface: { type: AXPWidgetsList.Editors.TextBox } },\n options: { sort: { enabled: true }, filter: { inline: { enabled: true } } },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'description',\n title: '@general:terms.common.description',\n groupId: 'basic-info',\n schema: { dataType: 'string', interface: { type: AXPWidgetsList.Editors.LargeTextBox, options: { rows: 4 } } },\n description: '@ai-management:agents.entities.agent.fields.description.description',\n },\n {\n name: 'toolIds',\n title: '@ai-management:agents.entities.agent.fields.command-registry.title',\n description: '@ai-management:agents.entities.agent.fields.command-registry.description',\n groupId: 'registry-commands',\n schema: {\n defaultValue: [],\n dataType: 'array',\n nullable: true,\n interface: {\n type: AXPWidgetsList.Layouts.RepeaterLayout,\n options: { hasControls: true, allowReorder: true },\n children: AGENT_COMMAND_REGISTRY_REPEATER_CHILDREN,\n },\n },\n },\n {\n name: 'queryIds',\n title: '@ai-management:agents.entities.agent.fields.query-registry.title',\n description: '@ai-management:agents.entities.agent.fields.query-registry.description',\n groupId: 'registry-queries',\n schema: {\n defaultValue: [],\n dataType: 'array',\n nullable: true,\n interface: {\n type: AXPWidgetsList.Layouts.RepeaterLayout,\n options: { hasControls: true, allowReorder: true },\n children: AGENT_QUERY_REGISTRY_REPEATER_CHILDREN,\n },\n },\n },\n {\n name: 'modelEntityId',\n title: '@ai-management:agents.entities.agent.fields.model-entity.title',\n description: '@ai-management:agents.entities.agent.fields.model-entity.description',\n groupId: 'access',\n schema: {\n dataType: 'string',\n nullable: true,\n interface: {\n type: AXPWidgetsList.Editors.LookupBox,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.model.name}`,\n textField: 'title',\n valueField: 'id',\n look: 'select',\n allowSearch: true,\n columns: ['title', 'name'],\n placeholder: '@ai-management:agents.entities.agent.fields.model-entity.placeholder',\n expose: [\n { source: 'id', target: 'aiModel.id' },\n { source: 'title', target: 'aiModel.title' },\n { source: 'name', target: 'aiModel.name' },\n ],\n },\n },\n },\n },\n {\n name: 'maxSteps',\n title: '@ai-management:agents.entities.agent.fields.max-steps.title',\n description: '@ai-management:agents.entities.agent.fields.max-steps.description',\n groupId: 'access',\n schema: {\n dataType: 'number',\n nullable: true,\n interface: {\n type: AXPWidgetsList.Editors.NumberBox,\n options: { minValue: 1, maxValue: 50 },\n },\n },\n },\n {\n name: 'systemPrompt',\n title: '@ai-management:assists.entities.assist.fields.system-prompt.title',\n groupId: 'prompt-behaviour',\n schema: {\n dataType: 'string',\n interface: { type: AXPWidgetsList.Editors.LargeTextBox, options: { rows: 8 } },\n },\n },\n ],\n columns: [\n { name: 'name', title: '@general:terms.common.name', showAs: { type: AXPWidgetsList.Editors.TextBox } },\n { name: 'title', title: '@general:terms.common.title', showAs: { type: AXPWidgetsList.Editors.TextBox } },\n { name: 'description', title: '@general:terms.common.description', showAs: { type: AXPWidgetsList.Editors.TextBox } },\n ],\n interfaces: {\n master: {\n create: {\n sections: [\n { id: 'basic-info' },\n { id: 'registry-commands' },\n { id: 'registry-queries' },\n { id: 'access' },\n { id: 'prompt-behaviour' },\n ],\n properties: [\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'toolIds', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'queryIds', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'modelEntityId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'maxSteps', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'systemPrompt', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n update: {\n sections: [\n { id: 'basic-info' },\n { id: 'registry-commands' },\n { id: 'registry-queries' },\n { id: 'access' },\n { id: 'prompt-behaviour' },\n ],\n properties: [\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'toolIds', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'queryIds', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'modelEntityId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'maxSteps', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'systemPrompt', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n },\n single: {\n title: '{{ title }}',\n sections: [\n { id: 'basic-info' },\n { id: 'registry-commands' },\n { id: 'registry-queries' },\n { id: 'access' },\n { id: 'prompt-behaviour' },\n ],\n properties: [\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'toolIds', layout: { positions: { lg: { colSpan: 12 } }, label: { visible: false } }, },\n { name: 'queryIds', layout: { positions: { lg: { colSpan: 12 } }, label: { visible: false } }, },\n { name: 'modelEntityId', layout: { positions: { lg: { colSpan: 6 } } }, },\n { name: 'maxSteps', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'systemPrompt', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView({ sorts: [{ name: 'name', dir: 'asc' }] })],\n },\n },\n },\n };\n return entityDef;\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-modules-common-search-popup.component-BbRyjGia.mjs","sources":["../../../../libs/modules/common/src/lib/features/global-search/search-popup.component.ts","../../../../libs/modules/common/src/lib/features/global-search/search-popup.component.html"],"sourcesContent":["import {\n AXListNavigationDirective,\n AXListNavigationItemDirective,\n AXListNavigationModule,\n} from '@acorex/cdk/list-navigation';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXChipsModule } from '@acorex/components/chips';\nimport { AXClickEvent, AXCommonModule, AXHtmlEvent, AXValueChangedEvent } from '@acorex/cdk/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXSearchBoxComponent, AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPSearchDisplayResult } from '@acorex/platform/common';\nimport {\n AXPThemeLayoutBlockComponent,\n AXPThemeLayoutHeaderComponent,\n AXPThemeLayoutListComponent,\n AXPThemeLayoutListItemComponent,\n AXPThemeLayoutListItemsGroupComponent,\n AXPStateMessageComponent,\n} from '@acorex/platform/layout/components';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, viewChild, viewChildren } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { first } from 'rxjs';\nimport { AXPGlobalSearchViewModel } from './search.viewmodel';\n\n@Component({\n templateUrl: 'search-popup.component.html',\n styleUrl: 'search-popup.component.scss',\n imports: [\n CommonModule,\n FormsModule,\n //\n AXSearchBoxModule,\n AXCommonModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXListNavigationModule,\n AXButtonModule,\n //\n AXSkeletonModule,\n AXChipsModule,\n AXPThemeLayoutBlockComponent,\n AXPThemeLayoutListComponent,\n AXPThemeLayoutListItemComponent,\n AXPThemeLayoutListItemsGroupComponent,\n AXPThemeLayoutHeaderComponent,\n AXPStateMessageComponent,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [AXPGlobalSearchViewModel],\n})\nexport class AXPGlobalSearchPopupComponent extends AXBasePageComponent {\n protected i18nScope = 'global-search';\n\n protected vm = inject(AXPGlobalSearchViewModel);\n\n protected text: string | null = null;\n\n private list = viewChild(AXListNavigationDirective);\n private searchBox = viewChild(AXSearchBoxComponent);\n private items = viewChildren(AXListNavigationItemDirective);\n\n async handleTextChanged(e: AXValueChangedEvent<string>) {\n if (e.isUserInteraction) {\n await this.vm.search(e.value!);\n }\n }\n\n protected override ngOnInit() {\n super.ngOnInit();\n //\n this.vm.onItemSelected.pipe(first()).subscribe((item) => {\n this.close(item);\n });\n }\n\n protected handleSearchKeyDown(e: AXHtmlEvent<KeyboardEvent>) {\n const event = e.nativeEvent!;\n switch (event.code) {\n case 'ArrowDown':\n const item = this.items()[0];\n if (item && this.list()) {\n this.list()?.navigateTo(item);\n }\n event.preventDefault();\n event.stopPropagation();\n break;\n }\n }\n\n protected handleClearClick($event: AXClickEvent) {\n this.vm.clearRecentItems();\n }\n\n protected handleListKeyDown(e: KeyboardEvent) {\n switch (e.code) {\n case 'ArrowUp': {\n const item = this.items()[0];\n if (item && this.list() && item.isActive()) {\n this.searchBox()?.focus();\n }\n break;\n }\n case 'Escape': {\n this.searchBox()?.focus();\n e.preventDefault();\n e.stopPropagation();\n break;\n }\n }\n }\n\n protected handleItemKeyDown(e: KeyboardEvent, item: AXPSearchDisplayResult) {\n switch (e.code) {\n case 'Enter':\n case 'Space': {\n e.preventDefault();\n e.stopPropagation();\n this.vm.execute(item);\n break;\n }\n }\n }\n\n protected handlePinClick(e: Event, item: any) {\n e.stopPropagation();\n this.vm.togglePin(item);\n }\n}\n","<axp-layout-content *translate=\"let t\">\n <axp-layout-header class=\"ax-lg\">\n <ax-search-box [axAutoFocus] [look]=\"'none'\" [ngModel]=\"vm.text()\" (onValueChanged)=\"handleTextChanged($event)\"\n [placeholder]=\"'@global-search:terms.search-anything' | translate | async\"\n (onKeyDown)=\"handleSearchKeyDown($event)\"></ax-search-box>\n <div class=\"__close-button\">\n <ax-button [look]=\"'blank'\" class=\"ax-rounded-full\" (onClick)=\"close()\">\n <ax-icon icon=\"fa-light fa-xmark fa-sm\"></ax-icon>\n </ax-button>\n </div>\n </axp-layout-header>\n\n <!-- Results Area -->\n <axp-layout-body>\n @if (vm.isBusy()) {\n <ng-container *ngTemplateOutlet=\"skeleton\"></ng-container>\n } @else if (vm.isEmpty()) {\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n } @else if (vm.isWelcome()) {\n <ng-container *ngTemplateOutlet=\"welcome\"></ng-container>\n } @else if (vm.isStart()) {\n <ng-container *ngTemplateOutlet=\"start\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"result\"></ng-container>\n }\n </axp-layout-body>\n\n <!-- Skeleton Template -->\n <ng-template #skeleton>\n <div class=\"ax-flex ax-flex-col ax-gap-10 ax-p-8\">\n @for (item of [1, 2, 3, 4, 5]; track $index) {\n <div class=\"ax-flex ax-items-center ax-gap-4\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-4 ax-h-4 ax-rounded-full\"></ax-skeleton>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-flex-1\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-1/4 ax-h-2 ax-rounded\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"ax-w-1/2 ax-h-2 ax-rounded\"></ax-skeleton>\n </div>\n </div>\n }\n </div>\n </ng-template>\n\n <!-- Empty Template -->\n <ng-template #empty>\n <axp-state-message icon=\"fa-light fa-search\"\n [title]=\"'@global-search:components.search-box.empty-states.no-result.title'\"\n [description]=\"'@global-search:components.search-box.empty-states.no-result.description'\">\n </axp-state-message>\n </ng-template>\n\n <!-- Welcome Template -->\n <ng-template #welcome>\n <axp-state-message icon=\"fa-light fa-search\"\n [title]=\"'@global-search:components.search-box.empty-states.start.title'\"\n [description]=\"'@global-search:components.search-box.empty-states.start.description'\">\n </axp-state-message>\n </ng-template>\n\n <!-- Start Template -->\n <ng-template #start>\n <!-- Pinned Items -->\n <axp-layout-list *translate=\"let t\" class=\"ax-p-4 ax-divide-none\" (keydown)=\"handleListKeyDown($event)\"\n axListNavigation #list=\"axListNavigation\">\n @if (vm.pinnedItems().length > 0) {\n <axp-layout-list-group>\n <axp-layout-title>{{ '@global-search:terms.pinned' | translate | async }}</axp-layout-title>\n @for (item of vm.pinnedItems(); track $index) {\n <axp-layout-list-item (click)=\"vm.execute(item)\" (keydown)=\"handleItemKeyDown($event, item)\" class=\"ax-group\"\n axListNavigationItem #i=\"axListNavigationItem\" [class.axp-state-focused]=\"i.isActive()\">\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n <!-- Recent Items -->\n @if (vm.recentItems().length > 0) {\n <axp-layout-list-group>\n <axp-layout-header>\n <axp-layout-prefix>\n <axp-layout-title>{{ '@global-search:terms.recent' | translate | async }}</axp-layout-title>\n </axp-layout-prefix>\n <axp-layout-prefix class=\"ax-xs\">\n <ax-button [text]=\"'@global-search:terms.clear' | translate | async\" look=\"blank\" [color]=\"'default'\"\n (onClick)=\"handleClearClick($event)\"></ax-button>\n </axp-layout-prefix>\n </axp-layout-header>\n @for (item of vm.recentItems(); track $index) {\n <axp-layout-list-item (click)=\"vm.execute(item)\" (keydown)=\"handleItemKeyDown($event, item)\" class=\"ax-group\"\n axListNavigationItem #i=\"axListNavigationItem\" [class.axp-state-focused]=\"i.isActive()\">\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <!-- Result Template -->\n <ng-template #result>\n <axp-layout-list class=\"ax-p-4 ax-divide-none\" (keydown)=\"handleListKeyDown($event)\" axListNavigation\n #list=\"axListNavigation\">\n @for (group of vm.results(); track $index) {\n <axp-layout-list-group>\n <axp-layout-title> {{ t(group.title) | async }}</axp-layout-title>\n @for (item of group.children; track $index) {\n <axp-layout-list-item (click)=\"vm.execute(item)\" (keydown)=\"handleItemKeyDown($event, item)\" class=\"ax-group\"\n axListNavigationItem #i=\"axListNavigationItem\" [class.axp-state-focused]=\"i.isActive()\">\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <ng-template #listItem let-item=\"item\">\n <axp-layout-prefix>\n <ax-icon icon=\"fal {{ item.icon }}\"></ax-icon>\n </axp-layout-prefix>\n <axp-layout-content>\n <axp-layout-title class=\"ax-group\">\n <span>{{ t(item.title) | async }}</span>\n <span class=\"ax-ms-3\" (click)=\"handlePinClick($event, item)\">\n <i [class.ax-invisible]=\"!vm.isPinned(item)\"\n class=\"fa-light fa-thumbtack ax-rotate-45 group-hover:!ax-visible\" [class.fa-solid]=\"vm.isPinned(item)\"></i>\n </span>\n </axp-layout-title>\n @if (item.parent) {\n <axp-layout-description>\n {{ t(item.parent.title) | async }}\n </axp-layout-description>\n } @else if (item.description) {\n <axp-layout-description>\n {{ t(item.description) | async }}\n </axp-layout-description>\n }\n </axp-layout-content>\n <axp-layout-suffix>\n <i class=\"far fa-chevron-right rtl:ax-rotate-180\"></i>\n </axp-layout-suffix>\n </ng-template>\n</axp-layout-content>"],"names":["i6","i8"],"mappings":"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"}