@memberjunction/ai-engine-base 5.43.0 → 5.45.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/README.md CHANGED
@@ -238,6 +238,19 @@ const agents = await AIEngineBase.Instance.GetAccessibleAgents(user, 'run');
238
238
  | `EffectiveAgentPermissions` | Complete permission set for a user/agent combination |
239
239
  | `AICredentialBindingEntityExtended` | Extended credential binding entity |
240
240
 
241
+ ## Skill Gating
242
+
243
+ `AIEngineBase` is the single source of truth for which skills an agent may use, via two methods with distinct purposes:
244
+
245
+ | Method | Question it answers | Gates applied |
246
+ |---|---|---|
247
+ | `GetSkillsForAgent(agent, user?)` | May this agent+user use this skill at all? (**availability**) | `AIAgent.AcceptsSkills` (None/All/Limited) × `AISkill.Status='Active'` × per-grant `MJ: AI Agent Skills.Status` (Limited only) × user Run permission (when `user` supplied) |
248
+ | `GetAutoActivatableSkillsForAgent(agent, user?)` | May this agent **self-activate** this skill? (**trigger**) | Everything above **plus the double activation gate**: `AIAgent.SkillActivationMode === 'Auto'` AND `AISkill.ActivationMode === 'Auto'` (both default `'RequestedOnly'`) |
249
+
250
+ Use the availability set for the user-requested path (`/skill` mentions → `ExecuteAgentParams.requestedSkillIDs`) and for pickers/tooling; use the auto set for anything the *agent* triggers on its own judgment (the prompt catalog, `Skill`-step validation). Because both `ActivationMode` defaults are `RequestedOnly`, the Auto × Auto "super agent" posture is always a deliberate double opt-in.
251
+
252
+ Bundle membership is resolved by ID via `GetSkillActionIDs(skillID)` / `GetSkillSubAgentIDs(skillID)`; skill permission rows are cached on `SkillPermissions` and evaluated by `AISkillPermissionHelper` (open-by-default). Full architecture: [Agent Skills & Plan Mode Guide](../../../guides/AGENT_SKILLS_AND_PLAN_MODE_GUIDE.md).
253
+
241
254
  ## Dependencies
242
255
 
243
256
  - `@memberjunction/core` -- BaseEngine, Metadata, RunView
@@ -0,0 +1,61 @@
1
+ import { UserInfo } from "@memberjunction/core";
2
+ import { MJAISkillEntity, MJAISkillPermissionEntity } from "@memberjunction/core-entities";
3
+ /**
4
+ * Effective permissions for a user on a specific AI skill.
5
+ */
6
+ export interface EffectiveSkillPermissions {
7
+ canView: boolean;
8
+ canRun: boolean;
9
+ canEdit: boolean;
10
+ canDelete: boolean;
11
+ isOwner: boolean;
12
+ }
13
+ /**
14
+ * Helper for AI Skill permissions — the runtime, cached, **open-by-default** access path.
15
+ *
16
+ * This is the skill sibling of {@link AIAgentPermissionHelper} and behaves identically:
17
+ * it reads the `AIEngineBase` in-memory caches (`Skills` + `SkillPermissions`) so checks are
18
+ * synchronous cache hits, and applies the same defaults —
19
+ * - **no permission rows for a skill → anyone can View and Run** (open by default), only the
20
+ * owner (`AISkill.CreatedByUserID`) can Edit/Delete;
21
+ * - **rows exist → only matching User/Role grants apply**, OR-aggregated, with the hierarchy
22
+ * Delete → Edit → Run → View.
23
+ *
24
+ * Contrast with `AISkillPermissionProvider` (the unified-engine wrapper in `core-entities`),
25
+ * which is closed-by-default and reports only explicit grants — that path powers the Sharing
26
+ * Center and audit; this path is the hot runtime gate (the `/skill` picker and the
27
+ * server-side RequestedSkills intersection). See guides/UNIFIED_PERMISSIONS_GUIDE.md.
28
+ */
29
+ export declare class AISkillPermissionHelper {
30
+ /**
31
+ * Checks whether a user has a specific permission on a skill.
32
+ * @param skillId - The skill to check.
33
+ * @param user - The user to check for.
34
+ * @param permission - 'view' | 'run' | 'edit' | 'delete'.
35
+ */
36
+ static HasPermission(skillId: string, user: UserInfo, permission: 'view' | 'run' | 'edit' | 'delete'): Promise<boolean>;
37
+ /**
38
+ * Gets the aggregate effective permissions for a user on a skill (async — ensures the
39
+ * engine cache is loaded first, then delegates to the synchronous core).
40
+ */
41
+ static GetEffectivePermissions(skillId: string, user: UserInfo): Promise<EffectiveSkillPermissions>;
42
+ /**
43
+ * Synchronous core of the permission calculation, operating on already-loaded cache arrays.
44
+ * Exposed so hot-path callers (e.g. `AIEngineBase.GetSkillsForAgent(agent, user)`) can filter
45
+ * without an async round-trip once the engine is configured.
46
+ *
47
+ * @param skill - The skill entity (owner is `CreatedByUserID`).
48
+ * @param allPermissions - The full `SkillPermissions` cache (filtered internally by skill).
49
+ * @param user - The user to evaluate for.
50
+ */
51
+ static ComputeEffectivePermissions(skill: MJAISkillEntity, allPermissions: MJAISkillPermissionEntity[], user: UserInfo): EffectiveSkillPermissions;
52
+ /**
53
+ * Gets all skills a user can access with at least the given permission level, from cache.
54
+ */
55
+ static GetAccessibleSkills(user: UserInfo, permission: 'view' | 'run' | 'edit' | 'delete'): Promise<MJAISkillEntity[]>;
56
+ /**
57
+ * Refreshes the AIEngineBase cache to pick up permission changes.
58
+ */
59
+ static RefreshCache(user: UserInfo): Promise<void>;
60
+ }
61
+ //# sourceMappingURL=AISkillPermissionHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AISkillPermissionHelper.d.ts","sourceRoot":"","sources":["../src/AISkillPermissionHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAG3F;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,uBAAuB;IAChC;;;;;OAKG;WACiB,aAAa,CAC7B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,GAC/C,OAAO,CAAC,OAAO,CAAC;IAWnB;;;OAGG;WACiB,uBAAuB,CACvC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,QAAQ,GACf,OAAO,CAAC,yBAAyB,CAAC;IAerC;;;;;;;;OAQG;WACW,2BAA2B,CACrC,KAAK,EAAE,eAAe,EACtB,cAAc,EAAE,yBAAyB,EAAE,EAC3C,IAAI,EAAE,QAAQ,GACf,yBAAyB;IAkC5B;;OAEG;WACiB,mBAAmB,CACnC,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,GAC/C,OAAO,CAAC,eAAe,EAAE,CAAC;IAoB7B;;OAEG;WACiB,YAAY,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;CAOlE"}
@@ -0,0 +1,126 @@
1
+ import { LogError } from "@memberjunction/core";
2
+ import { UUIDsEqual } from "@memberjunction/global";
3
+ import { AIEngineBase } from "./BaseAIEngine.js";
4
+ /**
5
+ * Helper for AI Skill permissions — the runtime, cached, **open-by-default** access path.
6
+ *
7
+ * This is the skill sibling of {@link AIAgentPermissionHelper} and behaves identically:
8
+ * it reads the `AIEngineBase` in-memory caches (`Skills` + `SkillPermissions`) so checks are
9
+ * synchronous cache hits, and applies the same defaults —
10
+ * - **no permission rows for a skill → anyone can View and Run** (open by default), only the
11
+ * owner (`AISkill.CreatedByUserID`) can Edit/Delete;
12
+ * - **rows exist → only matching User/Role grants apply**, OR-aggregated, with the hierarchy
13
+ * Delete → Edit → Run → View.
14
+ *
15
+ * Contrast with `AISkillPermissionProvider` (the unified-engine wrapper in `core-entities`),
16
+ * which is closed-by-default and reports only explicit grants — that path powers the Sharing
17
+ * Center and audit; this path is the hot runtime gate (the `/skill` picker and the
18
+ * server-side RequestedSkills intersection). See guides/UNIFIED_PERMISSIONS_GUIDE.md.
19
+ */
20
+ export class AISkillPermissionHelper {
21
+ /**
22
+ * Checks whether a user has a specific permission on a skill.
23
+ * @param skillId - The skill to check.
24
+ * @param user - The user to check for.
25
+ * @param permission - 'view' | 'run' | 'edit' | 'delete'.
26
+ */
27
+ static async HasPermission(skillId, user, permission) {
28
+ const effective = await this.GetEffectivePermissions(skillId, user);
29
+ switch (permission) {
30
+ case 'view': return effective.canView;
31
+ case 'run': return effective.canRun;
32
+ case 'edit': return effective.canEdit;
33
+ case 'delete': return effective.canDelete;
34
+ default: return false;
35
+ }
36
+ }
37
+ /**
38
+ * Gets the aggregate effective permissions for a user on a skill (async — ensures the
39
+ * engine cache is loaded first, then delegates to the synchronous core).
40
+ */
41
+ static async GetEffectivePermissions(skillId, user) {
42
+ try {
43
+ await AIEngineBase.Instance.Config(false, user);
44
+ const skill = AIEngineBase.Instance.Skills.find(s => UUIDsEqual(s.ID, skillId));
45
+ if (!skill) {
46
+ throw new Error(`Skill ${skillId} not found in cached metadata`);
47
+ }
48
+ return this.ComputeEffectivePermissions(skill, AIEngineBase.Instance.SkillPermissions, user);
49
+ }
50
+ catch (error) {
51
+ LogError(error, null, 'Error getting effective permissions for skill');
52
+ // Fail closed — deny all on error.
53
+ return { canView: false, canRun: false, canEdit: false, canDelete: false, isOwner: false };
54
+ }
55
+ }
56
+ /**
57
+ * Synchronous core of the permission calculation, operating on already-loaded cache arrays.
58
+ * Exposed so hot-path callers (e.g. `AIEngineBase.GetSkillsForAgent(agent, user)`) can filter
59
+ * without an async round-trip once the engine is configured.
60
+ *
61
+ * @param skill - The skill entity (owner is `CreatedByUserID`).
62
+ * @param allPermissions - The full `SkillPermissions` cache (filtered internally by skill).
63
+ * @param user - The user to evaluate for.
64
+ */
65
+ static ComputeEffectivePermissions(skill, allPermissions, user) {
66
+ // Owner has everything.
67
+ if (UUIDsEqual(skill.CreatedByUserID, user.ID)) {
68
+ return { canView: true, canRun: true, canEdit: true, canDelete: true, isOwner: true };
69
+ }
70
+ const skillPermissions = allPermissions.filter(p => UUIDsEqual(p.SkillID, skill.ID));
71
+ // Open by default: no rows → View + Run for everyone; Edit/Delete owner-only.
72
+ if (skillPermissions.length === 0) {
73
+ return { canView: true, canRun: true, canEdit: false, canDelete: false, isOwner: false };
74
+ }
75
+ const userRoleIds = user.UserRoles?.map(ur => ur.RoleID) ?? [];
76
+ const matching = skillPermissions.filter(p => (p.UserID && UUIDsEqual(p.UserID, user.ID)) ||
77
+ (p.RoleID && userRoleIds.some(rid => UUIDsEqual(rid, p.RoleID))));
78
+ const hasDelete = matching.some(p => p.CanDelete === true);
79
+ const hasEdit = matching.some(p => p.CanEdit === true);
80
+ const hasRun = matching.some(p => p.CanRun === true);
81
+ const hasView = matching.some(p => p.CanView === true);
82
+ // Hierarchy: Delete → Edit → Run → View.
83
+ return {
84
+ canDelete: hasDelete,
85
+ canEdit: hasDelete || hasEdit,
86
+ canRun: hasDelete || hasEdit || hasRun,
87
+ canView: hasDelete || hasEdit || hasRun || hasView,
88
+ isOwner: false
89
+ };
90
+ }
91
+ /**
92
+ * Gets all skills a user can access with at least the given permission level, from cache.
93
+ */
94
+ static async GetAccessibleSkills(user, permission) {
95
+ try {
96
+ await AIEngineBase.Instance.Config(false, user);
97
+ const permsCache = AIEngineBase.Instance.SkillPermissions;
98
+ return AIEngineBase.Instance.Skills.filter(skill => {
99
+ const eff = this.ComputeEffectivePermissions(skill, permsCache, user);
100
+ switch (permission) {
101
+ case 'view': return eff.canView;
102
+ case 'run': return eff.canRun;
103
+ case 'edit': return eff.canEdit;
104
+ case 'delete': return eff.canDelete;
105
+ default: return false;
106
+ }
107
+ });
108
+ }
109
+ catch (error) {
110
+ LogError(error, null, 'Error getting accessible skills');
111
+ return [];
112
+ }
113
+ }
114
+ /**
115
+ * Refreshes the AIEngineBase cache to pick up permission changes.
116
+ */
117
+ static async RefreshCache(user) {
118
+ try {
119
+ await AIEngineBase.Instance.Config(true, user);
120
+ }
121
+ catch (error) {
122
+ LogError(error, null, 'Error refreshing AIEngineBase cache');
123
+ }
124
+ }
125
+ }
126
+ //# sourceMappingURL=AISkillPermissionHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AISkillPermissionHelper.js","sourceRoot":"","sources":["../src/AISkillPermissionHelper.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { BaseEngine, IMetadataProvider, UserInfo } from "@memberjunction/core";
2
- import { MJAIActionEntity, MJAIAgentActionEntity, MJAIAgentNoteEntity, MJAIAgentNoteTypeEntity, MJAIModelActionEntity, MJAIPromptModelEntity, MJAIPromptTypeEntity, MJAIResultCacheEntity, MJAIVendorTypeDefinitionEntity, MJArtifactTypeEntity, MJEntityAIActionEntity, MJVectorDatabaseEntity, MJAIAgentPromptEntity, MJAIAgentTypeEntity, MJAIVendorEntity, MJAIModelVendorEntity, MJAIModelTypeEntity, MJAIModelCostEntity, MJAIModelPriceTypeEntity, MJAIModelPriceUnitTypeEntity, MJAIConfigurationEntity, MJAIConfigurationParamEntity, MJAIAgentStepEntity, MJAIAgentStepPathEntity, MJAIAgentRelationshipEntity, MJAIAgentPermissionEntity, MJAIAgentDataSourceEntity, MJAIAgentConfigurationEntity, MJAIAgentExampleEntity, MJAICredentialBindingEntity, MJAIModalityEntity, MJAIAgentModalityEntity, MJAIModelModalityEntity, MJAIClientToolDefinitionEntity, MJAIAgentClientToolEntity, MJAIAgentCategoryEntity, MJAIAgentCoAgentEntity, MJAIAgentChannelEntity } from "@memberjunction/core-entities";
2
+ import { MJAIActionEntity, MJAIAgentActionEntity, MJAIAgentNoteEntity, MJAIAgentNoteTypeEntity, MJScopedPromptPartEntity, MJAIModelActionEntity, MJAIPromptModelEntity, MJAIPromptTypeEntity, MJAIResultCacheEntity, MJAIVendorTypeDefinitionEntity, MJArtifactTypeEntity, MJEntityAIActionEntity, MJVectorDatabaseEntity, MJAIAgentPromptEntity, MJAIAgentTypeEntity, MJAIVendorEntity, MJAIModelVendorEntity, MJAIModelTypeEntity, MJAIModelCostEntity, MJAIModelPriceTypeEntity, MJAIModelPriceUnitTypeEntity, MJAIConfigurationEntity, MJAIConfigurationParamEntity, MJAIAgentStepEntity, MJAIAgentStepPathEntity, MJAIAgentRelationshipEntity, MJAIAgentPermissionEntity, MJAIAgentDataSourceEntity, MJAIAgentConfigurationEntity, MJAIAgentExampleEntity, MJAICredentialBindingEntity, MJAIModalityEntity, MJAIAgentModalityEntity, MJAIModelModalityEntity, MJAIClientToolDefinitionEntity, MJAIAgentClientToolEntity, MJAIAgentCategoryEntity, MJAIAgentCoAgentEntity, MJAIAgentChannelEntity, MJAISkillEntity, MJAISkillActionEntity, MJAISkillSubAgentEntity, MJAIAgentSkillEntity, MJAISkillPermissionEntity } from "@memberjunction/core-entities";
3
3
  import { EffectiveAgentPermissions } from "./AIAgentPermissionHelper.js";
