@arbidocs/blocks 0.5.29 → 0.5.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{ConnectedCallDock-FDGMFTS5.js → ConnectedCallDock-AWSOPETT.js} +12 -12
- package/dist/{ConnectedCallDock-FDGMFTS5.js.map → ConnectedCallDock-AWSOPETT.js.map} +1 -1
- package/dist/{ConnectedCallDock-ZIX2ZJCD.cjs → ConnectedCallDock-GM4KOBBS.cjs} +13 -13
- package/dist/{ConnectedCallDock-ZIX2ZJCD.cjs.map → ConnectedCallDock-GM4KOBBS.cjs.map} +1 -1
- package/dist/{ConnectedCallRoom-VJIHEJ4X.js → ConnectedCallRoom-JMB74KTV.js} +12 -12
- package/dist/{ConnectedCallRoom-VJIHEJ4X.js.map → ConnectedCallRoom-JMB74KTV.js.map} +1 -1
- package/dist/{ConnectedCallRoom-WZQVXDDW.cjs → ConnectedCallRoom-QE2MMJ6M.cjs} +13 -13
- package/dist/{ConnectedCallRoom-WZQVXDDW.cjs.map → ConnectedCallRoom-QE2MMJ6M.cjs.map} +1 -1
- package/dist/{ConnectedNativeDocxComparison-KSLSDAAP.cjs → ConnectedNativeDocxComparison-P7IHRMCS.cjs} +17 -17
- package/dist/{ConnectedNativeDocxComparison-KSLSDAAP.cjs.map → ConnectedNativeDocxComparison-P7IHRMCS.cjs.map} +1 -1
- package/dist/{ConnectedNativeDocxComparison-7ZC7BRY4.js → ConnectedNativeDocxComparison-T6JRDIMR.js} +16 -16
- package/dist/{ConnectedNativeDocxComparison-7ZC7BRY4.js.map → ConnectedNativeDocxComparison-T6JRDIMR.js.map} +1 -1
- package/dist/{ConnectedNativeDocxEditor-5E64Q7FX.cjs → ConnectedNativeDocxEditor-HBV5EJ63.cjs} +17 -17
- package/dist/{ConnectedNativeDocxEditor-5E64Q7FX.cjs.map → ConnectedNativeDocxEditor-HBV5EJ63.cjs.map} +1 -1
- package/dist/{ConnectedNativeDocxEditor-B5KDDPRY.js → ConnectedNativeDocxEditor-X6YNPGRL.js} +15 -15
- package/dist/{ConnectedNativeDocxEditor-B5KDDPRY.js.map → ConnectedNativeDocxEditor-X6YNPGRL.js.map} +1 -1
- package/dist/{ConnectedStreamedWordArtifact-RLU5VYGO.cjs → ConnectedStreamedWordArtifact-GYJEQO4M.cjs} +17 -17
- package/dist/ConnectedStreamedWordArtifact-GYJEQO4M.cjs.map +1 -0
- package/dist/{ConnectedStreamedWordArtifact-YCQSIGXL.js → ConnectedStreamedWordArtifact-X7R6PBRT.js} +16 -16
- package/dist/ConnectedStreamedWordArtifact-X7R6PBRT.js.map +1 -0
- package/dist/{WorkspaceTableView-BUWRSR42.cjs → WorkspaceTableView-FTQZJDRB.cjs} +10 -10
- package/dist/{WorkspaceTableView-BUWRSR42.cjs.map → WorkspaceTableView-FTQZJDRB.cjs.map} +1 -1
- package/dist/{WorkspaceTableView-62PJLX7V.js → WorkspaceTableView-NWRVACJL.js} +8 -8
- package/dist/{WorkspaceTableView-62PJLX7V.js.map → WorkspaceTableView-NWRVACJL.js.map} +1 -1
- package/dist/agents/index.cjs +373 -373
- package/dist/agents/index.js +11 -11
- package/dist/calls/index.cjs +39 -39
- package/dist/calls/index.js +7 -7
- package/dist/chat/index.cjs +167 -167
- package/dist/chat/index.js +9 -9
- package/dist/{chunk-CPJ2B3QQ.cjs → chunk-24Y36OK6.cjs} +9 -9
- package/dist/{chunk-CPJ2B3QQ.cjs.map → chunk-24Y36OK6.cjs.map} +1 -1
- package/dist/{chunk-XDFH6ONO.cjs → chunk-2DO5YPDH.cjs} +16 -16
- package/dist/{chunk-XDFH6ONO.cjs.map → chunk-2DO5YPDH.cjs.map} +1 -1
- package/dist/{chunk-GJI5PEGR.js → chunk-2JARBDEK.js} +4 -4
- package/dist/{chunk-GJI5PEGR.js.map → chunk-2JARBDEK.js.map} +1 -1
- package/dist/{chunk-HT62K3UO.cjs → chunk-3YVWAYXU.cjs} +4 -4
- package/dist/{chunk-HT62K3UO.cjs.map → chunk-3YVWAYXU.cjs.map} +1 -1
- package/dist/{chunk-EJSVRT3G.js → chunk-5VSMJ674.js} +56 -66
- package/dist/chunk-5VSMJ674.js.map +1 -0
- package/dist/{chunk-XGUN44A4.js → chunk-5XG7YD4V.js} +8 -8
- package/dist/{chunk-XGUN44A4.js.map → chunk-5XG7YD4V.js.map} +1 -1
- package/dist/{chunk-EVV32AXB.cjs → chunk-62G4HK7C.cjs} +6 -6
- package/dist/{chunk-EVV32AXB.cjs.map → chunk-62G4HK7C.cjs.map} +1 -1
- package/dist/{chunk-7U2DNPMZ.cjs → chunk-63FOCF46.cjs} +12 -12
- package/dist/{chunk-7U2DNPMZ.cjs.map → chunk-63FOCF46.cjs.map} +1 -1
- package/dist/{chunk-NIS5TLOM.cjs → chunk-6LVVW6VB.cjs} +4 -4
- package/dist/{chunk-NIS5TLOM.cjs.map → chunk-6LVVW6VB.cjs.map} +1 -1
- package/dist/{chunk-JS7KJRKG.js → chunk-75Z5AUMM.js} +3 -3
- package/dist/{chunk-JS7KJRKG.js.map → chunk-75Z5AUMM.js.map} +1 -1
- package/dist/{chunk-CRUCMRFC.cjs → chunk-76G2DAOF.cjs} +18 -18
- package/dist/{chunk-CRUCMRFC.cjs.map → chunk-76G2DAOF.cjs.map} +1 -1
- package/dist/{chunk-AHYSHKPL.cjs → chunk-7THRBD42.cjs} +57 -16
- package/dist/chunk-7THRBD42.cjs.map +1 -0
- package/dist/{chunk-SBHWRN2D.js → chunk-BBSXBABG.js} +3 -3
- package/dist/{chunk-SBHWRN2D.js.map → chunk-BBSXBABG.js.map} +1 -1
- package/dist/{chunk-WG2VDUEI.cjs → chunk-BVMPP574.cjs} +4 -4
- package/dist/{chunk-WG2VDUEI.cjs.map → chunk-BVMPP574.cjs.map} +1 -1
- package/dist/{chunk-3IRIITUW.cjs → chunk-BVXI7W7Z.cjs} +9 -9
- package/dist/{chunk-3IRIITUW.cjs.map → chunk-BVXI7W7Z.cjs.map} +1 -1
- package/dist/{chunk-EVYUYVH2.cjs → chunk-C5J74Y6N.cjs} +5 -5
- package/dist/{chunk-EVYUYVH2.cjs.map → chunk-C5J74Y6N.cjs.map} +1 -1
- package/dist/{chunk-WY626DNG.cjs → chunk-CGUDTSGI.cjs} +10 -10
- package/dist/{chunk-WY626DNG.cjs.map → chunk-CGUDTSGI.cjs.map} +1 -1
- package/dist/{chunk-WBCGVEJX.js → chunk-CMTAOVUX.js} +3 -3
- package/dist/{chunk-WBCGVEJX.js.map → chunk-CMTAOVUX.js.map} +1 -1
- package/dist/{chunk-OGADWN5L.js → chunk-DHTBHALC.js} +4 -4
- package/dist/{chunk-OGADWN5L.js.map → chunk-DHTBHALC.js.map} +1 -1
- package/dist/{chunk-UXIMEFEF.js → chunk-DWERY33L.js} +8 -8
- package/dist/{chunk-UXIMEFEF.js.map → chunk-DWERY33L.js.map} +1 -1
- package/dist/{chunk-A634VUNB.js → chunk-EPNJOP2M.js} +5 -5
- package/dist/{chunk-A634VUNB.js.map → chunk-EPNJOP2M.js.map} +1 -1
- package/dist/{chunk-4RMI6D64.cjs → chunk-EZLZ3MDU.cjs} +3 -3
- package/dist/{chunk-4RMI6D64.cjs.map → chunk-EZLZ3MDU.cjs.map} +1 -1
- package/dist/{chunk-3OKBEVP3.js → chunk-FAILAFD6.js} +3 -3
- package/dist/{chunk-3OKBEVP3.js.map → chunk-FAILAFD6.js.map} +1 -1
- package/dist/{chunk-OZSAQJO4.js → chunk-FODIZWMX.js} +3 -3
- package/dist/{chunk-OZSAQJO4.js.map → chunk-FODIZWMX.js.map} +1 -1
- package/dist/{chunk-V2GEULRG.cjs → chunk-GK35JEWW.cjs} +4 -4
- package/dist/{chunk-V2GEULRG.cjs.map → chunk-GK35JEWW.cjs.map} +1 -1
- package/dist/{chunk-52GITM4V.cjs → chunk-GNWQS6S4.cjs} +144 -154
- package/dist/{chunk-EJSVRT3G.js.map → chunk-GNWQS6S4.cjs.map} +1 -1
- package/dist/{chunk-R3HZBTE3.cjs → chunk-HMEP4EZ3.cjs} +4 -4
- package/dist/{chunk-R3HZBTE3.cjs.map → chunk-HMEP4EZ3.cjs.map} +1 -1
- package/dist/{chunk-5ETT7ZIO.js → chunk-IYKGI2DQ.js} +3 -3
- package/dist/{chunk-5ETT7ZIO.js.map → chunk-IYKGI2DQ.js.map} +1 -1
- package/dist/{chunk-3PQPA5K6.cjs → chunk-J4VP2PQJ.cjs} +28 -28
- package/dist/{chunk-3PQPA5K6.cjs.map → chunk-J4VP2PQJ.cjs.map} +1 -1
- package/dist/{chunk-TY76UEFK.js → chunk-JLJVEQFN.js} +6 -6
- package/dist/{chunk-TY76UEFK.js.map → chunk-JLJVEQFN.js.map} +1 -1
- package/dist/{chunk-G3MZ5S2Q.js → chunk-KYHDMUPW.js} +3 -3
- package/dist/{chunk-G3MZ5S2Q.js.map → chunk-KYHDMUPW.js.map} +1 -1
- package/dist/{chunk-DF2GSH4D.js → chunk-L2MMIC3S.js} +3 -3
- package/dist/{chunk-DF2GSH4D.js.map → chunk-L2MMIC3S.js.map} +1 -1
- package/dist/{chunk-46XON6PW.js → chunk-L4Q7FWBQ.js} +3 -3
- package/dist/{chunk-46XON6PW.js.map → chunk-L4Q7FWBQ.js.map} +1 -1
- package/dist/{chunk-OQCUIN6Z.cjs → chunk-M6N7XJH7.cjs} +5 -5
- package/dist/{chunk-OQCUIN6Z.cjs.map → chunk-M6N7XJH7.cjs.map} +1 -1
- package/dist/{chunk-MTHAQGJB.js → chunk-MNLMPH45.js} +3 -3
- package/dist/{chunk-MTHAQGJB.js.map → chunk-MNLMPH45.js.map} +1 -1
- package/dist/{chunk-W43S7COD.js → chunk-NBQNDHOW.js} +4 -4
- package/dist/{chunk-W43S7COD.js.map → chunk-NBQNDHOW.js.map} +1 -1
- package/dist/{chunk-7YGUUUL7.cjs → chunk-NF7CGYZF.cjs} +4 -4
- package/dist/{chunk-7YGUUUL7.cjs.map → chunk-NF7CGYZF.cjs.map} +1 -1
- package/dist/{chunk-DNGA25ZA.js → chunk-NI3O4UZL.js} +5 -5
- package/dist/{chunk-DNGA25ZA.js.map → chunk-NI3O4UZL.js.map} +1 -1
- package/dist/{chunk-T3JW5BYG.cjs → chunk-OSCWFBRD.cjs} +4 -4
- package/dist/{chunk-T3JW5BYG.cjs.map → chunk-OSCWFBRD.cjs.map} +1 -1
- package/dist/{chunk-TKOP6WMD.js → chunk-OYKITGTK.js} +4 -4
- package/dist/{chunk-TKOP6WMD.js.map → chunk-OYKITGTK.js.map} +1 -1
- package/dist/{chunk-2TB4UDBH.js → chunk-PKDGP6ZH.js} +3 -3
- package/dist/{chunk-2TB4UDBH.js.map → chunk-PKDGP6ZH.js.map} +1 -1
- package/dist/{chunk-AKW4JLHQ.cjs → chunk-PO2QI2OI.cjs} +4 -4
- package/dist/{chunk-AKW4JLHQ.cjs.map → chunk-PO2QI2OI.cjs.map} +1 -1
- package/dist/{chunk-4UREQY5X.js → chunk-Q56LAJRP.js} +4 -4
- package/dist/{chunk-4UREQY5X.js.map → chunk-Q56LAJRP.js.map} +1 -1
- package/dist/{chunk-SQAVWMGV.cjs → chunk-R6GIDWEH.cjs} +59 -59
- package/dist/{chunk-SQAVWMGV.cjs.map → chunk-R6GIDWEH.cjs.map} +1 -1
- package/dist/{chunk-KKBYWVEL.js → chunk-SLGRQMHW.js} +5 -5
- package/dist/{chunk-KKBYWVEL.js.map → chunk-SLGRQMHW.js.map} +1 -1
- package/dist/{chunk-LXB756TN.cjs → chunk-SN5VHPF4.cjs} +3 -3
- package/dist/{chunk-LXB756TN.cjs.map → chunk-SN5VHPF4.cjs.map} +1 -1
- package/dist/{chunk-CJWZYK5K.cjs → chunk-SVL2OM7T.cjs} +5 -5
- package/dist/{chunk-CJWZYK5K.cjs.map → chunk-SVL2OM7T.cjs.map} +1 -1
- package/dist/{chunk-SSRFSSIT.js → chunk-TGVBLXLV.js} +52 -17
- package/dist/chunk-TGVBLXLV.js.map +1 -0
- package/dist/{chunk-DV25UPJ7.js → chunk-THNTNAYI.js} +3 -3
- package/dist/{chunk-DV25UPJ7.js.map → chunk-THNTNAYI.js.map} +1 -1
- package/dist/{chunk-AYAWG2CM.js → chunk-TNWJPTDG.js} +3 -3
- package/dist/{chunk-AYAWG2CM.js.map → chunk-TNWJPTDG.js.map} +1 -1
- package/dist/{chunk-SN7X7C7H.cjs → chunk-UAMY7KHW.cjs} +5 -5
- package/dist/{chunk-SN7X7C7H.cjs.map → chunk-UAMY7KHW.cjs.map} +1 -1
- package/dist/{chunk-H72SWOUS.js → chunk-VTGRCJLP.js} +3 -3
- package/dist/{chunk-H72SWOUS.js.map → chunk-VTGRCJLP.js.map} +1 -1
- package/dist/{chunk-W5PKYJX5.cjs → chunk-W6DDSZUD.cjs} +14 -14
- package/dist/{chunk-W5PKYJX5.cjs.map → chunk-W6DDSZUD.cjs.map} +1 -1
- package/dist/{chunk-ZXXXLYZY.cjs → chunk-WG2IPVLA.cjs} +7 -7
- package/dist/{chunk-ZXXXLYZY.cjs.map → chunk-WG2IPVLA.cjs.map} +1 -1
- package/dist/{chunk-RWU3C4MK.js → chunk-WLWY43FR.js} +3 -3
- package/dist/{chunk-RWU3C4MK.js.map → chunk-WLWY43FR.js.map} +1 -1
- package/dist/{chunk-OZRGYS3J.js → chunk-X3LM4KRW.js} +3 -3
- package/dist/{chunk-OZRGYS3J.js.map → chunk-X3LM4KRW.js.map} +1 -1
- package/dist/{chunk-IZJ3BOJO.js → chunk-XMDIXNLW.js} +3 -3
- package/dist/{chunk-IZJ3BOJO.js.map → chunk-XMDIXNLW.js.map} +1 -1
- package/dist/{chunk-7FKVJUR4.js → chunk-Y6F6UF2W.js} +3 -3
- package/dist/{chunk-7FKVJUR4.js.map → chunk-Y6F6UF2W.js.map} +1 -1
- package/dist/{chunk-F72ZD5Q2.cjs → chunk-YD3RN2FY.cjs} +3 -3
- package/dist/{chunk-F72ZD5Q2.cjs.map → chunk-YD3RN2FY.cjs.map} +1 -1
- package/dist/{chunk-QHWDV2VB.cjs → chunk-YJJNDKA3.cjs} +6 -6
- package/dist/{chunk-QHWDV2VB.cjs.map → chunk-YJJNDKA3.cjs.map} +1 -1
- package/dist/{chunk-NZCAWWV4.cjs → chunk-YP643FYT.cjs} +4 -4
- package/dist/{chunk-NZCAWWV4.cjs.map → chunk-YP643FYT.cjs.map} +1 -1
- package/dist/{chunk-BBTHGWZO.cjs → chunk-ZUOU54X3.cjs} +5 -5
- package/dist/{chunk-BBTHGWZO.cjs.map → chunk-ZUOU54X3.cjs.map} +1 -1
- package/dist/citations/index.cjs +10 -10
- package/dist/citations/index.js +2 -2
- package/dist/collaboration/index.cjs +9 -9
- package/dist/collaboration/index.js +1 -1
- package/dist/connect/docx.cjs +19 -19
- package/dist/connect/docx.js +15 -15
- package/dist/connect/index.cjs +1885 -1856
- package/dist/connect/index.cjs.map +1 -1
- package/dist/connect/index.d.ts +1 -0
- package/dist/connect/index.js +686 -659
- package/dist/connect/index.js.map +1 -1
- package/dist/connect/viewer.cjs +83 -83
- package/dist/connect/viewer.js +18 -18
- package/dist/connection/ConnectedSettings.d.ts +1 -1
- package/dist/connection/dialogs/ConnectedGlobalDialogs.d.ts +26 -0
- package/dist/connection/dialogs/index.d.ts +1 -0
- package/dist/connection/files/upload/ConnectedUploadDropzone.d.ts +2 -1
- package/dist/connection/workspace-access/access-review.d.ts +6 -0
- package/dist/facts/index.cjs +60 -60
- package/dist/facts/index.js +7 -7
- package/dist/files/index.cjs +225 -225
- package/dist/files/index.js +5 -5
- package/dist/home/index.cjs +31 -31
- package/dist/home/index.js +6 -6
- package/dist/index.cjs +780 -756
- package/dist/index.d.ts +2 -1
- package/dist/index.js +27 -27
- package/dist/provider/dialog-registry.d.ts +85 -0
- package/dist/provider/environment.d.ts +11 -11
- package/dist/retrieval/index.cjs +4 -4
- package/dist/retrieval/index.js +2 -2
- package/dist/settings/index.cjs +156 -156
- package/dist/settings/index.js +3 -3
- package/dist/shell/index.cjs +42 -42
- package/dist/shell/index.js +4 -4
- package/dist/studio/index.cjs +18 -18
- package/dist/studio/index.js +10 -10
- package/dist/workflow-canvas/index.cjs +69 -69
- package/dist/workflow-canvas/index.js +14 -14
- package/dist/workspaces/index.cjs +29 -29
- package/dist/workspaces/index.js +4 -4
- package/node_modules/@arbidocs/coedit/package.json +1 -1
- package/package.json +5 -5
- package/dist/ConnectedStreamedWordArtifact-RLU5VYGO.cjs.map +0 -1
- package/dist/ConnectedStreamedWordArtifact-YCQSIGXL.js.map +0 -1
- package/dist/chunk-52GITM4V.cjs.map +0 -1
- package/dist/chunk-AHYSHKPL.cjs.map +0 -1
- package/dist/chunk-SSRFSSIT.js.map +0 -1
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
4
|
var chunkRFIBUWLF_cjs = require('./chunk-RFIBUWLF.cjs');
|
|
5
|
-
var
|
|
6
|
-
var
|
|
5
|
+
var chunkCGUDTSGI_cjs = require('./chunk-CGUDTSGI.cjs');
|
|
6
|
+
var chunkYJJNDKA3_cjs = require('./chunk-YJJNDKA3.cjs');
|
|
7
7
|
var chunkSIB6C7P7_cjs = require('./chunk-SIB6C7P7.cjs');
|
|
8
8
|
var chunkAHDJXIUB_cjs = require('./chunk-AHDJXIUB.cjs');
|
|
9
|
-
var
|
|
10
|
-
var chunkMEMWZ72Y_cjs = require('./chunk-MEMWZ72Y.cjs');
|
|
9
|
+
var chunk6LVVW6VB_cjs = require('./chunk-6LVVW6VB.cjs');
|
|
11
10
|
var chunkLKK52DEY_cjs = require('./chunk-LKK52DEY.cjs');
|
|
12
|
-
var
|
|
11
|
+
var chunkMEMWZ72Y_cjs = require('./chunk-MEMWZ72Y.cjs');
|
|
12
|
+
var chunkEZLZ3MDU_cjs = require('./chunk-EZLZ3MDU.cjs');
|
|
13
13
|
var chunk76L6LOP3_cjs = require('./chunk-76L6LOP3.cjs');
|
|
14
14
|
var chunkCQ2YSHIF_cjs = require('./chunk-CQ2YSHIF.cjs');
|
|
15
|
-
var
|
|
15
|
+
var chunk7THRBD42_cjs = require('./chunk-7THRBD42.cjs');
|
|
16
16
|
var chunkULWRNGGE_cjs = require('./chunk-ULWRNGGE.cjs');
|
|
17
17
|
var chunkMHVNT4J3_cjs = require('./chunk-MHVNT4J3.cjs');
|
|
18
18
|
var ui = require('@arbidocs/react/ui');
|
|
@@ -77,7 +77,7 @@ function defaultScopeRenderer(scopeSource) {
|
|
|
77
77
|
if (!scopeSource) return void 0;
|
|
78
78
|
return function renderScope(_field, value, onChange) {
|
|
79
79
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
80
|
-
|
|
80
|
+
chunkYJJNDKA3_cjs.ScopePicker,
|
|
81
81
|
{
|
|
82
82
|
folders: scopeSource.folders,
|
|
83
83
|
unfiledCount: scopeSource.unfiledCount,
|
|
@@ -210,7 +210,7 @@ function toStepField(f) {
|
|
|
210
210
|
}
|
|
211
211
|
var compact = (o) => Object.fromEntries(Object.entries(o).filter(([, v]) => v !== void 0 && v !== ""));
|
|
212
212
|
function placeholders(workflow) {
|
|
213
|
-
return Object.fromEntries(
|
|
213
|
+
return Object.fromEntries(chunkEZLZ3MDU_cjs.runFields(workflow).map((f) => [f.name, `{{${f.name}}}`]));
|
|
214
214
|
}
|
|
215
215
|
function agentStep(workflow, step, options) {
|
|
216
216
|
const target = step.workflow ? options.resolveWorkflow?.(step.workflow) : void 0;
|
|
@@ -219,11 +219,11 @@ function agentStep(workflow, step, options) {
|
|
|
219
219
|
([, v]) => v !== void 0 && v !== null && v !== ""
|
|
220
220
|
);
|
|
221
221
|
const inputs = { ...placeholders(workflow), ...Object.fromEntries(given) };
|
|
222
|
-
return { skill: null, inputs: null, prompt:
|
|
222
|
+
return { skill: null, inputs: null, prompt: chunkEZLZ3MDU_cjs.composeStepPrompt(workflow, step, inputs, options) };
|
|
223
223
|
}
|
|
224
224
|
function toPlanSteps(workflow, options = {}) {
|
|
225
225
|
const layout = workflow.run.kind === "steps" ? workflow.run.layout : void 0;
|
|
226
|
-
return
|
|
226
|
+
return chunkEZLZ3MDU_cjs.workflowSteps(workflow).map((step) => {
|
|
227
227
|
const ui = compact({
|
|
228
228
|
description: step.description,
|
|
229
229
|
icon: step.icon,
|
|
@@ -250,8 +250,8 @@ function toPlanSteps(workflow, options = {}) {
|
|
|
250
250
|
ui,
|
|
251
251
|
// An unfinished signal (still being typed) is not saved: the server would refuse it.
|
|
252
252
|
...step.signals?.some((s) => !isIncompleteSignal(s)) ? { signals: step.signals.filter((s) => !isIncompleteSignal(s)).map(toPlanSignal) } : {},
|
|
253
|
-
...step.assignee &&
|
|
254
|
-
...step.remindAfterHours &&
|
|
253
|
+
...step.assignee && chunkEZLZ3MDU_cjs.canAssign(step) ? { assignee: toPlanAssignee(step.assignee) } : {},
|
|
254
|
+
...step.remindAfterHours && chunkEZLZ3MDU_cjs.canAssign(step) ? { remind_after_hours: step.remindAfterHours } : {},
|
|
255
255
|
// A review's fields are what approving it is checked against (the server's `fields`).
|
|
256
256
|
...step.kind === "review" && step.fields?.length ? { fields: step.fields.map(toStepField) } : {},
|
|
257
257
|
...step.kind === "action" ? { action: toPlanAction(step.action) } : {},
|
|
@@ -396,7 +396,7 @@ function workflowFromSkillMarkdown(id, text2) {
|
|
|
396
396
|
var errorMessage = (e) => e instanceof Error ? e.message : typeof e === "string" ? e : "Something went wrong.";
|
|
397
397
|
function firstOpen(steps, states) {
|
|
398
398
|
const open = steps.find((s) => !["done", "skipped"].includes(states[s.id]?.status ?? "pending"));
|
|
399
|
-
return open?.id ?? (steps.length &&
|
|
399
|
+
return open?.id ?? (steps.length && chunkEZLZ3MDU_cjs.isRunFinished(steps, states) ? null : steps[0]?.id ?? null);
|
|
400
400
|
}
|
|
401
401
|
function useWorkflowView(options) {
|
|
402
402
|
const { steps, states, inputs, setInput, loaded = true } = options;
|
|
@@ -436,11 +436,11 @@ function useWorkflowView(options) {
|
|
|
436
436
|
}),
|
|
437
437
|
[]
|
|
438
438
|
);
|
|
439
|
-
const action = busy ? "wait" :
|
|
439
|
+
const action = busy ? "wait" : chunkEZLZ3MDU_cjs.nextAction(steps, states, current, actionOptions(options));
|
|
440
440
|
const next = react.useCallback(async () => {
|
|
441
441
|
const { steps: s, states: st, inputs: values } = optionsRef.current;
|
|
442
442
|
const at = s.find((x) => x.id === current);
|
|
443
|
-
const act2 =
|
|
443
|
+
const act2 = chunkEZLZ3MDU_cjs.nextAction(s, st, current, actionOptions(optionsRef.current));
|
|
444
444
|
if (!at || act2 === "wait" || busy) return;
|
|
445
445
|
setActionError(null);
|
|
446
446
|
if (act2 === "finish") return setCurrent(null);
|
|
@@ -451,7 +451,7 @@ function useWorkflowView(options) {
|
|
|
451
451
|
await (act2 === "start" ? optionsRef.current.start?.() : optionsRef.current.retry?.(at.id));
|
|
452
452
|
return;
|
|
453
453
|
}
|
|
454
|
-
if (Object.keys(
|
|
454
|
+
if (Object.keys(chunkEZLZ3MDU_cjs.validateStep(at, values)).length > 0) {
|
|
455
455
|
setShowErrors(true);
|
|
456
456
|
return;
|
|
457
457
|
}
|
|
@@ -552,10 +552,10 @@ function useWorkflowView(options) {
|
|
|
552
552
|
inputs,
|
|
553
553
|
setInput,
|
|
554
554
|
stateOf: (id) => states[id],
|
|
555
|
-
phaseOf: (id) =>
|
|
556
|
-
failedUpstreamOf: (id) =>
|
|
555
|
+
phaseOf: (id) => chunkEZLZ3MDU_cjs.stepPhase(steps, states, id),
|
|
556
|
+
failedUpstreamOf: (id) => chunkEZLZ3MDU_cjs.failedUpstream(steps, states, id),
|
|
557
557
|
isLocked,
|
|
558
|
-
errors: showErrors && step && !isLocked(step.id) ?
|
|
558
|
+
errors: showErrors && step && !isLocked(step.id) ? chunkEZLZ3MDU_cjs.validateStep(step, inputs) : {},
|
|
559
559
|
busy,
|
|
560
560
|
actionError,
|
|
561
561
|
isRunning: Object.values(states).some((s) => s.status === "running"),
|
|
@@ -573,11 +573,11 @@ function useWorkflowView(options) {
|
|
|
573
573
|
nameOf: options.nameOf,
|
|
574
574
|
assigneeOf: (id) => {
|
|
575
575
|
const s = steps.find((x) => x.id === id);
|
|
576
|
-
if (!s || !
|
|
577
|
-
return
|
|
576
|
+
if (!s || !chunkEZLZ3MDU_cjs.canAssign(s)) return void 0;
|
|
577
|
+
return chunkEZLZ3MDU_cjs.assigneeName(s.assignee, {
|
|
578
578
|
nameOf: options.nameOf,
|
|
579
579
|
inputs,
|
|
580
|
-
fields:
|
|
580
|
+
fields: chunkEZLZ3MDU_cjs.runFieldsOf(steps),
|
|
581
581
|
announcedTo: states[id]?.announcedTo
|
|
582
582
|
});
|
|
583
583
|
},
|
|
@@ -711,7 +711,7 @@ function StepBarFrame({
|
|
|
711
711
|
}) {
|
|
712
712
|
const l = { ...DEFAULT_STEP_BAR_LABELS, ...labels };
|
|
713
713
|
const box = react.useRef(null);
|
|
714
|
-
const { width } =
|
|
714
|
+
const { width } = chunkEZLZ3MDU_cjs.useElementSize(box);
|
|
715
715
|
const narrow = width > 0 && width < NARROW_PX;
|
|
716
716
|
const [start, setStart] = react.useState(null);
|
|
717
717
|
react.useEffect(() => setStart(null), [current]);
|
|
@@ -778,7 +778,7 @@ function StepBarFrame({
|
|
|
778
778
|
phase === "blocked" && "opacity-60"
|
|
779
779
|
),
|
|
780
780
|
"aria-hidden": true,
|
|
781
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
781
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(chunkEZLZ3MDU_cjs.StepBadgeMark, { phase, icon: icon?.(s) })
|
|
782
782
|
}
|
|
783
783
|
),
|
|
784
784
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "min-w-0 flex-1 truncate", title: s.title, children: s.title }),
|
|
@@ -886,7 +886,7 @@ function StepBarFrame({
|
|
|
886
886
|
};
|
|
887
887
|
const running = win.runningHidden;
|
|
888
888
|
const outOfViewChip = (s, kind) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
889
|
-
|
|
889
|
+
chunkEZLZ3MDU_cjs.StepChip,
|
|
890
890
|
{
|
|
891
891
|
kind: kindOf(s),
|
|
892
892
|
phase: kind === "working" ? "running" : "failed",
|
|
@@ -1059,7 +1059,7 @@ var DEFAULT_WORKFLOW_STEP_PARTS_LABELS = {
|
|
|
1059
1059
|
someone: "someone"
|
|
1060
1060
|
};
|
|
1061
1061
|
var docName = (ref, nameOfDoc) => {
|
|
1062
|
-
const { id, version } =
|
|
1062
|
+
const { id, version } = chunkEZLZ3MDU_cjs.splitDocRef(ref);
|
|
1063
1063
|
const name = nameOfDoc?.(id) ?? id;
|
|
1064
1064
|
return version ? `${name} \xB7 v${version}` : name;
|
|
1065
1065
|
};
|
|
@@ -1141,7 +1141,7 @@ function SendBackControl({
|
|
|
1141
1141
|
const states = Object.fromEntries(
|
|
1142
1142
|
run.steps.map((s) => [s.id, run.stateOf(s.id) ?? { status: "pending" }])
|
|
1143
1143
|
);
|
|
1144
|
-
const targets =
|
|
1144
|
+
const targets = chunkEZLZ3MDU_cjs.sendBackTargets(run.steps, states, step.id);
|
|
1145
1145
|
const [open, setOpen] = react.useState(false);
|
|
1146
1146
|
const [to, setTo] = react.useState(targets[0]?.id ?? "");
|
|
1147
1147
|
const [note, setNote] = react.useState("");
|
|
@@ -1231,7 +1231,7 @@ function ApprovalEvidence({
|
|
|
1231
1231
|
/* @__PURE__ */ jsxRuntime.jsxs("p", { className: "flex flex-wrap items-center gap-1.5 text-sm font-medium", children: [
|
|
1232
1232
|
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.ShieldCheck, { className: "size-4 text-primary" }),
|
|
1233
1233
|
approver ? l.approvedBy.replace("{name}", approver) : null,
|
|
1234
|
-
state.at && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs font-normal text-muted-foreground", children: l.approvedAt.replace("{date}",
|
|
1234
|
+
state.at && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs font-normal text-muted-foreground", children: l.approvedAt.replace("{date}", chunkEZLZ3MDU_cjs.formatDate(state.at)) })
|
|
1235
1235
|
] }),
|
|
1236
1236
|
evidence.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1.5", children: [
|
|
1237
1237
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs font-semibold uppercase tracking-wide text-muted-foreground", children: l.approvedWhat }),
|
|
@@ -1264,7 +1264,7 @@ function ApprovalEvidence({
|
|
|
1264
1264
|
] }),
|
|
1265
1265
|
(step.fields ?? []).length > 0 && /* @__PURE__ */ jsxRuntime.jsx("dl", { className: "grid grid-cols-[auto_1fr] gap-x-3 gap-y-0.5 text-xs", children: (step.fields ?? []).map((f) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "contents", children: [
|
|
1266
1266
|
/* @__PURE__ */ jsxRuntime.jsx("dt", { className: "text-muted-foreground", children: f.label }),
|
|
1267
|
-
/* @__PURE__ */ jsxRuntime.jsx("dd", { "data-testid": `${testId}-evidence-field-${f.name}`, children:
|
|
1267
|
+
/* @__PURE__ */ jsxRuntime.jsx("dd", { "data-testid": `${testId}-evidence-field-${f.name}`, children: chunkEZLZ3MDU_cjs.shownValue(run.inputs[f.name], f, run.nameOf) })
|
|
1268
1268
|
] }, f.name)) })
|
|
1269
1269
|
] });
|
|
1270
1270
|
}
|
|
@@ -1360,7 +1360,7 @@ function ActionStepBody({
|
|
|
1360
1360
|
waiting?.expires_at && phase === "waiting" && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "flex items-center gap-1.5 text-xs text-muted-foreground", children: [
|
|
1361
1361
|
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.Clock, { className: "size-3.5" }),
|
|
1362
1362
|
" ",
|
|
1363
|
-
l.expires.replace("{date}",
|
|
1363
|
+
l.expires.replace("{date}", chunkEZLZ3MDU_cjs.formatDate(waiting.expires_at))
|
|
1364
1364
|
] }),
|
|
1365
1365
|
phase === "waiting" && mine && !declining && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-wrap gap-2", children: [
|
|
1366
1366
|
actions?.sign && state && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -1518,7 +1518,7 @@ function WorkflowStepBar({
|
|
|
1518
1518
|
const name = `${title} (${l.phases[phase]})`;
|
|
1519
1519
|
if (s.id === DONE)
|
|
1520
1520
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1521
|
-
|
|
1521
|
+
chunkEZLZ3MDU_cjs.StepChip,
|
|
1522
1522
|
{
|
|
1523
1523
|
inert: true,
|
|
1524
1524
|
kind: "start",
|
|
@@ -1532,17 +1532,17 @@ function WorkflowStepBar({
|
|
|
1532
1532
|
"data-testid": tid("step-done")
|
|
1533
1533
|
}
|
|
1534
1534
|
);
|
|
1535
|
-
const kind =
|
|
1536
|
-
const KindIcon =
|
|
1535
|
+
const kind = chunkEZLZ3MDU_cjs.stepKindOf(s);
|
|
1536
|
+
const KindIcon = chunkEZLZ3MDU_cjs.STEP_KIND_ICONS[kind];
|
|
1537
1537
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1538
|
-
|
|
1538
|
+
chunkEZLZ3MDU_cjs.StepChip,
|
|
1539
1539
|
{
|
|
1540
1540
|
kind,
|
|
1541
1541
|
phase,
|
|
1542
1542
|
icon: icon(s.icon) ?? /* @__PURE__ */ jsxRuntime.jsx(KindIcon, {}),
|
|
1543
1543
|
label: s.title,
|
|
1544
1544
|
current: isCurrent,
|
|
1545
|
-
heading:
|
|
1545
|
+
heading: chunkEZLZ3MDU_cjs.DEFAULT_STEP_KIND_LABELS[kind],
|
|
1546
1546
|
labelClassName: isCurrent ? STEP_LABEL_CURRENT : ui.cn(STEP_LABEL, STEP_LABEL_MAX),
|
|
1547
1547
|
labelTestId: tid(`step-${s.id}-label`),
|
|
1548
1548
|
onClick: () => run.goTo(s.id),
|
|
@@ -1575,7 +1575,7 @@ function WorkflowStepBar({
|
|
|
1575
1575
|
isSelectable: (id) => id !== DONE,
|
|
1576
1576
|
renderStep: (s) => pill(s),
|
|
1577
1577
|
icon: (s) => s.id === DONE ? doneIcon : icon(s.icon),
|
|
1578
|
-
kindOf: (s) => s.id === DONE ? "start" :
|
|
1578
|
+
kindOf: (s) => s.id === DONE ? "start" : chunkEZLZ3MDU_cjs.stepKindOf(s),
|
|
1579
1579
|
disabled: run.busy,
|
|
1580
1580
|
labels,
|
|
1581
1581
|
tid,
|
|
@@ -1658,7 +1658,7 @@ function WorkflowRunner({
|
|
|
1658
1658
|
const { steps, step, isComplete, action } = run;
|
|
1659
1659
|
const completion = workflow.run.kind === "steps" ? workflow.run.completion : void 0;
|
|
1660
1660
|
const tid = (suffix) => `${testIdPrefix}-${suffix}`;
|
|
1661
|
-
const levels =
|
|
1661
|
+
const levels = chunkEZLZ3MDU_cjs.stepLevels(steps);
|
|
1662
1662
|
const icon = (key) => key && renderIcon ? renderIcon(key) : void 0;
|
|
1663
1663
|
const added = step?.kind === "upload" ? (files ?? []).filter((f) => f.addedFor === step.id) : [];
|
|
1664
1664
|
const unread = added.filter((f) => f.status === "processing").length;
|
|
@@ -1666,7 +1666,7 @@ function WorkflowRunner({
|
|
|
1666
1666
|
const sending = added.filter((f) => f.status === "uploading").length;
|
|
1667
1667
|
const unsent = added.filter((f) => f.status === "upload-failed").length;
|
|
1668
1668
|
const uploadHold = step?.kind === "upload" && (sending > 0 || uploading || unsent > 0);
|
|
1669
|
-
const docsWait = !!step &&
|
|
1669
|
+
const docsWait = !!step && chunkEZLZ3MDU_cjs.waitingDocuments(run.stateOf(step.id)).length > 0;
|
|
1670
1670
|
const nextLabel = sending ? sending === 1 ? l.uploadingFile : l.uploadingFiles.replace("{count}", String(sending)) : uploadHold && uploading ? l.uploadingAny : uploadHold ? unsent === 1 ? l.uploadFailed : l.uploadsFailed.replace("{count}", String(unsent)) : reading ? l.readingFiles.replace("{current}", String(Math.min(added.length - unread + 1, added.length))).replace("{count}", String(added.length)) : action === "start" ? l.start : action === "retry" ? l.retry : action === "finish" ? l.finish : action === "complete" && step?.kind === "review" ? l.approve : action === "complete" && step?.kind === "action" ? l.markSent : action === "wait" && (run.isRunning || run.busy || docsWait) ? l.working : (step && !run.isLocked(step.id) ? step.nextLabel : void 0) ?? l.next;
|
|
1671
1671
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: ui.cn(compact2 ? "space-y-3" : "space-y-6", className), "data-testid": testIdPrefix, children: [
|
|
1672
1672
|
!hideStepBar && /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -1698,13 +1698,13 @@ function WorkflowRunner({
|
|
|
1698
1698
|
/* @__PURE__ */ jsxRuntime.jsx(StepNotices, { run, step, l, tid }),
|
|
1699
1699
|
run.phaseOf(step.id) === "blocked" ? /* @__PURE__ */ jsxRuntime.jsx(ui.Card, { className: ui.cn(box, "p-6"), "data-testid": tid(step.id), children: /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-muted-foreground", "data-testid": tid(`${step.id}-blocked`), children: l.blocked.replace(
|
|
1700
1700
|
"{steps}",
|
|
1701
|
-
|
|
1701
|
+
chunkEZLZ3MDU_cjs.stepDependencies(steps, step.id).map((d) => steps.find((s) => s.id === d)?.title ?? d).join(", ")
|
|
1702
1702
|
) }) }) : step.kind === "form" ? /* @__PURE__ */ jsxRuntime.jsxs(ui.Card, { className: ui.cn(box, "space-y-4"), "data-testid": tid(step.id), children: [
|
|
1703
1703
|
/* @__PURE__ */ jsxRuntime.jsx(StepHeading, { step, icon: icon(step.icon), testId: tid(`${step.id}-title`) }),
|
|
1704
1704
|
/* @__PURE__ */ jsxRuntime.jsx(SentBackNote, { state: run.stateOf(step.id), l: pl, testId: tid(step.id) }),
|
|
1705
1705
|
/* @__PURE__ */ jsxRuntime.jsx(AssigneeLine, { run, stepId: step.id, l: pl, testId: tid(step.id) }),
|
|
1706
1706
|
/* @__PURE__ */ jsxRuntime.jsx("fieldset", { disabled: run.isLocked(step.id), className: "contents", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1707
|
-
|
|
1707
|
+
chunkCGUDTSGI_cjs.SchemaForm,
|
|
1708
1708
|
{
|
|
1709
1709
|
fields: step.inputs,
|
|
1710
1710
|
values: run.inputs,
|
|
@@ -1754,11 +1754,11 @@ function WorkflowRunner({
|
|
|
1754
1754
|
] }) : step.kind === "review" ? /* @__PURE__ */ jsxRuntime.jsxs(ui.Card, { className: ui.cn(box, "space-y-4"), "data-testid": tid(step.id), children: [
|
|
1755
1755
|
/* @__PURE__ */ jsxRuntime.jsx(StepHeading, { step, icon: icon(step.icon) }),
|
|
1756
1756
|
/* @__PURE__ */ jsxRuntime.jsx(SentBackNote, { state: run.stateOf(step.id), l: pl, testId: tid(step.id) }),
|
|
1757
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "whitespace-pre-line text-sm text-muted-foreground", children:
|
|
1757
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "whitespace-pre-line text-sm text-muted-foreground", children: chunkEZLZ3MDU_cjs.reviewInstructions(step, run.inputs) }),
|
|
1758
1758
|
/* @__PURE__ */ jsxRuntime.jsx(AssigneeLine, { run, stepId: step.id, l: pl, testId: tid(step.id) }),
|
|
1759
1759
|
!(run.phaseOf(step.id) === "done" && run.stateOf(step.id)?.by) && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm", "data-testid": tid(`${step.id}-status`), children: run.phaseOf(step.id) === "done" ? l.approved : run.phaseOf(step.id) === "skipped" ? l.skipped : l.awaitingReview }),
|
|
1760
1760
|
(step.fields ?? []).length > 0 && run.phaseOf(step.id) === "ready" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1761
|
-
|
|
1761
|
+
chunkCGUDTSGI_cjs.SchemaForm,
|
|
1762
1762
|
{
|
|
1763
1763
|
fields: step.fields ?? [],
|
|
1764
1764
|
values: run.inputs,
|
|
@@ -2021,8 +2021,8 @@ function AgentStepBody({
|
|
|
2021
2021
|
}) {
|
|
2022
2022
|
const state = run.stateOf(step.id);
|
|
2023
2023
|
const phase = run.phaseOf(step.id);
|
|
2024
|
-
const pending =
|
|
2025
|
-
const pendingNames = pending.flatMap((ref) => nameOfDoc?.(
|
|
2024
|
+
const pending = chunkEZLZ3MDU_cjs.waitingDocuments(state);
|
|
2025
|
+
const pendingNames = pending.flatMap((ref) => nameOfDoc?.(chunkEZLZ3MDU_cjs.splitDocRef(ref).id) ?? []);
|
|
2026
2026
|
const header = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start justify-between gap-3", children: [
|
|
2027
2027
|
/* @__PURE__ */ jsxRuntime.jsx(StepHeading, { step, icon }),
|
|
2028
2028
|
phase === "failed" && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex shrink-0 items-center gap-2", children: run.retry && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -2107,7 +2107,7 @@ function StepNotices({
|
|
|
2107
2107
|
l,
|
|
2108
2108
|
tid
|
|
2109
2109
|
}) {
|
|
2110
|
-
const notStarted = !
|
|
2110
|
+
const notStarted = !chunkEZLZ3MDU_cjs.isPersonStep(step) && run.needsStart && run.phaseOf(step.id) === "ready";
|
|
2111
2111
|
const failed = run.failedUpstreamOf(step.id);
|
|
2112
2112
|
if (!notStarted && failed.length === 0) return null;
|
|
2113
2113
|
const why = (error) => error ? `: ${error}` : "";
|
|
@@ -2143,26 +2143,16 @@ function StepNotices({
|
|
|
2143
2143
|
))
|
|
2144
2144
|
] });
|
|
2145
2145
|
}
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
function set(next) {
|
|
2149
|
-
if (request === next) return;
|
|
2150
|
-
request = next;
|
|
2151
|
-
listeners.forEach((listener) => listener());
|
|
2152
|
-
}
|
|
2146
|
+
|
|
2147
|
+
// src/agents/workflows/launchRequest.ts
|
|
2153
2148
|
function openWorkflowLaunch(next) {
|
|
2154
|
-
|
|
2149
|
+
chunk7THRBD42_cjs.openDialog("workflowLaunch", next);
|
|
2155
2150
|
}
|
|
2156
2151
|
function closeWorkflowLaunch() {
|
|
2157
|
-
|
|
2158
|
-
}
|
|
2159
|
-
function subscribe(listener) {
|
|
2160
|
-
listeners.add(listener);
|
|
2161
|
-
return () => listeners.delete(listener);
|
|
2152
|
+
chunk7THRBD42_cjs.closeDialog("workflowLaunch");
|
|
2162
2153
|
}
|
|
2163
|
-
var snapshot = () => request;
|
|
2164
2154
|
function useWorkflowLaunchRequest() {
|
|
2165
|
-
return
|
|
2155
|
+
return chunk7THRBD42_cjs.useDialogProps("workflowLaunch");
|
|
2166
2156
|
}
|
|
2167
2157
|
var TIMELINE_PROMPT = "Build a timeline from the selected files. Record every dated event as its own fact: put the date in the fact\u2019s date field at exactly the precision the file gives, cite the file you took it from, and label them all \u201CMain Events\u201D. Then show me the chronology, oldest first.";
|
|
2168
2158
|
var DEEP_RESEARCH_ID = "deep-research";
|
|
@@ -2586,7 +2576,7 @@ var WEB_WORKFLOWS = chunk76L6LOP3_cjs.workflowsForHost(WORKFLOW_REGISTRY, "web")
|
|
|
2586
2576
|
var STORAGE_KEY = "arbi.workflow-usage.v1";
|
|
2587
2577
|
var EMPTY = {};
|
|
2588
2578
|
var cache = null;
|
|
2589
|
-
var
|
|
2579
|
+
var listeners = /* @__PURE__ */ new Set();
|
|
2590
2580
|
function read() {
|
|
2591
2581
|
if (cache) return cache;
|
|
2592
2582
|
try {
|
|
@@ -2605,13 +2595,13 @@ function recordWorkflowUse(workflowId, now = Date.now()) {
|
|
|
2605
2595
|
window.localStorage.setItem(STORAGE_KEY, JSON.stringify(cache));
|
|
2606
2596
|
} catch {
|
|
2607
2597
|
}
|
|
2608
|
-
|
|
2598
|
+
listeners.forEach((l) => l());
|
|
2609
2599
|
}
|
|
2610
2600
|
function useWorkflowUsage() {
|
|
2611
2601
|
return react.useSyncExternalStore(
|
|
2612
2602
|
(listener) => {
|
|
2613
|
-
|
|
2614
|
-
return () =>
|
|
2603
|
+
listeners.add(listener);
|
|
2604
|
+
return () => listeners.delete(listener);
|
|
2615
2605
|
},
|
|
2616
2606
|
read,
|
|
2617
2607
|
() => EMPTY
|
|
@@ -2631,7 +2621,7 @@ function resetWorkflowUsage() {
|
|
|
2631
2621
|
window.localStorage.removeItem(STORAGE_KEY);
|
|
2632
2622
|
} catch {
|
|
2633
2623
|
}
|
|
2634
|
-
|
|
2624
|
+
listeners.forEach((l) => l());
|
|
2635
2625
|
}
|
|
2636
2626
|
|
|
2637
2627
|
// src/agents/workflows/catalogue/annotation-name.ts
|
|
@@ -2656,7 +2646,7 @@ var asForm = (step) => ({
|
|
|
2656
2646
|
id: step.id,
|
|
2657
2647
|
title: step.title,
|
|
2658
2648
|
description: "",
|
|
2659
|
-
inputs:
|
|
2649
|
+
inputs: chunkEZLZ3MDU_cjs.stepFields(step),
|
|
2660
2650
|
run: { kind: "operation" },
|
|
2661
2651
|
landing: "chat"
|
|
2662
2652
|
});
|
|
@@ -2675,13 +2665,13 @@ function WorkflowStepAction({
|
|
|
2675
2665
|
onOpenDraft,
|
|
2676
2666
|
onOpenReview
|
|
2677
2667
|
}) {
|
|
2678
|
-
const fields =
|
|
2668
|
+
const fields = chunkEZLZ3MDU_cjs.stepFields(step);
|
|
2679
2669
|
const [values, setValues] = react.useState(
|
|
2680
2670
|
() => fields.length ? { ...chunk76L6LOP3_cjs.defaultInputs(asForm(step)), ...inputs } : {}
|
|
2681
2671
|
);
|
|
2682
2672
|
const [open, setOpen] = react.useState(null);
|
|
2683
2673
|
const [note, setNote] = react.useState("");
|
|
2684
|
-
const targets =
|
|
2674
|
+
const targets = chunkEZLZ3MDU_cjs.sendBackTargets(steps, states, step.id);
|
|
2685
2675
|
const [to, setTo] = react.useState(targets[0]?.id ?? "");
|
|
2686
2676
|
const [busy, setBusy] = react.useState(false);
|
|
2687
2677
|
const [error, setError] = react.useState(null);
|
|
@@ -2853,7 +2843,7 @@ function WorkflowStepAction({
|
|
|
2853
2843
|
const errors = chunk76L6LOP3_cjs.validateInputs(asForm(step), values);
|
|
2854
2844
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-2 p-1", "data-testid": tid, children: [
|
|
2855
2845
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2856
|
-
|
|
2846
|
+
chunkCGUDTSGI_cjs.SchemaForm,
|
|
2857
2847
|
{
|
|
2858
2848
|
fields,
|
|
2859
2849
|
values,
|
|
@@ -3278,7 +3268,7 @@ function AgentCreator({
|
|
|
3278
3268
|
] })
|
|
3279
3269
|
] }),
|
|
3280
3270
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3281
|
-
|
|
3271
|
+
chunkYJJNDKA3_cjs.FoldSection,
|
|
3282
3272
|
{
|
|
3283
3273
|
label: l.advanced,
|
|
3284
3274
|
open: advancedOpen,
|
|
@@ -3525,7 +3515,7 @@ var DEFAULT_AGENT_TYPES = [
|
|
|
3525
3515
|
}
|
|
3526
3516
|
];
|
|
3527
3517
|
function AgentConnectInstructions({ email, signingKey }) {
|
|
3528
|
-
const { notify, runtimeConfig } =
|
|
3518
|
+
const { notify, runtimeConfig } = chunk7THRBD42_cjs.useBlocksEnvironment();
|
|
3529
3519
|
const [agentBackend, setAgentBackend] = react.useState("claude");
|
|
3530
3520
|
const [copied, setCopied] = react.useState(false);
|
|
3531
3521
|
const setupScript = react.useMemo(
|
|
@@ -5132,7 +5122,7 @@ function TaskStartDialog({
|
|
|
5132
5122
|
setSourceOpen(false);
|
|
5133
5123
|
}, [open]);
|
|
5134
5124
|
const textareaRef = react.useRef(null);
|
|
5135
|
-
const mention =
|
|
5125
|
+
const mention = chunkEZLZ3MDU_cjs.useMentionAutocomplete({
|
|
5136
5126
|
value: prompt,
|
|
5137
5127
|
onValueChange: setPrompt,
|
|
5138
5128
|
candidates: people,
|
|
@@ -5808,7 +5798,7 @@ function NewThreadDialog({
|
|
|
5808
5798
|
const [detailsOpen, setDetailsOpen] = react.useState(hasTaskFields(seed));
|
|
5809
5799
|
const [submitError, setSubmitError] = react.useState(null);
|
|
5810
5800
|
const id = chunkMHVNT4J3_cjs.testIdOr(testId, { testId: "new-thread" });
|
|
5811
|
-
const
|
|
5801
|
+
const set = (key, value) => setValues((v) => ({ ...v, [key]: value }));
|
|
5812
5802
|
const canSubmit = values.prompt.trim() !== "" && !isPending;
|
|
5813
5803
|
const pillLabels = { search: l.search, empty: l.empty };
|
|
5814
5804
|
const taskOptions = tasks.map((t) => ({
|
|
@@ -5855,7 +5845,7 @@ function NewThreadDialog({
|
|
|
5855
5845
|
value: values.prompt,
|
|
5856
5846
|
placeholder: l.promptPlaceholder,
|
|
5857
5847
|
rows: 4,
|
|
5858
|
-
onChange: (e) =>
|
|
5848
|
+
onChange: (e) => set("prompt", e.target.value),
|
|
5859
5849
|
onKeyDown: (e) => {
|
|
5860
5850
|
if (e.key === "Enter" && (e.metaKey || e.ctrlKey) && canSubmit) onSubmit(values);
|
|
5861
5851
|
},
|
|
@@ -5869,7 +5859,7 @@ function NewThreadDialog({
|
|
|
5869
5859
|
ui.Switch,
|
|
5870
5860
|
{
|
|
5871
5861
|
checked: values.assistant,
|
|
5872
|
-
onCheckedChange: (on) =>
|
|
5862
|
+
onCheckedChange: (on) => set("assistant", on),
|
|
5873
5863
|
"data-testid": `${id}-assistant-switch`
|
|
5874
5864
|
}
|
|
5875
5865
|
),
|
|
@@ -5882,7 +5872,7 @@ function NewThreadDialog({
|
|
|
5882
5872
|
ui.VisibilityToggle,
|
|
5883
5873
|
{
|
|
5884
5874
|
items: { shared: values.shared },
|
|
5885
|
-
onToggle: (share) =>
|
|
5875
|
+
onToggle: (share) => set("shared", share),
|
|
5886
5876
|
label: l.visibility,
|
|
5887
5877
|
presentation: "select",
|
|
5888
5878
|
"data-testid": `${id}-visibility`
|
|
@@ -5932,7 +5922,7 @@ function NewThreadDialog({
|
|
|
5932
5922
|
id: `${id}-due`,
|
|
5933
5923
|
label: l.due,
|
|
5934
5924
|
value: values.dueAt,
|
|
5935
|
-
onChange: (v) =>
|
|
5925
|
+
onChange: (v) => set("dueAt", v),
|
|
5936
5926
|
labels: { clear: l.dueClear }
|
|
5937
5927
|
}
|
|
5938
5928
|
) })
|
|
@@ -5945,7 +5935,7 @@ function NewThreadDialog({
|
|
|
5945
5935
|
value: values.parentId,
|
|
5946
5936
|
options: taskOptions,
|
|
5947
5937
|
noneOption: { id: "", label: l.parentTaskNone },
|
|
5948
|
-
onChange: (v) =>
|
|
5938
|
+
onChange: (v) => set("parentId", v),
|
|
5949
5939
|
searchable: true,
|
|
5950
5940
|
labels: pillLabels,
|
|
5951
5941
|
testId: `${id}-parent`
|
|
@@ -5959,7 +5949,7 @@ function NewThreadDialog({
|
|
|
5959
5949
|
id: "new-thread-title",
|
|
5960
5950
|
value: values.title,
|
|
5961
5951
|
placeholder: l.titlePlaceholder,
|
|
5962
|
-
onChange: (e) =>
|
|
5952
|
+
onChange: (e) => set("title", e.target.value),
|
|
5963
5953
|
"data-testid": `${id}-title`
|
|
5964
5954
|
}
|
|
5965
5955
|
)
|
|
@@ -6086,12 +6076,12 @@ function taskActivityHeadline(e, labels = DEFAULT_TASK_ACTIVITY_LABELS, agentNam
|
|
|
6086
6076
|
case "step_skipped":
|
|
6087
6077
|
return "Step skipped";
|
|
6088
6078
|
case "step_waiting": {
|
|
6089
|
-
const documents =
|
|
6090
|
-
return documents ?
|
|
6079
|
+
const documents = chunkEZLZ3MDU_cjs.eventWaitingDocuments(detail);
|
|
6080
|
+
return documents ? chunkEZLZ3MDU_cjs.waitingForDocumentsText(documents.length) : "Waiting on people";
|
|
6091
6081
|
}
|
|
6092
6082
|
case "step_progress": {
|
|
6093
|
-
const documents =
|
|
6094
|
-
return documents ?
|
|
6083
|
+
const documents = chunkEZLZ3MDU_cjs.eventWaitingDocuments(detail);
|
|
6084
|
+
return documents ? chunkEZLZ3MDU_cjs.waitingForDocumentsText(documents.length) : detail.signed ? "Signed" : "Step moved on";
|
|
6095
6085
|
}
|
|
6096
6086
|
case "step_sent_back":
|
|
6097
6087
|
return "Sent the work back";
|
|
@@ -6255,7 +6245,7 @@ function TaskFlow({
|
|
|
6255
6245
|
},
|
|
6256
6246
|
children: /* @__PURE__ */ jsxRuntime.jsx("ol", { className: "flex w-max min-w-full items-center gap-1 py-0.5", children: items.map((item, i) => {
|
|
6257
6247
|
const chip = (props) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
6258
|
-
|
|
6248
|
+
chunkEZLZ3MDU_cjs.StepChip,
|
|
6259
6249
|
{
|
|
6260
6250
|
kind: "adhoc",
|
|
6261
6251
|
phase: "ready",
|
|
@@ -6309,7 +6299,7 @@ function ThreadActivity({ item, children }) {
|
|
|
6309
6299
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full max-w-xl items-center gap-2", children: [
|
|
6310
6300
|
/* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": true, className: "wf-link", "data-done": done || void 0 }),
|
|
6311
6301
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6312
|
-
|
|
6302
|
+
chunkEZLZ3MDU_cjs.StepChip,
|
|
6313
6303
|
{
|
|
6314
6304
|
inert: true,
|
|
6315
6305
|
kind,
|
|
@@ -6328,7 +6318,7 @@ function ThreadActivity({ item, children }) {
|
|
|
6328
6318
|
}
|
|
6329
6319
|
),
|
|
6330
6320
|
document && /* @__PURE__ */ jsxRuntime.jsx(
|
|
6331
|
-
|
|
6321
|
+
chunkEZLZ3MDU_cjs.StepDocumentButton,
|
|
6332
6322
|
{
|
|
6333
6323
|
kind,
|
|
6334
6324
|
name: document.name,
|
|
@@ -6395,7 +6385,7 @@ function ThreadLauncher({
|
|
|
6395
6385
|
const [shared, setShared] = react.useState(false);
|
|
6396
6386
|
const [started, setStarted] = react.useState(null);
|
|
6397
6387
|
const textareaRef = react.useRef(null);
|
|
6398
|
-
const mention =
|
|
6388
|
+
const mention = chunkEZLZ3MDU_cjs.useMentionAutocomplete({
|
|
6399
6389
|
value: prompt,
|
|
6400
6390
|
onValueChange: setPrompt,
|
|
6401
6391
|
candidates: people,
|
|
@@ -6592,10 +6582,10 @@ function WorkflowRunStatus({
|
|
|
6592
6582
|
testId = "workflow-run-status"
|
|
6593
6583
|
}) {
|
|
6594
6584
|
const l = { ...DEFAULT_WORKFLOW_RUN_STATUS_LABELS, ...labels };
|
|
6595
|
-
const ordered =
|
|
6596
|
-
const phaseOf = (id) => isLoading ? "blocked" :
|
|
6597
|
-
const finished = !isLoading &&
|
|
6598
|
-
const atId = finished || isLoading ? void 0 : activeStepId(
|
|
6585
|
+
const ordered = chunkEZLZ3MDU_cjs.stepLevels(steps).flat();
|
|
6586
|
+
const phaseOf = (id) => isLoading ? "blocked" : chunkEZLZ3MDU_cjs.stepPhase(steps, states, id);
|
|
6587
|
+
const finished = !isLoading && chunkEZLZ3MDU_cjs.isRunFinished(steps, states);
|
|
6588
|
+
const atId = finished || isLoading ? void 0 : activeStepId(chunkEZLZ3MDU_cjs.stepLevels(steps), phaseOf);
|
|
6599
6589
|
const at = ordered.find((s) => s.id === atId);
|
|
6600
6590
|
const phase = at ? phaseOf(at.id) : "done";
|
|
6601
6591
|
const assignee = at && ["ready", "waiting"].includes(phase) ? assigneeOf?.(at) : void 0;
|
|
@@ -6627,7 +6617,7 @@ function WorkflowRunStatus({
|
|
|
6627
6617
|
"span",
|
|
6628
6618
|
{
|
|
6629
6619
|
className: ui.cn(
|
|
6630
|
-
`wf-kind-${
|
|
6620
|
+
`wf-kind-${chunkEZLZ3MDU_cjs.stepKindOf(s)}`,
|
|
6631
6621
|
"h-1.5 w-3 shrink-0 rounded-full",
|
|
6632
6622
|
SEGMENT[phaseOf(s.id)],
|
|
6633
6623
|
s.id === atId && "w-5"
|
|
@@ -6673,7 +6663,7 @@ function groupThreadActivity(steps, items) {
|
|
|
6673
6663
|
continue;
|
|
6674
6664
|
}
|
|
6675
6665
|
if (current === void 0) out.before.push(item);
|
|
6676
|
-
else if (
|
|
6666
|
+
else if (chunkEZLZ3MDU_cjs.isRunFinished(steps, states)) out.after.push(item);
|
|
6677
6667
|
else {
|
|
6678
6668
|
const status = states[current]?.status;
|
|
6679
6669
|
const at = status === "done" || status === "skipped" ? steps.find((s) => !["done", "skipped"].includes(states[s.id]?.status ?? ""))?.id ?? current : current;
|
|
@@ -6696,9 +6686,9 @@ var DEFAULT_WORKFLOW_THREAD_STRIP_LABELS = {
|
|
|
6696
6686
|
after: "After",
|
|
6697
6687
|
beforeSteps: "Before the first step",
|
|
6698
6688
|
afterSteps: "After the last step",
|
|
6699
|
-
kinds:
|
|
6700
|
-
documents:
|
|
6701
|
-
record:
|
|
6689
|
+
kinds: chunkEZLZ3MDU_cjs.DEFAULT_STEP_KIND_LABELS,
|
|
6690
|
+
documents: chunkEZLZ3MDU_cjs.DEFAULT_STEP_DOCUMENT_LABELS,
|
|
6691
|
+
record: chunkEZLZ3MDU_cjs.DEFAULT_STEP_RECORD_LABELS
|
|
6702
6692
|
};
|
|
6703
6693
|
function WorkflowThreadStartedBy({
|
|
6704
6694
|
origin,
|
|
@@ -6829,7 +6819,7 @@ function EntriesChip({
|
|
|
6829
6819
|
const latest = items.at(-1);
|
|
6830
6820
|
return /* @__PURE__ */ jsxRuntime.jsxs(ui.Popover, { children: [
|
|
6831
6821
|
/* @__PURE__ */ jsxRuntime.jsx(ui.PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
6832
|
-
|
|
6822
|
+
chunkEZLZ3MDU_cjs.StepChip,
|
|
6833
6823
|
{
|
|
6834
6824
|
kind,
|
|
6835
6825
|
phase: "ready",
|
|
@@ -6874,17 +6864,17 @@ function WorkflowThreadStrip({
|
|
|
6874
6864
|
const link = /* @__PURE__ */ jsxRuntime.jsx("span", { "aria-hidden": true, className: "wf-link wf-kind-start max-w-6", "data-done": true });
|
|
6875
6865
|
const [selected, setSelected] = react.useState(null);
|
|
6876
6866
|
const [open, setOpen] = react.useState(null);
|
|
6877
|
-
const phaseOf = (id) =>
|
|
6867
|
+
const phaseOf = (id) => chunkEZLZ3MDU_cjs.stepPhase(steps, states, id);
|
|
6878
6868
|
const iconOf = (step) => step.icon && renderIcon ? renderIcon(step.icon) : void 0;
|
|
6879
6869
|
const glyphOf = (step) => {
|
|
6880
|
-
const KindIcon =
|
|
6870
|
+
const KindIcon = chunkEZLZ3MDU_cjs.STEP_KIND_ICONS[chunkEZLZ3MDU_cjs.stepKindOf(step)];
|
|
6881
6871
|
return iconOf(step) ?? /* @__PURE__ */ jsxRuntime.jsx(KindIcon, {});
|
|
6882
6872
|
};
|
|
6883
6873
|
const waitingOf = (id) => {
|
|
6884
6874
|
const step = steps.find((s) => s.id === id);
|
|
6885
6875
|
const phase = phaseOf(id);
|
|
6886
|
-
const documents =
|
|
6887
|
-
if (documents.length) return
|
|
6876
|
+
const documents = chunkEZLZ3MDU_cjs.waitingDocuments(states[id]);
|
|
6877
|
+
if (documents.length) return chunkEZLZ3MDU_cjs.waitingForDocumentsText(documents.length);
|
|
6888
6878
|
const name = step && (phase === "ready" || phase === "waiting") ? assigneeOf?.(step) : void 0;
|
|
6889
6879
|
return name ? l.waitingFor.replace("{name}", name) : void 0;
|
|
6890
6880
|
};
|
|
@@ -6894,8 +6884,8 @@ function WorkflowThreadStrip({
|
|
|
6894
6884
|
const assignee = phase === "ready" || phase === "waiting" ? assigneeOf?.(step) : void 0;
|
|
6895
6885
|
const waiting = waitingOf(step.id);
|
|
6896
6886
|
const sentBack = states[step.id]?.sentBack;
|
|
6897
|
-
const kind =
|
|
6898
|
-
const documents =
|
|
6887
|
+
const kind = chunkEZLZ3MDU_cjs.stepKindOf(step);
|
|
6888
|
+
const documents = chunkEZLZ3MDU_cjs.stepDocuments(steps, states, step.id);
|
|
6899
6889
|
const latestDoc = onOpenDocument ? documents.at(-1) : void 0;
|
|
6900
6890
|
const finished = ["done", "skipped", "failed"].includes(phase);
|
|
6901
6891
|
const chip = /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -6908,7 +6898,7 @@ function WorkflowThreadStrip({
|
|
|
6908
6898
|
},
|
|
6909
6899
|
children: [
|
|
6910
6900
|
/* @__PURE__ */ jsxRuntime.jsx(ui.PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
6911
|
-
|
|
6901
|
+
chunkEZLZ3MDU_cjs.StepChip,
|
|
6912
6902
|
{
|
|
6913
6903
|
kind,
|
|
6914
6904
|
phase,
|
|
@@ -6957,7 +6947,7 @@ function WorkflowThreadStrip({
|
|
|
6957
6947
|
),
|
|
6958
6948
|
sentBack && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "px-1 text-xs text-amber-700 dark:text-amber-300", children: l.sentBack }),
|
|
6959
6949
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6960
|
-
|
|
6950
|
+
chunkEZLZ3MDU_cjs.StepDocumentCards,
|
|
6961
6951
|
{
|
|
6962
6952
|
refs: documents,
|
|
6963
6953
|
heading: step.kind === "review" ? phase === "done" ? l.documents.approved : l.documents.toApprove : l.documents.produced,
|
|
@@ -6968,7 +6958,7 @@ function WorkflowThreadStrip({
|
|
|
6968
6958
|
}
|
|
6969
6959
|
),
|
|
6970
6960
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
6971
|
-
|
|
6961
|
+
chunkEZLZ3MDU_cjs.StepRecord,
|
|
6972
6962
|
{
|
|
6973
6963
|
step,
|
|
6974
6964
|
state: states[step.id],
|
|
@@ -7000,10 +6990,10 @@ function WorkflowThreadStrip({
|
|
|
7000
6990
|
return latestDoc ? /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex min-w-0 items-center", children: [
|
|
7001
6991
|
chip,
|
|
7002
6992
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
7003
|
-
|
|
6993
|
+
chunkEZLZ3MDU_cjs.StepDocumentButton,
|
|
7004
6994
|
{
|
|
7005
6995
|
kind,
|
|
7006
|
-
name: nameOfDoc?.(
|
|
6996
|
+
name: nameOfDoc?.(chunkEZLZ3MDU_cjs.splitDocRef(latestDoc).id) ?? latestDoc,
|
|
7007
6997
|
onOpen: () => onOpenDocument?.(latestDoc),
|
|
7008
6998
|
testId: `workflow-thread-step-${step.id}-open-document`
|
|
7009
6999
|
}
|
|
@@ -7042,17 +7032,17 @@ function WorkflowThreadStrip({
|
|
|
7042
7032
|
] }),
|
|
7043
7033
|
strays.map((s) => /* @__PURE__ */ jsxRuntime.jsx(SignalPill, { signal: s, l }, `${s.step}-${s.signal}`))
|
|
7044
7034
|
] }) : null;
|
|
7045
|
-
const at = steps.find((s) => s.id === (selected ?? activeStepId(
|
|
7046
|
-
const headingPx = (step) => `${l.kinds[
|
|
7035
|
+
const at = steps.find((s) => s.id === (selected ?? activeStepId(chunkEZLZ3MDU_cjs.stepLevels(steps), phaseOf)));
|
|
7036
|
+
const headingPx = (step) => `${l.kinds[chunkEZLZ3MDU_cjs.stepKindOf(step)]} \xB7 ${waitingOf(step.id) ?? ""}`.length * 5.6 - step.title.length * 6.5;
|
|
7047
7037
|
const reserve = {
|
|
7048
|
-
always: (at ? Math.max(0, headingPx(at)) : 0) + steps.filter((s) => grouped.byStep[s.id]?.length).length * BEADS_PX + (onOpenDocument ? steps.filter((s) =>
|
|
7038
|
+
always: (at ? Math.max(0, headingPx(at)) : 0) + steps.filter((s) => grouped.byStep[s.id]?.length).length * BEADS_PX + (onOpenDocument ? steps.filter((s) => chunkEZLZ3MDU_cjs.stepDocuments(steps, states, s.id).length).length * DOC_BUTTON_PX : 0),
|
|
7049
7039
|
leading: leading ? 150 : 0,
|
|
7050
7040
|
trailing: trailing ? 120 : 0
|
|
7051
7041
|
};
|
|
7052
7042
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: ui.cn("min-w-0 flex-1", className), "data-testid": "workflow-thread-strip", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
7053
7043
|
StepBarFrame,
|
|
7054
7044
|
{
|
|
7055
|
-
levels:
|
|
7045
|
+
levels: chunkEZLZ3MDU_cjs.stepLevels(steps),
|
|
7056
7046
|
phaseOf,
|
|
7057
7047
|
current: selected,
|
|
7058
7048
|
onSelect: (id) => {
|
|
@@ -7065,7 +7055,7 @@ function WorkflowThreadStrip({
|
|
|
7065
7055
|
trailing,
|
|
7066
7056
|
reservePx: reserve,
|
|
7067
7057
|
icon: glyphOf,
|
|
7068
|
-
kindOf:
|
|
7058
|
+
kindOf: chunkEZLZ3MDU_cjs.stepKindOf,
|
|
7069
7059
|
labels: { waitingFor: l.waitingFor, ...barLabels },
|
|
7070
7060
|
tid: (suffix) => `workflow-thread-${suffix}`
|
|
7071
7061
|
}
|
|
@@ -7141,11 +7131,11 @@ function compactThreadActivity(events, stepTitleOf) {
|
|
|
7141
7131
|
const count = Math.max(1, entry.recipients.length);
|
|
7142
7132
|
entry.label = `Notified ${count} ${count === 1 ? "user" : "users"}`;
|
|
7143
7133
|
} else if (STEP_LABELS[event.kind]) {
|
|
7144
|
-
const documents =
|
|
7134
|
+
const documents = chunkEZLZ3MDU_cjs.eventWaitingDocuments(event.detail);
|
|
7145
7135
|
const title = typeof event.detail?.step === "string" ? stepTitleOf?.(event.detail.step) : void 0;
|
|
7146
7136
|
result.push({
|
|
7147
7137
|
event,
|
|
7148
|
-
label: documents ?
|
|
7138
|
+
label: documents ? chunkEZLZ3MDU_cjs.waitingForDocumentsText(documents.length) : title && STEP_VERBS[event.kind] ? `${title} ${STEP_VERBS[event.kind]}` : STEP_LABELS[event.kind],
|
|
7149
7139
|
recipients: []
|
|
7150
7140
|
});
|
|
7151
7141
|
} else if (["artifact_created", "artifact_edited", "document_added", "document_removed"].includes(
|
|
@@ -7235,7 +7225,7 @@ function TaskRunsDialog({
|
|
|
7235
7225
|
"rounded-full px-2 py-0.5 text-xs font-medium capitalize",
|
|
7236
7226
|
STATUS_STYLE[data.status] ?? "text-muted-foreground"
|
|
7237
7227
|
),
|
|
7238
|
-
children:
|
|
7228
|
+
children: chunkCGUDTSGI_cjs.workflowRunStatusLabel(data.status)
|
|
7239
7229
|
}
|
|
7240
7230
|
)
|
|
7241
7231
|
},
|
|
@@ -7251,7 +7241,7 @@ function TaskRunsDialog({
|
|
|
7251
7241
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex h-full items-center gap-2", children: [
|
|
7252
7242
|
run.error && renderErrorReport?.(run),
|
|
7253
7243
|
(run.conversationId || run.resultId && onOpenResult) && /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { asChild: true, variant: "ghost", size: "sm", className: "h-7 gap-1.5", children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7254
|
-
|
|
7244
|
+
chunk6LVVW6VB_cjs.ActionLink,
|
|
7255
7245
|
{
|
|
7256
7246
|
href: getRunHref?.(run),
|
|
7257
7247
|
onSelect: () => {
|
|
@@ -7525,7 +7515,7 @@ function WorkflowComposer({
|
|
|
7525
7515
|
}
|
|
7526
7516
|
}, [open]);
|
|
7527
7517
|
const id = chunkMHVNT4J3_cjs.testIdOr(testId, { testId: "task-composer" });
|
|
7528
|
-
const
|
|
7518
|
+
const set = (key, value) => setValues({ ...values, [key]: value });
|
|
7529
7519
|
const workflow = workflows.find((w) => w.id === values.workflowId);
|
|
7530
7520
|
const fields = workflow?.inputs ?? [];
|
|
7531
7521
|
const noFiles = Boolean(
|
|
@@ -7575,7 +7565,7 @@ function WorkflowComposer({
|
|
|
7575
7565
|
}, [scheduled, defaultAgentId, values.agentId]);
|
|
7576
7566
|
const pickAgent = (agentId) => {
|
|
7577
7567
|
setAgentAutoSet(false);
|
|
7578
|
-
|
|
7568
|
+
set("agentId", agentId);
|
|
7579
7569
|
};
|
|
7580
7570
|
const submit = () => {
|
|
7581
7571
|
const submitted = {
|
|
@@ -7633,10 +7623,10 @@ function WorkflowComposer({
|
|
|
7633
7623
|
onTabChange: (tab) => {
|
|
7634
7624
|
if (tab === "start-task" && !runOnce) {
|
|
7635
7625
|
setAutomationWhen(values.when);
|
|
7636
|
-
|
|
7626
|
+
set("when", "now");
|
|
7637
7627
|
setRunOnce(true);
|
|
7638
7628
|
} else if (tab === "automation-setup" && runOnce) {
|
|
7639
|
-
|
|
7629
|
+
set("when", automationWhen);
|
|
7640
7630
|
setRunOnce(false);
|
|
7641
7631
|
}
|
|
7642
7632
|
},
|
|
@@ -7679,7 +7669,7 @@ function WorkflowComposer({
|
|
|
7679
7669
|
},
|
|
7680
7670
|
"data-testid": `${id}-dropzone`,
|
|
7681
7671
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
7682
|
-
|
|
7672
|
+
chunkYJJNDKA3_cjs.AddFilesFirst,
|
|
7683
7673
|
{
|
|
7684
7674
|
reason: l.addFilesReason,
|
|
7685
7675
|
action: addFilesAction,
|
|
@@ -7689,11 +7679,11 @@ function WorkflowComposer({
|
|
|
7689
7679
|
}
|
|
7690
7680
|
),
|
|
7691
7681
|
!noFiles && workflow && fields.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
7692
|
-
|
|
7682
|
+
chunkCGUDTSGI_cjs.SchemaForm,
|
|
7693
7683
|
{
|
|
7694
7684
|
fields,
|
|
7695
7685
|
values: values.inputs,
|
|
7696
|
-
onChange: (name, value) =>
|
|
7686
|
+
onChange: (name, value) => set("inputs", { ...values.inputs, [name]: value }),
|
|
7697
7687
|
renderScope: renderScope ?? defaultScopeRenderer(scopeSource),
|
|
7698
7688
|
renderDocuments,
|
|
7699
7689
|
renderIcon,
|
|
@@ -7772,7 +7762,7 @@ function WorkflowComposer({
|
|
|
7772
7762
|
id: "task-composer-runat",
|
|
7773
7763
|
type: "datetime-local",
|
|
7774
7764
|
value: values.runAt,
|
|
7775
|
-
onChange: (e) =>
|
|
7765
|
+
onChange: (e) => set("runAt", e.target.value),
|
|
7776
7766
|
className: "max-w-xs",
|
|
7777
7767
|
"aria-invalid": runAtPast || void 0,
|
|
7778
7768
|
"data-testid": `${id}-run-at`
|
|
@@ -7785,7 +7775,7 @@ function WorkflowComposer({
|
|
|
7785
7775
|
RecurrenceBuilder,
|
|
7786
7776
|
{
|
|
7787
7777
|
rrule: values.rrule,
|
|
7788
|
-
onChange: (r) =>
|
|
7778
|
+
onChange: (r) => set("rrule", r),
|
|
7789
7779
|
...recurrence
|
|
7790
7780
|
}
|
|
7791
7781
|
),
|
|
@@ -7797,7 +7787,7 @@ function WorkflowComposer({
|
|
|
7797
7787
|
id: "task-composer-timezone",
|
|
7798
7788
|
list: "task-composer-timezones",
|
|
7799
7789
|
value: values.timezone,
|
|
7800
|
-
onChange: (e) =>
|
|
7790
|
+
onChange: (e) => set("timezone", e.target.value),
|
|
7801
7791
|
className: "max-w-xs",
|
|
7802
7792
|
"data-testid": `${id}-timezone`
|
|
7803
7793
|
}
|
|
@@ -7820,7 +7810,7 @@ function WorkflowComposer({
|
|
|
7820
7810
|
label: values.eventKind.replaceAll("_", " ")
|
|
7821
7811
|
}
|
|
7822
7812
|
],
|
|
7823
|
-
onChange: (event) =>
|
|
7813
|
+
onChange: (event) => set("eventKind", event),
|
|
7824
7814
|
labels: pillLabels,
|
|
7825
7815
|
testId: `${id}-event`,
|
|
7826
7816
|
className: "self-start"
|
|
@@ -7831,7 +7821,7 @@ function WorkflowComposer({
|
|
|
7831
7821
|
id: "task-composer-event",
|
|
7832
7822
|
value: values.eventKind,
|
|
7833
7823
|
placeholder: l.eventPlaceholder,
|
|
7834
|
-
onChange: (e) =>
|
|
7824
|
+
onChange: (e) => set("eventKind", e.target.value),
|
|
7835
7825
|
className: "max-w-xs",
|
|
7836
7826
|
"data-testid": `${id}-event`
|
|
7837
7827
|
}
|
|
@@ -7845,7 +7835,7 @@ function WorkflowComposer({
|
|
|
7845
7835
|
prefix: "Automation",
|
|
7846
7836
|
value: typeof values.eventFilter?.workflow_ext_id === "string" ? values.eventFilter.workflow_ext_id : "",
|
|
7847
7837
|
options: [{ id: "", label: "Any automation" }, ...eventWorkflowOptions],
|
|
7848
|
-
onChange: (id2) =>
|
|
7838
|
+
onChange: (id2) => set(
|
|
7849
7839
|
"eventFilter",
|
|
7850
7840
|
id2 ? { ...values.eventFilter, workflow_ext_id: id2 } : null
|
|
7851
7841
|
),
|
|
@@ -7861,7 +7851,7 @@ function WorkflowComposer({
|
|
|
7861
7851
|
prefix: l.afterTask,
|
|
7862
7852
|
value: values.afterTaskId,
|
|
7863
7853
|
options: taskOptions,
|
|
7864
|
-
onChange: (v) =>
|
|
7854
|
+
onChange: (v) => set("afterTaskId", v),
|
|
7865
7855
|
searchable: true,
|
|
7866
7856
|
labels: pillLabels,
|
|
7867
7857
|
testId: `${id}-after-task`,
|
|
@@ -7949,7 +7939,7 @@ function WorkflowComposer({
|
|
|
7949
7939
|
label: l.accessOptions[mode].label
|
|
7950
7940
|
})
|
|
7951
7941
|
),
|
|
7952
|
-
onChange: (v) =>
|
|
7942
|
+
onChange: (v) => set("access", v),
|
|
7953
7943
|
labels: pillLabels,
|
|
7954
7944
|
testId: `${id}-access`,
|
|
7955
7945
|
className: "self-start"
|
|
@@ -7980,7 +7970,7 @@ function WorkflowComposer({
|
|
|
7980
7970
|
id: "task-composer-title",
|
|
7981
7971
|
value: values.name,
|
|
7982
7972
|
placeholder: derivedName || l.workflowNamePlaceholder,
|
|
7983
|
-
onChange: (e) =>
|
|
7973
|
+
onChange: (e) => set("name", e.target.value),
|
|
7984
7974
|
className: "h-10 text-base font-medium",
|
|
7985
7975
|
"data-testid": `${id}-title`
|
|
7986
7976
|
}
|
|
@@ -7994,7 +7984,7 @@ function WorkflowComposer({
|
|
|
7994
7984
|
value: values.description,
|
|
7995
7985
|
placeholder: l.descriptionPlaceholder,
|
|
7996
7986
|
rows: 2,
|
|
7997
|
-
onChange: (e) =>
|
|
7987
|
+
onChange: (e) => set("description", e.target.value),
|
|
7998
7988
|
"data-testid": `${id}-description`
|
|
7999
7989
|
}
|
|
8000
7990
|
)
|
|
@@ -8008,7 +7998,7 @@ function WorkflowComposer({
|
|
|
8008
7998
|
ui.VisibilityToggle,
|
|
8009
7999
|
{
|
|
8010
8000
|
items: { shared: values.shared },
|
|
8011
|
-
onToggle: (share) =>
|
|
8001
|
+
onToggle: (share) => set("shared", share),
|
|
8012
8002
|
label: l.visibility,
|
|
8013
8003
|
"data-testid": `${id}-visibility`
|
|
8014
8004
|
}
|
|
@@ -8133,7 +8123,7 @@ function WorkTaskComposer({
|
|
|
8133
8123
|
const unattended = hasWork && values.when !== "now" && values.when !== "manual";
|
|
8134
8124
|
const canConfigure = !isEdit || seed.assignee === "agent";
|
|
8135
8125
|
const lockedStart = isEdit;
|
|
8136
|
-
const
|
|
8126
|
+
const set = (key, value) => setValues({ ...values, [key]: value });
|
|
8137
8127
|
const pickWorkflow = (id2) => {
|
|
8138
8128
|
const next = workflows.find((w) => w.id === id2);
|
|
8139
8129
|
setValues({ ...values, workflowId: id2, inputs: next ? chunk76L6LOP3_cjs.defaultInputs(next) : {} });
|
|
@@ -8195,7 +8185,7 @@ function WorkTaskComposer({
|
|
|
8195
8185
|
id: "task-composer-title",
|
|
8196
8186
|
value: values.name,
|
|
8197
8187
|
placeholder: l.titlePlaceholder,
|
|
8198
|
-
onChange: (e) =>
|
|
8188
|
+
onChange: (e) => set("name", e.target.value),
|
|
8199
8189
|
autoFocus: true,
|
|
8200
8190
|
className: "h-10 text-base font-medium",
|
|
8201
8191
|
"data-testid": `${id}-title`
|
|
@@ -8209,7 +8199,7 @@ function WorkTaskComposer({
|
|
|
8209
8199
|
value: values.description,
|
|
8210
8200
|
placeholder: l.descriptionPlaceholder,
|
|
8211
8201
|
rows: 2,
|
|
8212
|
-
onChange: (e) =>
|
|
8202
|
+
onChange: (e) => set("description", e.target.value),
|
|
8213
8203
|
"data-testid": `${id}-description`
|
|
8214
8204
|
}
|
|
8215
8205
|
)
|
|
@@ -8233,7 +8223,7 @@ function WorkTaskComposer({
|
|
|
8233
8223
|
id: `${id}-due`,
|
|
8234
8224
|
label: l.due,
|
|
8235
8225
|
value: values.dueAt,
|
|
8236
|
-
onChange: (v) =>
|
|
8226
|
+
onChange: (v) => set("dueAt", v),
|
|
8237
8227
|
labels: { clear: l.dueClear }
|
|
8238
8228
|
}
|
|
8239
8229
|
) })
|
|
@@ -8246,7 +8236,7 @@ function WorkTaskComposer({
|
|
|
8246
8236
|
value: values.parentTaskId,
|
|
8247
8237
|
options: taskOptions,
|
|
8248
8238
|
noneOption: { id: "", label: l.parentTaskNone },
|
|
8249
|
-
onChange: (v) =>
|
|
8239
|
+
onChange: (v) => set("parentTaskId", v),
|
|
8250
8240
|
searchable: true,
|
|
8251
8241
|
labels: pillLabels,
|
|
8252
8242
|
testId: `${id}-parent`
|
|
@@ -8256,7 +8246,7 @@ function WorkTaskComposer({
|
|
|
8256
8246
|
ui.VisibilityToggle,
|
|
8257
8247
|
{
|
|
8258
8248
|
items: { shared: values.shared },
|
|
8259
|
-
onToggle: (share) =>
|
|
8249
|
+
onToggle: (share) => set("shared", share),
|
|
8260
8250
|
label: l.visibility,
|
|
8261
8251
|
presentation: "select",
|
|
8262
8252
|
"data-testid": `${id}-visibility`
|
|
@@ -8322,11 +8312,11 @@ function WorkTaskComposer({
|
|
|
8322
8312
|
)
|
|
8323
8313
|
] }),
|
|
8324
8314
|
workflow && fields.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
8325
|
-
|
|
8315
|
+
chunkCGUDTSGI_cjs.SchemaForm,
|
|
8326
8316
|
{
|
|
8327
8317
|
fields,
|
|
8328
8318
|
values: values.inputs,
|
|
8329
|
-
onChange: (name, value) =>
|
|
8319
|
+
onChange: (name, value) => set("inputs", { ...values.inputs, [name]: value }),
|
|
8330
8320
|
renderScope: renderScope ?? defaultScopeRenderer(scopeSource),
|
|
8331
8321
|
renderDocuments,
|
|
8332
8322
|
renderIcon,
|
|
@@ -8349,7 +8339,7 @@ function WorkTaskComposer({
|
|
|
8349
8339
|
prefix: l.start,
|
|
8350
8340
|
value: values.when === "manual" ? "now" : values.when,
|
|
8351
8341
|
options: whenOptions,
|
|
8352
|
-
onChange: (v) =>
|
|
8342
|
+
onChange: (v) => set("when", v),
|
|
8353
8343
|
disabled: lockedStart,
|
|
8354
8344
|
labels: pillLabels,
|
|
8355
8345
|
testId: `${id}-when`
|
|
@@ -8363,7 +8353,7 @@ function WorkTaskComposer({
|
|
|
8363
8353
|
value: values.agentId,
|
|
8364
8354
|
options: assistantOptions,
|
|
8365
8355
|
noneOption: { id: "", label: l.myAssistant },
|
|
8366
|
-
onChange: (v) =>
|
|
8356
|
+
onChange: (v) => set("agentId", v),
|
|
8367
8357
|
disabled: lockedStart,
|
|
8368
8358
|
searchable: assistantOptions.length > 6,
|
|
8369
8359
|
labels: pillLabels,
|
|
@@ -8382,7 +8372,7 @@ function WorkTaskComposer({
|
|
|
8382
8372
|
label: l.accessOptions[mode].label
|
|
8383
8373
|
})
|
|
8384
8374
|
),
|
|
8385
|
-
onChange: (v) =>
|
|
8375
|
+
onChange: (v) => set("access", v),
|
|
8386
8376
|
labels: pillLabels,
|
|
8387
8377
|
testId: `${id}-access`
|
|
8388
8378
|
}
|
|
@@ -8396,7 +8386,7 @@ function WorkTaskComposer({
|
|
|
8396
8386
|
id: "task-composer-runat",
|
|
8397
8387
|
type: "datetime-local",
|
|
8398
8388
|
value: values.runAt,
|
|
8399
|
-
onChange: (e) =>
|
|
8389
|
+
onChange: (e) => set("runAt", e.target.value),
|
|
8400
8390
|
className: "max-w-xs",
|
|
8401
8391
|
"aria-invalid": runAtPast || void 0,
|
|
8402
8392
|
"data-testid": `${id}-run-at`
|
|
@@ -8408,7 +8398,7 @@ function WorkTaskComposer({
|
|
|
8408
8398
|
RecurrenceBuilder,
|
|
8409
8399
|
{
|
|
8410
8400
|
rrule: values.rrule,
|
|
8411
|
-
onChange: (r) =>
|
|
8401
|
+
onChange: (r) => set("rrule", r),
|
|
8412
8402
|
...recurrence
|
|
8413
8403
|
}
|
|
8414
8404
|
),
|
|
@@ -8420,7 +8410,7 @@ function WorkTaskComposer({
|
|
|
8420
8410
|
id: "task-composer-event",
|
|
8421
8411
|
value: values.eventKind,
|
|
8422
8412
|
placeholder: l.eventPlaceholder,
|
|
8423
|
-
onChange: (e) =>
|
|
8413
|
+
onChange: (e) => set("eventKind", e.target.value),
|
|
8424
8414
|
className: "max-w-xs",
|
|
8425
8415
|
"data-testid": `${id}-event`
|
|
8426
8416
|
}
|
|
@@ -8434,7 +8424,7 @@ function WorkTaskComposer({
|
|
|
8434
8424
|
prefix: l.afterTask,
|
|
8435
8425
|
value: values.afterTaskId,
|
|
8436
8426
|
options: taskOptions,
|
|
8437
|
-
onChange: (v) =>
|
|
8427
|
+
onChange: (v) => set("afterTaskId", v),
|
|
8438
8428
|
searchable: true,
|
|
8439
8429
|
labels: pillLabels,
|
|
8440
8430
|
testId: `${id}-after-task`,
|
|
@@ -8464,7 +8454,7 @@ function WorkTaskComposer({
|
|
|
8464
8454
|
id: "task-composer-timezone",
|
|
8465
8455
|
list: "task-composer-timezones",
|
|
8466
8456
|
value: values.timezone,
|
|
8467
|
-
onChange: (e) =>
|
|
8457
|
+
onChange: (e) => set("timezone", e.target.value),
|
|
8468
8458
|
className: "max-w-xs",
|
|
8469
8459
|
"data-testid": `${id}-timezone`
|
|
8470
8460
|
}
|
|
@@ -8981,7 +8971,7 @@ function ConfigFieldComponent({
|
|
|
8981
8971
|
const fieldTestId = chunkMHVNT4J3_cjs.testIdOr(testIds?.field?.(section, fieldName), {
|
|
8982
8972
|
testId: `config-field-${section}-${fieldName.replace(/\./g, "-")}`
|
|
8983
8973
|
});
|
|
8984
|
-
const { notify } =
|
|
8974
|
+
const { notify } = chunk7THRBD42_cjs.useBlocksEnvironment();
|
|
8985
8975
|
const fieldId = `${section}-${fieldName}`;
|
|
8986
8976
|
const label = fieldSchema.title || prettifyKey(fieldName.split(".").pop() ?? fieldName);
|
|
8987
8977
|
const description = fieldSchema.description || "";
|
|
@@ -10711,5 +10701,5 @@ exports.workflowTaskFields = workflowTaskFields;
|
|
|
10711
10701
|
exports.workflowToComposerValues = workflowToComposerValues;
|
|
10712
10702
|
exports.workflowToSkillMarkdown = workflowToSkillMarkdown;
|
|
10713
10703
|
exports.workflowWhen = workflowWhen;
|
|
10714
|
-
//# sourceMappingURL=chunk-
|
|
10715
|
-
//# sourceMappingURL=chunk-
|
|
10704
|
+
//# sourceMappingURL=chunk-GNWQS6S4.cjs.map
|
|
10705
|
+
//# sourceMappingURL=chunk-GNWQS6S4.cjs.map
|