@wowyuarm/dsh-agent-team 0.1.3 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -1
- package/README.zh.md +7 -1
- package/package.json +1 -1
- package/packages/agent-team/README.md +3 -3
- package/packages/agent-team/README.zh.md +3 -3
- package/packages/agent-team/lib/index.js +38 -9
- package/packages/agent-team/lib/ledger.js +275 -108
- package/packages/agent-team/lib/spec.js +27 -11
- package/packages/agent-team/lib/typert.host.js +185 -86
- package/packages/agent-team/lib/typert.remote-client.d.ts +3 -1
- package/packages/agent-team/lib/typert.remote-client.d.ts.map +1 -1
- package/packages/agent-team/lib/typert.remote-client.js +139 -59
- package/packages/agent-team/lib/types/index.d.ts +12 -7
- package/packages/agent-team/lib/types/index.d.ts.map +1 -1
- package/packages/agent-team/lib/types/ledger.d.ts +16 -2
- package/packages/agent-team/lib/types/ledger.d.ts.map +1 -1
- package/packages/agent-team/lib/types/spec.d.ts.map +1 -1
- package/packages/agent-team/lib/types/types.d.ts +69 -30
- package/packages/agent-team/lib/types/types.d.ts.map +1 -1
- package/packages/agent-team/preset/team-member/agent.cordis.yml +1 -1
- package/packages/client-agent-team/README.md +2 -1
- package/packages/client-agent-team/README.zh.md +2 -1
- package/packages/client-agent-team/lib/client.js +625 -319
- package/packages/client-agent-team/lib/client.js.map +1 -1
- package/packages/client-agent-team/lib/types/client/TeamAgentsPanel.js +34 -12
- package/packages/client-agent-team/lib/types/client/TeamChannelPage.d.ts.map +1 -1
- package/packages/client-agent-team/lib/types/client/TeamChannelPage.js +14 -10
- package/packages/client-agent-team/lib/types/client/TeamComposer.d.ts +6 -1
- package/packages/client-agent-team/lib/types/client/TeamComposer.d.ts.map +1 -1
- package/packages/client-agent-team/lib/types/client/TeamComposer.js +4 -4
- package/packages/client-agent-team/lib/types/client/TeamConversation.d.ts +1 -1
- package/packages/client-agent-team/lib/types/client/TeamConversation.d.ts.map +1 -1
- package/packages/client-agent-team/lib/types/client/TeamConversation.js +3 -3
- package/packages/client-agent-team/lib/types/client/TeamMessage.d.ts +4 -1
- package/packages/client-agent-team/lib/types/client/TeamMessage.d.ts.map +1 -1
- package/packages/client-agent-team/lib/types/client/TeamMessage.js +16 -9
- package/packages/client-agent-team/lib/types/client/TeamThreadPage.d.ts +2 -1
- package/packages/client-agent-team/lib/types/client/TeamThreadPage.d.ts.map +1 -1
- package/packages/client-agent-team/lib/types/client/TeamThreadPage.js +71 -16
- package/packages/client-agent-team/lib/types/client/TeamWorkspaceBrowser.d.ts.map +1 -1
- package/packages/client-agent-team/lib/types/client/TeamWorkspaceBrowser.js +2 -1
- package/packages/client-agent-team/lib/types/client/index.d.ts.map +1 -1
- package/packages/client-agent-team/lib/types/client/index.js +1 -0
- package/packages/client-agent-team/lib/types/client/locales.d.ts +24 -0
- package/packages/client-agent-team/lib/types/client/locales.d.ts.map +1 -1
- package/packages/client-agent-team/lib/types/client/locales.js +24 -0
- package/packages/client-agent-team/lib/types/client/navigation.d.ts +1 -1
- package/packages/client-agent-team/lib/types/client/navigation.d.ts.map +1 -1
- package/packages/client-agent-team/lib/types/client/navigation.js +12 -6
- package/packages/client-agent-team/lib/types/client/slots.d.ts +2 -1
- package/packages/client-agent-team/lib/types/client/slots.d.ts.map +1 -1
- package/packages/client-agent-team/lib/types/client/task-refs.d.ts +1 -1
- package/packages/client-agent-team/lib/types/client/task-refs.d.ts.map +1 -1
- package/packages/client-agent-team/lib/types/client/task-refs.js +1 -1
- package/packages/client-agent-team/lib/types/client/team-formatters.d.ts +9 -0
- package/packages/client-agent-team/lib/types/client/team-formatters.d.ts.map +1 -1
- package/packages/client-agent-team/lib/types/client/team-formatters.js +13 -0
- package/packages/tool-agent-team/README.md +7 -7
- package/packages/tool-agent-team/README.zh.md +7 -7
- package/packages/tool-agent-team/lib/index.js +38 -28
- package/packages/tool-agent-team/lib/types/index.d.ts.map +1 -1
|
@@ -4138,7 +4138,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4138
4138
|
const _wowyuarm_dsh_agent_team_agentTeam_changeAttention_parameter_0$schema = object({
|
|
4139
4139
|
"requestId": intersection(string(), unknown()).readonly(),
|
|
4140
4140
|
"workspaceId": intersection(string(), unknown()).readonly(),
|
|
4141
|
-
"
|
|
4141
|
+
"threadRef": intersection(string(), unknown()).readonly().optional(),
|
|
4142
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4142
4143
|
"action": union([literal("follow"), literal("unfollow")]).readonly()
|
|
4143
4144
|
});
|
|
4144
4145
|
const _wowyuarm_dsh_agent_team_agentTeam_changeAttention_result$schema = object({
|
|
@@ -4163,10 +4164,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4163
4164
|
literal("open"),
|
|
4164
4165
|
literal("accepted")
|
|
4165
4166
|
]).readonly()
|
|
4166
|
-
}).readonly(),
|
|
4167
|
+
}).readonly().optional(),
|
|
4167
4168
|
"thread": object({
|
|
4168
4169
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4169
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4170
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4170
4171
|
"revision": number().readonly()
|
|
4171
4172
|
}).readonly(),
|
|
4172
4173
|
"attention": object({
|
|
@@ -4217,7 +4218,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4217
4218
|
"kind": union([
|
|
4218
4219
|
literal("accept"),
|
|
4219
4220
|
literal("close"),
|
|
4220
|
-
literal("reopen")
|
|
4221
|
+
literal("reopen"),
|
|
4222
|
+
literal("promote")
|
|
4221
4223
|
]).readonly(),
|
|
4222
4224
|
"releasedClaimRefs": union([_undefined(), array(intersection(string(), unknown()))]).readonly().optional(),
|
|
4223
4225
|
"completedClaimRefs": union([_undefined(), array(intersection(string(), unknown()))]).readonly().optional(),
|
|
@@ -4246,7 +4248,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4246
4248
|
}).readonly(),
|
|
4247
4249
|
"thread": object({
|
|
4248
4250
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4249
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4251
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4250
4252
|
"revision": number().readonly()
|
|
4251
4253
|
}).readonly(),
|
|
4252
4254
|
"claims": array(object({
|
|
@@ -4265,7 +4267,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4265
4267
|
}),
|
|
4266
4268
|
object({
|
|
4267
4269
|
"kind": literal("unread_required").readonly(),
|
|
4268
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4270
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4269
4271
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4270
4272
|
"revision": number().readonly(),
|
|
4271
4273
|
"unreadCount": number().readonly(),
|
|
@@ -4273,7 +4275,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4273
4275
|
}),
|
|
4274
4276
|
object({
|
|
4275
4277
|
"kind": literal("stale_revision").readonly(),
|
|
4276
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4278
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4277
4279
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4278
4280
|
"expectedRevision": number().readonly(),
|
|
4279
4281
|
"revision": number().readonly()
|
|
@@ -4331,10 +4333,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4331
4333
|
literal("open"),
|
|
4332
4334
|
literal("accepted")
|
|
4333
4335
|
]).readonly()
|
|
4334
|
-
}).readonly(),
|
|
4336
|
+
}).readonly().optional(),
|
|
4335
4337
|
"thread": object({
|
|
4336
4338
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4337
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4339
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4338
4340
|
"revision": number().readonly()
|
|
4339
4341
|
}).readonly(),
|
|
4340
4342
|
"unreadCount": number().readonly(),
|
|
@@ -4399,6 +4401,74 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4399
4401
|
]).readonly(),
|
|
4400
4402
|
"diagnostic": string().readonly().optional()
|
|
4401
4403
|
}));
|
|
4404
|
+
const _wowyuarm_dsh_agent_team_agentTeam_promoteThread_parameter_0$schema = object({
|
|
4405
|
+
"requestId": intersection(string(), unknown()).readonly(),
|
|
4406
|
+
"workspaceId": intersection(string(), unknown()).readonly(),
|
|
4407
|
+
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4408
|
+
"baseRevision": number().readonly()
|
|
4409
|
+
});
|
|
4410
|
+
const _wowyuarm_dsh_agent_team_agentTeam_promoteThread_result$schema = union([
|
|
4411
|
+
object({
|
|
4412
|
+
"kind": literal("unread_required").readonly(),
|
|
4413
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4414
|
+
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4415
|
+
"revision": number().readonly(),
|
|
4416
|
+
"unreadCount": number().readonly(),
|
|
4417
|
+
"directCount": number().readonly()
|
|
4418
|
+
}),
|
|
4419
|
+
object({
|
|
4420
|
+
"kind": literal("stale_revision").readonly(),
|
|
4421
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4422
|
+
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4423
|
+
"expectedRevision": number().readonly(),
|
|
4424
|
+
"revision": number().readonly()
|
|
4425
|
+
}),
|
|
4426
|
+
object({
|
|
4427
|
+
"kind": literal("committed").readonly(),
|
|
4428
|
+
"receipt": object({
|
|
4429
|
+
"operationId": intersection(string(), unknown()).readonly(),
|
|
4430
|
+
"requestId": intersection(string(), unknown()).readonly(),
|
|
4431
|
+
"sequence": number().readonly()
|
|
4432
|
+
}).readonly(),
|
|
4433
|
+
"activity": object({
|
|
4434
|
+
"kind": union([
|
|
4435
|
+
literal("accept"),
|
|
4436
|
+
literal("close"),
|
|
4437
|
+
literal("reopen"),
|
|
4438
|
+
literal("promote")
|
|
4439
|
+
]).readonly(),
|
|
4440
|
+
"releasedClaimRefs": union([_undefined(), array(intersection(string(), unknown()))]).readonly().optional(),
|
|
4441
|
+
"completedClaimRefs": union([_undefined(), array(intersection(string(), unknown()))]).readonly().optional(),
|
|
4442
|
+
"activityRef": intersection(string(), unknown()).readonly(),
|
|
4443
|
+
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4444
|
+
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4445
|
+
"actor": intersection(string(), unknown()).readonly(),
|
|
4446
|
+
"sequence": number().readonly()
|
|
4447
|
+
}).readonly(),
|
|
4448
|
+
"task": object({
|
|
4449
|
+
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4450
|
+
"channelRef": intersection(string(), unknown()).readonly(),
|
|
4451
|
+
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4452
|
+
"status": union([
|
|
4453
|
+
literal("todo"),
|
|
4454
|
+
literal("in_progress"),
|
|
4455
|
+
literal("in_review"),
|
|
4456
|
+
literal("done"),
|
|
4457
|
+
literal("closed")
|
|
4458
|
+
]).readonly(),
|
|
4459
|
+
"resolution": union([
|
|
4460
|
+
literal("closed"),
|
|
4461
|
+
literal("open"),
|
|
4462
|
+
literal("accepted")
|
|
4463
|
+
]).readonly()
|
|
4464
|
+
}).readonly(),
|
|
4465
|
+
"thread": object({
|
|
4466
|
+
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4467
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4468
|
+
"revision": number().readonly()
|
|
4469
|
+
}).readonly()
|
|
4470
|
+
})
|
|
4471
|
+
]);
|
|
4402
4472
|
const _wowyuarm_dsh_agent_team_agentTeam_putAttachment_parameter_0$schema = object({
|
|
4403
4473
|
"requestId": intersection(string(), unknown()).readonly(),
|
|
4404
4474
|
"workspaceId": intersection(string(), unknown()).readonly(),
|
|
@@ -4416,7 +4486,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4416
4486
|
const _wowyuarm_dsh_agent_team_agentTeam_readThread_parameter_0$schema = object({
|
|
4417
4487
|
"requestId": intersection(string(), unknown()).readonly(),
|
|
4418
4488
|
"workspaceId": intersection(string(), unknown()).readonly(),
|
|
4419
|
-
"
|
|
4489
|
+
"threadRef": intersection(string(), unknown()).readonly().optional(),
|
|
4490
|
+
"taskRef": intersection(string(), unknown()).readonly().optional()
|
|
4420
4491
|
});
|
|
4421
4492
|
const _wowyuarm_dsh_agent_team_agentTeam_readThread_result$schema = object({
|
|
4422
4493
|
"receipt": object({
|
|
@@ -4440,10 +4511,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4440
4511
|
literal("open"),
|
|
4441
4512
|
literal("accepted")
|
|
4442
4513
|
]).readonly()
|
|
4443
|
-
}).readonly(),
|
|
4514
|
+
}).readonly().optional(),
|
|
4444
4515
|
"thread": object({
|
|
4445
4516
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4446
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4517
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4447
4518
|
"revision": number().readonly()
|
|
4448
4519
|
}).readonly(),
|
|
4449
4520
|
"claims": array(object({
|
|
@@ -4463,7 +4534,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4463
4534
|
"messageRef": intersection(string(), unknown()).readonly(),
|
|
4464
4535
|
"channelRef": intersection(string(), unknown()).readonly(),
|
|
4465
4536
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4466
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4537
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4467
4538
|
"sender": intersection(string(), unknown()).readonly(),
|
|
4468
4539
|
"body": string().readonly(),
|
|
4469
4540
|
"attachments": union([_undefined(), array(object({
|
|
@@ -4485,7 +4556,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4485
4556
|
"messageRef": intersection(string(), unknown()).readonly(),
|
|
4486
4557
|
"channelRef": intersection(string(), unknown()).readonly(),
|
|
4487
4558
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4488
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4559
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4489
4560
|
"sender": intersection(string(), unknown()).readonly(),
|
|
4490
4561
|
"body": string().readonly(),
|
|
4491
4562
|
"attachments": union([_undefined(), array(object({
|
|
@@ -4507,7 +4578,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4507
4578
|
"kind": union([
|
|
4508
4579
|
literal("accept"),
|
|
4509
4580
|
literal("close"),
|
|
4510
|
-
literal("reopen")
|
|
4581
|
+
literal("reopen"),
|
|
4582
|
+
literal("promote")
|
|
4511
4583
|
]).readonly(),
|
|
4512
4584
|
"releasedClaimRefs": union([_undefined(), array(intersection(string(), unknown()))]).readonly().optional(),
|
|
4513
4585
|
"completedClaimRefs": union([_undefined(), array(intersection(string(), unknown()))]).readonly().optional(),
|
|
@@ -4633,7 +4705,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4633
4705
|
const _wowyuarm_dsh_agent_team_agentTeam_reply_parameter_0$schema = object({
|
|
4634
4706
|
"requestId": intersection(string(), unknown()).readonly(),
|
|
4635
4707
|
"workspaceId": intersection(string(), unknown()).readonly(),
|
|
4636
|
-
"
|
|
4708
|
+
"threadRef": intersection(string(), unknown()).readonly().optional(),
|
|
4709
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4637
4710
|
"body": string().readonly(),
|
|
4638
4711
|
"baseRevision": number().readonly(),
|
|
4639
4712
|
"recipients": array(intersection(string(), unknown())).readonly().optional(),
|
|
@@ -4644,7 +4717,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4644
4717
|
const _wowyuarm_dsh_agent_team_agentTeam_reply_result$schema = union([
|
|
4645
4718
|
object({
|
|
4646
4719
|
"kind": literal("unread_required").readonly(),
|
|
4647
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4720
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4648
4721
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4649
4722
|
"revision": number().readonly(),
|
|
4650
4723
|
"unreadCount": number().readonly(),
|
|
@@ -4652,7 +4725,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4652
4725
|
}),
|
|
4653
4726
|
object({
|
|
4654
4727
|
"kind": literal("stale_revision").readonly(),
|
|
4655
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4728
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4656
4729
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4657
4730
|
"expectedRevision": number().readonly(),
|
|
4658
4731
|
"revision": number().readonly()
|
|
@@ -4687,7 +4760,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4687
4760
|
"messageRef": intersection(string(), unknown()).readonly(),
|
|
4688
4761
|
"channelRef": intersection(string(), unknown()).readonly(),
|
|
4689
4762
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4690
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4763
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4691
4764
|
"sender": intersection(string(), unknown()).readonly(),
|
|
4692
4765
|
"body": string().readonly(),
|
|
4693
4766
|
"attachments": union([_undefined(), array(object({
|
|
@@ -4716,10 +4789,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4716
4789
|
literal("open"),
|
|
4717
4790
|
literal("accepted")
|
|
4718
4791
|
]).readonly()
|
|
4719
|
-
}).readonly(),
|
|
4792
|
+
}).readonly().optional(),
|
|
4720
4793
|
"thread": object({
|
|
4721
4794
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4722
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4795
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4723
4796
|
"revision": number().readonly()
|
|
4724
4797
|
}).readonly(),
|
|
4725
4798
|
"attention": array(object({
|
|
@@ -4754,7 +4827,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4754
4827
|
"recipients": array(intersection(string(), unknown())).readonly().optional(),
|
|
4755
4828
|
"attachments": union([_undefined(), array(intersection(string(), unknown()))]).readonly().optional(),
|
|
4756
4829
|
"attachmentPaths": union([_undefined(), array(string())]).readonly().optional(),
|
|
4757
|
-
"confirmationToken": intersection(string(), unknown()).readonly().optional()
|
|
4830
|
+
"confirmationToken": intersection(string(), unknown()).readonly().optional(),
|
|
4831
|
+
"asTask": boolean().readonly().optional()
|
|
4758
4832
|
});
|
|
4759
4833
|
const _wowyuarm_dsh_agent_team_agentTeam_sendMessage_result$schema = union([
|
|
4760
4834
|
object({
|
|
@@ -4768,7 +4842,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4768
4842
|
"messageRef": intersection(string(), unknown()).readonly(),
|
|
4769
4843
|
"channelRef": intersection(string(), unknown()).readonly(),
|
|
4770
4844
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4771
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4845
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4772
4846
|
"sender": intersection(string(), unknown()).readonly(),
|
|
4773
4847
|
"body": string().readonly(),
|
|
4774
4848
|
"attachments": union([_undefined(), array(object({
|
|
@@ -4797,10 +4871,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4797
4871
|
literal("open"),
|
|
4798
4872
|
literal("accepted")
|
|
4799
4873
|
]).readonly()
|
|
4800
|
-
}).readonly(),
|
|
4874
|
+
}).readonly().optional(),
|
|
4801
4875
|
"thread": object({
|
|
4802
4876
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4803
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4877
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4804
4878
|
"revision": number().readonly()
|
|
4805
4879
|
}).readonly(),
|
|
4806
4880
|
"attention": array(object({
|
|
@@ -4838,7 +4912,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4838
4912
|
]);
|
|
4839
4913
|
const _wowyuarm_dsh_agent_team_agentTeam_threadHistory_parameter_0$schema = object({
|
|
4840
4914
|
"workspaceId": intersection(string(), unknown()).readonly(),
|
|
4841
|
-
"
|
|
4915
|
+
"threadRef": intersection(string(), unknown()).readonly().optional(),
|
|
4916
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4842
4917
|
"beforeSequence": number().readonly().optional(),
|
|
4843
4918
|
"limit": number().readonly().optional()
|
|
4844
4919
|
});
|
|
@@ -4859,17 +4934,17 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4859
4934
|
literal("open"),
|
|
4860
4935
|
literal("accepted")
|
|
4861
4936
|
]).readonly()
|
|
4862
|
-
}).readonly(),
|
|
4937
|
+
}).readonly().optional(),
|
|
4863
4938
|
"thread": object({
|
|
4864
4939
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4865
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4940
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4866
4941
|
"revision": number().readonly()
|
|
4867
4942
|
}).readonly(),
|
|
4868
4943
|
"anchor": object({
|
|
4869
4944
|
"messageRef": intersection(string(), unknown()).readonly(),
|
|
4870
4945
|
"channelRef": intersection(string(), unknown()).readonly(),
|
|
4871
4946
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4872
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4947
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4873
4948
|
"sender": intersection(string(), unknown()).readonly(),
|
|
4874
4949
|
"body": string().readonly(),
|
|
4875
4950
|
"attachments": union([_undefined(), array(object({
|
|
@@ -4903,7 +4978,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4903
4978
|
"messageRef": intersection(string(), unknown()).readonly(),
|
|
4904
4979
|
"channelRef": intersection(string(), unknown()).readonly(),
|
|
4905
4980
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4906
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
4981
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4907
4982
|
"sender": intersection(string(), unknown()).readonly(),
|
|
4908
4983
|
"body": string().readonly(),
|
|
4909
4984
|
"attachments": union([_undefined(), array(object({
|
|
@@ -4925,7 +5000,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4925
5000
|
"kind": union([
|
|
4926
5001
|
literal("accept"),
|
|
4927
5002
|
literal("close"),
|
|
4928
|
-
literal("reopen")
|
|
5003
|
+
literal("reopen"),
|
|
5004
|
+
literal("promote")
|
|
4929
5005
|
]).readonly(),
|
|
4930
5006
|
"releasedClaimRefs": union([_undefined(), array(intersection(string(), unknown()))]).readonly().optional(),
|
|
4931
5007
|
"completedClaimRefs": union([_undefined(), array(intersection(string(), unknown()))]).readonly().optional(),
|
|
@@ -4964,13 +5040,14 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
4964
5040
|
});
|
|
4965
5041
|
const _wowyuarm_dsh_agent_team_agentTeam_threadObservations_parameter_0$schema = object({
|
|
4966
5042
|
"workspaceId": intersection(string(), unknown()).readonly(),
|
|
4967
|
-
"
|
|
5043
|
+
"threadRef": intersection(string(), unknown()).readonly().optional(),
|
|
5044
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4968
5045
|
"limit": number().readonly().optional()
|
|
4969
5046
|
});
|
|
4970
5047
|
const _wowyuarm_dsh_agent_team_agentTeam_threadObservations_result$schema = object({ "items": array(object({
|
|
4971
5048
|
"sequence": number().readonly(),
|
|
4972
5049
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
4973
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
5050
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
4974
5051
|
"memberId": intersection(string(), unknown()).readonly(),
|
|
4975
5052
|
"action": union([literal("follow"), literal("unfollow")]).readonly()
|
|
4976
5053
|
})).readonly() });
|
|
@@ -5089,7 +5166,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5089
5166
|
})).readonly(),
|
|
5090
5167
|
"threads": array(object({
|
|
5091
5168
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
5092
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
5169
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
5093
5170
|
"revision": number().readonly()
|
|
5094
5171
|
})).readonly(),
|
|
5095
5172
|
"taskNumbers": array(object({
|
|
@@ -5101,7 +5178,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5101
5178
|
"messageRef": intersection(string(), unknown()).readonly(),
|
|
5102
5179
|
"channelRef": intersection(string(), unknown()).readonly(),
|
|
5103
5180
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
5104
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
5181
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
5105
5182
|
"sender": intersection(string(), unknown()).readonly(),
|
|
5106
5183
|
"body": string().readonly(),
|
|
5107
5184
|
"attachments": union([_undefined(), array(object({
|
|
@@ -5131,13 +5208,13 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5131
5208
|
literal("open"),
|
|
5132
5209
|
literal("accepted")
|
|
5133
5210
|
]).readonly()
|
|
5134
|
-
}).readonly(),
|
|
5211
|
+
}).readonly().optional(),
|
|
5135
5212
|
"thread": object({
|
|
5136
5213
|
"threadRef": intersection(string(), unknown()).readonly(),
|
|
5137
|
-
"taskRef": intersection(string(), unknown()).readonly(),
|
|
5214
|
+
"taskRef": intersection(string(), unknown()).readonly().optional(),
|
|
5138
5215
|
"revision": number().readonly()
|
|
5139
5216
|
}).readonly(),
|
|
5140
|
-
"taskNumber": number().readonly(),
|
|
5217
|
+
"taskNumber": number().readonly().optional(),
|
|
5141
5218
|
"messageCount": number().readonly()
|
|
5142
5219
|
})).readonly(),
|
|
5143
5220
|
"claims": array(object({
|
|
@@ -5158,7 +5235,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5158
5235
|
"kind": union([
|
|
5159
5236
|
literal("accept"),
|
|
5160
5237
|
literal("close"),
|
|
5161
|
-
literal("reopen")
|
|
5238
|
+
literal("reopen"),
|
|
5239
|
+
literal("promote")
|
|
5162
5240
|
]).readonly(),
|
|
5163
5241
|
"releasedClaimRefs": union([_undefined(), array(intersection(string(), unknown()))]).readonly().optional(),
|
|
5164
5242
|
"completedClaimRefs": union([_undefined(), array(intersection(string(), unknown()))]).readonly().optional(),
|
|
@@ -5220,7 +5298,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5220
5298
|
},
|
|
5221
5299
|
sourceLocation: {
|
|
5222
5300
|
"file": "packages/agent-team/src/index.ts",
|
|
5223
|
-
"line":
|
|
5301
|
+
"line": 380,
|
|
5224
5302
|
"column": 9
|
|
5225
5303
|
}
|
|
5226
5304
|
},
|
|
@@ -5247,7 +5325,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5247
5325
|
},
|
|
5248
5326
|
sourceLocation: {
|
|
5249
5327
|
"file": "packages/agent-team/src/index.ts",
|
|
5250
|
-
"line":
|
|
5328
|
+
"line": 664,
|
|
5251
5329
|
"column": 9
|
|
5252
5330
|
}
|
|
5253
5331
|
},
|
|
@@ -5275,7 +5353,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5275
5353
|
},
|
|
5276
5354
|
sourceLocation: {
|
|
5277
5355
|
"file": "packages/agent-team/src/index.ts",
|
|
5278
|
-
"line":
|
|
5356
|
+
"line": 317,
|
|
5279
5357
|
"column": 9
|
|
5280
5358
|
}
|
|
5281
5359
|
},
|
|
@@ -5302,7 +5380,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5302
5380
|
},
|
|
5303
5381
|
sourceLocation: {
|
|
5304
5382
|
"file": "packages/agent-team/src/index.ts",
|
|
5305
|
-
"line":
|
|
5383
|
+
"line": 554,
|
|
5306
5384
|
"column": 9
|
|
5307
5385
|
}
|
|
5308
5386
|
},
|
|
@@ -5329,7 +5407,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5329
5407
|
},
|
|
5330
5408
|
sourceLocation: {
|
|
5331
5409
|
"file": "packages/agent-team/src/index.ts",
|
|
5332
|
-
"line":
|
|
5410
|
+
"line": 358,
|
|
5333
5411
|
"column": 9
|
|
5334
5412
|
}
|
|
5335
5413
|
},
|
|
@@ -5356,7 +5434,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5356
5434
|
},
|
|
5357
5435
|
sourceLocation: {
|
|
5358
5436
|
"file": "packages/agent-team/src/index.ts",
|
|
5359
|
-
"line":
|
|
5437
|
+
"line": 650,
|
|
5360
5438
|
"column": 9
|
|
5361
5439
|
}
|
|
5362
5440
|
},
|
|
@@ -5383,7 +5461,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5383
5461
|
},
|
|
5384
5462
|
sourceLocation: {
|
|
5385
5463
|
"file": "packages/agent-team/src/index.ts",
|
|
5386
|
-
"line":
|
|
5464
|
+
"line": 673,
|
|
5387
5465
|
"column": 3
|
|
5388
5466
|
}
|
|
5389
5467
|
},
|
|
@@ -5410,7 +5488,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5410
5488
|
},
|
|
5411
5489
|
sourceLocation: {
|
|
5412
5490
|
"file": "packages/agent-team/src/index.ts",
|
|
5413
|
-
"line":
|
|
5491
|
+
"line": 574,
|
|
5414
5492
|
"column": 9
|
|
5415
5493
|
}
|
|
5416
5494
|
},
|
|
@@ -5438,10 +5516,37 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5438
5516
|
},
|
|
5439
5517
|
sourceLocation: {
|
|
5440
5518
|
"file": "packages/agent-team/src/index.ts",
|
|
5441
|
-
"line":
|
|
5519
|
+
"line": 308,
|
|
5442
5520
|
"column": 3
|
|
5443
5521
|
}
|
|
5444
5522
|
},
|
|
5523
|
+
{
|
|
5524
|
+
id: "@wowyuarm/dsh-agent-team#agentTeam/promoteThread",
|
|
5525
|
+
service: "agentTeam",
|
|
5526
|
+
namespace: "agentTeam",
|
|
5527
|
+
method: "promoteThread",
|
|
5528
|
+
invocation: { kind: "direct" },
|
|
5529
|
+
parameters: [{
|
|
5530
|
+
name: "request",
|
|
5531
|
+
wire: "request",
|
|
5532
|
+
source: "json",
|
|
5533
|
+
codec: {
|
|
5534
|
+
mode: "strict",
|
|
5535
|
+
typeSymbol: "@wowyuarm/dsh-agent-team/types#AgentTeamPromoteThreadRequest",
|
|
5536
|
+
schema: _wowyuarm_dsh_agent_team_agentTeam_promoteThread_parameter_0$schema
|
|
5537
|
+
}
|
|
5538
|
+
}],
|
|
5539
|
+
result: {
|
|
5540
|
+
mode: "strict",
|
|
5541
|
+
typeSymbol: "@wowyuarm/dsh-agent-team/types#AgentTeamPromoteThreadResult",
|
|
5542
|
+
schema: _wowyuarm_dsh_agent_team_agentTeam_promoteThread_result$schema
|
|
5543
|
+
},
|
|
5544
|
+
sourceLocation: {
|
|
5545
|
+
"file": "packages/agent-team/src/index.ts",
|
|
5546
|
+
"line": 564,
|
|
5547
|
+
"column": 9
|
|
5548
|
+
}
|
|
5549
|
+
},
|
|
5445
5550
|
{
|
|
5446
5551
|
id: "@wowyuarm/dsh-agent-team#agentTeam/putAttachment",
|
|
5447
5552
|
service: "agentTeam",
|
|
@@ -5465,7 +5570,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5465
5570
|
},
|
|
5466
5571
|
sourceLocation: {
|
|
5467
5572
|
"file": "packages/agent-team/src/index.ts",
|
|
5468
|
-
"line":
|
|
5573
|
+
"line": 637,
|
|
5469
5574
|
"column": 9
|
|
5470
5575
|
}
|
|
5471
5576
|
},
|
|
@@ -5492,7 +5597,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5492
5597
|
},
|
|
5493
5598
|
sourceLocation: {
|
|
5494
5599
|
"file": "packages/agent-team/src/index.ts",
|
|
5495
|
-
"line":
|
|
5600
|
+
"line": 680,
|
|
5496
5601
|
"column": 9
|
|
5497
5602
|
}
|
|
5498
5603
|
},
|
|
@@ -5519,7 +5624,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5519
5624
|
},
|
|
5520
5625
|
sourceLocation: {
|
|
5521
5626
|
"file": "packages/agent-team/src/index.ts",
|
|
5522
|
-
"line":
|
|
5627
|
+
"line": 433,
|
|
5523
5628
|
"column": 9
|
|
5524
5629
|
}
|
|
5525
5630
|
},
|
|
@@ -5546,7 +5651,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5546
5651
|
},
|
|
5547
5652
|
sourceLocation: {
|
|
5548
5653
|
"file": "packages/agent-team/src/index.ts",
|
|
5549
|
-
"line":
|
|
5654
|
+
"line": 585,
|
|
5550
5655
|
"column": 9
|
|
5551
5656
|
}
|
|
5552
5657
|
},
|
|
@@ -5573,7 +5678,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5573
5678
|
},
|
|
5574
5679
|
sourceLocation: {
|
|
5575
5680
|
"file": "packages/agent-team/src/index.ts",
|
|
5576
|
-
"line":
|
|
5681
|
+
"line": 658,
|
|
5577
5682
|
"column": 9
|
|
5578
5683
|
}
|
|
5579
5684
|
},
|
|
@@ -5600,7 +5705,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5600
5705
|
},
|
|
5601
5706
|
sourceLocation: {
|
|
5602
5707
|
"file": "packages/agent-team/src/index.ts",
|
|
5603
|
-
"line":
|
|
5708
|
+
"line": 295,
|
|
5604
5709
|
"column": 3
|
|
5605
5710
|
}
|
|
5606
5711
|
},
|
|
@@ -5627,7 +5732,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5627
5732
|
},
|
|
5628
5733
|
sourceLocation: {
|
|
5629
5734
|
"file": "packages/agent-team/src/index.ts",
|
|
5630
|
-
"line":
|
|
5735
|
+
"line": 594,
|
|
5631
5736
|
"column": 9
|
|
5632
5737
|
}
|
|
5633
5738
|
},
|
|
@@ -5654,7 +5759,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5654
5759
|
},
|
|
5655
5760
|
sourceLocation: {
|
|
5656
5761
|
"file": "packages/agent-team/src/index.ts",
|
|
5657
|
-
"line":
|
|
5762
|
+
"line": 696,
|
|
5658
5763
|
"column": 3
|
|
5659
5764
|
}
|
|
5660
5765
|
},
|
|
@@ -5681,7 +5786,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5681
5786
|
},
|
|
5682
5787
|
sourceLocation: {
|
|
5683
5788
|
"file": "packages/agent-team/src/index.ts",
|
|
5684
|
-
"line":
|
|
5789
|
+
"line": 689,
|
|
5685
5790
|
"column": 3
|
|
5686
5791
|
}
|
|
5687
5792
|
},
|
|
@@ -5708,7 +5813,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5708
5813
|
},
|
|
5709
5814
|
sourceLocation: {
|
|
5710
5815
|
"file": "packages/agent-team/src/index.ts",
|
|
5711
|
-
"line":
|
|
5816
|
+
"line": 370,
|
|
5712
5817
|
"column": 9
|
|
5713
5818
|
}
|
|
5714
5819
|
},
|
|
@@ -5735,7 +5840,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5735
5840
|
},
|
|
5736
5841
|
sourceLocation: {
|
|
5737
5842
|
"file": "packages/agent-team/src/index.ts",
|
|
5738
|
-
"line":
|
|
5843
|
+
"line": 524,
|
|
5739
5844
|
"column": 9
|
|
5740
5845
|
}
|
|
5741
5846
|
},
|
|
@@ -5762,7 +5867,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5762
5867
|
},
|
|
5763
5868
|
sourceLocation: {
|
|
5764
5869
|
"file": "packages/agent-team/src/index.ts",
|
|
5765
|
-
"line":
|
|
5870
|
+
"line": 703,
|
|
5766
5871
|
"column": 3
|
|
5767
5872
|
}
|
|
5768
5873
|
}
|
|
@@ -5775,14 +5880,14 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5775
5880
|
if (typeof localStorage === "undefined") return { mode: "conversation" };
|
|
5776
5881
|
try {
|
|
5777
5882
|
const parsed = JSON.parse(localStorage.getItem("dsh.agent-team.navigation") ?? "");
|
|
5778
|
-
const hasThread = typeof parsed.
|
|
5883
|
+
const hasThread = typeof parsed.threadRef === "string";
|
|
5779
5884
|
return {
|
|
5780
5885
|
mode: parsed.mode === "team" ? "team" : "conversation",
|
|
5781
5886
|
...typeof parsed.workspaceId === "string" ? { workspaceId: parsed.workspaceId } : {},
|
|
5782
5887
|
...typeof parsed.channelRef === "string" ? { channelRef: parsed.channelRef } : {},
|
|
5783
5888
|
...hasThread ? {
|
|
5784
|
-
taskRef: parsed.taskRef,
|
|
5785
5889
|
threadRef: parsed.threadRef,
|
|
5890
|
+
...typeof parsed.taskRef === "string" ? { taskRef: parsed.taskRef } : {},
|
|
5786
5891
|
...typeof parsed.taskNumber === "number" && Number.isInteger(parsed.taskNumber) && parsed.taskNumber > 0 ? { taskNumber: parsed.taskNumber } : {}
|
|
5787
5892
|
} : {}
|
|
5788
5893
|
};
|
|
@@ -5832,9 +5937,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5832
5937
|
this.clearMemberSession();
|
|
5833
5938
|
this.setChannel(channelRef);
|
|
5834
5939
|
},
|
|
5835
|
-
selectThread: (
|
|
5940
|
+
selectThread: (threadRef, channelRef, taskRef, taskNumber) => {
|
|
5836
5941
|
this.clearMemberSession();
|
|
5837
|
-
this.setThread(
|
|
5942
|
+
this.setThread(threadRef, channelRef, taskRef, taskNumber);
|
|
5838
5943
|
},
|
|
5839
5944
|
backToWorkspace: () => {
|
|
5840
5945
|
this.clearMemberSession();
|
|
@@ -5905,18 +6010,18 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5905
6010
|
this.snapshot = base;
|
|
5906
6011
|
this.commit();
|
|
5907
6012
|
}
|
|
5908
|
-
setThread(
|
|
6013
|
+
setThread(threadRef, channelRef, taskRef, taskNumber) {
|
|
5909
6014
|
if (this.snapshot.threadRef === threadRef && this.snapshot.taskRef === taskRef && this.snapshot.channelRef === channelRef && this.snapshot.taskNumber === taskNumber) return;
|
|
5910
|
-
if (threadRef === void 0
|
|
6015
|
+
if (threadRef === void 0) {
|
|
5911
6016
|
const { taskRef: _taskRef, threadRef: _threadRef, taskNumber: _taskNumber, ...base } = this.snapshot;
|
|
5912
6017
|
this.snapshot = base;
|
|
5913
6018
|
} else {
|
|
5914
6019
|
const { channelRef: _channelRef, taskRef: _taskRef, threadRef: _threadRef, taskNumber: _taskNumber, ...base } = this.snapshot;
|
|
5915
6020
|
this.snapshot = {
|
|
5916
6021
|
...base,
|
|
5917
|
-
taskRef,
|
|
5918
6022
|
threadRef,
|
|
5919
6023
|
...channelRef === void 0 ? {} : { channelRef },
|
|
6024
|
+
...taskRef === void 0 ? {} : { taskRef },
|
|
5920
6025
|
...taskNumber === void 0 ? {} : { taskNumber }
|
|
5921
6026
|
};
|
|
5922
6027
|
}
|
|
@@ -6382,7 +6487,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6382
6487
|
const mintRequestId = () => crypto.randomUUID();
|
|
6383
6488
|
//#endregion
|
|
6384
6489
|
//#region \0dsh-css:/home/yu/projects/dsh-agent-team/packages/client-agent-team/src/client/composer.module.css.mjs
|
|
6385
|
-
const css$5 = ".x9jGQq_root{padding:0 var(--dsh-composer-side-clearance,16px) 8px;flex-direction:column;align-items:center;display:flex}.x9jGQq_card{box-sizing:border-box;width:100%;max-width:var(--dsh-composer-card-max-width,780px);border:1px solid var(--dsw-alias-border-l2-darkmode-thin);background:var(--dsw-specific-input-major,var(--dsw-alias-bg-layer-1));box-shadow:var(--dsw-shadow-lv2);border-radius:22px;flex-direction:column;gap:6px;padding:10px 0 0;display:flex;position:relative}.x9jGQq_inputArea{min-height:28px;position:relative}.x9jGQq_inputArea textarea{box-sizing:border-box;resize:none;width:100%;min-height:28px;max-height:336px;color:var(--dsw-alias-label-primary,var(--dsw-alias-label-primary));font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;background:0 0;border:0;outline:0;padding:4px 12px 0 16px;font-size:15px;line-height:24px;display:block;overflow-y:auto}.x9jGQq_inputArea textarea::placeholder{color:var(--dsw-alias-label-caption,var(--dsw-alias-label-tertiary))}.x9jGQq_memberSessionRoot{padding:0 var(--dsh-composer-side-clearance) 8px}.x9jGQq_memberSessionCard{font-family:var(--dsw-font-family);gap:6px;padding-top:10px;font-size:16px;line-height:24px}.x9jGQq_memberSessionInputArea textarea{min-height:28px;color:var(--dsw-alias-label-primary);caret-color:var(--dsw-alias-state-business-primary);font-family:var(--dsw-font-family);font-size:inherit;line-height:inherit;padding:4px 12px 0 16px}.x9jGQq_memberSessionStatus{width:100%;max-width:var(--dsh-composer-card-max-width);background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-state-error-primary);border-radius:8px;margin:0 0 6px;padding:4px 8px;font-size:12px;line-height:18px}.x9jGQq_memberSessionToolbar{min-width:0;padding:2px 8px 6px}.x9jGQq_memberSessionPrimary{background:var(--dsw-alias-button-info-fill);border-radius:999px;place-items:center;display:grid;transform:translateY(-2px)}.x9jGQq_memberSessionPrimary:hover:not(:disabled){background:var(--dsw-alias-button-info-hover)}.x9jGQq_memberSessionPrimary:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.x9jGQq_memberSessionPrimary:disabled{cursor:default;opacity:.4}.x9jGQq_inputArea textarea:disabled{cursor:not-allowed;opacity:.55}.x9jGQq_mentionMenu{z-index:10;border:1px solid var(--dsw-alias-border-inverted);background:var(--dsw-specific-menu);max-height:min(320px,40vh);box-shadow:var(--dsw-shadow-lv3);border-radius:12px;padding:4px;position:absolute;bottom:calc(100% + 12px);left:0;right:0;overflow-y:auto}.x9jGQq_mentionOption{width:100%;min-height:40px;color:var(--dsw-alias-label-primary,var(--dsw-alias-label-primary));cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;grid-template-columns:16px minmax(0,auto) minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;font-size:14px;line-height:22px;display:grid}.x9jGQq_mentionOption:hover,.x9jGQq_mentionOption[aria-selected=true]{background:var(--dsw-alias-interactive-bg-hover)}.x9jGQq_mentionName{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.x9jGQq_mentionDescription{min-width:0;color:var(--dsw-alias-label-tertiary,var(--dsw-alias-label-tertiary));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.x9jGQq_toolbar{justify-content:flex-end;align-items:center;gap:6px;min-height:34px;padding:2px 8px 6px;display:flex}.x9jGQq_attachButton{background:var(--dsw-specific-selector);color:var(--dsw-alias-label-primary);cursor:pointer;border:0;border-radius:999px;flex:none;place-items:center;width:28px;height:28px;margin-right:auto;display:grid}.x9jGQq_attachButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover-solid)}.x9jGQq_attachButton:disabled{cursor:default;opacity:.5}.x9jGQq_attachButton:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary,var(--dsw-specific-selector));outline-offset:1px}.x9jGQq_fileInput{display:none}.x9jGQq_fileChips{flex-wrap:wrap;gap:4px;margin:0;padding:4px 8px 0;list-style:none;display:flex}.x9jGQq_fileChip{background:var(--dsw-alias-interactive-bg-hover);border-radius:6px;align-items:center;gap:4px;max-width:100%;padding:2px 4px 2px 8px;display:inline-flex}.x9jGQq_fileChipSize{color:var(--dsw-alias-label-tertiary);margin-left:6px}.x9jGQq_imageChip{align-items:center;display:flex}.x9jGQq_imageChipPreview{border:1px solid var(--dsw-alias-border-l2);object-fit:cover;border-radius:4px;width:56px;height:40px}.x9jGQq_fileChipName{text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:11px;line-height:16px;overflow:hidden}.x9jGQq_fileChipRemove{color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:12px;display:inline-flex}.x9jGQq_fileChipRemove:hover,.x9jGQq_fileChipRemove:focus-visible{color:var(--dsw-alias-label-primary);outline:none}.x9jGQq_sendButton{background:var(--dsw-alias-button-info-fill,var(--dsw-alias-button-primary-fill));color:#fff;cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;padding:0;transition:background-color .1s,opacity .1s;display:inline-flex}.x9jGQq_sendButton:hover:not(:disabled){background:var(--dsw-alias-button-info-hover,var(--dsw-alias-button-primary-hover))}.x9jGQq_sendButton:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.x9jGQq_sendButton:disabled{cursor:not-allowed;opacity:.4}.x9jGQq_confirmation{color:var(--dsw-alias-label-tertiary);align-self:stretch;margin:0;padding:0 16px;font-size:12px;line-height:18px}.x9jGQq_notifyRow{color:var(--dsw-alias-label-tertiary,var(--dsw-alias-label-tertiary));overflow-wrap:anywhere;margin:0;padding:0 16px;font-size:12px;line-height:18px}.x9jGQq_error{color:var(--dsw-alias-state-error-primary);align-self:stretch;margin:0;padding:0 4px 2px;font-size:12px;line-height:18px}@media (width<=600px){.x9jGQq_mentionOption{grid-template-columns:16px minmax(0,1fr);min-height:36px;padding-block:6px}.x9jGQq_mentionDescription{display:none}}@media (prefers-reduced-motion:reduce){.x9jGQq_sendButton{transition:none}}";
|
|
6490
|
+
const css$5 = ".x9jGQq_root{padding:0 var(--dsh-composer-side-clearance,16px) 8px;flex-direction:column;align-items:center;display:flex}.x9jGQq_card{box-sizing:border-box;width:100%;max-width:var(--dsh-composer-card-max-width,780px);border:1px solid var(--dsw-alias-border-l2-darkmode-thin);background:var(--dsw-specific-input-major,var(--dsw-alias-bg-layer-1));box-shadow:var(--dsw-shadow-lv2);border-radius:22px;flex-direction:column;gap:6px;padding:10px 0 0;display:flex;position:relative}.x9jGQq_inputArea{min-height:28px;position:relative}.x9jGQq_inputArea textarea{box-sizing:border-box;resize:none;width:100%;min-height:28px;max-height:336px;color:var(--dsw-alias-label-primary,var(--dsw-alias-label-primary));font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;background:0 0;border:0;outline:0;padding:4px 12px 0 16px;font-size:15px;line-height:24px;display:block;overflow-y:auto}.x9jGQq_inputArea textarea::placeholder{color:var(--dsw-alias-label-caption,var(--dsw-alias-label-tertiary))}.x9jGQq_memberSessionRoot{padding:0 var(--dsh-composer-side-clearance) 8px}.x9jGQq_memberSessionCard{font-family:var(--dsw-font-family);gap:6px;padding-top:10px;font-size:16px;line-height:24px}.x9jGQq_memberSessionInputArea textarea{min-height:28px;color:var(--dsw-alias-label-primary);caret-color:var(--dsw-alias-state-business-primary);font-family:var(--dsw-font-family);font-size:inherit;line-height:inherit;padding:4px 12px 0 16px}.x9jGQq_memberSessionStatus{width:100%;max-width:var(--dsh-composer-card-max-width);background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-state-error-primary);border-radius:8px;margin:0 0 6px;padding:4px 8px;font-size:12px;line-height:18px}.x9jGQq_memberSessionToolbar{min-width:0;padding:2px 8px 6px}.x9jGQq_memberSessionPrimary{background:var(--dsw-alias-button-info-fill);border-radius:999px;place-items:center;display:grid;transform:translateY(-2px)}.x9jGQq_memberSessionPrimary:hover:not(:disabled){background:var(--dsw-alias-button-info-hover)}.x9jGQq_memberSessionPrimary:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.x9jGQq_memberSessionPrimary:disabled{cursor:default;opacity:.4}.x9jGQq_inputArea textarea:disabled{cursor:not-allowed;opacity:.55}.x9jGQq_mentionMenu{z-index:10;border:1px solid var(--dsw-alias-border-inverted);background:var(--dsw-specific-menu);max-height:min(320px,40vh);box-shadow:var(--dsw-shadow-lv3);border-radius:12px;padding:4px;position:absolute;bottom:calc(100% + 12px);left:0;right:0;overflow-y:auto}.x9jGQq_mentionOption{width:100%;min-height:40px;color:var(--dsw-alias-label-primary,var(--dsw-alias-label-primary));cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;grid-template-columns:16px minmax(0,auto) minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;font-size:14px;line-height:22px;display:grid}.x9jGQq_mentionOption:hover,.x9jGQq_mentionOption[aria-selected=true]{background:var(--dsw-alias-interactive-bg-hover)}.x9jGQq_mentionName{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.x9jGQq_mentionDescription{min-width:0;color:var(--dsw-alias-label-tertiary,var(--dsw-alias-label-tertiary));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.x9jGQq_toolbar{justify-content:flex-end;align-items:center;gap:6px;min-height:34px;padding:2px 8px 6px;display:flex}.x9jGQq_asTaskOn[aria-pressed=true],.x9jGQq_asTaskOn[aria-pressed=true]:hover:not(:disabled){background:var(--dsw-alias-button-primary-fill);border-color:var(--dsw-alias-button-primary-fill);color:var(--dsw-alias-label-primary-foreground)}.x9jGQq_attachButton{background:var(--dsw-specific-selector);color:var(--dsw-alias-label-primary);cursor:pointer;border:0;border-radius:999px;flex:none;place-items:center;width:28px;height:28px;margin-right:auto;display:grid}.x9jGQq_attachButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover-solid)}.x9jGQq_attachButton:disabled{cursor:default;opacity:.5}.x9jGQq_attachButton:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary,var(--dsw-specific-selector));outline-offset:1px}.x9jGQq_fileInput{display:none}.x9jGQq_fileChips{flex-wrap:wrap;gap:4px;margin:0;padding:4px 8px 0;list-style:none;display:flex}.x9jGQq_fileChip{background:var(--dsw-alias-interactive-bg-hover);border-radius:6px;align-items:center;gap:4px;max-width:100%;padding:2px 4px 2px 8px;display:inline-flex}.x9jGQq_fileChipSize{color:var(--dsw-alias-label-tertiary);margin-left:6px}.x9jGQq_imageChip{align-items:center;display:flex}.x9jGQq_imageChipPreview{border:1px solid var(--dsw-alias-border-l2);object-fit:cover;border-radius:4px;width:56px;height:40px}.x9jGQq_fileChipName{text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:11px;line-height:16px;overflow:hidden}.x9jGQq_fileChipRemove{color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:12px;display:inline-flex}.x9jGQq_fileChipRemove:hover,.x9jGQq_fileChipRemove:focus-visible{color:var(--dsw-alias-label-primary);outline:none}.x9jGQq_sendButton{background:var(--dsw-alias-button-info-fill,var(--dsw-alias-button-primary-fill));color:#fff;cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;padding:0;transition:background-color .1s,opacity .1s;display:inline-flex}.x9jGQq_sendButton:hover:not(:disabled){background:var(--dsw-alias-button-info-hover,var(--dsw-alias-button-primary-hover))}.x9jGQq_sendButton:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.x9jGQq_sendButton:disabled{cursor:not-allowed;opacity:.4}.x9jGQq_confirmation{color:var(--dsw-alias-label-tertiary);align-self:stretch;margin:0;padding:0 16px;font-size:12px;line-height:18px}.x9jGQq_notifyRow{color:var(--dsw-alias-label-tertiary,var(--dsw-alias-label-tertiary));overflow-wrap:anywhere;margin:0;padding:0 16px;font-size:12px;line-height:18px}.x9jGQq_error{color:var(--dsw-alias-state-error-primary);align-self:stretch;margin:0;padding:0 4px 2px;font-size:12px;line-height:18px}@media (width<=600px){.x9jGQq_mentionOption{grid-template-columns:16px minmax(0,1fr);min-height:36px;padding-block:6px}.x9jGQq_mentionDescription{display:none}}@media (prefers-reduced-motion:reduce){.x9jGQq_sendButton{transition:none}}";
|
|
6386
6491
|
const tagId$5 = "@wowyuarm/dsh-agent-team/composer.module.css";
|
|
6387
6492
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$5) + "]") === null) {
|
|
6388
6493
|
const tag = document.createElement("style");
|
|
@@ -6392,6 +6497,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6392
6497
|
document.head.appendChild(tag);
|
|
6393
6498
|
}
|
|
6394
6499
|
var composer_module_css_default = {
|
|
6500
|
+
"asTaskOn": "x9jGQq_asTaskOn",
|
|
6395
6501
|
"attachButton": "x9jGQq_attachButton",
|
|
6396
6502
|
"card": "x9jGQq_card",
|
|
6397
6503
|
"confirmation": "x9jGQq_confirmation",
|
|
@@ -6457,7 +6563,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6457
6563
|
}
|
|
6458
6564
|
return url;
|
|
6459
6565
|
}
|
|
6460
|
-
function TeamComposer({ members, recipients, draft, pending, confirmation, error, onDraftChange, onRecipientsChange, onSubmit, pendingFiles, onFilesChange, t }) {
|
|
6566
|
+
function TeamComposer({ members, recipients, draft, pending, confirmation, error, onDraftChange, onRecipientsChange, onSubmit, placeholder, pendingFiles, onFilesChange, asTask, onAsTaskChange, t }) {
|
|
6461
6567
|
const inputRef = (0, react.useRef)(null);
|
|
6462
6568
|
const fileInputRef = (0, react.useRef)(null);
|
|
6463
6569
|
const rootRef = (0, react.useRef)(null);
|
|
@@ -6633,7 +6739,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6633
6739
|
"aria-expanded": menuOpen,
|
|
6634
6740
|
value: draft,
|
|
6635
6741
|
readOnly: pending,
|
|
6636
|
-
placeholder: t("messagePlaceholder"),
|
|
6742
|
+
placeholder: placeholder ?? t("messagePlaceholder"),
|
|
6637
6743
|
rows: 1,
|
|
6638
6744
|
onChange,
|
|
6639
6745
|
onKeyDown,
|
|
@@ -6694,39 +6800,53 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6694
6800
|
}),
|
|
6695
6801
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
6696
6802
|
className: composer_module_css_default.toolbar,
|
|
6697
|
-
children: [
|
|
6698
|
-
|
|
6699
|
-
|
|
6700
|
-
|
|
6701
|
-
|
|
6702
|
-
|
|
6703
|
-
|
|
6704
|
-
|
|
6705
|
-
|
|
6706
|
-
|
|
6707
|
-
|
|
6708
|
-
}
|
|
6709
|
-
|
|
6710
|
-
|
|
6711
|
-
|
|
6712
|
-
|
|
6713
|
-
|
|
6714
|
-
|
|
6715
|
-
|
|
6716
|
-
|
|
6717
|
-
|
|
6718
|
-
|
|
6719
|
-
|
|
6720
|
-
|
|
6721
|
-
|
|
6722
|
-
|
|
6723
|
-
|
|
6724
|
-
|
|
6725
|
-
|
|
6726
|
-
|
|
6727
|
-
|
|
6728
|
-
|
|
6729
|
-
|
|
6803
|
+
children: [
|
|
6804
|
+
onAsTaskChange !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
|
|
6805
|
+
size: "sm",
|
|
6806
|
+
variant: "outline",
|
|
6807
|
+
className: asTask === true ? composer_module_css_default.asTaskOn : void 0,
|
|
6808
|
+
"aria-pressed": asTask === true,
|
|
6809
|
+
disabled: pending,
|
|
6810
|
+
onClick: () => {
|
|
6811
|
+
onAsTaskChange(asTask !== true);
|
|
6812
|
+
},
|
|
6813
|
+
children: t("asTask")
|
|
6814
|
+
}),
|
|
6815
|
+
onFilesChange !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
|
|
6816
|
+
ref: fileInputRef,
|
|
6817
|
+
type: "file",
|
|
6818
|
+
multiple: true,
|
|
6819
|
+
className: composer_module_css_default.fileInput,
|
|
6820
|
+
"aria-hidden": "true",
|
|
6821
|
+
tabIndex: -1,
|
|
6822
|
+
onChange: (event) => {
|
|
6823
|
+
const chosen = [...event.target.files ?? []];
|
|
6824
|
+
if (chosen.length > 0 && pendingFiles !== void 0) onFilesChange([...pendingFiles, ...chosen]);
|
|
6825
|
+
event.target.value = "";
|
|
6826
|
+
}
|
|
6827
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
6828
|
+
type: "button",
|
|
6829
|
+
className: composer_module_css_default.attachButton,
|
|
6830
|
+
"aria-label": t("attachFiles"),
|
|
6831
|
+
title: t("attachFiles"),
|
|
6832
|
+
disabled: pending,
|
|
6833
|
+
onClick: () => {
|
|
6834
|
+
fileInputRef.current?.click();
|
|
6835
|
+
},
|
|
6836
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconPlusOutline16, { size: 14 })
|
|
6837
|
+
})] }),
|
|
6838
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
6839
|
+
type: "submit",
|
|
6840
|
+
className: composer_module_css_default.sendButton,
|
|
6841
|
+
"aria-label": pending ? t("sendingMessage") : t("sendMessage"),
|
|
6842
|
+
disabled: pending || draft.trim() === "",
|
|
6843
|
+
onMouseDown: (event) => {
|
|
6844
|
+
event.preventDefault();
|
|
6845
|
+
inputRef.current?.focus({ preventScroll: true });
|
|
6846
|
+
},
|
|
6847
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconSendOutline16, { size: 16 })
|
|
6848
|
+
})
|
|
6849
|
+
]
|
|
6730
6850
|
})
|
|
6731
6851
|
]
|
|
6732
6852
|
}), error !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
|
|
@@ -6783,7 +6903,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6783
6903
|
}).then((result) => {
|
|
6784
6904
|
if (!result.ok) return;
|
|
6785
6905
|
const hit = result.value.resolved[0];
|
|
6786
|
-
if (hit !== void 0) selectThread(hit.
|
|
6906
|
+
if (hit !== void 0) selectThread(hit.threadRef, hit.channelRef, hit.taskRef, hit.taskNumber);
|
|
6787
6907
|
});
|
|
6788
6908
|
};
|
|
6789
6909
|
/**
|
|
@@ -6978,6 +7098,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
6978
7098
|
actor,
|
|
6979
7099
|
count: activity.completedClaimRefs.length
|
|
6980
7100
|
}) : options.t("activityAccepted", { actor });
|
|
7101
|
+
if (activity.kind === "promote") return options.t("activityPromoted", { actor });
|
|
6981
7102
|
if (activity.kind === "close") return options.t("activityClosed", { actor });
|
|
6982
7103
|
if (activity.kind === "reopen") return options.t("activityReopened", { actor });
|
|
6983
7104
|
const direction = "claimRef" in activity ? options.claims.find((claim) => claim.claimRef === activity.claimRef)?.direction ?? options.t("claims") : options.t("claims");
|
|
@@ -7003,6 +7124,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7003
7124
|
function stripAttachmentLines(body) {
|
|
7004
7125
|
return body.replaceAll(/^\[attachment\] .*$(\n)?/gm, "").replace(/\n+$/, "");
|
|
7005
7126
|
}
|
|
7127
|
+
/** Whether one displayed Message body starts clamped behind the expand control. */
|
|
7128
|
+
function shouldClampMessage(displayBody) {
|
|
7129
|
+
return displayBody.length > 600;
|
|
7130
|
+
}
|
|
7006
7131
|
/**
|
|
7007
7132
|
* Decide how one Message body renders. Human input and plain-prose Agent
|
|
7008
7133
|
* bodies stay literal, with structured mention chips inline where possible;
|
|
@@ -7030,7 +7155,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7030
7155
|
}
|
|
7031
7156
|
//#endregion
|
|
7032
7157
|
//#region \0dsh-css:/home/yu/projects/dsh-agent-team/packages/client-agent-team/src/client/conversation.module.css.mjs
|
|
7033
|
-
const css$4 = ".omcBaG_surface{grid-template-rows:auto minmax(0,1fr) auto;min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.omcBaG_surfaceHeader{border-bottom:1px solid var(--dsw-alias-border-l2);min-width:0;padding:14px clamp(18px,3vw,36px) 12px}.omcBaG_headerRow{justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;max-width:880px;margin:0 auto;display:flex}.omcBaG_headerCopy{min-width:0}.omcBaG_headerCopy h1{color:var(--dsw-alias-label-primary);overflow-wrap:anywhere;margin:0;font-size:20px;font-weight:600;line-height:28px}.omcBaG_headerCopy p{color:var(--dsw-alias-label-secondary);margin:3px 0 0;font-size:13px;line-height:20px}.omcBaG_headerActions{flex:none;align-items:center;gap:6px;display:flex}.omcBaG_backRow{max-width:880px;margin:0 auto 8px}.omcBaG_timeline{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding:12px clamp(18px,3vw,36px) 24px;overflow:hidden auto}.omcBaG_timelineContent{flex-direction:column;min-width:0;max-width:880px;min-height:100%;margin:0 auto;display:flex}.omcBaG_emptySurface{margin:auto;padding:32px 0}.omcBaG_emptySurface .omcBaG_emptyState{text-align:center;justify-items:center}.omcBaG_timelineAction{justify-content:center;padding:2px 0 8px;display:flex}.omcBaG_messageRow{gap:10px;padding:10px 0;display:flex}.omcBaG_messageRow[data-grouped]{padding-top:2px}.omcBaG_messageRow[data-grouped] .omcBaG_messageBody>:first-child{margin-top:0}.omcBaG_messageIdentity{background:hsl(var(--team-avatar-hue,212) 42% 46%);color:#fff;border-radius:50%;flex:0 0 28px;justify-content:center;align-items:center;height:28px;font-size:12px;font-weight:600;display:flex}.omcBaG_messageRow[data-human] .omcBaG_messageIdentity{background:var(--dsw-alias-state-business-primary)}.omcBaG_messageRow[data-grouped] .omcBaG_messageIdentity{visibility:hidden}.omcBaG_messageBody{min-width:0}.omcBaG_nameRow{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.omcBaG_nameRow strong{color:var(--dsw-alias-label-primary);font-size:13px;font-weight:600;line-height:20px}.omcBaG_messageTime{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:20px}.omcBaG_messageText{white-space:pre-wrap;word-break:break-word;margin:6px 0;font-size:14px;line-height:22px}.omcBaG_messageBody .omcBaG_messageMarkdown{font-size:14px;line-height:22px}.omcBaG_messageBody
|
|
7158
|
+
const css$4 = ".omcBaG_surface{grid-template-rows:auto minmax(0,1fr) auto;min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.omcBaG_surfaceHeader{border-bottom:1px solid var(--dsw-alias-border-l2);min-width:0;padding:14px clamp(18px,3vw,36px) 12px}.omcBaG_headerRow{justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;max-width:880px;margin:0 auto;display:flex}.omcBaG_headerCopy{min-width:0}.omcBaG_headerCopy h1{color:var(--dsw-alias-label-primary);overflow-wrap:anywhere;margin:0;font-size:20px;font-weight:600;line-height:28px}.omcBaG_headerCopy p{color:var(--dsw-alias-label-secondary);margin:3px 0 0;font-size:13px;line-height:20px}.omcBaG_headerActions{flex:none;align-items:center;gap:6px;display:flex}.omcBaG_backRow{max-width:880px;margin:0 auto 8px}.omcBaG_timeline{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding:12px clamp(18px,3vw,36px) 24px;overflow:hidden auto}.omcBaG_timelineContent{flex-direction:column;min-width:0;max-width:880px;min-height:100%;margin:0 auto;display:flex}.omcBaG_emptySurface{margin:auto;padding:32px 0}.omcBaG_emptySurface .omcBaG_emptyState{text-align:center;justify-items:center}.omcBaG_timelineAction{justify-content:center;padding:2px 0 8px;display:flex}.omcBaG_messageRow{gap:10px;padding:10px 0;display:flex}.omcBaG_messageRow[data-grouped]{padding-top:2px}.omcBaG_messageRow[data-grouped] .omcBaG_messageBody>:first-child,.omcBaG_messageRow[data-grouped] .omcBaG_messageBody>:first-child>:first-child{margin-top:0}.omcBaG_messageIdentity{background:hsl(var(--team-avatar-hue,212) 42% 46%);color:#fff;border-radius:50%;flex:0 0 28px;justify-content:center;align-items:center;height:28px;font-size:12px;font-weight:600;display:flex}.omcBaG_messageRow[data-human] .omcBaG_messageIdentity{background:var(--dsw-alias-state-business-primary)}.omcBaG_messageRow[data-grouped] .omcBaG_messageIdentity{visibility:hidden}.omcBaG_messageBody{min-width:0}.omcBaG_nameRow{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.omcBaG_nameRow strong{color:var(--dsw-alias-label-primary);font-size:13px;font-weight:600;line-height:20px}.omcBaG_messageTime{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:20px}.omcBaG_messageText{white-space:pre-wrap;word-break:break-word;margin:6px 0;font-size:14px;line-height:22px}.omcBaG_messageClamp{max-height:176px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 72%,#0000 100%);mask-image:linear-gradient(#000 72%,#0000 100%)}.omcBaG_messageExpand{color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:0;width:fit-content;margin-top:4px;padding:0;font-size:12px;line-height:20px;display:block}.omcBaG_messageExpand:hover,.omcBaG_messageExpand:focus-visible{color:var(--dsw-alias-label-primary);text-underline-offset:2px;outline:none;text-decoration:underline}.omcBaG_messageBody .omcBaG_messageMarkdown{font-size:14px;line-height:22px}.omcBaG_messageBody .omcBaG_messageMarkdown>div:first-child{color:var(--dsw-alias-label-primary);font:inherit}.omcBaG_messageBody .omcBaG_messageMarkdown p{margin:6px 0}.omcBaG_messageBody .omcBaG_messageMarkdown :where(ul,ol){margin:6px 0;padding-left:22px}.omcBaG_messageBody .omcBaG_messageMarkdown li+li{margin-top:2px}.omcBaG_messageBody .omcBaG_messageMarkdown strong{font-weight:600}.omcBaG_messageBody .omcBaG_messageMarkdown :where(h1,h2,h3,h4,h5,h6){margin:12px 0 4px}.omcBaG_messageBody .omcBaG_messageMarkdown :where(h1){font-size:17px;line-height:26px}.omcBaG_messageBody .omcBaG_messageMarkdown :where(h2){font-size:16px;line-height:24px}.omcBaG_messageBody .omcBaG_messageMarkdown :where(h3,h4,h5,h6){font-size:15px;line-height:22px}.omcBaG_messageBody .omcBaG_messageMarkdown pre{margin:8px 0;padding:10px 12px;font-size:13px}.omcBaG_messageBody .omcBaG_messageMarkdown blockquote{margin:6px 0}.omcBaG_messageBody .omcBaG_messageMarkdown :where(th,td){padding-block:5px}.omcBaG_emptyState,.omcBaG_loadingState{color:var(--dsw-alias-label-tertiary);margin:0;padding:14px 0;font-size:13px;line-height:20px}.omcBaG_emptyState{gap:3px;display:grid}.omcBaG_emptyState strong{color:var(--dsw-alias-label-secondary);font-weight:500}.omcBaG_emptyState span{font-size:12px}.omcBaG_loadingState{align-items:center;gap:8px;display:flex}.omcBaG_loadingMark{background:var(--dsw-alias-bg-skeleton);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite omcBaG_pulse}.omcBaG_error,.omcBaG_errorState{color:var(--dsw-alias-state-error-primary);max-width:880px;margin:0 auto;padding-top:6px;font-size:12px;line-height:18px}.omcBaG_errorState{justify-content:space-between;align-items:center;gap:8px;display:flex}.omcBaG_welcomeSurface{justify-content:center;align-items:center;min-width:0;height:100%;padding:32px;display:flex}.omcBaG_welcome{text-align:center;max-width:420px}.omcBaG_welcomeEyebrow{color:var(--dsw-alias-label-tertiary);text-transform:uppercase;font-size:12px;line-height:18px}.omcBaG_welcome h1{color:var(--dsw-alias-label-primary);margin:8px 0;font-size:24px;font-weight:600;line-height:32px}.omcBaG_welcome p{color:var(--dsw-alias-label-secondary);margin:0;font-size:13px;line-height:20px}@keyframes omcBaG_pulse{0%,to{opacity:.35}50%{opacity:1}}@media (width<=600px){.omcBaG_surfaceHeader{padding:12px 12px 10px}.omcBaG_headerRow{flex-direction:column;align-items:stretch;gap:8px}.omcBaG_headerActions{flex-wrap:wrap}.omcBaG_backRow{margin-bottom:6px}.omcBaG_timeline{scrollbar-gutter:auto;padding:8px 12px 16px}.omcBaG_messageRow{padding:8px 0}}@media (prefers-reduced-motion:reduce){.omcBaG_loadingMark{animation:none}}.omcBaG_messageRun{margin:2px 0;padding:3px 0}.omcBaG_messageRow[data-grouped]:has(.omcBaG_messageBody>button:not([data-message-expand])){margin-top:3px;padding-top:7px;position:relative}.omcBaG_messageRow[data-grouped]:has(.omcBaG_messageBody>button:not([data-message-expand])):before{background:var(--dsw-alias-border-l2);content:\"\";height:1px;position:absolute;inset:0 0 auto 38px}.omcBaG_runDivider{border-top:1px solid var(--dsw-alias-border-l2);color:var(--dsw-alias-label-tertiary);margin:2px 0 0 38px;padding:5px 0 0;font-size:11px;line-height:16px}.omcBaG_runDivider+.omcBaG_messageRow[data-grouped]:has(.omcBaG_messageBody>button:not([data-message-expand])){margin-top:0}.omcBaG_runDivider+.omcBaG_messageRow[data-grouped]:has(.omcBaG_messageBody>button:not([data-message-expand])):before{content:none}.omcBaG_mention{background:color-mix(in srgb, var(--dsw-alias-state-business-primary) 12%, transparent);color:var(--dsw-alias-state-business-primary);border-radius:5px;padding:0 4px;font-weight:500;box-shadow:0 1px 2px #00000014}.omcBaG_mentionsRow{gap:4px;width:fit-content;margin-top:3px;font-size:.85em;display:flex}.omcBaG_attachmentStrip{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.omcBaG_attachmentThumb{cursor:zoom-in;border:0;border-radius:8px;padding:0}.omcBaG_attachmentThumb img{object-fit:cover;border-radius:8px;width:128px;height:96px;display:block}.omcBaG_attachmentThumb:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary,currentColor);outline-offset:1px}.omcBaG_confirmBody{margin:0 0 8px}.omcBaG_confirmList{gap:6px;margin:0;padding-left:18px;display:grid}.omcBaG_refLink{color:var(--dsw-alias-state-business-primary);cursor:pointer;font:inherit;text-align:left;text-underline-offset:3px;background:0 0;border:none;border-radius:4px;padding:0;text-decoration:underline}.omcBaG_refLink:hover{text-decoration-thickness:2px}.omcBaG_refLink:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary);outline-offset:1px}.omcBaG_attachmentModal{width:min(1100px,92vw)}.omcBaG_attachmentZoom{object-fit:contain;border-radius:12px;max-width:100%;max-height:78vh;margin:0 auto;display:block}.omcBaG_attachmentChip{background:var(--dsw-alias-interactive-bg-hover);border-radius:6px;align-items:baseline;gap:6px;max-width:100%;padding:3px 8px;display:inline-flex}.omcBaG_attachmentChipName{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:17px;overflow:hidden}.omcBaG_attachmentChipSize{color:var(--dsw-alias-label-tertiary);white-space:nowrap;font-size:11px;line-height:17px}";
|
|
7034
7159
|
const tagId$4 = "@wowyuarm/dsh-agent-team/conversation.module.css";
|
|
7035
7160
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$4) + "]") === null) {
|
|
7036
7161
|
const tag = document.createElement("style");
|
|
@@ -7062,6 +7187,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7062
7187
|
"mention": "omcBaG_mention",
|
|
7063
7188
|
"mentionsRow": "omcBaG_mentionsRow",
|
|
7064
7189
|
"messageBody": "omcBaG_messageBody",
|
|
7190
|
+
"messageClamp": "omcBaG_messageClamp",
|
|
7191
|
+
"messageExpand": "omcBaG_messageExpand",
|
|
7065
7192
|
"messageIdentity": "omcBaG_messageIdentity",
|
|
7066
7193
|
"messageMarkdown": "omcBaG_messageMarkdown",
|
|
7067
7194
|
"messageRow": "omcBaG_messageRow",
|
|
@@ -7084,7 +7211,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7084
7211
|
//#endregion
|
|
7085
7212
|
//#region src/client/TeamMessage.tsx
|
|
7086
7213
|
/** One chat message row with identity chrome and sender-appropriate rendering. */
|
|
7087
|
-
function TeamMessage({ senderName, memberId, human, body, occurredAt, mentionNames, senderTitle, grouped, attachments, loadAttachment, t, onOpenRef, onResolveTaskRefs, children }) {
|
|
7214
|
+
function TeamMessage({ senderName, memberId, human, body, occurredAt, mentionNames, senderTitle, grouped, showGroupedTime, attachments, loadAttachment, t, onOpenRef, onResolveTaskRefs, children }) {
|
|
7088
7215
|
const avatarStyle = human ? void 0 : { "--team-avatar-hue": memberHue(memberId) };
|
|
7089
7216
|
const plan = planMessageBody(body, {
|
|
7090
7217
|
human,
|
|
@@ -7105,6 +7232,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7105
7232
|
refVersion
|
|
7106
7233
|
]);
|
|
7107
7234
|
const taskLabel = (0, react.useCallback)((taskNumber) => t?.("taskLabel", { number: taskNumber }) ?? `Task #${taskNumber}`, [t]);
|
|
7235
|
+
const [expanded, setExpanded] = (0, react.useState)(false);
|
|
7236
|
+
const clampable = shouldClampMessage(displayBody);
|
|
7237
|
+
const clamped = clampable && !expanded;
|
|
7108
7238
|
const markdownRef = (0, react.useRef)(null);
|
|
7109
7239
|
(0, react.useLayoutEffect)(() => {
|
|
7110
7240
|
const root = markdownRef.current;
|
|
@@ -7144,6 +7274,20 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7144
7274
|
root.removeEventListener("click", openTask);
|
|
7145
7275
|
};
|
|
7146
7276
|
}, [richAgentBody, onOpenRef]);
|
|
7277
|
+
const bodyNode = plan.render === "inline" && plan.inline !== void 0 ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
7278
|
+
className: conversation_module_css_default.messageText,
|
|
7279
|
+
children: plan.inline.segments.map((segment, index) => segment.mention ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
7280
|
+
className: conversation_module_css_default.mention,
|
|
7281
|
+
children: segment.text
|
|
7282
|
+
}, index) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react.Fragment, { children: renderRefs(segment.text, onOpenRef, taskLabel) }, index))
|
|
7283
|
+
}) : plan.render === "literal" ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
7284
|
+
className: conversation_module_css_default.messageText,
|
|
7285
|
+
children: onOpenRef === void 0 ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.MessageText, { text: displayBody }) : renderRefs(displayBody, onOpenRef, taskLabel)
|
|
7286
|
+
}) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
7287
|
+
ref: markdownRef,
|
|
7288
|
+
className: conversation_module_css_default.messageMarkdown,
|
|
7289
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.MarkdownText, { text: displayBody }, `${displayBody}:${onOpenRef === void 0 ? "literal" : "refs"}`)
|
|
7290
|
+
});
|
|
7147
7291
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("article", {
|
|
7148
7292
|
className: conversation_module_css_default.messageRow,
|
|
7149
7293
|
"data-human": human || void 0,
|
|
@@ -7156,9 +7300,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7156
7300
|
}), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
7157
7301
|
className: conversation_module_css_default.messageBody,
|
|
7158
7302
|
children: [
|
|
7159
|
-
!grouped && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
7303
|
+
(!grouped || showGroupedTime === true) && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
7160
7304
|
className: conversation_module_css_default.nameRow,
|
|
7161
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("strong", {
|
|
7305
|
+
children: [!grouped && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("strong", {
|
|
7162
7306
|
...senderTitle === void 0 ? {} : { title: senderTitle },
|
|
7163
7307
|
children: senderName
|
|
7164
7308
|
}), occurredAt !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
@@ -7166,19 +7310,19 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7166
7310
|
children: formatMessageTime(occurredAt)
|
|
7167
7311
|
})]
|
|
7168
7312
|
}),
|
|
7169
|
-
|
|
7170
|
-
className: conversation_module_css_default.
|
|
7171
|
-
children:
|
|
7172
|
-
|
|
7173
|
-
|
|
7174
|
-
|
|
7175
|
-
|
|
7176
|
-
|
|
7177
|
-
|
|
7178
|
-
|
|
7179
|
-
|
|
7180
|
-
|
|
7181
|
-
children:
|
|
7313
|
+
clampable ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
7314
|
+
className: clamped ? conversation_module_css_default.messageClamp : void 0,
|
|
7315
|
+
children: bodyNode
|
|
7316
|
+
}) : bodyNode,
|
|
7317
|
+
clampable && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
7318
|
+
type: "button",
|
|
7319
|
+
className: conversation_module_css_default.messageExpand,
|
|
7320
|
+
"data-message-expand": "true",
|
|
7321
|
+
"aria-expanded": expanded,
|
|
7322
|
+
onClick: () => {
|
|
7323
|
+
setExpanded((value) => !value);
|
|
7324
|
+
},
|
|
7325
|
+
children: expanded ? t?.("collapseMessage") ?? "Show less" : t?.("expandMessage") ?? "Show more"
|
|
7182
7326
|
}),
|
|
7183
7327
|
(plan.fallbackNames.length > 0 || plan.fallbackRefs.length > 0) && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
7184
7328
|
className: conversation_module_css_default.mentionsRow,
|
|
@@ -7563,7 +7707,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7563
7707
|
}
|
|
7564
7708
|
//#endregion
|
|
7565
7709
|
//#region \0dsh-css:/home/yu/projects/dsh-agent-team/packages/client-agent-team/src/client/channel.module.css.mjs
|
|
7566
|
-
const css$3 = ".MYaRJa_headerMeta{color:var(--dsw-alias-label-tertiary);flex-wrap:wrap;align-items:center;gap:6px;margin-top:7px;font-size:12px;line-height:18px;display:flex}.MYaRJa_headerMeta span+span:before{content:\"·\";margin-right:6px}.MYaRJa_taskFooter{border:1px solid var(--dsw-alias-border-l2);color:var(--dsw-alias-label-secondary);cursor:pointer;text-align:left;background:0 0;border-radius:999px;align-items:center;gap:6px;max-width:100%;margin:6px 0 0;padding:2px 10px;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.MYaRJa_taskFooter:hover,.MYaRJa_taskFooter:focus-visible{background:var(--dsw-alias-interactive-bg-hover);border-color:var(--dsw-alias-border-l3);color:var(--dsw-alias-label-primary)}.MYaRJa_taskFooter:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.MYaRJa_taskNumber{color:var(--dsw-alias-label-primary);font-size:12px;font-weight:600;line-height:18px}.MYaRJa_taskStatus,.MYaRJa_taskCount{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:18px}.MYaRJa_taskDot{flex:none;align-items:center;width:8px;display:inline-flex}.MYaRJa_taskDotQuiet{border-radius:50%;flex:none;width:8px;height:8px;position:relative}.MYaRJa_taskDotQuiet[data-variant=todo]{border:1px solid var(--dsw-alias-label-tertiary)}.MYaRJa_taskDotQuiet[data-variant=closed]{color:var(--dsw-alias-label-tertiary)}.MYaRJa_taskDotQuiet[data-variant=closed]:before{content:\"\";opacity:.1;background:currentColor;border-radius:50%;position:absolute;inset:0}.MYaRJa_taskDotQuiet[data-variant=closed]:after{content:\"\";background:currentColor;border-radius:50%;position:absolute;inset:20%}.MYaRJa_taskArrow{color:var(--dsw-alias-label-tertiary);align-items:center;transition:transform .12s;display:inline-flex}.MYaRJa_taskFooter:hover .MYaRJa_taskArrow,.MYaRJa_taskFooter:focus-visible .MYaRJa_taskArrow{transform:translate(2px)}.MYaRJa_memberList{gap:3px;display:grid}.MYaRJa_memberRow{border-radius:6px;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:0 8px;min-height:40px;padding:4px 6px;display:grid}.MYaRJa_memberRow:hover{background:var(--dsw-alias-interactive-bg-hover)}.MYaRJa_memberCopy{min-width:0;display:grid}.MYaRJa_memberCopy strong{color:var(--dsw-alias-label-primary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;line-height:18px;overflow:hidden}.MYaRJa_memberCopy small{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:14px;overflow:hidden}.MYaRJa_memberAction{min-width:60px}.MYaRJa_memberError{color:var(--dsw-alias-state-error-primary);grid-column:2/-1;margin:2px 0;font-size:11px;line-height:16px}.MYaRJa_modalBody{max-height:min(65vh,520px);overflow-y:auto}@media (width<=600px){.
|
|
7710
|
+
const css$3 = ".MYaRJa_headerMeta{color:var(--dsw-alias-label-tertiary);flex-wrap:wrap;align-items:center;gap:6px;margin-top:7px;font-size:12px;line-height:18px;display:flex}.MYaRJa_headerMeta span+span:before{content:\"·\";margin-right:6px}.MYaRJa_taskFooter{border:1px solid var(--dsw-alias-border-l2);color:var(--dsw-alias-label-secondary);cursor:pointer;text-align:left;background:0 0;border-radius:999px;align-items:center;gap:6px;max-width:100%;margin:6px 0 0;padding:2px 10px;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.MYaRJa_taskFooter:hover,.MYaRJa_taskFooter:focus-visible{background:var(--dsw-alias-interactive-bg-hover);border-color:var(--dsw-alias-border-l3);color:var(--dsw-alias-label-primary)}.MYaRJa_taskFooter:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.MYaRJa_taskNumber{color:var(--dsw-alias-label-primary);font-size:12px;font-weight:600;line-height:18px}.MYaRJa_taskStatus,.MYaRJa_taskCount{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:18px}.MYaRJa_taskDot{flex:none;align-items:center;width:8px;display:inline-flex}.MYaRJa_taskDotQuiet{border-radius:50%;flex:none;width:8px;height:8px;position:relative}.MYaRJa_taskDotQuiet[data-variant=todo]{border:1px solid var(--dsw-alias-label-tertiary)}.MYaRJa_taskDotQuiet[data-variant=closed]{color:var(--dsw-alias-label-tertiary)}.MYaRJa_taskDotQuiet[data-variant=closed]:before{content:\"\";opacity:.1;background:currentColor;border-radius:50%;position:absolute;inset:0}.MYaRJa_taskDotQuiet[data-variant=closed]:after{content:\"\";background:currentColor;border-radius:50%;position:absolute;inset:20%}.MYaRJa_taskArrow{color:var(--dsw-alias-label-tertiary);align-items:center;transition:transform .12s;display:inline-flex}.MYaRJa_taskFooter:hover .MYaRJa_taskArrow,.MYaRJa_taskFooter:focus-visible .MYaRJa_taskArrow{transform:translate(2px)}.MYaRJa_memberList{gap:3px;display:grid}.MYaRJa_memberRow{border-radius:6px;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:0 8px;min-height:40px;padding:4px 6px;display:grid}.MYaRJa_memberRow:hover{background:var(--dsw-alias-interactive-bg-hover)}.MYaRJa_memberCopy{min-width:0;display:grid}.MYaRJa_memberCopy strong{color:var(--dsw-alias-label-primary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;line-height:18px;overflow:hidden}.MYaRJa_memberCopy small{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:14px;overflow:hidden}.MYaRJa_memberAction{min-width:60px}.MYaRJa_memberError{color:var(--dsw-alias-state-error-primary);grid-column:2/-1;margin:2px 0;font-size:11px;line-height:16px}.MYaRJa_modalBody{max-height:min(65vh,520px);overflow-y:auto}@media (width<=600px){.MYaRJa_memberRow{grid-template-columns:14px minmax(0,1fr)}.MYaRJa_memberAction{grid-column:2;justify-self:start;margin-top:3px}}@media (prefers-reduced-motion:reduce){.MYaRJa_taskFooter,.MYaRJa_taskArrow{transition:none}.MYaRJa_taskFooter:hover .MYaRJa_taskArrow,.MYaRJa_taskFooter:focus-visible .MYaRJa_taskArrow{transform:none}}";
|
|
7567
7711
|
const tagId$3 = "@wowyuarm/dsh-agent-team/channel.module.css";
|
|
7568
7712
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$3) + "]") === null) {
|
|
7569
7713
|
const tag = document.createElement("style");
|
|
@@ -7590,7 +7734,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7590
7734
|
};
|
|
7591
7735
|
//#endregion
|
|
7592
7736
|
//#region \0dsh-css:/home/yu/projects/dsh-agent-team/packages/client-agent-team/src/client/thread.module.css.mjs
|
|
7593
|
-
const css$2 = ".-Qiwua_titleLine{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.-Qiwua_titleLine h1{margin:0}.-Qiwua_workSection{border-top:1px solid var(--dsw-alias-border-l2);max-width:880px;margin:12px auto 0;padding-top:8px}.-Qiwua_riskSection{border-top:1px solid var(--dsw-alias-border-l2);max-width:880px;margin:12px auto 0;padding-top:10px}.-Qiwua_riskSection h2{color:var(--dsw-alias-state-error-primary);margin:0 0 5px;font-size:12px;font-weight:600;line-height:18px}.-Qiwua_riskRow{color:var(--dsw-alias-label-secondary);align-items:center;gap:8px;margin:3px 0;font-size:12px;line-height:18px;display:flex}.-Qiwua_claimList{gap:4px;padding:4px 0 2px 22px;display:grid}.-Qiwua_claimRow{border-radius:6px;grid-template-columns:14px minmax(96px,auto) minmax(0,1fr) auto auto;align-items:center;gap:4px 8px;min-height:36px;padding:4px 6px;display:grid}.-Qiwua_claimRow:hover{background:var(--dsw-alias-interactive-bg-hover)}.-Qiwua_claimOwner{color:var(--dsw-alias-label-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500;line-height:18px;overflow:hidden}.-Qiwua_claimDirection{color:var(--dsw-alias-label-primary);overflow-wrap:anywhere;min-width:0;font-size:12px;line-height:18px}.-Qiwua_claimState{color:var(--dsw-alias-label-tertiary);white-space:nowrap;font-size:11px;line-height:18px}.-Qiwua_emptyClaims{color:var(--dsw-alias-label-tertiary);margin:0;padding:5px 6px;font-size:11px;line-height:18px}.-Qiwua_activityRow{color:var(--dsw-alias-label-tertiary);text-align:center;justify-content:center;align-items:center;gap:8px;max-width:100%;margin:4px auto;padding:5px 12px;font-size:11px;line-height:18px;display:flex}.-Qiwua_activityText{overflow-wrap:anywhere;min-width:0}.-Qiwua_activityMark{background:var(--dsw-alias-border-l3);border-radius:50%;flex:0 0 5px;width:5px;height:5px}.-Qiwua_historySection{border-bottom:1px solid var(--dsw-alias-border-l2);max-width:100%;margin:0 auto 12px;padding-bottom:10px}.-Qiwua_historySection h2{color:var(--dsw-alias-label-tertiary);letter-spacing:.02em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:600;line-height:16px}.-Qiwua_publicSection{min-width:0}.-Qiwua_unreadBoundary{color:var(--dsw-alias-label-tertiary);align-items:center;gap:10px;margin:10px 0 6px;font-size:11px;line-height:16px;display:flex}.-Qiwua_unreadBoundary:before,.-Qiwua_unreadBoundary:after{background:var(--dsw-alias-border-l3);content:\"\";flex:1;height:1px}.-Qiwua_unreadBoundary span{flex:none}.-Qiwua_daySeparator{color:var(--dsw-alias-label-tertiary);letter-spacing:.02em;align-items:center;gap:10px;margin:12px 0 4px;font-size:11px;line-height:16px;display:flex}.-Qiwua_daySeparator:before,.-Qiwua_daySeparator:after{background:var(--dsw-alias-border-l2);content:\"\";flex:1;height:1px}.-Qiwua_daySeparator span{flex:none}.-Qiwua_newUpdates{background:var(--dsw-specific-input-major,var(--dsw-alias-bg-layer-1));border:1px solid var(--dsw-alias-border-l2-darkmode-thin);box-shadow:var(--dsw-shadow-lv2);color:var(--dsw-alias-label-secondary);z-index:2;border-radius:999px;justify-content:center;align-items:center;gap:8px;width:fit-content;margin:8px auto;padding:4px 6px 4px 12px;font-size:12px;line-height:18px;display:flex;position:sticky;bottom:8px}.-Qiwua_taskTitle{color:var(--dsw-alias-label-secondary)
|
|
7737
|
+
const css$2 = ".-Qiwua_titleLine{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.-Qiwua_titleLine h1{margin:0}.-Qiwua_workSection{border-top:1px solid var(--dsw-alias-border-l2);max-width:880px;margin:12px auto 0;padding-top:8px}.-Qiwua_riskSection{border-top:1px solid var(--dsw-alias-border-l2);max-width:880px;margin:12px auto 0;padding-top:10px}.-Qiwua_riskSection h2{color:var(--dsw-alias-state-error-primary);margin:0 0 5px;font-size:12px;font-weight:600;line-height:18px}.-Qiwua_riskRow{color:var(--dsw-alias-label-secondary);align-items:center;gap:8px;margin:3px 0;font-size:12px;line-height:18px;display:flex}.-Qiwua_claimList{gap:4px;padding:4px 0 2px 22px;display:grid}.-Qiwua_claimRow{border-radius:6px;grid-template-columns:14px minmax(96px,auto) minmax(0,1fr) auto auto;align-items:center;gap:4px 8px;min-height:36px;padding:4px 6px;display:grid}.-Qiwua_claimRow:hover{background:var(--dsw-alias-interactive-bg-hover)}.-Qiwua_claimOwner{color:var(--dsw-alias-label-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500;line-height:18px;overflow:hidden}.-Qiwua_claimDirection{color:var(--dsw-alias-label-primary);overflow-wrap:anywhere;min-width:0;font-size:12px;line-height:18px}.-Qiwua_claimState{color:var(--dsw-alias-label-tertiary);white-space:nowrap;font-size:11px;line-height:18px}.-Qiwua_emptyClaims{color:var(--dsw-alias-label-tertiary);margin:0;padding:5px 6px;font-size:11px;line-height:18px}.-Qiwua_activityRow{color:var(--dsw-alias-label-tertiary);text-align:center;justify-content:center;align-items:center;gap:8px;max-width:100%;margin:4px auto;padding:5px 12px;font-size:11px;line-height:18px;display:flex}.-Qiwua_activityText{overflow-wrap:anywhere;min-width:0}.-Qiwua_activityMark{background:var(--dsw-alias-border-l3);border-radius:50%;flex:0 0 5px;width:5px;height:5px}.-Qiwua_activityRow:has(+.-Qiwua_activityRow),.-Qiwua_activityRow+.-Qiwua_activityRow{text-align:left;justify-content:flex-start;padding-left:38px}.-Qiwua_historySection{border-bottom:1px solid var(--dsw-alias-border-l2);max-width:100%;margin:0 auto 12px;padding-bottom:10px}.-Qiwua_historySection h2{color:var(--dsw-alias-label-tertiary);letter-spacing:.02em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:600;line-height:16px}.-Qiwua_publicSection{min-width:0}.-Qiwua_unreadBoundary{color:var(--dsw-alias-label-tertiary);align-items:center;gap:10px;margin:10px 0 6px;font-size:11px;line-height:16px;display:flex}.-Qiwua_unreadBoundary:before,.-Qiwua_unreadBoundary:after{background:var(--dsw-alias-border-l3);content:\"\";flex:1;height:1px}.-Qiwua_unreadBoundary span{flex:none}.-Qiwua_daySeparator{color:var(--dsw-alias-label-tertiary);letter-spacing:.02em;align-items:center;gap:10px;margin:12px 0 4px;font-size:11px;line-height:16px;display:flex}.-Qiwua_daySeparator:before,.-Qiwua_daySeparator:after{background:var(--dsw-alias-border-l2);content:\"\";flex:1;height:1px}.-Qiwua_daySeparator span{flex:none}.-Qiwua_newUpdates{background:var(--dsw-specific-input-major,var(--dsw-alias-bg-layer-1));border:1px solid var(--dsw-alias-border-l2-darkmode-thin);box-shadow:var(--dsw-shadow-lv2);color:var(--dsw-alias-label-secondary);z-index:2;border-radius:999px;justify-content:center;align-items:center;gap:8px;width:fit-content;margin:8px auto;padding:4px 6px 4px 12px;font-size:12px;line-height:18px;display:flex;position:sticky;bottom:8px}.-Qiwua_taskTitle{color:var(--dsw-alias-label-secondary);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:2px 0 0;font-size:13px;line-height:20px;display:-webkit-box;overflow:hidden}.-Qiwua_closedBar{flex-direction:column;align-items:center;display:flex}.-Qiwua_closedNotice{color:var(--dsw-alias-label-tertiary);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:10px 16px 14px;font-size:13px;line-height:20px;display:flex}@media (width<=600px){.-Qiwua_claimRow{grid-template-columns:14px minmax(0,1fr) auto;align-items:start}.-Qiwua_claimState{grid-area:1/3;justify-self:end}.-Qiwua_claimDirection{grid-column:2/-1}.-Qiwua_activityRow{padding-inline:0}.-Qiwua_newUpdates{max-width:calc(100% - 16px)}}";
|
|
7594
7738
|
const tagId$2 = "@wowyuarm/dsh-agent-team/thread.module.css";
|
|
7595
7739
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$2) + "]") === null) {
|
|
7596
7740
|
const tag = document.createElement("style");
|
|
@@ -7646,6 +7790,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7646
7790
|
const [statusMessage, setStatusMessage] = (0, react.useState)();
|
|
7647
7791
|
const [loading, setLoading] = (0, react.useState)(true);
|
|
7648
7792
|
const [pending, setPending] = (0, react.useState)(false);
|
|
7793
|
+
const [asTask, setAsTask] = (0, react.useState)(false);
|
|
7649
7794
|
const [loadingOlder, setLoadingOlder] = (0, react.useState)(false);
|
|
7650
7795
|
const [managingMembers, setManagingMembers] = (0, react.useState)(false);
|
|
7651
7796
|
const draftKey = `channel:${channelRef}`;
|
|
@@ -7661,9 +7806,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7661
7806
|
return;
|
|
7662
7807
|
}
|
|
7663
7808
|
if (ref.startsWith("task:")) {
|
|
7664
|
-
const match = view?.items.find((item) => item.task
|
|
7809
|
+
const match = view?.items.find((item) => item.task?.taskRef === ref);
|
|
7665
7810
|
if (match !== void 0) {
|
|
7666
|
-
selectThread(match.
|
|
7811
|
+
selectThread(match.thread.threadRef, channelRef, match.task?.taskRef, match.taskNumber);
|
|
7667
7812
|
return;
|
|
7668
7813
|
}
|
|
7669
7814
|
jumpToTaskThread(resolveTaskRefs, workspaceId, ref, selectThread);
|
|
@@ -7828,6 +7973,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7828
7973
|
channelRef,
|
|
7829
7974
|
body: draft.trim(),
|
|
7830
7975
|
recipients: recipientIds,
|
|
7976
|
+
asTask,
|
|
7831
7977
|
...attachmentIds.length === 0 ? {} : { attachments: attachmentIds }
|
|
7832
7978
|
});
|
|
7833
7979
|
if (!result.ok) {
|
|
@@ -7835,6 +7981,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
7835
7981
|
setError(result.error.message);
|
|
7836
7982
|
} else if (result.value.kind === "committed") {
|
|
7837
7983
|
pendingSendId.current = void 0;
|
|
7984
|
+
setAsTask(false);
|
|
7838
7985
|
await refresh();
|
|
7839
7986
|
drafts.clear(draftKey);
|
|
7840
7987
|
setPendingFiles([]);
|
|
@@ -8004,7 +8151,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8004
8151
|
const senderStatus = members.find((member) => member.member.memberId === item.message.sender);
|
|
8005
8152
|
const human = item.message.sender === view.humanMemberId;
|
|
8006
8153
|
const sender = human ? t("human") : senderStatus?.member.handle ?? item.message.sender;
|
|
8007
|
-
|
|
8154
|
+
const turnGap = isRunGap(index > 0 ? block.items[index - 1].message.occurredAt : void 0, item.message.occurredAt);
|
|
8155
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react.Fragment, { children: [turnGap && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TeamRunDivider, { occurredAt: item.message.occurredAt }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(TeamMessage, {
|
|
8008
8156
|
senderName: sender,
|
|
8009
8157
|
memberId: item.message.sender,
|
|
8010
8158
|
human,
|
|
@@ -8017,13 +8165,14 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8017
8165
|
onOpenRef: openRef,
|
|
8018
8166
|
onResolveTaskRefs: lookupTaskRefs,
|
|
8019
8167
|
grouped: index > 0,
|
|
8168
|
+
showGroupedTime: item.message.topLevel === true && !turnGap,
|
|
8020
8169
|
...senderStatus === void 0 ? {} : { senderTitle: senderStatus.member.description },
|
|
8021
|
-
children: item.message.topLevel && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
|
|
8170
|
+
children: [item.message.topLevel && item.task !== void 0 && item.taskNumber !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
|
|
8022
8171
|
type: "button",
|
|
8023
8172
|
className: channel_module_css_default.taskFooter,
|
|
8024
8173
|
"aria-label": t("openTask", { number: item.taskNumber }),
|
|
8025
8174
|
onClick: () => {
|
|
8026
|
-
selectThread(item.
|
|
8175
|
+
selectThread(item.thread.threadRef, channelRef, item.task?.taskRef, item.taskNumber);
|
|
8027
8176
|
},
|
|
8028
8177
|
children: [
|
|
8029
8178
|
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
@@ -8057,7 +8206,29 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8057
8206
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconChevronRightOutline14, { size: 12 })
|
|
8058
8207
|
})
|
|
8059
8208
|
]
|
|
8060
|
-
})
|
|
8209
|
+
}), item.message.topLevel && item.task === void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
|
|
8210
|
+
type: "button",
|
|
8211
|
+
className: channel_module_css_default.taskFooter,
|
|
8212
|
+
"aria-label": t("openThread"),
|
|
8213
|
+
onClick: () => {
|
|
8214
|
+
selectThread(item.thread.threadRef, channelRef);
|
|
8215
|
+
},
|
|
8216
|
+
children: [
|
|
8217
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
8218
|
+
className: channel_module_css_default.taskNumber,
|
|
8219
|
+
children: t("threadLabel")
|
|
8220
|
+
}),
|
|
8221
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
8222
|
+
className: channel_module_css_default.taskCount,
|
|
8223
|
+
children: t("taskMessageCount", { count: item.messageCount })
|
|
8224
|
+
}),
|
|
8225
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
8226
|
+
className: channel_module_css_default.taskArrow,
|
|
8227
|
+
"aria-hidden": "true",
|
|
8228
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconChevronRightOutline14, { size: 12 })
|
|
8229
|
+
})
|
|
8230
|
+
]
|
|
8231
|
+
})]
|
|
8061
8232
|
})] }, item.message.messageRef);
|
|
8062
8233
|
})
|
|
8063
8234
|
}, `run-${block.items[0].message.messageRef}`))
|
|
@@ -8084,6 +8255,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8084
8255
|
},
|
|
8085
8256
|
pendingFiles,
|
|
8086
8257
|
onFilesChange: setPendingFiles,
|
|
8258
|
+
asTask,
|
|
8259
|
+
onAsTaskChange: setAsTask,
|
|
8087
8260
|
t
|
|
8088
8261
|
}, draftKey) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {})
|
|
8089
8262
|
]
|
|
@@ -8114,7 +8287,11 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8114
8287
|
return new Map(facts.map((fact) => [factKey(fact.fact), fact]));
|
|
8115
8288
|
}
|
|
8116
8289
|
function TeamThreadPage(props) {
|
|
8117
|
-
const { workspaceId, channelRef, taskRef, threadRef, taskNumber, backToWorkspace, selectChannel, selectThread, resolveTaskRefs, putAttachment, loadChannels, readThread, loadThreadHistory, subscribeChanges, loadMembers, drafts, getAttachment, reply, changeTask, t } = props;
|
|
8290
|
+
const { workspaceId, channelRef, taskRef, threadRef, taskNumber, backToWorkspace, selectChannel, selectThread, resolveTaskRefs, putAttachment, loadChannels, readThread, loadThreadHistory, subscribeChanges, loadMembers, drafts, getAttachment, reply, changeTask, promoteThread, t } = props;
|
|
8291
|
+
const threadRequest = {
|
|
8292
|
+
threadRef,
|
|
8293
|
+
...taskRef === void 0 ? {} : { taskRef }
|
|
8294
|
+
};
|
|
8118
8295
|
const [projection, setProjection] = (0, react.useState)();
|
|
8119
8296
|
const [channelView, setChannelView] = (0, react.useState)();
|
|
8120
8297
|
const [members, setMembers] = (0, react.useState)([]);
|
|
@@ -8130,12 +8307,13 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8130
8307
|
const [claimsOpen, setClaimsOpen] = (0, react.useState)(false);
|
|
8131
8308
|
const [confirmingAccept, setConfirmingAccept] = (0, react.useState)(false);
|
|
8132
8309
|
(0, react.useEffect)(() => {
|
|
8133
|
-
if (confirmingAccept && projection?.task
|
|
8134
|
-
}, [confirmingAccept, projection?.task
|
|
8310
|
+
if (confirmingAccept && projection?.task?.resolution === "accepted") setConfirmingAccept(false);
|
|
8311
|
+
}, [confirmingAccept, projection?.task?.resolution]);
|
|
8135
8312
|
const [replyRequestId, setReplyRequestId] = (0, react.useState)();
|
|
8136
8313
|
const [confirmation, setConfirmation] = (0, react.useState)();
|
|
8137
8314
|
const [statusMessage, setStatusMessage] = (0, react.useState)();
|
|
8138
8315
|
const [pending, setPending] = (0, react.useState)(false);
|
|
8316
|
+
const [mutating, setMutating] = (0, react.useState)();
|
|
8139
8317
|
const [loading, setLoading] = (0, react.useState)(true);
|
|
8140
8318
|
const [error, setError] = (0, react.useState)();
|
|
8141
8319
|
const mountedRef = (0, react.useRef)(false);
|
|
@@ -8167,7 +8345,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8167
8345
|
const result = await readThread({
|
|
8168
8346
|
requestId: readRequestIdRef.current,
|
|
8169
8347
|
workspaceId,
|
|
8170
|
-
|
|
8348
|
+
...threadRequest
|
|
8171
8349
|
});
|
|
8172
8350
|
if (!mountedRef.current || sequence !== sequenceRef.current) return false;
|
|
8173
8351
|
if (!result.ok) {
|
|
@@ -8206,7 +8384,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8206
8384
|
try {
|
|
8207
8385
|
const result = await loadThreadHistory({
|
|
8208
8386
|
workspaceId,
|
|
8209
|
-
|
|
8387
|
+
...threadRequest,
|
|
8210
8388
|
limit: 100
|
|
8211
8389
|
});
|
|
8212
8390
|
if (!mountedRef.current || !result.ok) return;
|
|
@@ -8223,7 +8401,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8223
8401
|
});
|
|
8224
8402
|
setProjection((current) => current === void 0 ? current : {
|
|
8225
8403
|
...current,
|
|
8226
|
-
task: result.value.task,
|
|
8404
|
+
...result.value.task === void 0 ? {} : { task: result.value.task },
|
|
8227
8405
|
thread: result.value.thread,
|
|
8228
8406
|
claims: result.value.claims
|
|
8229
8407
|
});
|
|
@@ -8260,10 +8438,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8260
8438
|
const [read, history] = await Promise.all([readThread({
|
|
8261
8439
|
requestId: readRequestIdRef.current,
|
|
8262
8440
|
workspaceId,
|
|
8263
|
-
|
|
8441
|
+
...threadRequest
|
|
8264
8442
|
}), loadThreadHistory({
|
|
8265
8443
|
workspaceId,
|
|
8266
|
-
|
|
8444
|
+
...threadRequest,
|
|
8267
8445
|
limit: 20
|
|
8268
8446
|
}).catch(() => void 0)]);
|
|
8269
8447
|
if (!mountedRef.current || sequence !== sequenceRef.current) return;
|
|
@@ -8326,7 +8504,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8326
8504
|
try {
|
|
8327
8505
|
const result = await loadThreadHistory({
|
|
8328
8506
|
workspaceId,
|
|
8329
|
-
|
|
8507
|
+
...threadRequest,
|
|
8330
8508
|
beforeSequence,
|
|
8331
8509
|
limit: 20
|
|
8332
8510
|
});
|
|
@@ -8348,6 +8526,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8348
8526
|
const activeProjection = projection;
|
|
8349
8527
|
const task = activeProjection?.task;
|
|
8350
8528
|
const thread = activeProjection?.thread;
|
|
8529
|
+
const resolvedTaskNumber = taskNumber ?? channelView?.taskNumbers.find((entry) => entry.taskRef === task?.taskRef)?.taskNumber;
|
|
8351
8530
|
const taskTitle = activeProjection === void 0 ? void 0 : formatTaskTitle(activeProjection.anchor.body);
|
|
8352
8531
|
const taskClaims = activeProjection?.claims ?? [];
|
|
8353
8532
|
const effectiveChannelRef = task?.channelRef ?? channelRef;
|
|
@@ -8461,9 +8640,64 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8461
8640
|
await readCurrent(true);
|
|
8462
8641
|
await refreshSupplemental();
|
|
8463
8642
|
};
|
|
8643
|
+
const convertToTask = async () => {
|
|
8644
|
+
if (pending || thread === void 0 || task !== void 0) return;
|
|
8645
|
+
setPending(true);
|
|
8646
|
+
setMutating("promote");
|
|
8647
|
+
setError(void 0);
|
|
8648
|
+
const key = "promote";
|
|
8649
|
+
const requestId = mutationRequests.current.get(key) ?? mintRequestId();
|
|
8650
|
+
mutationRequests.current.set(key, requestId);
|
|
8651
|
+
try {
|
|
8652
|
+
const result = await promoteThread({
|
|
8653
|
+
requestId,
|
|
8654
|
+
workspaceId,
|
|
8655
|
+
threadRef,
|
|
8656
|
+
baseRevision: thread.revision
|
|
8657
|
+
});
|
|
8658
|
+
if (!result.ok) {
|
|
8659
|
+
setError(result.error.message);
|
|
8660
|
+
return;
|
|
8661
|
+
}
|
|
8662
|
+
if (result.value.kind === "committed") {
|
|
8663
|
+
mutationRequests.current.delete(key);
|
|
8664
|
+
const committed = result.value;
|
|
8665
|
+
setProjection((current) => current === void 0 ? current : {
|
|
8666
|
+
...current,
|
|
8667
|
+
task: committed.task,
|
|
8668
|
+
thread: committed.thread
|
|
8669
|
+
});
|
|
8670
|
+
setCurrentFacts((current) => {
|
|
8671
|
+
const merged = mergeFacts(current, [{
|
|
8672
|
+
kind: "activity",
|
|
8673
|
+
sequence: committed.activity.sequence,
|
|
8674
|
+
activity: committed.activity
|
|
8675
|
+
}]);
|
|
8676
|
+
currentFactsRef.current = merged;
|
|
8677
|
+
return merged;
|
|
8678
|
+
});
|
|
8679
|
+
await readCurrent(true);
|
|
8680
|
+
await refreshSupplemental();
|
|
8681
|
+
} else if (result.value.kind === "unread_required") {
|
|
8682
|
+
setError(t("unreadRequired", { count: result.value.unreadCount }));
|
|
8683
|
+
mutationRequests.current.delete(key);
|
|
8684
|
+
await refreshAfterFence();
|
|
8685
|
+
} else {
|
|
8686
|
+
setError(t("staleRevision"));
|
|
8687
|
+
mutationRequests.current.delete(key);
|
|
8688
|
+
await refreshPassiveFacts();
|
|
8689
|
+
}
|
|
8690
|
+
} catch (cause) {
|
|
8691
|
+
setError(cause instanceof Error ? cause.message : String(cause));
|
|
8692
|
+
} finally {
|
|
8693
|
+
setPending(false);
|
|
8694
|
+
setMutating(void 0);
|
|
8695
|
+
}
|
|
8696
|
+
};
|
|
8464
8697
|
const mutateTask = async (action) => {
|
|
8465
8698
|
if (pending || task === void 0 || thread === void 0) return;
|
|
8466
8699
|
setPending(true);
|
|
8700
|
+
if (action === "accept") setMutating("accept");
|
|
8467
8701
|
setError(void 0);
|
|
8468
8702
|
const key = `task:${action}`;
|
|
8469
8703
|
const requestId = mutationRequests.current.get(key) ?? mintRequestId();
|
|
@@ -8513,10 +8747,11 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8513
8747
|
setError(cause instanceof Error ? cause.message : String(cause));
|
|
8514
8748
|
} finally {
|
|
8515
8749
|
setPending(false);
|
|
8750
|
+
setMutating(void 0);
|
|
8516
8751
|
}
|
|
8517
8752
|
};
|
|
8518
8753
|
const sendReply = async () => {
|
|
8519
|
-
if (pending ||
|
|
8754
|
+
if (pending || thread === void 0 || draft.trim() === "") return;
|
|
8520
8755
|
const id = replyRequestId ?? mintRequestId();
|
|
8521
8756
|
setReplyRequestId(id);
|
|
8522
8757
|
setPending(true);
|
|
@@ -8540,7 +8775,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8540
8775
|
const result = await reply({
|
|
8541
8776
|
requestId: id,
|
|
8542
8777
|
workspaceId,
|
|
8543
|
-
|
|
8778
|
+
threadRef,
|
|
8779
|
+
...task === void 0 ? {} : { taskRef: task.taskRef },
|
|
8544
8780
|
body: draft.trim(),
|
|
8545
8781
|
baseRevision: thread.revision,
|
|
8546
8782
|
recipients: [...recipients].sort(),
|
|
@@ -8565,7 +8801,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8565
8801
|
});
|
|
8566
8802
|
setProjection((current) => current === void 0 ? current : {
|
|
8567
8803
|
...current,
|
|
8568
|
-
task: committed.task,
|
|
8804
|
+
...committed.task === void 0 ? {} : { task: committed.task },
|
|
8569
8805
|
thread: committed.thread
|
|
8570
8806
|
});
|
|
8571
8807
|
drafts.clear(draftKey);
|
|
@@ -8629,49 +8865,65 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8629
8865
|
}),
|
|
8630
8866
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("header", {
|
|
8631
8867
|
className: conversation_module_css_default.headerRow,
|
|
8632
|
-
children: [
|
|
8633
|
-
|
|
8634
|
-
|
|
8635
|
-
|
|
8636
|
-
|
|
8637
|
-
|
|
8638
|
-
|
|
8639
|
-
|
|
8640
|
-
|
|
8641
|
-
|
|
8642
|
-
|
|
8643
|
-
|
|
8644
|
-
|
|
8645
|
-
|
|
8646
|
-
|
|
8647
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
|
|
8868
|
+
children: [
|
|
8869
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
8870
|
+
className: conversation_module_css_default.headerCopy,
|
|
8871
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
8872
|
+
className: thread_module_css_default.titleLine,
|
|
8873
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("h1", { children: task === void 0 ? t("threadLabel") : t("taskLabel", { number: resolvedTaskNumber ?? "…" }) }), task !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Pill, { children: formatTaskStatus(task.status, t) })]
|
|
8874
|
+
}), taskTitle !== void 0 && taskTitle !== "" && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
|
|
8875
|
+
className: thread_module_css_default.taskTitle,
|
|
8876
|
+
title: taskTitle,
|
|
8877
|
+
children: taskTitle
|
|
8878
|
+
})]
|
|
8879
|
+
}),
|
|
8880
|
+
task === void 0 && thread !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
8881
|
+
className: conversation_module_css_default.headerActions,
|
|
8882
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
|
|
8648
8883
|
size: "sm",
|
|
8649
8884
|
variant: "primary",
|
|
8650
8885
|
disabled: pending,
|
|
8651
8886
|
onClick: () => {
|
|
8652
|
-
|
|
8653
|
-
else mutateTask("accept");
|
|
8887
|
+
convertToTask();
|
|
8654
8888
|
},
|
|
8655
|
-
children: t("
|
|
8656
|
-
})
|
|
8657
|
-
})
|
|
8658
|
-
|
|
8659
|
-
|
|
8660
|
-
|
|
8661
|
-
|
|
8662
|
-
|
|
8663
|
-
|
|
8664
|
-
|
|
8665
|
-
|
|
8666
|
-
|
|
8667
|
-
|
|
8668
|
-
|
|
8669
|
-
|
|
8670
|
-
|
|
8671
|
-
|
|
8672
|
-
|
|
8673
|
-
|
|
8674
|
-
|
|
8889
|
+
children: mutating === "promote" ? t("promotingTask") : t("promoteToTask")
|
|
8890
|
+
})
|
|
8891
|
+
}),
|
|
8892
|
+
task !== void 0 && thread !== void 0 && task.resolution !== "closed" && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
8893
|
+
className: conversation_module_css_default.headerActions,
|
|
8894
|
+
children: [(() => {
|
|
8895
|
+
const activeClaims = projection?.claims.filter((claim) => claim.taskRef === task.taskRef && claim.state === "active") ?? [];
|
|
8896
|
+
const earlyAccept = task.resolution === "open" && task.status === "in_progress" && activeClaims.length > 0;
|
|
8897
|
+
if (!(task.status === "in_review" || earlyAccept) || task.resolution !== "open") return null;
|
|
8898
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
|
|
8899
|
+
size: "sm",
|
|
8900
|
+
variant: "primary",
|
|
8901
|
+
disabled: pending,
|
|
8902
|
+
onClick: () => {
|
|
8903
|
+
if (earlyAccept) setConfirmingAccept(true);
|
|
8904
|
+
else mutateTask("accept");
|
|
8905
|
+
},
|
|
8906
|
+
children: t("acceptTask")
|
|
8907
|
+
});
|
|
8908
|
+
})(), task.resolution === "open" ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
|
|
8909
|
+
size: "sm",
|
|
8910
|
+
variant: "outline",
|
|
8911
|
+
disabled: pending,
|
|
8912
|
+
onClick: () => {
|
|
8913
|
+
mutateTask("close");
|
|
8914
|
+
},
|
|
8915
|
+
children: t("closeTask")
|
|
8916
|
+
}) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
|
|
8917
|
+
size: "sm",
|
|
8918
|
+
variant: "primary",
|
|
8919
|
+
disabled: pending,
|
|
8920
|
+
onClick: () => {
|
|
8921
|
+
mutateTask("reopen");
|
|
8922
|
+
},
|
|
8923
|
+
children: t("reopenTask")
|
|
8924
|
+
})]
|
|
8925
|
+
})
|
|
8926
|
+
]
|
|
8675
8927
|
}),
|
|
8676
8928
|
risks.length > 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("section", {
|
|
8677
8929
|
className: thread_module_css_default.riskSection,
|
|
@@ -8713,7 +8965,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8713
8965
|
onClick: () => {
|
|
8714
8966
|
mutateTask("accept");
|
|
8715
8967
|
},
|
|
8716
|
-
children:
|
|
8968
|
+
children: mutating === "accept" ? t("acceptingTask") : t("acceptTask")
|
|
8717
8969
|
})] }),
|
|
8718
8970
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
|
|
8719
8971
|
className: conversation_module_css_default.confirmBody,
|
|
@@ -8853,7 +9105,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8853
9105
|
]
|
|
8854
9106
|
})
|
|
8855
9107
|
}),
|
|
8856
|
-
projection !== void 0 &&
|
|
9108
|
+
projection !== void 0 && thread !== void 0 ? task?.resolution === "closed" ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
8857
9109
|
className: thread_module_css_default.closedBar,
|
|
8858
9110
|
"data-team-closed": true,
|
|
8859
9111
|
children: [error !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
|
|
@@ -8894,6 +9146,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8894
9146
|
onSubmit: () => {
|
|
8895
9147
|
sendReply();
|
|
8896
9148
|
},
|
|
9149
|
+
placeholder: t("replyPlaceholder"),
|
|
8897
9150
|
pendingFiles,
|
|
8898
9151
|
onFilesChange: setPendingFiles,
|
|
8899
9152
|
t
|
|
@@ -8903,19 +9156,19 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8903
9156
|
}
|
|
8904
9157
|
//#endregion
|
|
8905
9158
|
//#region src/client/TeamConversation.tsx
|
|
8906
|
-
function TeamConversation({ t, useWorkspaces, navigation, drafts, putAttachment, getAttachment, loadChannels, readThread, loadThreadHistory, subscribeChanges, loadMembers, sendMessage, joinChannel, removeChannelMember, reply, changeTask, selectThread, selectChannel, backToWorkspace, backToChannels, resolveTaskRefs }) {
|
|
9159
|
+
function TeamConversation({ t, useWorkspaces, navigation, drafts, putAttachment, getAttachment, loadChannels, readThread, loadThreadHistory, subscribeChanges, loadMembers, sendMessage, joinChannel, removeChannelMember, reply, changeTask, promoteThread, selectThread, selectChannel, backToWorkspace, backToChannels, resolveTaskRefs }) {
|
|
8907
9160
|
const navigationState = (0, react.useSyncExternalStore)(navigation.subscribe, navigation.getSnapshot, navigation.getSnapshot);
|
|
8908
9161
|
const current = useWorkspaces((state) => state.items).find((workspace) => workspace.workspaceId === navigationState.workspaceId);
|
|
8909
|
-
if (current !== void 0 && navigationState.
|
|
9162
|
+
if (current !== void 0 && navigationState.threadRef !== void 0) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TeamThreadPage, {
|
|
8910
9163
|
workspaceId: current.workspaceId,
|
|
8911
9164
|
putAttachment,
|
|
8912
|
-
taskRef: navigationState.taskRef,
|
|
8913
9165
|
threadRef: navigationState.threadRef,
|
|
8914
9166
|
backToWorkspace,
|
|
8915
9167
|
selectChannel,
|
|
8916
9168
|
selectThread,
|
|
8917
9169
|
resolveTaskRefs,
|
|
8918
9170
|
...navigationState.channelRef === void 0 ? {} : { channelRef: navigationState.channelRef },
|
|
9171
|
+
...navigationState.taskRef === void 0 ? {} : { taskRef: navigationState.taskRef },
|
|
8919
9172
|
...navigationState.taskNumber === void 0 ? {} : { taskNumber: navigationState.taskNumber },
|
|
8920
9173
|
drafts,
|
|
8921
9174
|
getAttachment,
|
|
@@ -8926,6 +9179,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8926
9179
|
loadMembers,
|
|
8927
9180
|
reply,
|
|
8928
9181
|
changeTask,
|
|
9182
|
+
promoteThread,
|
|
8929
9183
|
t
|
|
8930
9184
|
}, navigationState.threadRef);
|
|
8931
9185
|
if (current !== void 0 && navigationState.channelRef !== void 0) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TeamChannelPage, {
|
|
@@ -8973,7 +9227,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
8973
9227
|
}
|
|
8974
9228
|
//#endregion
|
|
8975
9229
|
//#region \0dsh-css:/home/yu/projects/dsh-agent-team/packages/client-agent-team/src/client/sidebar.module.css.mjs
|
|
8976
|
-
const css$1 = "html[data-agent-team-mode=team] button[class*=newSession]{display:none}.d0xfxa_workspaceBrowser{flex-direction:column;height:100%;min-height:0;padding:0 8px 8px;display:flex}.
|
|
9230
|
+
const css$1 = "html[data-agent-team-mode=team] button[class*=newSession]{display:none}.d0xfxa_workspaceBrowser{flex-direction:column;height:100%;min-height:0;padding:0 8px 8px;display:flex}.d0xfxa_railButton{color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.d0xfxa_railButton:hover,.d0xfxa_railButton:focus-visible{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary);outline:none}.d0xfxa_workspaceList{flex-direction:column;gap:2px;padding-bottom:2px;display:flex}.d0xfxa_workspaceRow{color:var(--dsw-alias-label-primary);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;width:100%;height:34px;padding:0 8px;display:flex}.d0xfxa_workspaceRow:hover,.d0xfxa_workspaceRow:focus-visible,.d0xfxa_workspaceRow[aria-current=page]{background:var(--dsw-alias-interactive-bg-hover);outline:none}.d0xfxa_workspaceRow:focus-visible{box-shadow:inset 0 0 0 1px var(--dsw-alias-border-l3)}.d0xfxa_workspaceIcon{color:var(--dsw-alias-label-tertiary);flex:0 0 16px;justify-content:center;align-items:center;height:20px;display:inline-flex}.d0xfxa_workspaceRow[data-selected] .d0xfxa_workspaceIcon{color:var(--dsw-alias-state-business-primary)}.d0xfxa_workspaceCopy{min-width:0;display:flex}.d0xfxa_workspaceCopy strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:400;line-height:20px;overflow:hidden}.d0xfxa_emptyState{color:var(--dsw-alias-label-tertiary);margin:8px;font-size:12px;line-height:18px}.d0xfxa_railWorkspace{flex-direction:column;align-items:center;gap:8px;padding-top:8px;display:flex}.d0xfxa_railButton{border-radius:50%;width:36px;height:36px}.d0xfxa_railButton[data-active]{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.d0xfxa_workspaceSection{flex-direction:column;flex:1;gap:4px;min-height:0;margin-top:2px;display:flex;overflow-y:auto}.d0xfxa_section{flex-direction:column;display:flex}.d0xfxa_sectionHeader{align-items:center;min-height:26px;padding-right:2px;display:flex}.d0xfxa_sectionToggle{color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;min-width:0;min-height:24px;padding:0 6px;font-size:12px;line-height:18px;display:inline-flex}.d0xfxa_sectionToggle:focus-visible{outline:none}.d0xfxa_sectionToggle:hover .d0xfxa_sectionChevron,.d0xfxa_sectionToggle:focus-visible .d0xfxa_sectionChevron{color:var(--dsw-alias-label-primary)}.d0xfxa_sectionChevron{color:var(--dsw-alias-label-tertiary);flex:none;transition:transform .12s,color .12s}.d0xfxa_sectionToggle[aria-expanded=false] .d0xfxa_sectionChevron{transform:rotate(-90deg)}.d0xfxa_sectionTitle{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.d0xfxa_sectionActions{align-items:center;margin-left:auto;display:inline-flex}.d0xfxa_panel{flex-direction:column;display:flex}.d0xfxa_iconButton{color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:inline-flex}.d0xfxa_iconButton:hover,.d0xfxa_iconButton:focus-visible{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary);outline:none}.d0xfxa_textButton{color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:2px 5px;font-size:11px;line-height:18px}.d0xfxa_textButton:hover,.d0xfxa_textButton:focus-visible{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary);outline:none}.d0xfxa_textButton:disabled{cursor:not-allowed;opacity:.4}.d0xfxa_channelList,.d0xfxa_agentList{flex-direction:column;gap:1px;padding:0 4px 4px;display:flex}.d0xfxa_sidebarRowDragging{opacity:.5}.d0xfxa_sidebarRowDropBefore,.d0xfxa_sidebarRowDropAfter{position:relative}.d0xfxa_sidebarRowDropBefore:before,.d0xfxa_sidebarRowDropAfter:after{content:\"\";z-index:1;background:linear-gradient(55deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 0 / 5px 7px no-repeat, linear-gradient(125deg, transparent calc(50% - 1px), var(--dsw-alias-state-business-primary) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px)) 0 5px / 5px 7px no-repeat, linear-gradient(var(--dsw-alias-state-business-primary) 0 0) 4px 5px / calc(100% - 4px) 2px no-repeat;pointer-events:none;height:12px;position:absolute;left:0;right:4px}.d0xfxa_sidebarRowDropBefore:before{top:-7px}.d0xfxa_sidebarRowDropAfter:after{bottom:-7px}.d0xfxa_channelRow{color:var(--dsw-alias-label-primary);border-radius:8px;align-items:center;min-height:30px;display:flex;position:relative}.d0xfxa_channelSelect{box-sizing:border-box;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;flex:1;align-items:center;min-width:0;min-height:30px;padding:3px 4px 3px 8px;display:flex}.d0xfxa_channelSelect:focus-visible{outline:none}.d0xfxa_channelName{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:400;line-height:18px;overflow:hidden}.d0xfxa_agentRow{color:var(--dsw-alias-label-primary);border-radius:8px;align-items:center;min-height:38px;display:flex;position:relative}.d0xfxa_agentSelect{box-sizing:border-box;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;flex:1;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:0 8px;min-width:0;min-height:38px;padding:3px 4px 3px 8px;display:grid}.d0xfxa_agentSelect:focus-visible{outline:none}.d0xfxa_agentSelect[aria-current=page]{background:var(--dsw-alias-interactive-bg-hover);border-radius:8px}.d0xfxa_agentRow:hover .d0xfxa_agentSelect[aria-current=page],.d0xfxa_agentRow:focus-within .d0xfxa_agentSelect[aria-current=page],.d0xfxa_agentRow[data-menu-open] .d0xfxa_agentSelect[aria-current=page]{background:0 0}.d0xfxa_agentAvatar{background:hsl(var(--team-avatar-hue,212) 42% 46%);color:#fff;cursor:default;border-radius:50%;flex:0 0 24px;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;font-weight:600;display:inline-flex;position:relative}.d0xfxa_agentAvatarBadge{background:var(--dsw-specific-sidebar-fill);box-shadow:0 0 0 1px var(--dsw-specific-sidebar-fill);border-radius:50%;justify-content:center;align-items:center;width:12px;height:12px;padding:1px;line-height:0;display:inline-flex;position:absolute;bottom:-3px;right:-3px}.d0xfxa_agentCopy{flex-direction:column;min-width:0;display:flex}.d0xfxa_agentCopy strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:400;line-height:17px;overflow:hidden}.d0xfxa_agentCopy small{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:13px;overflow:hidden}.d0xfxa_unavailableDot{background:var(--dsw-alias-label-tertiary);border-radius:50%;width:7px;height:7px;display:inline-block}.d0xfxa_rowMenu{flex:none;align-items:center;padding-right:4px;display:none}.d0xfxa_channelRow:hover .d0xfxa_rowMenu,.d0xfxa_channelRow:focus-within .d0xfxa_rowMenu,.d0xfxa_channelRow[data-menu-open] .d0xfxa_rowMenu,.d0xfxa_agentRow:hover .d0xfxa_rowMenu,.d0xfxa_agentRow:focus-within .d0xfxa_rowMenu,.d0xfxa_agentRow[data-menu-open] .d0xfxa_rowMenu{display:inline-flex}.d0xfxa_channelRow[data-menu-open],.d0xfxa_agentRow[data-menu-open],.d0xfxa_channelRow:hover,.d0xfxa_agentRow:hover,.d0xfxa_channelRow:focus-within,.d0xfxa_agentRow:focus-within,.d0xfxa_channelRow[aria-current=page]{background:var(--dsw-alias-interactive-bg-hover)}.d0xfxa_rowMenuButton{color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;display:inline-flex}.d0xfxa_rowMenuButton:hover,.d0xfxa_rowMenuButton:focus-visible{color:var(--dsw-alias-label-primary);outline:none}.d0xfxa_retryError{color:var(--dsw-alias-state-error-primary);justify-content:space-between;align-items:center;gap:8px;padding:8px;font-size:11px;display:flex}.d0xfxa_rowAlert{color:var(--dsw-alias-state-error-primary);overflow-wrap:anywhere;padding:2px 8px 6px;font-size:11px}.d0xfxa_editDescription{color:var(--dsw-alias-label-secondary);margin:0 0 10px;font-size:12px;line-height:18px}.d0xfxa_editMemberList{gap:3px;display:grid}.d0xfxa_editMemberRow{border-radius:6px;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:0 8px;min-height:40px;padding:3px 6px;display:grid}.d0xfxa_editMemberRowChannels{grid-template-columns:minmax(0,1fr) auto}.d0xfxa_editMemberRow:hover{background:var(--dsw-alias-interactive-bg-hover)}.d0xfxa_editMemberCopy{min-width:0;display:grid}.d0xfxa_editMemberCopy strong{color:var(--dsw-alias-label-primary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;line-height:18px;overflow:hidden}.d0xfxa_editMemberCopy small{color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:14px;overflow:hidden}.d0xfxa_editChannelName{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:400;line-height:18px;overflow:hidden}.d0xfxa_editMemberRow button{min-width:60px}.d0xfxa_editHint{color:var(--dsw-alias-label-tertiary);margin:0;font-size:11px;line-height:16px}.d0xfxa_menuHint{color:var(--dsw-alias-label-tertiary);margin-left:4px;font-size:10px;line-height:14px}.d0xfxa_rowError{color:var(--dsw-alias-state-error-primary);grid-column:1/-1;margin:2px 0;font-size:11px;line-height:16px}";
|
|
8977
9231
|
const tagId$1 = "@wowyuarm/dsh-agent-team/sidebar.module.css";
|
|
8978
9232
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$1) + "]") === null) {
|
|
8979
9233
|
const tag = document.createElement("style");
|
|
@@ -9007,6 +9261,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9007
9261
|
"railButton": "d0xfxa_railButton",
|
|
9008
9262
|
"railWorkspace": "d0xfxa_railWorkspace",
|
|
9009
9263
|
"retryError": "d0xfxa_retryError",
|
|
9264
|
+
"rowAlert": "d0xfxa_rowAlert",
|
|
9010
9265
|
"rowError": "d0xfxa_rowError",
|
|
9011
9266
|
"rowMenu": "d0xfxa_rowMenu",
|
|
9012
9267
|
"rowMenuButton": "d0xfxa_rowMenuButton",
|
|
@@ -9023,7 +9278,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9023
9278
|
"unavailableDot": "d0xfxa_unavailableDot",
|
|
9024
9279
|
"workspaceBrowser": "d0xfxa_workspaceBrowser",
|
|
9025
9280
|
"workspaceCopy": "d0xfxa_workspaceCopy",
|
|
9026
|
-
"workspaceHeader": "d0xfxa_workspaceHeader",
|
|
9027
9281
|
"workspaceIcon": "d0xfxa_workspaceIcon",
|
|
9028
9282
|
"workspaceList": "d0xfxa_workspaceList",
|
|
9029
9283
|
"workspaceRow": "d0xfxa_workspaceRow",
|
|
@@ -9052,6 +9306,33 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9052
9306
|
});
|
|
9053
9307
|
}
|
|
9054
9308
|
//#endregion
|
|
9309
|
+
//#region src/client/TeamSidebarSection.tsx
|
|
9310
|
+
/** Collapsible sidebar section header: disclosure toggle plus trailing actions. */
|
|
9311
|
+
function TeamSidebarSection({ title, actions, children }) {
|
|
9312
|
+
const [open, setOpen] = (0, react.useState)(true);
|
|
9313
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("section", {
|
|
9314
|
+
className: sidebar_module_css_default.section,
|
|
9315
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
9316
|
+
className: sidebar_module_css_default.sectionHeader,
|
|
9317
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
|
|
9318
|
+
type: "button",
|
|
9319
|
+
className: sidebar_module_css_default.sectionToggle,
|
|
9320
|
+
"aria-expanded": open,
|
|
9321
|
+
onClick: () => {
|
|
9322
|
+
setOpen((value) => !value);
|
|
9323
|
+
},
|
|
9324
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconChevronDownOutline14, { className: sidebar_module_css_default.sectionChevron }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
9325
|
+
className: sidebar_module_css_default.sectionTitle,
|
|
9326
|
+
children: title
|
|
9327
|
+
})]
|
|
9328
|
+
}), actions !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
9329
|
+
className: sidebar_module_css_default.sectionActions,
|
|
9330
|
+
children: actions
|
|
9331
|
+
})]
|
|
9332
|
+
}), open && children]
|
|
9333
|
+
});
|
|
9334
|
+
}
|
|
9335
|
+
//#endregion
|
|
9055
9336
|
//#region src/client/TeamMemberAvatar.tsx
|
|
9056
9337
|
/**
|
|
9057
9338
|
* Sidebar Member avatar reusing the conversation identity language: the
|
|
@@ -9355,33 +9636,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
9355
9636
|
});
|
|
9356
9637
|
}
|
|
9357
9638
|
//#endregion
|
|
9358
|
-
//#region src/client/TeamSidebarSection.tsx
|
|
9359
|
-
/** Collapsible sidebar section header: disclosure toggle plus trailing actions. */
|
|
9360
|
-
function TeamSidebarSection({ title, actions, children }) {
|
|
9361
|
-
const [open, setOpen] = (0, react.useState)(true);
|
|
9362
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("section", {
|
|
9363
|
-
className: sidebar_module_css_default.section,
|
|
9364
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
9365
|
-
className: sidebar_module_css_default.sectionHeader,
|
|
9366
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
|
|
9367
|
-
type: "button",
|
|
9368
|
-
className: sidebar_module_css_default.sectionToggle,
|
|
9369
|
-
"aria-expanded": open,
|
|
9370
|
-
onClick: () => {
|
|
9371
|
-
setOpen((value) => !value);
|
|
9372
|
-
},
|
|
9373
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconChevronDownOutline14, { className: sidebar_module_css_default.sectionChevron }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
9374
|
-
className: sidebar_module_css_default.sectionTitle,
|
|
9375
|
-
children: title
|
|
9376
|
-
})]
|
|
9377
|
-
}), actions !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
9378
|
-
className: sidebar_module_css_default.sectionActions,
|
|
9379
|
-
children: actions
|
|
9380
|
-
})]
|
|
9381
|
-
}), open && children]
|
|
9382
|
-
});
|
|
9383
|
-
}
|
|
9384
|
-
//#endregion
|
|
9385
9639
|
//#region \0dsh-css:/home/yu/projects/dsh-agent-team/packages/client-agent-team/src/client/create.module.css.mjs
|
|
9386
9640
|
const css = "._1henIG_form{gap:16px;display:grid}._1henIG_field{color:var(--dsw-alias-label-secondary);gap:6px;font-size:12px;line-height:18px;display:grid}._1henIG_input{box-sizing:border-box;width:100%}._1henIG_menuCap{max-height:min(320px,56vh)}._1henIG_selectTrigger{background:var(--dsw-alias-bg-layer-1);border:1px solid var(--dsw-alias-border-l2);box-sizing:border-box;color:var(--dsw-alias-label-primary);cursor:pointer;text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;min-height:32px;padding:4px 10px;font-size:14px;line-height:22px;display:flex}._1henIG_selectTrigger:disabled{cursor:default;opacity:.6}._1henIG_selectTrigger:focus-visible{border-color:var(--dsw-alias-brand-primary);outline:none}._1henIG_selectValue{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}._1henIG_chevron{color:var(--dsw-alias-label-tertiary);flex:none;transition:transform .12s;display:inline-flex}._1henIG_chevronOpen{transform:rotate(180deg)}._1henIG_memberPicker{border:0;gap:4px;max-height:220px;margin:0;padding:0;display:grid;overflow-y:auto}._1henIG_memberPicker legend{color:var(--dsw-alias-label-secondary);padding:0 0 6px;font-size:12px;line-height:18px}._1henIG_memberOption{color:var(--dsw-alias-label-primary);border-radius:6px;grid-template-columns:auto 14px minmax(0,1fr);align-items:center;gap:0 7px;min-height:32px;padding:3px 6px;display:grid}._1henIG_memberOption:hover{background:var(--dsw-alias-interactive-bg-hover)}._1henIG_memberOption input{margin:0}._1henIG_memberOption small{color:var(--dsw-alias-label-tertiary);grid-column:3;font-size:10px;line-height:14px}._1henIG_unavailableDot{background:var(--dsw-alias-label-tertiary);border-radius:50%;justify-self:center;width:7px;height:7px;display:inline-block}._1henIG_error{color:var(--dsw-alias-state-error-primary);margin:0;font-size:12px;line-height:18px}._1henIG_dialogContent{max-height:min(70vh,560px);overflow-y:auto}@media (width<=600px){._1henIG_dialogContent{max-height:calc(100vh - 180px)}._1henIG_memberPicker{max-height:180px}}";
|
|
9387
9641
|
const tagId = "@wowyuarm/dsh-agent-team/create.module.css";
|
|
@@ -10112,67 +10366,98 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
10112
10366
|
function AgentRow({ status, current, channels, loadChannels, updateMember, recoverMember, joinChannel, removeChannelMember, loadModels, openMemberSession, onUpdated, t }) {
|
|
10113
10367
|
const [menuOpen, setMenuOpen] = (0, react.useState)(false);
|
|
10114
10368
|
const [editing, setEditing] = (0, react.useState)(false);
|
|
10115
|
-
const
|
|
10116
|
-
|
|
10117
|
-
|
|
10118
|
-
|
|
10119
|
-
|
|
10120
|
-
|
|
10121
|
-
|
|
10369
|
+
const [rowAlert, setRowAlert] = (0, react.useState)();
|
|
10370
|
+
const recover = async () => {
|
|
10371
|
+
try {
|
|
10372
|
+
const result = await recoverMember({
|
|
10373
|
+
requestId: mintRequestId(),
|
|
10374
|
+
workspaceId: status.member.workspaceId,
|
|
10375
|
+
memberId: status.member.memberId
|
|
10376
|
+
});
|
|
10377
|
+
await onUpdated();
|
|
10378
|
+
if (!result.ok) {
|
|
10379
|
+
setRowAlert(t("restartFailed", { message: result.error.message }));
|
|
10380
|
+
return;
|
|
10381
|
+
}
|
|
10382
|
+
if (result.value.status.availability === "unavailable") {
|
|
10383
|
+
setRowAlert(t("restartStillUnavailable", { diagnostic: result.value.status.diagnostic ?? t("statusUnavailable") }));
|
|
10384
|
+
return;
|
|
10385
|
+
}
|
|
10386
|
+
setRowAlert(void 0);
|
|
10387
|
+
if (current === true) openMemberSession(status.member.sessionId);
|
|
10388
|
+
} catch (cause) {
|
|
10389
|
+
setRowAlert(t("restartFailed", { message: cause instanceof Error ? cause.message : String(cause) }));
|
|
10390
|
+
}
|
|
10122
10391
|
};
|
|
10123
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [
|
|
10124
|
-
|
|
10125
|
-
|
|
10126
|
-
|
|
10127
|
-
|
|
10128
|
-
|
|
10129
|
-
|
|
10130
|
-
|
|
10131
|
-
|
|
10132
|
-
|
|
10133
|
-
|
|
10134
|
-
|
|
10135
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(TeamMemberAvatar, {
|
|
10136
|
-
status,
|
|
10137
|
-
t
|
|
10138
|
-
}), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
|
|
10139
|
-
className: sidebar_module_css_default.agentCopy,
|
|
10140
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("strong", { children: status.member.handle }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("small", { children: status.member.description })]
|
|
10141
|
-
})]
|
|
10142
|
-
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
10143
|
-
className: sidebar_module_css_default.rowMenu,
|
|
10144
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TeamRowMenu, {
|
|
10145
|
-
label: t("actionsAgent", { name: status.member.handle }),
|
|
10146
|
-
items: [{
|
|
10147
|
-
id: "edit",
|
|
10148
|
-
label: t("editAgent"),
|
|
10149
|
-
icon: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconEditOutline16, {})
|
|
10150
|
-
}, ...status.presence === "error" ? [{
|
|
10151
|
-
id: "resume",
|
|
10152
|
-
label: t("resumeAgent"),
|
|
10153
|
-
icon: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconPlayOutline16, {})
|
|
10154
|
-
}] : []],
|
|
10155
|
-
onSelect: (id) => {
|
|
10156
|
-
if (id === "resume") resume();
|
|
10157
|
-
else setEditing(true);
|
|
10392
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [
|
|
10393
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
10394
|
+
className: sidebar_module_css_default.agentRow,
|
|
10395
|
+
"data-menu-open": menuOpen || void 0,
|
|
10396
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
|
|
10397
|
+
type: "button",
|
|
10398
|
+
className: sidebar_module_css_default.agentSelect,
|
|
10399
|
+
"aria-label": t("openAgentSession", { name: status.member.handle }),
|
|
10400
|
+
"aria-current": current ? "page" : void 0,
|
|
10401
|
+
disabled: status.availability !== "active",
|
|
10402
|
+
onClick: () => {
|
|
10403
|
+
openMemberSession(status.member.sessionId);
|
|
10158
10404
|
},
|
|
10159
|
-
|
|
10160
|
-
|
|
10161
|
-
|
|
10162
|
-
|
|
10163
|
-
|
|
10164
|
-
|
|
10165
|
-
|
|
10166
|
-
|
|
10167
|
-
|
|
10168
|
-
|
|
10169
|
-
|
|
10170
|
-
|
|
10171
|
-
|
|
10172
|
-
|
|
10173
|
-
|
|
10174
|
-
|
|
10175
|
-
|
|
10405
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(TeamMemberAvatar, {
|
|
10406
|
+
status,
|
|
10407
|
+
t
|
|
10408
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
|
|
10409
|
+
className: sidebar_module_css_default.agentCopy,
|
|
10410
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("strong", { children: status.member.handle }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("small", { children: status.member.description })]
|
|
10411
|
+
})]
|
|
10412
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
10413
|
+
className: sidebar_module_css_default.rowMenu,
|
|
10414
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TeamRowMenu, {
|
|
10415
|
+
label: t("actionsAgent", { name: status.member.handle }),
|
|
10416
|
+
items: [
|
|
10417
|
+
{
|
|
10418
|
+
id: "edit",
|
|
10419
|
+
label: t("editAgent"),
|
|
10420
|
+
icon: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconEditOutline16, {})
|
|
10421
|
+
},
|
|
10422
|
+
...status.presence === "error" ? [{
|
|
10423
|
+
id: "resume",
|
|
10424
|
+
label: t("resumeAgent"),
|
|
10425
|
+
icon: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconPlayOutline16, {})
|
|
10426
|
+
}] : [],
|
|
10427
|
+
...status.availability === "unavailable" ? [{
|
|
10428
|
+
id: "restart",
|
|
10429
|
+
label: t("restartAgent"),
|
|
10430
|
+
icon: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconRefreshOutline16, {})
|
|
10431
|
+
}] : []
|
|
10432
|
+
],
|
|
10433
|
+
onSelect: (id) => {
|
|
10434
|
+
if (id === "edit") setEditing(true);
|
|
10435
|
+
else recover();
|
|
10436
|
+
},
|
|
10437
|
+
onOpenChange: setMenuOpen
|
|
10438
|
+
})
|
|
10439
|
+
})]
|
|
10440
|
+
}),
|
|
10441
|
+
rowAlert !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
10442
|
+
className: sidebar_module_css_default.rowAlert,
|
|
10443
|
+
role: "alert",
|
|
10444
|
+
children: rowAlert
|
|
10445
|
+
}),
|
|
10446
|
+
editing && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AgentEditorDialog, {
|
|
10447
|
+
status,
|
|
10448
|
+
channels,
|
|
10449
|
+
loadChannels,
|
|
10450
|
+
updateMember,
|
|
10451
|
+
joinChannel,
|
|
10452
|
+
removeChannelMember,
|
|
10453
|
+
loadModels,
|
|
10454
|
+
onCommitted: onUpdated,
|
|
10455
|
+
onClose: () => {
|
|
10456
|
+
setEditing(false);
|
|
10457
|
+
},
|
|
10458
|
+
t
|
|
10459
|
+
})
|
|
10460
|
+
] });
|
|
10176
10461
|
}
|
|
10177
10462
|
//#endregion
|
|
10178
10463
|
//#region src/client/TeamChannelsPanel.tsx
|
|
@@ -10713,12 +10998,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
10713
10998
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("section", {
|
|
10714
10999
|
className: sidebar_module_css_default.workspaceBrowser,
|
|
10715
11000
|
"aria-label": t("workspaces"),
|
|
10716
|
-
children: [
|
|
10717
|
-
|
|
10718
|
-
|
|
10719
|
-
children: t("workspaces")
|
|
10720
|
-
}),
|
|
10721
|
-
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
11001
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(TeamSidebarSection, {
|
|
11002
|
+
title: t("workspaces"),
|
|
11003
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
10722
11004
|
className: sidebar_module_css_default.workspaceList,
|
|
10723
11005
|
children: [workspaces.map((workspace) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TeamWorkspaceRow, {
|
|
10724
11006
|
workspaceId: workspace.workspaceId,
|
|
@@ -10731,48 +11013,47 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
10731
11013
|
className: sidebar_module_css_default.emptyState,
|
|
10732
11014
|
children: t("empty")
|
|
10733
11015
|
})]
|
|
10734
|
-
}),
|
|
10735
|
-
selectedId !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
10736
|
-
className: sidebar_module_css_default.workspaceSection,
|
|
10737
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
10738
|
-
ref: channelsRef,
|
|
10739
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TeamChannelsPanel, {
|
|
10740
|
-
workspaceId: selectedId,
|
|
10741
|
-
loadMembers,
|
|
10742
|
-
loadChannels,
|
|
10743
|
-
subscribeChanges,
|
|
10744
|
-
createChannel,
|
|
10745
|
-
updateChannel,
|
|
10746
|
-
joinChannel,
|
|
10747
|
-
removeChannelMember,
|
|
10748
|
-
creatingAgents: creatingAgents.filter((request) => request.workspaceId === selectedId),
|
|
10749
|
-
...navigationState.memberSessionId !== void 0 || navigationState.channelRef === void 0 ? {} : { selectedChannelRef: navigationState.channelRef },
|
|
10750
|
-
selectChannel,
|
|
10751
|
-
t
|
|
10752
|
-
}, selectedId)
|
|
10753
|
-
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
10754
|
-
ref: agentsRef,
|
|
10755
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TeamAgentsPanel, {
|
|
10756
|
-
workspaceId: selectedId,
|
|
10757
|
-
loadMembers,
|
|
10758
|
-
subscribeChanges,
|
|
10759
|
-
loadChannels,
|
|
10760
|
-
addMember,
|
|
10761
|
-
updateMember,
|
|
10762
|
-
recoverMember,
|
|
10763
|
-
joinChannel,
|
|
10764
|
-
removeChannelMember,
|
|
10765
|
-
loadModels,
|
|
10766
|
-
...navigationState.memberSessionId === void 0 ? {} : { memberSessionId: navigationState.memberSessionId },
|
|
10767
|
-
openMemberSession,
|
|
10768
|
-
onCreatingChange: (request, creating) => {
|
|
10769
|
-
setCreatingAgents((current) => creating ? [...current.filter((item) => item.requestId !== request.requestId), request] : current.filter((item) => item.requestId !== request.requestId));
|
|
10770
|
-
},
|
|
10771
|
-
t
|
|
10772
|
-
}, selectedId)
|
|
10773
|
-
})]
|
|
10774
11016
|
})
|
|
10775
|
-
|
|
11017
|
+
}), selectedId !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
11018
|
+
className: sidebar_module_css_default.workspaceSection,
|
|
11019
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
11020
|
+
ref: channelsRef,
|
|
11021
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TeamChannelsPanel, {
|
|
11022
|
+
workspaceId: selectedId,
|
|
11023
|
+
loadMembers,
|
|
11024
|
+
loadChannels,
|
|
11025
|
+
subscribeChanges,
|
|
11026
|
+
createChannel,
|
|
11027
|
+
updateChannel,
|
|
11028
|
+
joinChannel,
|
|
11029
|
+
removeChannelMember,
|
|
11030
|
+
creatingAgents: creatingAgents.filter((request) => request.workspaceId === selectedId),
|
|
11031
|
+
...navigationState.memberSessionId !== void 0 || navigationState.channelRef === void 0 ? {} : { selectedChannelRef: navigationState.channelRef },
|
|
11032
|
+
selectChannel,
|
|
11033
|
+
t
|
|
11034
|
+
}, selectedId)
|
|
11035
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
11036
|
+
ref: agentsRef,
|
|
11037
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TeamAgentsPanel, {
|
|
11038
|
+
workspaceId: selectedId,
|
|
11039
|
+
loadMembers,
|
|
11040
|
+
subscribeChanges,
|
|
11041
|
+
loadChannels,
|
|
11042
|
+
addMember,
|
|
11043
|
+
updateMember,
|
|
11044
|
+
recoverMember,
|
|
11045
|
+
joinChannel,
|
|
11046
|
+
removeChannelMember,
|
|
11047
|
+
loadModels,
|
|
11048
|
+
...navigationState.memberSessionId === void 0 ? {} : { memberSessionId: navigationState.memberSessionId },
|
|
11049
|
+
openMemberSession,
|
|
11050
|
+
onCreatingChange: (request, creating) => {
|
|
11051
|
+
setCreatingAgents((current) => creating ? [...current.filter((item) => item.requestId !== request.requestId), request] : current.filter((item) => item.requestId !== request.requestId));
|
|
11052
|
+
},
|
|
11053
|
+
t
|
|
11054
|
+
}, selectedId)
|
|
11055
|
+
})]
|
|
11056
|
+
})]
|
|
10776
11057
|
});
|
|
10777
11058
|
}
|
|
10778
11059
|
//#endregion
|
|
@@ -11070,6 +11351,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11070
11351
|
editChannel: "编辑频道",
|
|
11071
11352
|
editAgent: "编辑 Agent",
|
|
11072
11353
|
resumeAgent: "恢复",
|
|
11354
|
+
restartAgent: "重启",
|
|
11355
|
+
restartStillUnavailable: "重启已执行,成员仍不可用:{diagnostic}",
|
|
11356
|
+
restartFailed: "重启执行失败:{message}",
|
|
11073
11357
|
optionalSuffix: "(可选)",
|
|
11074
11358
|
agentDescriptionPlaceholder: "留空则暂无描述",
|
|
11075
11359
|
channelsPickerEmpty: "选择初始频道",
|
|
@@ -11082,6 +11366,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11082
11366
|
removeFile: "移除 {name}",
|
|
11083
11367
|
attachmentExpired: "文件已过期清理",
|
|
11084
11368
|
viewImage: "查看大图 {name}",
|
|
11369
|
+
expandMessage: "展开全文",
|
|
11370
|
+
collapseMessage: "收起",
|
|
11085
11371
|
actionsChannel: "{name} 的操作",
|
|
11086
11372
|
actionsAgent: "{name} 的操作",
|
|
11087
11373
|
editSave: "保存",
|
|
@@ -11114,10 +11400,16 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11114
11400
|
taskLabel: "Task #{number}",
|
|
11115
11401
|
taskPending: "Task …",
|
|
11116
11402
|
openTask: "打开 Task #{number}",
|
|
11403
|
+
openThread: "打开讨论",
|
|
11404
|
+
threadLabel: "讨论",
|
|
11405
|
+
asTask: "作为任务",
|
|
11406
|
+
promoteToTask: "转为 Task",
|
|
11407
|
+
promotingTask: "正在转为 Task…",
|
|
11117
11408
|
mentionSuggestions: "提及成员建议",
|
|
11118
11409
|
messageDraft: "消息内容",
|
|
11119
11410
|
composerNotify: "将通知:{ids}",
|
|
11120
11411
|
messagePlaceholder: "写一条消息…",
|
|
11412
|
+
replyPlaceholder: "回复此 Thread…",
|
|
11121
11413
|
sendMessage: "发送",
|
|
11122
11414
|
sendingMessage: "发送中…",
|
|
11123
11415
|
loadOlder: "加载更早消息",
|
|
@@ -11148,6 +11440,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11148
11440
|
activityClaimsReleased: "{actor} 因成员权限变化释放了 {count} 个 Claim",
|
|
11149
11441
|
activityAccepted: "{actor} 验收了此 Task",
|
|
11150
11442
|
activityAcceptedWithClaims: "{actor} 验收了此 Task,并一并完成了 {count} 个未完成 Claim",
|
|
11443
|
+
activityPromoted: "{actor} 为此讨论创建了 Task",
|
|
11151
11444
|
acceptEarlyTitle: "提前验收任务",
|
|
11152
11445
|
acceptEarlyBody: "将验收本 Task,并把以下 {count} 个未完成的 Claim 一并标记为完成:",
|
|
11153
11446
|
acceptingTask: "验收中…",
|
|
@@ -11198,6 +11491,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11198
11491
|
editChannel: "Edit Channel",
|
|
11199
11492
|
editAgent: "Edit Agent",
|
|
11200
11493
|
resumeAgent: "Resume",
|
|
11494
|
+
restartAgent: "Restart",
|
|
11495
|
+
restartStillUnavailable: "Restart ran, but the Member is still unavailable: {diagnostic}",
|
|
11496
|
+
restartFailed: "Restart failed: {message}",
|
|
11201
11497
|
optionalSuffix: " (optional)",
|
|
11202
11498
|
agentDescriptionPlaceholder: "Leave empty if not needed",
|
|
11203
11499
|
channelsPickerEmpty: "Choose initial channels",
|
|
@@ -11210,6 +11506,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11210
11506
|
removeFile: "Remove {name}",
|
|
11211
11507
|
attachmentExpired: "File expired and cleaned up",
|
|
11212
11508
|
viewImage: "View image {name}",
|
|
11509
|
+
expandMessage: "Show more",
|
|
11510
|
+
collapseMessage: "Show less",
|
|
11213
11511
|
actionsChannel: "{name} actions",
|
|
11214
11512
|
actionsAgent: "{name} actions",
|
|
11215
11513
|
editSave: "Save",
|
|
@@ -11242,10 +11540,16 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11242
11540
|
taskLabel: "Task #{number}",
|
|
11243
11541
|
taskPending: "Task …",
|
|
11244
11542
|
openTask: "Open Task #{number}",
|
|
11543
|
+
openThread: "Open thread",
|
|
11544
|
+
threadLabel: "Thread",
|
|
11545
|
+
asTask: "As task",
|
|
11546
|
+
promoteToTask: "Convert to Task",
|
|
11547
|
+
promotingTask: "Converting to Task…",
|
|
11245
11548
|
mentionSuggestions: "Mention suggestions",
|
|
11246
11549
|
messageDraft: "Message",
|
|
11247
11550
|
composerNotify: "Will notify: {ids}",
|
|
11248
11551
|
messagePlaceholder: "Write a message…",
|
|
11552
|
+
replyPlaceholder: "Reply on this Thread…",
|
|
11249
11553
|
sendMessage: "Send",
|
|
11250
11554
|
sendingMessage: "Sending…",
|
|
11251
11555
|
loadOlder: "Load older messages",
|
|
@@ -11276,6 +11580,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11276
11580
|
activityClaimsReleased: "{actor} released {count} Claim(s) after a membership change",
|
|
11277
11581
|
activityAccepted: "{actor} accepted this Task",
|
|
11278
11582
|
activityAcceptedWithClaims: "{actor} accepted this Task and completed {count} unfinished Claims with it",
|
|
11583
|
+
activityPromoted: "{actor} created a Task for this Thread",
|
|
11279
11584
|
acceptEarlyTitle: "Accept Task early",
|
|
11280
11585
|
acceptEarlyBody: "This accepts the Task and marks the following {count} unfinished Claims as done:",
|
|
11281
11586
|
acceptingTask: "Accepting…",
|
|
@@ -11345,6 +11650,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11345
11650
|
getAttachment: (request) => ctx.remote.agentTeam.getAttachment(request),
|
|
11346
11651
|
reply: (request) => ctx.remote.agentTeam.reply(request),
|
|
11347
11652
|
changeTask: (request) => ctx.remote.agentTeam.changeTask(request),
|
|
11653
|
+
promoteThread: (request) => ctx.remote.agentTeam.promoteThread(request),
|
|
11348
11654
|
resolveTaskRefs: (request) => ctx.remote.agentTeam.resolveTaskRefs(request)
|
|
11349
11655
|
} : {},
|
|
11350
11656
|
...name === "sidebar.workspaces" ? {
|