4
+ import { EffectiveSkillPermissions } from "./AISkillPermissionHelper.js";
4
5
  import { MJAIPromptEntityExtended, MJAIPromptCategoryEntityExtended, MJAIModelEntityExtended, MJAIAgentEntityExtended } from "@memberjunction/ai-core-plus";
5
6
  /**
6
7
  * Represents the effective limits for a specific modality (e.g., Image, Audio).
@@ -47,6 +48,7 @@ export declare class AIEngineBase extends BaseEngine<AIEngineBase> {
47
48
  private _agentPrompts;
48
49
  private _agentNoteTypes;
49
50
  private _agentNotes;
51
+ private _scopedPromptParts;
50
52
  private _agentExamples;
51
53
  private _agentDataSources;
52
54
  private _agents;
@@ -73,6 +75,11 @@ export declare class AIEngineBase extends BaseEngine<AIEngineBase> {
73
75
  private _agentCategories;
74
76
  private _agentCoAgents;
75
77
  private _agentChannels;
78
+ private _skills;
79
+ private _skillActions;
80
+ private _skillSubAgents;
81
+ private _agentSkills;
82
+ private _skillPermissions;
76
83
  /**
77
84
  * Cache for configuration inheritance chains.
78
85
  * Key: configurationId, Value: array of MJAIConfigurationEntity from child to root
@@ -116,14 +123,14 @@ export declare class AIEngineBase extends BaseEngine<AIEngineBase> {
116
123
  * @param contextUser required on the server side
117
124
  * @returns
118
125
  */
119
- GetHighestPowerModel(vendorName: string, modelType: string, contextUser?: UserInfo): Promise<MJAIModelEntityExtended>;
126
+ GetHighestPowerModel(vendorName: string, modelType: string, contextUser?: UserInfo): Promise<MJAIModelEntityExtended | undefined>;
120
127
  /**
121
128
  * Convenience method to return the highest power LLM model for a given vendor. Loads the metadata if not already loaded.
122
129
  * @param vendorName - if provided, filters to only consider models from the specified vendor, otherwise considers all models
123
130
  * @param contextUser
124
131
  * @returns
125
132
  */
