@cicctencent/agent-server 0.1.2 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/README.md +93 -16
  2. package/dist/cjs/agent/agent-server.d.ts.map +1 -1
  3. package/dist/cjs/agent/agent-server.js +95 -43
  4. package/dist/cjs/agent/agent-server.js.map +1 -1
  5. package/dist/cjs/index.d.ts +2 -1
  6. package/dist/cjs/index.d.ts.map +1 -1
  7. package/dist/cjs/index.js +7 -3
  8. package/dist/cjs/index.js.map +1 -1
  9. package/dist/cjs/service/agent-profile.service.d.ts +25 -2
  10. package/dist/cjs/service/agent-profile.service.d.ts.map +1 -1
  11. package/dist/cjs/service/agent-profile.service.js +18 -7
  12. package/dist/cjs/service/agent-profile.service.js.map +1 -1
  13. package/dist/cjs/service/cache.service.d.ts +70 -0
  14. package/dist/cjs/service/cache.service.d.ts.map +1 -0
  15. package/dist/cjs/service/cache.service.js +270 -0
  16. package/dist/cjs/service/cache.service.js.map +1 -0
  17. package/dist/cjs/service/engine-pool.d.ts +15 -2
  18. package/dist/cjs/service/engine-pool.d.ts.map +1 -1
  19. package/dist/cjs/service/engine-pool.js +15 -4
  20. package/dist/cjs/service/engine-pool.js.map +1 -1
  21. package/dist/cjs/service/settings.service.d.ts +7 -3
  22. package/dist/cjs/service/settings.service.d.ts.map +1 -1
  23. package/dist/cjs/service/settings.service.js +19 -14
  24. package/dist/cjs/service/settings.service.js.map +1 -1
  25. package/dist/cjs/spi/adapters.d.ts +55 -3
  26. package/dist/cjs/spi/adapters.d.ts.map +1 -1
  27. package/dist/cjs/spi/adapters.js +75 -23
  28. package/dist/cjs/spi/adapters.js.map +1 -1
  29. package/dist/cjs/spi/index.d.ts +85 -1
  30. package/dist/cjs/spi/index.d.ts.map +1 -1
  31. package/dist/cjs/spi/index.js +90 -6
  32. package/dist/cjs/spi/index.js.map +1 -1
  33. package/dist/cjs/spi/types.d.ts +47 -42
  34. package/dist/cjs/spi/types.d.ts.map +1 -1
  35. package/dist/cjs/store/app-stores.js +1 -1
  36. package/dist/cjs/store/app-stores.js.map +1 -1
  37. package/dist/cjs/types.d.ts +125 -24
  38. package/dist/cjs/types.d.ts.map +1 -1
  39. package/dist/cjs/utils/data-dir.d.ts.map +1 -1
  40. package/dist/cjs/utils/data-dir.js +8 -11
  41. package/dist/cjs/utils/data-dir.js.map +1 -1
  42. package/dist/esm/agent/agent-server.d.ts.map +1 -1
  43. package/dist/esm/agent/agent-server.js +98 -46
  44. package/dist/esm/agent/agent-server.js.map +1 -1
  45. package/dist/esm/index.d.ts +2 -1
  46. package/dist/esm/index.d.ts.map +1 -1
  47. package/dist/esm/index.js +1 -0
  48. package/dist/esm/index.js.map +1 -1
  49. package/dist/esm/service/agent-profile.service.d.ts +25 -2
  50. package/dist/esm/service/agent-profile.service.d.ts.map +1 -1
  51. package/dist/esm/service/agent-profile.service.js +18 -7
  52. package/dist/esm/service/agent-profile.service.js.map +1 -1
  53. package/dist/esm/service/cache.service.d.ts +70 -0
  54. package/dist/esm/service/cache.service.d.ts.map +1 -0
  55. package/dist/esm/service/cache.service.js +264 -0
  56. package/dist/esm/service/cache.service.js.map +1 -0
  57. package/dist/esm/service/engine-pool.d.ts +15 -2
  58. package/dist/esm/service/engine-pool.d.ts.map +1 -1
  59. package/dist/esm/service/engine-pool.js +15 -4
  60. package/dist/esm/service/engine-pool.js.map +1 -1
  61. package/dist/esm/service/settings.service.d.ts +7 -3
  62. package/dist/esm/service/settings.service.d.ts.map +1 -1
  63. package/dist/esm/service/settings.service.js +19 -14
  64. package/dist/esm/service/settings.service.js.map +1 -1
  65. package/dist/esm/spi/adapters.d.ts +55 -3
  66. package/dist/esm/spi/adapters.d.ts.map +1 -1
  67. package/dist/esm/spi/adapters.js +75 -23
  68. package/dist/esm/spi/adapters.js.map +1 -1
  69. package/dist/esm/spi/index.d.ts +85 -1
  70. package/dist/esm/spi/index.d.ts.map +1 -1
  71. package/dist/esm/spi/index.js +90 -6
  72. package/dist/esm/spi/index.js.map +1 -1
  73. package/dist/esm/spi/types.d.ts +47 -42
  74. package/dist/esm/spi/types.d.ts.map +1 -1
  75. package/dist/esm/store/app-stores.js +1 -1
  76. package/dist/esm/store/app-stores.js.map +1 -1
  77. package/dist/esm/types.d.ts +125 -24
  78. package/dist/esm/types.d.ts.map +1 -1
  79. package/dist/esm/utils/data-dir.d.ts.map +1 -1
  80. package/dist/esm/utils/data-dir.js +0 -3
  81. package/dist/esm/utils/data-dir.js.map +1 -1
  82. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/esm/index.js CHANGED
