@xpert-ai/plugin-sdk 3.14.0 → 3.15.0
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/CHANGELOG.md +11 -0
- package/index.cjs.js +44 -0
- package/index.esm.js +41 -1
- package/package.json +1 -1
- package/src/index.d.ts +1 -0
- package/src/lib/managed-queue/index.d.ts +106 -0
- package/src/lib/types.d.ts +3 -0
package/CHANGELOG.md
CHANGED
package/index.cjs.js
CHANGED
|
@@ -4115,6 +4115,46 @@ function resolveSandboxTerminalAdapter(sandbox) {
|
|
|
4115
4115
|
const MANAGED_CONNECTION_REGISTRY_TOKEN = 'XPERT_MANAGED_CONNECTION_REGISTRY';
|
|
4116
4116
|
const CONNECTION_COMMAND_ROUTER_TOKEN = 'XPERT_CONNECTION_COMMAND_ROUTER';
|
|
4117
4117
|
|
|
4118
|
+
const MANAGED_QUEUE_SERVICE_TOKEN = 'XPERT_MANAGED_QUEUE_SERVICE';
|
|
4119
|
+
const MANAGED_QUEUE_HANDLER_REGISTRY_TOKEN = 'XPERT_MANAGED_QUEUE_HANDLER_REGISTRY';
|
|
4120
|
+
const PLUGIN_JOB_PROCESSOR_METADATA = 'XPERT_PLUGIN_JOB_PROCESSOR_METADATA';
|
|
4121
|
+
function PluginJobProcessor(options) {
|
|
4122
|
+
return (target)=>{
|
|
4123
|
+
const metadata = normalizePluginJobProcessorMetadata(options);
|
|
4124
|
+
var _Reflect_getMetadata;
|
|
4125
|
+
const existing = (_Reflect_getMetadata = Reflect.getMetadata(PLUGIN_JOB_PROCESSOR_METADATA, target)) != null ? _Reflect_getMetadata : [];
|
|
4126
|
+
Reflect.defineMetadata(PLUGIN_JOB_PROCESSOR_METADATA, [
|
|
4127
|
+
metadata,
|
|
4128
|
+
...existing
|
|
4129
|
+
], target);
|
|
4130
|
+
};
|
|
4131
|
+
}
|
|
4132
|
+
function normalizePluginJobProcessorMetadata(options) {
|
|
4133
|
+
const pluginName = requireManagedQueueDecoratorValue(options.pluginName, 'pluginName');
|
|
4134
|
+
var _options_queueName;
|
|
4135
|
+
const queueName = requireManagedQueueDecoratorValue((_options_queueName = options.queueName) != null ? _options_queueName : options.queue, 'queueName');
|
|
4136
|
+
var _options_jobName;
|
|
4137
|
+
const jobName = requireManagedQueueDecoratorValue((_options_jobName = options.jobName) != null ? _options_jobName : options.jobType, 'jobName');
|
|
4138
|
+
const concurrency = options.concurrency;
|
|
4139
|
+
if (concurrency !== undefined && (!Number.isFinite(concurrency) || concurrency <= 0)) {
|
|
4140
|
+
throw new Error('PluginJobProcessor concurrency must be a positive number');
|
|
4141
|
+
}
|
|
4142
|
+
return _extends({
|
|
4143
|
+
pluginName,
|
|
4144
|
+
queueName,
|
|
4145
|
+
jobName
|
|
4146
|
+
}, concurrency === undefined ? {} : {
|
|
4147
|
+
concurrency: Math.trunc(concurrency)
|
|
4148
|
+
});
|
|
4149
|
+
}
|
|
4150
|
+
function requireManagedQueueDecoratorValue(value, field) {
|
|
4151
|
+
const normalized = `${value != null ? value : ''}`.trim();
|
|
4152
|
+
if (!normalized) {
|
|
4153
|
+
throw new Error(`PluginJobProcessor ${field} is required`);
|
|
4154
|
+
}
|
|
4155
|
+
return normalized;
|
|
4156
|
+
}
|
|
4157
|
+
|
|
4118
4158
|
const VIEW_EXTENSION_PROVIDER = 'VIEW_EXTENSION_PROVIDER';
|
|
4119
4159
|
const ViewExtensionProvider = (providerKey)=>common.applyDecorators(common.SetMetadata(VIEW_EXTENSION_PROVIDER, providerKey), common.SetMetadata(STRATEGY_META_KEY, VIEW_EXTENSION_PROVIDER));
|
|
4120
4160
|
|
|
@@ -4644,10 +4684,13 @@ exports.KnowledgebaseRuntimeCapability = KnowledgebaseRuntimeCapability;
|
|
|
4644
4684
|
exports.LLMUsage = LLMUsage;
|
|
4645
4685
|
exports.LargeLanguageModel = LargeLanguageModel;
|
|
4646
4686
|
exports.MANAGED_CONNECTION_REGISTRY_TOKEN = MANAGED_CONNECTION_REGISTRY_TOKEN;
|
|
4687
|
+
exports.MANAGED_QUEUE_HANDLER_REGISTRY_TOKEN = MANAGED_QUEUE_HANDLER_REGISTRY_TOKEN;
|
|
4688
|
+
exports.MANAGED_QUEUE_SERVICE_TOKEN = MANAGED_QUEUE_SERVICE_TOKEN;
|
|
4647
4689
|
exports.ORGANIZATION_METADATA_KEY = ORGANIZATION_METADATA_KEY;
|
|
4648
4690
|
exports.OpenAICompatibleReranker = OpenAICompatibleReranker;
|
|
4649
4691
|
exports.PERMISSION_OPERATION_METADATA_KEY = PERMISSION_OPERATION_METADATA_KEY;
|
|
4650
4692
|
exports.PLUGIN_CONFIG_RESOLVER_TOKEN = PLUGIN_CONFIG_RESOLVER_TOKEN;
|
|
4693
|
+
exports.PLUGIN_JOB_PROCESSOR_METADATA = PLUGIN_JOB_PROCESSOR_METADATA;
|
|
4651
4694
|
exports.PLUGIN_METADATA = PLUGIN_METADATA;
|
|
4652
4695
|
exports.PLUGIN_METADATA_KEY = PLUGIN_METADATA_KEY;
|
|
4653
4696
|
exports.PLUGIN_WEBHOOK_AUTH_METADATA_KEY = PLUGIN_WEBHOOK_AUTH_METADATA_KEY;
|
|
@@ -4658,6 +4701,7 @@ exports.PROVIDE_AI_MODEL_RERANK = PROVIDE_AI_MODEL_RERANK;
|
|
|
4658
4701
|
exports.PROVIDE_AI_MODEL_SPEECH2TEXT = PROVIDE_AI_MODEL_SPEECH2TEXT;
|
|
4659
4702
|
exports.PROVIDE_AI_MODEL_TEXT_EMBEDDING = PROVIDE_AI_MODEL_TEXT_EMBEDDING;
|
|
4660
4703
|
exports.PROVIDE_AI_MODEL_TTS = PROVIDE_AI_MODEL_TTS;
|
|
4704
|
+
exports.PluginJobProcessor = PluginJobProcessor;
|
|
4661
4705
|
exports.PluginWebhookAuth = PluginWebhookAuth;
|
|
4662
4706
|
exports.RETRIEVER_STRATEGY = RETRIEVER_STRATEGY;
|
|
4663
4707
|
exports.RequestContext = RequestContext;
|
package/index.esm.js
CHANGED
|
@@ -4095,6 +4095,46 @@ function resolveSandboxTerminalAdapter(sandbox) {
|
|
|
4095
4095
|
const MANAGED_CONNECTION_REGISTRY_TOKEN = 'XPERT_MANAGED_CONNECTION_REGISTRY';
|
|
4096
4096
|
const CONNECTION_COMMAND_ROUTER_TOKEN = 'XPERT_CONNECTION_COMMAND_ROUTER';
|
|
4097
4097
|
|
|
4098
|
+
const MANAGED_QUEUE_SERVICE_TOKEN = 'XPERT_MANAGED_QUEUE_SERVICE';
|
|
4099
|
+
const MANAGED_QUEUE_HANDLER_REGISTRY_TOKEN = 'XPERT_MANAGED_QUEUE_HANDLER_REGISTRY';
|
|
4100
|
+
const PLUGIN_JOB_PROCESSOR_METADATA = 'XPERT_PLUGIN_JOB_PROCESSOR_METADATA';
|
|
4101
|
+
function PluginJobProcessor(options) {
|
|
4102
|
+
return (target)=>{
|
|
4103
|
+
const metadata = normalizePluginJobProcessorMetadata(options);
|
|
4104
|
+
var _Reflect_getMetadata;
|
|
4105
|
+
const existing = (_Reflect_getMetadata = Reflect.getMetadata(PLUGIN_JOB_PROCESSOR_METADATA, target)) != null ? _Reflect_getMetadata : [];
|
|
4106
|
+
Reflect.defineMetadata(PLUGIN_JOB_PROCESSOR_METADATA, [
|
|
4107
|
+
metadata,
|
|
4108
|
+
...existing
|
|
4109
|
+
], target);
|
|
4110
|
+
};
|
|
4111
|
+
}
|
|
4112
|
+
function normalizePluginJobProcessorMetadata(options) {
|
|
4113
|
+
const pluginName = requireManagedQueueDecoratorValue(options.pluginName, 'pluginName');
|
|
4114
|
+
var _options_queueName;
|
|
4115
|
+
const queueName = requireManagedQueueDecoratorValue((_options_queueName = options.queueName) != null ? _options_queueName : options.queue, 'queueName');
|
|
4116
|
+
var _options_jobName;
|
|
4117
|
+
const jobName = requireManagedQueueDecoratorValue((_options_jobName = options.jobName) != null ? _options_jobName : options.jobType, 'jobName');
|
|
4118
|
+
const concurrency = options.concurrency;
|
|
4119
|
+
if (concurrency !== undefined && (!Number.isFinite(concurrency) || concurrency <= 0)) {
|
|
4120
|
+
throw new Error('PluginJobProcessor concurrency must be a positive number');
|
|
4121
|
+
}
|
|
4122
|
+
return _extends({
|
|
4123
|
+
pluginName,
|
|
4124
|
+
queueName,
|
|
4125
|
+
jobName
|
|
4126
|
+
}, concurrency === undefined ? {} : {
|
|
4127
|
+
concurrency: Math.trunc(concurrency)
|
|
4128
|
+
});
|
|
4129
|
+
}
|
|
4130
|
+
function requireManagedQueueDecoratorValue(value, field) {
|
|
4131
|
+
const normalized = `${value != null ? value : ''}`.trim();
|
|
4132
|
+
if (!normalized) {
|
|
4133
|
+
throw new Error(`PluginJobProcessor ${field} is required`);
|
|
4134
|
+
}
|
|
4135
|
+
return normalized;
|
|
4136
|
+
}
|
|
4137
|
+
|
|
4098
4138
|
const VIEW_EXTENSION_PROVIDER = 'VIEW_EXTENSION_PROVIDER';
|
|
4099
4139
|
const ViewExtensionProvider = (providerKey)=>applyDecorators(SetMetadata(VIEW_EXTENSION_PROVIDER, providerKey), SetMetadata(STRATEGY_META_KEY, VIEW_EXTENSION_PROVIDER));
|
|
4100
4140
|
|
|
@@ -4543,4 +4583,4 @@ function escapeHtmlAttribute(value) {
|
|
|
4543
4583
|
|
|
4544
4584
|
const VIEW_EXTENSION_CACHE_SERVICE_TOKEN = 'XPERT_PLUGIN_VIEW_EXTENSION_CACHE_SERVICE';
|
|
4545
4585
|
|
|
4546
|
-
export { ACCOUNT_BINDING_PERMISSION_SERVICE_TOKEN, AGENT_CHAT_DISPATCH_MESSAGE_TYPE, AGENT_MIDDLEWARE_STRATEGY, AIModelProviderNotFoundException, AIModelProviderRegistry, AIModelProviderStrategy, AI_MODEL_PROVIDER, ANALYTICS_PERMISSION_SERVICE_TOKEN, AdapterDataSourceStrategy, AgentMiddlewareRegistry, AgentMiddlewareStrategy, AiModelNotFoundException, AssistantTaskRuntimeCapability, BOUND_IDENTITY_LOGIN_PERMISSION_SERVICE_TOKEN, BUILTIN_GLOBAL_SCOPE, BaseHTTPQueryRunner, BaseQueryRunner, BaseSQLQueryRunner, BaseSandbox, BaseStrategyRegistry, BaseTool, BaseToolset, BuiltinToolset, CHAT_CHANNEL, CHAT_CHANNEL_TEXT_LIMITS, CONNECTION_COMMAND_ROUTER_TOKEN, CancelConversationCommand, ChatChannel, ChatChannelRegistry, ChatOAICompatReasoningModel, CommonParameterRules, CreateModelClientCommand, CredentialsValidateFailedError, DATASOURCE_STRATEGY, DBCreateTableMode, DBProtocolEnum, DBSyntaxEnum, DBTableAction, DBTableDataAction, DEFAULT_EXECUTION_CONFIG, DEFAULT_SANDBOX_EXECUTION_MAX_OUTPUT_BYTES, DEFAULT_SANDBOX_FILE_OPERATION_EXECUTION_OPTIONS, DEFAULT_SANDBOX_FILE_OPERATION_TIMEOUT_MS, DEFAULT_SANDBOX_FILE_OPERATION_TIMEOUT_SEC, DEFAULT_SANDBOX_FILE_SEARCH_EXECUTION_OPTIONS, DEFAULT_SANDBOX_FILE_SEARCH_TIMEOUT_MS, DEFAULT_SANDBOX_FILE_SEARCH_TIMEOUT_SEC, DEFAULT_SANDBOX_SHELL_EXECUTION_OPTIONS, DEFAULT_SANDBOX_SHELL_TIMEOUT_MS, DEFAULT_SANDBOX_SHELL_TIMEOUT_SEC, DOCUMENT_SOURCE_STRATEGY, DOCUMENT_TRANSFORMER_STRATEGY, DataSourceStrategy, DataSourceStrategyRegistry, DefaultRuntimeCapabilityRegistry as DefaultAgentMiddlewareRuntimeCapabilityRegistry, DefaultRuntimeCapabilityRegistry, DocumentSourceRegistry, DocumentSourceStrategy, DocumentTransformerRegistry, DocumentTransformerStrategy, FILE_STORAGE_PROVIDER, FILE_UPLOAD_TARGET_STRATEGY, FileRuntimeCapability, FileStorageProvider, FileStorageProviderRegistry, FileUploadTargetRegistry, FileUploadTargetStrategy, GLOBAL_ORGANIZATION_SCOPE, HANDOFF_PERMISSION_SERVICE_TOKEN, HANDOFF_PROCESSOR_STRATEGY, HANDOFF_QUEUE_SERVICE_TOKEN, HandoffProcessorRegistry, HandoffProcessorStrategy, IMAGE_UNDERSTANDING_STRATEGY, INTEGRATION_PERMISSION_SERVICE_TOKEN, INTEGRATION_STRATEGY, ImageUnderstandingRegistry, ImageUnderstandingStrategy, IntegrationStrategyKey, IntegrationStrategyRegistry, JUMP_TO_TARGETS, JsonSchemaValidator, KNOWLEDGE_STRATEGY, KnowledgeStrategyKey, KnowledgeStrategyRegistry, KnowledgebaseDocumentsRuntimeCapability, KnowledgebaseRuntimeCapability, LLMUsage, LargeLanguageModel, MANAGED_CONNECTION_REGISTRY_TOKEN, ModelProvider, ORGANIZATION_METADATA_KEY, OpenAICompatibleReranker, PERMISSION_OPERATION_METADATA_KEY, PLUGIN_CONFIG_RESOLVER_TOKEN, PLUGIN_METADATA, PLUGIN_METADATA_KEY, PLUGIN_WEBHOOK_AUTH_METADATA_KEY, PLUGIN_WEBHOOK_AUTH_SERVICE_TOKEN, PROVIDE_AI_MODEL_LLM, PROVIDE_AI_MODEL_MODERATION, PROVIDE_AI_MODEL_RERANK, PROVIDE_AI_MODEL_SPEECH2TEXT, PROVIDE_AI_MODEL_TEXT_EMBEDDING, PROVIDE_AI_MODEL_TTS, PluginWebhookAuth, PluginWebhookAuthGuard, RETRIEVER_STRATEGY, RequestContext, RequestContextMiddleware, RequirePermissionOperation, RerankModel, RetrieverRegistry, RetrieverStrategy, SANDBOX_PROVIDER, SANDBOX_SHELL_TIMEOUT_LIMITS_SEC, SKILL_SOURCE_PROVIDER, SPEECH_TO_TEXT_PERMISSION_SERVICE_TOKEN, SPEECH_TO_TEXT_SERVICE_TOKEN, SSOProviderRegistry, SSOProviderStrategyKey, SSO_BINDING_PERMISSION_SERVICE_TOKEN, SSO_PROVIDER, STRATEGY_META_KEY, SandboxProviderRegistry, SandboxProviderStrategy, SkillSourceProviderRegistry, SkillSourceProviderStrategy, Speech2TextChatModel, SpeechToTextModel, StrategyBus, TENANT_GLOBAL_SCOPE_PREFIX, TENANT_GLOBAL_SCOPE_SUFFIX, TEXT_SPLITTER_STRATEGY, TOOLSET_STRATEGY, TextEmbeddingModelManager, TextSplitterRegistry, TextSplitterStrategy, TextToSpeechModel, ToolsetRegistry, ToolsetStrategy, USER_PERMISSION_SERVICE_TOKEN, VECTOR_STORE_STRATEGY, VIEW_EXTENSION_CACHE_SERVICE_TOKEN, VIEW_EXTENSION_PROVIDER, VectorStoreRegistry, VectorStoreStrategy, ViewExtensionProvider, ViewExtensionProviderRegistry, WORKFLOW_NODE_STRATEGY, WORKFLOW_TRIGGER_STRATEGY, WorkflowNodeRegistry, WorkflowNodeStrategy, WorkflowTriggerRegistry, WorkflowTriggerStrategy, WorkspaceFilesRuntimeCapability, WrapWorkflowNodeExecutionCommand, XPERT_RUNTIME_CAPABILITIES_TOKEN, XpFileSystem, XpertServerPlugin, als, appendSandboxMessage, buildSandboxTimeoutMessage, calcTokenUsage, chunkText, countTokensSafe, createI18nInstance, createPluginLogger, createRuntimeCapability, defineAgentMessageType, defineChannelMessageType, downloadRemoteFile, formatSandboxTimeout, getDefaultTenantId, getErrorMessage, getModelContextSize, getPermissionOperationMetadata, getPositionList, getPositionMap, getRequestContext, getRequiredPermissionOperation, getTenantGlobalScopeKey, isRemoteFile, isSandboxBackend, isSandboxManagedServiceAdapter, isSandboxServiceProxyAdapter, isSandboxTerminalAdapter, isStructuredMessageType, isTenantGlobalScopeKey, loadYamlFile, mergeCredentials, mergeParentChildChunks, normalizeContextSize, renderRemoteReactIframeHtml, resolveSandboxBackend, resolveSandboxExecutionOptions, resolveSandboxManagedServiceAdapter, resolveSandboxServiceProxyAdapter, resolveSandboxTerminalAdapter, resolveTenantGlobalScopeKey, runWithRequestContext, secondsToMilliseconds, setDefaultTenantId, sumTokenUsage };
|
|
4586
|
+
export { ACCOUNT_BINDING_PERMISSION_SERVICE_TOKEN, AGENT_CHAT_DISPATCH_MESSAGE_TYPE, AGENT_MIDDLEWARE_STRATEGY, AIModelProviderNotFoundException, AIModelProviderRegistry, AIModelProviderStrategy, AI_MODEL_PROVIDER, ANALYTICS_PERMISSION_SERVICE_TOKEN, AdapterDataSourceStrategy, AgentMiddlewareRegistry, AgentMiddlewareStrategy, AiModelNotFoundException, AssistantTaskRuntimeCapability, BOUND_IDENTITY_LOGIN_PERMISSION_SERVICE_TOKEN, BUILTIN_GLOBAL_SCOPE, BaseHTTPQueryRunner, BaseQueryRunner, BaseSQLQueryRunner, BaseSandbox, BaseStrategyRegistry, BaseTool, BaseToolset, BuiltinToolset, CHAT_CHANNEL, CHAT_CHANNEL_TEXT_LIMITS, CONNECTION_COMMAND_ROUTER_TOKEN, CancelConversationCommand, ChatChannel, ChatChannelRegistry, ChatOAICompatReasoningModel, CommonParameterRules, CreateModelClientCommand, CredentialsValidateFailedError, DATASOURCE_STRATEGY, DBCreateTableMode, DBProtocolEnum, DBSyntaxEnum, DBTableAction, DBTableDataAction, DEFAULT_EXECUTION_CONFIG, DEFAULT_SANDBOX_EXECUTION_MAX_OUTPUT_BYTES, DEFAULT_SANDBOX_FILE_OPERATION_EXECUTION_OPTIONS, DEFAULT_SANDBOX_FILE_OPERATION_TIMEOUT_MS, DEFAULT_SANDBOX_FILE_OPERATION_TIMEOUT_SEC, DEFAULT_SANDBOX_FILE_SEARCH_EXECUTION_OPTIONS, DEFAULT_SANDBOX_FILE_SEARCH_TIMEOUT_MS, DEFAULT_SANDBOX_FILE_SEARCH_TIMEOUT_SEC, DEFAULT_SANDBOX_SHELL_EXECUTION_OPTIONS, DEFAULT_SANDBOX_SHELL_TIMEOUT_MS, DEFAULT_SANDBOX_SHELL_TIMEOUT_SEC, DOCUMENT_SOURCE_STRATEGY, DOCUMENT_TRANSFORMER_STRATEGY, DataSourceStrategy, DataSourceStrategyRegistry, DefaultRuntimeCapabilityRegistry as DefaultAgentMiddlewareRuntimeCapabilityRegistry, DefaultRuntimeCapabilityRegistry, DocumentSourceRegistry, DocumentSourceStrategy, DocumentTransformerRegistry, DocumentTransformerStrategy, FILE_STORAGE_PROVIDER, FILE_UPLOAD_TARGET_STRATEGY, FileRuntimeCapability, FileStorageProvider, FileStorageProviderRegistry, FileUploadTargetRegistry, FileUploadTargetStrategy, GLOBAL_ORGANIZATION_SCOPE, HANDOFF_PERMISSION_SERVICE_TOKEN, HANDOFF_PROCESSOR_STRATEGY, HANDOFF_QUEUE_SERVICE_TOKEN, HandoffProcessorRegistry, HandoffProcessorStrategy, IMAGE_UNDERSTANDING_STRATEGY, INTEGRATION_PERMISSION_SERVICE_TOKEN, INTEGRATION_STRATEGY, ImageUnderstandingRegistry, ImageUnderstandingStrategy, IntegrationStrategyKey, IntegrationStrategyRegistry, JUMP_TO_TARGETS, JsonSchemaValidator, KNOWLEDGE_STRATEGY, KnowledgeStrategyKey, KnowledgeStrategyRegistry, KnowledgebaseDocumentsRuntimeCapability, KnowledgebaseRuntimeCapability, LLMUsage, LargeLanguageModel, MANAGED_CONNECTION_REGISTRY_TOKEN, MANAGED_QUEUE_HANDLER_REGISTRY_TOKEN, MANAGED_QUEUE_SERVICE_TOKEN, ModelProvider, ORGANIZATION_METADATA_KEY, OpenAICompatibleReranker, PERMISSION_OPERATION_METADATA_KEY, PLUGIN_CONFIG_RESOLVER_TOKEN, PLUGIN_JOB_PROCESSOR_METADATA, PLUGIN_METADATA, PLUGIN_METADATA_KEY, PLUGIN_WEBHOOK_AUTH_METADATA_KEY, PLUGIN_WEBHOOK_AUTH_SERVICE_TOKEN, PROVIDE_AI_MODEL_LLM, PROVIDE_AI_MODEL_MODERATION, PROVIDE_AI_MODEL_RERANK, PROVIDE_AI_MODEL_SPEECH2TEXT, PROVIDE_AI_MODEL_TEXT_EMBEDDING, PROVIDE_AI_MODEL_TTS, PluginJobProcessor, PluginWebhookAuth, PluginWebhookAuthGuard, RETRIEVER_STRATEGY, RequestContext, RequestContextMiddleware, RequirePermissionOperation, RerankModel, RetrieverRegistry, RetrieverStrategy, SANDBOX_PROVIDER, SANDBOX_SHELL_TIMEOUT_LIMITS_SEC, SKILL_SOURCE_PROVIDER, SPEECH_TO_TEXT_PERMISSION_SERVICE_TOKEN, SPEECH_TO_TEXT_SERVICE_TOKEN, SSOProviderRegistry, SSOProviderStrategyKey, SSO_BINDING_PERMISSION_SERVICE_TOKEN, SSO_PROVIDER, STRATEGY_META_KEY, SandboxProviderRegistry, SandboxProviderStrategy, SkillSourceProviderRegistry, SkillSourceProviderStrategy, Speech2TextChatModel, SpeechToTextModel, StrategyBus, TENANT_GLOBAL_SCOPE_PREFIX, TENANT_GLOBAL_SCOPE_SUFFIX, TEXT_SPLITTER_STRATEGY, TOOLSET_STRATEGY, TextEmbeddingModelManager, TextSplitterRegistry, TextSplitterStrategy, TextToSpeechModel, ToolsetRegistry, ToolsetStrategy, USER_PERMISSION_SERVICE_TOKEN, VECTOR_STORE_STRATEGY, VIEW_EXTENSION_CACHE_SERVICE_TOKEN, VIEW_EXTENSION_PROVIDER, VectorStoreRegistry, VectorStoreStrategy, ViewExtensionProvider, ViewExtensionProviderRegistry, WORKFLOW_NODE_STRATEGY, WORKFLOW_TRIGGER_STRATEGY, WorkflowNodeRegistry, WorkflowNodeStrategy, WorkflowTriggerRegistry, WorkflowTriggerStrategy, WorkspaceFilesRuntimeCapability, WrapWorkflowNodeExecutionCommand, XPERT_RUNTIME_CAPABILITIES_TOKEN, XpFileSystem, XpertServerPlugin, als, appendSandboxMessage, buildSandboxTimeoutMessage, calcTokenUsage, chunkText, countTokensSafe, createI18nInstance, createPluginLogger, createRuntimeCapability, defineAgentMessageType, defineChannelMessageType, downloadRemoteFile, formatSandboxTimeout, getDefaultTenantId, getErrorMessage, getModelContextSize, getPermissionOperationMetadata, getPositionList, getPositionMap, getRequestContext, getRequiredPermissionOperation, getTenantGlobalScopeKey, isRemoteFile, isSandboxBackend, isSandboxManagedServiceAdapter, isSandboxServiceProxyAdapter, isSandboxTerminalAdapter, isStructuredMessageType, isTenantGlobalScopeKey, loadYamlFile, mergeCredentials, mergeParentChildChunks, normalizeContextSize, renderRemoteReactIframeHtml, resolveSandboxBackend, resolveSandboxExecutionOptions, resolveSandboxManagedServiceAdapter, resolveSandboxServiceProxyAdapter, resolveSandboxTerminalAdapter, resolveTenantGlobalScopeKey, runWithRequestContext, secondsToMilliseconds, setDefaultTenantId, sumTokenUsage };
|
package/package.json
CHANGED
package/src/index.d.ts
CHANGED
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
export declare const MANAGED_QUEUE_SERVICE_TOKEN = "XPERT_MANAGED_QUEUE_SERVICE";
|
|
2
|
+
export declare const MANAGED_QUEUE_HANDLER_REGISTRY_TOKEN = "XPERT_MANAGED_QUEUE_HANDLER_REGISTRY";
|
|
3
|
+
export declare const PLUGIN_JOB_PROCESSOR_METADATA = "XPERT_PLUGIN_JOB_PROCESSOR_METADATA";
|
|
4
|
+
export type PluginJobProcessorOptions = {
|
|
5
|
+
pluginName: string;
|
|
6
|
+
queueName?: string;
|
|
7
|
+
queue?: string;
|
|
8
|
+
jobName?: string;
|
|
9
|
+
jobType?: string;
|
|
10
|
+
concurrency?: number;
|
|
11
|
+
};
|
|
12
|
+
export type PluginJobProcessorMetadata = {
|
|
13
|
+
pluginName: string;
|
|
14
|
+
queueName: string;
|
|
15
|
+
jobName: string;
|
|
16
|
+
concurrency?: number;
|
|
17
|
+
};
|
|
18
|
+
export type ManagedQueueRemoveOption = boolean | number | {
|
|
19
|
+
age?: number;
|
|
20
|
+
count?: number;
|
|
21
|
+
};
|
|
22
|
+
export type ManagedQueueBackoffInput = number | {
|
|
23
|
+
type?: 'fixed' | 'exponential';
|
|
24
|
+
delay: number;
|
|
25
|
+
};
|
|
26
|
+
export type ManagedQueueRedis = {
|
|
27
|
+
get(key: string): Promise<string | null>;
|
|
28
|
+
set(key: string, value: string, mode?: string, ttlMode?: string | number, ttlOrMode?: number | string): Promise<string | null>;
|
|
29
|
+
del(...keys: string[]): Promise<number>;
|
|
30
|
+
incr(key: string): Promise<number>;
|
|
31
|
+
expire(key: string, seconds: number): Promise<number>;
|
|
32
|
+
ttl(key: string): Promise<number>;
|
|
33
|
+
eval(script: string, numKeys: number, ...args: Array<string | number>): Promise<unknown>;
|
|
34
|
+
};
|
|
35
|
+
export type ManagedQueueEnqueueInput<TPayload = unknown> = {
|
|
36
|
+
pluginName: string;
|
|
37
|
+
queueName: string;
|
|
38
|
+
jobName: string;
|
|
39
|
+
payload: TPayload;
|
|
40
|
+
tenantId?: string | null;
|
|
41
|
+
organizationId?: string | null;
|
|
42
|
+
scopeKey?: string | null;
|
|
43
|
+
userId?: string | null;
|
|
44
|
+
jobId?: string;
|
|
45
|
+
delayMs?: number;
|
|
46
|
+
attempts?: number;
|
|
47
|
+
backoffMs?: ManagedQueueBackoffInput;
|
|
48
|
+
removeOnComplete?: ManagedQueueRemoveOption;
|
|
49
|
+
removeOnFail?: ManagedQueueRemoveOption;
|
|
50
|
+
};
|
|
51
|
+
export type ManagedQueueEnqueueResult = {
|
|
52
|
+
jobId: string;
|
|
53
|
+
};
|
|
54
|
+
export type ManagedQueueCancelInput = {
|
|
55
|
+
jobId: string;
|
|
56
|
+
};
|
|
57
|
+
export type ManagedQueueCancelResult = {
|
|
58
|
+
success: boolean;
|
|
59
|
+
jobId: string;
|
|
60
|
+
state?: string;
|
|
61
|
+
reason?: 'not_found' | 'active' | 'completed' | 'failed' | 'locked' | 'not_removable';
|
|
62
|
+
error?: string;
|
|
63
|
+
};
|
|
64
|
+
export type ManagedQueueJob<TPayload = unknown> = {
|
|
65
|
+
id?: string;
|
|
66
|
+
name: string;
|
|
67
|
+
data: TPayload;
|
|
68
|
+
attemptsMade: number;
|
|
69
|
+
opts?: Record<string, unknown>;
|
|
70
|
+
};
|
|
71
|
+
export type ManagedQueueJobContext = {
|
|
72
|
+
pluginName: string;
|
|
73
|
+
queueName: string;
|
|
74
|
+
jobName: string;
|
|
75
|
+
scopeKey?: string | null;
|
|
76
|
+
};
|
|
77
|
+
export type ManagedQueueJobSnapshot<TPayload = unknown> = ManagedQueueJob<TPayload> & {
|
|
78
|
+
state?: string;
|
|
79
|
+
timestamp?: number;
|
|
80
|
+
processedOn?: number;
|
|
81
|
+
finishedOn?: number;
|
|
82
|
+
};
|
|
83
|
+
export type ManagedQueueJobHandler<TPayload = unknown> = (job: ManagedQueueJob<TPayload>) => Promise<void> | void;
|
|
84
|
+
export interface ManagedQueueJobProcessor<TPayload = unknown> {
|
|
85
|
+
handle(job: ManagedQueueJob<TPayload>, context: ManagedQueueJobContext): Promise<void> | void;
|
|
86
|
+
}
|
|
87
|
+
export type ManagedQueueHandlerRegistration<TPayload = unknown> = {
|
|
88
|
+
pluginName: string;
|
|
89
|
+
queueName: string;
|
|
90
|
+
jobName: string;
|
|
91
|
+
scopeKey?: string | null;
|
|
92
|
+
concurrency?: number;
|
|
93
|
+
handler: ManagedQueueJobHandler<TPayload>;
|
|
94
|
+
};
|
|
95
|
+
export interface ManagedQueueHandlerRegistry {
|
|
96
|
+
register<TPayload = unknown>(registration: ManagedQueueHandlerRegistration<TPayload>): () => void;
|
|
97
|
+
}
|
|
98
|
+
export interface ManagedQueueService {
|
|
99
|
+
enqueue<TPayload = unknown>(input: ManagedQueueEnqueueInput<TPayload>): Promise<ManagedQueueEnqueueResult>;
|
|
100
|
+
cancel(input: ManagedQueueCancelInput): Promise<ManagedQueueCancelResult>;
|
|
101
|
+
getJob<TPayload = unknown>(input: {
|
|
102
|
+
jobId: string;
|
|
103
|
+
}): Promise<ManagedQueueJobSnapshot<TPayload> | null>;
|
|
104
|
+
getRedis(): Promise<ManagedQueueRedis>;
|
|
105
|
+
}
|
|
106
|
+
export declare function PluginJobProcessor(options: PluginJobProcessorOptions): ClassDecorator;
|
package/src/lib/types.d.ts
CHANGED
|
@@ -87,6 +87,9 @@ export interface PluginContext<TConfig extends object = any> {
|
|
|
87
87
|
app?: INestApplicationContext;
|
|
88
88
|
logger: PluginLogger;
|
|
89
89
|
config: TConfig;
|
|
90
|
+
tenantId?: string | null;
|
|
91
|
+
organizationId?: string | null;
|
|
92
|
+
scopeKey?: string | null;
|
|
90
93
|
/** Helper method to access other Providers in the container */
|
|
91
94
|
resolve<TInput = any, TResult = TInput>(token: any): TResult;
|
|
92
95
|
}
|