126
- GetHighestPowerLLM(vendorName?: string, contextUser?: UserInfo): Promise<MJAIModelEntityExtended>;
133
+ GetHighestPowerLLM(vendorName?: string, contextUser?: UserInfo): Promise<MJAIModelEntityExtended | undefined>;
127
134
  /**
128
135
  * Gets the active cost configuration for a specific model and vendor combination
129
136
  * @param modelID - The ID of the AI model
@@ -152,6 +159,79 @@ export declare class AIEngineBase extends BaseEngine<AIEngineBase> {
152
159
  GetAgentByName(agentName: string): MJAIAgentEntityExtended;
153
160
  GetAgentByID(agentId: string): MJAIAgentEntityExtended;
154
161
  get AgentActions(): MJAIAgentActionEntity[];
162
+ /** All AI Skills (capability bundles), cached during Config(). Filter by Status yourself
163
+ * or use {@link GetSkillsForAgent} for the full agent-gating resolution. */
164
+ get Skills(): MJAISkillEntity[];
165
+ /** Skill → Action bundling rows ("MJ: AI Skill Actions"), cached during Config(). */
166
+ get SkillActions(): MJAISkillActionEntity[];
167
+ /** Skill → sub-agent bundling rows ("MJ: AI Skill Sub Agents"), cached during Config(). */
168
+ get SkillSubAgents(): MJAISkillSubAgentEntity[];
169
+ /** Agent ↔ Skill grant rows ("MJ: AI Agent Skills"), used when an agent's AcceptsSkills is 'Limited'. */
170
+ get AgentSkills(): MJAIAgentSkillEntity[];
171
+ /** Per-user / per-role skill permission grants ("MJ: AI Skill Permissions"), cached during Config().
172
+ * Consumed by {@link AISkillPermissionHelper} (open-by-default runtime gate). */
173
+ get SkillPermissions(): MJAISkillPermissionEntity[];
174
+ /**
175
+ * Resolves the set of skills a given agent may activate, honoring the three-layer
176
+ * gate: {@link MJAIAgentEntityExtended.AcceptsSkills} on the agent, {@link MJAISkillEntity.Status}
177
+ * on the catalog entry, and (when AcceptsSkills is 'Limited') {@link MJAIAgentSkillEntity.Status}
178
+ * on the grant.
179
+ *
180
+ * - `AcceptsSkills = 'None'` (default) → no skills, regardless of catalog or grants.
181
+ * - `AcceptsSkills = 'All'` → every `Active` skill in the catalog.
182
+ * - `AcceptsSkills = 'Limited'` → only `Active` skills with an `Active` `MJ: AI Agent Skills` grant for this agent.
183
+ *
184
+ * When `user` is supplied, the agent-allowed set is additionally **intersected with the user's
185
+ * run-permission** (open-by-default via {@link AISkillPermissionHelper}) — i.e. only skills the
186
+ * user is permitted to request survive. This is the single call the `/skill` picker and the
187
+ * server-side RequestedSkills intersection guard use. Omit `user` for pure agent-gating (e.g.
188
+ * resolving the full activatable catalog independent of who is asking).
189
+ *
190
+ * @param agent - The agent to resolve available skills for.
191
+ * @param user - Optional user; when present, filters to skills the user can Run.
192
+ * @returns MJAISkillEntity[] - Active skills the agent may activate (empty if AcceptsSkills is 'None').
193
+ */
194
+ GetSkillsForAgent(agent: MJAIAgentEntityExtended, user?: UserInfo): MJAISkillEntity[];
195
+ /**
196
+ * Resolves the subset of {@link GetSkillsForAgent} that the agent may **self-activate** —
197
+ * i.e. the skills eligible to appear in the agent's prompt catalog and to be activated by an
198
+ * agent-initiated `Skill` step, without an explicit user request.
199
+ *
200
+ * Self-activation is governed by the **double activation gate** (added in v5.45), on top of
201
+ * all availability gates enforced by {@link GetSkillsForAgent}:
202
+ *
203
+ * - **`agent.SkillActivationMode === 'Auto'`** — the agent side of the gate. The default is
204
+ * `'RequestedOnly'`, meaning the agent's prompt catalog is empty and skills only enter its
205
+ * runs via explicit user requests (`/skill` mentions → `ExecuteAgentParams.requestedSkillIDs`).
206
+ * - **`skill.ActivationMode === 'Auto'`** — the skill side. The default is `'RequestedOnly'`,
207
+ * meaning the skill never appears in ANY agent's catalog regardless of agent posture.
208
+ *
209
+ * Auto × Auto is the deliberately-configured "super agent" posture — an agent that may expand
210
+ * its own tool surface at runtime. Because both defaults are `'RequestedOnly'`, that posture
211
+ * always requires two explicit opt-ins and can never arise accidentally ("skill leakage").
212
+ *
213
+ * The **requested path is NOT gated by ActivationMode** — a user's explicit `/skill` request
214
+ * for a `RequestedOnly` skill is honored (subject to the availability gates); use
215
+ * {@link GetSkillsForAgent} for that path.
216
+ *
217
+ * @param agent - The agent to resolve the self-activatable catalog for.
218
+ * @param user - Optional user; when present, additionally filters to skills the user can Run
219
+ * (same semantics as {@link GetSkillsForAgent}).
220
+ * @returns Active skills the agent may self-activate (empty when either side of the double
221
+ * gate is 'RequestedOnly', or when no availability gate passes).
222
+ */
223
+ GetAutoActivatableSkillsForAgent(agent: MJAIAgentEntityExtended, user?: UserInfo): MJAISkillEntity[];
224
+ /**
225
+ * Returns the ActionIDs bundled into a skill (via "MJ: AI Skill Actions"). Callers resolve
226
+ * the full `MJActionEntity` objects from their own Action cache (e.g. `ActionEngineServer`)
227
+ * to avoid a cross-package dependency here.
228
+ */
229
+ GetSkillActionIDs(skillID: string): string[];
230
+ /**
231
+ * Returns the sub-agent IDs bundled into a skill (via "MJ: AI Skill Sub Agents"). Callers
232
+ * resolve the full `MJAIAgentEntityExtended` objects via `this.Agents` / `GetAgentByID`.
233
+ */
234
+ GetSkillSubAgentIDs(skillID: string): string[];
155
235
  get AgentPrompts(): MJAIAgentPromptEntity[];
156
236
  /**
157
237
  * Cached array of AI Agent Configurations loaded from the database.
@@ -204,6 +284,12 @@ export declare class AIEngineBase extends BaseEngine<AIEngineBase> {
204
284
  get AgentPermissions(): MJAIAgentPermissionEntity[];
205
285
  AgenteNoteTypeIDByName(agentNoteTypeName: string): string;
206
286
  get AgentNotes(): MJAIAgentNoteEntity[];
287
+ /**
288
+ * All scoped prompt parts (MJ: Scoped Prompt Parts). Cached like AgentNotes;
289
+ * resolved by scope + assembled into role-faithful messages by the
290
+ * ScopedPromptPartInjector. See plans/scoped-prompt-components.
291
+ */
292
+ get ScopedPromptParts(): MJScopedPromptPartEntity[];
207
293
  get AgentExamples(): MJAIAgentExampleEntity[];
208
294
  get VendorTypeDefinitions(): MJAIVendorTypeDefinitionEntity[];
209
295
  /**
@@ -561,5 +647,19 @@ export declare class AIEngineBase extends BaseEngine<AIEngineBase> {
561
647
  * @param user - The user context for server-side operations
562
648
  */
563
649
  RefreshAgentPermissionsCache(agentId: string, user: UserInfo): Promise<void>;
650
+ /** Checks if a user can view a skill (open-by-default). */
651
+ CanUserViewSkill(skillId: string, user: UserInfo): Promise<boolean>;
652
+ /** Checks if a user can run (request/activate) a skill (open-by-default). */
653
+ CanUserRunSkill(skillId: string, user: UserInfo): Promise<boolean>;
654
+ /** Checks if a user can edit a skill (owner or explicit grant). */
655
+ CanUserEditSkill(skillId: string, user: UserInfo): Promise<boolean>;
656
+ /** Checks if a user can delete a skill (owner or explicit grant). */
657
+ CanUserDeleteSkill(skillId: string, user: UserInfo): Promise<boolean>;
658
+ /** Gets all effective permissions a user has for a specific skill. */
659
+ GetUserSkillPermissions(skillId: string, user: UserInfo): Promise<EffectiveSkillPermissions>;
660
+ /** Gets all skills a user can access with a specific permission level. */
661
+ GetAccessibleSkills(user: UserInfo, permission: 'view' | 'run' | 'edit' | 'delete'): Promise<MJAISkillEntity[]>;
662
+ /** Refreshes the skill permissions cache. Call after modifying permissions. */
663
+ RefreshSkillPermissionsCache(user: UserInfo): Promise<void>;
564
664
  }
565
665
  //# sourceMappingURL=BaseAIEngine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseAIEngine.d.ts","sourceRoot":"","sources":["../src/BaseAIEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseAIEngine.d.ts","sourceRoot":"","sources":["../src/BaseAIEngine.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ import { BaseEngine, LogError, LogStatus, Metadata, RunView } from "@memberjunct
9
9
  import { UUIDsEqual, NormalizeUUID } from "@memberjunction/global";
10
10
  import { ArtifactMetadataEngine } from "@memberjunction/core-entities";
11
11
  import { AIAgentPermissionHelper } from "./AIAgentPermissionHelper.js";
12
+ import { AISkillPermissionHelper } from "./AISkillPermissionHelper.js";
12
13
  import { TemplateEngineBase } from "@memberjunction/templates-base-types";
13
14
  import { RegisterForStartup } from "@memberjunction/core";
14
15
  // Default fallback values when no metadata is configured
@@ -29,6 +30,7 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
29
30
  this._agentPrompts = [];
30
31
  this._agentNoteTypes = [];
31
32
  this._agentNotes = [];
33
+ this._scopedPromptParts = [];
32
34
  this._agentExamples = [];
33
35
  this._agentDataSources = [];
34
36
  this._agents = [];
@@ -55,6 +57,11 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
55
57
  this._agentCategories = [];
56
58
  this._agentCoAgents = [];
57
59
  this._agentChannels = [];
60
+ this._skills = [];
61
+ this._skillActions = [];
62
+ this._skillSubAgents = [];
63
+ this._agentSkills = [];
64
+ this._skillPermissions = [];
58
65
  /**
59
66
  * Cache for configuration inheritance chains.
60
67
  * Key: configurationId, Value: array of MJAIConfigurationEntity from child to root
@@ -134,6 +141,11 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
134
141
  EntityName: 'MJ: AI Agent Notes',
135
142
  CacheLocal: true
136
143
  },
144
+ {
145
+ PropertyName: '_scopedPromptParts',
146
+ EntityName: 'MJ: Scoped Prompt Parts',
147
+ CacheLocal: true
148
+ },
137
149
  {
138
150
  PropertyName: '_agentExamples',
139
151
  EntityName: 'MJ: AI Agent Examples',
@@ -259,6 +271,31 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
259
271
  EntityName: 'MJ: AI Agent Categories',
260
272
  CacheLocal: true
261
273
  },
274
+ {
275
+ PropertyName: '_skills',
276
+ EntityName: 'MJ: AI Skills',
277
+ CacheLocal: true
278
+ },
279
+ {
280
+ PropertyName: '_skillActions',
281
+ EntityName: 'MJ: AI Skill Actions',
282
+ CacheLocal: true
283
+ },
284
+ {
285
+ PropertyName: '_skillSubAgents',
286
+ EntityName: 'MJ: AI Skill Sub Agents',
287
+ CacheLocal: true
288
+ },
289
+ {
290
+ PropertyName: '_agentSkills',
291
+ EntityName: 'MJ: AI Agent Skills',
292
+ CacheLocal: true
293
+ },
294
+ {
295
+ PropertyName: '_skillPermissions',
296
+ EntityName: 'MJ: AI Skill Permissions',
297
+ CacheLocal: true
298
+ },
262
299
  // NOTE: the realtime registry datasets below are CONDITIONAL — appended by
263
300
  // appendRealtimeRegistryConfigs() only when their entities exist in metadata.
264
301
  // They are NEW in the v5.41 schema, and CodeGen itself boots this engine for
@@ -381,6 +418,8 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
381
418
  return mModelType === targetType &&
382
419
  (targetVendor === '' || mVendor === targetVendor);
383
420
  });
421
+ if (models.length === 0)
422
+ return undefined;
384
423
  // next, sort the models by the PowerRank field so that the highest power rank model is the first array element
385
424
  models.sort((a, b) => b.PowerRank - a.PowerRank); // highest power rank first
386
425
  return models[0];
@@ -425,10 +464,10 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
425
464
  return null;
426
465
  }
427
466
  get Agents() {
428
- return this._agents;
467
+ return this.GetConfigData('_agents');
429
468
  }
430
469
  get AgentRelationships() {
431
- return this._agentRelationships;
470
+ return this.GetConfigData('_agentRelationships');
432
471
  }
433
472
  /**
434
473
  * Returns the sub-agents for a given agent ID, optionally filtering by status.
@@ -464,12 +503,12 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
464
503
  return allSubAgents;
465
504
  }
466
505
  get AgentTypes() {
467
- return this._agentTypes;
506
+ return this.GetConfigData('_agentTypes');
468
507
  }
469
508
  /** All agent categories, cached during Config(). Used for hierarchical resolution of
470
509
  * assignment strategies and default storage accounts (category → parent → root). */