@@ -12,6 +12,7 @@ export { DefaultPromptBuilder, RESULT_SYNTHESIS_PROMPT } from "./prompt/prompt-b
12
12
  export { MemoryService, getMemoryService, resetMemoryService } from "./service/memory.service.js";
13
13
  export { getEnginePool, resetEnginePool } from "./service/engine-pool.js";
14
14
  export { getRunRegistry, resetRunRegistry } from "./service/run-registry.js";
15
+ export { TTLCache, CachedSettingsProvider, CachedAgentProfileProvider } from "./service/cache.service.js";
15
16
  // ---- SSE ----
16
17
  export { writeSSE, initSSEResponse, runAgentSSEStream } from "./sse/sse-handler.js";
17
18
  export { collectEngineOutput } from "./sse/sse-handler.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,30 @@
1
1
  import type { AgentProfileEntity, AgentProfileProvider } from '../types.js';
2
+ /** 默认 Agent Profile 配置(应用层可通过构造函数覆盖) */
3
+ export interface DefaultProfileConfig {
4
+ name: string;
5
+ description: string;
6
+ icon: string;
7
+ color: string;
8
+ }
2
9
  declare function nextId(namespace: string): number;
3
10
  declare function setIdCounter(namespace: string, val: number): void;
4
11
  declare function getIdCounter(namespace: string): number;
5
12
  /**
6
13
  * 默认 AgentProfileProvider 实现 — JSON 文件存储
14
+ *
15
+ * @param _dataDir - 数据目录(保留用于未来扩展,当前由 JsonListStore 通过 getProjectDataPath 管理)
16
+ * @param profileConfig - 应用层覆盖默认 Agent 的显示配置(名称、图标、颜色等)
7
17
  */
8
18
  export declare class DefaultAgentProfileProvider implements AgentProfileProvider {
9
19
  private store;
10
- constructor(dataDir?: string);
20
+ private profileConfig;
21
+ constructor(_dataDir?: string, profileConfig?: {
22
+ name?: string;
23
+ description?: string;
24
+ icon?: string;
25
+ color?: string;
26
+ basePrompt?: string;
27
+ });
11
28
  private ensureDefaultProfile;
12
29
  listProfiles(): AgentProfileEntity[];
13
30
  getProfile(id: number): AgentProfileEntity | undefined;
@@ -16,7 +33,13 @@ export declare class DefaultAgentProfileProvider implements AgentProfileProvider
16
33
  updateProfile(id: number, data: Partial<AgentProfileEntity>): AgentProfileEntity | undefined;
17
34
  deleteProfile(id: number): boolean;
18
35
  }
19
- export declare function getAgentProfileProvider(dataDir?: string): DefaultAgentProfileProvider;
36
+ export declare function getAgentProfileProvider(dataDir?: string, profileConfig?: {
37
+ name?: string;
38
+ description?: string;
39
+ icon?: string;
40
+ color?: string;
41
+ basePrompt?: string;
42
+ }): DefaultAgentProfileProvider;
20
43
  export declare function listProfiles(): AgentProfileEntity[];
21
44
  export declare function getProfile(id: number): AgentProfileEntity | undefined;
