@aalis/plugin-persona 0.13.0 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +190 -264
- package/dist/index.js.map +1 -1
- package/dist/locales/en.d.ts +26 -0
- package/dist/locales/en.d.ts.map +1 -0
- package/dist/locales/en.js +26 -0
- package/dist/locales/en.js.map +1 -0
- package/dist/texts.d.ts +51 -0
- package/dist/texts.d.ts.map +1 -0
- package/dist/texts.js +29 -0
- package/dist/texts.js.map +1 -0
- package/package.json +21 -13
package/dist/index.d.ts
CHANGED
|
@@ -5,9 +5,15 @@ declare const _default: import("@aalis/core").PluginDefinition<{
|
|
|
5
5
|
logger: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Logger, import("@aalis/core").Logger>;
|
|
6
6
|
events: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Events, import("@aalis/core").Events>;
|
|
7
7
|
hooks: import("@aalis/core").ServiceDescriptor<import("@aalis/api-hooks").HookRegistry, import("@aalis/api-hooks").Hooks>;
|
|
8
|
+
/** 登记 /clear 的 persona 类型 */
|
|
9
|
+
contributions: import("@aalis/core").OptionalUse<import("@aalis/api-contributions").ContributionRegistry, import("@aalis/api-contributions").Contributions>;
|
|
8
10
|
platform: import("@aalis/core").OptionalUse<import("@aalis/api-platform").PlatformAdapter, import("@aalis/api-platform").PlatformAdapter>;
|
|
9
11
|
storage: import("@aalis/core").OptionalUse<StorageService, import("@aalis/api-storage").BoundStorage>;
|
|
10
|
-
sessionManager: import("@aalis/core").OptionalUse<import("@aalis/api-session-manager").SessionManagerService, import("@aalis/api-session-manager").
|
|
12
|
+
sessionManager: import("@aalis/core").OptionalUse<import("@aalis/api-session-manager").SessionManagerService, import("@aalis/api-session-manager").SessionManagerService>;
|
|
13
|
+
/** 按会话读本插件的四项;缺席时只取插件配置里的值 */
|
|
14
|
+
sessionFields: import("@aalis/core").OptionalUse<import("@aalis/api-session-settings").SessionSettingsService, import("@aalis/api-session-settings").SessionFields>;
|
|
15
|
+
/** 按会话字段的全局层:宿主配置文档里本实例的那一段 */
|
|
16
|
+
document: import("@aalis/core").OptionalUse<import("@aalis/api-host-config").HostConfig, import("@aalis/api-host-config").OwnHostConfig>;
|
|
11
17
|
}>;
|
|
12
18
|
export default _default;
|
|
13
19
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAqB,KAAK,cAAc,EAA6B,MAAM,oBAAoB,CAAC;;;;;;;IAsdrG,6BAA6B;;;;;IAK7B,8BAA8B;;IAE9B,+BAA+B;;;AAKjC,wBAQG"}
|
package/dist/index.js
CHANGED
|
@@ -1,45 +1,82 @@
|
|
|
1
1
|
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
2
|
+
import { contributions as contributionsCap } from '@aalis/api-contributions';
|
|
2
3
|
import { hooks as hooksCap } from '@aalis/api-hooks';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
4
|
+
import { ownHostConfig } from '@aalis/api-host-config';
|
|
5
|
+
import { persona } from '@aalis/api-persona';
|
|
6
|
+
import { getPlatformSelfIdentity, platform as platformService, sessionTypeLabel } from '@aalis/api-platform';
|
|
7
|
+
import { rootSessionOf, sessionManager as sessionManagerService } from '@aalis/api-session-manager';
|
|
8
|
+
import { sessionFields } from '@aalis/api-session-settings';
|
|
9
|
+
import { isStorageNotFound, storage as storageService } from '@aalis/api-storage';
|
|
7
10
|
import { config as configCap, definePlugin, events as eventsCap, logger as loggerCap, optional, provide as provideCap, } from '@aalis/core';
|
|
8
11
|
import { defineConfig, parseConfig } from '@aalis/schema-config';
|
|
12
|
+
import { textOf, toSource } from '@aalis/schema-i18n';
|
|
13
|
+
import { oneSpeaker } from '@aalis/schema-message';
|
|
9
14
|
import { extractJsonCandidate, tryParseJsonObject } from '@aalis/util-json-repair';
|
|
10
15
|
import { parse as parseYaml } from 'yaml';
|
|
16
|
+
import { t } from './texts.js';
|
|
11
17
|
// ===== 插件元数据 =====
|
|
12
|
-
/**
|
|
18
|
+
/** 主卡:「人设」的作者默认(人设目录里的 default.yaml,没有时用内置的默认角色) */
|
|
13
19
|
const DEFAULT_PERSONA = 'default';
|
|
14
20
|
const configSchema = defineConfig({
|
|
15
|
-
personasDir: {
|
|
16
|
-
type: 'string',
|
|
17
|
-
label: '人设目录',
|
|
18
|
-
description: "人设文件所在目录的 storage URI(默认 personas:/,即家目录的 self/personas;不含 ':/' 时首段视为存储根名,单段裸名归 data 根)",
|
|
19
|
-
default: 'personas:/',
|
|
20
|
-
onInvalid: 'error',
|
|
21
|
-
},
|
|
22
21
|
statePersistence: {
|
|
23
22
|
type: 'boolean',
|
|
24
|
-
label: '
|
|
25
|
-
description: '
|
|
23
|
+
label: t('statePersistenceLabel'),
|
|
24
|
+
description: t('statePersistenceDescription'),
|
|
26
25
|
default: false,
|
|
27
26
|
},
|
|
28
27
|
timeInjection: {
|
|
29
28
|
type: 'boolean',
|
|
30
|
-
label: '
|
|
31
|
-
description: '
|
|
29
|
+
label: t('timeInjectionLabel'),
|
|
30
|
+
description: t('timeInjectionDescription'),
|
|
32
31
|
default: true,
|
|
33
32
|
},
|
|
34
33
|
timeZone: {
|
|
35
34
|
type: 'string',
|
|
36
|
-
label: '
|
|
37
|
-
description: '
|
|
35
|
+
label: t('timeZoneLabel'),
|
|
36
|
+
description: t('timeZoneDescription'),
|
|
37
|
+
default: '',
|
|
38
|
+
},
|
|
39
|
+
// ----- 按会话字段:人设服务按调用方给的会话读 -----
|
|
40
|
+
persona: {
|
|
41
|
+
type: 'select',
|
|
42
|
+
label: t('personaLabel'),
|
|
43
|
+
description: t('personaDescription'),
|
|
44
|
+
// 可选项是人设服务的 listModels
|
|
45
|
+
dynamicOptions: 'persona',
|
|
46
|
+
allowCustom: true,
|
|
47
|
+
default: DEFAULT_PERSONA,
|
|
48
|
+
session: { prominence: 'common', order: 10, minLevel: 1 },
|
|
49
|
+
},
|
|
50
|
+
systemPromptExtra: {
|
|
51
|
+
type: 'textarea',
|
|
52
|
+
label: t('extraLabel'),
|
|
53
|
+
description: t('extraDescription'),
|
|
38
54
|
default: '',
|
|
55
|
+
session: { prominence: 'common', order: 40 },
|
|
56
|
+
},
|
|
57
|
+
disableOutputFormat: {
|
|
58
|
+
type: 'boolean',
|
|
59
|
+
label: t('plainLabel'),
|
|
60
|
+
description: t('plainDescription'),
|
|
61
|
+
default: false,
|
|
62
|
+
session: { prominence: 'advanced' },
|
|
63
|
+
},
|
|
64
|
+
clientSideJsonRendering: {
|
|
65
|
+
type: 'select',
|
|
66
|
+
label: t('renderLabel'),
|
|
67
|
+
description: t('renderDescription'),
|
|
68
|
+
options: [
|
|
69
|
+
{ value: 'card', label: t('renderCard') },
|
|
70
|
+
{ value: 'on', label: t('renderOn') },
|
|
71
|
+
{ value: 'off', label: t('renderOff') },
|
|
72
|
+
],
|
|
73
|
+
default: 'card',
|
|
74
|
+
session: { prominence: 'advanced' },
|
|
39
75
|
},
|
|
40
76
|
});
|
|
41
77
|
// ===== 实现 =====
|
|
42
78
|
class PersonaServiceImpl {
|
|
79
|
+
settingsOf;
|
|
43
80
|
card;
|
|
44
81
|
_outputFormat;
|
|
45
82
|
statePersistence;
|
|
@@ -53,7 +90,10 @@ class PersonaServiceImpl {
|
|
|
53
90
|
sessionStates = new Map();
|
|
54
91
|
/** 当前处理消息的会话身份(按异步上下文隔离,杜绝并发会话间串档)。 */
|
|
55
92
|
identityStore = new AsyncLocalStorage();
|
|
56
|
-
constructor(card, options
|
|
93
|
+
constructor(card, options,
|
|
94
|
+
/** 调用方给的会话的四项:插件按会话读,不给会话时按插件配置 */
|
|
95
|
+
settingsOf) {
|
|
96
|
+
this.settingsOf = settingsOf;
|
|
57
97
|
this.card = card;
|
|
58
98
|
this.statePersistence = options.statePersistence;
|
|
59
99
|
this.timeInjection = options.timeInjection;
|
|
@@ -108,12 +148,9 @@ class PersonaServiceImpl {
|
|
|
108
148
|
clearAllStates() {
|
|
109
149
|
this.sessionStates.clear();
|
|
110
150
|
}
|
|
111
|
-
/**
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
return this.loadCard(options.persona) ?? this.card;
|
|
115
|
-
}
|
|
116
|
-
return this.card;
|
|
151
|
+
/** 「人设」指的角色卡:主卡之外的卡找不到时回落主卡 */
|
|
152
|
+
cardFor(persona) {
|
|
153
|
+
return persona !== DEFAULT_PERSONA ? (this.loadCard(persona) ?? this.card) : this.card;
|
|
117
154
|
}
|
|
118
155
|
/** 按名称动态加载角色卡(仅查 cache,启动时预填) */
|
|
119
156
|
loadCard(name) {
|
|
@@ -136,7 +173,8 @@ class PersonaServiceImpl {
|
|
|
136
173
|
return this.identityStore.run(identity, fn);
|
|
137
174
|
}
|
|
138
175
|
getSystemPrompt(options) {
|
|
139
|
-
const
|
|
176
|
+
const settings = this.settingsOf(options);
|
|
177
|
+
const effectiveCard = this.cardFor(settings.persona);
|
|
140
178
|
let prompt = '';
|
|
141
179
|
if (effectiveCard.name) {
|
|
142
180
|
prompt += `你的名字是 ${effectiveCard.name}。`;
|
|
@@ -149,11 +187,11 @@ class PersonaServiceImpl {
|
|
|
149
187
|
}
|
|
150
188
|
prompt += effectiveCard.prompt;
|
|
151
189
|
// 会话级额外提示:接在人设之后、格式说明之前,格式说明仍是整段的收尾
|
|
152
|
-
const extra =
|
|
190
|
+
const extra = settings.systemPromptExtra.trim();
|
|
153
191
|
if (extra)
|
|
154
192
|
prompt += `\n\n${extra}`;
|
|
155
|
-
// 追加结构化输出指令 —
|
|
156
|
-
const effectiveFormat =
|
|
193
|
+
// 追加结构化输出指令 — 这个会话设了不用结构化输出时不加
|
|
194
|
+
const effectiveFormat = settings.disableOutputFormat ? undefined : this.getCardOutputFormat(effectiveCard);
|
|
157
195
|
if (effectiveFormat) {
|
|
158
196
|
// 角色卡若提供 outputFormatPrompt,则用其替换默认 header/footer;
|
|
159
197
|
// schema 块仍由插件根据 fields 自动生成,避免与字段定义脱节。
|
|
@@ -246,8 +284,9 @@ class PersonaServiceImpl {
|
|
|
246
284
|
const selfLabel = id.selfNickname ? `${id.selfNickname}${id.selfId ? `(${id.selfId})` : ''}` : id.selfId;
|
|
247
285
|
prompt += `你在当前平台的账号:${selfLabel}\n`;
|
|
248
286
|
}
|
|
249
|
-
if (id.sessionType
|
|
250
|
-
prompt +=
|
|
287
|
+
if (id.sessionType)
|
|
288
|
+
prompt += `会话类型:${id.sessionType}\n`;
|
|
289
|
+
if (id.multiParty) {
|
|
251
290
|
if (id.groupName)
|
|
252
291
|
prompt += `群名称:${id.groupName}\n`;
|
|
253
292
|
if (id.groupId)
|
|
@@ -261,12 +300,6 @@ class PersonaServiceImpl {
|
|
|
261
300
|
prompt += `你在该群的专属头衔:${id.selfTitle}\n`;
|
|
262
301
|
}
|
|
263
302
|
}
|
|
264
|
-
else if (id.sessionType === 'private') {
|
|
265
|
-
prompt += '会话类型:私聊\n';
|
|
266
|
-
}
|
|
267
|
-
else if (id.sessionType === 'channel') {
|
|
268
|
-
prompt += '会话类型:频道\n';
|
|
269
|
-
}
|
|
270
303
|
if (id.entryPlatform) {
|
|
271
304
|
prompt += `当前消息经 ${id.entryPlatform} 发来\n`;
|
|
272
305
|
}
|
|
@@ -283,13 +316,12 @@ class PersonaServiceImpl {
|
|
|
283
316
|
if (id.senderTitle) {
|
|
284
317
|
prompt += `当前消息发送者群头衔:${id.senderTitle}\n`;
|
|
285
318
|
}
|
|
286
|
-
if (id.
|
|
319
|
+
if (id.multiParty) {
|
|
287
320
|
// 防误认:群名片可被改成「群主」等字样,曾导致把普通成员当群主。
|
|
288
321
|
prompt +=
|
|
289
322
|
'身份判定:「群身份」由平台核验,可信;昵称与头衔只是可自定义的显示文本,可能出现「群主」「管理员」等与真实身份不符的字样,历史消息前缀里的名字同理。判断成员真实身份只认群身份字段,未标注时不要凭名字或头衔推断。\n';
|
|
290
323
|
}
|
|
291
|
-
prompt +=
|
|
292
|
-
'短期历史范围:上下文中的历史消息均来自当前会话,即上述群聊/私聊/频道;跨会话或跨群内容只会以长期记忆片段形式单独标注。\n';
|
|
324
|
+
prompt += '短期历史范围:上下文中的历史消息均来自当前会话;跨会话或跨群内容只会以长期记忆片段形式单独标注。\n';
|
|
293
325
|
}
|
|
294
326
|
// 状态持久化注入
|
|
295
327
|
if (this.statePersistence) {
|
|
@@ -309,96 +341,48 @@ class PersonaServiceImpl {
|
|
|
309
341
|
return prompt.replace(/^\n+/, '');
|
|
310
342
|
}
|
|
311
343
|
getPersonaName(options) {
|
|
312
|
-
|
|
313
|
-
return card.name || `${card === this.card ? DEFAULT_PERSONA : options?.persona},未设置名字`;
|
|
344
|
+
return this.cardFor(this.settingsOf(options).persona).name;
|
|
314
345
|
}
|
|
315
|
-
/**
|
|
346
|
+
/** 这个会话是否客户端渲染 JSON:「客户端渲染 JSON」为开或关时按它,按角色卡时看卡上的 */
|
|
316
347
|
isClientSideJsonRendering(options) {
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
return !!effectiveCard.clientSideJsonRendering;
|
|
348
|
+
const settings = this.settingsOf(options);
|
|
349
|
+
if (settings.clientSideJsonRendering !== 'card')
|
|
350
|
+
return settings.clientSideJsonRendering === 'on';
|
|
351
|
+
return !!this.cardFor(settings.persona).clientSideJsonRendering;
|
|
322
352
|
}
|
|
323
353
|
getOutputFormat(options) {
|
|
324
|
-
|
|
354
|
+
const settings = this.settingsOf(options);
|
|
355
|
+
if (settings.disableOutputFormat)
|
|
325
356
|
return undefined;
|
|
326
|
-
|
|
327
|
-
return this.getCardOutputFormat(effectiveCard);
|
|
357
|
+
return this.getCardOutputFormat(this.cardFor(settings.persona));
|
|
328
358
|
}
|
|
329
359
|
getNickNames(options) {
|
|
330
|
-
return this.
|
|
331
|
-
}
|
|
332
|
-
isTimeInjectionEnabled() {
|
|
333
|
-
return this.timeInjection;
|
|
334
|
-
}
|
|
335
|
-
getPersonaSkills(options) {
|
|
336
|
-
const effectiveCard = this.getEffectiveCard(options);
|
|
337
|
-
return effectiveCard.skills;
|
|
360
|
+
return this.cardFor(this.settingsOf(options).persona).nick_name ?? [];
|
|
338
361
|
}
|
|
339
362
|
async listModels() {
|
|
340
363
|
return [...this.cardCache.keys()];
|
|
341
364
|
}
|
|
342
365
|
}
|
|
343
366
|
// ===== 插件入口 =====
|
|
344
|
-
/**
|
|
345
|
-
* 本插件登记的会话设置项:人设、额外提示与结构化输出的两个开关。都由人设服务生效,各种会话都适用;
|
|
346
|
-
* 人设的可选项来自人设服务的 listModels
|
|
347
|
-
*/
|
|
348
|
-
const SESSION_SETTINGS = [
|
|
349
|
-
{
|
|
350
|
-
key: 'persona',
|
|
351
|
-
field: {
|
|
352
|
-
type: 'select',
|
|
353
|
-
label: '人设',
|
|
354
|
-
dynamicOptions: 'persona',
|
|
355
|
-
allowCustom: true,
|
|
356
|
-
default: DEFAULT_PERSONA,
|
|
357
|
-
description: '角色卡名(不含后缀);没设置时用 default 卡',
|
|
358
|
-
},
|
|
359
|
-
appliesTo: ['owner', 'room', 'task'],
|
|
360
|
-
prominence: 'common',
|
|
361
|
-
order: 10,
|
|
362
|
-
},
|
|
363
|
-
{
|
|
364
|
-
key: 'systemPromptExtra',
|
|
365
|
-
field: { type: 'textarea', label: '额外提示', description: '追加在人设提示之后、结构化输出格式说明之前' },
|
|
366
|
-
appliesTo: ['owner', 'room', 'task'],
|
|
367
|
-
prominence: 'common',
|
|
368
|
-
order: 40,
|
|
369
|
-
unset: '不追加',
|
|
370
|
-
},
|
|
371
|
-
{
|
|
372
|
-
key: 'disableOutputFormat',
|
|
373
|
-
field: { type: 'boolean', label: '不用结构化输出', description: '不用角色卡的结构化输出格式,回复纯文本' },
|
|
374
|
-
appliesTo: ['owner', 'room', 'task'],
|
|
375
|
-
prominence: 'advanced',
|
|
376
|
-
},
|
|
377
|
-
{
|
|
378
|
-
key: 'clientSideJsonRendering',
|
|
379
|
-
field: {
|
|
380
|
-
type: 'boolean',
|
|
381
|
-
label: '客户端渲染 JSON',
|
|
382
|
-
description: '结构化输出的 JSON 原样交给客户端渲染,不提取回复字段;没设置时按角色卡',
|
|
383
|
-
},
|
|
384
|
-
appliesTo: ['owner', 'room', 'task'],
|
|
385
|
-
prominence: 'advanced',
|
|
386
|
-
unset: '按角色卡',
|
|
387
|
-
},
|
|
388
|
-
];
|
|
389
367
|
const uses = {
|
|
390
368
|
provide: provideCap,
|
|
391
369
|
config: configCap,
|
|
392
370
|
logger: loggerCap,
|
|
393
371
|
events: eventsCap,
|
|
394
372
|
hooks: hooksCap,
|
|
373
|
+
/** 登记 /clear 的 persona 类型 */
|
|
374
|
+
contributions: optional(contributionsCap),
|
|
395
375
|
platform: optional(platformService),
|
|
396
376
|
storage: optional(storageService),
|
|
397
377
|
sessionManager: optional(sessionManagerService),
|
|
378
|
+
/** 按会话读本插件的四项;缺席时只取插件配置里的值 */
|
|
379
|
+
sessionFields: optional(sessionFields),
|
|
380
|
+
/** 按会话字段的全局层:宿主配置文档里本实例的那一段 */
|
|
381
|
+
document: optional(ownHostConfig),
|
|
398
382
|
};
|
|
399
383
|
export default definePlugin({
|
|
400
384
|
name: '@aalis/plugin-persona',
|
|
401
|
-
displayName: '
|
|
385
|
+
displayName: t('displayName'),
|
|
402
386
|
subsystem: 'persona',
|
|
403
387
|
configSchema,
|
|
404
388
|
provides: [persona],
|
|
@@ -408,10 +392,10 @@ export default definePlugin({
|
|
|
408
392
|
async function run(caps) {
|
|
409
393
|
const { provide, config, logger, events, hooks } = caps;
|
|
410
394
|
const cfg = parseConfig(configSchema, config.use, logger.use);
|
|
411
|
-
const personasDirRaw = cfg.personasDir || configSchema.personasDir.default;
|
|
412
395
|
const { statePersistence, timeInjection, timeZone } = cfg;
|
|
413
396
|
const storage = caps.storage.use;
|
|
414
|
-
|
|
397
|
+
/** 人设卡所在的目录:存储的内容目录 self:/persona/ */
|
|
398
|
+
const cardsDir = storage.content.uri();
|
|
415
399
|
/** 读到了但解析不出卡的标记——与"文件不存在"区分开,避免坏卡被当成没有卡 */
|
|
416
400
|
const INVALID = 'invalid';
|
|
417
401
|
async function tryLoadCardFromUri(uri) {
|
|
@@ -466,7 +450,6 @@ async function run(caps) {
|
|
|
466
450
|
: undefined,
|
|
467
451
|
nick_name: asNickNames(parsed.nick_name, uri),
|
|
468
452
|
clientSideJsonRendering: parsed.clientSideJsonRendering,
|
|
469
|
-
skills: parsed.skills,
|
|
470
453
|
};
|
|
471
454
|
}
|
|
472
455
|
function joinUri(base, sub) {
|
|
@@ -476,7 +459,7 @@ async function run(caps) {
|
|
|
476
459
|
async function findCard(name) {
|
|
477
460
|
let sawInvalid = false;
|
|
478
461
|
for (const ext of ['.yaml', '.yml']) {
|
|
479
|
-
const uri = joinUri(
|
|
462
|
+
const uri = joinUri(cardsDir, `${name}${ext}`);
|
|
480
463
|
const card = await tryLoadCardFromUri(uri);
|
|
481
464
|
if (card === INVALID) {
|
|
482
465
|
sawInvalid = true;
|
|
@@ -492,7 +475,7 @@ async function run(caps) {
|
|
|
492
475
|
const seenNames = new Set();
|
|
493
476
|
let result;
|
|
494
477
|
try {
|
|
495
|
-
result = await storage.list(
|
|
478
|
+
result = await storage.list(cardsDir);
|
|
496
479
|
}
|
|
497
480
|
catch (err) {
|
|
498
481
|
if (!isStorageNotFound(err))
|
|
@@ -535,13 +518,8 @@ async function run(caps) {
|
|
|
535
518
|
logger.use.info(`未找到角色卡 "${DEFAULT_PERSONA}",使用内置默认角色`);
|
|
536
519
|
}
|
|
537
520
|
}
|
|
538
|
-
const
|
|
539
|
-
|
|
540
|
-
timeInjection,
|
|
541
|
-
timeZone,
|
|
542
|
-
});
|
|
543
|
-
for (const setting of SESSION_SETTINGS)
|
|
544
|
-
caps.sessionManager.use.registerSetting(setting);
|
|
521
|
+
const fields = caps.sessionFields.use.fields(configSchema, caps);
|
|
522
|
+
const service = new PersonaServiceImpl(card, { statePersistence, timeInjection, timeZone }, options => fields.get(options?.sessionId, { platform: options?.platform }));
|
|
545
523
|
provide.use(persona, service);
|
|
546
524
|
/** 全量扫描 → cache(listModels / 动态切换用),剔除已消失的卡,并按 cache 刷新主卡 */
|
|
547
525
|
async function scanOnce(reason) {
|
|
@@ -591,11 +569,11 @@ async function run(caps) {
|
|
|
591
569
|
// 首启人设目录尚不存在时 watch 会 ENOENT:先补建。
|
|
592
570
|
// 与监听分开:只读根 / 符号链接目录上 mkdir 会抛,不能连带放弃对已存在目录的监听。
|
|
593
571
|
try {
|
|
594
|
-
await storage.stat(
|
|
572
|
+
await storage.stat(cardsDir);
|
|
595
573
|
}
|
|
596
574
|
catch {
|
|
597
575
|
try {
|
|
598
|
-
await storage.mkdir(
|
|
576
|
+
await storage.mkdir(cardsDir);
|
|
599
577
|
}
|
|
600
578
|
catch {
|
|
601
579
|
/* 建不了就照旧:下面的监听会给出失败原因 */
|
|
@@ -605,10 +583,10 @@ async function run(caps) {
|
|
|
605
583
|
return;
|
|
606
584
|
// 先挂监听再扫描:扫描期间的改动不会漏掉(由它触发的重扫排在本次扫描之后)
|
|
607
585
|
try {
|
|
608
|
-
offs.push(storage.watch(
|
|
586
|
+
offs.push(storage.watch(cardsDir, () => void refresh(`目录变化已重新加载(${cardsDir})`)));
|
|
609
587
|
}
|
|
610
588
|
catch (err) {
|
|
611
|
-
logger.use.warn(`persona 目录监听失败(${
|
|
589
|
+
logger.use.warn(`persona 目录监听失败(${cardsDir}):${err}`);
|
|
612
590
|
}
|
|
613
591
|
await refresh('扫描完成');
|
|
614
592
|
})();
|
|
@@ -621,7 +599,8 @@ async function run(caps) {
|
|
|
621
599
|
});
|
|
622
600
|
await first;
|
|
623
601
|
});
|
|
624
|
-
// 参与 memory:clear 清除当前会话的 persona
|
|
602
|
+
// 参与 memory:clear 清除当前会话的 persona 状态;登记 persona 类型,/clear -t 才选得中
|
|
603
|
+
caps.contributions.use.contribute('memory:clear-type', { id: 'persona', label: t('clearType') });
|
|
625
604
|
hooks.use.middleware('memory:clear', async (data, next) => {
|
|
626
605
|
// 类型过滤:仅在清除 context/persona/全部 时参与
|
|
627
606
|
if (data.types && !data.types.includes('context') && !data.types.includes('persona')) {
|
|
@@ -631,98 +610,74 @@ async function run(caps) {
|
|
|
631
610
|
try {
|
|
632
611
|
if (data.scope === 'all') {
|
|
633
612
|
service.clearAllStates();
|
|
634
|
-
data.results.push({ source: 'persona', type: 'persona', success: true, message: '
|
|
613
|
+
data.results.push({ source: 'persona', type: 'persona', success: true, message: t('clearedAll') });
|
|
635
614
|
}
|
|
636
615
|
else if (data.sessionId) {
|
|
637
616
|
service.clearSessionState(data.sessionId);
|
|
638
|
-
data.results.push({ source: 'persona', type: 'persona', success: true, message: '
|
|
617
|
+
data.results.push({ source: 'persona', type: 'persona', success: true, message: t('clearedSession') });
|
|
639
618
|
}
|
|
640
619
|
}
|
|
641
620
|
catch (err) {
|
|
642
|
-
|
|
643
|
-
|
|
621
|
+
data.results.push({
|
|
622
|
+
source: 'persona',
|
|
623
|
+
type: 'persona',
|
|
624
|
+
success: false,
|
|
625
|
+
message: t('clearFailed', { error: textOf(err) }),
|
|
626
|
+
});
|
|
644
627
|
}
|
|
645
628
|
await next();
|
|
646
629
|
});
|
|
647
|
-
//
|
|
630
|
+
// 跟踪当前会话信息(始终启用):一轮开始时把身份装进 AsyncLocalStorage 的异步上下文,
|
|
648
631
|
// 穿透 await 不串、并发会话各自隔离——杜绝跨会话身份泄漏进他人 LLM 提示。
|
|
649
|
-
//
|
|
650
|
-
//
|
|
651
|
-
//
|
|
652
|
-
|
|
653
|
-
|
|
632
|
+
// 会话事实(平台、自身账号、会话类型与群号)按根会话记下的来源字段取(房间里的子任务也在房间的平台、账号与聊天窗口上);
|
|
633
|
+
// 从 WebUI 往群里插话时回复发进群里。没有出生平台的会话按开轮那条输入的平台;没有聊天窗口的(WebUI、终端,或没装会话管理)
|
|
634
|
+
// 不写会话类型与群信息,不看消息上的类型名。说话人事实(发送者 ID、昵称、群身份与头衔)取自开轮的输入,只在它们的说话人
|
|
635
|
+
// 相同时写:几个人的话一起开的一轮没有单一的当前发送者。
|
|
636
|
+
hooks.use.middleware('agent:turn:before', async (data, next) => {
|
|
637
|
+
const [{ message }] = data.inputs;
|
|
654
638
|
const sm = caps.sessionManager.present ? caps.sessionManager.use : undefined;
|
|
655
639
|
const session = sm?.getSession(message.sessionId);
|
|
656
|
-
const
|
|
657
|
-
const
|
|
640
|
+
const root = sm && rootSessionOf(session, id => sm.getSession(id));
|
|
641
|
+
const origin = root?.originPlatform;
|
|
642
|
+
const chat = root?.originChat;
|
|
658
643
|
const sessionPlatform = origin ?? message.platform;
|
|
659
|
-
const selfIdentity = getPlatformSelfIdentity(caps.platform, sessionPlatform, message.sessionId);
|
|
644
|
+
const selfIdentity = getPlatformSelfIdentity(caps.platform, sessionPlatform, root?.id ?? message.sessionId);
|
|
660
645
|
const identity = {
|
|
661
646
|
sessionId: message.sessionId,
|
|
662
647
|
platform: sessionPlatform,
|
|
663
648
|
entryPlatform: origin !== undefined && origin !== message.platform ? message.platform : undefined,
|
|
664
|
-
//
|
|
665
|
-
sessionType:
|
|
666
|
-
|
|
649
|
+
// 只用于提示词,不回写消息
|
|
650
|
+
sessionType: chat && toSource(sessionTypeLabel(caps.platform, sessionPlatform, chat.type) ?? chat.type),
|
|
651
|
+
multiParty: chat?.multiParty,
|
|
652
|
+
groupId: chat?.multiParty ? chat.targetId : undefined,
|
|
667
653
|
selfId: selfIdentity?.selfId,
|
|
668
654
|
selfNickname: selfIdentity?.nickname,
|
|
669
|
-
userId: message.userId,
|
|
670
|
-
nickname: message.nickname,
|
|
671
655
|
groupName: message.groupName,
|
|
672
656
|
selfRole: message.selfRole,
|
|
673
657
|
selfTitle: message.selfTitle,
|
|
674
|
-
|
|
675
|
-
|
|
658
|
+
...(oneSpeaker(data.inputs.map(input => input.message))
|
|
659
|
+
? {
|
|
660
|
+
userId: message.userId,
|
|
661
|
+
nickname: message.nickname,
|
|
662
|
+
senderRole: message.senderRole,
|
|
663
|
+
senderTitle: message.senderTitle,
|
|
664
|
+
}
|
|
665
|
+
: {}),
|
|
676
666
|
};
|
|
677
667
|
await service.runWithIdentity(identity, () => next());
|
|
678
668
|
});
|
|
679
|
-
// agent:reply:before
|
|
680
|
-
// 1. 有 outputFormat 时:结构化解析 + 状态持久化
|
|
681
|
-
// 2. 无 outputFormat 时:回退提取(模型意外用 JSON 包裹回复时自动解包)
|
|
669
|
+
// agent:reply:before 钩子:会话的卡有 outputFormat 时做结构化解析、校验重试与状态持久化
|
|
682
670
|
const baseFormat = service.getOutputFormat();
|
|
683
671
|
if (baseFormat) {
|
|
684
672
|
logger.use.info(`角色卡启用结构化输出 (回复字段: ${baseFormat.replyField})`);
|
|
685
673
|
}
|
|
686
674
|
hooks.use.middleware('agent:reply:before', async (data, next) => {
|
|
687
675
|
await next();
|
|
688
|
-
//
|
|
689
|
-
|
|
690
|
-
try {
|
|
691
|
-
const sm = caps.sessionManager.present ? caps.sessionManager.use : undefined;
|
|
692
|
-
if (sm && data.sessionId) {
|
|
693
|
-
const resolved = sm.resolveConfig(data.sessionId, data.platform);
|
|
694
|
-
personaOpts = {
|
|
695
|
-
persona: resolved.persona,
|
|
696
|
-
disableOutputFormat: resolved.disableOutputFormat,
|
|
697
|
-
clientSideJsonRendering: resolved.clientSideJsonRendering,
|
|
698
|
-
};
|
|
699
|
-
}
|
|
700
|
-
}
|
|
701
|
-
catch {
|
|
702
|
-
/* session-manager 不可用,使用全局默认 */
|
|
703
|
-
}
|
|
676
|
+
// 按这一轮的会话取卡与两个结构化输出开关
|
|
677
|
+
const personaOpts = { sessionId: data.sessionId, platform: data.platform };
|
|
704
678
|
const outputFormat = service.getOutputFormat(personaOpts);
|
|
705
|
-
|
|
706
|
-
// 当角色卡未定义 outputFormat 时,模型偶尔仍会用 JSON 包裹回复
|
|
707
|
-
// 此处自动解包,提取回复字段
|
|
708
|
-
if (!outputFormat) {
|
|
709
|
-
const trimmed = data.content.trim();
|
|
710
|
-
if (!trimmed.startsWith('{'))
|
|
711
|
-
return;
|
|
712
|
-
const { parsed: obj } = tryParseJsonObject(trimmed);
|
|
713
|
-
if (!obj)
|
|
714
|
-
return;
|
|
715
|
-
const replyKeys = ['response', 'reply', 'content', 'answer', 'text', 'msg', 'message'];
|
|
716
|
-
for (const key of replyKeys) {
|
|
717
|
-
if (typeof obj[key] === 'string') {
|
|
718
|
-
data.content = obj[key];
|
|
719
|
-
logger.use.debug(`JSON 回退提取: 使用字段 "${key}"`);
|
|
720
|
-
return;
|
|
721
|
-
}
|
|
722
|
-
}
|
|
679
|
+
if (!outputFormat)
|
|
723
680
|
return;
|
|
724
|
-
}
|
|
725
|
-
// ===== 有 outputFormat:结构化解析 =====
|
|
726
681
|
const clientRendered = service.isClientSideJsonRendering(personaOpts);
|
|
727
682
|
const persistStateFromParsed = (parsedObj, fmt) => {
|
|
728
683
|
const state = {};
|
|
@@ -760,96 +715,69 @@ async function run(caps) {
|
|
|
760
715
|
try {
|
|
761
716
|
if (!parsed)
|
|
762
717
|
throw new Error('JSON 解析失败');
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
if (typeof reply !== 'string') {
|
|
766
|
-
const aliases = ['response', 'reply', 'content', 'answer', 'text', 'msg'];
|
|
767
|
-
for (const alias of aliases) {
|
|
768
|
-
if (alias !== outputFormat.replyField && typeof parsed[alias] === 'string') {
|
|
769
|
-
reply = parsed[alias];
|
|
770
|
-
logger.use.debug(`outputFormat 回退:模型使用了 "${alias}" 而非 "${outputFormat.replyField}",已自动纠正`);
|
|
771
|
-
break;
|
|
772
|
-
}
|
|
773
|
-
}
|
|
774
|
-
}
|
|
775
|
-
// 仍未找到:若 JSON 中只有一个字符串字段,使用它
|
|
718
|
+
// 只认声明的回复字段。主动不回话的合法写法是回复字段为空字符串(如 {"message":"","state":"..."})
|
|
719
|
+
const reply = parsed[outputFormat.replyField];
|
|
776
720
|
if (typeof reply !== 'string') {
|
|
777
|
-
|
|
778
|
-
if (stringEntries.length === 1) {
|
|
779
|
-
reply = stringEntries[0][1];
|
|
780
|
-
logger.use.debug(`outputFormat 回退:仅一个字符串字段 "${stringEntries[0][0]}",作为回复使用`);
|
|
781
|
-
}
|
|
721
|
+
throw new Error(`JSON 合法但找不到回复字段 "${outputFormat.replyField}"(实际字段: ${Object.keys(parsed).join(',')})`);
|
|
782
722
|
}
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
723
|
+
// 严格字段校验:声明的所有字段都必须出现且类型正确,缺一不可 → 否则 retry。
|
|
724
|
+
// 这样可以避免模型养成省略 state/mood 等状态字段的坏习惯,让上下文信号始终完整。
|
|
725
|
+
const missing = [];
|
|
726
|
+
const typeMismatch = [];
|
|
727
|
+
for (const [key, def] of Object.entries(outputFormat.fields)) {
|
|
728
|
+
const val = parsed[key];
|
|
729
|
+
if (val === undefined || val === null) {
|
|
730
|
+
missing.push(key);
|
|
731
|
+
continue;
|
|
786
732
|
}
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
const val = parsed[key];
|
|
793
|
-
if (val === undefined || val === null) {
|
|
794
|
-
missing.push(key);
|
|
795
|
-
continue;
|
|
796
|
-
}
|
|
797
|
-
const expectedType = def.type ?? 'string';
|
|
798
|
-
const actualType = typeof val;
|
|
799
|
-
if (expectedType === 'number') {
|
|
800
|
-
if (actualType !== 'number' && !(actualType === 'string' && !Number.isNaN(Number(val)))) {
|
|
801
|
-
typeMismatch.push(`${key}(期望 number, 实际 ${actualType})`);
|
|
802
|
-
}
|
|
733
|
+
const expectedType = def.type ?? 'string';
|
|
734
|
+
const actualType = typeof val;
|
|
735
|
+
if (expectedType === 'number') {
|
|
736
|
+
if (actualType !== 'number' && !(actualType === 'string' && !Number.isNaN(Number(val)))) {
|
|
737
|
+
typeMismatch.push(`${key}(期望 number, 实际 ${actualType})`);
|
|
803
738
|
}
|
|
804
|
-
else if (expectedType === 'boolean') {
|
|
805
|
-
if (actualType !== 'boolean' && !(actualType === 'string' && (val === 'true' || val === 'false'))) {
|
|
806
|
-
typeMismatch.push(`${key}(期望 boolean, 实际 ${actualType})`);
|
|
807
|
-
}
|
|
808
|
-
}
|
|
809
|
-
else if (actualType !== 'string') {
|
|
810
|
-
typeMismatch.push(`${key}(期望 string, 实际 ${actualType})`);
|
|
811
|
-
}
|
|
812
|
-
}
|
|
813
|
-
if (missing.length > 0 || typeMismatch.length > 0) {
|
|
814
|
-
const parts = [];
|
|
815
|
-
if (missing.length > 0)
|
|
816
|
-
parts.push(`缺失字段: ${missing.join(',')}`);
|
|
817
|
-
if (typeMismatch.length > 0)
|
|
818
|
-
parts.push(`类型错误: ${typeMismatch.join(',')}`);
|
|
819
|
-
throw new Error(parts.join('; '));
|
|
820
739
|
}
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
if (!clientRendered) {
|
|
826
|
-
data.content = reply;
|
|
827
|
-
}
|
|
828
|
-
// 输出所有字段概要
|
|
829
|
-
const fieldSummary = Object.entries(parsed)
|
|
830
|
-
.filter(([k]) => k !== outputFormat.replyField)
|
|
831
|
-
.map(([k, v]) => {
|
|
832
|
-
const s = typeof v === 'string' ? v : JSON.stringify(v);
|
|
833
|
-
return `${k}=${s.length > 60 ? `${s.slice(0, 60)}...` : s}`;
|
|
834
|
-
})
|
|
835
|
-
.join(', ');
|
|
836
|
-
if (reply.length > 0) {
|
|
837
|
-
logger.use.debug(`outputFormat 解码成功 [${fieldSummary}] → ${outputFormat.replyField}: ${reply.slice(0, 100)}`);
|
|
838
|
-
}
|
|
839
|
-
else {
|
|
840
|
-
logger.use.debug(`outputFormat 解码成功 [${fieldSummary}] → ${outputFormat.replyField}: (空,静默)`);
|
|
740
|
+
else if (expectedType === 'boolean') {
|
|
741
|
+
if (actualType !== 'boolean' && !(actualType === 'string' && (val === 'true' || val === 'false'))) {
|
|
742
|
+
typeMismatch.push(`${key}(期望 boolean, 实际 ${actualType})`);
|
|
743
|
+
}
|
|
841
744
|
}
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
persistStateFromParsed(parsed, outputFormat);
|
|
745
|
+
else if (actualType !== 'string') {
|
|
746
|
+
typeMismatch.push(`${key}(期望 string, 实际 ${actualType})`);
|
|
845
747
|
}
|
|
846
748
|
}
|
|
749
|
+
if (missing.length > 0 || typeMismatch.length > 0) {
|
|
750
|
+
const parts = [];
|
|
751
|
+
if (missing.length > 0)
|
|
752
|
+
parts.push(`缺失字段: ${missing.join(',')}`);
|
|
753
|
+
if (typeMismatch.length > 0)
|
|
754
|
+
parts.push(`类型错误: ${typeMismatch.join(',')}`);
|
|
755
|
+
throw new Error(parts.join('; '));
|
|
756
|
+
}
|
|
757
|
+
data.archiveContent = JSON.stringify(parsed);
|
|
758
|
+
// 可见正文单独交给 agent 落库:客户端渲染模式下 content 仍是整串 JSON
|
|
759
|
+
data.visibleContent = reply;
|
|
760
|
+
// 客户端渲染模式:保留完整 JSON 给前端,不提取回复字段
|
|
761
|
+
if (!clientRendered) {
|
|
762
|
+
data.content = reply;
|
|
763
|
+
}
|
|
764
|
+
// 输出所有字段概要
|
|
765
|
+
const fieldSummary = Object.entries(parsed)
|
|
766
|
+
.filter(([k]) => k !== outputFormat.replyField)
|
|
767
|
+
.map(([k, v]) => {
|
|
768
|
+
const s = typeof v === 'string' ? v : JSON.stringify(v);
|
|
769
|
+
return `${k}=${s.length > 60 ? `${s.slice(0, 60)}...` : s}`;
|
|
770
|
+
})
|
|
771
|
+
.join(', ');
|
|
772
|
+
if (reply.length > 0) {
|
|
773
|
+
logger.use.debug(`outputFormat 解码成功 [${fieldSummary}] → ${outputFormat.replyField}: ${reply.slice(0, 100)}`);
|
|
774
|
+
}
|
|
847
775
|
else {
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
776
|
+
logger.use.debug(`outputFormat 解码成功 [${fieldSummary}] → ${outputFormat.replyField}: (空,静默)`);
|
|
777
|
+
}
|
|
778
|
+
// 状态持久化:保存非回复字段(按 field type 强制类型)
|
|
779
|
+
if (statePersistence) {
|
|
780
|
+
persistStateFromParsed(parsed, outputFormat);
|
|
853
781
|
}
|
|
854
782
|
}
|
|
855
783
|
catch (err) {
|
|
@@ -876,12 +804,10 @@ async function run(caps) {
|
|
|
876
804
|
}
|
|
877
805
|
else {
|
|
878
806
|
// 重试用尽:静默丢弃(避免原始 JSON 被当成回复发出)
|
|
879
|
-
// 同时通过 archiveContent 写入一条"系统提醒",让下一轮 LLM 看到自己上次因格式不符被丢弃
|
|
880
807
|
logger.use.warn(`outputFormat 解码连续 ${attempt + 1} 次失败(已用尽 ${maxRetries} 次重试),静默丢弃回复:${message}; json=${preview}`);
|
|
881
808
|
data.retryRequested = false;
|
|
882
809
|
data.retryFeedback = undefined;
|
|
883
810
|
data.content = '';
|
|
884
|
-
data.archiveContent = `(系统提示:上一条回复因不符合 outputFormat 规定被丢弃,原因:${message}。下次回复请严格按照 system prompt 中规定的 JSON 格式输出,所有声明的字段都必须出现。)`;
|
|
885
811
|
}
|
|
886
812
|
}
|
|
887
813
|
});
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,KAAK,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAKL,OAAO,GACR,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,uBAAuB,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3F,OAAO,EACL,aAAa,EAEb,cAAc,IAAI,qBAAqB,GACxC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAuB,OAAO,IAAI,cAAc,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACrH,OAAO,EAEL,MAAM,IAAI,SAAS,EACnB,YAAY,EACZ,MAAM,IAAI,SAAS,EACnB,MAAM,IAAI,SAAS,EACnB,QAAQ,EACR,OAAO,IAAI,UAAU,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACnF,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAwB1C,oBAAoB;AAEpB,2DAA2D;AAC3D,MAAM,eAAe,GAAG,SAAS,CAAC;AAElC,MAAM,YAAY,GAAG,YAAY,CAAC;IAChC,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,MAAM;QACb,WAAW,EACT,yFAAyF;QAC3F,OAAO,EAAE,YAAY;QACrB,SAAS,EAAE,OAAO;KACnB;IACD,gBAAgB,EAAE;QAChB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,OAAO;QACd,WAAW,EAAE,uDAAuD;QACpE,OAAO,EAAE,KAAK;KACf;IACD,aAAa,EAAE;QACb,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,MAAM;QACb,WAAW,EAAE,qBAAqB;QAClC,OAAO,EAAE,IAAI;KACd;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,WAAW;QAClB,WAAW,EAAE,6DAA6D;QAC1E,OAAO,EAAE,EAAE;KACZ;CACF,CAAC,CAAC;AAwBH,iBAAiB;AAEjB,MAAM,kBAAkB;IACd,IAAI,CAAc;IAClB,aAAa,CAAgB;IAC7B,gBAAgB,CAAU;IAC1B,aAAa,CAAU;IACvB,QAAQ,CAAS;IACzB,qDAAqD;IAC7C,SAAS,GAAG,IAAI,GAAG,EAAuB,CAAC;IACnD,yDAAyD;IACjD,WAAW,GAAG,IAAI,OAAO,EAAoC,CAAC;IAEtE,wBAAwB;IAChB,aAAa,GAAG,IAAI,GAAG,EAAmC,CAAC;IACnE,uCAAuC;IAC/B,aAAa,GAAG,IAAI,iBAAiB,EAAmB,CAAC;IAEjE,YAAY,IAAiB,EAAE,OAAgF;QAC7G,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAEjC,oBAAoB;QACpB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,IAAI,CAAC,aAAa,GAAG,kBAAkB,CAAC,oBAAoB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC5G,CAAC;IACH,CAAC;IAED,uCAAuC;IACvC,iBAAiB,CAAC,IAAY,EAAE,IAAiB;QAC/C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,oBAAoB,CAAC,IAAY;QAC/B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,wBAAwB;IACxB,0BAA0B;QACxB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACtD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;YACtB,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC,YAAY;gBACzC,CAAC,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,SAAS,CAAC,YAAY,EAAE,SAAS,CAAC,mBAAmB,CAAC;gBAChG,CAAC,CAAC,SAAS,CAAC;QAChB,CAAC;IACH,CAAC;IAED,6CAA6C;IACrC,MAAM,CAAC,oBAAoB,CACjC,GAA4E,EAC5E,OAAgB;QAEhB,MAAM,MAAM,GAAsC,EAAE,CAAC;QACrD,IAAI,UAA8B,CAAC;QACnC,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAG/E,CAAC;YACd,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;YACvE,IAAI,GAAG,CAAC,KAAK;gBAAE,UAAU,GAAG,GAAG,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QAClC,8BAA8B;QAC9B,MAAM,iBAAiB,GAAG,OAAO,IAAI,CAAC,CAAC;QACvC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC5D,CAAC;IAED,aAAa;IACb,gBAAgB,CAAC,SAAiB,EAAE,KAA8B;QAChE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,gBAAgB;IAChB,iBAAiB,CAAC,SAAiB;QACjC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED,eAAe;IACf,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED,qDAAqD;IAC7C,gBAAgB,CAAC,OAA+B;QACtD,IAAI,OAAO,EAAE,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,eAAe,EAAE,CAAC;YAC5D,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC;QACrD,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,iCAAiC;IACzB,QAAQ,CAAC,IAAY;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,iCAAiC;IACzB,mBAAmB,CAAC,IAAiB;QAC3C,IAAI,IAAI,KAAK,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC,aAAa,CAAC;QAClD,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC;QAC/E,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY;YAC3B,CAAC,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,mBAAmB,CAAC;YACtF,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC;QACxC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,sDAAsD;IACtD,eAAe,CAAI,QAAyB,EAAE,EAAW;QACvD,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,eAAe,CAAC,OAA+B;QAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,IAAI,SAAS,aAAa,CAAC,IAAI,GAAG,CAAC;QAC3C,CAAC;QACD,IAAI,aAAa,CAAC,WAAW,EAAE,CAAC;YAC9B,MAAM,IAAI,GAAG,aAAa,CAAC,WAAW,MAAM,CAAC;QAC/C,CAAC;QACD,IAAI,aAAa,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,SAAS,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;QAC1D,CAAC;QACD,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC;QAE/B,oCAAoC;QACpC,MAAM,KAAK,GAAG,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;QACjD,IAAI,KAAK;YAAE,MAAM,IAAI,OAAO,KAAK,EAAE,CAAC;QAEpC,2CAA2C;QAC3C,MAAM,eAAe,GAAG,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;QAC3G,IAAI,eAAe,EAAE,CAAC;YACpB,mDAAmD;YACnD,wCAAwC;YACxC,MAAM,YAAY,GAAG,aAAa,CAAC,kBAAkB,EAAE,IAAI,EAAE,CAAC;YAC9D,MAAM,IAAI,MAAM,CAAC;YACjB,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,IAAI,GAAG,YAAY,IAAI,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,kBAAkB,CAAC;gBAC7B,MAAM;oBACJ,2EAA2E,CAAC;YAChF,CAAC;YACD,MAAM,IAAI,KAAK,CAAC;YAChB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YACvD,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE;gBAClC,MAAM,KAAK,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChD,IAAI,WAAmB,CAAC;gBACxB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;oBAAE,WAAW,GAAG,GAAG,CAAC;qBAC1C,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;oBAAE,WAAW,GAAG,MAAM,CAAC;;oBACnD,WAAW,GAAG,OAAO,CAAC;gBAC3B,MAAM,IAAI,MAAM,GAAG,MAAM,WAAW,GAAG,KAAK,IAAI,CAAC;YACnD,CAAC,CAAC,CAAC;YACH,MAAM,IAAI,KAAK,CAAC;YAChB,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,4BAA4B;gBAC5B,MAAM,IAAI,WAAW,CAAC;gBACtB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;oBAC/B,MAAM,IAAI,KAAK,GAAG,IAAI,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC;gBAC3F,CAAC,CAAC,CAAC;gBACH,MAAM,IAAI,4BAA4B,CAAC;gBACvC,MAAM,IAAI,wCAAwC,CAAC;YACrD,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACH,iBAAiB,CAAC,OAA+B;QAC/C,KAAK,OAAO,CAAC;QACb,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;QAEzC,OAAO;QACP,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,mBAAmB;YACnB,IAAI,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC;YACnF,qBAAqB;YACrB,IAAI,CAAC;gBACH,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;YACrD,CAAC;YAAC,MAAM,CAAC;gBACP,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC;YACxD,CAAC;YACD,qCAAqC;YACrC,MAAM,WAAW,GACf,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC;iBAC5E,aAAa,CAAC,GAAG,CAAC;iBAClB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;YACvD,MAAM,OAAO,GAAG,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE;gBAC1C,QAAQ,EAAE,EAAE;gBACZ,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,SAAS;gBAChB,GAAG,EAAE,SAAS;gBACd,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,OAAO;gBAChB,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;YACH,MAAM;gBACJ,+DAA+D,CAAC;YAClE,MAAM,IAAI,QAAQ,OAAO,IAAI,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;QAChF,CAAC;QAED,+CAA+C;QAC/C,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC;YAClB,MAAM,IAAI,gBAAgB,CAAC;YAC3B,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;gBAChB,MAAM,IAAI,QAAQ,EAAE,CAAC,QAAQ,IAAI,CAAC;YACpC,CAAC;YACD,IAAI,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,YAAY,EAAE,CAAC;gBACjC,MAAM,SAAS,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,YAAY,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC;gBACzG,MAAM,IAAI,aAAa,SAAS,IAAI,CAAC;YACvC,CAAC;YACD,IAAI,EAAE,CAAC,WAAW,KAAK,OAAO,EAAE,CAAC;gBAC/B,MAAM,IAAI,WAAW,CAAC;gBACtB,IAAI,EAAE,CAAC,SAAS;oBAAE,MAAM,IAAI,OAAO,EAAE,CAAC,SAAS,IAAI,CAAC;gBACpD,IAAI,EAAE,CAAC,OAAO;oBAAE,MAAM,IAAI,MAAM,EAAE,CAAC,OAAO,IAAI,CAAC;gBAC/C,8BAA8B;gBAC9B,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;oBAChB,MAAM,SAAS,GAAG,EAAE,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;oBAC5F,MAAM,IAAI,WAAW,SAAS,IAAI,CAAC;gBACrC,CAAC;gBACD,IAAI,EAAE,CAAC,SAAS,EAAE,CAAC;oBACjB,MAAM,IAAI,aAAa,EAAE,CAAC,SAAS,IAAI,CAAC;gBAC1C,CAAC;YACH,CAAC;iBAAM,IAAI,EAAE,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBACxC,MAAM,IAAI,WAAW,CAAC;YACxB,CAAC;iBAAM,IAAI,EAAE,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBACxC,MAAM,IAAI,WAAW,CAAC;YACxB,CAAC;YACD,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC;gBACrB,MAAM,IAAI,SAAS,EAAE,CAAC,aAAa,OAAO,CAAC;YAC7C,CAAC;YACD,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;gBACd,MAAM,IAAI,cAAc,EAAE,CAAC,MAAM,IAAI,CAAC;YACxC,CAAC;YACD,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;gBAChB,MAAM,IAAI,aAAa,EAAE,CAAC,QAAQ,IAAI,CAAC;YACzC,CAAC;YACD,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;gBAClB,MAAM,eAAe,GAAG,EAAE,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;gBACtG,MAAM,IAAI,cAAc,eAAe,IAAI,CAAC;YAC9C,CAAC;YACD,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBACnB,MAAM,IAAI,cAAc,EAAE,CAAC,WAAW,IAAI,CAAC;YAC7C,CAAC;YACD,IAAI,EAAE,CAAC,WAAW,KAAK,OAAO,EAAE,CAAC;gBAC/B,kCAAkC;gBAClC,MAAM;oBACJ,6GAA6G,CAAC;YAClH,CAAC;YACD,MAAM;gBACJ,gEAAgE,CAAC;QACrE,CAAC;QAED,UAAU;QACV,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC/E,IAAI,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAI,iBAAiB,CAAC;gBAC5B,0CAA0C;gBAC1C,uCAAuC;gBACvC,uCAAuC;gBACvC,MAAM,IAAI,2CAA2C,CAAC;gBACtD,MAAM,IAAI,4CAA4C,CAAC;gBACvD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC3C,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC3B,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,cAAc,CAAC,OAA+B;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,IAAI,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,QAAQ,CAAC;IACzF,CAAC;IAED,0BAA0B;IAC1B,yBAAyB,CAAC,OAA+B;QACvD,IAAI,OAAO,EAAE,uBAAuB,KAAK,SAAS,EAAE,CAAC;YACnD,OAAO,OAAO,CAAC,uBAAuB,CAAC;QACzC,CAAC;QACD,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,CAAC,aAAa,CAAC,uBAAuB,CAAC;IACjD,CAAC;IAED,eAAe,CAAC,OAA+B;QAC7C,IAAI,OAAO,EAAE,mBAAmB;YAAE,OAAO,SAAS,CAAC;QACnD,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACjD,CAAC;IAED,YAAY,CAAC,OAA+B;QAC1C,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC;IACxD,CAAC;IAED,sBAAsB;QACpB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,gBAAgB,CAAC,OAA+B;QAC9C,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,aAAa,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,UAAU;QACd,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IACpC,CAAC;CACF;AAED,mBAAmB;AAEnB;;;GAGG;AACH,MAAM,gBAAgB,GAAqB;IACzC;QACE,GAAG,EAAE,SAAS;QACd,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,IAAI;YACX,cAAc,EAAE,SAAS;YACzB,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,eAAe;YACxB,WAAW,EAAE,4BAA4B;SAC1C;QACD,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;QACpC,UAAU,EAAE,QAAQ;QACpB,KAAK,EAAE,EAAE;KACV;IACD;QACE,GAAG,EAAE,mBAAmB;QACxB,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,uBAAuB,EAAE;QAChF,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;QACpC,UAAU,EAAE,QAAQ;QACpB,KAAK,EAAE,EAAE;QACT,KAAK,EAAE,KAAK;KACb;IACD;QACE,GAAG,EAAE,qBAAqB;QAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,qBAAqB,EAAE;QAChF,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;QACpC,UAAU,EAAE,UAAU;KACvB;IACD;QACE,GAAG,EAAE,yBAAyB;QAC9B,KAAK,EAAE;YACL,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,wCAAwC;SACtD;QACD,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;QACpC,UAAU,EAAE,UAAU;QACtB,KAAK,EAAE,MAAM;KACd;CACF,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,OAAO,EAAE,UAAU;IACnB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,QAAQ;IACf,QAAQ,EAAE,QAAQ,CAAC,eAAe,CAAC;IACnC,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC;IACjC,cAAc,EAAE,QAAQ,CAAC,qBAAqB,CAAC;CAChD,CAAC;AAGF,eAAe,YAAY,CAAC;IAC1B,IAAI,EAAE,uBAAuB;IAC7B,WAAW,EAAE,MAAM;IACnB,SAAS,EAAE,SAAS;IACpB,YAAY;IACZ,QAAQ,EAAE,CAAC,OAAO,CAAC;IACnB,IAAI;IACJ,KAAK,EAAE,GAAG;CACX,CAAC,CAAC;AAEH,KAAK,UAAU,GAAG,CAAC,IAAU;IAC3B,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACxD,MAAM,GAAG,GAAG,WAAW,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IAC9D,MAAM,cAAc,GAAG,GAAG,CAAC,WAAW,IAAI,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC;IAC3E,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC;IAE1D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;IAEjC,MAAM,WAAW,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;IAEjD,2CAA2C;IAC3C,MAAM,OAAO,GAAG,SAAkB,CAAC;IAEnC,KAAK,UAAU,kBAAkB,CAAC,GAAW;QAC3C,IAAI,GAAW,CAAC;QAChB,IAAI,CAAC;YACH,GAAG,GAAG,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAW,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC,CAAC,4BAA4B;QAChD,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAY,CAAC;YACzC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3E,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;YACjC,CAAC;YACD,OAAO,MAAM,CAAC,MAAiC,EAAE,GAAG,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,GAAG,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YACrF,OAAO,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,SAAS,WAAW,CAAC,KAAc,EAAE,GAAW;QAC9C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,SAAS,CAAC;QAC5D,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,KAAmB,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3G,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,8BAA8B,GAAG,EAAE,CAAC,CAAC;YACrD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAClF,CAAC;IAED,0CAA0C;IAC1C,SAAS,MAAM,CAAC,MAA+B,EAAE,GAAW;QAC1D,OAAO;YACL,IAAI,EAAG,MAAM,CAAC,IAAe,IAAI,EAAE;YACnC,WAAW,EAAG,MAAM,CAAC,WAAsB,IAAI,EAAE;YACjD,MAAM,EAAG,MAAM,CAAC,MAAiB,IAAI,EAAE;YACvC,MAAM,EAAE,MAAM,CAAC,MAA8B;YAC7C,YAAY,EAAE,MAAM,CAAC,YAAuD;YAC5E,kBAAkB,EAAE,MAAM,CAAC,kBAAwC;YACnE,6CAA6C;YAC7C,mBAAmB,EACjB,OAAO,MAAM,CAAC,mBAAmB,KAAK,QAAQ;gBAC9C,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,mBAAmB,CAAC;gBAC5C,MAAM,CAAC,mBAAmB,IAAI,CAAC;gBAC7B,CAAC,CAAC,MAAM,CAAC,mBAAmB;gBAC5B,CAAC,CAAC,SAAS;YACf,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC;YAC7C,uBAAuB,EAAE,MAAM,CAAC,uBAA8C;YAC9E,MAAM,EAAE,MAAM,CAAC,MAA8B;SAC9C,CAAC;IACJ,CAAC;IAED,SAAS,OAAO,CAAC,IAAY,EAAE,GAAW;QACxC,MAAM,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC;IACxD,CAAC;IAED,KAAK,UAAU,QAAQ,CAAC,IAAY;QAClC,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;YACpC,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,EAAE,GAAG,IAAI,GAAG,GAAG,EAAE,CAAC,CAAC;YAClD,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACrB,UAAU,GAAG,IAAI,CAAC;gBAClB,SAAS;YACX,CAAC;YACD,IAAI,IAAI;gBAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QACjC,CAAC;QACD,OAAO,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1C,CAAC;IAED,8EAA8E;IAC9E,KAAK,UAAU,OAAO,CAAC,GAAuB;QAC5C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,IAAI,MAAmD,CAAC;QACxD,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC;gBAAE,MAAM,GAAG,CAAC;YACvC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnC,IAAI,KAAK,CAAC,WAAW;gBAAE,SAAS;YAChC,MAAM,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,CAAC,CAAC;gBAAE,SAAS;YACjB,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAAE,SAAS;YACtC,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACjD,IAAI,IAAI,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC7B,GAAG,CAAC,iBAAiB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACtC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,IAAiB,CAAC;IACtB,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC9C,IAAI,KAAK,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;QAC/B,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QAClB,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;IACzD,CAAC;SAAM,CAAC;QACN,IAAI,GAAG;YACL,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,aAAa;YAC1B,MAAM,EAAE,eAAe;SACxB,CAAC;QACF,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,eAAe,6BAA6B,CAAC,CAAC;QACxE,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,eAAe,YAAY,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,kBAAkB,CAAC,IAAI,EAAE;QAC3C,gBAAgB;QAChB,aAAa;QACb,QAAQ;KACT,CAAC,CAAC;IACH,KAAK,MAAM,OAAO,IAAI,gBAAgB;QAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IACzF,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAE9B,6DAA6D;IAC7D,KAAK,UAAU,QAAQ,CAAC,MAAc;QACpC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;YACrC,KAAK,MAAM,CAAC,IAAI,MAAM,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;gBAC3C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,eAAe;oBAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;YAC9E,CAAC;YACD,OAAO,CAAC,0BAA0B,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,MAAM,OAAO,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,MAAM,KAAK,GAAG,EAAE,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,gDAAgD;IAChD,uCAAuC;IACvC,IAAI,QAAmC,CAAC;IACxC,IAAI,MAAiC,CAAC;IACtC,SAAS,OAAO,CAAC,MAAc;QAC7B,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAC1B,IAAI,QAAQ,EAAE,CAAC;YACb,6DAA6D;YAC7D,MAAM,IAAI,GAAG,GAAkB,EAAE;gBAC/B,MAAM,GAAG,SAAS,CAAC;gBACnB,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC,CAAC;YACF,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACnC,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;YACvC,QAAQ,GAAG,SAAS,CAAC;QACvB,CAAC,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,0DAA0D;IAC1D,qCAAqC;IACrC,gFAAgF;IAChF,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;QACpC,IAAI,KAAgC,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE;YACvB,MAAM,IAAI,GAAsB,EAAE,CAAC;YACnC,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,MAAM,IAAI,GAAG,CAAC,KAAK,IAAI,EAAE;gBACvB,kCAAkC;gBAClC,gDAAgD;gBAChD,IAAI,CAAC;oBACH,MAAM,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAClC,CAAC;gBAAC,MAAM,CAAC;oBACP,IAAI,CAAC;wBACH,MAAM,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;oBACnC,CAAC;oBAAC,MAAM,CAAC;wBACP,yBAAyB;oBAC3B,CAAC;gBACH,CAAC;gBACD,IAAI,SAAS;oBAAE,OAAO;gBACtB,uCAAuC;gBACvC,IAAI,CAAC;oBACH,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,OAAO,CAAC,aAAa,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC;gBACzF,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,WAAW,KAAK,GAAG,EAAE,CAAC,CAAC;gBAC3D,CAAC;gBACD,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;YACxB,CAAC,CAAC,EAAE,CAAC;YACL,KAAK,KAAK,IAAI,CAAC;YACf,OAAO,GAAG,EAAE;gBACV,SAAS,GAAG,IAAI,CAAC;gBACjB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;oBAAE,GAAG,EAAE,CAAC;YAC1C,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,MAAM,KAAK,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,qCAAqC;IACrC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QACxD,mCAAmC;QACnC,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACrF,MAAM,IAAI,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;gBACzB,OAAO,CAAC,cAAc,EAAE,CAAC;gBACzB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;YACnG,CAAC;iBAAM,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC1B,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC1C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;YACnG,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,EAAE,EAAE,CAAC,CAAC;QACzG,CAAC;QACD,MAAM,IAAI,EAAE,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,gDAAgD;IAChD,6CAA6C;IAC7C,0DAA0D;IAC1D,8DAA8D;IAC9D,kCAAkC;IAClC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,oBAAoB,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QAC9D,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QACzB,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7E,MAAM,OAAO,GAAG,EAAE,EAAE,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,EAAE,IAAI,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC;QACrF,MAAM,IAAI,GAAG,OAAO,EAAE,UAAU,CAAC;QACjC,MAAM,eAAe,GAAG,MAAM,IAAI,OAAO,CAAC,QAAQ,CAAC;QACnD,MAAM,YAAY,GAAG,uBAAuB,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QAChG,MAAM,QAAQ,GAAoB;YAChC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,eAAe;YACzB,aAAa,EAAE,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YACjG,2DAA2D;YAC3D,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI,EAAE,IAAI;YAC9C,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO;YAC3D,MAAM,EAAE,YAAY,EAAE,MAAM;YAC5B,YAAY,EAAE,YAAY,EAAE,QAAQ;YACpC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC;QACF,MAAM,OAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,qCAAqC;IACrC,oCAAoC;IACpC,iDAAiD;IACjD,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAE7C,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,oBAAoB,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QAC9D,MAAM,IAAI,EAAE,CAAC;QAEb,6DAA6D;QAC7D,IAAI,WAA8C,CAAC;QACnD,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YAC7E,IAAI,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACzB,MAAM,QAAQ,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACjE,WAAW,GAAG;oBACZ,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;oBACjD,uBAAuB,EAAE,QAAQ,CAAC,uBAAuB;iBAC1D,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,gCAAgC;QAClC,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAE1D,wCAAwC;QACxC,2CAA2C;QAC3C,gBAAgB;QAChB,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO;YACrC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACpD,IAAI,CAAC,GAAG;gBAAE,OAAO;YACjB,MAAM,SAAS,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;YACvF,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;gBAC5B,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;oBACjC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,CAAW,CAAC;oBAClC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,oBAAoB,GAAG,GAAG,CAAC,CAAC;oBAC7C,OAAO;gBACT,CAAC;YACH,CAAC;YACD,OAAO;QACT,CAAC;QAED,mCAAmC;QAEnC,MAAM,cAAc,GAAG,OAAO,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC;QAEtE,MAAM,sBAAsB,GAAG,CAAC,SAAkC,EAAE,GAAiB,EAAQ,EAAE;YAC7F,MAAM,KAAK,GAA4B,EAAE,CAAC;YAC1C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1C,IAAI,GAAG,KAAK,GAAG,CAAC,UAAU,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;oBAC3D,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,QAAQ,CAAC;oBACnD,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;oBACzB,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;wBAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;wBACtB,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBAClC,CAAC;yBAAM,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;wBACnC,IAAI,OAAO,GAAG,KAAK,QAAQ;4BAAE,GAAG,GAAG,GAAG,KAAK,MAAM,CAAC;;4BAC7C,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;oBAC1B,CAAC;yBAAM,CAAC;wBACN,IAAI,OAAO,GAAG,KAAK,QAAQ;4BAAE,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;oBACjD,CAAC;oBACD,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;gBACnB,CAAC;YACH,CAAC;YACD,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBAChD,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACnF,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC/D,IAAI,MAAM,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,4BAA4B,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,CAAC;YACH,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;YAC1C,IAAI,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YAE5C,0CAA0C;YAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,MAAM,OAAO,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;gBAC1E,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oBAC5B,IAAI,KAAK,KAAK,YAAY,CAAC,UAAU,IAAI,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE,CAAC;wBAC3E,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;wBACtB,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,0BAA0B,KAAK,SAAS,YAAY,CAAC,UAAU,SAAS,CAAC,CAAC;wBAC3F,MAAM;oBACR,CAAC;gBACH,CAAC;YACH,CAAC;YAED,6BAA6B;YAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;gBACtF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC/B,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAW,CAAC;oBACtC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,6BAA6B,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;gBAC/E,CAAC;YACH,CAAC;YAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,KAAK,EAAE,CAAC;oBAC9C,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC;gBAC1C,CAAC;gBAED,4CAA4C;gBAC5C,gDAAgD;gBAChD,MAAM,OAAO,GAAa,EAAE,CAAC;gBAC7B,MAAM,YAAY,GAAa,EAAE,CAAC;gBAClC,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC7D,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;oBACxB,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;wBACtC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBAClB,SAAS;oBACX,CAAC;oBACD,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC;oBAC1C,MAAM,UAAU,GAAG,OAAO,GAAG,CAAC;oBAC9B,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;wBAC9B,IAAI,UAAU,KAAK,QAAQ,IAAI,CAAC,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;4BACxF,YAAY,CAAC,IAAI,CAAC,GAAG,GAAG,kBAAkB,UAAU,GAAG,CAAC,CAAC;wBAC3D,CAAC;oBACH,CAAC;yBAAM,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;wBACtC,IAAI,UAAU,KAAK,SAAS,IAAI,CAAC,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC;4BAClG,YAAY,CAAC,IAAI,CAAC,GAAG,GAAG,mBAAmB,UAAU,GAAG,CAAC,CAAC;wBAC5D,CAAC;oBACH,CAAC;yBAAM,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;wBACnC,YAAY,CAAC,IAAI,CAAC,GAAG,GAAG,kBAAkB,UAAU,GAAG,CAAC,CAAC;oBAC3D,CAAC;gBACH,CAAC;gBACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClD,MAAM,KAAK,GAAa,EAAE,CAAC;oBAC3B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;wBAAE,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACjE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;wBAAE,KAAK,CAAC,IAAI,CAAC,SAAS,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC3E,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACpC,CAAC;gBAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBAC7C,+CAA+C;gBAC/C,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;gBAE5B,gCAAgC;gBAChC,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,CAAC;gBACD,WAAW;gBACX,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;qBACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,YAAY,CAAC,UAAU,CAAC;qBAC9C,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;oBACxD,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9D,CAAC,CAAC;qBACD,IAAI,CAAC,IAAI,CAAC,CAAC;gBACd,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrB,MAAM,CAAC,GAAG,CAAC,KAAK,CACd,sBAAsB,YAAY,OAAO,YAAY,CAAC,UAAU,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAC3F,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,YAAY,OAAO,YAAY,CAAC,UAAU,UAAU,CAAC,CAAC;gBAC/F,CAAC;gBACD,mCAAmC;gBACnC,IAAI,gBAAgB,EAAE,CAAC;oBACrB,sBAAsB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,kDAAkD;gBAClD,4DAA4D;gBAC5D,qEAAqE;gBACrE,uDAAuD;gBACvD,MAAM,IAAI,KAAK,CACb,oBAAoB,YAAY,CAAC,UAAU,WAAW,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CACvF,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;YAE/E,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC;YACxC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;YAClC,kCAAkC;YAClC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;YAE7B,IAAI,OAAO,GAAG,UAAU,EAAE,CAAC;gBACzB,yCAAyC;gBACzC,MAAM,CAAC,GAAG,CAAC,KAAK,CACd,8BAA8B,OAAO,IAAI,UAAU,UAAU,OAAO,UAAU,OAAO,EAAE,CACxF,CAAC;gBACF,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC;qBAClD,GAAG,CACF,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CACT,QAAQ,CAAC,KAAK,CAAC,CAAC,WAAW,IAAI,EAAE,GAAG,CAAC,KAAK,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,GAAG,CAC5F;qBACA,IAAI,CAAC,IAAI,CAAC,CAAC;gBACd,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC3B,IAAI,CAAC,aAAa;oBAChB,oCAAoC;wBACpC,OAAO;wBACP,kEAAkE;wBAClE,SAAS;wBACT,sBAAsB;wBACtB,wDAAwD,CAAC;YAC7D,CAAC;iBAAM,CAAC;gBACN,+BAA+B;gBAC/B,yDAAyD;gBACzD,MAAM,CAAC,GAAG,CAAC,IAAI,CACb,qBAAqB,OAAO,GAAG,CAAC,YAAY,UAAU,gBAAgB,OAAO,UAAU,OAAO,EAAE,CACjG,CAAC;gBACF,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;gBAC5B,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;gBAC/B,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;gBAClB,IAAI,CAAC,cAAc,GAAG,yCAAyC,OAAO,wDAAwD,CAAC;YACjI,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
readonly displayName: "Persona system";
|
|
3
|
+
readonly statePersistenceLabel: "State persistence";
|
|
4
|
+
readonly statePersistenceDescription: "When on, the persona state (mood, current activity and other outputFormat fields) carries over within the same session and is injected into the next prompt";
|
|
5
|
+
readonly timeInjectionLabel: "Time injection";
|
|
6
|
+
readonly timeInjectionDescription: "When on, the current time is injected into the system prompt automatically";
|
|
7
|
+
readonly timeZoneLabel: "Time zone (IANA)";
|
|
8
|
+
readonly timeZoneDescription: "For example Asia/Shanghai, Europe/London, America/New_York. Empty uses the system's local time zone.";
|
|
9
|
+
readonly personaLabel: "Persona";
|
|
10
|
+
readonly personaDescription: "Persona card name (without the extension); default is the default card in the persona directory, or the built-in default persona when there is none";
|
|
11
|
+
readonly extraLabel: "Extra prompt";
|
|
12
|
+
readonly extraDescription: "Appended after the persona prompt and before the structured output instructions; nothing is appended when empty";
|
|
13
|
+
readonly plainLabel: "No structured output";
|
|
14
|
+
readonly plainDescription: "Ignore the card’s structured output format and reply in plain text";
|
|
15
|
+
readonly renderLabel: "Client-side JSON rendering";
|
|
16
|
+
readonly renderDescription: "Hand the structured output JSON to the client as is, without extracting the reply field";
|
|
17
|
+
readonly renderCard: "Per card";
|
|
18
|
+
readonly renderOn: "On";
|
|
19
|
+
readonly renderOff: "Off";
|
|
20
|
+
readonly clearType: "Session persona state";
|
|
21
|
+
readonly clearedAll: "Cleared the persona state of all sessions";
|
|
22
|
+
readonly clearedSession: "Cleared the persona state of this session";
|
|
23
|
+
readonly clearFailed: "Clearing persona state failed: {error}";
|
|
24
|
+
};
|
|
25
|
+
export default _default;
|
|
26
|
+
//# sourceMappingURL=en.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBA2BG"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { defineLocale } from '@aalis/schema-i18n';
|
|
2
|
+
export default defineLocale()({
|
|
3
|
+
displayName: 'Persona system',
|
|
4
|
+
statePersistenceLabel: 'State persistence',
|
|
5
|
+
statePersistenceDescription: 'When on, the persona state (mood, current activity and other outputFormat fields) carries over within the same session and is injected into the next prompt',
|
|
6
|
+
timeInjectionLabel: 'Time injection',
|
|
7
|
+
timeInjectionDescription: 'When on, the current time is injected into the system prompt automatically',
|
|
8
|
+
timeZoneLabel: 'Time zone (IANA)',
|
|
9
|
+
timeZoneDescription: "For example Asia/Shanghai, Europe/London, America/New_York. Empty uses the system's local time zone.",
|
|
10
|
+
personaLabel: 'Persona',
|
|
11
|
+
personaDescription: 'Persona card name (without the extension); default is the default card in the persona directory, or the built-in default persona when there is none',
|
|
12
|
+
extraLabel: 'Extra prompt',
|
|
13
|
+
extraDescription: 'Appended after the persona prompt and before the structured output instructions; nothing is appended when empty',
|
|
14
|
+
plainLabel: 'No structured output',
|
|
15
|
+
plainDescription: 'Ignore the card’s structured output format and reply in plain text',
|
|
16
|
+
renderLabel: 'Client-side JSON rendering',
|
|
17
|
+
renderDescription: 'Hand the structured output JSON to the client as is, without extracting the reply field',
|
|
18
|
+
renderCard: 'Per card',
|
|
19
|
+
renderOn: 'On',
|
|
20
|
+
renderOff: 'Off',
|
|
21
|
+
clearType: 'Session persona state',
|
|
22
|
+
clearedAll: 'Cleared the persona state of all sessions',
|
|
23
|
+
clearedSession: 'Cleared the persona state of this session',
|
|
24
|
+
clearFailed: 'Clearing persona state failed: {error}',
|
|
25
|
+
});
|
|
26
|
+
//# sourceMappingURL=en.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,eAAe,YAAY,EAAU,CAAC;IACpC,WAAW,EAAE,gBAAgB;IAC7B,qBAAqB,EAAE,mBAAmB;IAC1C,2BAA2B,EACzB,6JAA6J;IAC/J,kBAAkB,EAAE,gBAAgB;IACpC,wBAAwB,EAAE,4EAA4E;IACtG,aAAa,EAAE,kBAAkB;IACjC,mBAAmB,EACjB,sGAAsG;IACxG,YAAY,EAAE,SAAS;IACvB,kBAAkB,EAChB,qJAAqJ;IACvJ,UAAU,EAAE,cAAc;IAC1B,gBAAgB,EACd,iHAAiH;IACnH,UAAU,EAAE,sBAAsB;IAClC,gBAAgB,EAAE,oEAAoE;IACtF,WAAW,EAAE,4BAA4B;IACzC,iBAAiB,EAAE,yFAAyF;IAC5G,UAAU,EAAE,UAAU;IACtB,QAAQ,EAAE,IAAI;IACd,SAAS,EAAE,KAAK;IAChB,SAAS,EAAE,uBAAuB;IAClC,UAAU,EAAE,2CAA2C;IACvD,cAAc,EAAE,2CAA2C;IAC3D,WAAW,EAAE,wCAAwC;CACtD,CAAC,CAAC"}
|
package/dist/texts.d.ts
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
declare const SOURCE: {
|
|
2
|
+
readonly displayName: "人设系统";
|
|
3
|
+
readonly statePersistenceLabel: "状态持久化";
|
|
4
|
+
readonly statePersistenceDescription: "启用后,角色状态(心情、当前行为等 outputFormat 字段)会在同一会话内延续并注入到下一轮提示中";
|
|
5
|
+
readonly timeInjectionLabel: "时间注入";
|
|
6
|
+
readonly timeInjectionDescription: "启用后,当前时间会自动注入到系统提示中";
|
|
7
|
+
readonly timeZoneLabel: "时区 (IANA)";
|
|
8
|
+
readonly timeZoneDescription: "例如 Asia/Shanghai、Europe/London、America/New_York。留空使用系统本地时区。";
|
|
9
|
+
readonly personaLabel: "人设";
|
|
10
|
+
readonly personaDescription: "角色卡名(不含后缀);default 是人设目录里的 default 卡,没有时用内置的默认角色";
|
|
11
|
+
readonly extraLabel: "额外提示";
|
|
12
|
+
readonly extraDescription: "追加在人设提示之后、结构化输出格式说明之前;为空时不追加";
|
|
13
|
+
readonly plainLabel: "不用结构化输出";
|
|
14
|
+
readonly plainDescription: "不用角色卡的结构化输出格式,回复纯文本";
|
|
15
|
+
readonly renderLabel: "客户端渲染 JSON";
|
|
16
|
+
readonly renderDescription: "结构化输出的 JSON 原样交给客户端渲染,不提取回复字段";
|
|
17
|
+
readonly renderCard: "按角色卡";
|
|
18
|
+
readonly renderOn: "开";
|
|
19
|
+
readonly renderOff: "关";
|
|
20
|
+
readonly clearType: "会话角色状态";
|
|
21
|
+
readonly clearedAll: "所有会话角色状态已清空";
|
|
22
|
+
readonly clearedSession: "当前会话角色状态已清空";
|
|
23
|
+
readonly clearFailed: "角色状态清空失败:{error}";
|
|
24
|
+
};
|
|
25
|
+
export type Source = typeof SOURCE;
|
|
26
|
+
export declare const t: import("@aalis/schema-i18n").TextFactory<{
|
|
27
|
+
readonly displayName: "人设系统";
|
|
28
|
+
readonly statePersistenceLabel: "状态持久化";
|
|
29
|
+
readonly statePersistenceDescription: "启用后,角色状态(心情、当前行为等 outputFormat 字段)会在同一会话内延续并注入到下一轮提示中";
|
|
30
|
+
readonly timeInjectionLabel: "时间注入";
|
|
31
|
+
readonly timeInjectionDescription: "启用后,当前时间会自动注入到系统提示中";
|
|
32
|
+
readonly timeZoneLabel: "时区 (IANA)";
|
|
33
|
+
readonly timeZoneDescription: "例如 Asia/Shanghai、Europe/London、America/New_York。留空使用系统本地时区。";
|
|
34
|
+
readonly personaLabel: "人设";
|
|
35
|
+
readonly personaDescription: "角色卡名(不含后缀);default 是人设目录里的 default 卡,没有时用内置的默认角色";
|
|
36
|
+
readonly extraLabel: "额外提示";
|
|
37
|
+
readonly extraDescription: "追加在人设提示之后、结构化输出格式说明之前;为空时不追加";
|
|
38
|
+
readonly plainLabel: "不用结构化输出";
|
|
39
|
+
readonly plainDescription: "不用角色卡的结构化输出格式,回复纯文本";
|
|
40
|
+
readonly renderLabel: "客户端渲染 JSON";
|
|
41
|
+
readonly renderDescription: "结构化输出的 JSON 原样交给客户端渲染,不提取回复字段";
|
|
42
|
+
readonly renderCard: "按角色卡";
|
|
43
|
+
readonly renderOn: "开";
|
|
44
|
+
readonly renderOff: "关";
|
|
45
|
+
readonly clearType: "会话角色状态";
|
|
46
|
+
readonly clearedAll: "所有会话角色状态已清空";
|
|
47
|
+
readonly clearedSession: "当前会话角色状态已清空";
|
|
48
|
+
readonly clearFailed: "角色状态清空失败:{error}";
|
|
49
|
+
}>;
|
|
50
|
+
export {};
|
|
51
|
+
//# sourceMappingURL=texts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"texts.d.ts","sourceRoot":"","sources":["../src/texts.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;CAwBF,CAAC;AACX,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAEnC,eAAO,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;EAAmG,CAAC"}
|
package/dist/texts.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// 本插件自己的原文字典:显示名、配置项,按会话字段的称呼、说明与选项,/clear 的类型显示名与结果行
|
|
2
|
+
import { defineTexts } from '@aalis/schema-i18n';
|
|
3
|
+
import en from './locales/en.js';
|
|
4
|
+
const SOURCE = {
|
|
5
|
+
displayName: '人设系统',
|
|
6
|
+
statePersistenceLabel: '状态持久化',
|
|
7
|
+
statePersistenceDescription: '启用后,角色状态(心情、当前行为等 outputFormat 字段)会在同一会话内延续并注入到下一轮提示中',
|
|
8
|
+
timeInjectionLabel: '时间注入',
|
|
9
|
+
timeInjectionDescription: '启用后,当前时间会自动注入到系统提示中',
|
|
10
|
+
timeZoneLabel: '时区 (IANA)',
|
|
11
|
+
timeZoneDescription: '例如 Asia/Shanghai、Europe/London、America/New_York。留空使用系统本地时区。',
|
|
12
|
+
personaLabel: '人设',
|
|
13
|
+
personaDescription: '角色卡名(不含后缀);default 是人设目录里的 default 卡,没有时用内置的默认角色',
|
|
14
|
+
extraLabel: '额外提示',
|
|
15
|
+
extraDescription: '追加在人设提示之后、结构化输出格式说明之前;为空时不追加',
|
|
16
|
+
plainLabel: '不用结构化输出',
|
|
17
|
+
plainDescription: '不用角色卡的结构化输出格式,回复纯文本',
|
|
18
|
+
renderLabel: '客户端渲染 JSON',
|
|
19
|
+
renderDescription: '结构化输出的 JSON 原样交给客户端渲染,不提取回复字段',
|
|
20
|
+
renderCard: '按角色卡',
|
|
21
|
+
renderOn: '开',
|
|
22
|
+
renderOff: '关',
|
|
23
|
+
clearType: '会话角色状态',
|
|
24
|
+
clearedAll: '所有会话角色状态已清空',
|
|
25
|
+
clearedSession: '当前会话角色状态已清空',
|
|
26
|
+
clearFailed: '角色状态清空失败:{error}',
|
|
27
|
+
};
|
|
28
|
+
export const t = defineTexts({ ns: '@aalis/plugin-persona', language: 'zh-CN', source: SOURCE, locales: { en } });
|
|
29
|
+
//# sourceMappingURL=texts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"texts.js","sourceRoot":"","sources":["../src/texts.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAEjC,MAAM,MAAM,GAAG;IACb,WAAW,EAAE,MAAM;IACnB,qBAAqB,EAAE,OAAO;IAC9B,2BAA2B,EACzB,uDAAuD;IACzD,kBAAkB,EAAE,MAAM;IAC1B,wBAAwB,EAAE,qBAAqB;IAC/C,aAAa,EAAE,WAAW;IAC1B,mBAAmB,EAAE,6DAA6D;IAClF,YAAY,EAAE,IAAI;IAClB,kBAAkB,EAAE,kDAAkD;IACtE,UAAU,EAAE,MAAM;IAClB,gBAAgB,EAAE,8BAA8B;IAChD,UAAU,EAAE,SAAS;IACrB,gBAAgB,EAAE,qBAAqB;IACvC,WAAW,EAAE,YAAY;IACzB,iBAAiB,EAAE,+BAA+B;IAClD,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE,GAAG;IACb,SAAS,EAAE,GAAG;IACd,SAAS,EAAE,QAAQ;IACnB,UAAU,EAAE,aAAa;IACzB,cAAc,EAAE,aAAa;IAC7B,WAAW,EAAE,kBAAkB;CACvB,CAAC;AAGX,MAAM,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,EAAE,EAAE,EAAE,uBAAuB,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aalis/plugin-persona",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.15.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -24,31 +24,39 @@
|
|
|
24
24
|
"dist"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@aalis/schema-config": ">=0.
|
|
28
|
-
"@aalis/api-persona": ">=0.
|
|
29
|
-
"@aalis/api-platform": ">=0.
|
|
30
|
-
"@aalis/api-session-manager": ">=0.
|
|
31
|
-
"@aalis/api-storage": ">=0.
|
|
32
|
-
"@aalis/util-json-repair": ">=0.
|
|
27
|
+
"@aalis/schema-config": ">=0.16.0 <1.0.0",
|
|
28
|
+
"@aalis/api-persona": ">=0.10.0 <1.0.0",
|
|
29
|
+
"@aalis/api-platform": ">=0.11.0 <1.0.0",
|
|
30
|
+
"@aalis/api-session-manager": ">=0.12.0 <1.0.0",
|
|
31
|
+
"@aalis/api-storage": ">=0.10.0 <1.0.0",
|
|
32
|
+
"@aalis/util-json-repair": ">=0.6.0 <1.0.0",
|
|
33
33
|
"yaml": "^2.7.0",
|
|
34
|
-
"@aalis/api-hooks": ">=0.
|
|
34
|
+
"@aalis/api-hooks": ">=0.3.0 <1.0.0",
|
|
35
|
+
"@aalis/api-contributions": ">=0.2.0 <1.0.0",
|
|
36
|
+
"@aalis/api-host-config": ">=0.3.0 <1.0.0",
|
|
37
|
+
"@aalis/api-session-settings": ">=0.1.0 <1.0.0",
|
|
38
|
+
"@aalis/schema-i18n": ">=0.1.0 <1.0.0",
|
|
39
|
+
"@aalis/schema-message": ">=0.11.0 <1.0.0"
|
|
35
40
|
},
|
|
36
41
|
"devDependencies": {
|
|
37
42
|
"@types/node": "^22.0.0",
|
|
38
43
|
"typescript": "^5.7.0",
|
|
39
|
-
"@aalis/core": "0.
|
|
40
|
-
"@aalis/api-
|
|
41
|
-
"@aalis/api-
|
|
44
|
+
"@aalis/core": "0.21.0",
|
|
45
|
+
"@aalis/api-memory": "0.9.0",
|
|
46
|
+
"@aalis/api-agent": "0.11.0"
|
|
42
47
|
},
|
|
43
48
|
"peerDependencies": {
|
|
44
|
-
"@aalis/core": ">=0.
|
|
49
|
+
"@aalis/core": ">=0.21.0 <1.0.0"
|
|
45
50
|
},
|
|
46
51
|
"aalis": {
|
|
47
52
|
"service": {
|
|
48
53
|
"optional": [
|
|
49
54
|
"platform",
|
|
50
55
|
"storage",
|
|
51
|
-
"session-manager"
|
|
56
|
+
"session-manager",
|
|
57
|
+
"host-config",
|
|
58
|
+
"session-settings",
|
|
59
|
+
"contributions"
|
|
52
60
|
],
|
|
53
61
|
"provides": [
|
|
54
62
|
"persona"
|