471
510
  get AgentCategories() {
472
- return this._agentCategories;
511
+ return this.GetConfigData('_agentCategories');
473
512
  }
474
513
  GetAgentByName(agentName) {
475
514
  return this._agents.find(a => a.Name.trim().toLowerCase() === agentName.trim().toLowerCase());
@@ -478,17 +517,134 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
478
517
  return this._agents.find(a => a.ID.trim().toLowerCase() === agentId.trim().toLowerCase());
479
518
  }
480
519
  get AgentActions() {
481
- return this._agentActions;
520
+ return this.GetConfigData('_agentActions');
521
+ }
522
+ /** All AI Skills (capability bundles), cached during Config(). Filter by Status yourself
523
+ * or use {@link GetSkillsForAgent} for the full agent-gating resolution. */
524
+ get Skills() {
525
+ return this._skills;
526
+ }
527
+ /** Skill → Action bundling rows ("MJ: AI Skill Actions"), cached during Config(). */
528
+ get SkillActions() {
529
+ return this._skillActions;
530
+ }
531
+ /** Skill → sub-agent bundling rows ("MJ: AI Skill Sub Agents"), cached during Config(). */
532
+ get SkillSubAgents() {
533
+ return this._skillSubAgents;
534
+ }
535
+ /** Agent ↔ Skill grant rows ("MJ: AI Agent Skills"), used when an agent's AcceptsSkills is 'Limited'. */
536
+ get AgentSkills() {
537
+ return this._agentSkills;
538
+ }
539
+ /** Per-user / per-role skill permission grants ("MJ: AI Skill Permissions"), cached during Config().
540
+ * Consumed by {@link AISkillPermissionHelper} (open-by-default runtime gate). */
541
+ get SkillPermissions() {
542
+ return this._skillPermissions;
543
+ }
544
+ /**
545
+ * Resolves the set of skills a given agent may activate, honoring the three-layer
546
+ * gate: {@link MJAIAgentEntityExtended.AcceptsSkills} on the agent, {@link MJAISkillEntity.Status}
547
+ * on the catalog entry, and (when AcceptsSkills is 'Limited') {@link MJAIAgentSkillEntity.Status}
548
+ * on the grant.
549
+ *
550
+ * - `AcceptsSkills = 'None'` (default) → no skills, regardless of catalog or grants.
551
+ * - `AcceptsSkills = 'All'` → every `Active` skill in the catalog.
552
+ * - `AcceptsSkills = 'Limited'` → only `Active` skills with an `Active` `MJ: AI Agent Skills` grant for this agent.
553
+ *
554
+ * When `user` is supplied, the agent-allowed set is additionally **intersected with the user's
555
+ * run-permission** (open-by-default via {@link AISkillPermissionHelper}) — i.e. only skills the
556
+ * user is permitted to request survive. This is the single call the `/skill` picker and the
557
+ * server-side RequestedSkills intersection guard use. Omit `user` for pure agent-gating (e.g.
558
+ * resolving the full activatable catalog independent of who is asking).
559
+ *
560
+ * @param agent - The agent to resolve available skills for.
561
+ * @param user - Optional user; when present, filters to skills the user can Run.
562
+ * @returns MJAISkillEntity[] - Active skills the agent may activate (empty if AcceptsSkills is 'None').
563
+ */
564
+ GetSkillsForAgent(agent, user) {
565
+ if (!agent || agent.AcceptsSkills === 'None') {
566
+ return [];
567
+ }
568
+ const activeSkills = this._skills.filter(s => s.Status === 'Active');
569
+ let agentSkills;
570
+ if (agent.AcceptsSkills === 'All') {
571
+ agentSkills = activeSkills;
572
+ }
573
+ else {
574
+ // 'Limited' — only skills with an Active grant for this agent
575
+ const grantedSkillIDs = new Set(this._agentSkills
576
+ .filter(gs => UUIDsEqual(gs.AgentID, agent.ID) && gs.Status === 'Active')
577
+ .map(gs => NormalizeUUID(gs.SkillID)));
578
+ agentSkills = activeSkills.filter(s => grantedSkillIDs.has(NormalizeUUID(s.ID)));
579
+ }
580
+ if (!user) {
581
+ return agentSkills;
582
+ }
583
+ // Intersect with the user's run-permission (synchronous — cache already loaded).
584
+ return agentSkills.filter(s => AISkillPermissionHelper.ComputeEffectivePermissions(s, this._skillPermissions, user).canRun);
585
+ }
586
+ /**
587
+ * Resolves the subset of {@link GetSkillsForAgent} that the agent may **self-activate** —
588
+ * i.e. the skills eligible to appear in the agent's prompt catalog and to be activated by an
589
+ * agent-initiated `Skill` step, without an explicit user request.
590
+ *
591
+ * Self-activation is governed by the **double activation gate** (added in v5.45), on top of
592
+ * all availability gates enforced by {@link GetSkillsForAgent}:
593
+ *
594
+ * - **`agent.SkillActivationMode === 'Auto'`** — the agent side of the gate. The default is
595
+ * `'RequestedOnly'`, meaning the agent's prompt catalog is empty and skills only enter its
596
+ * runs via explicit user requests (`/skill` mentions → `ExecuteAgentParams.requestedSkillIDs`).
597
+ * - **`skill.ActivationMode === 'Auto'`** — the skill side. The default is `'RequestedOnly'`,
598
+ * meaning the skill never appears in ANY agent's catalog regardless of agent posture.
599
+ *
600
+ * Auto × Auto is the deliberately-configured "super agent" posture — an agent that may expand
601
+ * its own tool surface at runtime. Because both defaults are `'RequestedOnly'`, that posture
602
+ * always requires two explicit opt-ins and can never arise accidentally ("skill leakage").
603
+ *
604
+ * The **requested path is NOT gated by ActivationMode** — a user's explicit `/skill` request
605
+ * for a `RequestedOnly` skill is honored (subject to the availability gates); use
606
+ * {@link GetSkillsForAgent} for that path.
607
+ *
608
+ * @param agent - The agent to resolve the self-activatable catalog for.
609
+ * @param user - Optional user; when present, additionally filters to skills the user can Run
610
+ * (same semantics as {@link GetSkillsForAgent}).
611
+ * @returns Active skills the agent may self-activate (empty when either side of the double
612
+ * gate is 'RequestedOnly', or when no availability gate passes).
613
+ */
614
+ GetAutoActivatableSkillsForAgent(agent, user) {
615
+ if (!agent || agent.SkillActivationMode !== 'Auto') {
616
+ return [];
617
+ }
618
+ return this.GetSkillsForAgent(agent, user).filter(s => s.ActivationMode === 'Auto');
619
+ }
620
+ /**
621
+ * Returns the ActionIDs bundled into a skill (via "MJ: AI Skill Actions"). Callers resolve
622
+ * the full `MJActionEntity` objects from their own Action cache (e.g. `ActionEngineServer`)
623
+ * to avoid a cross-package dependency here.
624
+ */
625
+ GetSkillActionIDs(skillID) {
626
+ return this._skillActions
627
+ .filter(sa => UUIDsEqual(sa.SkillID, skillID))
628
+ .map(sa => sa.ActionID);
629
+ }
630
+ /**
631
+ * Returns the sub-agent IDs bundled into a skill (via "MJ: AI Skill Sub Agents"). Callers
632
+ * resolve the full `MJAIAgentEntityExtended` objects via `this.Agents` / `GetAgentByID`.
633
+ */
634
+ GetSkillSubAgentIDs(skillID) {
635
+ return this._skillSubAgents
636
+ .filter(sa => UUIDsEqual(sa.SkillID, skillID))
637
+ .map(sa => sa.SubAgentID);
482
638
  }
483
639
  get AgentPrompts() {
484
- return this._agentPrompts;
640
+ return this.GetConfigData('_agentPrompts');
485
641
  }
486
642
  /**
487
643
  * Cached array of AI Agent Configurations loaded from the database.
488
644
  * These define semantic presets for agents (e.g., "Fast", "High Quality").
489
645
  */
490
646
  get AgentConfigurations() {
491
- return this._agentConfigurations;
647
+ return this.GetConfigData('_agentConfigurations');
492
648
  }
493
649
  /**
494
650
  * Gets all configuration presets for a specific agent
@@ -524,7 +680,7 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
524
680
  ac.Status === 'Active');
525
681
  }
526
682
  get AgentNoteTypes() {
527
- return this._agentNoteTypes;
683
+ return this.GetConfigData('_agentNoteTypes');
528
684
  }
529
685
  /**
530
686
  * All `MJ: AI Agent Co Agents` affinity rows, cached during Config(). Each row relates an
@@ -540,7 +696,7 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
540
696
  * Config()); on a clean-install CodeGen bootstrap this is [] until the entity exists.
541
697
  */
542
698
  get AgentCoAgents() {
543
- return this._agentCoAgents;
699
+ return this.GetConfigData('_agentCoAgents');
544
700
  }
545
701
  /**
546
702
  * All `MJ: AI Agent Channels` interactive-channel registry rows, cached during Config().
@@ -550,22 +706,30 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
550
706
  * issuing RunViews.
551
707
  */
552
708
  get AgentChannels() {
553
- return this._agentChannels;
709
+ return this.GetConfigData('_agentChannels');
554
710
  }
555
711
  get AgentPermissions() {
556
- return this._agentPermissions;
712
+ return this.GetConfigData('_agentPermissions');
557
713
  }
558
714
  AgenteNoteTypeIDByName(agentNoteTypeName) {
559
715
  return this._agentNoteTypes.find(a => a.Name.trim().toLowerCase() === agentNoteTypeName.trim().toLowerCase())?.ID;
560
716
  }
561
717
  get AgentNotes() {
562
- return this._agentNotes;
718
+ return this.GetConfigData('_agentNotes');
719
+ }
720
+ /**
721
+ * All scoped prompt parts (MJ: Scoped Prompt Parts). Cached like AgentNotes;
722
+ * resolved by scope + assembled into role-faithful messages by the
723
+ * ScopedPromptPartInjector. See plans/scoped-prompt-components.
724
+ */
725
+ get ScopedPromptParts() {
726
+ return this._scopedPromptParts;
563
727
  }