22
45
  export declare function getDefaultProfile(): AgentProfileEntity | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-profile.service.d.ts","sourceRoot":"","sources":["../../../src/service/agent-profile.service.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAQ5E,iBAAS,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAGzC;AAED,iBAAS,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAE1D;AAED,iBAAS,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;GAEG;AACH,qBAAa,2BAA4B,YAAW,oBAAoB;IACtE,OAAO,CAAC,KAAK,CAAoC;gBAErC,OAAO,CAAC,EAAE,MAAM;IAK5B,OAAO,CAAC,oBAAoB;IAuB5B,YAAY,IAAI,kBAAkB,EAAE;IAIpC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IAItD,iBAAiB,IAAI,kBAAkB,GAAG,SAAS;IAKnD,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB;IAgCpE,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,GAAG,SAAS;IAI5F,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;CAKnC;AAMD,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,2BAA2B,CAGrF;AAGD,wBAAgB,YAAY,IAAI,kBAAkB,EAAE,CAEnD;AACD,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAErE;AACD,wBAAgB,iBAAiB,IAAI,kBAAkB,GAAG,SAAS,CAElE;AACD,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,CAEnF;AACD,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,GAAG,SAAS,CAE3G;AACD,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"agent-profile.service.d.ts","sourceRoot":"","sources":["../../../src/service/agent-profile.service.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAK5E,wCAAwC;AACxC,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAYD,iBAAS,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAGzC;AAED,iBAAS,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAE1D;AAED,iBAAS,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;;GAKG;AACH,qBAAa,2BAA4B,YAAW,oBAAoB;IACtE,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,aAAa,CAAuB;gBAEhC,QAAQ,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;IAM1I,OAAO,CAAC,oBAAoB;IAuB5B,YAAY,IAAI,kBAAkB,EAAE;IAIpC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IAItD,iBAAiB,IAAI,kBAAkB,GAAG,SAAS;IAKnD,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB;IAgCpE,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,GAAG,SAAS;IAI5F,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;CAKnC;AAMD,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,2BAA2B,CAGlM;AAGD,wBAAgB,YAAY,IAAI,kBAAkB,EAAE,CAEnD;AACD,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAErE;AACD,wBAAgB,iBAAiB,IAAI,kBAAkB,GAAG,SAAS,CAElE;AACD,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,CAEnF;AACD,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,GAAG,SAAS,CAE3G;AACD,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC"}
@@ -4,6 +4,12 @@
4
4
  import { JsonListStore } from "../store/index.js";
5
5
  import { formatLocalDateTime } from '@cicctencent/agent-core';
6
6
  const DEFAULT_BASE_PROMPT = 'You are a helpful AI assistant with access to tools. Use tools when needed to accomplish tasks. Always explain your actions clearly. Respond in the same language as the user.';
7
+ const DEFAULT_PROFILE_CONFIG = {
8
+ name: 'Default Agent',
9
+ description: 'Built-in default agent with tool-calling and task delegation support',
10
+ icon: '🤖',
11
+ color: '#6B5CE7',
12
+ };
7
13
  // 自增 ID 辅助
8
14
  let _idCounters = {};
