dsh-mnemon-source-memory-spaces 0.5.12 → 0.5.13
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/lib/client.js +306 -305
- package/lib/index.js +21 -2
- package/lib/types/client/pages.d.ts +2 -1
- package/package.json +5 -5
- package/presentation/locales.json +62 -88
- package/presentation/page.module.css +10 -28
- package/presentation/sidebar.module.css +3 -3
package/lib/client.js
CHANGED
|
@@ -23,10 +23,10 @@ window.__ModuleLoader__.load({
|
|
|
23
23
|
"nav.bodies": "记忆空间",
|
|
24
24
|
"nav.search": "检索",
|
|
25
25
|
"nav.entities": "实体",
|
|
26
|
-
"nav.rememberAction": "
|
|
26
|
+
"nav.rememberAction": "存入记忆",
|
|
27
27
|
"nav.content": "内容",
|
|
28
28
|
"overview.title": "记忆空间",
|
|
29
|
-
"overview.description": "
|
|
29
|
+
"overview.description": "由 Mnemon Native 或第三方 Provider 承载的长期记忆;已激活的空间参与召回。",
|
|
30
30
|
"overview.pageDescription": "创建和启停记忆空间,查看每个 Provider 的存储状态与实时关联快照。",
|
|
31
31
|
"overview.interval": "进入时全量同步 · 点击卡片按需同步",
|
|
32
32
|
"overview.fullSyncPending": "等待首次全量同步",
|
|
@@ -35,11 +35,8 @@ window.__ModuleLoader__.load({
|
|
|
35
35
|
"overview.fullSyncMinutes": "上次全量同步:{count} 分钟前",
|
|
36
36
|
"overview.fullSyncHours": "上次全量同步:{count} 小时前",
|
|
37
37
|
"overview.fullSyncDays": "上次全量同步:{count} 天前",
|
|
38
|
-
"overview.syncing": "同步中…",
|
|
39
|
-
"overview.syncNow": "立即同步",
|
|
40
38
|
"overview.directory": "记忆空间目录",
|
|
41
|
-
"overview.directory.description": "
|
|
42
|
-
"overview.directory.waiting": "等待目录",
|
|
39
|
+
"overview.directory.description": "每张卡片是一个记忆空间;点击卡片检查连接,开关决定它是否参与召回。",
|
|
43
40
|
"overview.directory.unsynced": "目录尚未同步",
|
|
44
41
|
"overview.directory.unsyncedBadge": "目录待同步",
|
|
45
42
|
"overview.directoryLoading": "正在加载记忆空间目录",
|
|
@@ -51,7 +48,7 @@ window.__ModuleLoader__.load({
|
|
|
51
48
|
"overview.reconnectHint": "点击卡片重新检测并同步这个记忆空间",
|
|
52
49
|
"overview.reconnectAria": "重新连接{name}",
|
|
53
50
|
"overview.snapshotLoading": "正在加载多记忆空间实时快照",
|
|
54
|
-
"overview.metadataAction": "
|
|
51
|
+
"overview.metadataAction": "整理名称与说明",
|
|
55
52
|
"overview.metadataTitle": "AI 维护记忆空间元信息",
|
|
56
53
|
"overview.metadataDescription": "选择一个或多个已激活记忆空间。系统会分别通过各 Provider 最快的原生查询路径读取少量样本,再由独立任务 Agent 生成标题与说明。",
|
|
57
54
|
"overview.metadataUnavailable": "暂时无法运行:未找到与当前记忆范围匹配的活跃 Agent",
|
|
@@ -82,13 +79,13 @@ window.__ModuleLoader__.load({
|
|
|
82
79
|
"overview.noActiveTitle": "没有激活的记忆空间",
|
|
83
80
|
"overview.noActiveText": "开启至少一个记忆空间的读取开关,即可在这里聚合它的实时图谱。",
|
|
84
81
|
"overview.noContentTitle": "已激活记忆空间尚无内容",
|
|
85
|
-
"overview.noContentText": "
|
|
82
|
+
"overview.noContentText": "存入记忆后,这里会显示节点与关系。",
|
|
86
83
|
"overview.createTitle": "创建记忆空间",
|
|
87
84
|
"overview.createDialogHint": "这里定义记忆空间用途并选择底层 Provider;服务、凭据和全局数据位置沿用“插件 → 可组合记忆”页面中的配置。",
|
|
88
85
|
"overview.createIdentityTitle": "记忆空间信息",
|
|
89
86
|
"overview.createIdentityHint": "名称用于识别;描述会帮助 Agent 判断什么内容应写入和召回。",
|
|
90
87
|
"overview.createPlacementTitle": "记忆空间 Provider",
|
|
91
|
-
"overview.createPlacementHint": "这是一次明确的手动创建;选择一个已启用 Provider
|
|
88
|
+
"overview.createPlacementHint": "这是一次明确的手动创建;选择一个已启用 Provider。任务 Agent 新建空间时的选择在“新空间的 Provider”中设置。",
|
|
92
89
|
"overview.createName": "新记忆空间名称",
|
|
93
90
|
"overview.createNamePlaceholder": "名称",
|
|
94
91
|
"overview.createDescription": "新记忆空间描述",
|
|
@@ -117,7 +114,7 @@ window.__ModuleLoader__.load({
|
|
|
117
114
|
"overview.capability.exact-write": "精确写入",
|
|
118
115
|
"overview.capability.forget": "安全遗忘",
|
|
119
116
|
"overview.candidateNativeReady": "官方原生 · 跟随当前记忆范围",
|
|
120
|
-
"overview.providerServiceRequired": "
|
|
117
|
+
"overview.providerServiceRequired": "未启用",
|
|
121
118
|
"overview.nativeCliRequired": "需要在本机安装 Mnemon CLI;其他 Provider 不受影响",
|
|
122
119
|
"overview.workspaceBinding.automatic": "跟随当前记忆范围",
|
|
123
120
|
"overview.workspaceBinding.optional-override": "跟随当前范围;全局可自定义位置",
|
|
@@ -134,21 +131,19 @@ window.__ModuleLoader__.load({
|
|
|
134
131
|
"overview.providerLabel": "记忆引擎",
|
|
135
132
|
"overview.nativeOfficial": "官方原生",
|
|
136
133
|
"overview.providerNativeHint": "官方原生、本地优先,保留完整图谱与软删除能力",
|
|
137
|
-
"strategy.action": "
|
|
138
|
-
"strategy.title": "
|
|
139
|
-
"strategy.description": "
|
|
134
|
+
"strategy.action": "新空间的 Provider",
|
|
135
|
+
"strategy.title": "新空间的 Provider",
|
|
136
|
+
"strategy.description": "任务 Agent 需要新建记忆空间时,如何选择 Provider;已有空间仍按名称与说明路由。",
|
|
140
137
|
"strategy.loading": "正在读取 Provider 目录…",
|
|
141
138
|
"strategy.modeTitle": "Provider 选择方式",
|
|
142
|
-
"strategy.modeHint": "
|
|
139
|
+
"strategy.modeHint": "只影响任务 Agent 新建的记忆空间;手动创建时始终由你指定。",
|
|
143
140
|
"strategy.manualHint": "固定使用一个 Provider,Agent 无法改选",
|
|
144
141
|
"strategy.automaticHint": "先执行硬规则,再由任务 Agent 选择合格 Provider",
|
|
145
142
|
"strategy.manualTitle": "固定 Provider",
|
|
146
143
|
"strategy.manualDescription": "当现有记忆空间都不适合时,新记忆空间固定创建在这个 Provider 中。",
|
|
147
144
|
"strategy.automaticTitle": "智能选择规则",
|
|
148
145
|
"strategy.automaticDescription": "数据边界与能力要求由主机强制执行,Prompt 只影响合格候选之间的判断。",
|
|
149
|
-
"strategy.
|
|
150
|
-
"strategy.taskAgentUnavailable": "等待任务 Agent",
|
|
151
|
-
"strategy.save": "保存策略",
|
|
146
|
+
"strategy.save": "保存",
|
|
152
147
|
"strategy.saving": "保存中…",
|
|
153
148
|
"overview.providerOpenVikingHint": "连接已有 OpenViking 服务,由记忆空间工作流统一调度",
|
|
154
149
|
"overview.providerSummary.mnemon-native": "官方原生、本地优先,保留完整图谱与软删除能力",
|
|
@@ -266,7 +261,7 @@ window.__ModuleLoader__.load({
|
|
|
266
261
|
"graph.kindSpace": "记忆空间",
|
|
267
262
|
"graph.kindEntity": "实体",
|
|
268
263
|
"search.title": "检索记忆",
|
|
269
|
-
"search.description": "
|
|
264
|
+
"search.description": "在已激活的记忆空间中检索:直接检索返回原文,Agent 查询给出带引用的回答。",
|
|
270
265
|
"search.maxResults": "最多 {count} 条",
|
|
271
266
|
"search.placeholder": "为什么选用 SQLite?这个项目有哪些发布约定?",
|
|
272
267
|
"search.queryAria": "记忆查询",
|
|
@@ -293,7 +288,7 @@ window.__ModuleLoader__.load({
|
|
|
293
288
|
"search.noRelated": "没有找到两跳内的关联节点。",
|
|
294
289
|
"search.sourcesTitle": "本次检索范围",
|
|
295
290
|
"entities.title": "实体查阅",
|
|
296
|
-
"entities.description": "
|
|
291
|
+
"entities.description": "查看实体在事实、决策与上下文之间的关联。",
|
|
297
292
|
"entities.sourcesTitle": "实体能力范围",
|
|
298
293
|
"entities.unsupportedTitle": "没有支持实体索引的记忆空间",
|
|
299
294
|
"entities.unsupportedText": "当前激活 Provider 仍可通过“检索”召回,但不会在这里伪装成实体图谱。",
|
|
@@ -311,52 +306,41 @@ window.__ModuleLoader__.load({
|
|
|
311
306
|
"entities.selectText": "实体视图会聚合与它相关的记忆,而不是只做字面匹配。",
|
|
312
307
|
"entities.emptyTitle": "没有关联记忆",
|
|
313
308
|
"entities.emptyText": "尝试更完整的名称或另一个实体别名。",
|
|
314
|
-
"remember.title": "
|
|
315
|
-
"remember.description": "
|
|
309
|
+
"remember.title": "存入记忆",
|
|
310
|
+
"remember.description": "任务 Agent 会判断是否值得保存,去重、提炼后写入合适的记忆空间,不占用当前对话。",
|
|
316
311
|
"remember.readOnlyTitle": "当前为只读模式",
|
|
317
312
|
"remember.readOnlyText": "当前部署禁止记忆写入;如需调整,请修改 DSH 的 Mnemon 配置并保存。",
|
|
318
|
-
"remember.delegateTitle": "交给独立任务 Agent",
|
|
319
|
-
"remember.noSession": "无可用会话",
|
|
320
|
-
"remember.ready": "独立任务 Agent 就绪",
|
|
321
|
-
"remember.noTaskAgent": "任务 Agent 不可用",
|
|
322
|
-
"remember.taskAgentReady": "任务 Agent 就绪",
|
|
323
313
|
"remember.candidate": "候选内容",
|
|
324
|
-
"remember.
|
|
325
|
-
"remember.placeholder": "输入希望跨任务保留的背景、偏好、决策或洞察。模型会先判断它是否真的值得沉淀。",
|
|
314
|
+
"remember.placeholder": "输入希望长期保留的背景、偏好、决策或结论。",
|
|
326
315
|
"remember.sessionHint": "当前视图没有可用的模型路由,无法创建独立任务 Agent。",
|
|
327
316
|
"remember.taskAgentHint": "当前 Host 暂时无法创建独立任务 Agent,请刷新状态后重试。",
|
|
328
|
-
"remember.processing": "
|
|
329
|
-
"remember.action": "
|
|
330
|
-
"remember.advanced": "
|
|
331
|
-
"remember.advancedHint": "
|
|
317
|
+
"remember.processing": "任务 Agent 处理中…",
|
|
318
|
+
"remember.action": "交给任务 Agent",
|
|
319
|
+
"remember.advanced": "高级选项",
|
|
320
|
+
"remember.advancedHint": "指定目标记忆空间、分类与重要性",
|
|
332
321
|
"remember.expand": "展开",
|
|
333
322
|
"remember.target": "目标记忆空间",
|
|
334
323
|
"remember.asyncProviderHint": "该记忆空间会等待远程提炼任务完成后再返回真实写入回执。",
|
|
335
324
|
"remember.entities": "实体(逗号分隔)",
|
|
336
325
|
"remember.tags": "标签(逗号分隔)",
|
|
337
|
-
"remember.advancedText": "
|
|
338
|
-
"remember.saving": "
|
|
339
|
-
"remember.advancedAction": "
|
|
340
|
-
"remember.skipped": "独立任务 Agent 判断无需写入",
|
|
341
|
-
"remember.completed": "独立任务 Agent 已完成处理",
|
|
342
|
-
"remember.processed": "独立任务 Agent 已处理:{action}",
|
|
343
|
-
"remember.dispatchFailed": "调度失败:{error}",
|
|
344
|
-
"remember.saveFailed": "保存失败:{error}",
|
|
326
|
+
"remember.advancedText": "这些约束同样经过任务 Agent 的去重与回执。",
|
|
327
|
+
"remember.saving": "任务 Agent 处理中…",
|
|
328
|
+
"remember.advancedAction": "按约束交给任务 Agent",
|
|
345
329
|
"content.title": "记忆内容",
|
|
346
|
-
"content.description": "
|
|
330
|
+
"content.description": "浏览各记忆空间保存的内容。",
|
|
347
331
|
"content.sourcesTitle": "Provider 内容模型",
|
|
348
332
|
"content.count": "{count} 条记忆",
|
|
349
333
|
"content.filterAria": "筛选记忆内容",
|
|
350
334
|
"content.filterPlaceholder": "按内容或精确 ID 筛选…",
|
|
351
335
|
"content.categoryAria": "记忆分类",
|
|
352
336
|
"content.apply": "应用筛选",
|
|
353
|
-
"content.notice": "
|
|
337
|
+
"content.notice": "查询型 Provider 需要输入关键词后才显示内容。",
|
|
354
338
|
"content.queryRequiredTitle": "查询型记忆空间等待问题",
|
|
355
339
|
"content.queryRequiredText": "输入一个明确查询即可读取 ByteRover 等不提供全量列表的 Provider。",
|
|
356
340
|
"content.showing": "当前显示 {visible} / {total}",
|
|
357
341
|
"content.showMore": "再显示 {count} 条",
|
|
358
342
|
"content.emptyTitle": "没有符合条件的记忆",
|
|
359
|
-
"content.emptyText": "
|
|
343
|
+
"content.emptyText": "清空筛选,或先存入第一条记忆。",
|
|
360
344
|
"nav.spaces": "记忆空间",
|
|
361
345
|
"overview.editSpace": "编辑",
|
|
362
346
|
"overview.editSpaceAria": "编辑{name}",
|
|
@@ -366,7 +350,10 @@ window.__ModuleLoader__.load({
|
|
|
366
350
|
"overview.deleteSpaceAria": "删除{name}",
|
|
367
351
|
"overview.disconnectSpace": "断开",
|
|
368
352
|
"overview.disconnectSpaceAria": "断开{name}",
|
|
369
|
-
"overview.deletingSpace": "删除中…"
|
|
353
|
+
"overview.deletingSpace": "删除中…",
|
|
354
|
+
"common.score": "相关度 {value}",
|
|
355
|
+
"overview.providerEnableHint": "未启用的 Provider 可在“插件 → 可组合记忆”的“记忆空间”页面中启用。",
|
|
356
|
+
"search.citations": "引用"
|
|
370
357
|
};
|
|
371
358
|
var en = {
|
|
372
359
|
"term.space": "Memory Space",
|
|
@@ -382,10 +369,10 @@ window.__ModuleLoader__.load({
|
|
|
382
369
|
"nav.bodies": "Memory Spaces",
|
|
383
370
|
"nav.search": "Recall",
|
|
384
371
|
"nav.entities": "Entities",
|
|
385
|
-
"nav.rememberAction": "
|
|
372
|
+
"nav.rememberAction": "Save to memory",
|
|
386
373
|
"nav.content": "Content",
|
|
387
374
|
"overview.title": "Memory Spaces",
|
|
388
|
-
"overview.description": "
|
|
375
|
+
"overview.description": "Long-term memory held by Mnemon Native or third-party Providers; active spaces take part in recall.",
|
|
389
376
|
"overview.pageDescription": "Create and activate Memory Spaces, then inspect storage health and live relation snapshots across providers.",
|
|
390
377
|
"overview.interval": "Full sync on entry · Click a card to sync on demand",
|
|
391
378
|
"overview.fullSyncPending": "Waiting for the first full sync",
|
|
@@ -394,11 +381,8 @@ window.__ModuleLoader__.load({
|
|
|
394
381
|
"overview.fullSyncMinutes": "Last full sync: {count}m ago",
|
|
395
382
|
"overview.fullSyncHours": "Last full sync: {count}h ago",
|
|
396
383
|
"overview.fullSyncDays": "Last full sync: {count}d ago",
|
|
397
|
-
"overview.syncing": "Syncing…",
|
|
398
|
-
"overview.syncNow": "Sync now",
|
|
399
384
|
"overview.directory": "Memory Space Directory",
|
|
400
|
-
"overview.directory.description": "Each card
|
|
401
|
-
"overview.directory.waiting": "Waiting for directory",
|
|
385
|
+
"overview.directory.description": "Each card is one Memory Space; click it to check the connection, and use its switch to include it in recall.",
|
|
402
386
|
"overview.directory.unsynced": "Directory not synchronized",
|
|
403
387
|
"overview.directory.unsyncedBadge": "Directory pending",
|
|
404
388
|
"overview.directoryLoading": "Loading the Memory Space directory",
|
|
@@ -410,7 +394,7 @@ window.__ModuleLoader__.load({
|
|
|
410
394
|
"overview.reconnectHint": "Click the card to reconnect and synchronize this Memory Space",
|
|
411
395
|
"overview.reconnectAria": "Reconnect {name}",
|
|
412
396
|
"overview.snapshotLoading": "Loading the multi-space live snapshot",
|
|
413
|
-
"overview.metadataAction": "
|
|
397
|
+
"overview.metadataAction": "Tidy names and descriptions",
|
|
414
398
|
"overview.metadataTitle": "Maintain Memory Space metadata with AI",
|
|
415
399
|
"overview.metadataDescription": "Select one or more active Memory Spaces. The system reads a small sample through each Provider’s fastest native path, then gives each space to an independent task Agent for its title and description.",
|
|
416
400
|
"overview.metadataUnavailable": "Temporarily unavailable: no active Agent matches the current memory scope",
|
|
@@ -441,13 +425,13 @@ window.__ModuleLoader__.load({
|
|
|
441
425
|
"overview.noActiveTitle": "No active Memory Spaces",
|
|
442
426
|
"overview.noActiveText": "Enable read access for at least one space to aggregate its live graph here.",
|
|
443
427
|
"overview.noContentTitle": "Active spaces have no content yet",
|
|
444
|
-
"overview.noContentText": "
|
|
428
|
+
"overview.noContentText": "Save memories to see their nodes and relations here.",
|
|
445
429
|
"overview.createTitle": "Create Memory Space",
|
|
446
430
|
"overview.createDialogHint": "Define this Memory Space and choose its provider here. It reuses services, credentials, and global data locations configured on the dsh-mnemon page under Plugins.",
|
|
447
431
|
"overview.createIdentityTitle": "Memory Space details",
|
|
448
432
|
"overview.createIdentityHint": "The name identifies the space; the description guides when the agent writes and recalls it.",
|
|
449
433
|
"overview.createPlacementTitle": "Memory Space provider",
|
|
450
|
-
"overview.createPlacementHint": "This is an explicit manual creation
|
|
434
|
+
"overview.createPlacementHint": "This is an explicit manual creation; choose one enabled Provider. What a task Agent chooses for new spaces is set in Provider for new spaces.",
|
|
451
435
|
"overview.createName": "New Memory Space name",
|
|
452
436
|
"overview.createNamePlaceholder": "Name",
|
|
453
437
|
"overview.createDescription": "New Memory Space description",
|
|
@@ -476,7 +460,7 @@ window.__ModuleLoader__.load({
|
|
|
476
460
|
"overview.capability.exact-write": "Exact writes",
|
|
477
461
|
"overview.capability.forget": "Safe forget",
|
|
478
462
|
"overview.candidateNativeReady": "Official native · follows the active memory scope",
|
|
479
|
-
"overview.providerServiceRequired": "
|
|
463
|
+
"overview.providerServiceRequired": "Off",
|
|
480
464
|
"overview.nativeCliRequired": "Needs the Mnemon CLI on this machine; other providers work without it",
|
|
481
465
|
"overview.workspaceBinding.automatic": "Follows the active memory scope",
|
|
482
466
|
"overview.workspaceBinding.optional-override": "Follows the active scope; global location can be customized",
|
|
@@ -493,21 +477,19 @@ window.__ModuleLoader__.load({
|
|
|
493
477
|
"overview.providerLabel": "Memory engine",
|
|
494
478
|
"overview.nativeOfficial": "Official native",
|
|
495
479
|
"overview.providerNativeHint": "Official native, local-first storage with the full graph and soft-delete semantics",
|
|
496
|
-
"strategy.action": "
|
|
497
|
-
"strategy.title": "
|
|
498
|
-
"strategy.description": "
|
|
480
|
+
"strategy.action": "Provider for new spaces",
|
|
481
|
+
"strategy.title": "Provider for new spaces",
|
|
482
|
+
"strategy.description": "How a task Agent picks a Provider when it creates a Memory Space; existing spaces are still chosen by name and description.",
|
|
499
483
|
"strategy.loading": "Loading Provider directory…",
|
|
500
484
|
"strategy.modeTitle": "Provider selection",
|
|
501
|
-
"strategy.modeHint": "
|
|
485
|
+
"strategy.modeHint": "Applies only to spaces a task Agent creates; you always choose when you create one yourself.",
|
|
502
486
|
"strategy.manualHint": "Fix one Provider; the Agent cannot override it",
|
|
503
487
|
"strategy.automaticHint": "Apply hard rules first, then let the task Agent choose an eligible Provider",
|
|
504
488
|
"strategy.manualTitle": "Fixed Provider",
|
|
505
489
|
"strategy.manualDescription": "When no existing space fits, create the new space on this Provider.",
|
|
506
490
|
"strategy.automaticTitle": "Smart selection rules",
|
|
507
491
|
"strategy.automaticDescription": "The host enforces data and capability rules. The prompt only guides judgment among eligible candidates.",
|
|
508
|
-
"strategy.
|
|
509
|
-
"strategy.taskAgentUnavailable": "Waiting for task Agent",
|
|
510
|
-
"strategy.save": "Save strategy",
|
|
492
|
+
"strategy.save": "Save",
|
|
511
493
|
"strategy.saving": "Saving…",
|
|
512
494
|
"overview.providerOpenVikingHint": "Connect an existing OpenViking service under the same Memory Space workflow",
|
|
513
495
|
"overview.providerSummary.mnemon-native": "Official native, local-first storage with the full graph and soft-delete semantics",
|
|
@@ -625,7 +607,7 @@ window.__ModuleLoader__.load({
|
|
|
625
607
|
"graph.kindSpace": "Memory Space",
|
|
626
608
|
"graph.kindEntity": "Entity",
|
|
627
609
|
"search.title": "Recall Memory",
|
|
628
|
-
"search.description": "
|
|
610
|
+
"search.description": "Search the active Memory Spaces: direct search returns the stored text, an Agent query answers with citations.",
|
|
629
611
|
"search.maxResults": "Up to {count} results",
|
|
630
612
|
"search.placeholder": "Why did we choose SQLite? What release conventions apply?",
|
|
631
613
|
"search.queryAria": "Memory query",
|
|
@@ -652,7 +634,7 @@ window.__ModuleLoader__.load({
|
|
|
652
634
|
"search.noRelated": "No related nodes found within two hops.",
|
|
653
635
|
"search.sourcesTitle": "Search coverage",
|
|
654
636
|
"entities.title": "Entity Explorer",
|
|
655
|
-
"entities.description": "
|
|
637
|
+
"entities.description": "See how entities connect facts, decisions and context.",
|
|
656
638
|
"entities.sourcesTitle": "Entity capability coverage",
|
|
657
639
|
"entities.unsupportedTitle": "No active space exposes an entity index",
|
|
658
640
|
"entities.unsupportedText": "The active providers remain searchable through Recall, but are not presented here as a fabricated entity graph.",
|
|
@@ -670,52 +652,41 @@ window.__ModuleLoader__.load({
|
|
|
670
652
|
"entities.selectText": "The entity view aggregates related memories instead of relying on literal matching.",
|
|
671
653
|
"entities.emptyTitle": "No related memories",
|
|
672
654
|
"entities.emptyText": "Try the full name or another entity alias.",
|
|
673
|
-
"remember.title": "
|
|
674
|
-
"remember.description": "
|
|
655
|
+
"remember.title": "Save to memory",
|
|
656
|
+
"remember.description": "A task Agent decides whether this is worth keeping, removes duplicates, distills it and writes it to the right Memory Space, outside this conversation.",
|
|
675
657
|
"remember.readOnlyTitle": "Read-only mode",
|
|
676
658
|
"remember.readOnlyText": "This deployment disables memory writes. Change and save the DSH Mnemon configuration to enable them.",
|
|
677
|
-
"remember.delegateTitle": "Send to independent task Agent",
|
|
678
|
-
"remember.noSession": "No live session",
|
|
679
|
-
"remember.ready": "Independent task Agent ready",
|
|
680
|
-
"remember.noTaskAgent": "Task Agent unavailable",
|
|
681
|
-
"remember.taskAgentReady": "Task Agent ready",
|
|
682
659
|
"remember.candidate": "Candidate",
|
|
683
|
-
"remember.
|
|
684
|
-
"remember.placeholder": "Enter background, preferences, decisions, or insights worth retaining across tasks. The model decides whether they qualify.",
|
|
660
|
+
"remember.placeholder": "Background, preferences, decisions or conclusions worth keeping.",
|
|
685
661
|
"remember.sessionHint": "No usable model route is available for an independent task Agent.",
|
|
686
662
|
"remember.taskAgentHint": "The Host cannot currently create an isolated task Agent. Refresh status and try again.",
|
|
687
|
-
"remember.processing": "
|
|
688
|
-
"remember.action": "
|
|
689
|
-
"remember.advanced": "Advanced
|
|
690
|
-
"remember.advancedHint": "
|
|
663
|
+
"remember.processing": "Task Agent working…",
|
|
664
|
+
"remember.action": "Send to task Agent",
|
|
665
|
+
"remember.advanced": "Advanced options",
|
|
666
|
+
"remember.advancedHint": "Choose the target space, category and importance",
|
|
691
667
|
"remember.expand": "Expand",
|
|
692
668
|
"remember.target": "Target Memory Space",
|
|
693
669
|
"remember.asyncProviderHint": "This Memory Space waits for remote extraction to settle before returning a truthful write receipt.",
|
|
694
670
|
"remember.entities": "Entities (comma-separated)",
|
|
695
671
|
"remember.tags": "Tags (comma-separated)",
|
|
696
|
-
"remember.advancedText": "
|
|
697
|
-
"remember.saving": "
|
|
698
|
-
"remember.advancedAction": "
|
|
699
|
-
"remember.skipped": "The independent task Agent decided not to write",
|
|
700
|
-
"remember.completed": "The independent task Agent completed processing",
|
|
701
|
-
"remember.processed": "Independent task Agent processed: {action}",
|
|
702
|
-
"remember.dispatchFailed": "Dispatch failed: {error}",
|
|
703
|
-
"remember.saveFailed": "Save failed: {error}",
|
|
672
|
+
"remember.advancedText": "Constraints still go through the task Agent’s duplicate check and receipt.",
|
|
673
|
+
"remember.saving": "Task Agent working…",
|
|
674
|
+
"remember.advancedAction": "Send with constraints",
|
|
704
675
|
"content.title": "Memory Content",
|
|
705
|
-
"content.description": "
|
|
676
|
+
"content.description": "Browse what each Memory Space holds.",
|
|
706
677
|
"content.sourcesTitle": "Provider content models",
|
|
707
678
|
"content.count": "{count} memories",
|
|
708
679
|
"content.filterAria": "Filter memory content",
|
|
709
680
|
"content.filterPlaceholder": "Filter by content or exact ID…",
|
|
710
681
|
"content.categoryAria": "Memory category",
|
|
711
682
|
"content.apply": "Apply filters",
|
|
712
|
-
"content.notice": "
|
|
683
|
+
"content.notice": "Query-only Providers show content once you enter a query.",
|
|
713
684
|
"content.queryRequiredTitle": "Query-only spaces are waiting",
|
|
714
685
|
"content.queryRequiredText": "Enter a focused query to inspect providers such as ByteRover that do not expose a complete list.",
|
|
715
686
|
"content.showing": "Showing {visible} / {total}",
|
|
716
687
|
"content.showMore": "Show {count} more",
|
|
717
688
|
"content.emptyTitle": "No matching memories",
|
|
718
|
-
"content.emptyText": "Clear the filters or
|
|
689
|
+
"content.emptyText": "Clear the filters or save a first memory.",
|
|
719
690
|
"nav.spaces": "Memory Spaces",
|
|
720
691
|
"overview.editSpace": "Edit",
|
|
721
692
|
"overview.editSpaceAria": "Edit {name}",
|
|
@@ -725,11 +696,14 @@ window.__ModuleLoader__.load({
|
|
|
725
696
|
"overview.deleteSpaceAria": "Delete {name}",
|
|
726
697
|
"overview.disconnectSpace": "Disconnect",
|
|
727
698
|
"overview.disconnectSpaceAria": "Disconnect {name}",
|
|
728
|
-
"overview.deletingSpace": "Deleting…"
|
|
699
|
+
"overview.deletingSpace": "Deleting…",
|
|
700
|
+
"common.score": "Score {value}",
|
|
701
|
+
"overview.providerEnableHint": "Turn on more Providers on Memory Spaces’ page under Plugins → dsh-mnemon.",
|
|
702
|
+
"search.citations": "Cites"
|
|
729
703
|
};
|
|
730
704
|
//#endregion
|
|
731
705
|
//#region \0source-css:/home/runner/work/dsh-mnemon/dsh-mnemon/plugins/dsh-mnemon-source-memory-spaces/presentation/page.module.css.mjs
|
|
732
|
-
const css$2 = ".IIa07q_entityHeading>span,.IIa07q_inspectorHeading>span{color:var(--mn-faint);font-size:12px;font-weight:500;line-height:18px}.IIa07q_memoryHeaderActions{align-items:center;gap:8px;display:flex}.IIa07q_memoryHeaderActions>button{white-space:nowrap}.IIa07q_asyncRegion{min-width:0;position:relative}.IIa07q_asyncResults{min-width:0;min-height:120px;position:relative}.IIa07q_asyncPlaceholder{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);min-height:220px;color:var(--mn-faint);place-items:center;display:grid;position:relative}.IIa07q_muted{color:var(--mn-faint);padding:16px 0;font-size:13px}.IIa07q_readSources{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);gap:8px;margin:0 0 16px;padding:12px 14px;display:grid}.IIa07q_readSources>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.IIa07q_readSources>header>div{gap:2px;display:grid}.IIa07q_readSources>header strong{font-size:13px;font-weight:500;line-height:20px}.IIa07q_readSources>header p{max-width:92ch;color:var(--mn-faint);margin:0;font-size:12px;line-height:18px}.IIa07q_readSources>header>button{border:.5px solid var(--mn-line-strong);border-radius:var(--dsw-radius-sm);min-height:28px;color:var(--mn-text);cursor:pointer;background:0 0;flex:none;padding:0 10px;font-size:12px;line-height:18px}.IIa07q_readSources>header>button:hover{background:var(--mn-hover)}.IIa07q_readSources>header>button[data-selected]{background:var(--mn-fill);border-color:#0000}.IIa07q_readSources>div{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:8px;display:grid}.IIa07q_readSourceCard,.IIa07q_bodyCard,.IIa07q_metadataList>label{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-md);color:var(--mn-text);background:0 0}.IIa07q_readSourceCard{text-align:left;grid-template-columns:6px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;min-height:56px;padding:8px 10px 8px 12px;display:grid}button.IIa07q_readSourceCard{cursor:pointer}button.IIa07q_readSourceCard:hover{background:var(--mn-hover)}.IIa07q_readSourceCard[data-selected]{border-color:var(--mn-field-line);background:var(--mn-fill)}.IIa07q_readSourceSignal{background:var(--mn-success);border-radius:50%;width:6px;height:6px}.IIa07q_readSourceCard[data-mode=projection] .IIa07q_readSourceSignal,.IIa07q_readSourceCard[data-mode=enumerable] .IIa07q_readSourceSignal{background:var(--mn-success)}.IIa07q_readSourceCard[data-mode=query-only] .IIa07q_readSourceSignal{background:var(--mn-warn)}.IIa07q_readSourceCard[data-status=unavailable] .IIa07q_readSourceSignal{background:var(--mn-danger)}.IIa07q_readSourceCard[data-status=unsupported] .IIa07q_readSourceSignal,.IIa07q_readSourceCard[data-status=empty] .IIa07q_readSourceSignal{background:var(--mn-idle)}.IIa07q_readSourceCard[data-status=unsupported]{color:var(--mn-faint)}.IIa07q_readSourceIdentity,.IIa07q_readSourceState{gap:2px;min-width:0;display:grid}.IIa07q_readSourceIdentity strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:20px;overflow:hidden}.IIa07q_readSourceMeta{align-items:center;gap:6px;min-width:0;display:flex}.IIa07q_readSourceMeta>small{color:var(--mn-faint);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:18px;overflow:hidden}.IIa07q_readSourceState{text-align:right;justify-items:end}.IIa07q_readSourceState em{width:fit-content;color:var(--mn-muted);background:var(--mn-fill);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:11px;font-style:normal;font-weight:500;line-height:17px}.IIa07q_readSourceCard[data-status=unsupported] .IIa07q_readSourceState em{border:.5px solid var(--mn-field-line);color:var(--mn-faint);background:0 0}.IIa07q_readSourceState small{color:var(--mn-faint);white-space:nowrap;font-size:11px;line-height:14px}.IIa07q_bodyDirectory{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);margin-bottom:12px;padding:16px;position:relative}.IIa07q_bodyDirectoryHeader{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.IIa07q_bodyDirectoryHeader>div:first-child{flex:260px;min-width:0}.IIa07q_bodyDirectoryHeader h3{margin:0;font-size:13px;font-weight:500;line-height:20px}.IIa07q_bodyDirectoryHeader p{color:var(--mn-faint);margin:2px 0 0;font-size:12px;line-height:18px}.IIa07q_bodyDirectoryPath{max-width:100%;color:var(--mn-faint);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11px;line-height:16px;display:block;overflow:hidden}.IIa07q_bodyDirectoryControls{flex:none;justify-content:flex-end;align-items:center;gap:8px;padding-right:28px;display:flex}.IIa07q_bodyDirectoryControls>strong{color:var(--mn-muted);background:var(--mn-fill);font-variant-numeric:tabular-nums;border-radius:999px;flex:none;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_bodyGrid{grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:8px;display:grid}.IIa07q_bodyDirectoryEmpty{border-radius:var(--dsw-radius-md);min-height:96px;color:var(--mn-muted);background:var(--mn-fill);grid-column:1/-1;justify-content:center;align-items:center;gap:12px;display:flex}.IIa07q_bodyDirectoryEmpty>span{color:var(--mn-faint);font-size:24px}.IIa07q_bodyDirectoryEmpty strong{color:var(--mn-text);font-weight:500;display:block}.IIa07q_bodyDirectoryEmpty p{color:var(--mn-faint);margin:2px 0 0;font-size:12px}.IIa07q_bodyCard{--mn-body-accent:var(--mn-success);min-width:0;padding:12px 14px;transition:border-color .16s,background-color .16s}.IIa07q_bodyCard:not([data-active]){background:var(--mn-fill);border-color:#0000}.IIa07q_bodyCard[data-reconnectable]{cursor:pointer}.IIa07q_bodyCard[data-reconnectable]:hover{border-color:var(--mn-field-line)}.IIa07q_bodyCard[data-reconnectable]:focus-visible{outline:var(--dsw-focus-ring-width,2px) solid var(--mn-focus);outline-offset:2px}.IIa07q_bodySignal{background:var(--mn-idle);border-radius:50%;width:6px;height:6px}.IIa07q_bodyCard[data-active] .IIa07q_bodySignal{background:var(--mn-body-accent)}.IIa07q_bodyCard:not([data-healthy]) .IIa07q_bodySignal{background:var(--mn-danger)}.IIa07q_bodyCard[data-status-loading] .IIa07q_bodySignal{background:var(--mn-idle)}.IIa07q_bodyCard[data-reconnecting] .IIa07q_bodySignal{box-sizing:border-box;border:1.5px solid color-mix(in srgb, var(--mn-faint) 25%, transparent);border-top-color:var(--mn-faint);background:0 0;width:8px;height:8px;animation:.9s linear infinite IIa07q_mnemon-spin}.IIa07q_bodyHealth{color:var(--mn-success);font-size:12px;line-height:18px}.IIa07q_bodyCard:not([data-healthy]) .IIa07q_bodyHealth{color:var(--mn-danger)}.IIa07q_bodyCard[data-status-loading] .IIa07q_bodyHealth{color:var(--mn-faint)}.IIa07q_mnemonDefaultBadge{width:fit-content;color:var(--mn-accent);background:color-mix(in srgb, var(--mn-accent) 10%, transparent);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_providerBadge{width:fit-content;max-width:100%;color:var(--mn-muted);background:var(--mn-fill);text-align:center;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px;display:inline-flex;overflow:hidden}.IIa07q_providerBadge,.IIa07q_readSourceCard,.IIa07q_bodyCard,.IIa07q_metadataList>label,.IIa07q_graphNode,.IIa07q_providerBadge[data-provider=mnemon-native],.IIa07q_readSourceCard[data-provider=mnemon-native],.IIa07q_bodyCard[data-provider=mnemon-native],.IIa07q_metadataList>label[data-provider=mnemon-native],.IIa07q_graphNode[data-provider=mnemon-native]{--mn-provider-color:#64748b}.IIa07q_providerBadge[data-provider=openviking],.IIa07q_readSourceCard[data-provider=openviking],.IIa07q_bodyCard[data-provider=openviking],.IIa07q_metadataList>label[data-provider=openviking],.IIa07q_graphNode[data-provider=openviking]{--mn-provider-color:#3b82d0}.IIa07q_providerBadge[data-provider=honcho],.IIa07q_readSourceCard[data-provider=honcho],.IIa07q_bodyCard[data-provider=honcho],.IIa07q_metadataList>label[data-provider=honcho],.IIa07q_graphNode[data-provider=honcho]{--mn-provider-color:#c44fcf}.IIa07q_providerBadge[data-provider=mem0],.IIa07q_readSourceCard[data-provider=mem0],.IIa07q_bodyCard[data-provider=mem0],.IIa07q_metadataList>label[data-provider=mem0],.IIa07q_graphNode[data-provider=mem0]{--mn-provider-color:#8b5cf6}.IIa07q_providerBadge[data-provider=hindsight],.IIa07q_readSourceCard[data-provider=hindsight],.IIa07q_bodyCard[data-provider=hindsight],.IIa07q_metadataList>label[data-provider=hindsight],.IIa07q_graphNode[data-provider=hindsight]{--mn-provider-color:#0891b2}.IIa07q_providerBadge[data-provider=holographic],.IIa07q_readSourceCard[data-provider=holographic],.IIa07q_bodyCard[data-provider=holographic],.IIa07q_metadataList>label[data-provider=holographic],.IIa07q_graphNode[data-provider=holographic]{--mn-provider-color:#6366d9}.IIa07q_providerBadge[data-provider=retaindb],.IIa07q_readSourceCard[data-provider=retaindb],.IIa07q_bodyCard[data-provider=retaindb],.IIa07q_metadataList>label[data-provider=retaindb],.IIa07q_graphNode[data-provider=retaindb]{--mn-provider-color:#d08a28}.IIa07q_providerBadge[data-provider=byterover],.IIa07q_readSourceCard[data-provider=byterover],.IIa07q_bodyCard[data-provider=byterover],.IIa07q_metadataList>label[data-provider=byterover],.IIa07q_graphNode[data-provider=byterover]{--mn-provider-color:#0f9a83}.IIa07q_providerBadge[data-provider=supermemory],.IIa07q_readSourceCard[data-provider=supermemory],.IIa07q_bodyCard[data-provider=supermemory],.IIa07q_metadataList>label[data-provider=supermemory],.IIa07q_graphNode[data-provider=supermemory]{--mn-provider-color:#df4d72}.IIa07q_bodySwitch{min-height:28px;color:var(--mn-faint);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:12px;line-height:18px;display:flex}.IIa07q_bodySwitchTrack{box-sizing:border-box;background:var(--mn-line-strong);border-radius:999px;flex:none;width:36px;height:20px;padding:2px;transition:background-color .12s;position:relative}.IIa07q_bodySwitchTrack i{background:var(--dsw-alias-label-primary-foreground);border-radius:50%;width:16px;height:16px;transition:transform .12s;display:block}.IIa07q_bodySwitch:hover,.IIa07q_bodySwitch[aria-checked=true]{color:var(--mn-muted)}.IIa07q_bodySwitch[aria-checked=true] .IIa07q_bodySwitchTrack{background:var(--dsw-alias-brand-primary)}.IIa07q_bodySwitch[aria-checked=true] .IIa07q_bodySwitchTrack i{transform:translate(16px)}.IIa07q_bodyCardActions{align-items:center;gap:8px;display:flex}.IIa07q_bodyCreateForm{gap:16px;padding-top:0}.IIa07q_createSection{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);gap:12px;padding:14px 16px;display:grid}.IIa07q_createSectionHeading{align-items:flex-start;gap:10px;display:flex}.IIa07q_createSectionHeading>span{min-width:22px;height:22px;color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;flex:none;place-items:center;padding:0 6px;font-size:11px;font-weight:500;line-height:1;display:grid}.IIa07q_createSectionHeading>div{gap:2px;min-width:0;display:grid}.IIa07q_createSectionHeading strong{color:var(--mn-text);font-size:14px;font-weight:500;line-height:22px}.IIa07q_createSectionHeading small{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_createIdentityGrid{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:12px;display:grid}.IIa07q_createIdentityGrid>label{align-content:start}.IIa07q_createIdentityGrid textarea{min-height:72px}.IIa07q_strategyForm{gap:16px;padding-top:0}.IIa07q_strategyLoading{border-radius:var(--dsw-radius-md);min-height:88px;color:var(--mn-faint);background:var(--mn-fill);justify-content:center;align-items:center;font-size:12px;display:flex;position:relative}.IIa07q_strategyLoading .IIa07q_sectionSpinner{top:10px;right:10px}.IIa07q_placementMode{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;display:grid}.IIa07q_placementMode legend{color:var(--mn-muted);margin-bottom:6px;font-size:12px;font-weight:500;line-height:18px}.IIa07q_placementMode label{border:.5px solid var(--mn-line-strong);border-radius:var(--dsw-radius-md);cursor:pointer;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:12px;display:grid;position:relative}.IIa07q_placementMode label:hover{background:var(--mn-hover)}.IIa07q_placementMode label[data-selected]{border-color:var(--mn-field-line);background:var(--mn-fill)}.IIa07q_placementMode label[data-disabled]{cursor:not-allowed;opacity:.5}.IIa07q_placementMode input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.IIa07q_placementMode span{gap:2px;display:grid}.IIa07q_placementMode strong{color:var(--mn-text);font-size:13px;font-weight:500;line-height:20px}.IIa07q_placementMode strong em{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;margin-left:6px;padding:1px 8px;font-size:11px;font-style:normal;font-weight:500;line-height:17px}.IIa07q_placementMode small{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_placementPolicy{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-md);gap:10px;margin:0;padding:12px 14px;display:grid}.IIa07q_placementPolicyHeading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.IIa07q_placementPolicyHeading>div{gap:2px;display:grid}.IIa07q_placementPolicyHeading strong{font-size:13px;font-weight:500;line-height:20px}.IIa07q_placementPolicyHeading small{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_placementPolicyHeading>span{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;flex:none;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_placementRuleGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.IIa07q_capabilityRules{border:0;flex-wrap:wrap;gap:6px;margin:0;padding:0;display:flex}.IIa07q_capabilityRules legend{width:100%;color:var(--mn-faint);margin-bottom:4px;font-size:12px;line-height:18px}.IIa07q_capabilityRules label{border:.5px solid var(--mn-line-strong);border-radius:var(--dsw-radius-sm);width:fit-content;min-height:28px;color:var(--mn-muted);cursor:pointer;align-items:center;gap:6px;padding:0 10px;font-size:12px;display:flex;position:relative}.IIa07q_capabilityRules label:hover{background:var(--mn-hover)}.IIa07q_capabilityRules label[data-selected]{border-color:var(--mn-field-line);color:var(--mn-text);background:var(--mn-fill)}.IIa07q_capabilityRules input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.IIa07q_placementCandidates{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.IIa07q_placementCandidates>span,.IIa07q_placementCandidates>label{border:.5px solid var(--mn-line-strong);border-radius:var(--dsw-radius-md);grid-template-columns:28px minmax(0,1fr) 16px;align-items:center;gap:10px;min-width:0;padding:8px 10px;display:grid;position:relative}.IIa07q_placementCandidates>label{cursor:pointer}.IIa07q_placementCandidates>label:hover{background:var(--mn-hover)}.IIa07q_placementCandidates>[data-selected]{border-color:var(--mn-field-line);background:var(--mn-fill)}.IIa07q_placementCandidates>label[data-disabled]{cursor:not-allowed;opacity:.5}.IIa07q_placementCandidates input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.IIa07q_placementCandidates>span>span:not(.IIa07q_candidateIcon),.IIa07q_placementCandidates>label>span:not(.IIa07q_candidateIcon){gap:2px;min-width:0;display:grid}.IIa07q_placementCandidates strong{color:var(--mn-text);font-size:13px;font-weight:500;line-height:20px}.IIa07q_placementCandidates small{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_providerChoice{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;display:grid}.IIa07q_providerChoice legend{color:var(--mn-muted);margin-bottom:6px;font-size:12px;font-weight:500;line-height:18px}.IIa07q_providerChoice label{border:.5px solid var(--mn-line-strong);border-radius:var(--dsw-radius-md);cursor:pointer;grid-template-columns:32px minmax(0,1fr) 16px;align-items:center;gap:10px;min-width:0;padding:10px 12px;display:grid;position:relative}.IIa07q_providerChoice label:hover{background:var(--mn-hover)}.IIa07q_providerChoice label[data-native]{grid-column:1/-1}.IIa07q_providerChoice label[data-selected]{border-color:var(--mn-field-line);background:var(--mn-fill)}.IIa07q_providerChoice label[data-disabled]{cursor:not-allowed;opacity:.5}.IIa07q_providerChoice input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.IIa07q_providerChoice span{gap:2px;display:grid}.IIa07q_providerChoice strong{color:var(--mn-text);font-size:13px;font-weight:500;line-height:20px}.IIa07q_providerChoice strong em{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;margin-left:6px;padding:1px 8px;font-size:11px;font-style:normal;font-weight:500;line-height:17px}.IIa07q_providerChoice label[data-selected] strong em{background:var(--mn-layer-1)}.IIa07q_providerChoice small{color:var(--mn-faint);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:18px;display:-webkit-box;overflow:hidden}.IIa07q_providerChoiceIcon,.IIa07q_candidateIcon,.IIa07q_providerFieldIcon{box-sizing:border-box;border:.5px solid var(--mn-line-strong);background:var(--mn-layer-1);place-items:center;display:grid;overflow:hidden}.IIa07q_providerChoiceIcon{border-radius:var(--dsw-radius-sm);width:32px;height:32px;padding:4px}.IIa07q_candidateIcon{border-radius:var(--dsw-radius-sm);width:28px;height:28px;padding:4px}.IIa07q_providerFieldIcon{border-radius:var(--dsw-radius-sm);flex:none;width:32px;height:32px;padding:4px}.IIa07q_providerChoiceIcon>img,.IIa07q_providerChoiceIcon>svg,.IIa07q_candidateIcon>img,.IIa07q_candidateIcon>svg,.IIa07q_providerFieldIcon>img,.IIa07q_providerFieldIcon>svg{object-fit:contain;border-radius:4px;width:100%;height:100%;display:block}.IIa07q_choiceControl{box-sizing:border-box;border:1px solid var(--mn-field-line);background:var(--mn-layer-1);border-radius:4px;flex:none;place-items:center;width:16px;height:16px;display:grid;position:relative}.IIa07q_choiceControl[data-kind=radio]{border-radius:50%}[data-selected]>.IIa07q_choiceControl{border-color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-brand-primary)}[data-selected]>.IIa07q_choiceControl[data-kind=check]:after{border-bottom:1.5px solid var(--dsw-alias-label-primary-foreground);border-left:1.5px solid var(--dsw-alias-label-primary-foreground);content:\"\";width:7px;height:4px;transform:translateY(-1px)rotate(-45deg)}[data-selected]>.IIa07q_choiceControl[data-kind=radio]:after{content:\"\";background:var(--dsw-alias-label-primary-foreground);border-radius:50%;width:6px;height:6px}.IIa07q_placementMode label:has(input:focus-visible),.IIa07q_providerChoice label:has(input:focus-visible),.IIa07q_capabilityRules label:has(input:focus-visible),.IIa07q_placementCandidates label:has(input:focus-visible){outline:var(--dsw-focus-ring-width,2px) solid var(--mn-focus);outline-offset:1px}.IIa07q_providerFields{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-md);gap:10px;padding:12px 14px;display:grid}.IIa07q_providerFieldHeading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.IIa07q_providerFieldIdentity{align-items:center;gap:10px;min-width:0;display:flex}.IIa07q_providerFieldIdentity>div{gap:2px;min-width:0;display:grid}.IIa07q_providerFieldHeading strong{color:var(--mn-text);font-size:13px;font-weight:500;line-height:20px}.IIa07q_providerFieldHeading small{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_providerFieldHeading>span{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;flex:none;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_providerFields details{min-width:0}.IIa07q_providerFields summary{width:fit-content;color:var(--mn-muted);cursor:pointer;font-size:12px;line-height:18px}.IIa07q_providerFields summary:hover{color:var(--mn-text)}.IIa07q_providerAdvancedGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:8px;display:grid}.IIa07q_providerFieldControl .IIa07q_providerSecretClear{color:var(--mn-muted);cursor:pointer;align-items:center;gap:6px;font-size:12px;font-weight:400;display:flex}.IIa07q_providerWriteHint{color:var(--mn-faint);margin-top:4px;font-size:12px;line-height:18px;display:block}.IIa07q_placementReceipt{border-radius:var(--dsw-radius-sm);min-width:0;color:var(--mn-muted);background:var(--mn-fill);align-items:flex-start;gap:8px;margin:8px 0;padding:8px 10px;display:flex}.IIa07q_placementReceipt>span{flex:none;font-size:12px}.IIa07q_placementReceipt>div{grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;min-width:0;display:grid}.IIa07q_placementReceipt strong,.IIa07q_placementReceipt small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.IIa07q_placementReceipt strong{color:var(--mn-text);font-size:12px;font-weight:500;line-height:18px}.IIa07q_placementReceipt small{color:var(--mn-faint);font-size:11px;line-height:18px}.IIa07q_placementReceipt p{color:var(--mn-faint);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;margin:0;font-size:12px;line-height:18px;overflow:hidden}.IIa07q_bodyCard>p{min-height:18px;color:var(--mn-muted);margin:8px 0;font-size:13px;line-height:20px}.IIa07q_bodyCard footer{border-top:.5px solid var(--mn-line);min-width:0;color:var(--mn-faint);flex-wrap:nowrap;gap:4px 12px;padding-top:8px;font-size:12px;line-height:18px;display:flex;overflow:hidden}.IIa07q_bodyFooterBlock{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;display:block;overflow:hidden}.IIa07q_bodyFooterGrow{flex:auto}.IIa07q_graphLayout{grid-template-columns:minmax(0,1fr) minmax(240px,280px);gap:12px;display:grid}.IIa07q_graphPanel,.IIa07q_graphInspector{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg)}.IIa07q_graphPanel{min-width:0;position:relative;overflow:hidden}.IIa07q_graphToolbar,.IIa07q_graphFooter{min-height:44px;color:var(--mn-faint);justify-content:space-between;align-items:center;gap:16px;padding:0 14px;font-size:12px;line-height:18px;display:flex}.IIa07q_graphToolbar{border-bottom:.5px solid var(--mn-line)}.IIa07q_graphToolbar>div:first-child{align-items:center;gap:8px;display:flex}.IIa07q_graphToolbar small{color:var(--mn-faint)}.IIa07q_liveDot{background:var(--mn-success);border-radius:50%;width:6px;height:6px}.IIa07q_graphLegend{flex-wrap:wrap;justify-content:flex-end;gap:4px 12px;display:flex}.IIa07q_graphLegend span{align-items:center;gap:6px;display:flex}.IIa07q_graphLegend span:before{content:\"\";background:var(--edge-color);border-radius:2px;width:14px;height:2px}.IIa07q_graphLegend [data-edge=temporal]{--edge-color:#87909f}.IIa07q_graphLegend [data-edge=scope]{--edge-color:#708199}.IIa07q_graphLegend [data-edge=scope]:before{background:repeating-linear-gradient(90deg, var(--edge-color) 0 4px, transparent 4px 7px)}.IIa07q_graphLegend [data-edge=semantic]{--edge-color:#4d7cfe}.IIa07q_graphLegend [data-edge=causal]{--edge-color:#ef6b5b}.IIa07q_graphLegend [data-edge=entity]{--edge-color:#22a879}.IIa07q_graphViewport{min-height:clamp(390px,42vw,560px);position:relative;overflow:hidden}.IIa07q_graphCanvasControls{z-index:2;border-radius:var(--dsw-radius-md);background:var(--dsw-specific-menu,var(--mn-layer-2));box-shadow:var(--dsw-elevation-soft);backdrop-filter:var(--dsw-menu-backdrop-filter);align-items:center;gap:4px;padding:4px;display:flex;position:absolute;top:10px;right:10px}.IIa07q_graphCanvasControls span{color:var(--mn-faint);align-items:center;gap:6px;padding:0 6px;font-size:12px;display:flex}.IIa07q_graphCanvasControls span i{background:var(--mn-accent);border-radius:50%;width:6px;height:6px}.IIa07q_graphCanvasControls button{border-radius:var(--dsw-radius-sm);min-height:28px;color:var(--mn-muted);cursor:pointer;background:0 0;border:0;padding:0 10px;font-size:12px}.IIa07q_graphCanvasControls button:hover{color:var(--mn-text);background:var(--mn-hover)}.IIa07q_graphCanvasControls button[data-active]{color:var(--mn-text);background:var(--mn-fill)}.IIa07q_graphSvg{touch-action:pan-y pinch-zoom;user-select:none;width:100%;height:clamp(390px,42vw,560px);display:block}.IIa07q_graphBackdrop{fill:var(--mn-layer-1)}.IIa07q_graphGridLine{stroke:var(--mn-line);stroke-width:.6px;opacity:.5}.IIa07q_graphEdge{fill:none;stroke:#87909f;stroke-width:1px;opacity:.32;vector-effect:non-scaling-stroke}.IIa07q_graphEdge[data-edge=scope]{stroke:#708199;stroke-dasharray:4 5;opacity:.28}.IIa07q_graphEdge[data-edge=semantic]{stroke:#4d7cfe;opacity:.48}.IIa07q_graphEdge[data-edge=causal]{stroke:#ef6b5b;opacity:.52}.IIa07q_graphEdge[data-edge=entity]{stroke:#22a879;stroke-width:1.45px;opacity:.78}.IIa07q_graphNode{--node:#8290a8;cursor:grab;touch-action:none;outline:none}.IIa07q_graphNode[data-dragging]{cursor:grabbing}.IIa07q_graphNode[data-category=decision]{--node:#ef8354}.IIa07q_graphNode[data-category=preference]{--node:#a879e1}.IIa07q_graphNode[data-category=fact]{--node:#4d7cfe}.IIa07q_graphNode[data-category=insight]{--node:#19a77d}.IIa07q_graphNode[data-category=context]{--node:#d8a624}.IIa07q_graphNode[data-kind=space]{--node:var(--mn-provider-color)}.IIa07q_graphNode[data-kind=entity]{--node:#2b9db9}.IIa07q_nodeHalo{fill:color-mix(in srgb, var(--node) 18%, var(--mn-layer-1));stroke:color-mix(in srgb, var(--node) 60%, var(--mn-layer-1));stroke-width:1.5px;transition:r .16s}.IIa07q_nodeCore{fill:var(--node)}.IIa07q_nodeLabel{fill:var(--mn-muted);font:11px var(--mn-sans);pointer-events:auto}.IIa07q_nodeBodyLabel{fill:var(--mn-faint);font:500 11px var(--mn-sans);pointer-events:auto}.IIa07q_graphSvg[data-density=sparse] .IIa07q_nodeLabel{font-size:12px}.IIa07q_graphNode:hover .IIa07q_nodeHalo,.IIa07q_graphNode:focus .IIa07q_nodeHalo,.IIa07q_graphNode[data-selected] .IIa07q_nodeHalo{fill:color-mix(in srgb, var(--node) 28%, var(--mn-layer-1));stroke:var(--node)}.IIa07q_graphNode[data-selected] .IIa07q_nodeLabel{fill:var(--mn-text);font-weight:500}.IIa07q_graphFooter{border-top:.5px solid var(--mn-line);min-height:40px;color:var(--mn-faint)}.IIa07q_graphInspector{min-width:0;min-height:calc(clamp(390px,42vw,560px) + 84px);padding:16px;overflow:hidden}.IIa07q_inspectorEmpty{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}.IIa07q_inspectorLogo{border-radius:var(--dsw-radius-lg);opacity:.72;width:48px;height:48px;margin-bottom:12px}.IIa07q_inspectorEmpty h3{margin:6px 0 2px;font-size:14px;font-weight:500;line-height:22px}.IIa07q_inspectorEmpty p{color:var(--mn-faint);margin:0;font-size:12px;line-height:18px}.IIa07q_inspectorHeading{justify-content:space-between;align-items:center;display:flex}.IIa07q_inspectorHeading button{border-radius:var(--dsw-radius-sm);width:28px;height:28px;color:var(--mn-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.IIa07q_inspectorHeading button:hover{background:var(--mn-hover)}.IIa07q_inspectorChips{flex-wrap:wrap;align-items:center;gap:6px;margin-top:20px;display:flex}.IIa07q_categoryChip{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px;display:inline-flex}.IIa07q_inspectorTitleRow{align-items:flex-start;gap:8px;min-width:0;margin:12px 0 20px;display:flex}.IIa07q_inspectorTitle{overflow-wrap:anywhere;white-space:pre-wrap;-webkit-line-clamp:6;-webkit-box-orient:vertical;flex:1;min-width:0;margin:0;font-size:14px;font-weight:400;line-height:22px;display:-webkit-box;overflow:hidden}.IIa07q_inspectorEye{border:.5px solid var(--mn-line-strong);border-radius:var(--dsw-radius-sm);width:28px;height:28px;color:var(--mn-muted);cursor:pointer;background:0 0;flex:none;place-items:center;transition:color .15s,background-color .15s;display:grid}.IIa07q_inspectorEye:hover{color:var(--mn-text);background:var(--mn-hover)}.IIa07q_inspectorMeta{margin:0}.IIa07q_inspectorMeta>div{border-top:.5px solid var(--mn-line);gap:2px;padding:10px 0;display:grid}.IIa07q_inspectorMeta dt{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_inspectorMeta dd{overflow-wrap:anywhere;color:var(--mn-muted);margin:0;font-size:13px;line-height:20px}.IIa07q_inspectorActions{gap:8px;margin-top:20px;display:grid}.IIa07q_previewContent{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--mn-text);margin:0;font-size:14px;line-height:22px}.IIa07q_searchBar{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);margin-bottom:16px;padding:14px}.IIa07q_queryField{border:.5px solid var(--mn-field-line);border-radius:var(--dsw-radius-md);background:var(--mn-input);grid-template-columns:20px minmax(0,1fr) 24px;align-items:center;gap:6px;padding:0 12px;display:grid}.IIa07q_queryField:focus-within{border-color:var(--mn-accent)}.IIa07q_queryField>span{color:var(--mn-faint);font-size:15px;line-height:1}.IIa07q_queryField input{background:0 0;border:0;outline:0;width:100%;height:40px;font-size:14px}.IIa07q_queryField input::placeholder{color:var(--dsw-alias-label-dimmed)}.IIa07q_queryField kbd{color:var(--mn-caption);font:12px var(--mn-sans)}.IIa07q_searchControls{justify-content:flex-end;align-items:flex-end;gap:12px;padding-top:12px;display:flex}.IIa07q_searchActions{align-items:center;gap:8px;display:flex}.IIa07q_agentAnswer{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);margin-bottom:16px;padding:16px}.IIa07q_agentAnswerHeading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.IIa07q_agentAnswerHeading span{color:var(--mn-faint);font-size:12px;font-weight:500;line-height:18px}.IIa07q_agentAnswerHeading h3{margin:2px 0 0;font-size:14px;font-weight:500;line-height:22px}.IIa07q_agentAnswerHeading>code{color:var(--mn-faint);font-size:11px}.IIa07q_agentAnswer>p{white-space:pre-wrap;color:var(--mn-text);margin:12px 0;font-size:14px;line-height:22px}.IIa07q_agentCitations{border-top:.5px solid var(--mn-line);flex-wrap:wrap;gap:6px;padding-top:10px;display:flex}.IIa07q_agentCitations code{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;padding:1px 8px;font-size:11px;line-height:17px}.IIa07q_searchControls label,.IIa07q_fieldWide{color:var(--mn-muted);gap:6px;font-size:12px;font-weight:500;line-height:18px;display:grid}.IIa07q_searchControls select,.IIa07q_listToolbar input,.IIa07q_listToolbar select,.IIa07q_entitySearch input{border:.5px solid var(--mn-field-line);border-radius:var(--dsw-radius-md);min-width:140px;height:32px;color:var(--mn-text);background:var(--mn-input);outline:0;padding:0 10px;font-size:13px;font-weight:400}.IIa07q_searchControls select:focus,.IIa07q_listToolbar input:focus,.IIa07q_listToolbar select:focus,.IIa07q_entitySearch input:focus,.IIa07q_supervisedForm textarea:focus{border-color:var(--mn-accent)}.IIa07q_singleColumn{max-width:830px}.IIa07q_resultLayout{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:start;gap:16px;display:grid}.IIa07q_results,.IIa07q_relatedPane,.IIa07q_entityResults{min-width:0}.IIa07q_relatedPane{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);-webkit-overflow-scrolling:touch;max-height:calc(100dvh - 230px);padding:14px;scroll-margin-top:14px;position:sticky;top:12px;overflow:auto}.IIa07q_relatedSource{border-radius:var(--dsw-radius-sm);color:var(--mn-muted);background:var(--mn-fill);margin:0 0 12px;padding:10px 12px;font-size:13px;line-height:20px}.IIa07q_insightCard{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);min-width:0;margin-bottom:8px;padding:14px 16px;transition:background-color .15s}.IIa07q_insightCard:hover{background:color-mix(in srgb, var(--mn-hover) 50%, transparent)}.IIa07q_cardTop{justify-content:space-between;align-items:center;gap:12px;display:flex}.IIa07q_badges,.IIa07q_tags,.IIa07q_entities{flex-wrap:wrap;gap:6px;display:flex}.IIa07q_badge{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_id{color:var(--mn-faint);font-size:11px}.IIa07q_content{white-space:pre-wrap;overflow-wrap:anywhere;margin:10px 0;font-size:14px;line-height:22px}.IIa07q_tags{color:var(--mn-accent);font-size:12px;line-height:18px}.IIa07q_entities{margin-top:8px}.IIa07q_entities span{border:.5px solid var(--mn-field-line);color:var(--mn-faint);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_cardActions{border-top:.5px solid var(--mn-line);justify-content:flex-end;align-items:center;gap:4px;min-height:32px;margin-top:10px;padding-top:8px;display:flex}.IIa07q_entityLayout{grid-template-columns:264px minmax(0,1fr);align-items:start;gap:16px;display:grid}.IIa07q_entityRail{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);padding:12px;position:sticky;top:0}.IIa07q_entitySearch{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.IIa07q_entitySearch input{min-width:0}.IIa07q_entityHeading{justify-content:space-between;align-items:center;margin:16px 4px 6px;display:flex}.IIa07q_entityHeading small{color:var(--mn-faint);font-size:12px}.IIa07q_entityList{gap:2px;display:grid}.IIa07q_entityList button{border-radius:var(--dsw-radius-sm);min-height:32px;color:var(--mn-muted);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:0 10px;display:flex}.IIa07q_entityList button:hover,.IIa07q_entityList button[aria-pressed=true]{color:var(--mn-text);background:var(--mn-hover)}.IIa07q_entityList button[aria-pressed=true]{background:var(--mn-fill)}.IIa07q_entityList button>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.IIa07q_entityList strong{color:var(--mn-faint);font-variant-numeric:tabular-nums;flex:none;font-size:12px;font-weight:400}.IIa07q_entityResults>.IIa07q_emptyState{min-height:360px}.IIa07q_supervisedComposer{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);overflow:hidden}.IIa07q_supervisedForm{padding:16px}.IIa07q_supervisedHeading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.IIa07q_supervisedHeading h3{margin:2px 0 0;font-size:16px;font-weight:500;line-height:24px}.IIa07q_sessionReady,.IIa07q_sessionMissing{border-radius:999px;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_sessionReady{color:var(--mn-success);background:color-mix(in srgb, var(--mn-success) 10%, transparent)}.IIa07q_sessionMissing{color:var(--mn-danger);background:color-mix(in srgb, var(--mn-danger) 10%, transparent)}.IIa07q_supervisedForm textarea{resize:vertical;border:.5px solid var(--mn-field-line);border-radius:var(--dsw-radius-md);width:100%;color:var(--mn-text);background:var(--mn-input);outline:0;padding:10px 12px;font-size:14px;line-height:22px}.IIa07q_sessionHint{color:var(--mn-danger);margin:8px 0 0;font-size:12px;line-height:18px}.IIa07q_fieldWide{grid-column:1/-1}.IIa07q_advancedWrite{border-top:.5px solid var(--mn-line)}.IIa07q_advancedWrite summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:10px 16px;list-style:none;display:flex}.IIa07q_advancedWrite summary:hover{background:var(--mn-hover)}.IIa07q_advancedWrite summary::-webkit-details-marker{display:none}.IIa07q_advancedWrite summary>span:first-child{gap:2px;display:grid}.IIa07q_advancedWrite summary strong{font-size:13px;font-weight:500;line-height:20px}.IIa07q_advancedWrite summary small{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_advancedWrite summary>span:last-child{color:var(--mn-faint);font-size:16px;line-height:1}.IIa07q_advancedWrite[open] summary{border-bottom:.5px solid var(--mn-line)}.IIa07q_advancedWrite[open] summary>span:last-child{font-size:0}.IIa07q_advancedWrite[open] summary>span:last-child:after{content:\"−\";font-size:16px}.IIa07q_manualForm{padding:4px 16px 16px}.IIa07q_manualActions{justify-content:space-between;align-items:center;gap:16px;margin-top:16px;display:flex}.IIa07q_manualActions p{max-width:520px;color:var(--mn-faint);margin:0;font-size:12px;line-height:18px}.IIa07q_listToolbar{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);grid-template-columns:minmax(0,1fr) 180px auto;gap:8px;padding:12px;display:grid}.IIa07q_listToolbar input,.IIa07q_listToolbar select{width:100%;min-width:0}.IIa07q_listNotice{color:var(--mn-faint);margin:10px 2px 16px;font-size:12px;line-height:18px}.IIa07q_listNotice span{color:var(--mn-success);background:color-mix(in srgb, var(--mn-success) 10%, transparent);border-radius:999px;margin-right:8px;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_memoryList{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:8px;display:grid}.IIa07q_memoryList .IIa07q_insightCard{height:100%;margin:0}.IIa07q_modalFooterNote{max-width:54ch;color:var(--mn-faint);margin:0 auto 0 0;font-size:12px;line-height:18px}.IIa07q_modalInlineStatus{color:var(--mn-muted);overflow-wrap:anywhere;margin:12px 0 0;font-size:12px;line-height:18px}.IIa07q_metadataDialog{gap:12px;display:grid}.IIa07q_metadataToolbar{color:var(--mn-faint);justify-content:space-between;align-items:center;gap:12px;font-size:12px;line-height:18px;display:flex}.IIa07q_metadataToolbar>span{align-items:center;gap:8px;min-width:0;display:flex}.IIa07q_metadataToolbar em{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;padding:1px 8px;font-size:11px;font-style:normal;font-weight:500;line-height:17px}.IIa07q_metadataList{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.IIa07q_metadataEmpty{border-radius:var(--dsw-radius-md);color:var(--mn-faint);background:var(--mn-fill);text-align:center;grid-column:1/-1;padding:20px;font-size:12px}.IIa07q_metadataList>label{cursor:pointer;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:10px;min-width:0;min-height:76px;padding:12px;display:grid;position:relative}.IIa07q_metadataList>label:hover{background:var(--mn-hover)}.IIa07q_metadataList>label[data-selected]{border-color:var(--mn-field-line);background:var(--mn-fill)}.IIa07q_metadataList>label[data-refreshing]{overflow:hidden}.IIa07q_metadataList>label[data-refreshing]:after{content:\"\";background:linear-gradient(105deg, transparent 20%, color-mix(in srgb, var(--mn-accent) 10%, transparent) 45%, transparent 70%);pointer-events:none;animation:.9s ease-in-out infinite IIa07q_mnemon-metadata-sweep;position:absolute;inset:0;transform:translate(-120%)}.IIa07q_metadataList>label[data-refreshed]{animation:.9s ease-out IIa07q_mnemon-metadata-refreshed}.IIa07q_metadataList>label[data-failed]{border-color:color-mix(in srgb, var(--mn-danger) 40%, transparent)}.IIa07q_metadataList>label>input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.IIa07q_metadataList>label>span{gap:4px;min-width:0;display:grid}.IIa07q_metadataList strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:20px;overflow:hidden}.IIa07q_metadataList small{color:var(--mn-faint);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:18px;display:-webkit-box;overflow:hidden}.IIa07q_metadataList>label>span>span{align-items:center;gap:6px;min-width:0;display:flex}.IIa07q_metadataList code{color:var(--mn-faint);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.IIa07q_metadataTaskStatus{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;line-height:18px;overflow:hidden}.IIa07q_metadataTaskStatus[data-status=running]{color:var(--mn-faint)}.IIa07q_metadataTaskStatus[data-status=success]{color:var(--mn-success)}.IIa07q_metadataTaskStatus[data-status=error]{color:var(--mn-danger)}@media (prefers-reduced-motion:reduce){.IIa07q_metadataList>label[data-refreshing]:after,.IIa07q_metadataList>label[data-refreshed]{animation:none}}@media (width<=1000px){.IIa07q_graphLayout{display:block;position:relative}.IIa07q_graphInspector{width:auto;min-height:0;box-shadow:none;margin-top:12px;position:static;overflow:visible}.IIa07q_graphInspector[data-empty]{display:none}.IIa07q_resultLayout{grid-template-columns:1fr}.IIa07q_relatedPane{grid-row:1;max-height:none;position:static}.IIa07q_memoryList{grid-template-columns:1fr}}@media (width<=760px){.IIa07q_metadataList{grid-template-columns:1fr}.IIa07q_modalFooterNote{max-width:none;margin:0}.IIa07q_modal .IIa07q_supervisedForm textarea{min-height:clamp(130px,30vh,210px)}.IIa07q_entityLayout{grid-template-columns:1fr}.IIa07q_manualActions{flex-direction:column;align-items:stretch}.IIa07q_entityRail{position:static}.IIa07q_searchControls{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.IIa07q_searchActions{grid-column:1/-1}.IIa07q_searchActions>button{flex:1}.IIa07q_searchControls select{width:100%;min-width:0}.IIa07q_listToolbar{grid-template-columns:1fr}.IIa07q_bodyDirectoryHeader{grid-template-columns:minmax(0,1fr);display:grid}.IIa07q_bodyDirectoryHeader>div{min-width:0}.IIa07q_bodyDirectoryPath{max-width:100%}.IIa07q_bodyDirectoryControls{flex-wrap:wrap;justify-content:flex-start;padding-right:0}.IIa07q_createIdentityGrid,.IIa07q_placementMode,.IIa07q_placementRuleGrid,.IIa07q_placementCandidates,.IIa07q_providerChoice,.IIa07q_providerAdvancedGrid{grid-template-columns:1fr}.IIa07q_graphViewport{min-height:360px}.IIa07q_graphSvg{height:390px}.IIa07q_graphCanvasControls{top:8px;right:8px}.IIa07q_graphCanvasControls span{display:none}}@media (width<=520px){.IIa07q_memoryHeaderActions{width:100%}.IIa07q_memoryHeaderActions>button{flex:1}.IIa07q_supervisedHeading,.IIa07q_cardTop{flex-direction:column;align-items:flex-start}.IIa07q_cardActions{flex-wrap:wrap;align-items:stretch}.IIa07q_cardActions button{flex:1}.IIa07q_searchControls{grid-template-columns:1fr}}@supports (height:100dvh){@media (width<=760px){.IIa07q_modal .IIa07q_supervisedForm textarea{min-height:clamp(130px,30dvh,210px)}}}@media (width<=1000px) and (height<=760px){.IIa07q_graphViewport{min-height:300px}.IIa07q_graphSvg{height:300px}}";
|
|
706
|
+
const css$2 = ".IIa07q_entityHeading>span,.IIa07q_inspectorHeading>span{color:var(--mn-faint);font-size:12px;font-weight:500;line-height:18px}.IIa07q_memoryHeaderActions{align-items:center;gap:8px;display:flex}.IIa07q_memoryHeaderActions>button{white-space:nowrap}.IIa07q_asyncRegion{min-width:0;position:relative}.IIa07q_asyncResults{min-width:0;min-height:120px;position:relative}.IIa07q_asyncPlaceholder{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);min-height:220px;color:var(--mn-faint);place-items:center;display:grid;position:relative}.IIa07q_muted{color:var(--mn-faint);padding:16px 0;font-size:13px}.IIa07q_readSources{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);gap:8px;margin:0 0 16px;padding:12px 14px;display:grid}.IIa07q_readSources>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.IIa07q_readSources>header>div{gap:2px;display:grid}.IIa07q_readSources>header strong{font-size:13px;font-weight:500;line-height:20px}.IIa07q_readSources>header p{max-width:92ch;color:var(--mn-faint);margin:0;font-size:12px;line-height:18px}.IIa07q_readSources>header>button{border:.5px solid var(--mn-line-strong);border-radius:var(--dsw-radius-sm);min-height:28px;color:var(--mn-text);cursor:pointer;background:0 0;flex:none;padding:0 10px;font-size:12px;line-height:18px}.IIa07q_readSources>header>button:hover{background:var(--mn-hover)}.IIa07q_readSources>header>button[data-selected]{background:var(--mn-fill);border-color:#0000}.IIa07q_readSources>div{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:8px;display:grid}.IIa07q_readSourceCard,.IIa07q_bodyCard,.IIa07q_metadataList>label{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-md);color:var(--mn-text);background:0 0}.IIa07q_readSourceCard{text-align:left;grid-template-columns:6px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;min-height:56px;padding:8px 10px 8px 12px;display:grid}button.IIa07q_readSourceCard{cursor:pointer}button.IIa07q_readSourceCard:hover{background:var(--mn-hover)}.IIa07q_readSourceCard[data-selected]{border-color:var(--mn-field-line);background:var(--mn-fill)}.IIa07q_readSourceSignal{background:var(--mn-success);border-radius:50%;width:6px;height:6px}.IIa07q_readSourceCard[data-mode=projection] .IIa07q_readSourceSignal,.IIa07q_readSourceCard[data-mode=enumerable] .IIa07q_readSourceSignal{background:var(--mn-success)}.IIa07q_readSourceCard[data-mode=query-only] .IIa07q_readSourceSignal{background:var(--mn-warn)}.IIa07q_readSourceCard[data-status=unavailable] .IIa07q_readSourceSignal{background:var(--mn-danger)}.IIa07q_readSourceCard[data-status=unsupported] .IIa07q_readSourceSignal,.IIa07q_readSourceCard[data-status=empty] .IIa07q_readSourceSignal{background:var(--mn-idle)}.IIa07q_readSourceCard[data-status=unsupported]{color:var(--mn-faint)}.IIa07q_readSourceIdentity,.IIa07q_readSourceState{gap:2px;min-width:0;display:grid}.IIa07q_readSourceIdentity strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:20px;overflow:hidden}.IIa07q_readSourceMeta{align-items:center;gap:6px;min-width:0;display:flex}.IIa07q_readSourceMeta>small{color:var(--mn-faint);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:18px;overflow:hidden}.IIa07q_readSourceState{text-align:right;justify-items:end}.IIa07q_readSourceState em{width:fit-content;color:var(--mn-muted);background:var(--mn-fill);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:11px;font-style:normal;font-weight:500;line-height:17px}.IIa07q_readSourceCard[data-status=unsupported] .IIa07q_readSourceState em{border:.5px solid var(--mn-field-line);color:var(--mn-faint);background:0 0}.IIa07q_readSourceState small{color:var(--mn-faint);white-space:nowrap;font-size:11px;line-height:14px}.IIa07q_bodyDirectory{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);margin-bottom:12px;padding:16px;position:relative}.IIa07q_bodyDirectoryHeader{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.IIa07q_bodyDirectoryHeader>div:first-child{flex:260px;min-width:0}.IIa07q_bodyDirectoryHeader h3{margin:0;font-size:13px;font-weight:500;line-height:20px}.IIa07q_bodyDirectoryHeader p{color:var(--mn-faint);margin:2px 0 0;font-size:12px;line-height:18px}.IIa07q_bodyDirectoryPath{max-width:100%;color:var(--mn-faint);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11px;line-height:16px;display:block;overflow:hidden}.IIa07q_bodyDirectoryControls{flex:none;justify-content:flex-end;align-items:center;gap:8px;padding-right:28px;display:flex}.IIa07q_bodyDirectoryControls>strong{color:var(--mn-muted);background:var(--mn-fill);font-variant-numeric:tabular-nums;border-radius:999px;flex:none;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_bodyGrid{grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:8px;display:grid}.IIa07q_bodyDirectoryEmpty{border-radius:var(--dsw-radius-md);min-height:96px;color:var(--mn-muted);background:var(--mn-fill);grid-column:1/-1;justify-content:center;align-items:center;gap:12px;display:flex}.IIa07q_bodyDirectoryEmpty>span{color:var(--mn-faint);font-size:24px}.IIa07q_bodyDirectoryEmpty strong{color:var(--mn-text);font-weight:500;display:block}.IIa07q_bodyDirectoryEmpty p{color:var(--mn-faint);margin:2px 0 0;font-size:12px}.IIa07q_bodyCard{--mn-body-accent:var(--mn-success);min-width:0;padding:12px 14px;transition:border-color .16s,background-color .16s}.IIa07q_bodyCard:not([data-active]){background:var(--mn-fill);border-color:#0000}.IIa07q_bodyCard[data-reconnectable]{cursor:pointer}.IIa07q_bodyCard[data-reconnectable]:hover{border-color:var(--mn-field-line)}.IIa07q_bodyCard[data-reconnectable]:focus-visible{outline:var(--dsw-focus-ring-width,2px) solid var(--mn-focus);outline-offset:2px}.IIa07q_bodySignal{background:var(--mn-idle);border-radius:50%;width:6px;height:6px}.IIa07q_bodyCard[data-active] .IIa07q_bodySignal{background:var(--mn-body-accent)}.IIa07q_bodyCard:not([data-healthy]) .IIa07q_bodySignal{background:var(--mn-danger)}.IIa07q_bodyCard[data-status-loading] .IIa07q_bodySignal{background:var(--mn-idle)}.IIa07q_bodyCard[data-reconnecting] .IIa07q_bodySignal{box-sizing:border-box;border:1.5px solid color-mix(in srgb, var(--mn-faint) 25%, transparent);border-top-color:var(--mn-faint);background:0 0;width:8px;height:8px;animation:.9s linear infinite IIa07q_mnemon-spin}.IIa07q_bodyHealth{color:var(--mn-success);font-size:12px;line-height:18px}.IIa07q_bodyCard:not([data-healthy]) .IIa07q_bodyHealth{color:var(--mn-danger)}.IIa07q_bodyCard[data-status-loading] .IIa07q_bodyHealth{color:var(--mn-faint)}.IIa07q_mnemonDefaultBadge{width:fit-content;color:var(--mn-accent);background:color-mix(in srgb, var(--mn-accent) 10%, transparent);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_providerBadge{width:fit-content;max-width:100%;color:var(--mn-muted);background:var(--mn-fill);text-align:center;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px;display:inline-flex;overflow:hidden}.IIa07q_providerBadge,.IIa07q_readSourceCard,.IIa07q_bodyCard,.IIa07q_metadataList>label,.IIa07q_graphNode,.IIa07q_providerBadge[data-provider=mnemon-native],.IIa07q_readSourceCard[data-provider=mnemon-native],.IIa07q_bodyCard[data-provider=mnemon-native],.IIa07q_metadataList>label[data-provider=mnemon-native],.IIa07q_graphNode[data-provider=mnemon-native]{--mn-provider-color:#64748b}.IIa07q_providerBadge[data-provider=openviking],.IIa07q_readSourceCard[data-provider=openviking],.IIa07q_bodyCard[data-provider=openviking],.IIa07q_metadataList>label[data-provider=openviking],.IIa07q_graphNode[data-provider=openviking]{--mn-provider-color:#3b82d0}.IIa07q_providerBadge[data-provider=honcho],.IIa07q_readSourceCard[data-provider=honcho],.IIa07q_bodyCard[data-provider=honcho],.IIa07q_metadataList>label[data-provider=honcho],.IIa07q_graphNode[data-provider=honcho]{--mn-provider-color:#c44fcf}.IIa07q_providerBadge[data-provider=mem0],.IIa07q_readSourceCard[data-provider=mem0],.IIa07q_bodyCard[data-provider=mem0],.IIa07q_metadataList>label[data-provider=mem0],.IIa07q_graphNode[data-provider=mem0]{--mn-provider-color:#8b5cf6}.IIa07q_providerBadge[data-provider=hindsight],.IIa07q_readSourceCard[data-provider=hindsight],.IIa07q_bodyCard[data-provider=hindsight],.IIa07q_metadataList>label[data-provider=hindsight],.IIa07q_graphNode[data-provider=hindsight]{--mn-provider-color:#0891b2}.IIa07q_providerBadge[data-provider=holographic],.IIa07q_readSourceCard[data-provider=holographic],.IIa07q_bodyCard[data-provider=holographic],.IIa07q_metadataList>label[data-provider=holographic],.IIa07q_graphNode[data-provider=holographic]{--mn-provider-color:#6366d9}.IIa07q_providerBadge[data-provider=retaindb],.IIa07q_readSourceCard[data-provider=retaindb],.IIa07q_bodyCard[data-provider=retaindb],.IIa07q_metadataList>label[data-provider=retaindb],.IIa07q_graphNode[data-provider=retaindb]{--mn-provider-color:#d08a28}.IIa07q_providerBadge[data-provider=byterover],.IIa07q_readSourceCard[data-provider=byterover],.IIa07q_bodyCard[data-provider=byterover],.IIa07q_metadataList>label[data-provider=byterover],.IIa07q_graphNode[data-provider=byterover]{--mn-provider-color:#0f9a83}.IIa07q_providerBadge[data-provider=supermemory],.IIa07q_readSourceCard[data-provider=supermemory],.IIa07q_bodyCard[data-provider=supermemory],.IIa07q_metadataList>label[data-provider=supermemory],.IIa07q_graphNode[data-provider=supermemory]{--mn-provider-color:#df4d72}.IIa07q_bodySwitch{min-height:28px;color:var(--mn-faint);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:12px;line-height:18px;display:flex}.IIa07q_bodySwitchTrack{box-sizing:border-box;background:var(--mn-line-strong);border-radius:999px;flex:none;width:36px;height:20px;padding:2px;transition:background-color .12s;position:relative}.IIa07q_bodySwitchTrack i{background:var(--dsw-alias-label-primary-foreground);border-radius:50%;width:16px;height:16px;transition:transform .12s;display:block}.IIa07q_bodySwitch:hover,.IIa07q_bodySwitch[aria-checked=true]{color:var(--mn-muted)}.IIa07q_bodySwitch[aria-checked=true] .IIa07q_bodySwitchTrack{background:var(--dsw-alias-brand-primary)}.IIa07q_bodySwitch[aria-checked=true] .IIa07q_bodySwitchTrack i{transform:translate(16px)}.IIa07q_bodyCardActions{align-items:center;gap:8px;display:flex}.IIa07q_bodyCreateForm{gap:16px;padding-top:0}.IIa07q_createSection{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);gap:12px;padding:14px 16px;display:grid}.IIa07q_createSectionHeading{align-items:flex-start;gap:10px;display:flex}.IIa07q_createSectionHeading>span{min-width:22px;height:22px;color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;flex:none;place-items:center;padding:0 6px;font-size:11px;font-weight:500;line-height:1;display:grid}.IIa07q_createSectionHeading>div{gap:2px;min-width:0;display:grid}.IIa07q_createSectionHeading strong{color:var(--mn-text);font-size:14px;font-weight:500;line-height:22px}.IIa07q_createSectionHeading small{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_createIdentityGrid{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:12px;display:grid}.IIa07q_createIdentityGrid>label{align-content:start}.IIa07q_createIdentityGrid textarea{min-height:72px}.IIa07q_strategyForm{gap:16px;padding-top:0}.IIa07q_strategyLoading{border-radius:var(--dsw-radius-md);min-height:88px;color:var(--mn-faint);background:var(--mn-fill);justify-content:center;align-items:center;font-size:12px;display:flex;position:relative}.IIa07q_strategyLoading .IIa07q_sectionSpinner{top:10px;right:10px}.IIa07q_placementMode{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;display:grid}.IIa07q_placementMode legend{color:var(--mn-muted);margin-bottom:6px;font-size:12px;font-weight:500;line-height:18px}.IIa07q_placementMode label{border:.5px solid var(--mn-line-strong);border-radius:var(--dsw-radius-md);cursor:pointer;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:12px;display:grid;position:relative}.IIa07q_placementMode label:hover{background:var(--mn-hover)}.IIa07q_placementMode label[data-selected]{border-color:var(--mn-field-line);background:var(--mn-fill)}.IIa07q_placementMode label[data-disabled]{cursor:not-allowed;opacity:.5}.IIa07q_placementMode input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.IIa07q_placementMode span{gap:2px;display:grid}.IIa07q_placementMode strong{color:var(--mn-text);font-size:13px;font-weight:500;line-height:20px}.IIa07q_placementMode strong em{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;margin-left:6px;padding:1px 8px;font-size:11px;font-style:normal;font-weight:500;line-height:17px}.IIa07q_placementMode small{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_placementPolicy{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-md);gap:10px;margin:0;padding:12px 14px;display:grid}.IIa07q_placementPolicyHeading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.IIa07q_placementPolicyHeading>div{gap:2px;display:grid}.IIa07q_placementPolicyHeading strong{font-size:13px;font-weight:500;line-height:20px}.IIa07q_placementPolicyHeading small{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_placementPolicyHeading>span{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;flex:none;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_placementRuleGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.IIa07q_capabilityRules{border:0;flex-wrap:wrap;gap:6px;margin:0;padding:0;display:flex}.IIa07q_capabilityRules legend{width:100%;color:var(--mn-faint);margin-bottom:4px;font-size:12px;line-height:18px}.IIa07q_capabilityRules label{border:.5px solid var(--mn-line-strong);border-radius:var(--dsw-radius-sm);width:fit-content;min-height:28px;color:var(--mn-muted);cursor:pointer;align-items:center;gap:6px;padding:0 10px;font-size:12px;display:flex;position:relative}.IIa07q_capabilityRules label:hover{background:var(--mn-hover)}.IIa07q_capabilityRules label[data-selected]{border-color:var(--mn-field-line);color:var(--mn-text);background:var(--mn-fill)}.IIa07q_capabilityRules input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.IIa07q_placementCandidates{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.IIa07q_placementCandidates>span,.IIa07q_placementCandidates>label{border:.5px solid var(--mn-line-strong);border-radius:var(--dsw-radius-md);grid-template-columns:28px minmax(0,1fr) 16px;align-items:center;gap:10px;min-width:0;padding:8px 10px;display:grid;position:relative}.IIa07q_placementCandidates>label{cursor:pointer}.IIa07q_placementCandidates>label:hover{background:var(--mn-hover)}.IIa07q_placementCandidates>[data-selected]{border-color:var(--mn-field-line);background:var(--mn-fill)}.IIa07q_placementCandidates>label[data-disabled]{cursor:not-allowed;opacity:.5}.IIa07q_placementCandidates input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.IIa07q_placementCandidates>span>span:not(.IIa07q_candidateIcon),.IIa07q_placementCandidates>label>span:not(.IIa07q_candidateIcon){gap:2px;min-width:0;display:grid}.IIa07q_placementCandidates strong{color:var(--mn-text);font-size:13px;font-weight:500;line-height:20px}.IIa07q_placementCandidates small{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_providerChoice{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;display:grid}.IIa07q_providerChoice legend{color:var(--mn-muted);margin-bottom:6px;font-size:12px;font-weight:500;line-height:18px}.IIa07q_providerChoice label{border:.5px solid var(--mn-line-strong);border-radius:var(--dsw-radius-md);cursor:pointer;grid-template-columns:32px minmax(0,1fr) 16px;align-items:center;gap:10px;min-width:0;padding:10px 12px;display:grid;position:relative}.IIa07q_providerChoice label:hover{background:var(--mn-hover)}.IIa07q_providerChoice label[data-native]{grid-column:1/-1}.IIa07q_providerChoice label[data-selected]{border-color:var(--mn-field-line);background:var(--mn-fill)}.IIa07q_providerChoice label[data-disabled]{cursor:not-allowed;opacity:.5}.IIa07q_providerChoice input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.IIa07q_providerChoice span{gap:2px;display:grid}.IIa07q_providerChoice strong{color:var(--mn-text);font-size:13px;font-weight:500;line-height:20px}.IIa07q_providerChoice strong em{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;margin-left:6px;padding:1px 8px;font-size:11px;font-style:normal;font-weight:500;line-height:17px}.IIa07q_providerChoice label[data-selected] strong em{background:var(--mn-layer-1)}.IIa07q_providerChoice small{color:var(--mn-faint);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:18px;display:-webkit-box;overflow:hidden}.IIa07q_providerChoiceIcon,.IIa07q_candidateIcon,.IIa07q_providerFieldIcon{box-sizing:border-box;border:.5px solid var(--mn-line-strong);background:var(--mn-layer-1);place-items:center;display:grid;overflow:hidden}.IIa07q_providerChoiceIcon{border-radius:var(--dsw-radius-sm);width:32px;height:32px;padding:4px}.IIa07q_candidateIcon{border-radius:var(--dsw-radius-sm);width:28px;height:28px;padding:4px}.IIa07q_providerFieldIcon{border-radius:var(--dsw-radius-sm);flex:none;width:32px;height:32px;padding:4px}.IIa07q_providerChoiceIcon>img,.IIa07q_providerChoiceIcon>svg,.IIa07q_candidateIcon>img,.IIa07q_candidateIcon>svg,.IIa07q_providerFieldIcon>img,.IIa07q_providerFieldIcon>svg{object-fit:contain;border-radius:4px;width:100%;height:100%;display:block}.IIa07q_choiceControl{box-sizing:border-box;border:1px solid var(--mn-field-line);background:var(--mn-layer-1);border-radius:4px;flex:none;place-items:center;width:16px;height:16px;display:grid;position:relative}.IIa07q_choiceControl[data-kind=radio]{border-radius:50%}[data-selected]>.IIa07q_choiceControl{border-color:var(--dsw-alias-brand-primary);background:var(--dsw-alias-brand-primary)}[data-selected]>.IIa07q_choiceControl[data-kind=check]:after{border-bottom:1.5px solid var(--dsw-alias-label-primary-foreground);border-left:1.5px solid var(--dsw-alias-label-primary-foreground);content:\"\";width:7px;height:4px;transform:translateY(-1px)rotate(-45deg)}[data-selected]>.IIa07q_choiceControl[data-kind=radio]:after{content:\"\";background:var(--dsw-alias-label-primary-foreground);border-radius:50%;width:6px;height:6px}.IIa07q_placementMode label:has(input:focus-visible),.IIa07q_providerChoice label:has(input:focus-visible),.IIa07q_capabilityRules label:has(input:focus-visible),.IIa07q_placementCandidates label:has(input:focus-visible){outline:var(--dsw-focus-ring-width,2px) solid var(--mn-focus);outline-offset:1px}.IIa07q_providerFields{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-md);gap:10px;padding:12px 14px;display:grid}.IIa07q_providerFieldHeading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.IIa07q_providerFieldIdentity{align-items:center;gap:10px;min-width:0;display:flex}.IIa07q_providerFieldIdentity>div{gap:2px;min-width:0;display:grid}.IIa07q_providerFieldHeading strong{color:var(--mn-text);font-size:13px;font-weight:500;line-height:20px}.IIa07q_providerFieldHeading small{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_providerFieldHeading>span{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;flex:none;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_providerFields details{min-width:0}.IIa07q_providerFields summary{width:fit-content;color:var(--mn-muted);cursor:pointer;font-size:12px;line-height:18px}.IIa07q_providerFields summary:hover{color:var(--mn-text)}.IIa07q_providerEnableHint{color:var(--mn-faint);margin-top:8px;font-size:12px;line-height:18px;display:block}.IIa07q_providerAdvancedGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:8px;display:grid}.IIa07q_providerFieldControl .IIa07q_providerSecretClear{color:var(--mn-muted);cursor:pointer;align-items:center;gap:6px;font-size:12px;font-weight:400;display:flex}.IIa07q_providerWriteHint{color:var(--mn-faint);margin-top:4px;font-size:12px;line-height:18px;display:block}.IIa07q_placementReceipt{border-radius:var(--dsw-radius-sm);min-width:0;color:var(--mn-muted);background:var(--mn-fill);align-items:flex-start;gap:8px;margin:8px 0;padding:8px 10px;display:flex}.IIa07q_placementReceipt>span{flex:none;font-size:12px}.IIa07q_placementReceipt>div{grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;min-width:0;display:grid}.IIa07q_placementReceipt strong,.IIa07q_placementReceipt small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.IIa07q_placementReceipt strong{color:var(--mn-text);font-size:12px;font-weight:500;line-height:18px}.IIa07q_placementReceipt small{color:var(--mn-faint);font-size:11px;line-height:18px}.IIa07q_placementReceipt p{color:var(--mn-faint);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;margin:0;font-size:12px;line-height:18px;overflow:hidden}.IIa07q_bodyCard>p{min-height:18px;color:var(--mn-muted);margin:8px 0;font-size:13px;line-height:20px}.IIa07q_bodyCard footer{border-top:.5px solid var(--mn-line);min-width:0;color:var(--mn-faint);flex-wrap:nowrap;gap:4px 12px;padding-top:8px;font-size:12px;line-height:18px;display:flex;overflow:hidden}.IIa07q_bodyFooterBlock{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;display:block;overflow:hidden}.IIa07q_bodyFooterGrow{flex:auto}.IIa07q_graphLayout{grid-template-columns:minmax(0,1fr) minmax(240px,280px);gap:12px;display:grid}.IIa07q_graphPanel,.IIa07q_graphInspector{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg)}.IIa07q_graphPanel{min-width:0;position:relative;overflow:hidden}.IIa07q_graphToolbar,.IIa07q_graphFooter{min-height:44px;color:var(--mn-faint);justify-content:space-between;align-items:center;gap:16px;padding:0 14px;font-size:12px;line-height:18px;display:flex}.IIa07q_graphToolbar{border-bottom:.5px solid var(--mn-line)}.IIa07q_graphToolbar>div:first-child{align-items:center;gap:8px;display:flex}.IIa07q_graphToolbar small{color:var(--mn-faint)}.IIa07q_liveDot{background:var(--mn-success);border-radius:50%;width:6px;height:6px}.IIa07q_graphLegend{flex-wrap:wrap;justify-content:flex-end;gap:4px 12px;display:flex}.IIa07q_graphLegend span{align-items:center;gap:6px;display:flex}.IIa07q_graphLegend span:before{content:\"\";background:var(--edge-color);border-radius:2px;width:14px;height:2px}.IIa07q_graphLegend [data-edge=temporal]{--edge-color:#87909f}.IIa07q_graphLegend [data-edge=scope]{--edge-color:#708199}.IIa07q_graphLegend [data-edge=scope]:before{background:repeating-linear-gradient(90deg, var(--edge-color) 0 4px, transparent 4px 7px)}.IIa07q_graphLegend [data-edge=semantic]{--edge-color:#4d7cfe}.IIa07q_graphLegend [data-edge=causal]{--edge-color:#ef6b5b}.IIa07q_graphLegend [data-edge=entity]{--edge-color:#22a879}.IIa07q_graphViewport{min-height:clamp(390px,42vw,560px);position:relative;overflow:hidden}.IIa07q_graphCanvasControls{z-index:2;border-radius:var(--dsw-radius-md);background:var(--dsw-specific-menu,var(--mn-layer-2));box-shadow:var(--dsw-elevation-soft);backdrop-filter:var(--dsw-menu-backdrop-filter);align-items:center;gap:4px;padding:4px;display:flex;position:absolute;top:10px;right:10px}.IIa07q_graphCanvasControls span{color:var(--mn-faint);align-items:center;gap:6px;padding:0 6px;font-size:12px;display:flex}.IIa07q_graphCanvasControls span i{background:var(--mn-accent);border-radius:50%;width:6px;height:6px}.IIa07q_graphCanvasControls button{border-radius:var(--dsw-radius-sm);min-height:28px;color:var(--mn-muted);cursor:pointer;background:0 0;border:0;padding:0 10px;font-size:12px}.IIa07q_graphCanvasControls button:hover{color:var(--mn-text);background:var(--mn-hover)}.IIa07q_graphCanvasControls button[data-active]{color:var(--mn-text);background:var(--mn-fill)}.IIa07q_graphSvg{touch-action:pan-y pinch-zoom;user-select:none;width:100%;height:clamp(390px,42vw,560px);display:block}.IIa07q_graphBackdrop{fill:var(--mn-layer-1)}.IIa07q_graphGridLine{stroke:var(--mn-line);stroke-width:.6px;opacity:.5}.IIa07q_graphEdge{fill:none;stroke:#87909f;stroke-width:1px;opacity:.32;vector-effect:non-scaling-stroke}.IIa07q_graphEdge[data-edge=scope]{stroke:#708199;stroke-dasharray:4 5;opacity:.28}.IIa07q_graphEdge[data-edge=semantic]{stroke:#4d7cfe;opacity:.48}.IIa07q_graphEdge[data-edge=causal]{stroke:#ef6b5b;opacity:.52}.IIa07q_graphEdge[data-edge=entity]{stroke:#22a879;stroke-width:1.45px;opacity:.78}.IIa07q_graphNode{--node:#8290a8;cursor:grab;touch-action:none;outline:none}.IIa07q_graphNode[data-dragging]{cursor:grabbing}.IIa07q_graphNode[data-category=decision]{--node:#ef8354}.IIa07q_graphNode[data-category=preference]{--node:#a879e1}.IIa07q_graphNode[data-category=fact]{--node:#4d7cfe}.IIa07q_graphNode[data-category=insight]{--node:#19a77d}.IIa07q_graphNode[data-category=context]{--node:#d8a624}.IIa07q_graphNode[data-kind=space]{--node:var(--mn-provider-color)}.IIa07q_graphNode[data-kind=entity]{--node:#2b9db9}.IIa07q_nodeHalo{fill:color-mix(in srgb, var(--node) 18%, var(--mn-layer-1));stroke:color-mix(in srgb, var(--node) 60%, var(--mn-layer-1));stroke-width:1.5px;transition:r .16s}.IIa07q_nodeCore{fill:var(--node)}.IIa07q_nodeLabel{fill:var(--mn-muted);font:11px var(--mn-sans);pointer-events:auto}.IIa07q_nodeBodyLabel{fill:var(--mn-faint);font:500 11px var(--mn-sans);pointer-events:auto}.IIa07q_graphSvg[data-density=sparse] .IIa07q_nodeLabel{font-size:12px}.IIa07q_graphNode:hover .IIa07q_nodeHalo,.IIa07q_graphNode:focus .IIa07q_nodeHalo,.IIa07q_graphNode[data-selected] .IIa07q_nodeHalo{fill:color-mix(in srgb, var(--node) 28%, var(--mn-layer-1));stroke:var(--node)}.IIa07q_graphNode[data-selected] .IIa07q_nodeLabel{fill:var(--mn-text);font-weight:500}.IIa07q_graphFooter{border-top:.5px solid var(--mn-line);min-height:40px;color:var(--mn-faint)}.IIa07q_graphInspector{min-width:0;min-height:calc(clamp(390px,42vw,560px) + 84px);padding:16px;overflow:hidden}.IIa07q_inspectorEmpty{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}.IIa07q_inspectorLogo{border-radius:var(--dsw-radius-lg);opacity:.72;width:48px;height:48px;margin-bottom:12px}.IIa07q_inspectorEmpty h3{margin:6px 0 2px;font-size:14px;font-weight:500;line-height:22px}.IIa07q_inspectorEmpty p{color:var(--mn-faint);margin:0;font-size:12px;line-height:18px}.IIa07q_inspectorHeading{justify-content:space-between;align-items:center;display:flex}.IIa07q_inspectorHeading button{border-radius:var(--dsw-radius-sm);width:28px;height:28px;color:var(--mn-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.IIa07q_inspectorHeading button:hover{background:var(--mn-hover)}.IIa07q_inspectorChips{flex-wrap:wrap;align-items:center;gap:6px;margin-top:20px;display:flex}.IIa07q_categoryChip{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px;display:inline-flex}.IIa07q_inspectorTitleRow{align-items:flex-start;gap:8px;min-width:0;margin:12px 0 20px;display:flex}.IIa07q_inspectorTitle{overflow-wrap:anywhere;white-space:pre-wrap;-webkit-line-clamp:6;-webkit-box-orient:vertical;flex:1;min-width:0;margin:0;font-size:14px;font-weight:400;line-height:22px;display:-webkit-box;overflow:hidden}.IIa07q_inspectorEye{border:.5px solid var(--mn-line-strong);border-radius:var(--dsw-radius-sm);width:28px;height:28px;color:var(--mn-muted);cursor:pointer;background:0 0;flex:none;place-items:center;transition:color .15s,background-color .15s;display:grid}.IIa07q_inspectorEye:hover{color:var(--mn-text);background:var(--mn-hover)}.IIa07q_inspectorMeta{margin:0}.IIa07q_inspectorMeta>div{border-top:.5px solid var(--mn-line);gap:2px;padding:10px 0;display:grid}.IIa07q_inspectorMeta dt{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_inspectorMeta dd{overflow-wrap:anywhere;color:var(--mn-muted);margin:0;font-size:13px;line-height:20px}.IIa07q_inspectorActions{gap:8px;margin-top:20px;display:grid}.IIa07q_previewContent{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--mn-text);margin:0;font-size:14px;line-height:22px}.IIa07q_searchBar{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);margin-bottom:16px;padding:14px}.IIa07q_queryField{width:100%;height:40px}.IIa07q_searchChoice{min-width:160px}.IIa07q_searchControls{justify-content:flex-end;align-items:flex-end;gap:12px;padding-top:12px;display:flex}.IIa07q_searchActions{align-items:center;gap:8px;display:flex}.IIa07q_agentAnswer{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);margin-bottom:16px;padding:16px}.IIa07q_agentAnswerHeading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.IIa07q_agentAnswerHeading span{color:var(--mn-faint);font-size:12px;font-weight:500;line-height:18px}.IIa07q_agentAnswerHeading h3{margin:2px 0 0;font-size:14px;font-weight:500;line-height:22px}.IIa07q_agentAnswerHeading>code{color:var(--mn-faint);font-size:11px}.IIa07q_agentAnswer>p{white-space:pre-wrap;color:var(--mn-text);margin:12px 0;font-size:14px;line-height:22px}.IIa07q_agentCitations{border-top:.5px solid var(--mn-line);flex-wrap:wrap;align-items:center;gap:6px;padding-top:10px;display:flex}.IIa07q_agentCitations small{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_agentCitations span{max-width:100%;color:var(--mn-muted);background:var(--mn-fill);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:12px;line-height:18px;overflow:hidden}.IIa07q_fieldWide{color:var(--mn-muted);gap:6px;font-size:12px;font-weight:500;line-height:18px;display:grid}.IIa07q_supervisedForm textarea:focus{border-color:var(--mn-accent)}.IIa07q_singleColumn{max-width:830px}.IIa07q_resultLayout{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:start;gap:16px;display:grid}.IIa07q_results,.IIa07q_relatedPane,.IIa07q_entityResults{min-width:0}.IIa07q_relatedPane{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);-webkit-overflow-scrolling:touch;max-height:calc(100dvh - 230px);padding:14px;scroll-margin-top:14px;position:sticky;top:12px;overflow:auto}.IIa07q_relatedSource{border-radius:var(--dsw-radius-sm);color:var(--mn-muted);background:var(--mn-fill);margin:0 0 12px;padding:10px 12px;font-size:13px;line-height:20px}.IIa07q_insightCard{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);min-width:0;margin-bottom:8px;padding:14px 16px;transition:background-color .15s}.IIa07q_insightCard:hover{background:color-mix(in srgb, var(--mn-hover) 50%, transparent)}.IIa07q_cardTop{justify-content:space-between;align-items:center;gap:12px;display:flex}.IIa07q_badges,.IIa07q_tags,.IIa07q_entities{flex-wrap:wrap;gap:6px;display:flex}.IIa07q_badge{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_id{color:var(--mn-faint);font-size:11px}.IIa07q_content{white-space:pre-wrap;overflow-wrap:anywhere;margin:10px 0;font-size:14px;line-height:22px}.IIa07q_tags{color:var(--mn-accent);font-size:12px;line-height:18px}.IIa07q_entities{margin-top:8px}.IIa07q_entities span{border:.5px solid var(--mn-field-line);color:var(--mn-faint);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_cardActions{border-top:.5px solid var(--mn-line);justify-content:flex-end;align-items:center;gap:4px;min-height:32px;margin-top:10px;padding-top:8px;display:flex}.IIa07q_entityLayout{grid-template-columns:264px minmax(0,1fr);align-items:start;gap:16px;display:grid}.IIa07q_entityRail{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);padding:12px;position:sticky;top:0}.IIa07q_entitySearch{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.IIa07q_entitySearch input{min-width:0}.IIa07q_entityHeading{justify-content:space-between;align-items:center;margin:16px 4px 6px;display:flex}.IIa07q_entityHeading small{color:var(--mn-faint);font-size:12px}.IIa07q_entityList{gap:2px;display:grid}.IIa07q_entityList button{border-radius:var(--dsw-radius-sm);min-height:32px;color:var(--mn-muted);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:0 10px;display:flex}.IIa07q_entityList button:hover,.IIa07q_entityList button[aria-pressed=true]{color:var(--mn-text);background:var(--mn-hover)}.IIa07q_entityList button[aria-pressed=true]{background:var(--mn-fill)}.IIa07q_entityList button>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.IIa07q_entityList strong{color:var(--mn-faint);font-variant-numeric:tabular-nums;flex:none;font-size:12px;font-weight:400}.IIa07q_entityResults>.IIa07q_emptyState{min-height:360px}.IIa07q_supervisedComposer{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);overflow:hidden}.IIa07q_supervisedForm{padding:16px}.IIa07q_candidateHeading{justify-content:space-between;align-items:center;gap:8px;min-width:0;margin-bottom:8px;display:flex}.IIa07q_candidateHeading>label{color:var(--mn-text);font-size:13px;font-weight:500;line-height:20px}.IIa07q_supervisedForm textarea{resize:vertical;border:.5px solid var(--mn-field-line);border-radius:var(--dsw-radius-md);width:100%;color:var(--mn-text);background:var(--mn-input);outline:0;padding:10px 12px;font-size:14px;line-height:22px}.IIa07q_sessionHint{color:var(--mn-danger);margin:8px 0 0;font-size:12px;line-height:18px}.IIa07q_fieldWide{grid-column:1/-1}.IIa07q_advancedWrite{border-top:.5px solid var(--mn-line)}.IIa07q_advancedWrite summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:10px 16px;list-style:none;display:flex}.IIa07q_advancedWrite summary:hover{background:var(--mn-hover)}.IIa07q_advancedWrite summary::-webkit-details-marker{display:none}.IIa07q_advancedWrite summary>span:first-child{gap:2px;display:grid}.IIa07q_advancedWrite summary strong{font-size:13px;font-weight:500;line-height:20px}.IIa07q_advancedWrite summary small{color:var(--mn-faint);font-size:12px;line-height:18px}.IIa07q_advancedWrite summary>span:last-child{color:var(--mn-faint);font-size:16px;line-height:1}.IIa07q_advancedWrite[open] summary{border-bottom:.5px solid var(--mn-line)}.IIa07q_advancedWrite[open] summary>span:last-child{font-size:0}.IIa07q_advancedWrite[open] summary>span:last-child:after{content:\"−\";font-size:16px}.IIa07q_manualForm{padding:4px 16px 16px}.IIa07q_manualActions{justify-content:space-between;align-items:center;gap:16px;margin-top:16px;display:flex}.IIa07q_manualActions p{max-width:520px;color:var(--mn-faint);margin:0;font-size:12px;line-height:18px}.IIa07q_listToolbar{border:.5px solid var(--mn-card-line);border-radius:var(--dsw-radius-lg);grid-template-columns:minmax(0,1fr) 180px auto;gap:8px;padding:12px;display:grid}.IIa07q_listToolbar>*{min-width:0}.IIa07q_listNotice{color:var(--mn-faint);margin:10px 2px 16px;font-size:12px;line-height:18px}.IIa07q_listNotice span{color:var(--mn-success);background:color-mix(in srgb, var(--mn-success) 10%, transparent);border-radius:999px;margin-right:8px;padding:1px 8px;font-size:11px;font-weight:500;line-height:17px}.IIa07q_memoryList{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:8px;display:grid}.IIa07q_memoryList .IIa07q_insightCard{height:100%;margin:0}.IIa07q_modalFooterNote{max-width:54ch;color:var(--mn-faint);margin:0 auto 0 0;font-size:12px;line-height:18px}.IIa07q_modalInlineStatus{color:var(--mn-muted);overflow-wrap:anywhere;margin:12px 0 0;font-size:12px;line-height:18px}.IIa07q_metadataDialog{gap:12px;display:grid}.IIa07q_metadataToolbar{color:var(--mn-faint);justify-content:space-between;align-items:center;gap:12px;font-size:12px;line-height:18px;display:flex}.IIa07q_metadataToolbar>span{align-items:center;gap:8px;min-width:0;display:flex}.IIa07q_metadataToolbar em{color:var(--mn-muted);background:var(--mn-fill);border-radius:999px;padding:1px 8px;font-size:11px;font-style:normal;font-weight:500;line-height:17px}.IIa07q_metadataList{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.IIa07q_metadataEmpty{border-radius:var(--dsw-radius-md);color:var(--mn-faint);background:var(--mn-fill);text-align:center;grid-column:1/-1;padding:20px;font-size:12px}.IIa07q_metadataList>label{cursor:pointer;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:10px;min-width:0;min-height:76px;padding:12px;display:grid;position:relative}.IIa07q_metadataList>label:hover{background:var(--mn-hover)}.IIa07q_metadataList>label[data-selected]{border-color:var(--mn-field-line);background:var(--mn-fill)}.IIa07q_metadataList>label[data-refreshing]{overflow:hidden}.IIa07q_metadataList>label[data-refreshing]:after{content:\"\";background:linear-gradient(105deg, transparent 20%, color-mix(in srgb, var(--mn-accent) 10%, transparent) 45%, transparent 70%);pointer-events:none;animation:.9s ease-in-out infinite IIa07q_mnemon-metadata-sweep;position:absolute;inset:0;transform:translate(-120%)}.IIa07q_metadataList>label[data-refreshed]{animation:.9s ease-out IIa07q_mnemon-metadata-refreshed}.IIa07q_metadataList>label[data-failed]{border-color:color-mix(in srgb, var(--mn-danger) 40%, transparent)}.IIa07q_metadataList>label>input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.IIa07q_metadataList>label>span{gap:4px;min-width:0;display:grid}.IIa07q_metadataList strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:20px;overflow:hidden}.IIa07q_metadataList small{color:var(--mn-faint);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:18px;display:-webkit-box;overflow:hidden}.IIa07q_metadataList>label>span>span{align-items:center;gap:6px;min-width:0;display:flex}.IIa07q_metadataList code{color:var(--mn-faint);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.IIa07q_metadataTaskStatus{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;line-height:18px;overflow:hidden}.IIa07q_metadataTaskStatus[data-status=running]{color:var(--mn-faint)}.IIa07q_metadataTaskStatus[data-status=success]{color:var(--mn-success)}.IIa07q_metadataTaskStatus[data-status=error]{color:var(--mn-danger)}@media (prefers-reduced-motion:reduce){.IIa07q_metadataList>label[data-refreshing]:after,.IIa07q_metadataList>label[data-refreshed]{animation:none}}@media (width<=1000px){.IIa07q_graphLayout{display:block;position:relative}.IIa07q_graphInspector{width:auto;min-height:0;box-shadow:none;margin-top:12px;position:static;overflow:visible}.IIa07q_graphInspector[data-empty]{display:none}.IIa07q_resultLayout{grid-template-columns:1fr}.IIa07q_relatedPane{grid-row:1;max-height:none;position:static}.IIa07q_memoryList{grid-template-columns:1fr}}@media (width<=760px){.IIa07q_metadataList{grid-template-columns:1fr}.IIa07q_modalFooterNote{max-width:none;margin:0}.IIa07q_modal .IIa07q_supervisedForm textarea{min-height:clamp(130px,30vh,210px)}.IIa07q_entityLayout{grid-template-columns:1fr}.IIa07q_manualActions{flex-direction:column;align-items:stretch}.IIa07q_entityRail{position:static}.IIa07q_searchControls{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.IIa07q_searchActions{grid-column:1/-1}.IIa07q_searchActions>button{flex:1}.IIa07q_listToolbar{grid-template-columns:1fr}.IIa07q_bodyDirectoryHeader{grid-template-columns:minmax(0,1fr);display:grid}.IIa07q_bodyDirectoryHeader>div{min-width:0}.IIa07q_bodyDirectoryPath{max-width:100%}.IIa07q_bodyDirectoryControls{flex-wrap:wrap;justify-content:flex-start;padding-right:0}.IIa07q_createIdentityGrid,.IIa07q_placementMode,.IIa07q_placementRuleGrid,.IIa07q_placementCandidates,.IIa07q_providerChoice,.IIa07q_providerAdvancedGrid{grid-template-columns:1fr}.IIa07q_graphViewport{min-height:360px}.IIa07q_graphSvg{height:390px}.IIa07q_graphCanvasControls{top:8px;right:8px}.IIa07q_graphCanvasControls span{display:none}}@media (width<=520px){.IIa07q_memoryHeaderActions{width:100%}.IIa07q_memoryHeaderActions>button{flex:1}.IIa07q_cardTop{flex-direction:column;align-items:flex-start}.IIa07q_cardActions{flex-wrap:wrap;align-items:stretch}.IIa07q_cardActions button{flex:1}.IIa07q_searchControls{grid-template-columns:1fr}}@supports (height:100dvh){@media (width<=760px){.IIa07q_modal .IIa07q_supervisedForm textarea{min-height:clamp(130px,30dvh,210px)}}}@media (width<=1000px) and (height<=760px){.IIa07q_graphViewport{min-height:300px}.IIa07q_graphSvg{height:300px}}";
|
|
733
707
|
const id$1 = "dsh-mnemon-source-memory-spaces/presentation/page.module.css";
|
|
734
708
|
if (typeof document !== "undefined") {
|
|
735
709
|
let tag = document.querySelector("style[data-plugin-css=" + JSON.stringify(id$1) + "]");
|
|
@@ -765,6 +739,7 @@ window.__ModuleLoader__.load({
|
|
|
765
739
|
"bodySignal": "IIa07q_bodySignal",
|
|
766
740
|
"bodySwitch": "IIa07q_bodySwitch",
|
|
767
741
|
"bodySwitchTrack": "IIa07q_bodySwitchTrack",
|
|
742
|
+
"candidateHeading": "IIa07q_candidateHeading",
|
|
768
743
|
"candidateIcon": "IIa07q_candidateIcon",
|
|
769
744
|
"capabilityRules": "IIa07q_capabilityRules",
|
|
770
745
|
"cardActions": "IIa07q_cardActions",
|
|
@@ -843,6 +818,7 @@ window.__ModuleLoader__.load({
|
|
|
843
818
|
"providerBadge": "IIa07q_providerBadge",
|
|
844
819
|
"providerChoice": "IIa07q_providerChoice",
|
|
845
820
|
"providerChoiceIcon": "IIa07q_providerChoiceIcon",
|
|
821
|
+
"providerEnableHint": "IIa07q_providerEnableHint",
|
|
846
822
|
"providerFieldControl": "IIa07q_providerFieldControl",
|
|
847
823
|
"providerFieldHeading": "IIa07q_providerFieldHeading",
|
|
848
824
|
"providerFieldIcon": "IIa07q_providerFieldIcon",
|
|
@@ -863,22 +839,20 @@ window.__ModuleLoader__.load({
|
|
|
863
839
|
"results": "IIa07q_results",
|
|
864
840
|
"searchActions": "IIa07q_searchActions",
|
|
865
841
|
"searchBar": "IIa07q_searchBar",
|
|
842
|
+
"searchChoice": "IIa07q_searchChoice",
|
|
866
843
|
"searchControls": "IIa07q_searchControls",
|
|
867
844
|
"sectionSpinner": "IIa07q_sectionSpinner",
|
|
868
845
|
"sessionHint": "IIa07q_sessionHint",
|
|
869
|
-
"sessionMissing": "IIa07q_sessionMissing",
|
|
870
|
-
"sessionReady": "IIa07q_sessionReady",
|
|
871
846
|
"singleColumn": "IIa07q_singleColumn",
|
|
872
847
|
"strategyForm": "IIa07q_strategyForm",
|
|
873
848
|
"strategyLoading": "IIa07q_strategyLoading",
|
|
874
849
|
"supervisedComposer": "IIa07q_supervisedComposer",
|
|
875
850
|
"supervisedForm": "IIa07q_supervisedForm",
|
|
876
|
-
"supervisedHeading": "IIa07q_supervisedHeading",
|
|
877
851
|
"tags": "IIa07q_tags"
|
|
878
852
|
};
|
|
879
853
|
//#endregion
|
|
880
854
|
//#region \0source-css:/home/runner/work/dsh-mnemon/dsh-mnemon/plugins/dsh-mnemon-source-memory-spaces/presentation/sidebar.module.css.mjs
|
|
881
|
-
const css$1 = "._Bh55G_shell ._Bh55G_memoryWorkspace{z-index:12;border-bottom:.5px solid var(--dsw-alias-border-l2);background:var(--mn-surface);flex:none;margin:-20px -24px 16px;padding:20px 24px 0;position:sticky;top:0}._Bh55G_shell ._Bh55G_memoryWorkspace>[class*=pageHeader],._Bh55G_shell ._Bh55G_memoryWorkspace~[class*=page]>[class*=pageHeader]{margin-bottom:12px}._Bh55G_shell ._Bh55G_memoryWorkspace~[class*=page]>[class*=pageHeader] h2{font-size:14px;line-height:22px}._Bh55G_shell ._Bh55G_memoryWorkspace~[class*=page]>[class*=pageHeader] p{color:var(--dsw-alias-label-tertiary);font-size:12px;line-height:18px}._Bh55G_shell [class*=relatedPane],._Bh55G_shell [class*=entityRail]{position:static}._Bh55G_shell ._Bh55G_memoryNavigation{flex:none;align-items:flex-end;gap:12px;min-width:0;padding:0;display:flex}._Bh55G_shell ._Bh55G_memoryTabs{scrollbar-width:none;flex:1;gap:22px;min-width:0;display:flex;overflow-x:auto}._Bh55G_shell ._Bh55G_memoryTabs::-webkit-scrollbar{display:none}._Bh55G_shell ._Bh55G_memoryTabs button{min-width:max-content;min-height:0;color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-.5px;padding:6px 1px 9px;font-size:13px;line-height:20px;position:relative}._Bh55G_shell ._Bh55G_memoryTabs button:hover{color:var(--dsw-alias-label-primary)}._Bh55G_shell ._Bh55G_memoryTabs button[data-active]{border-bottom-color:var(--dsw-alias-label-primary);color:var(--dsw-alias-label-primary)}._Bh55G_shell ._Bh55G_memoryWriteButton{flex:none}._Bh55G_shell ._Bh55G_modal section[class*=supervisedComposer]{border:0;overflow:visible}._Bh55G_shell ._Bh55G_modal form[class*=supervisedForm]{padding:0}._Bh55G_shell ._Bh55G_modal [class*=supervisedHeading]{margin-bottom:12px}._Bh55G_shell ._Bh55G_modal [class*=supervisedHeading] h3{display:none}._Bh55G_shell ._Bh55G_modal details[class*=advancedWrite]{border:.5px solid var(--dsw-alias-settings-card-stroke);border-radius:var(--dsw-radius-md);margin-top:16px;overflow:hidden}._Bh55G_shell [class*=inspectorEye],._Bh55G_shell [class*=inspectorHeading] button{border-radius:var(--dsw-radius-sm);width:28px;height:28px;min-height:0;color:var(--dsw-alias-label-caption);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;font-size:13px;transition:background-color .12s,color .12s;display:inline-flex}._Bh55G_shell [class*=inspectorEye]:hover:not(:disabled),._Bh55G_shell [class*=inspectorHeading] button:hover:not(:disabled){color:var(--dsw-alias-label-secondary);background:var(--dsw-alias-interactive-bg-hover)}._Bh55G_shell [class*=inspectorEye]:disabled{cursor:default;opacity:.4}._Bh55G_shell [class*=bodyGrid]{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))}._Bh55G_shell article[class*=bodyCard]{flex-direction:column;height:100%;display:flex}._Bh55G_shell ._Bh55G_bodyCardHeader{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}._Bh55G_shell ._Bh55G_bodyDirectoryActions{flex:none;align-items:center;gap:8px;display:flex}._Bh55G_shell ._Bh55G_bodyCardIdentity{flex:1;align-items:flex-start;gap:8px;min-width:0;display:flex}._Bh55G_shell ._Bh55G_bodyCardIdentity>[class*=bodySignal]{flex:none;width:6px;height:6px;margin-top:7px}._Bh55G_shell article[class*=bodyCard][data-reconnecting] ._Bh55G_bodyCardIdentity>[class*=bodySignal]{width:8px;height:8px;margin-top:6px}._Bh55G_shell ._Bh55G_bodyCardIdentity>div{flex:1;gap:2px;min-width:0;display:grid}._Bh55G_shell ._Bh55G_bodyCardIdentity strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;line-height:20px;overflow:hidden}._Bh55G_shell ._Bh55G_bodyCardMeta{flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0;display:flex}._Bh55G_shell ._Bh55G_bodyCardMeta code{min-width:0;color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}._Bh55G_shell ._Bh55G_bodyCardMeta [class*=bodyHealth],._Bh55G_shell ._Bh55G_bodyCardHeader>[class*=bodySwitch]{flex:none}._Bh55G_shell article[class*=bodyCard]>p{-webkit-line-clamp:
|
|
855
|
+
const css$1 = "._Bh55G_shell ._Bh55G_memoryWorkspace{z-index:12;border-bottom:.5px solid var(--dsw-alias-border-l2);background:var(--mn-surface);flex:none;margin:-20px -24px 16px;padding:20px 24px 0;position:sticky;top:0}._Bh55G_shell ._Bh55G_memoryWorkspace>[class*=pageHeader],._Bh55G_shell ._Bh55G_memoryWorkspace~[class*=page]>[class*=pageHeader]{margin-bottom:12px}._Bh55G_shell ._Bh55G_memoryWorkspace~[class*=page]>[class*=pageHeader] h2{font-size:14px;line-height:22px}._Bh55G_shell ._Bh55G_memoryWorkspace~[class*=page]>[class*=pageHeader] p{color:var(--dsw-alias-label-tertiary);font-size:12px;line-height:18px}._Bh55G_shell [class*=relatedPane],._Bh55G_shell [class*=entityRail]{position:static}._Bh55G_shell ._Bh55G_memoryNavigation{flex:none;align-items:flex-end;gap:12px;min-width:0;padding:0;display:flex}._Bh55G_shell ._Bh55G_memoryTabs{scrollbar-width:none;flex:1;gap:22px;min-width:0;display:flex;overflow-x:auto}._Bh55G_shell ._Bh55G_memoryTabs::-webkit-scrollbar{display:none}._Bh55G_shell ._Bh55G_memoryTabs button{min-width:max-content;min-height:0;color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-.5px;padding:6px 1px 9px;font-size:13px;line-height:20px;position:relative}._Bh55G_shell ._Bh55G_memoryTabs button:hover{color:var(--dsw-alias-label-primary)}._Bh55G_shell ._Bh55G_memoryTabs button[data-active]{border-bottom-color:var(--dsw-alias-label-primary);color:var(--dsw-alias-label-primary)}._Bh55G_shell ._Bh55G_memoryWriteButton{flex:none}._Bh55G_shell ._Bh55G_modal section[class*=supervisedComposer]{border:0;overflow:visible}._Bh55G_shell ._Bh55G_modal form[class*=supervisedForm]{padding:0}._Bh55G_shell ._Bh55G_modal [class*=supervisedHeading]{margin-bottom:12px}._Bh55G_shell ._Bh55G_modal [class*=supervisedHeading] h3{display:none}._Bh55G_shell ._Bh55G_modal details[class*=advancedWrite]{border:.5px solid var(--dsw-alias-settings-card-stroke);border-radius:var(--dsw-radius-md);margin-top:16px;overflow:hidden}._Bh55G_shell [class*=inspectorEye],._Bh55G_shell [class*=inspectorHeading] button{border-radius:var(--dsw-radius-sm);width:28px;height:28px;min-height:0;color:var(--dsw-alias-label-caption);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;font-size:13px;transition:background-color .12s,color .12s;display:inline-flex}._Bh55G_shell [class*=inspectorEye]:hover:not(:disabled),._Bh55G_shell [class*=inspectorHeading] button:hover:not(:disabled){color:var(--dsw-alias-label-secondary);background:var(--dsw-alias-interactive-bg-hover)}._Bh55G_shell [class*=inspectorEye]:disabled{cursor:default;opacity:.4}._Bh55G_shell [class*=bodyGrid]{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))}._Bh55G_shell article[class*=bodyCard]{flex-direction:column;height:100%;display:flex}._Bh55G_shell ._Bh55G_bodyCardHeader{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}._Bh55G_shell ._Bh55G_bodyDirectoryActions{flex:none;align-items:center;gap:8px;display:flex}._Bh55G_shell ._Bh55G_bodyCardIdentity{flex:1;align-items:flex-start;gap:8px;min-width:0;display:flex}._Bh55G_shell ._Bh55G_bodyCardIdentity>[class*=bodySignal]{flex:none;width:6px;height:6px;margin-top:7px}._Bh55G_shell article[class*=bodyCard][data-reconnecting] ._Bh55G_bodyCardIdentity>[class*=bodySignal]{width:8px;height:8px;margin-top:6px}._Bh55G_shell ._Bh55G_bodyCardIdentity>div{flex:1;gap:2px;min-width:0;display:grid}._Bh55G_shell ._Bh55G_bodyCardIdentity strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;line-height:20px;overflow:hidden}._Bh55G_shell ._Bh55G_bodyCardMeta{flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0;display:flex}._Bh55G_shell ._Bh55G_bodyCardMeta code{min-width:0;color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}._Bh55G_shell ._Bh55G_bodyCardMeta [class*=bodyHealth],._Bh55G_shell ._Bh55G_bodyCardHeader>[class*=bodySwitch]{flex:none}._Bh55G_shell article[class*=bodyCard]>p{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:40px;max-height:40px;margin:10px 0;display:-webkit-box;overflow:hidden}._Bh55G_shell ._Bh55G_bodyCardFooter{white-space:nowrap;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:12px;min-width:0;margin-top:auto;padding-top:10px;display:grid}._Bh55G_shell ._Bh55G_bodyCardStats{flex-wrap:nowrap;align-items:center;gap:12px;min-width:0;display:flex;overflow:hidden}._Bh55G_shell ._Bh55G_bodyCardFooter [class*=bodyCardActions]{flex-wrap:nowrap;flex:none;align-items:center;gap:8px;display:flex}._Bh55G_shell [class*=cardActions]{gap:8px}._Bh55G_shell ._Bh55G_inspectorGlyph{border:.5px solid var(--dsw-alias-border-l3);border-radius:var(--dsw-radius-lg);width:48px;height:48px;color:var(--dsw-alias-label-tertiary);place-items:center;margin-bottom:12px;font-size:20px;line-height:1;display:grid}@media (width<=760px){._Bh55G_shell ._Bh55G_memoryWorkspace{margin:-16px -16px 16px;padding:16px 16px 0}}@media (width<=520px){._Bh55G_shell ._Bh55G_memoryTabs{gap:18px}}@media (prefers-reduced-motion:reduce){._Bh55G_shell [class*=inspectorEye],._Bh55G_shell [class*=inspectorHeading] button{transition:none}}";
|
|
882
856
|
const id = "dsh-mnemon-source-memory-spaces/presentation/sidebar.module.css";
|
|
883
857
|
if (typeof document !== "undefined") {
|
|
884
858
|
let tag = document.querySelector("style[data-plugin-css=" + JSON.stringify(id) + "]");
|
|
@@ -1021,6 +995,10 @@ window.__ModuleLoader__.load({
|
|
|
1021
995
|
const ready = providers.filter((provider) => provider.serviceConfigured !== false);
|
|
1022
996
|
return ready.find((provider) => provider.id === current)?.id ?? (ready.find((provider) => provider.origin === "native") ?? ready[0])?.id;
|
|
1023
997
|
}
|
|
998
|
+
/** Ready Providers first, in catalog order, so the choices that work lead the list. */
|
|
999
|
+
function readyFirst(providers) {
|
|
1000
|
+
return [...providers].sort((left, right) => Number(left.serviceConfigured === false) - Number(right.serviceConfigured === false));
|
|
1001
|
+
}
|
|
1024
1002
|
/** Why a provider cannot be chosen: Mnemon Native needs its CLI, the others a service configured on the dsh-mnemon page under Plugins. */
|
|
1025
1003
|
function providerUnavailableKey(provider) {
|
|
1026
1004
|
return provider.origin === "native" ? "overview.nativeCliRequired" : "overview.providerServiceRequired";
|
|
@@ -1063,15 +1041,15 @@ window.__ModuleLoader__.load({
|
|
|
1063
1041
|
type: "checkbox",
|
|
1064
1042
|
checked: Boolean(value),
|
|
1065
1043
|
onChange: (event) => props.onChange(field.key, event.target.checked)
|
|
1066
|
-
}) : field.input === "select" ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
1067
|
-
|
|
1044
|
+
}) : field.input === "select" ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.SelectField, {
|
|
1045
|
+
hideLabel: true,
|
|
1046
|
+
label,
|
|
1068
1047
|
value: String(value),
|
|
1069
|
-
|
|
1070
|
-
onChange: (event) => props.onChange(field.key, event.target.value),
|
|
1071
|
-
children: field.options?.map((option) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("option", {
|
|
1048
|
+
options: (field.options ?? []).map((option) => ({
|
|
1072
1049
|
value: option.value,
|
|
1073
|
-
|
|
1074
|
-
}
|
|
1050
|
+
label: providerOptionLabel(t, option)
|
|
1051
|
+
})),
|
|
1052
|
+
onChange: (next) => props.onChange(field.key, next)
|
|
1075
1053
|
}) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
|
|
1076
1054
|
"aria-label": label,
|
|
1077
1055
|
type: field.input === "secret" ? "password" : field.input === "number" ? "number" : field.input === "url" ? "url" : "text",
|
|
@@ -1208,7 +1186,7 @@ window.__ModuleLoader__.load({
|
|
|
1208
1186
|
const [confirming, setConfirming] = (0, react.useState)(false);
|
|
1209
1187
|
const [forgetting, setForgetting] = (0, react.useState)(false);
|
|
1210
1188
|
const { insight } = props;
|
|
1211
|
-
const neutralActionClass = (0, dsh_mnemon_client.appearanceClass)(css.ghostButton, sidebarCss.itemActionButton);
|
|
1189
|
+
const neutralActionClass = (0, dsh_mnemon_client.appearanceClass)(css.ghostButton, (0, dsh_mnemon_client.appearanceClass)(sidebarCss.itemActionButton, sidebarCss.itemEditAction));
|
|
1212
1190
|
const forgetActionClass = (0, dsh_mnemon_client.appearanceClass)(css.dangerButton, (0, dsh_mnemon_client.appearanceClass)(sidebarCss.itemActionButton, sidebarCss.itemDangerAction));
|
|
1213
1191
|
const providerLabel = insight.memoryProviderLabel ?? insight.memoryProviderId;
|
|
1214
1192
|
const supportsRelated = insight.memoryCapabilities?.related === true;
|
|
@@ -1218,7 +1196,7 @@ window.__ModuleLoader__.load({
|
|
|
1218
1196
|
providerLabel,
|
|
1219
1197
|
insight.category !== void 0 ? categoryLabel(t, insight.category) : void 0,
|
|
1220
1198
|
insight.importance !== void 0 ? t("common.importance", { value: insight.importance }) : void 0,
|
|
1221
|
-
insight.score !== void 0 ?
|
|
1199
|
+
insight.score !== void 0 ? t("common.score", { value: insight.score.toFixed(2) }) : void 0,
|
|
1222
1200
|
insight.depth !== void 0 ? t("common.hops", { count: insight.depth }) : void 0
|
|
1223
1201
|
].filter((entry) => entry !== void 0);
|
|
1224
1202
|
const forget = async () => {
|
|
@@ -1233,19 +1211,15 @@ window.__ModuleLoader__.load({
|
|
|
1233
1211
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("article", {
|
|
1234
1212
|
className: css.insightCard,
|
|
1235
1213
|
children: [
|
|
1236
|
-
/* @__PURE__ */ (0, react_jsx_runtime.
|
|
1214
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
1237
1215
|
className: css.cardTop,
|
|
1238
|
-
children:
|
|
1216
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
1239
1217
|
className: css.badges,
|
|
1240
1218
|
children: meta.map((entry) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
1241
1219
|
className: css.badge,
|
|
1242
1220
|
children: entry
|
|
1243
1221
|
}, entry))
|
|
1244
|
-
})
|
|
1245
|
-
className: css.id,
|
|
1246
|
-
title: insight.id,
|
|
1247
|
-
children: insight.id.slice(0, 8)
|
|
1248
|
-
})]
|
|
1222
|
+
})
|
|
1249
1223
|
}),
|
|
1250
1224
|
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
|
|
1251
1225
|
className: css.content,
|
|
@@ -1300,7 +1274,7 @@ window.__ModuleLoader__.load({
|
|
|
1300
1274
|
type: "button",
|
|
1301
1275
|
"data-dialog-close": true,
|
|
1302
1276
|
"data-autofocus": true,
|
|
1303
|
-
className: css.
|
|
1277
|
+
className: css.secondaryButton,
|
|
1304
1278
|
disabled: forgetting,
|
|
1305
1279
|
onClick: () => setConfirming(false),
|
|
1306
1280
|
children: t("common.cancel")
|
|
@@ -2036,6 +2010,12 @@ window.__ModuleLoader__.load({
|
|
|
2036
2010
|
initialSyncStarted.current = true;
|
|
2037
2011
|
load();
|
|
2038
2012
|
}, [load]);
|
|
2013
|
+
const seenReload = (0, react.useRef)(props.reloadKey);
|
|
2014
|
+
(0, react.useEffect)(() => {
|
|
2015
|
+
if (seenReload.current === props.reloadKey) return;
|
|
2016
|
+
seenReload.current = props.reloadKey;
|
|
2017
|
+
load(true);
|
|
2018
|
+
}, [load, props.reloadKey]);
|
|
2039
2019
|
(0, react.useEffect)(() => {
|
|
2040
2020
|
if (!catalogUnavailable || !props.catalogKnown || directoryRetryStarted.current) return;
|
|
2041
2021
|
directoryRetryStarted.current = true;
|
|
@@ -2348,7 +2328,7 @@ window.__ModuleLoader__.load({
|
|
|
2348
2328
|
}),
|
|
2349
2329
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("fieldset", {
|
|
2350
2330
|
className: css.providerChoice,
|
|
2351
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("legend", { children: t("overview.providerLabel") }), providers.map((provider) => {
|
|
2331
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("legend", { children: t("overview.providerLabel") }), readyFirst(providers).map((provider) => {
|
|
2352
2332
|
const serviceMissing = provider.serviceConfigured === false;
|
|
2353
2333
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("label", {
|
|
2354
2334
|
"data-selected": spaceProviderId === provider.id || void 0,
|
|
@@ -2378,6 +2358,10 @@ window.__ModuleLoader__.load({
|
|
|
2378
2358
|
}, provider.id);
|
|
2379
2359
|
})]
|
|
2380
2360
|
}),
|
|
2361
|
+
providers.some((provider) => provider.serviceConfigured === false) && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("small", {
|
|
2362
|
+
className: css.providerEnableHint,
|
|
2363
|
+
children: t("overview.providerEnableHint")
|
|
2364
|
+
}),
|
|
2381
2365
|
selectedProvider !== void 0 && selectedProvider.origin !== "native" && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ProviderMemoryFields, {
|
|
2382
2366
|
provider: selectedProvider,
|
|
2383
2367
|
connection: providerDrafts[selectedProvider.id] ?? {},
|
|
@@ -2409,14 +2393,7 @@ window.__ModuleLoader__.load({
|
|
|
2409
2393
|
title: t("nav.overview"),
|
|
2410
2394
|
description: t("overview.pageDescription"),
|
|
2411
2395
|
meta: fullSyncAge,
|
|
2412
|
-
...loading ? { loadingLabel: catalogLoading ? t("overview.directoryLoading") : graphLoading ? t("overview.snapshotLoading") : t("overview.healthLoading") } : {}
|
|
2413
|
-
action: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
2414
|
-
type: "button",
|
|
2415
|
-
className: css.secondaryButton,
|
|
2416
|
-
disabled: loading,
|
|
2417
|
-
onClick: () => void load(),
|
|
2418
|
-
children: loading ? t("overview.syncing") : t("overview.syncNow")
|
|
2419
|
-
})
|
|
2396
|
+
...loading ? { loadingLabel: catalogLoading ? t("overview.directoryLoading") : graphLoading ? t("overview.snapshotLoading") : t("overview.healthLoading") } : {}
|
|
2420
2397
|
}),
|
|
2421
2398
|
error !== null && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
2422
2399
|
className: css.inlineError,
|
|
@@ -2431,9 +2408,9 @@ window.__ModuleLoader__.load({
|
|
|
2431
2408
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [
|
|
2432
2409
|
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("h3", { children: t("overview.directory") }),
|
|
2433
2410
|
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", { children: t("overview.directory.description") }),
|
|
2434
|
-
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("code", {
|
|
2411
|
+
catalogUnavailable && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("code", {
|
|
2435
2412
|
className: css.bodyDirectoryPath,
|
|
2436
|
-
children:
|
|
2413
|
+
children: t("overview.directory.unsynced")
|
|
2437
2414
|
})
|
|
2438
2415
|
] }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
2439
2416
|
className: (0, dsh_mnemon_client.appearanceClass)(css.bodyDirectoryControls, sidebarCss.bodyDirectoryActions),
|
|
@@ -2488,10 +2465,12 @@ window.__ModuleLoader__.load({
|
|
|
2488
2465
|
className: sidebarCss.bodyCardHeader,
|
|
2489
2466
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
2490
2467
|
className: sidebarCss.bodyCardIdentity,
|
|
2491
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { className: css.bodySignal }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("strong", {
|
|
2468
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { className: css.bodySignal }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("strong", {
|
|
2469
|
+
title: body.id,
|
|
2470
|
+
children: body.name
|
|
2471
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
2492
2472
|
className: sidebarCss.bodyCardMeta,
|
|
2493
2473
|
children: [
|
|
2494
|
-
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("code", { children: body.id }),
|
|
2495
2474
|
/* @__PURE__ */ (0, react_jsx_runtime.jsx)(MemoryProviderBadge, {
|
|
2496
2475
|
providerId: body.provider.id,
|
|
2497
2476
|
label: body.provider.label
|
|
@@ -2588,7 +2567,7 @@ window.__ModuleLoader__.load({
|
|
|
2588
2567
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
2589
2568
|
type: "button",
|
|
2590
2569
|
"data-dialog-close": true,
|
|
2591
|
-
className: css.
|
|
2570
|
+
className: css.secondaryButton,
|
|
2592
2571
|
disabled: creating,
|
|
2593
2572
|
onClick: () => setCreatingSpaceOpen(false),
|
|
2594
2573
|
children: t("common.cancel")
|
|
@@ -2616,7 +2595,7 @@ window.__ModuleLoader__.load({
|
|
|
2616
2595
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
2617
2596
|
type: "button",
|
|
2618
2597
|
"data-dialog-close": true,
|
|
2619
|
-
className: css.
|
|
2598
|
+
className: css.secondaryButton,
|
|
2620
2599
|
disabled: metadataBusy,
|
|
2621
2600
|
onClick: () => setMetadataOpen(false),
|
|
2622
2601
|
children: t("common.cancel")
|
|
@@ -2704,7 +2683,7 @@ window.__ModuleLoader__.load({
|
|
|
2704
2683
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
2705
2684
|
type: "button",
|
|
2706
2685
|
"data-dialog-close": true,
|
|
2707
|
-
className: css.
|
|
2686
|
+
className: css.secondaryButton,
|
|
2708
2687
|
disabled: savingSpace === editingSpaceView.id,
|
|
2709
2688
|
onClick: () => setEditingSpace(null),
|
|
2710
2689
|
children: t("common.cancel")
|
|
@@ -2729,7 +2708,7 @@ window.__ModuleLoader__.load({
|
|
|
2729
2708
|
type: "button",
|
|
2730
2709
|
"data-dialog-close": true,
|
|
2731
2710
|
"data-autofocus": true,
|
|
2732
|
-
className: css.
|
|
2711
|
+
className: css.secondaryButton,
|
|
2733
2712
|
disabled: deletingSpace === deletingSpaceView.id,
|
|
2734
2713
|
onClick: () => setConfirmingDeleteSpace(null),
|
|
2735
2714
|
children: t("common.cancel")
|
|
@@ -2952,6 +2931,11 @@ window.__ModuleLoader__.load({
|
|
|
2952
2931
|
const [sources, setSources] = (0, react.useState)([]);
|
|
2953
2932
|
const [searchKind, setSearchKind] = (0, react.useState)(null);
|
|
2954
2933
|
const [agentAnswer, setAgentAnswer] = (0, react.useState)(null);
|
|
2934
|
+
/** A citation names the recalled memory it points at, not its identifiers. */
|
|
2935
|
+
const citationLabel = (citation) => {
|
|
2936
|
+
const cited = results.find((result) => `${result.memoryBodyId}/${result.id}` === citation || result.id === citation);
|
|
2937
|
+
return cited === void 0 ? (0, dsh_mnemon_client.short)(citation.split("/").at(-1) ?? citation, 12) : (0, dsh_mnemon_client.short)(cited.content, 40);
|
|
2938
|
+
};
|
|
2955
2939
|
const [searched, setSearched] = (0, react.useState)(false);
|
|
2956
2940
|
const [error, setError] = (0, react.useState)(null);
|
|
2957
2941
|
const [relatedTo, setRelatedTo] = (0, react.useState)(null);
|
|
@@ -2964,6 +2948,12 @@ window.__ModuleLoader__.load({
|
|
|
2964
2948
|
(0, react.useEffect)(() => {
|
|
2965
2949
|
if (props.seed !== "") setQuery(props.seed);
|
|
2966
2950
|
}, [props.seed]);
|
|
2951
|
+
const ranSeed = (0, react.useRef)("");
|
|
2952
|
+
(0, react.useEffect)(() => {
|
|
2953
|
+
if (props.seed === "" || props.status === null || ranSeed.current === props.seed) return;
|
|
2954
|
+
ranSeed.current = props.seed;
|
|
2955
|
+
runSearch(false, props.seed);
|
|
2956
|
+
}, [props.seed, props.status]);
|
|
2967
2957
|
(0, react.useEffect)(() => {
|
|
2968
2958
|
if (relatedTo === null || props.onRevealElement === void 0) return;
|
|
2969
2959
|
const reveal = () => {
|
|
@@ -2982,8 +2972,8 @@ window.__ModuleLoader__.load({
|
|
|
2982
2972
|
relatedRequests,
|
|
2983
2973
|
props.onRevealElement
|
|
2984
2974
|
]);
|
|
2985
|
-
const runSearch = async (withAgent) => {
|
|
2986
|
-
if (
|
|
2975
|
+
const runSearch = async (withAgent, text = query) => {
|
|
2976
|
+
if (text.trim() === "") return;
|
|
2987
2977
|
relatedRequests.begin();
|
|
2988
2978
|
setSearchKind(withAgent ? "agent" : "direct");
|
|
2989
2979
|
setSearched(true);
|
|
@@ -2994,7 +2984,7 @@ window.__ModuleLoader__.load({
|
|
|
2994
2984
|
setVisibleRelatedLimit(pageSize);
|
|
2995
2985
|
try {
|
|
2996
2986
|
const request = {
|
|
2997
|
-
query,
|
|
2987
|
+
query: text,
|
|
2998
2988
|
mode,
|
|
2999
2989
|
...category === "" ? {} : { category },
|
|
3000
2990
|
limit: props.status?.defaultRecallLimit ?? 10
|
|
@@ -3065,55 +3055,50 @@ window.__ModuleLoader__.load({
|
|
|
3065
3055
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("form", {
|
|
3066
3056
|
className: css.searchBar,
|
|
3067
3057
|
onSubmit: (event) => void search(event),
|
|
3068
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.
|
|
3058
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.SearchField, {
|
|
3069
3059
|
className: css.queryField,
|
|
3070
|
-
|
|
3071
|
-
|
|
3072
|
-
|
|
3073
|
-
|
|
3074
|
-
}),
|
|
3075
|
-
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
|
|
3076
|
-
value: query,
|
|
3077
|
-
onChange: (event) => setQuery(event.target.value),
|
|
3078
|
-
placeholder: t("search.placeholder"),
|
|
3079
|
-
"aria-label": t("search.queryAria")
|
|
3080
|
-
}),
|
|
3081
|
-
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("kbd", { children: "↵" })
|
|
3082
|
-
]
|
|
3060
|
+
label: t("search.queryAria"),
|
|
3061
|
+
value: query,
|
|
3062
|
+
onChange: (event) => setQuery(event.target.value),
|
|
3063
|
+
placeholder: t("search.placeholder")
|
|
3083
3064
|
}), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
3084
3065
|
className: css.searchControls,
|
|
3085
3066
|
children: [
|
|
3086
|
-
/* @__PURE__ */ (0, react_jsx_runtime.
|
|
3067
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.SelectField, {
|
|
3068
|
+
className: css.searchChoice,
|
|
3069
|
+
label: t("common.category"),
|
|
3070
|
+
ariaLabel: t("search.categoryAria"),
|
|
3087
3071
|
value: category,
|
|
3088
|
-
|
|
3089
|
-
"aria-label": t("search.categoryAria"),
|
|
3090
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("option", {
|
|
3072
|
+
options: [{
|
|
3091
3073
|
value: "",
|
|
3092
|
-
|
|
3093
|
-
}
|
|
3074
|
+
label: t("common.allCategories")
|
|
3075
|
+
}, ...CATEGORIES.map((value) => ({
|
|
3094
3076
|
value,
|
|
3095
|
-
|
|
3096
|
-
}
|
|
3097
|
-
|
|
3098
|
-
|
|
3077
|
+
label: categoryLabel(t, value)
|
|
3078
|
+
}))],
|
|
3079
|
+
onChange: setCategory
|
|
3080
|
+
}),
|
|
3081
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.SelectField, {
|
|
3082
|
+
className: css.searchChoice,
|
|
3083
|
+
label: t("search.strategy"),
|
|
3084
|
+
ariaLabel: t("search.modeAria"),
|
|
3099
3085
|
value: mode,
|
|
3100
|
-
|
|
3101
|
-
|
|
3102
|
-
children: [
|
|
3103
|
-
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("option", {
|
|
3086
|
+
options: [
|
|
3087
|
+
{
|
|
3104
3088
|
value: "smart",
|
|
3105
|
-
|
|
3106
|
-
}
|
|
3107
|
-
|
|
3089
|
+
label: t("search.modeSmart")
|
|
3090
|
+
},
|
|
3091
|
+
{
|
|
3108
3092
|
value: "keyword",
|
|
3109
|
-
|
|
3110
|
-
}
|
|
3111
|
-
|
|
3093
|
+
label: t("search.modeKeyword")
|
|
3094
|
+
},
|
|
3095
|
+
{
|
|
3112
3096
|
value: "basic",
|
|
3113
|
-
|
|
3114
|
-
}
|
|
3115
|
-
]
|
|
3116
|
-
|
|
3097
|
+
label: t("search.modeBasic")
|
|
3098
|
+
}
|
|
3099
|
+
],
|
|
3100
|
+
onChange: setMode
|
|
3101
|
+
}),
|
|
3117
3102
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
3118
3103
|
className: css.searchActions,
|
|
3119
3104
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
@@ -3144,14 +3129,21 @@ window.__ModuleLoader__.load({
|
|
|
3144
3129
|
className: css.agentAnswer,
|
|
3145
3130
|
"aria-label": t("search.agentAnswer"),
|
|
3146
3131
|
children: [
|
|
3147
|
-
/* @__PURE__ */ (0, react_jsx_runtime.
|
|
3132
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
3148
3133
|
className: css.agentAnswerHeading,
|
|
3149
|
-
children:
|
|
3134
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { children: t("search.agentAnswerHint") }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("h3", { children: t("search.agentAnswer") })] })
|
|
3150
3135
|
}),
|
|
3151
3136
|
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", { children: agentAnswer.answer }),
|
|
3152
|
-
agentAnswer.citations.length > 0 && /* @__PURE__ */ (0, react_jsx_runtime.
|
|
3137
|
+
agentAnswer.citations.length > 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
3153
3138
|
className: css.agentCitations,
|
|
3154
|
-
children: agentAnswer.citations.map((citation) => /* @__PURE__ */ (0, react_jsx_runtime.
|
|
3139
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("small", { children: t("search.citations") }), agentAnswer.citations.map((citation, index) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
|
|
3140
|
+
title: citation,
|
|
3141
|
+
children: [
|
|
3142
|
+
index + 1,
|
|
3143
|
+
". ",
|
|
3144
|
+
citationLabel(citation)
|
|
3145
|
+
]
|
|
3146
|
+
}, citation))]
|
|
3155
3147
|
})
|
|
3156
3148
|
]
|
|
3157
3149
|
}),
|
|
@@ -3322,8 +3314,8 @@ window.__ModuleLoader__.load({
|
|
|
3322
3314
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("form", {
|
|
3323
3315
|
className: css.entitySearch,
|
|
3324
3316
|
onSubmit: submit,
|
|
3325
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
3326
|
-
|
|
3317
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.SearchField, {
|
|
3318
|
+
label: t("entities.nameAria"),
|
|
3327
3319
|
value: entity,
|
|
3328
3320
|
onChange: (event) => {
|
|
3329
3321
|
setEntity(event.target.value);
|
|
@@ -3338,7 +3330,7 @@ window.__ModuleLoader__.load({
|
|
|
3338
3330
|
placeholder: t("entities.placeholder")
|
|
3339
3331
|
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
3340
3332
|
type: "submit",
|
|
3341
|
-
className: css.
|
|
3333
|
+
className: css.secondaryButton,
|
|
3342
3334
|
disabled: loading || entity.trim() === "",
|
|
3343
3335
|
children: t("entities.action")
|
|
3344
3336
|
})]
|
|
@@ -3501,7 +3493,7 @@ window.__ModuleLoader__.load({
|
|
|
3501
3493
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
3502
3494
|
type: "button",
|
|
3503
3495
|
"data-dialog-close": true,
|
|
3504
|
-
className: css.
|
|
3496
|
+
className: css.secondaryButton,
|
|
3505
3497
|
disabled: saving,
|
|
3506
3498
|
onClick: props.onClose,
|
|
3507
3499
|
children: t("common.cancel")
|
|
@@ -3587,7 +3579,7 @@ window.__ModuleLoader__.load({
|
|
|
3587
3579
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { children: "02" }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("strong", { children: t(mode === "manual" ? "strategy.manualTitle" : "strategy.automaticTitle") }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("small", { children: t(mode === "manual" ? "strategy.manualDescription" : "strategy.automaticDescription") })] })]
|
|
3588
3580
|
}), mode === "manual" ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("fieldset", {
|
|
3589
3581
|
className: css.providerChoice,
|
|
3590
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("legend", { children: t("overview.providerLabel") }), providers.map((provider) => {
|
|
3582
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("legend", { children: t("overview.providerLabel") }), readyFirst(providers).map((provider) => {
|
|
3591
3583
|
const disabled = provider.serviceConfigured === false;
|
|
3592
3584
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("label", {
|
|
3593
3585
|
"data-selected": providerId === provider.id || void 0,
|
|
@@ -3626,7 +3618,7 @@ window.__ModuleLoader__.load({
|
|
|
3626
3618
|
children: [
|
|
3627
3619
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
3628
3620
|
className: css.placementPolicyHeading,
|
|
3629
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("strong", { children: t("overview.placementPolicy") }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("small", { children: t("overview.placementPolicyHint") })] }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
3621
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("strong", { children: t("overview.placementPolicy") }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("small", { children: t("overview.placementPolicyHint") })] }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.TaskAgentTag, { available: props.agentAvailable })]
|
|
3630
3622
|
}),
|
|
3631
3623
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("label", { children: [t("overview.placementPrompt"), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("textarea", {
|
|
3632
3624
|
"aria-label": t("overview.placementPrompt"),
|
|
@@ -3638,40 +3630,39 @@ window.__ModuleLoader__.load({
|
|
|
3638
3630
|
})] }),
|
|
3639
3631
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
3640
3632
|
className: css.placementRuleGrid,
|
|
3641
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.
|
|
3642
|
-
|
|
3633
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.SelectField, {
|
|
3634
|
+
label: t("overview.dataBoundary"),
|
|
3643
3635
|
value: dataBoundary,
|
|
3644
|
-
|
|
3645
|
-
const value = event.target.value;
|
|
3646
|
-
setDataBoundary(value);
|
|
3647
|
-
if (value === "local-only") setAutomaticProviderIds((current) => current.filter((id) => providers.find((provider) => provider.id === id)?.kind === "local"));
|
|
3648
|
-
},
|
|
3649
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("option", {
|
|
3636
|
+
options: [{
|
|
3650
3637
|
value: "allow-remote",
|
|
3651
|
-
|
|
3652
|
-
}
|
|
3638
|
+
label: t("overview.dataBoundaryRemote")
|
|
3639
|
+
}, {
|
|
3653
3640
|
value: "local-only",
|
|
3654
|
-
|
|
3655
|
-
}
|
|
3656
|
-
|
|
3657
|
-
|
|
3641
|
+
label: t("overview.dataBoundaryLocal")
|
|
3642
|
+
}],
|
|
3643
|
+
onChange: (value) => {
|
|
3644
|
+
setDataBoundary(value);
|
|
3645
|
+
if (value === "local-only") setAutomaticProviderIds((current) => current.filter((id) => providers.find((provider) => provider.id === id)?.kind === "local"));
|
|
3646
|
+
}
|
|
3647
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.SelectField, {
|
|
3648
|
+
label: t("overview.preference"),
|
|
3658
3649
|
value: preference,
|
|
3659
|
-
|
|
3660
|
-
|
|
3661
|
-
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("option", {
|
|
3650
|
+
options: [
|
|
3651
|
+
{
|
|
3662
3652
|
value: "balanced",
|
|
3663
|
-
|
|
3664
|
-
}
|
|
3665
|
-
|
|
3653
|
+
label: t("overview.preferenceBalanced")
|
|
3654
|
+
},
|
|
3655
|
+
{
|
|
3666
3656
|
value: "local-first",
|
|
3667
|
-
|
|
3668
|
-
}
|
|
3669
|
-
|
|
3657
|
+
label: t("overview.preferenceLocal")
|
|
3658
|
+
},
|
|
3659
|
+
{
|
|
3670
3660
|
value: "shared-first",
|
|
3671
|
-
|
|
3672
|
-
}
|
|
3673
|
-
]
|
|
3674
|
-
|
|
3661
|
+
label: t("overview.preferenceShared")
|
|
3662
|
+
}
|
|
3663
|
+
],
|
|
3664
|
+
onChange: setPreference
|
|
3665
|
+
})]
|
|
3675
3666
|
}),
|
|
3676
3667
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("fieldset", {
|
|
3677
3668
|
className: css.capabilityRules,
|
|
@@ -3701,7 +3692,7 @@ window.__ModuleLoader__.load({
|
|
|
3701
3692
|
}),
|
|
3702
3693
|
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
3703
3694
|
className: css.placementCandidates,
|
|
3704
|
-
children: providers.map((provider) => {
|
|
3695
|
+
children: readyFirst(providers).map((provider) => {
|
|
3705
3696
|
const selected = automaticProviderIds.includes(provider.id);
|
|
3706
3697
|
const disabled = provider.serviceConfigured === false && !selected || dataBoundary === "local-only" && provider.kind === "remote";
|
|
3707
3698
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("label", {
|
|
@@ -3747,6 +3738,7 @@ window.__ModuleLoader__.load({
|
|
|
3747
3738
|
function RememberPage(props) {
|
|
3748
3739
|
const t = useT();
|
|
3749
3740
|
const rememberFormId = (0, react.useId)();
|
|
3741
|
+
const candidateId = (0, react.useId)();
|
|
3750
3742
|
const [content, setContent] = (0, react.useState)(props.seed);
|
|
3751
3743
|
const [category, setCategory] = (0, react.useState)("general");
|
|
3752
3744
|
const [importance, setImportance] = (0, react.useState)(3);
|
|
@@ -3755,7 +3747,7 @@ window.__ModuleLoader__.load({
|
|
|
3755
3747
|
const [memoryBodyId, setMemoryBodyId] = (0, react.useState)("");
|
|
3756
3748
|
const [supervising, setSupervising] = (0, react.useState)(false);
|
|
3757
3749
|
const [saving, setSaving] = (0, react.useState)(false);
|
|
3758
|
-
const [
|
|
3750
|
+
const [outcome, setOutcome] = (0, react.useState)(null);
|
|
3759
3751
|
(0, react.useEffect)(() => {
|
|
3760
3752
|
if (props.seed !== "") setContent(props.seed);
|
|
3761
3753
|
}, [props.seed]);
|
|
@@ -3763,33 +3755,39 @@ window.__ModuleLoader__.load({
|
|
|
3763
3755
|
if (memoryBodyId === "" && props.memoryBodies.length > 0) setMemoryBodyId((props.memoryBodies.find((body) => body.active) ?? props.memoryBodies[0]).id);
|
|
3764
3756
|
}, [memoryBodyId, props.memoryBodies]);
|
|
3765
3757
|
const selectedMemoryBody = props.memoryBodies.find((body) => body.id === memoryBodyId);
|
|
3758
|
+
const candidate = content.trim();
|
|
3759
|
+
const answered = outcome !== null && outcome.content === candidate;
|
|
3760
|
+
const busy = supervising || saving;
|
|
3766
3761
|
const supervise = async (event) => {
|
|
3767
3762
|
event.preventDefault();
|
|
3768
|
-
if (
|
|
3763
|
+
if (candidate === "" || !props.agentAvailable || answered || busy) return;
|
|
3769
3764
|
setSupervising(true);
|
|
3770
|
-
|
|
3765
|
+
setOutcome(null);
|
|
3771
3766
|
try {
|
|
3772
|
-
const response = await props.client.supervise(
|
|
3773
|
-
|
|
3767
|
+
const response = await props.client.supervise(candidate);
|
|
3768
|
+
setOutcome({
|
|
3769
|
+
content: candidate,
|
|
3770
|
+
action: response.action,
|
|
3771
|
+
summary: response.summary
|
|
3772
|
+
});
|
|
3774
3773
|
props.onMutate();
|
|
3775
|
-
if (response.action !== "skipped") {
|
|
3776
|
-
setContent("");
|
|
3777
|
-
props.onComplete?.();
|
|
3778
|
-
}
|
|
3779
3774
|
} catch (reason) {
|
|
3780
|
-
|
|
3775
|
+
setOutcome({
|
|
3776
|
+
content: candidate,
|
|
3777
|
+
error: (0, dsh_mnemon_client.message)(reason)
|
|
3778
|
+
});
|
|
3781
3779
|
} finally {
|
|
3782
3780
|
setSupervising(false);
|
|
3783
3781
|
}
|
|
3784
3782
|
};
|
|
3785
3783
|
const manualSave = async (event) => {
|
|
3786
3784
|
event.preventDefault();
|
|
3787
|
-
if (
|
|
3785
|
+
if (candidate === "" || busy) return;
|
|
3788
3786
|
setSaving(true);
|
|
3789
|
-
|
|
3787
|
+
setOutcome(null);
|
|
3790
3788
|
try {
|
|
3791
3789
|
const response = await props.client.remember({
|
|
3792
|
-
content,
|
|
3790
|
+
content: candidate,
|
|
3793
3791
|
category,
|
|
3794
3792
|
importance,
|
|
3795
3793
|
tags: tags.split(",").map((value) => value.trim()).filter(Boolean),
|
|
@@ -3797,18 +3795,17 @@ window.__ModuleLoader__.load({
|
|
|
3797
3795
|
source: "user",
|
|
3798
3796
|
...memoryBodyId === "" ? {} : { memoryBodyId }
|
|
3799
3797
|
});
|
|
3800
|
-
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
|
|
3804
|
-
|
|
3805
|
-
|
|
3806
|
-
setEntities("");
|
|
3807
|
-
props.onMutate();
|
|
3808
|
-
props.onComplete?.();
|
|
3809
|
-
}
|
|
3798
|
+
setOutcome({
|
|
3799
|
+
content: candidate,
|
|
3800
|
+
action: typeof response.action === "string" ? response.action : "stored",
|
|
3801
|
+
summary: typeof response.summary === "string" ? response.summary : ""
|
|
3802
|
+
});
|
|
3803
|
+
props.onMutate();
|
|
3810
3804
|
} catch (reason) {
|
|
3811
|
-
|
|
3805
|
+
setOutcome({
|
|
3806
|
+
content: candidate,
|
|
3807
|
+
error: (0, dsh_mnemon_client.message)(reason)
|
|
3808
|
+
});
|
|
3812
3809
|
} finally {
|
|
3813
3810
|
setSaving(false);
|
|
3814
3811
|
}
|
|
@@ -3821,31 +3818,29 @@ window.__ModuleLoader__.load({
|
|
|
3821
3818
|
onSubmit: (event) => void supervise(event),
|
|
3822
3819
|
children: [
|
|
3823
3820
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
3824
|
-
className: css.
|
|
3825
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("
|
|
3826
|
-
|
|
3827
|
-
children:
|
|
3828
|
-
})]
|
|
3821
|
+
className: css.candidateHeading,
|
|
3822
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("label", {
|
|
3823
|
+
htmlFor: candidateId,
|
|
3824
|
+
children: t("remember.candidate")
|
|
3825
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.TaskAgentTag, { available: props.agentAvailable })]
|
|
3829
3826
|
}),
|
|
3830
|
-
/* @__PURE__ */ (0, react_jsx_runtime.
|
|
3831
|
-
|
|
3832
|
-
|
|
3833
|
-
|
|
3834
|
-
|
|
3835
|
-
|
|
3836
|
-
|
|
3837
|
-
rows: 8,
|
|
3838
|
-
placeholder: t("remember.placeholder")
|
|
3839
|
-
})]
|
|
3827
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("textarea", {
|
|
3828
|
+
id: candidateId,
|
|
3829
|
+
value: content,
|
|
3830
|
+
onChange: (event) => setContent(event.target.value),
|
|
3831
|
+
maxLength: 8e3,
|
|
3832
|
+
rows: 8,
|
|
3833
|
+
placeholder: t("remember.placeholder")
|
|
3840
3834
|
}),
|
|
3841
3835
|
!props.agentAvailable && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
|
|
3842
3836
|
className: css.sessionHint,
|
|
3843
3837
|
children: t("remember.taskAgentHint")
|
|
3844
3838
|
}),
|
|
3845
|
-
|
|
3846
|
-
|
|
3847
|
-
|
|
3848
|
-
|
|
3839
|
+
outcome !== null && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.WriteReceipt, {
|
|
3840
|
+
action: outcome.action,
|
|
3841
|
+
summary: outcome.summary,
|
|
3842
|
+
error: outcome.error,
|
|
3843
|
+
onView: props.onView
|
|
3849
3844
|
})
|
|
3850
3845
|
]
|
|
3851
3846
|
}), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("details", {
|
|
@@ -3856,52 +3851,45 @@ window.__ModuleLoader__.load({
|
|
|
3856
3851
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
3857
3852
|
className: css.formGrid,
|
|
3858
3853
|
children: [
|
|
3859
|
-
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("
|
|
3854
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
3860
3855
|
className: css.fieldWide,
|
|
3861
|
-
children: [
|
|
3862
|
-
t("remember.target"),
|
|
3863
|
-
|
|
3864
|
-
|
|
3865
|
-
value:
|
|
3866
|
-
|
|
3867
|
-
|
|
3868
|
-
|
|
3869
|
-
|
|
3870
|
-
|
|
3871
|
-
|
|
3872
|
-
|
|
3873
|
-
body.active ? ` · ${t("common.active")}` : ""
|
|
3874
|
-
]
|
|
3875
|
-
}, body.id))
|
|
3876
|
-
}),
|
|
3877
|
-
selectedMemoryBody?.provider.capabilities.writeMode === "async-extracting" && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("small", {
|
|
3878
|
-
className: css.providerWriteHint,
|
|
3879
|
-
children: t("remember.asyncProviderHint")
|
|
3880
|
-
})
|
|
3881
|
-
]
|
|
3856
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.SelectField, {
|
|
3857
|
+
label: t("remember.target"),
|
|
3858
|
+
value: memoryBodyId,
|
|
3859
|
+
options: props.memoryBodies.map((body) => ({
|
|
3860
|
+
value: body.id,
|
|
3861
|
+
label: `${body.name} · ${body.provider.label}${body.active ? ` · ${t("common.active")}` : ""}`
|
|
3862
|
+
})),
|
|
3863
|
+
onChange: setMemoryBodyId
|
|
3864
|
+
}), selectedMemoryBody?.provider.capabilities.writeMode === "async-extracting" && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("small", {
|
|
3865
|
+
className: css.providerWriteHint,
|
|
3866
|
+
children: t("remember.asyncProviderHint")
|
|
3867
|
+
})]
|
|
3882
3868
|
}),
|
|
3883
|
-
/* @__PURE__ */ (0, react_jsx_runtime.
|
|
3869
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.SelectField, {
|
|
3870
|
+
label: t("common.category"),
|
|
3884
3871
|
value: category,
|
|
3885
|
-
|
|
3886
|
-
children: CATEGORIES.map((value) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("option", {
|
|
3872
|
+
options: CATEGORIES.map((value) => ({
|
|
3887
3873
|
value,
|
|
3888
|
-
|
|
3889
|
-
}
|
|
3890
|
-
|
|
3891
|
-
|
|
3892
|
-
|
|
3893
|
-
|
|
3894
|
-
|
|
3874
|
+
label: categoryLabel(t, value)
|
|
3875
|
+
})),
|
|
3876
|
+
onChange: setCategory
|
|
3877
|
+
}),
|
|
3878
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.SelectField, {
|
|
3879
|
+
label: t("common.importanceLabel"),
|
|
3880
|
+
value: String(importance),
|
|
3881
|
+
options: [
|
|
3895
3882
|
1,
|
|
3896
3883
|
2,
|
|
3897
3884
|
3,
|
|
3898
3885
|
4,
|
|
3899
3886
|
5
|
|
3900
|
-
].map((value) =>
|
|
3901
|
-
value,
|
|
3902
|
-
|
|
3903
|
-
}
|
|
3904
|
-
|
|
3887
|
+
].map((value) => ({
|
|
3888
|
+
value: String(value),
|
|
3889
|
+
label: `${value} / 5`
|
|
3890
|
+
})),
|
|
3891
|
+
onChange: (value) => setImportance(Number(value))
|
|
3892
|
+
}),
|
|
3905
3893
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("label", {
|
|
3906
3894
|
className: css.fieldWide,
|
|
3907
3895
|
children: [t("remember.entities"), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
|
|
@@ -3924,7 +3912,7 @@ window.__ModuleLoader__.load({
|
|
|
3924
3912
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", { children: t("remember.advancedText") }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
3925
3913
|
type: "submit",
|
|
3926
3914
|
className: css.secondaryButton,
|
|
3927
|
-
disabled:
|
|
3915
|
+
disabled: busy || candidate === "" || memoryBodyId === "" || answered,
|
|
3928
3916
|
children: saving ? t("remember.saving") : t("remember.advancedAction")
|
|
3929
3917
|
})]
|
|
3930
3918
|
})]
|
|
@@ -3934,22 +3922,22 @@ window.__ModuleLoader__.load({
|
|
|
3934
3922
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.SidebarModal, {
|
|
3935
3923
|
title: t("remember.title"),
|
|
3936
3924
|
description: t("remember.description"),
|
|
3937
|
-
busy
|
|
3925
|
+
busy,
|
|
3938
3926
|
onClose: props.onClose,
|
|
3939
3927
|
footer: props.writeEnabled ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
3940
3928
|
className: css.modalFooterActions,
|
|
3941
3929
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
3942
3930
|
type: "button",
|
|
3943
3931
|
"data-dialog-close": true,
|
|
3944
|
-
className: css.
|
|
3945
|
-
disabled:
|
|
3932
|
+
className: css.secondaryButton,
|
|
3933
|
+
disabled: busy,
|
|
3946
3934
|
onClick: props.onClose,
|
|
3947
|
-
children: t("common.cancel")
|
|
3935
|
+
children: t(outcome === null ? "common.cancel" : "common.close")
|
|
3948
3936
|
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
3949
3937
|
type: "submit",
|
|
3950
3938
|
form: rememberFormId,
|
|
3951
3939
|
className: css.primaryButton,
|
|
3952
|
-
disabled:
|
|
3940
|
+
disabled: busy || candidate === "" || !props.agentAvailable || answered,
|
|
3953
3941
|
children: supervising ? t("remember.processing") : t("remember.action")
|
|
3954
3942
|
})]
|
|
3955
3943
|
}) : void 0,
|
|
@@ -4026,27 +4014,28 @@ window.__ModuleLoader__.load({
|
|
|
4026
4014
|
className: css.listToolbar,
|
|
4027
4015
|
onSubmit: submit,
|
|
4028
4016
|
children: [
|
|
4029
|
-
/* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
4030
|
-
|
|
4017
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.SearchField, {
|
|
4018
|
+
label: t("content.filterAria"),
|
|
4031
4019
|
value: query,
|
|
4032
4020
|
onChange: (event) => setQuery(event.target.value),
|
|
4033
4021
|
placeholder: t("content.filterPlaceholder")
|
|
4034
4022
|
}),
|
|
4035
|
-
/* @__PURE__ */ (0, react_jsx_runtime.
|
|
4036
|
-
|
|
4023
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.SelectField, {
|
|
4024
|
+
hideLabel: true,
|
|
4025
|
+
label: t("content.categoryAria"),
|
|
4037
4026
|
value: category,
|
|
4038
|
-
|
|
4039
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("option", {
|
|
4027
|
+
options: [{
|
|
4040
4028
|
value: "",
|
|
4041
|
-
|
|
4042
|
-
}
|
|
4029
|
+
label: t("common.allCategories")
|
|
4030
|
+
}, ...CATEGORIES.map((value) => ({
|
|
4043
4031
|
value,
|
|
4044
|
-
|
|
4045
|
-
}
|
|
4032
|
+
label: categoryLabel(t, value)
|
|
4033
|
+
}))],
|
|
4034
|
+
onChange: setCategory
|
|
4046
4035
|
}),
|
|
4047
4036
|
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
4048
4037
|
type: "submit",
|
|
4049
|
-
className: css.
|
|
4038
|
+
className: css.secondaryButton,
|
|
4050
4039
|
disabled: loading,
|
|
4051
4040
|
children: loading ? t("common.loading") : t("content.apply")
|
|
4052
4041
|
})
|
|
@@ -4181,6 +4170,14 @@ window.__ModuleLoader__.load({
|
|
|
4181
4170
|
setRevision((value) => value + 1);
|
|
4182
4171
|
props.onRefresh?.();
|
|
4183
4172
|
}, [props.onRefresh]);
|
|
4173
|
+
const refreshKey = (0, react.useRef)(props.refreshKey);
|
|
4174
|
+
const [reloads, setReloads] = (0, react.useState)(0);
|
|
4175
|
+
(0, react.useEffect)(() => {
|
|
4176
|
+
if (refreshKey.current === props.refreshKey) return;
|
|
4177
|
+
refreshKey.current = props.refreshKey;
|
|
4178
|
+
setRevision((value) => value + 1);
|
|
4179
|
+
setReloads((value) => value + 1);
|
|
4180
|
+
}, [props.refreshKey]);
|
|
4184
4181
|
(0, react.useEffect)(() => {
|
|
4185
4182
|
setPage(props.management !== void 0 && props.navigationInput === void 0 ? rememberedPages.get(props.management) ?? (props.page === "remember" ? "spaces" : props.page) : props.page === "remember" ? "spaces" : props.page);
|
|
4186
4183
|
setRememberOpen(props.page === "remember");
|
|
@@ -4235,7 +4232,7 @@ window.__ModuleLoader__.load({
|
|
|
4235
4232
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(dsh_mnemon_client.PageHeader, {
|
|
4236
4233
|
title: t("nav.spaces"),
|
|
4237
4234
|
description: t("overview.description"),
|
|
4238
|
-
|
|
4235
|
+
...writable ? {} : { meta: activationEnabled ? t("common.activationOnly") : t("common.readOnly") },
|
|
4239
4236
|
action: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
4240
4237
|
className: css.memoryHeaderActions,
|
|
4241
4238
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
@@ -4272,6 +4269,7 @@ window.__ModuleLoader__.load({
|
|
|
4272
4269
|
client,
|
|
4273
4270
|
metadataClient: client,
|
|
4274
4271
|
revision,
|
|
4272
|
+
reloadKey: reloads,
|
|
4275
4273
|
activationEnabled,
|
|
4276
4274
|
writeEnabled: writable,
|
|
4277
4275
|
agentAvailable,
|
|
@@ -4317,7 +4315,10 @@ window.__ModuleLoader__.load({
|
|
|
4317
4315
|
seed,
|
|
4318
4316
|
onMutate: refresh,
|
|
4319
4317
|
onClose: () => setRememberOpen(false),
|
|
4320
|
-
|
|
4318
|
+
onView: () => {
|
|
4319
|
+
setRememberOpen(false);
|
|
4320
|
+
setPage("content");
|
|
4321
|
+
}
|
|
4321
4322
|
}),
|
|
4322
4323
|
strategyOpen && preferences !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PersistenceStrategyDialog, {
|
|
4323
4324
|
client,
|