564
728
  get AgentExamples() {
565
- return this._agentExamples;
729
+ return this.GetConfigData('_agentExamples');
566
730
  }
567
731
  get VendorTypeDefinitions() {
568
- return this._vendorTypeDefinitions;
732
+ return this.GetConfigData('_vendorTypeDefinitions');
569
733
  }
570
734
  /**
571
735
  * The ID of the "Inference Provider" vendor-type definition, or `undefined` if no such
@@ -684,13 +848,13 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
684
848
  return this._promptModelsByPromptID;
685
849
  }
686
850
  get Vendors() {
687
- return this._vendors;
851
+ return this.GetConfigData('_vendors');
688
852
  }
689
853
  get ModelVendors() {
690
- return this._modelVendors;
854
+ return this.GetConfigData('_modelVendors');
691
855
  }
692
856
  get CredentialBindings() {
693
- return this._credentialBindings;
857
+ return this.GetConfigData('_credentialBindings');
694
858
  }
695
859
  /**
696
860
  * Gets credential bindings for a specific target, filtered by binding type and sorted by priority.
@@ -729,22 +893,22 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
729
893
  return this.GetCredentialBindingsForTarget(bindingType, targetId).length > 0;
730
894
  }
731
895
  get ModelTypes() {
732
- return this._modelTypes;
896
+ return this.GetConfigData('_modelTypes');
733
897
  }
734
898
  get Prompts() {
735
- return this._prompts;
899
+ return this.GetConfigData('_prompts');
736
900
  }
737
901
  get PromptModels() {
738
- return this._promptModels;
902
+ return this.GetConfigData('_promptModels');
739
903
  }
740
904
  get PromptTypes() {
741
- return this._promptTypes;
905
+ return this.GetConfigData('_promptTypes');
742
906
  }
743
907
  get PromptCategories() {
744
- return this._promptCategories;
908
+ return this.GetConfigData('_promptCategories');
745
909
  }
746
910
  get Models() {
747
- return this._models;
911
+ return this.GetConfigData('_models');
748
912
  }
749
913
  get ArtifactTypes() {
750
914
  return ArtifactMetadataEngine.Instance.ArtifactTypes;
@@ -756,22 +920,22 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
756
920
  return this._models.filter(m => m.AIModelType.trim().toLowerCase() === 'llm');
757
921
  }
758
922
  get VectorDatabases() {
759
- return this._vectorDatabases;
923
+ return this.GetConfigData('_vectorDatabases');
760
924
  }
761
925
  get ModelCosts() {
762
- return this._modelCosts;
926
+ return this.GetConfigData('_modelCosts');
763
927
  }
764
928
  get ModelPriceTypes() {
765
- return this._modelPriceTypes;
929
+ return this.GetConfigData('_modelPriceTypes');
766
930
  }
767
931
  get ModelPriceUnitTypes() {
768
- return this._modelPriceUnitTypes;
932
+ return this.GetConfigData('_modelPriceUnitTypes');
769
933
  }
770
934
  get Configurations() {
771
- return this._configurations;
935
+ return this.GetConfigData('_configurations');
772
936
  }
773
937
  get ConfigurationParams() {
774
- return this._configurationParams;
938
+ return this.GetConfigData('_configurationParams');
775
939
  }
776
940
  /**
777
941
  * Gets configuration parameters for a specific configuration
@@ -887,13 +1051,13 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
887
1051
  return Array.from(paramMap.values());
888
1052
  }
889
1053
  get AgentDataSources() {
890
- return this._agentDataSources;
1054
+ return this.GetConfigData('_agentDataSources');
891
1055
  }
892
1056
  get AgentSteps() {
893
- return this._agentSteps;
1057
+ return this.GetConfigData('_agentSteps');
894
1058
  }
895
1059
  get AgentStepPaths() {
896
- return this._agentStepPaths;
1060
+ return this.GetConfigData('_agentStepPaths');
897
1061
  }
898
1062
  // ==========================================
899
1063
  // Modality Accessors and Helper Methods
@@ -902,31 +1066,31 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
902
1066
  * Gets all AI modalities (Text, Image, Audio, Video, File, Embedding, etc.)
903
1067
  */
904
1068
  get Modalities() {
905
- return this._modalities;
1069
+ return this.GetConfigData('_modalities');
906
1070
  }
907
1071
  /**
908
1072
  * Gets all agent-modality mappings
909
1073
  */
910
1074
  get AgentModalities() {
911
- return this._agentModalities;
1075
+ return this.GetConfigData('_agentModalities');
912
1076
  }
913
1077
  /**
914
1078
  * Gets all model-modality mappings
915
1079
  */
916
1080
  get ModelModalities() {
917
- return this._modelModalities;
1081
+ return this.GetConfigData('_modelModalities');
918
1082
  }
919
1083
  /**
920
1084
  * Gets all client tool definitions (the catalog of reusable tools).
921
1085
  */
922
1086
  get ClientToolDefinitions() {
923
- return this._clientToolDefinitions;
1087
+ return this.GetConfigData('_clientToolDefinitions');
924
1088
  }
925
1089
  /**
926
1090
  * Gets all agent-to-client-tool junction records.
927
1091
  */
928
1092
  get AgentClientTools() {
929
- return this._agentClientTools;
1093
+ return this.GetConfigData('_agentClientTools');
930
1094
  }
931
1095
  /**
932
1096
  * Gets the client tool definitions linked to a specific agent, sorted by priority.
@@ -1364,6 +1528,37 @@ let AIEngineBase = AIEngineBase_1 = class AIEngineBase extends BaseEngine {
1364
1528
  async RefreshAgentPermissionsCache(agentId, user) {
1365
1529
  await AIAgentPermissionHelper.RefreshCache(user);
1366
1530
  }
1531
+ // ==========================================
1532
+ // AI Skill Permission Helper Methods
1533
+ // ==========================================
1534
+ /** Checks if a user can view a skill (open-by-default). */
1535
+ async CanUserViewSkill(skillId, user) {
1536
+ return await AISkillPermissionHelper.HasPermission(skillId, user, 'view');
1537
+ }
1538
+ /** Checks if a user can run (request/activate) a skill (open-by-default). */
1539
+ async CanUserRunSkill(skillId, user) {
1540
+ return await AISkillPermissionHelper.HasPermission(skillId, user, 'run');
1541
+ }
1542
+ /** Checks if a user can edit a skill (owner or explicit grant). */
1543
+ async CanUserEditSkill(skillId, user) {
1544
+ return await AISkillPermissionHelper.HasPermission(skillId, user, 'edit');
1545
+ }
1546
+ /** Checks if a user can delete a skill (owner or explicit grant). */
1547
+ async CanUserDeleteSkill(skillId, user) {
1548
+ return await AISkillPermissionHelper.HasPermission(skillId, user, 'delete');
1549
+ }
1550
+ /** Gets all effective permissions a user has for a specific skill. */
1551
+ async GetUserSkillPermissions(skillId, user) {
1552
+ return await AISkillPermissionHelper.GetEffectivePermissions(skillId, user);
1553
+ }
1554
+ /** Gets all skills a user can access with a specific permission level. */
1555
+ async GetAccessibleSkills(user, permission) {
1556
+ return await AISkillPermissionHelper.GetAccessibleSkills(user, permission);
1557
+ }
1558
+ /** Refreshes the skill permissions cache. Call after modifying permissions. */
1559
+ async RefreshSkillPermissionsCache(user) {
1560
+ await AISkillPermissionHelper.RefreshCache(user);
1561
+ }
1367
1562
  };