9
15
  function nextId(namespace) {
@@ -19,11 +25,16 @@ function getIdCounter(namespace) {
19
25
  }
20
26
  /**
21
27
  * 默认 AgentProfileProvider 实现 — JSON 文件存储
28
+ *
29
+ * @param _dataDir - 数据目录(保留用于未来扩展,当前由 JsonListStore 通过 getProjectDataPath 管理)
30
+ * @param profileConfig - 应用层覆盖默认 Agent 的显示配置(名称、图标、颜色等)
22
31
  */
23
32
  export class DefaultAgentProfileProvider {
24
33
  store;
25
- constructor(dataDir) {
34
+ profileConfig;
35
+ constructor(_dataDir, profileConfig) {
26
36
  this.store = new JsonListStore('agent-profiles.json', { projectLocal: true, ttl: 5 * 60 * 1000 });
37
+ this.profileConfig = { ...DEFAULT_PROFILE_CONFIG, ...profileConfig };
27
38
  this.ensureDefaultProfile();
28
39
  }
29
40
  ensureDefaultProfile() {
@@ -31,10 +42,10 @@ export class DefaultAgentProfileProvider {
31
42
  return;
32
43
  this.store.add({
33
44
  id: nextId('agent-profile'),
34
- name: '默认 Agent',
35
- description: '内置默认 Agent,支持工具调用和任务委派',
36
- icon: '🤖',
37
- color: '#6B5CE7',
45
+ name: this.profileConfig.name,
46
+ description: this.profileConfig.description,
47
+ icon: this.profileConfig.icon,
48
+ color: this.profileConfig.color,
38
49
  basePrompt: DEFAULT_BASE_PROMPT,
39
50
  maxIterations: 15,
40
51
  maxMessages: 50,
@@ -102,9 +113,9 @@ export class DefaultAgentProfileProvider {
102
113
  }
103
114
  // ---- 全局单例 ----
104
115
  let globalProvider = null;
105
- export function getAgentProfileProvider(dataDir) {
116
+ export function getAgentProfileProvider(dataDir, profileConfig) {
106
117
  if (!globalProvider)
107
- globalProvider = new DefaultAgentProfileProvider(dataDir);
118
+ globalProvider = new DefaultAgentProfileProvider(dataDir, profileConfig);
108
119
  return globalProvider;
109
120
  }
110
121
  // 向后兼容的导出
@@ -1 +1 @@
1
- {"version":3,"file":"agent-profile.service.js","sourceRoot":"","sources":["../../../src/service/agent-profile.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-profile.service.js","sourceRoot":"","sources":["../../../src/service/agent-profile.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ import type { AgentProfileProvider, SettingsProvider, AgentProfileEntity, SettingsEntity, TenantContext } from '../types.js';
2
+ /**
3
+ * 通用 TTL 缓存。
4
+ *
5
+ * - `ttl > 0`:启用缓存,过期后自动失效
6
+ * - `ttl === 0`:禁用缓存,get() 永远返回 null(每次直接查 Provider)
7
+ */
8
+ export declare class TTLCache<T> {
9
+ private cache;
10
+ private ttl;
11
+ constructor(ttlMs?: number);
12
+ /** 是否启用缓存 */
13
+ get enabled(): boolean;
14
+ /** 更新 TTL(不影响已缓存条目的过期时间) */
15
+ setTTL(ttlMs: number): void;
16
+ /** 获取缓存值(未命中或过期返回 null) */
17
+ get(key: string): T | null;
18
+ /** 设置缓存值 */
19
+ set(key: string, value: T): void;
20
+ /** 清除指定 key 的缓存 */
21
+ invalidate(key?: string): void;
22
+ /** 清除所有缓存 */
23
+ clear(): void;
24
+ /** 清除已过期的条目 */
25
+ purgeExpired(): void;
26
+ /** 缓存条目数量 */
27
+ get size(): number;
28
+ }
29
+ /**
30
+ * 包装 SettingsProvider,增加 TTL 缓存。
31
+ *
32
+ * 多进程部署时,每个进程独立缓存 Settings,TTL 到期后重新从底层 Provider 加载。
33
+ * 主动失效通过 `invalidate()` 清除缓存,上层可通过 `CacheInvalidationNotifier` 跨进程通知。
34
+ */
35
+ export declare class CachedSettingsProvider implements SettingsProvider {
36
+ private cache;
37
+ private delegate;
38
+ constructor(delegate: SettingsProvider, ttlMs?: number);
39
+ getSettings(tenant?: TenantContext): SettingsEntity;
40
+ updateSettings(updates: Partial<SettingsEntity>, tenant?: TenantContext): SettingsEntity;
41
+ resetSettings?(tenant?: TenantContext): SettingsEntity;
42
+ /** 清除缓存 */
43
+ invalidate(): void;
44
+ }
45
+ /**
46
+ * 包装 AgentProfileProvider,增加 TTL 缓存。
47
+ *
48
+ * 多进程部署时,每个进程独立缓存 Profile,TTL 到期后重新从底层 Provider 加载。
49
+ * 主动失效通过 `invalidate(profileId?)` 清除指定或全部 Profile 缓存。
50
+ */
51
+ export declare class CachedAgentProfileProvider implements AgentProfileProvider {
52
+ private cache;
53
+ private listCache;
54
+ private defaultCache;
55
+ private delegate;
56
+ constructor(delegate: AgentProfileProvider, ttlMs?: number);
57
+ private tenantKey;
58
+ listProfiles(tenant?: TenantContext): AgentProfileEntity[] | Promise<AgentProfileEntity[]>;
59
+ getProfile(id: number, tenant?: TenantContext): AgentProfileEntity | undefined | Promise<AgentProfileEntity | undefined>;
60
+ getDefaultProfile(tenant?: TenantContext): AgentProfileEntity | undefined | Promise<AgentProfileEntity | undefined>;
61
+ createProfile(data: Partial<AgentProfileEntity>, tenant?: TenantContext): AgentProfileEntity | Promise<AgentProfileEntity>;
62
+ updateProfile(id: number, data: Partial<AgentProfileEntity>, tenant?: TenantContext): AgentProfileEntity | undefined | Promise<AgentProfileEntity | undefined>;
63
+ deleteProfile(id: number, tenant?: TenantContext): boolean | Promise<boolean>;
64
+ /**
65
+ * 清除缓存。
66
+ * @param profileId 指定 profileId 时仅清除该 profile;不指定时清除全部
67
+ */
68
+ invalidate(profileId?: number): void;
69
+ }
70
+ //# sourceMappingURL=cache.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache.service.d.ts","sourceRoot":"","sources":["../../../src/service/cache.service.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,aAAa,EACd,MAAM,aAAa,CAAC;AAYrB;;;;;GAKG;AACH,qBAAa,QAAQ,CAAC,CAAC;IACrB,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,GAAG,CAAS;gBAER,KAAK,GAAE,MAAe;IAIlC,aAAa;IACb,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,4BAA4B;IAC5B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI3B,2BAA2B;IAC3B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI;IAW1B,YAAY;IACZ,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAKhC,mBAAmB;IACnB,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAQ9B,aAAa;IACb,KAAK,IAAI,IAAI;IAIb,eAAe;IACf,YAAY,IAAI,IAAI;IASpB,aAAa;IACb,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF;AAMD;;;;;GAKG;AACH,qBAAa,sBAAuB,YAAW,gBAAgB;IAC7D,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,QAAQ,CAAmB;gBAEvB,QAAQ,EAAE,gBAAgB,EAAE,KAAK,GAAE,MAAe;IAK9D,WAAW,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,cAAc;IAenD,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,cAAc;IAWxF,aAAa,CAAC,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,cAAc;IActD,WAAW;IACX,UAAU,IAAI,IAAI;CAGnB;AAMD;;;;;GAKG;AACH,qBAAa,0BAA2B,YAAW,oBAAoB;IACrE,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,YAAY,CAA2C;IAC/D,OAAO,CAAC,QAAQ,CAAuB;gBAE3B,QAAQ,EAAE,oBAAoB,EAAE,KAAK,GAAE,MAAe;IAOlE,OAAO,CAAC,SAAS;IAIjB,YAAY,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,kBAAkB,EAAE,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAmB1F,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,kBAAkB,GAAG,SAAS,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAgBxH,iBAAiB,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,kBAAkB,GAAG,SAAS,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAgBnH,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAS1H,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,kBAAkB,GAAG,SAAS,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAiB9J,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAS7E;;;OAGG;IACH,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;CASrC"}
@@ -0,0 +1,264 @@
1
+ // ============================================================
2
+ // CacheService — TTL 缓存包装器(多进程/多实例场景)
3
+ // ============================================================
4
+ //
5
+ // 问题:上层 Web 项目多进程部署时,每次 getSettings() / getProfile() 都查 DB 会产生大量重复查询。
6
+ // 解决:在 Provider 之上加一层 TTL 缓存,减少 DB 压力;同时支持主动失效。
7
+ //
8
+ // 缓存策略:
9
+ // - TTL 到期自动过期,下次请求重新从底层 Provider 加载
10
+ // - 主动失效通过 invalidate() 清除指定 key 或全部
11
+ // - 跨进程失效通过 CacheInvalidationNotifier 实现(如 Redis pub/sub)
12
+ /**
13
+ * 通用 TTL 缓存。
14
+ *
15
+ * - `ttl > 0`:启用缓存,过期后自动失效
16
+ * - `ttl === 0`:禁用缓存,get() 永远返回 null(每次直接查 Provider)
17
+ */
18
+ export class TTLCache {
19
+ cache = new Map();
20
+ ttl;
21
+ constructor(ttlMs = 60_000) {
22
+ this.ttl = ttlMs;
23
+ }
24
+ /** 是否启用缓存 */
25
+ get enabled() {
26
+ return this.ttl > 0;
27
+ }
28
+ /** 更新 TTL(不影响已缓存条目的过期时间) */
29
+ setTTL(ttlMs) {
30
+ this.ttl = ttlMs;
31
+ }
32
+ /** 获取缓存值(未命中或过期返回 null) */
33
+ get(key) {
34
+ if (!this.enabled)
35
+ return null;
36
+ const entry = this.cache.get(key);
37
+ if (!entry)
38
+ return null;
39
+ if (Date.now() > entry.expiresAt) {
40
+ this.cache.delete(key);
41
+ return null;
42
+ }
43
+ return entry.value;
44
+ }
45
+ /** 设置缓存值 */
46
+ set(key, value) {
47
+ if (!this.enabled)
48
+ return;
49
+ this.cache.set(key, { value, expiresAt: Date.now() + this.ttl });
50
+ }
51
+ /** 清除指定 key 的缓存 */
52
+ invalidate(key) {
53
+ if (key !== undefined) {
54
+ this.cache.delete(key);
55
+ }
56
+ else {
57
+ this.cache.clear();
58
+ }
59
+ }
60
+ /** 清除所有缓存 */
61
+ clear() {
62
+ this.cache.clear();
63
+ }
64
+ /** 清除已过期的条目 */
65
+ purgeExpired() {
66
+ const now = Date.now();
67
+ for (const [key, entry] of this.cache) {
68
+ if (now > entry.expiresAt) {
69
+ this.cache.delete(key);
70
+ }
71
+ }
72
+ }
73
+ /** 缓存条目数量 */
74
+ get size() {
75
+ return this.cache.size;
76
+ }
77
+ }
78
+ // ============================================================
79
+ // CachedSettingsProvider — Settings 缓存包装器
80
+ // ============================================================
81
+ /**
82
+ * 包装 SettingsProvider,增加 TTL 缓存。
83
+ *
84
+ * 多进程部署时,每个进程独立缓存 Settings,TTL 到期后重新从底层 Provider 加载。
85
+ * 主动失效通过 `invalidate()` 清除缓存,上层可通过 `CacheInvalidationNotifier` 跨进程通知。
86
+ */
87
+ export class CachedSettingsProvider {
88
+ cache;
89
+ delegate;
90
+ constructor(delegate, ttlMs = 60_000) {
91
+ this.delegate = delegate;
92
+ this.cache = new TTLCache(ttlMs);
93
+ }
94
+ getSettings(tenant) {
95
+ const cacheKey = tenant ? `settings:${tenant.tenantId || tenant.userId || ''}` : 'settings';
96
+ const cached = this.cache.get(cacheKey);
97
+ if (cached)
98
+ return cached;
99
+ const value = this.delegate.getSettings(tenant);
100
+ // 支持异步 Provider:如果是 Promise,不能同步返回
101
+ if (value instanceof Promise) {
102
+ // 异步模式下不缓存 Promise,直接返回让调用方 await
103
+ // 缓存将在 Promise 链中填充
104
+ return value.then(v => { this.cache.set(cacheKey, v); return v; });
105
+ }
106
+ this.cache.set(cacheKey, value);
107
+ return value;
108
+ }
109
+ updateSettings(updates, tenant) {
110
+ const cacheKey = tenant ? `settings:${tenant.tenantId || tenant.userId || ''}` : 'settings';
111
+ const value = this.delegate.updateSettings(updates, tenant);
112
+ if (value instanceof Promise) {
113
+ return value.then(v => { this.cache.set(cacheKey, v); return v; });
114
+ }
115
+ // 更新后立即刷新缓存
116
+ this.cache.set(cacheKey, value);
117
+ return value;
118
+ }
119
+ resetSettings(tenant) {
120
+ const cacheKey = tenant ? `settings:${tenant.tenantId || tenant.userId || ''}` : 'settings';
121
+ if (this.delegate.resetSettings) {
122
+ const value = this.delegate.resetSettings(tenant);
123
+ if (value instanceof Promise) {
124
+ return value.then(v => { this.cache.set(cacheKey, v); return v; });
125
+ }
126
+ this.cache.set(cacheKey, value);
127
+ return value;
128
+ }
129
+ this.cache.invalidate(cacheKey);
130
+ return this.getSettings(tenant);
131
+ }
132
+ /** 清除缓存 */
133
+ invalidate() {
134
+ this.cache.invalidate('settings');
135
+ }
136
+ }
137
+ // ============================================================
138
+ // CachedAgentProfileProvider — Profile 缓存包装器
139
+ // ============================================================
140
+ /**
141
+ * 包装 AgentProfileProvider,增加 TTL 缓存。
142
+ *
143
+ * 多进程部署时,每个进程独立缓存 Profile,TTL 到期后重新从底层 Provider 加载。
144
+ * 主动失效通过 `invalidate(profileId?)` 清除指定或全部 Profile 缓存。
145
+ */
146
+ export class CachedAgentProfileProvider {
147
+ cache;
148
+ listCache;
149
+ defaultCache;
150
+ delegate;
151
+ constructor(delegate, ttlMs = 60_000) {
152
+ this.delegate = delegate;
153
+ this.cache = new TTLCache(ttlMs);
154
+ this.listCache = new TTLCache(ttlMs);
155
+ this.defaultCache = new TTLCache(ttlMs);
156
+ }
157
+ tenantKey(tenant) {
158
+ return tenant ? String(tenant.tenantId || tenant.userId || '') : '';
159
+ }
160
+ listProfiles(tenant) {
161
+ const tk = this.tenantKey(tenant);
162
+ const listKey = tk ? `list:${tk}` : 'list';
163
+ const cached = this.listCache.get(listKey);
164
+ if (cached)
165
+ return cached;
166
+ const result = this.delegate.listProfiles(tenant);
167
+ if (result instanceof Promise) {
168
+ return result.then(value => {
169
+ this.listCache.set(listKey, value);
170
+ // 同时缓存每个 profile
171
+ for (const p of value)
172
+ this.cache.set(`${tk}:${p.id}`, p);
173
+ return value;
174
+ });
175
+ }
176
+ this.listCache.set(listKey, result);
177
+ for (const p of result)
178
+ this.cache.set(`${tk}:${p.id}`, p);
179
+ return result;
180
+ }
181
+ getProfile(id, tenant) {
182
+ const tk = this.tenantKey(tenant);
183
+ const cacheKey = `${tk}:${id}`;
184
+ const cached = this.cache.get(cacheKey);
185
+ if (cached)
186
+ return cached;
187
+ const result = this.delegate.getProfile(id, tenant);
188
+ if (result instanceof Promise) {
189
+ return result.then(value => {
190
+ if (value)
191
+ this.cache.set(cacheKey, value);
192
+ return value;
193
+ });
194
+ }
195
+ if (result)
196
+ this.cache.set(cacheKey, result);
197
+ return result;
198
+ }
199
+ getDefaultProfile(tenant) {
200
+ const tk = this.tenantKey(tenant);
201
+ const defaultKey = tk ? `default:${tk}` : 'default';
202
+ const cached = this.defaultCache.get(defaultKey);
203
+ if (cached !== null)
204
+ return cached;
205
+ const result = this.delegate.getDefaultProfile(tenant);
206
+ if (result instanceof Promise) {
207
+ return result.then(value => {
208
+ this.defaultCache.set(defaultKey, value);
209
+ return value;
210
+ });
211
+ }
212
+ this.defaultCache.set(defaultKey, result);
213
+ return result;
214
+ }
215
+ createProfile(data, tenant) {
216
+ const result = this.delegate.createProfile(data, tenant);
217
+ // 创建后清除列表缓存和默认缓存
218
+ const tk = this.tenantKey(tenant);
219
+ this.listCache.invalidate(tk ? `list:${tk}` : 'list');
220
+ this.defaultCache.invalidate(tk ? `default:${tk}` : 'default');
221
+ return result;
222
+ }
223
+ updateProfile(id, data, tenant) {
224
+ const tk = this.tenantKey(tenant);
225
+ const cacheKey = `${tk}:${id}`;
226
+ const result = this.delegate.updateProfile(id, data, tenant);
227
+ // 更新后清除该 profile 缓存 + 列表缓存
228
+ this.cache.invalidate(cacheKey);
229
+ this.listCache.invalidate(tk ? `list:${tk}` : 'list');
230
+ if (result instanceof Promise) {
231
+ return result.then(value => {
232
+ if (value)
233
+ this.cache.set(cacheKey, value);
234
+ return value;
235
+ });
236
+ }
237
+ if (result)
238
+ this.cache.set(cacheKey, result);
239
+ return result;
240
+ }
241
+ deleteProfile(id, tenant) {
242
+ const tk = this.tenantKey(tenant);
243
+ const result = this.delegate.deleteProfile(id, tenant);
244
+ this.cache.invalidate(`${tk}:${id}`);
245
+ this.listCache.invalidate(tk ? `list:${tk}` : 'list');
246
+ this.defaultCache.invalidate(tk ? `default:${tk}` : 'default');
247
+ return result;
248
+ }
249
+ /**
250
+ * 清除缓存。
251
+ * @param profileId 指定 profileId 时仅清除该 profile;不指定时清除全部
252
+ */
253
+ invalidate(profileId) {
254
+ if (profileId !== undefined) {
255
+ this.cache.invalidate(`profile:${profileId}`);
256
+ }
257
+ else {
258
+ this.cache.clear();
259
+ this.listCache.clear();
260
+ this.defaultCache.clear();
261
+ }
262
+ }
263
+ }
264
+ //# sourceMappingURL=cache.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache.service.js","sourceRoot":"","sources":["../../../src/service/cache.service.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,19 @@
1
1
  import { EnginePool } from '@cicctencent/agent-core';
2
2
  export { EnginePool } from '@cicctencent/agent-core';
3
- export declare function getEnginePool(): EnginePool;
4
- /** 重置全局池(测试用) */
3
+ /** EnginePool 初始化配置 */
4
+ export interface EnginePoolConfig {
5
+ /** TTL(ms),默认 5 分钟 */
6
+ ttl?: number;
7
+ /** 最大缓存数量,默认 10 */
8
+ maxSize?: number;
9
+ }
10
+ /**
11
+ * 获取全局 Engine 池单例。
12
+ *
13
+ * 首次调用时按 config 创建;后续调用忽略 config(已创建的池不会被覆盖)。
14
+ * 如需重新创建,请先调用 `resetEnginePool()`。
15
+ */
16
+ export declare function getEnginePool(config?: EnginePoolConfig): EnginePool;
17
+ /** 重置全局池(测试用 / 配置变更后重建) */
5
18
  export declare function resetEnginePool(): void;
6
19
  //# sourceMappingURL=engine-pool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"engine-pool.d.ts","sourceRoot":"","sources":["../../../src/service/engine-pool.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAKrD,wBAAgB,aAAa,IAAI,UAAU,CAK1C;AAED,iBAAiB;AACjB,wBAAgB,eAAe,IAAI,IAAI,CAEtC"}
1
+ {"version":3,"file":"engine-pool.d.ts","sourceRoot":"","sources":["../../../src/service/engine-pool.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,uBAAuB;AACvB,MAAM,WAAW,gBAAgB;IAC/B,sBAAsB;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mBAAmB;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAKD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,UAAU,CAOnE;AAED,2BAA2B;AAC3B,wBAAgB,eAAe,IAAI,IAAI,CAKtC"}
@@ -5,14 +5,25 @@ import { EnginePool } from '@cicctencent/agent-core';
5
5
  export { EnginePool } from '@cicctencent/agent-core';
6
6
  /** 全局 Engine 池单例 */
7
7
  let globalPool = null;
8
- export function getEnginePool() {
8
+ /**
9
+ * 获取全局 Engine 池单例。
10
+ *
11
+ * 首次调用时按 config 创建;后续调用忽略 config(已创建的池不会被覆盖)。
12
+ * 如需重新创建,请先调用 `resetEnginePool()`。
13
+ */
14
+ export function getEnginePool(config) {
9
15
  if (!globalPool) {
10
- globalPool = new EnginePool();
16
+ const ttl = config?.ttl ?? 5 * 60_000;
17
+ const maxSize = config?.maxSize ?? 10;
18
+ globalPool = new EnginePool(ttl, maxSize);
11
19
  }
12
20
  return globalPool;
13
21
  }
14
- /** 重置全局池(测试用) */
22
+ /** 重置全局池(测试用 / 配置变更后重建) */
15
23
  export function resetEnginePool() {
16
- globalPool = null;
24
+ if (globalPool) {
25
+ globalPool.clear();
26
+ globalPool = null;
27
+ }
17
28
  }
18
29
  //# sourceMappingURL=engine-pool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"engine-pool.js","sourceRoot":"","sources":["../../../src/service/engine-pool.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,gDAAgD;AAChD,+DAA+D;AAE/D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,oBAAoB;AACpB,IAAI,UAAU,GAAsB,IAAI,CAAC;AAEzC,MAAM,UAAU,aAAa;IAC3B,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC;IAChC,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,iBAAiB;AACjB,MAAM,UAAU,eAAe;IAC7B,UAAU,GAAG,IAAI,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"engine-pool.js","sourceRoot":"","sources":["../../../src/service/engine-pool.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,gDAAgD;AAChD,+DAA+D;AAE/D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAUrD,oBAAoB;AACpB,IAAI,UAAU,GAAsB,IAAI,CAAC;AAEzC;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,MAAyB;IACrD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,GAAG,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,MAAM,CAAC;QACtC,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC;QACtC,UAAU,GAAG,IAAI,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,2BAA2B;AAC3B,MAAM,UAAU,eAAe;IAC7B,IAAI,UAAU,EAAE,CAAC;QACf,UAAU,CAAC,KAAK,EAAE,CAAC;QACnB,UAAU,GAAG,IAAI,CAAC;IACpB,CAAC;AACH,CAAC"}
@@ -1,18 +1,22 @@
1
1
  import type { SettingsEntity, SettingsProvider } from '../types.js';
2
2
  /**
3
3
  * 默认 SettingsProvider 实现 — JSON 文件存储
4
+ *
5
+ * @param _dataDir - 数据目录(保留用于未来扩展,当前由 JsonStore 通过 getProjectDataPath 管理)
6
+ * @param defaultOverrides - 应用层覆盖默认设置(如 theme、language 等)
4
7
  */
5
8
  export declare class DefaultSettingsProvider implements SettingsProvider {
6
9
  private store;
7
- constructor(dataDir?: string);
10
+ private defaults;
11
+ constructor(_dataDir?: string, defaultOverrides?: Partial<SettingsEntity>);
8
12
  getSettings(): SettingsEntity;
9
13
  updateSettings(updates: Partial<SettingsEntity>): SettingsEntity;
10
14
  resetSettings(): SettingsEntity;
11
15
  private tryRecoverSettings;
12
16
  private migrateApiKeysToProviders;
13
17
  }
14
- export declare function getSettings(): SettingsEntity;
18
+ export declare function getSettings(dataDir?: string): SettingsEntity;
15
19
  export declare function updateSettings(updates: Partial<SettingsEntity>): SettingsEntity;
16
20
  export declare function resetSettings(): SettingsEntity;
17
- export declare function getSettingsProvider(dataDir?: string): DefaultSettingsProvider;
21
+ export declare function getSettingsProvider(dataDir?: string, defaultOverrides?: Partial<SettingsEntity>): DefaultSettingsProvider;
18
22
  //# sourceMappingURL=settings.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings.service.d.ts","sourceRoot":"","sources":["../../../src/service/settings.service.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAuB,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAYzF;;GAEG;AACH,qBAAa,uBAAwB,YAAW,gBAAgB;IAC9D,OAAO,CAAC,KAAK,CAA4B;gBAE7B,OAAO,CAAC,EAAE,MAAM;IAI5B,WAAW,IAAI,cAAc;IAwC7B,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc;IA6BhE,aAAa,IAAI,cAAc;IAO/B,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,yBAAyB;CAoClC;AAMD,wBAAgB,WAAW,IAAI,cAAc,CAG5C;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc,CAG/E;AAED,wBAAgB,aAAa,IAAI,cAAc,CAG9C;AAED,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,uBAAuB,CAG7E"}
1
+ {"version":3,"file":"settings.service.d.ts","sourceRoot":"","sources":["../../../src/service/settings.service.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAuB,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAYzF;;;;;GAKG;AACH,qBAAa,uBAAwB,YAAW,gBAAgB;IAC9D,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,QAAQ,CAAiB;gBAErB,QAAQ,CAAC,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IAKzE,WAAW,IAAI,cAAc;IAwC7B,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc;IA6BhE,aAAa,IAAI,cAAc;IAO/B,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,yBAAyB;CAoClC;AAMD,wBAAgB,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,cAAc,CAG5D;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc,CAG/E;AAED,wBAAgB,aAAa,IAAI,cAAc,CAG9C;AAED,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,uBAAuB,CAGzH"}