1368
1563
  AIEngineBase = AIEngineBase_1 = __decorate([
1369
1564
  RegisterForStartup()
@@ -1 +1 @@
1
- {"version":3,"file":"BaseAIEngine.js","sourceRoot":"","sources":["../src/BaseAIEngine.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,EAAE,UAAU,EAA+C,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAY,MAAM,sBAAsB,CAAC;AACjJ,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EA8BE,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAA6B,MAAM,2BAA2B,CAAC;AAC/F,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,OAAO,EAAgB,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAqCxE,yDAAyD;AACzD,MAAM,sBAAsB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO;AACxD,MAAM,6BAA6B,GAAG,EAAE,CAAC;AACzC,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAG5B,IAAM,YAAY,oBAAlB,MAAM,YAAa,SAAQ,UAAwB;IAAnD;;QACK,YAAO,GAA8B,EAAE,CAAC;QACxC,gBAAW,GAA0B,EAAE,CAAC;QACxC,qBAAgB,GAA6B,EAAE,CAAC;QAChD,aAAQ,GAA+B,EAAE,CAAC;QAC1C,kBAAa,GAA4B,EAAE,CAAC;QAC5C,iBAAY,GAA2B,EAAE,CAAC;QAC1C,sBAAiB,GAAuC,EAAE,CAAC;QAC3D,kBAAa,GAA4B,EAAE,CAAC;QAC5C,kBAAa,GAA4B,EAAE,CAAC;QAC5C,oBAAe,GAA8B,EAAE,CAAC;QAChD,gBAAW,GAA0B,EAAE,CAAC;QACxC,mBAAc,GAA6B,EAAE,CAAC;QAC9C,sBAAiB,GAAgC,EAAE,CAAC;QACpD,YAAO,GAA8B,EAAE,CAAC;QACxC,wBAAmB,GAAkC,EAAE,CAAC;QACxD,gBAAW,GAA0B,EAAE,CAAC;QACxC,2BAAsB,GAAqC,EAAE,CAAC;QAC9D,aAAQ,GAAuB,EAAE,CAAC;QAClC,kBAAa,GAA4B,EAAE,CAAC;QAC5C,gBAAW,GAA0B,EAAE,CAAC;QACxC,qBAAgB,GAA+B,EAAE,CAAC;QAClD,yBAAoB,GAAmC,EAAE,CAAC;QAC1D,oBAAe,GAA8B,EAAE,CAAC;QAChD,yBAAoB,GAAmC,EAAE,CAAC;QAC1D,gBAAW,GAA0B,EAAE,CAAC;QACxC,oBAAe,GAA8B,EAAE,CAAC;QAChD,sBAAiB,GAAgC,EAAE,CAAC;QACpD,yBAAoB,GAAmC,EAAE,CAAC;QAC1D,wBAAmB,GAAkC,EAAE,CAAC;QACxD,gBAAW,GAAyB,EAAE,CAAC;QACvC,qBAAgB,GAA8B,EAAE,CAAC;QACjD,qBAAgB,GAA8B,EAAE,CAAC;QACjD,2BAAsB,GAAqC,EAAE,CAAC;QAC9D,sBAAiB,GAAgC,EAAE,CAAC;QACpD,qBAAgB,GAA8B,EAAE,CAAC;QACjD,mBAAc,GAA6B,EAAE,CAAC;QAC9C,mBAAc,GAA6B,EAAE,CAAC;QAEtD;;;WAGG;QACK,6BAAwB,GAA2C,IAAI,GAAG,EAAE,CAAC;QAErF;;;;;WAKG;QACK,6BAAwB,GAA8B,SAAS,CAAC;QACxE,mFAAmF;QAC3E,0BAAqB,GAA8B,SAAS,CAAC;QAErE;;;;;WAKG;QACK,gBAAW,GAAgD,IAAI,CAAC;QAChE,iBAAY,GAAyC,IAAI,CAAC;QAC1D,oBAAe,GAA4C,IAAI,CAAC;QAChE,wBAAmB,GAAgD,IAAI,CAAC;QACxE,2BAAsB,GAAgD,IAAI,CAAC;QAC3E,4BAAuB,GAAgD,IAAI,CAAC;IAi8CxF,CAAC;IA/7CU,KAAK,CAAC,MAAM,CAAC,YAAsB,EAAE,WAAsB,EAAE,QAA4B;QAC5F,MAAM,MAAM,GAA6C;YACrD;gBACI,YAAY,EAAE,SAAS;gBACvB,UAAU,EAAE,eAAe;gBAC3B,UAAU,EAAE,IAAI;aAEnB;YACD;gBACI,YAAY,EAAE,aAAa;gBAC3B,UAAU,EAAE,oBAAoB;gBAChC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,UAAU;gBACxB,UAAU,EAAE,gBAAgB;gBAC5B,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,eAAe;gBAC7B,UAAU,EAAE,sBAAsB;gBAClC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,cAAc;gBAC5B,UAAU,EAAE,qBAAqB;gBACjC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,mBAAmB;gBACjC,UAAU,EAAE,0BAA0B;gBACtC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,kBAAkB;gBAChC,UAAU,EAAE,sBAAsB;gBAClC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,eAAe;gBAC7B,UAAU,EAAE,sBAAsB;gBAClC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,iBAAiB;gBAC/B,UAAU,EAAE,yBAAyB;gBACrC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,aAAa;gBAC3B,UAAU,EAAE,oBAAoB;gBAChC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,gBAAgB;gBAC9B,UAAU,EAAE,uBAAuB;gBACnC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,SAAS;gBACvB,UAAU,EAAE,eAAe;gBAC3B,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,qBAAqB;gBACnC,UAAU,EAAE,4BAA4B;gBACxC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,aAAa;gBAC3B,UAAU,EAAE,oBAAoB;gBAChC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,wBAAwB;gBACtC,UAAU,EAAE,gCAAgC;gBAC5C,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,UAAU;gBACxB,UAAU,EAAE,gBAAgB;gBAC5B,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,eAAe;gBAC7B,UAAU,EAAE,sBAAsB;gBAClC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,eAAe;gBAC7B,UAAU,EAAE,sBAAsB;gBAClC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,aAAa;gBAC3B,UAAU,EAAE,oBAAoB;gBAChC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,kBAAkB;gBAChC,UAAU,EAAE,0BAA0B;gBACtC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,sBAAsB;gBACpC,UAAU,EAAE,+BAA+B;gBAC3C,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,iBAAiB;gBAC/B,UAAU,EAAE,uBAAuB;gBACnC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,sBAAsB;gBACpC,UAAU,EAAE,6BAA6B;gBACzC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,aAAa;gBAC3B,UAAU,EAAE,oBAAoB;gBAChC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,iBAAiB;gBAC/B,UAAU,EAAE,yBAAyB;gBACrC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,mBAAmB;gBACjC,UAAU,EAAE,0BAA0B;gBACtC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,mBAAmB;gBACjC,UAAU,EAAE,2BAA2B;gBACvC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,sBAAsB;gBACpC,UAAU,EAAE,6BAA6B;gBACzC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,qBAAqB;gBACnC,UAAU,EAAE,4BAA4B;gBACxC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,aAAa;gBAC3B,UAAU,EAAE,mBAAmB;gBAC/B,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,kBAAkB;gBAChC,UAAU,EAAE,yBAAyB;gBACrC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,kBAAkB;gBAChC,UAAU,EAAE,yBAAyB;gBACrC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,wBAAwB;gBACtC,UAAU,EAAE,gCAAgC;gBAC5C,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,mBAAmB;gBACjC,UAAU,EAAE,2BAA2B;gBACvC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,kBAAkB;gBAChC,UAAU,EAAE,yBAAyB;gBACrC,UAAU,EAAE,IAAI;aACnB;YACD,2EAA2E;YAC3E,8EAA8E;YAC9E,6EAA6E;YAC7E,0EAA0E;YAC1E,4EAA4E;YAC5E,wEAAwE;YACxE,4EAA4E;YAC5E,0EAA0E;YAC1E,2EAA2E;SAC9E,CAAC;QACF,IAAI,CAAC,6BAA6B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAErD,yEAAyE;QACzE,MAAM,OAAO,CAAC,GAAG,CAAC;YACd,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC;YACtD,sBAAsB,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC;SAC7D,CAAC,CAAC;QAEH,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;OAMG;IACK,6BAA6B,CACjC,MAAgD,EAChD,QAA4B;QAE5B,MAAM,EAAE,GAAG,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC;QACzC,MAAM,WAAW,GAA6C;YAC1D;gBACI,YAAY,EAAE,gBAAgB;gBAC9B,UAAU,EAAE,uBAAuB;gBACnC,UAAU,EAAE,IAAI;aACnB;YACD;gBACI,YAAY,EAAE,gBAAgB;gBAC9B,UAAU,EAAE,wBAAwB;gBACpC,UAAU,EAAE,IAAI;aACnB;SACJ,CAAC;QACF,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;YAC/B,IAAI,EAAE,EAAE,YAAY,EAAE,CAAC,MAAM,CAAC,UAAW,CAAC,EAAE,CAAC;gBACzC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACJ,SAAS,CACL,yBAAyB,MAAM,CAAC,UAAU,4CAA4C;oBACtF,0GAA0G,CAC7G,CAAC;YACN,CAAC;QACL,CAAC;IACL,CAAC;IAEkB,KAAK,CAAC,iBAAiB,CAAC,WAAsB;QAC7D,4DAA4D;QAC5D,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAC;QAEtC,8EAA8E;QAC9E,6EAA6E;QAC7E,IAAI,CAAC,wBAAwB,GAAG,SAAS,CAAC;QAC1C,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;QAEpC,oDAAoD;QACpD,2EAA2E;QAC3E,oFAAoF;QACpF,KAAI,MAAM,cAAc,IAAI,IAAI,CAAC,iBAAiB,EAAC,CAAC;YAChD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAgC,EAAE,EAAE;gBACtD,OAAO,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAgC,EAAE,EAAE;gBAC5C,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;oBAC1B,wDAAwD;oBACxD,2DAA2D;oBAC3D,sEAAsE;oBACtE,4EAA4E;oBAC5E,OAAO,CAAC,KAAK,CAAC;;iNAE+K,CAAC,CAAA;gBAClM,CAAC;qBACI,CAAC;oBACF,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACxC,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;QAED,kEAAkE;QAClE,KAAI,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAC,CAAC;YAC7B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,MAA6B,EAAE,EAAE;gBACxD,OAAO,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAA6B,EAAE,EAAE;gBACzC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAyB,EAAE,EAAE;gBAClD,OAAO,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAyB,EAAE,EAAE;gBACrC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;QACP,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;iBAChE,OAAO,CAAC,CAAC,EAAyB,EAAE,EAAE;gBACnC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChC,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,oBAAoB,CAAC,UAAkB,EAAE,SAAiB,EAAE,WAAsB;QAC3F,IAAI,CAAC;YACD,MAAM,cAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,0FAA0F;YAClJ,MAAM,MAAM,GAAG,cAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBACnD,uFAAuF;gBACvF,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/F,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClF,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBAClD,MAAM,YAAY,GAAG,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAEhG,OAAO,UAAU,KAAK,UAAU;oBACzB,CAAC,YAAY,KAAK,EAAE,IAAI,OAAO,KAAK,YAAY,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;YACH,+GAA+G;YAC/G,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,2BAA2B;YAC7E,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,CAAC,EAAE,CAAC;YACP,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,4CAA4C;YACzD,MAAM,CAAC,CAAC;QACZ,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,kBAAkB,CAAC,UAAmB,EAAE,WAAsB;QACvE,OAAO,MAAM,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;;OAMG;IACI,kBAAkB,CAAC,OAAe,EAAE,QAAgB,EAAE,iBAAuC,UAAU;QAC1G,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAC/C,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC;YACjC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC;YACnC,IAAI,CAAC,cAAc,KAAK,cAAc;YACtC,IAAI,CAAC,MAAM,KAAK,QAAQ;YACxB,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC;YACpD,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAClD,CAAC;QAEF,uEAAuE;QACvE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC7B,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjE,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjE,OAAO,MAAM,GAAG,MAAM,CAAC;YAC3B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACV,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,IAAW,kBAAkB;QACzB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACpC,CAAC;IAED;;;;;;;;;OASG;IACI,YAAY,CACf,OAAe,EACf,MAA0C,EAC1C,kBAA0D;QAE1D,2CAA2C;QAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACxC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC;YAC/B,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CACnC,CAAC;QAEF,0CAA0C;QAC1C,MAAM,SAAS,GAAG,kBAAkB,IAAI,QAAQ,CAAC,CAAC,sCAAsC;QACxF,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAC7D,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC/B,EAAE,CAAC,MAAM,KAAK,SAAS,CAC1B,CAAC;QAEF,mDAAmD;QACnD,MAAM,aAAa,GAAG,mBAAmB;aACpC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;aAClE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC;QAEhE,gCAAgC;QAChC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;QACzC,MAAM,YAAY,GAA8B,EAAE,CAAC;QAEnD,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,WAAW,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;YACrD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC/C,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC5C,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,CAAC;QACL,CAAC;QAED,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED;yFACqF;IACrF,IAAW,eAAe;QACtB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAEM,cAAc,CAAC,SAAiB;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IAClG,CAAC;IAEM,YAAY,CAAC,OAAe;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9F,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,IAAW,mBAAmB;QAC1B,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACrC,CAAC;IAED;;;;;OAKG;IACI,4BAA4B,CAAC,OAAe,EAAE,aAAsB,IAAI;QAC3E,IAAI,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QAEtF,IAAI,UAAU,EAAE,CAAC;YACb,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;QAC3D,CAAC;QAED,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED;;;;OAIG;IACI,kCAAkC,CAAC,OAAe;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACjE,OAAO,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;OAKG;IACI,iCAAiC,CAAC,OAAe,EAAE,UAAkB;QACxE,OAAO,IAAI,CAAC,oBAAoB,CAAC,IAAI,CACjC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC/B,EAAE,CAAC,IAAI,KAAK,UAAU;YACtB,EAAE,CAAC,MAAM,KAAK,QAAQ,CAC/B,CAAC;IACN,CAAC;IAED,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED;;;;;;OAMG;IACH,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAEM,sBAAsB,CAAC,iBAAyB;QACnD,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,iBAAiB,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;IACtH,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,IAAW,qBAAqB;QAC5B,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACvC,CAAC;IAED;;;;;;OAMG;IACH,IAAW,uBAAuB;QAC9B,IAAI,IAAI,CAAC,wBAAwB,KAAK,SAAS,EAAE,CAAC;YAC9C,IAAI,CAAC,wBAAwB;gBACzB,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,oBAAoB,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;QAC7F,CAAC;QACD,OAAO,IAAI,CAAC,wBAAwB,IAAI,SAAS,CAAC;IACtD,CAAC;IAED,6FAA6F;IAC7F,IAAY,oBAAoB;QAC5B,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YAC3C,IAAI,CAAC,qBAAqB;gBACtB,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,iBAAiB,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;QAC1F,CAAC;QACD,OAAO,IAAI,CAAC,qBAAqB,IAAI,SAAS,CAAC;IACnD,CAAC;IAED;;;;;;;;;OASG;IACI,mBAAmB,CAAC,WAAkC;QACzD,MAAM,eAAe,GAAG,IAAI,CAAC,uBAAuB,CAAC;QACrD,IAAI,CAAC,eAAe,EAAE,CAAC;YACnB,6FAA6F;YAC7F,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,UAAU,CAAC,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC3D,CAAC;IAED;;;OAGG;IACH,IAAW,UAAU;QACjB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACpB,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,yFAAyF;IACzF,IAAW,WAAW;QAClB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAClF,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,gGAAgG;IAChG,IAAW,cAAc;QACrB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YACxB,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3F,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED,uGAAuG;IACvG,IAAW,kBAAkB;QACzB,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC5B,IAAI,CAAC,mBAAmB,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAChG,CAAC;QACD,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACpC,CAAC;IAED;;;;;;OAMG;IACH,IAAW,qBAAqB;QAC5B,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,IAAI,GAAG,EAAmC,CAAC;YACvD,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBAClC,MAAM,GAAG,GAAG,aAAa,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;gBACtC,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC1B,IAAI,IAAI,EAAE,CAAC;oBACP,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClB,CAAC;qBAAM,CAAC;oBACJ,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBACvB,CAAC;YACL,CAAC;YACD,IAAI,CAAC,sBAAsB,GAAG,GAAG,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,IAAW,sBAAsB;QAC7B,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAmC,CAAC;YACvD,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBAClC,MAAM,GAAG,GAAG,aAAa,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;gBACvC,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC1B,IAAI,IAAI,EAAE,CAAC;oBACP,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClB,CAAC;qBAAM,CAAC;oBACJ,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBACvB,CAAC;YACL,CAAC;YACD,IAAI,CAAC,uBAAuB,GAAG,GAAG,CAAC;QACvC,CAAC;QACD,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACxC,CAAC;IAED,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,IAAW,kBAAkB;QACzB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACpC,CAAC;IAED;;;;;;OAMG;IACI,8BAA8B,CACjC,WAAqD,EACrD,QAAgB;QAEhB,OAAO,IAAI,CAAC,mBAAmB;aAC1B,MAAM,CAAC,CAAC,CAAC,EAAE;YACR,IAAI,CAAC,CAAC,CAAC,QAAQ;gBAAE,OAAO,KAAK,CAAC;YAC9B,IAAI,CAAC,CAAC,WAAW,KAAK,WAAW;gBAAE,OAAO,KAAK,CAAC;YAEhD,QAAQ,WAAW,EAAE,CAAC;gBAClB,KAAK,QAAQ;oBACT,OAAO,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;gBAC9C,KAAK,aAAa;oBACd,OAAO,UAAU,CAAC,CAAC,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;gBACnD,KAAK,aAAa;oBACd,OAAO,UAAU,CAAC,CAAC,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;gBACnD;oBACI,OAAO,KAAK,CAAC;YACrB,CAAC;QACL,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED;;;;;OAKG;IACI,qBAAqB,CACxB,WAAqD,EACrD,QAAgB;QAEhB,OAAO,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACjF,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,IAAW,WAAW;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAED,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,IAAW,aAAa;QACpB,OAAO,sBAAsB,CAAC,QAAQ,CAAC,aAAa,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,CAAC;IAClF,CAAC;IAED,IAAW,eAAe;QACtB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,IAAW,eAAe;QACtB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAED,IAAW,mBAAmB;QAC1B,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACrC,CAAC;IAED,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED,IAAW,mBAAmB;QAC1B,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACI,sBAAsB,CAAC,eAAuB;QACjD,OAAO,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC;IACjG,CAAC;IAED;;;;;OAKG;IACI,qBAAqB,CAAC,eAAuB,EAAE,SAAiB;QACnE,OAAO,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACtC,UAAU,CAAC,CAAC,CAAC,eAAe,EAAE,eAAe,CAAC;YAC9C,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,CACnD,IAAI,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACI,qBAAqB,CAAC,eAAuB;QAChD,oBAAoB;QACpB,IAAI,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,eAAe,CAAE,CAAC;QAC/D,CAAC;QAED,MAAM,KAAK,GAA8B,EAAE,CAAC;QAC5C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;QACrC,IAAI,SAAS,GAAkB,eAAe,CAAC;QAE/C,OAAO,SAAS,EAAE,CAAC;YACf,kBAAkB;YAClB,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5B,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACvD,MAAM,IAAI,KAAK,CACX,6DAA6D;oBAC7D,qBAAqB,SAAS,yCAAyC;oBACvE,GAAG,UAAU,aAAa,CAC7B,CAAC;YACN,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;YAC3E,IAAI,CAAC,MAAM;gBAAE,MAAM;YAEnB,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC1B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnB,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,gCAAgC;QACjE,CAAC;QAED,mBAAmB;QACnB,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QAE1D,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACI,qCAAqC,CAAC,eAAuB;QAChE,MAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;QAE1D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,EAAE,CAAC;QACd,CAAC;QAED,8EAA8E;QAC9E,4EAA4E;QAC5E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAwC,CAAC;QAEjE,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CACjD,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAClD,CAAC;YACF,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;gBAC/B,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;YAClD,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED,6CAA6C;IAC7C,wCAAwC;IACxC,6CAA6C;IAE7C;;OAEG;IACH,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,IAAW,eAAe;QACtB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,IAAW,eAAe;QACtB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,IAAW,qBAAqB;QAC5B,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAED;;;OAGG;IACI,sBAAsB,CAAC,OAAe;QACzC,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB;aACnC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;aAC3C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,KAAK,GAAqC,EAAE,CAAC;QACnD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC;YACtG,IAAI,IAAI,EAAE,CAAC;gBACP,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACI,iBAAiB,CAAC,IAAY;QACjC,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IACnF,CAAC;IAED;;;;;OAKG;IACI,kBAAkB,CAAC,OAAe,EAAE,SAA6B;QACpE,MAAM,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CACrD,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,SAAS,KAAK,SAAS,CACtE,CAAC;QAEF,OAAO,oBAAoB;aACtB,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;aACtE,MAAM,CAAC,CAAC,CAAC,EAA2B,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;IACjE,CAAC;IAED;;;;;OAKG;IACI,kBAAkB,CAAC,OAAe,EAAE,SAA6B;QACpE,MAAM,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CACrD,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,SAAS,KAAK,SAAS,CACtE,CAAC;QAEF,OAAO,oBAAoB;aACtB,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;aACtE,MAAM,CAAC,CAAC,CAAC,EAA2B,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;OAOG;IACI,qBAAqB,CAAC,OAAe,EAAE,YAAoB,EAAE,SAA6B;QAC7F,+CAA+C;QAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAEpE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,uDAAuD;YACvD,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;QAC1F,CAAC;QAED,iEAAiE;QACjE,OAAO,YAAY,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;IACjD,CAAC;IAED;;;;;;OAMG;IACI,qBAAqB,CAAC,OAAe,EAAE,YAAoB,EAAE,SAA6B;QAC7F,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAEpE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;QAC1F,CAAC;QAED,qEAAqE;QACrE,OAAO,YAAY,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;IACjD,CAAC;IAED;;;;;OAKG;IACI,wBAAwB,CAAC,OAAe;QAC3C,MAAM,iBAAiB,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC9D,OAAO,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CACzC,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,CAC7D,CAAC;IACN,CAAC;IAED;;;;OAIG;IACI,gCAAgC,CAAC,OAAe;QACnD,kCAAkC;QAClC,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAElE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC;QAED,2DAA2D;QAC3D,OAAO,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC;IAED,6CAA6C;IAC7C,oCAAoC;IACpC,6CAA6C;IAE7C;;;;;;;;OAQG;IACI,sBAAsB,CAAC,OAAe,EAAE,YAAoB,EAAE,OAAgB;QACjF,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,kEAAkE;YAClE,OAAO;gBACH,YAAY,EAAE,IAAI;gBAClB,kBAAkB,EAAE,IAAI;gBACxB,YAAY,EAAE,IAAI;gBAClB,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,KAAK;gBAChB,MAAM,EAAE,SAAS;aACpB,CAAC;QACN,CAAC;QAED,kEAAkE;QAClE,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAC5C,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,SAAS,KAAK,OAAO,CAC9G,CAAC;QAEF,IAAI,aAAa,EAAE,CAAC;YAChB,4CAA4C;YAC5C,OAAO;gBACH,YAAY,EAAE,aAAa,CAAC,YAAY;gBACxC,kBAAkB,EAAE,aAAa,CAAC,kBAAkB;gBACpD,YAAY,EAAE,IAAI,EAAE,2CAA2C;gBAC/D,gBAAgB,EAAE,IAAI,EAAE,+CAA+C;gBACvE,SAAS,EAAE,aAAa,CAAC,SAAS;gBAClC,MAAM,EAAE,OAAO;aAClB,CAAC;QACN,CAAC;QAED,2DAA2D;QAC3D,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;YACvE,IAAI,WAAW,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBACjC,OAAO,WAAW,CAAC;YACvB,CAAC;QACL,CAAC;QAED,6CAA6C;QAC7C,OAAO;YACH,YAAY,EAAE,QAAQ,CAAC,mBAAmB;YAC1C,kBAAkB,EAAE,QAAQ,CAAC,yBAAyB;YACtD,YAAY,EAAE,IAAI,EAAE,4CAA4C;YAChE,gBAAgB,EAAE,IAAI,EAAE,2DAA2D;YACnF,SAAS,EAAE,IAAI,EAAE,6DAA6D;YAC9E,MAAM,EAAE,QAAQ;SACnB,CAAC;IACN,CAAC;IAED;;;;;;;OAOG;IACI,sBAAsB,CAAC,OAAe,EAAE,YAAoB;QAC/D,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO;gBACH,YAAY,EAAE,IAAI;gBAClB,kBAAkB,EAAE,IAAI;gBACxB,YAAY,EAAE,IAAI;gBAClB,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,KAAK;gBAChB,MAAM,EAAE,SAAS;aACpB,CAAC;QACN,CAAC;QAED,yCAAyC;QACzC,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAC5C,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,SAAS,KAAK,OAAO,CAC9G,CAAC;QAEF,IAAI,aAAa,IAAI,aAAa,CAAC,WAAW,EAAE,CAAC;YAC7C,OAAO;gBACH,YAAY,EAAE,aAAa,CAAC,YAAY;gBACxC,kBAAkB,EAAE,aAAa,CAAC,kBAAkB;gBACpD,YAAY,EAAE,aAAa,CAAC,YAAY;gBACxC,gBAAgB,EAAE,aAAa,CAAC,gBAAgB;gBAChD,SAAS,EAAE,aAAa,CAAC,WAAW;gBACpC,MAAM,EAAE,OAAO;aAClB,CAAC;QACN,CAAC;QAED,6CAA6C;QAC7C,OAAO;YACH,YAAY,EAAE,QAAQ,CAAC,mBAAmB;YAC1C,kBAAkB,EAAE,QAAQ,CAAC,yBAAyB;YACtD,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE,IAAI;YACtB,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,QAAQ;SACnB,CAAC;IACN,CAAC;IAED;;;;;;;;OAQG;IACI,wBAAwB,CAAC,OAAe,EAAE,OAAgB;QAC7D,MAAM,uBAAuB,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACpE,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAA0B,CAAC;QAE5D,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,IAAI,UAAU,GAAG,sBAAsB,CAAC;QACxC,IAAI,WAAW,GAAG,6BAA6B,CAAC;QAChD,MAAM,aAAa,GAAa,EAAE,CAAC;QAEnC,KAAK,MAAM,YAAY,IAAI,uBAAuB,EAAE,CAAC;YACjD,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;YAC3E,iBAAiB,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YAE5C,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACnB,aAAa,GAAG,IAAI,CAAC;gBAErB,wCAAwC;gBACxC,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,IAAI,MAAM,CAAC,YAAY,GAAG,UAAU,EAAE,CAAC;oBAClE,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC;gBACrC,CAAC;gBAED,yCAAyC;gBACzC,IAAI,MAAM,CAAC,kBAAkB,IAAI,IAAI,IAAI,MAAM,CAAC,kBAAkB,GAAG,WAAW,EAAE,CAAC;oBAC/E,WAAW,GAAG,MAAM,CAAC,kBAAkB,CAAC;gBAC5C,CAAC;gBAED,wDAAwD;gBACxD,MAAM,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;gBACvF,IAAI,WAAW,EAAE,CAAC;oBACd,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACpC,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO;YACH,OAAO,EAAE,aAAa;YACtB,cAAc,EAAE,WAAW;YAC3B,sBAAsB,EAAE,UAAU;YAClC,iBAAiB,EAAE,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;YACjF,UAAU,EAAE,iBAAiB;SAChC,CAAC;IACN,CAAC;IAED;;OAEG;IACK,sBAAsB,CAAC,YAAoB,EAAE,gBAA+B;QAChF,6CAA6C;QAC7C,IAAI,gBAAgB,EAAE,CAAC;YACnB,OAAO,gBAAgB,CAAC;QAC5B,CAAC;QAED,oCAAoC;QACpC,QAAQ,YAAY,CAAC,WAAW,EAAE,EAAE,CAAC;YACjC,KAAK,OAAO;gBACR,OAAO,SAAS,CAAC;YACrB,KAAK,OAAO;gBACR,OAAO,SAAS,CAAC;YACrB,KAAK,OAAO;gBACR,OAAO,SAAS,CAAC;YACrB,KAAK,MAAM;gBACP,OAAO,KAAK,CAAC,CAAC,wBAAwB;YAC1C;gBACI,OAAO,IAAI,CAAC;QACpB,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,aAAa,CAAC,OAAe,EAAE,MAAe;QACjD,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAClC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC;YACjC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CACtC,CAAC;IACN,CAAC;IAED;;;;OAIG;IACI,gBAAgB,CAAC,MAAc;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC;IAC9E,CAAC;IAED;;;;OAIG;IACI,gBAAgB,CAAC,MAAc;QAClC,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;IACtF,CAAC;IAED;;OAEG;IACH,IAAW,YAAY;QACnB,OAAO,EAAE,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAW,OAAO;QACd,OAAO,EAAE,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAW,eAAe;QACtB,OAAO,EAAE,CAAC;IACd,CAAC;IAEM,MAAM,KAAK,QAAQ;QACtB,OAAO,KAAK,CAAC,WAAW,EAAgB,CAAC;IAC7C,CAAC;IAES,MAAM,CAAC,mBAAmB;QAChC,IAAI,CAAC,cAAY,CAAC,QAAQ,CAAC,MAAM;YAC7B,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;IACrF,CAAC;IAGD;;;OAGG;IACI,KAAK,CAAC,gBAAgB,CAAC,MAAc;QACxC,IAAI,CAAC;YACD,MAAM,EAAE,GAAG,IAAI,OAAO,EAAE,CAAC;YACzB,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACjD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC;gBAC5B,UAAU,EAAE,qBAAqB;gBACjC,WAAW,EAAE,iBAAiB,aAAa,uBAAuB;gBAClE,OAAO,EAAE,YAAY;gBACrB,OAAO,EAAE,CAAC,EAAE,0BAA0B;gBACtC,UAAU,EAAE,eAAe;aAC9B,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACrB,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1E,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC7B,CAAC;;gBAEG,OAAO,IAAI,CAAC;QACpB,CAAC;QACD,OAAO,GAAG,EAAE,CAAC;YACT,QAAQ,CAAC,GAAG,CAAC,CAAC;YACd,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,WAAW,CAAC,KAA8B,EAAE,MAAgC,EAAE,UAAkB,EAAE,UAAkB;QAC7H,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QAC9B,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,eAAe,CAAwB,qBAAqB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3G,SAAS,CAAC,SAAS,GAAG,KAAK,CAAC,EAAE,CAAC;QAC/B,SAAS,CAAC,UAAU,GAAG,MAAM,CAAC,EAAE,CAAC;QACjC,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC;QAClC,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC;QAClC,SAAS,CAAC,MAAM,GAAG,QAAQ,CAAC;QAC5B,SAAS,CAAC,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,OAAO,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;IAED,6CAA6C;IAC7C,qCAAqC;IACrC,6CAA6C;IAE7C;;;;;OAKG;IACI,KAAK,CAAC,gBAAgB,CAAC,OAAe,EAAE,IAAc;QACzD,OAAO,MAAM,uBAAuB,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,eAAe,CAAC,OAAe,EAAE,IAAc;QACxD,OAAO,MAAM,uBAAuB,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC7E,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,gBAAgB,CAAC,OAAe,EAAE,IAAc;QACzD,OAAO,MAAM,uBAAuB,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,kBAAkB,CAAC,OAAe,EAAE,IAAc;QAC3D,OAAO,MAAM,uBAAuB,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAChF,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,uBAAuB,CAAC,OAAe,EAAE,IAAc;QAChE,OAAO,MAAM,uBAAuB,CAAC,uBAAuB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAChF,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,mBAAmB,CAAC,IAAc,EAAE,UAA8C;QAC3F,OAAO,MAAM,uBAAuB,CAAC,mBAAmB,CAAC,IAAI,EAAE,UAAU,CAA8B,CAAC;IAC5G,CAAC;IAED;;OAEG;IACI,0BAA0B;QAC7B,uBAAuB,CAAC,UAAU,EAAE,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,4BAA4B,CAAC,OAAe,EAAE,IAAc;QACrE,MAAM,uBAAuB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;CACJ,CAAA;AAngDY,YAAY;IADxB,kBAAkB,EAAE;GACR,YAAY,CAmgDxB"}
1
+ {"version":3,"file":"BaseAIEngine.js","sourceRoot":"","sources":["../src/BaseAIEngine.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export * from './BaseAIEngine.js';
2
2
  export * from './PriceUnitTypes.js';
3
3
  export * from './AIAgentPermissionHelper.js';
4
+ export * from './AISkillPermissionHelper.js';
4
5
  export * from './MJAICredentialBindingEntityExtended.js';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uCAAuC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uCAAuC,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  export * from './BaseAIEngine.js';
2
2
  export * from './PriceUnitTypes.js';
3
3
  export * from './AIAgentPermissionHelper.js';
4
+ export * from './AISkillPermissionHelper.js';
4
5
  export * from './MJAICredentialBindingEntityExtended.js';
5
6
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uCAAuC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uCAAuC,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@memberjunction/ai-engine-base",
3
3
  "type": "module",
4
- "version": "5.43.0",
4
+ "version": "5.45.0",
5
5
  "description": "MemberJunction: Base AI Engine Package - does extended types and data caching, can be used anywhere.",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -17,12 +17,12 @@
17
17
  "author": "MemberJunction.com",
18
18
  "license": "ISC",
19
19
  "dependencies": {
20
- "@memberjunction/core": "5.43.0",
21
- "@memberjunction/global": "5.43.0",
22
- "@memberjunction/core-entities": "5.43.0",
23
- "@memberjunction/ai": "5.43.0",
24
- "@memberjunction/ai-core-plus": "5.43.0",
25
- "@memberjunction/templates-base-types": "5.43.0",
20
+ "@memberjunction/core": "5.45.0",
21
+ "@memberjunction/global": "5.45.0",
22
+ "@memberjunction/core-entities": "5.45.0",
23
+ "@memberjunction/ai": "5.45.0",
24
+ "@memberjunction/ai-core-plus": "5.45.0",
25
+ "@memberjunction/templates-base-types": "5.45.0",
26
26
  "dotenv": "^17.2.4",
27
27
  "rxjs": "^7.8.2"
28
28
  },