@bikdotai/bik-component-library 0.0.853-beta.0 → 0.0.853

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/dist/cjs/components/agent-builder/AgentBuilder.js +1 -1
  2. package/dist/cjs/components/agent-builder/AgentBuilder.js.map +1 -1
  3. package/dist/cjs/components/agent-builder/components/AgentBuilderFooter.js +1 -1
  4. package/dist/cjs/components/agent-builder/components/AgentBuilderFooter.js.map +1 -1
  5. package/dist/cjs/components/agent-builder/components/AgentBuilderTopBar.js +1 -1
  6. package/dist/cjs/components/agent-builder/components/AgentBuilderTopBar.js.map +1 -1
  7. package/dist/cjs/components/agent-builder/components/ConfigToolPanel.js +11 -11
  8. package/dist/cjs/components/agent-builder/components/ConfigToolPanel.js.map +1 -1
  9. package/dist/cjs/components/agent-builder/components/CreateSubAgentPanel.js +5 -5
  10. package/dist/cjs/components/agent-builder/components/CreateSubAgentPanel.js.map +1 -1
  11. package/dist/cjs/components/agent-builder/components/GoLiveModal.js +1 -1
  12. package/dist/cjs/components/agent-builder/components/GoLiveModal.js.map +1 -1
  13. package/dist/cjs/components/agent-builder/components/MentionEditor.js +1 -7
  14. package/dist/cjs/components/agent-builder/components/MentionEditor.js.map +1 -1
  15. package/dist/cjs/components/agent-builder/components/MentionField.js +1 -1
  16. package/dist/cjs/components/agent-builder/components/MentionField.js.map +1 -1
  17. package/dist/cjs/components/agent-builder/components/MentionPicker.js +26 -53
  18. package/dist/cjs/components/agent-builder/components/MentionPicker.js.map +1 -1
  19. package/dist/cjs/components/agent-builder/components/RequireVerificationModal.js +1 -1
  20. package/dist/cjs/components/agent-builder/components/RequireVerificationModal.js.map +1 -1
  21. package/dist/cjs/components/agent-builder/components/RestApiToolPanel.js +5 -6
  22. package/dist/cjs/components/agent-builder/components/RestApiToolPanel.js.map +1 -1
  23. package/dist/cjs/components/agent-builder/components/SelectableListSection.js +1 -1
  24. package/dist/cjs/components/agent-builder/components/SelectableListSection.js.map +1 -1
  25. package/dist/cjs/components/agent-builder/components/ToolInstructionsField.js +2 -2
  26. package/dist/cjs/components/agent-builder/components/ToolInstructionsField.js.map +1 -1
  27. package/dist/cjs/components/agent-builder/constants/tools.js +1 -1
  28. package/dist/cjs/components/agent-builder/constants/tools.js.map +1 -1
  29. package/dist/cjs/components/agent-builder/context/AgentBuilderContext.js +1 -1
  30. package/dist/cjs/components/agent-builder/context/AgentBuilderContext.js.map +1 -1
  31. package/dist/cjs/components/agent-builder/steps/Step3HowItResponds.js +1 -1
  32. package/dist/cjs/components/agent-builder/steps/Step3HowItResponds.js.map +1 -1
  33. package/dist/cjs/components/agent-builder/utils/mentionSerialization.js +4 -4
  34. package/dist/cjs/components/agent-builder/utils/mentionSerialization.js.map +1 -1
  35. package/dist/cjs/components/agent-builder/utils/sourceIcons.js +1 -1
  36. package/dist/cjs/components/agent-builder/utils/sourceIcons.js.map +1 -1
  37. package/dist/cjs/components/agent-listing/AgentTableRow.js +1 -1
  38. package/dist/cjs/components/agent-listing/AgentTableRow.js.map +1 -1
  39. package/dist/cjs/components/agent-listing/AiAgentsEmptyState.js +1 -1
  40. package/dist/cjs/components/agent-listing/AiAgentsEmptyState.js.map +1 -1
  41. package/dist/cjs/components/variable-picker-v3/Content.js +1 -1
  42. package/dist/cjs/components/variable-picker-v3/Content.js.map +1 -1
  43. package/dist/cjs/components/zeroState/ZeroState.js +3 -3
  44. package/dist/cjs/components/zeroState/ZeroState.js.map +1 -1
  45. package/dist/cjs/editor/BikEditor.js +1 -1
  46. package/dist/cjs/editor/BikEditor.js.map +1 -1
  47. package/dist/cjs/editor/BikEditor.styles.js +21 -23
  48. package/dist/cjs/editor/BikEditor.styles.js.map +1 -1
  49. package/dist/cjs/editor/BikEditor.types.js.map +1 -1
  50. package/dist/cjs/editor/extensions/jsonHighlight/JsonHighlightExtension.js +3 -3
  51. package/dist/cjs/editor/extensions/jsonHighlight/JsonHighlightExtension.js.map +1 -1
  52. package/dist/cjs/editor/extensions/mention/MentionDropdown.js +1 -1
  53. package/dist/cjs/editor/extensions/mention/MentionDropdown.js.map +1 -1
  54. package/dist/cjs/editor/extensions/mention/MentionExtension.js +1 -1
  55. package/dist/cjs/editor/extensions/mention/MentionExtension.js.map +1 -1
  56. package/dist/cjs/index.js +1 -1
  57. package/dist/esm/components/add-variableV2/index.d.ts +0 -1
  58. package/dist/esm/components/agent-builder/AgentBuilder.js +127 -119
  59. package/dist/esm/components/agent-builder/AgentBuilder.js.map +1 -1
  60. package/dist/esm/components/agent-builder/AgentBuilder.model.d.ts +7 -10
  61. package/dist/esm/components/agent-builder/components/AgentBuilderFooter.d.ts +2 -0
  62. package/dist/esm/components/agent-builder/components/AgentBuilderFooter.js +29 -26
  63. package/dist/esm/components/agent-builder/components/AgentBuilderFooter.js.map +1 -1
  64. package/dist/esm/components/agent-builder/components/AgentBuilderTopBar.js +30 -29
  65. package/dist/esm/components/agent-builder/components/AgentBuilderTopBar.js.map +1 -1
  66. package/dist/esm/components/agent-builder/components/ConfigToolPanel.d.ts +0 -8
  67. package/dist/esm/components/agent-builder/components/ConfigToolPanel.js +136 -182
  68. package/dist/esm/components/agent-builder/components/ConfigToolPanel.js.map +1 -1
  69. package/dist/esm/components/agent-builder/components/CreateSubAgentPanel.d.ts +9 -3
  70. package/dist/esm/components/agent-builder/components/CreateSubAgentPanel.js +230 -222
  71. package/dist/esm/components/agent-builder/components/CreateSubAgentPanel.js.map +1 -1
  72. package/dist/esm/components/agent-builder/components/GoLiveModal.js +11 -13
  73. package/dist/esm/components/agent-builder/components/GoLiveModal.js.map +1 -1
  74. package/dist/esm/components/agent-builder/components/MentionEditor.d.ts +0 -12
  75. package/dist/esm/components/agent-builder/components/MentionEditor.js +103 -144
  76. package/dist/esm/components/agent-builder/components/MentionEditor.js.map +1 -1
  77. package/dist/esm/components/agent-builder/components/MentionField.js +45 -48
  78. package/dist/esm/components/agent-builder/components/MentionField.js.map +1 -1
  79. package/dist/esm/components/agent-builder/components/MentionPicker.d.ts +1 -14
  80. package/dist/esm/components/agent-builder/components/MentionPicker.js +248 -292
  81. package/dist/esm/components/agent-builder/components/MentionPicker.js.map +1 -1
  82. package/dist/esm/components/agent-builder/components/RequireVerificationModal.js +8 -8
  83. package/dist/esm/components/agent-builder/components/RequireVerificationModal.js.map +1 -1
  84. package/dist/esm/components/agent-builder/components/RestApiToolPanel.d.ts +0 -8
  85. package/dist/esm/components/agent-builder/components/RestApiToolPanel.js +172 -185
  86. package/dist/esm/components/agent-builder/components/RestApiToolPanel.js.map +1 -1
  87. package/dist/esm/components/agent-builder/components/SelectableListSection.js +73 -69
  88. package/dist/esm/components/agent-builder/components/SelectableListSection.js.map +1 -1
  89. package/dist/esm/components/agent-builder/components/ToolInstructionsField.d.ts +0 -9
  90. package/dist/esm/components/agent-builder/components/ToolInstructionsField.js +48 -67
  91. package/dist/esm/components/agent-builder/components/ToolInstructionsField.js.map +1 -1
  92. package/dist/esm/components/agent-builder/constants/tools.d.ts +21 -1
  93. package/dist/esm/components/agent-builder/constants/tools.js +33 -23
  94. package/dist/esm/components/agent-builder/constants/tools.js.map +1 -1
  95. package/dist/esm/components/agent-builder/context/AgentBuilderContext.d.ts +0 -7
  96. package/dist/esm/components/agent-builder/context/AgentBuilderContext.js +96 -99
  97. package/dist/esm/components/agent-builder/context/AgentBuilderContext.js.map +1 -1
  98. package/dist/esm/components/agent-builder/steps/Step3HowItResponds.js +272 -261
  99. package/dist/esm/components/agent-builder/steps/Step3HowItResponds.js.map +1 -1
  100. package/dist/esm/components/agent-builder/utils/mentionSerialization.d.ts +4 -14
  101. package/dist/esm/components/agent-builder/utils/mentionSerialization.js +36 -54
  102. package/dist/esm/components/agent-builder/utils/mentionSerialization.js.map +1 -1
  103. package/dist/esm/components/agent-builder/utils/sourceIcons.d.ts +6 -6
  104. package/dist/esm/components/agent-builder/utils/sourceIcons.js +21 -19
  105. package/dist/esm/components/agent-builder/utils/sourceIcons.js.map +1 -1
  106. package/dist/esm/components/agent-listing/AgentTableRow.js +26 -23
  107. package/dist/esm/components/agent-listing/AgentTableRow.js.map +1 -1
  108. package/dist/esm/components/agent-listing/AiAgentsEmptyState.js +3 -2
  109. package/dist/esm/components/agent-listing/AiAgentsEmptyState.js.map +1 -1
  110. package/dist/esm/components/variable-picker-v3/Content.js +15 -16
  111. package/dist/esm/components/variable-picker-v3/Content.js.map +1 -1
  112. package/dist/esm/components/zeroState/ZeroState.d.ts +2 -0
  113. package/dist/esm/components/zeroState/ZeroState.js +18 -17
  114. package/dist/esm/components/zeroState/ZeroState.js.map +1 -1
  115. package/dist/esm/editor/BikEditor.js +229 -222
  116. package/dist/esm/editor/BikEditor.js.map +1 -1
  117. package/dist/esm/editor/BikEditor.styles.js +14 -16
  118. package/dist/esm/editor/BikEditor.styles.js.map +1 -1
  119. package/dist/esm/editor/BikEditor.types.d.ts +0 -9
  120. package/dist/esm/editor/BikEditor.types.js.map +1 -1
  121. package/dist/esm/editor/extensions/jsonHighlight/JsonHighlightExtension.js +62 -60
  122. package/dist/esm/editor/extensions/jsonHighlight/JsonHighlightExtension.js.map +1 -1
  123. package/dist/esm/editor/extensions/mention/MentionDropdown.js +28 -28
  124. package/dist/esm/editor/extensions/mention/MentionDropdown.js.map +1 -1
  125. package/dist/esm/editor/extensions/mention/MentionExtension.js +19 -23
  126. package/dist/esm/editor/extensions/mention/MentionExtension.js.map +1 -1
  127. package/dist/esm/icons/index.d.ts +25 -25
  128. package/dist/esm/index.js +541 -543
  129. package/dist/esm/index.js.map +1 -1
  130. package/package.json +1 -1
  131. package/dist/cjs/components/add-variableV2/AddDataPill.js +0 -10
  132. package/dist/cjs/components/add-variableV2/AddDataPill.js.map +0 -1
  133. package/dist/cjs/components/agent-builder/components/VariableInlineField.js +0 -65
  134. package/dist/cjs/components/agent-builder/components/VariableInlineField.js.map +0 -1
  135. package/dist/cjs/components/agent-builder/components/VariableTriggerArea.js +0 -10
  136. package/dist/cjs/components/agent-builder/components/VariableTriggerArea.js.map +0 -1
  137. package/dist/esm/components/add-variableV2/AddDataPill.d.ts +0 -24
  138. package/dist/esm/components/add-variableV2/AddDataPill.js +0 -33
  139. package/dist/esm/components/add-variableV2/AddDataPill.js.map +0 -1
  140. package/dist/esm/components/agent-builder/components/VariableInlineField.d.ts +0 -26
  141. package/dist/esm/components/agent-builder/components/VariableInlineField.js +0 -149
  142. package/dist/esm/components/agent-builder/components/VariableInlineField.js.map +0 -1
  143. package/dist/esm/components/agent-builder/components/VariableTriggerArea.d.ts +0 -46
  144. package/dist/esm/components/agent-builder/components/VariableTriggerArea.js +0 -118
  145. package/dist/esm/components/agent-builder/components/VariableTriggerArea.js.map +0 -1
@@ -1,25 +1,25 @@
1
- import { jsxs as ct, Fragment as Bt, jsx as c } from "react/jsx-runtime";
2
- import { useState as i, useRef as y, useMemo as Gt, useCallback as l } from "react";
3
- import Lt from "styled-components";
4
- import { addUnique as ut } from "../../../utils/arrayUtils.js";
1
+ import { jsxs as ue, Fragment as Be, jsx as c } from "react/jsx-runtime";
2
+ import { useState as i, useRef as y, useMemo as Le, useCallback as l } from "react";
3
+ import Pe from "styled-components";
4
+ import { addUnique as de } from "../../../utils/arrayUtils.js";
5
5
  import { COLORS as Y } from "../../../constants/Theme.js";
6
- import { AGENT_CHAR_LIMITS as Pt } from "../constants/charLimits.js";
7
- import { CONFIG_TOOL_SOURCES as zt, ToolSource as u } from "../constants/tools.js";
8
- import { buildAgentMentionItems as Ht, buildCustomToolMentionItems as Ut, restApiMentionItem as $t, configToolMentionItem as Ft, restApiToolName as jt, configToolName as Wt, toolSourceLabel as Yt } from "../utils/mentionSerialization.js";
9
- import { sourceIcon as X, SOURCE_ICONS as dt, renderSourceIcon as mt } from "../utils/sourceIcons.js";
10
- import { buildToolActions as Xt } from "../utils/toolActions.js";
11
- import { ConfigToolPanel as Zt } from "./ConfigToolPanel.js";
12
- import { DRAWER_BODY_STYLE as qt, DRAWER_HEADER_STYLE as Jt, DrawerHeaderText as Qt } from "./DrawerHeaderText.js";
13
- import { MentionEditor as pt } from "./MentionEditor.js";
14
- import { RestApiToolPanel as Vt } from "./RestApiToolPanel.js";
15
- import { SelectableListSection as te } from "./SelectableListSection.js";
16
- import { SideModal as ee } from "../../side-modal/SideModal.js";
17
- import { Input as oe } from "../../input/Input.js";
18
- import { Toaster as ne } from "../../toaster/Toaster.js";
19
- const se = 1e3, Z = 1002, gt = (x, g) => {
6
+ import { AGENT_CHAR_LIMITS as ze } from "../constants/charLimits.js";
7
+ import { CONFIG_TOOL_SOURCES as He, ToolSource as u } from "../constants/tools.js";
8
+ import { buildAgentMentionItems as Ue, buildCustomToolMentionItems as $e, restApiMentionItem as Fe, configToolMentionItem as je, restApiToolName as We, configToolName as qe, toolSourceLabel as Ye } from "../utils/mentionSerialization.js";
9
+ import { sourceIcon as X, SOURCE_ICONS as me, renderSourceIcon as pe } from "../utils/sourceIcons.js";
10
+ import { buildToolActions as Xe } from "../utils/toolActions.js";
11
+ import { ConfigToolPanel as Ze } from "./ConfigToolPanel.js";
12
+ import { DRAWER_BODY_STYLE as Je, DRAWER_HEADER_STYLE as Qe, DrawerHeaderText as Ve } from "./DrawerHeaderText.js";
13
+ import { MentionEditor as fe } from "./MentionEditor.js";
14
+ import { RestApiToolPanel as et } from "./RestApiToolPanel.js";
15
+ import { SelectableListSection as tt } from "./SelectableListSection.js";
16
+ import { SideModal as ot } from "../../side-modal/SideModal.js";
17
+ import { Input as nt } from "../../input/Input.js";
18
+ import { Toaster as st } from "../../toaster/Toaster.js";
19
+ const rt = 1e3, Z = 1002, ge = (x, f) => {
20
20
  const s = x ?? [];
21
- return s.some((d) => d.id === g.id) ? s.map((d) => d.id === g.id ? g : d) : [...s, g];
22
- }, ft = Lt.button`
21
+ return s.some((d) => d.id === f.id) ? s.map((d) => d.id === f.id ? f : d) : [...s, f];
22
+ }, he = Pe.button`
23
23
  align-self: flex-start;
24
24
  border: 1px solid ${Y.stroke.primary};
25
25
  color: ${Y.content.primary};
@@ -35,208 +35,218 @@ const se = 1e3, Z = 1002, gt = (x, g) => {
35
35
  cursor: default;
36
36
  opacity: 0.6;
37
37
  }
38
- `, ve = ({
38
+ `, xt = ({
39
39
  onClose: x,
40
- onSave: g,
40
+ onSave: f,
41
41
  availableTools: s,
42
42
  onImprove: d,
43
- onImproveToolInstructions: q,
44
- configToolTemplates: J,
45
- title: Q = "Create sub-agent",
46
- initial: f,
47
- existingNames: ht = [],
48
- appLabel: V = "Manifest",
49
- charLimits: T = Pt,
50
- variablesData: A
43
+ onImproveToolInstructions: J,
44
+ configToolTemplates: Q,
45
+ integrationStatus: A,
46
+ onConnectIntegration: R,
47
+ title: V = "Create sub-agent",
48
+ initial: g,
49
+ existingNames: ye = [],
50
+ appLabel: ee = "Manifest",
51
+ charLimits: b = ze
51
52
  }) => {
52
- const [M, yt] = i(f?.name ?? ""), [b, R] = i(f?.instructions ?? ""), [C, _] = i(f?.guardrail ?? ""), [O, w] = i(f?.tools ?? []), [p, K] = i(
53
- f?.configTools ?? []
53
+ const [O, be] = i(g?.name ?? ""), [T, _] = i(g?.instructions ?? ""), [C, w] = i(g?.guardrail ?? ""), [D, k] = i(g?.tools ?? []), [p, K] = i(
54
+ g?.configTools ?? []
54
55
  ), [m, N] = i(
55
- f?.restApiTools ?? []
56
- ), [a, h] = i(null), k = y(0), [tt, et] = i(!1), [Tt, D] = i(0), [bt, B] = i(0), [I, ot] = i(null), G = Gt(
56
+ g?.restApiTools ?? []
57
+ ), [a, h] = i(null), E = y(0), [te, oe] = i(!1), [Te, G] = i(0), [Ce, B] = i(0), [v, ne] = i(null), L = Le(
57
58
  () => [
58
- ...Ht(s, [], V),
59
- ...Ut(p, m)
59
+ ...Ue(s, [], ee),
60
+ ...$e(p, m)
60
61
  ],
61
- [s, V, p, m]
62
- ), E = y({}), L = y("instructions"), Ct = l((t) => {
63
- E.current.instructions = t ?? void 0;
64
- }, []), It = l((t) => {
65
- E.current.guardrail = t ?? void 0;
66
- }, []), St = l(() => {
67
- L.current = "instructions";
68
- }, []), vt = l(() => {
69
- L.current = "guardrail";
70
- }, []), nt = y(/* @__PURE__ */ new Set());
71
- nt.current = new Set(
72
- [...p, ...m].map((t) => t.id)
62
+ [s, ee, p, m]
63
+ ), M = y({}), P = y("instructions"), ve = l((e) => {
64
+ M.current.instructions = e ?? void 0;
65
+ }, []), Ie = l((e) => {
66
+ M.current.guardrail = e ?? void 0;
67
+ }, []), Se = l(() => {
68
+ P.current = "instructions";
69
+ }, []), xe = l(() => {
70
+ P.current = "guardrail";
71
+ }, []), se = y(/* @__PURE__ */ new Set());
72
+ se.current = new Set(
73
+ [...p, ...m].map((e) => e.id)
73
74
  );
74
- const st = l(
75
- (t, e) => {
76
- t === "tool" && !nt.current.has(e) && w((o) => ut(o, e));
75
+ const re = l(
76
+ (e, t) => {
77
+ e === "tool" && !se.current.has(t) && k((o) => de(o, t));
77
78
  },
78
79
  []
79
- ), S = l(
80
- (t, e, o) => {
81
- (E.current[L.current] ?? E.current.instructions)?.("tool", t, e, o);
80
+ ), I = l(
81
+ (e, t, o) => {
82
+ (M.current[P.current] ?? M.current.instructions)?.("tool", e, t, o);
82
83
  },
83
84
  []
84
- ), P = l((t) => {
85
- k.current += 1, h({
86
- key: k.current,
85
+ ), z = l((e) => {
86
+ E.current += 1, h({
87
+ key: E.current,
87
88
  kind: "restapi",
88
- initialRest: t
89
+ initialRest: e
89
90
  });
90
- }, []), z = l(
91
- (t, e) => {
92
- k.current += 1, h({
93
- key: k.current,
91
+ }, []), H = l(
92
+ (e, t) => {
93
+ E.current += 1, h({
94
+ key: E.current,
94
95
  kind: "config",
95
- toolKey: t,
96
- initialConfig: e
96
+ toolKey: e,
97
+ initialConfig: t
97
98
  });
98
99
  },
99
100
  []
100
- ), xt = l(
101
- (t) => {
102
- const e = zt[t];
103
- e ? z(e) : P();
101
+ ), Ae = l(
102
+ (e) => {
103
+ const t = He[e];
104
+ t ? H(t) : z();
104
105
  },
105
- [z, P]
106
- ), At = l(
107
- (t) => {
108
- const e = !m.some((o) => o.id === t.id);
109
- N((o) => gt(o, t)), e && S(
110
- t.id,
111
- $t(t).label,
106
+ [H, z]
107
+ ), Re = l(
108
+ (e) => {
109
+ const t = !m.some((o) => o.id === e.id);
110
+ N((o) => ge(o, e)), t && I(
111
+ e.id,
112
+ Fe(e).label,
112
113
  u.RestApi
113
114
  ), h(null);
114
115
  },
115
- [m, S]
116
- ), Rt = l(
117
- (t) => {
118
- const e = !p.some((o) => o.id === t.id);
119
- if (K((o) => gt(o, t)), e) {
120
- const o = t.tool_key === "send_slack_message" ? u.Slack : u.EmailHandover;
121
- S(t.id, Ft(t).label, o);
116
+ [m, I]
117
+ ), _e = l(
118
+ (e) => {
119
+ const t = !p.some((o) => o.id === e.id);
120
+ if (K((o) => ge(o, e)), t) {
121
+ const o = e.tool_key === "send_slack_message" ? u.Slack : u.EmailHandover;
122
+ I(e.id, je(e).label, o);
122
123
  }
123
124
  h(null);
124
125
  },
125
- [p, S]
126
- ), [H, U] = i(
126
+ [p, I]
127
+ ), [U, $] = i(
127
128
  null
128
- ), $ = y(null), rt = y(0), _t = (t) => {
129
- const e = s.find((n) => n.tool_id === t)?.display_name ?? m.find((n) => n.id === t)?.name ?? "Tool", o = `{{tool:${t}}}`, r = (n) => n.split(o).join("");
130
- $.current = {
131
- instructions: b,
129
+ ), F = y(null), ie = y(0), we = (e) => {
130
+ const t = s.find((n) => n.tool_id === e)?.display_name ?? m.find((n) => n.id === e)?.name ?? "Tool", o = `{{tool:${e}}}`, r = (n) => n.split(o).join("");
131
+ F.current = {
132
+ instructions: T,
132
133
  guardrail: C,
133
- tools: O,
134
+ tools: D,
134
135
  configTools: p,
135
136
  restApiTools: m
136
- }, R((n) => r(n)), _((n) => r(n)), w((n) => n.filter((v) => v !== t)), K((n) => n.filter((v) => v.id !== t)), N((n) => n.filter((v) => v.id !== t)), D((n) => n + 1), B((n) => n + 1), rt.current += 1, U({ id: rt.current, message: `Tool "${e}" removed` });
137
- }, wt = () => {
138
- const t = $.current;
139
- t && (R(t.instructions), _(t.guardrail), w(t.tools), K(t.configTools), N(t.restApiTools), D((e) => e + 1), B((e) => e + 1), $.current = null), U(null);
140
- }, F = M.trim(), j = F.length > 0 && ht.some(
141
- (t) => t.trim().toLowerCase() === F.toLowerCase()
142
- ), it = F.length > 0 && !j && (b.trim().length > 0 || C.trim().length > 0), kt = O.map((t) => {
143
- const e = s.find((o) => o.tool_id === t);
144
- return e ? {
145
- id: t,
146
- label: e.display_name,
147
- icon: X(e.source ?? u.Manifest)
137
+ }, _((n) => r(n)), w((n) => r(n)), k((n) => n.filter((S) => S !== e)), K((n) => n.filter((S) => S.id !== e)), N((n) => n.filter((S) => S.id !== e)), G((n) => n + 1), B((n) => n + 1), ie.current += 1, $({ id: ie.current, message: `Tool "${t}" removed` });
138
+ }, ke = () => {
139
+ const e = F.current;
140
+ e && (_(e.instructions), w(e.guardrail), k(e.tools), K(e.configTools), N(e.restApiTools), G((t) => t + 1), B((t) => t + 1), F.current = null), $(null);
141
+ }, j = O.trim(), W = j.length > 0 && ye.some(
142
+ (e) => e.trim().toLowerCase() === j.toLowerCase()
143
+ ), ae = j.length > 0 && !W && (T.trim().length > 0 || C.trim().length > 0), Ee = D.map((e) => {
144
+ const t = s.find((o) => o.tool_id === e);
145
+ return t ? {
146
+ id: e,
147
+ label: t.display_name,
148
+ icon: X(t.source ?? u.Manifest),
149
+ // Shield flags a tool that needs customer verification, same as
150
+ // the main builder's Step 3 tool rows.
151
+ authRequired: t.auth_required
148
152
  } : null;
149
- }).filter((t) => t !== null), Et = m.map((t) => ({
150
- id: t.id,
151
- label: jt(t),
152
- icon: dt[u.RestApi],
153
- onConfigure: () => P(t)
154
- })), Mt = p.map((t) => ({
155
- id: t.id,
156
- label: Wt(t),
157
- icon: dt[t.tool_key === "send_slack_message" ? u.Slack : u.EmailHandover],
158
- onConfigure: () => z(t.tool_key, t)
159
- })), Ot = [
160
- ...kt,
161
- ...Et,
162
- ...Mt
163
- ], W = Xt(
164
- J,
165
- xt
166
- ), at = a?.kind === "config" && a.toolKey ? J?.[a.toolKey] : void 0, Kt = s.map((t) => ({
167
- label: t.display_name,
168
- value: t.tool_id,
169
- leadingIcon: mt(X(t.source ?? u.Manifest)) ?? void 0
170
- })), Nt = (() => {
171
- const t = [], e = /* @__PURE__ */ new Map();
153
+ }).filter((e) => e !== null), Me = m.map((e) => ({
154
+ id: e.id,
155
+ label: We(e),
156
+ icon: me[u.RestApi],
157
+ onConfigure: () => z(e)
158
+ })), Oe = p.map((e) => ({
159
+ id: e.id,
160
+ label: qe(e),
161
+ icon: me[e.tool_key === "send_slack_message" ? u.Slack : u.EmailHandover],
162
+ onConfigure: () => H(e.tool_key, e)
163
+ })), De = [
164
+ ...Ee,
165
+ ...Me,
166
+ ...Oe
167
+ ], q = Xe(
168
+ Q,
169
+ Ae,
170
+ A,
171
+ R
172
+ ), le = a?.kind === "config" && a.toolKey ? Q?.[a.toolKey] : void 0, Ke = s.map((e) => ({
173
+ label: e.display_name,
174
+ value: e.tool_id,
175
+ leadingIcon: pe(X(e.source ?? u.Manifest)) ?? void 0
176
+ })), Ne = (() => {
177
+ const e = [], t = /* @__PURE__ */ new Map();
172
178
  return s.forEach((o) => {
173
179
  const r = o.source ?? u.Manifest;
174
- e.has(r) || (e.set(r, []), t.push(r)), e.get(r)?.push({
180
+ t.has(r) || (t.set(r, []), e.push(r)), t.get(r)?.push({
175
181
  label: o.display_name,
176
182
  value: o.tool_id,
177
- leadingIcon: mt(X(o.source ?? u.Manifest)) ?? void 0
183
+ leadingIcon: pe(X(o.source ?? u.Manifest)) ?? void 0
178
184
  });
179
- }), t.map((o) => ({
185
+ }), e.map((o) => ({
180
186
  source: o,
181
- label: Yt(o),
182
- options: e.get(o) ?? []
187
+ label: Ye(o),
188
+ options: t.get(o) ?? [],
189
+ // Not connected → the source button opens the connect flow instead of
190
+ // its tool list (mirrors Step 3's tool section).
191
+ connected: A?.[o],
192
+ onConnect: () => R?.(o)
183
193
  }));
184
- })(), Dt = async () => {
185
- if (!it || tt)
194
+ })(), Ge = async () => {
195
+ if (!ae || te)
186
196
  return;
187
- const t = g({
188
- name: M.trim(),
189
- instructions: b,
197
+ const e = f({
198
+ name: O.trim(),
199
+ instructions: T,
190
200
  guardrail: C,
191
- tools: O,
201
+ tools: D,
192
202
  configTools: p,
193
203
  restApiTools: m
194
204
  });
195
- if (t && typeof t.then == "function") {
196
- et(!0);
205
+ if (e && typeof e.then == "function") {
206
+ oe(!0);
197
207
  try {
198
- await t;
208
+ await e;
199
209
  } finally {
200
- et(!1);
210
+ oe(!1);
201
211
  }
202
212
  }
203
- }, lt = async (t) => {
204
- if (!(!d || I)) {
205
- ot(t);
213
+ }, ce = async (e) => {
214
+ if (!(!d || v)) {
215
+ ne(e);
206
216
  try {
207
- const o = await d(t, t === "instructions" ? b : C);
208
- t === "instructions" ? (R(o), D((r) => r + 1)) : (_(o), B((r) => r + 1));
217
+ const o = await d(e, e === "instructions" ? T : C);
218
+ e === "instructions" ? (_(o), G((r) => r + 1)) : (w(o), B((r) => r + 1));
209
219
  } finally {
210
- ot(null);
220
+ ne(null);
211
221
  }
212
222
  }
213
223
  };
214
- return /* @__PURE__ */ ct(Bt, { children: [
215
- /* @__PURE__ */ ct(
216
- ee,
224
+ return /* @__PURE__ */ ue(Be, { children: [
225
+ /* @__PURE__ */ ue(
226
+ ot,
217
227
  {
218
- header: Q,
228
+ header: V,
219
229
  closeOnEscapeKey: !1,
220
- zIndex: se,
230
+ zIndex: rt,
221
231
  headerCustomComponent: /* @__PURE__ */ c(
222
- Qt,
232
+ Ve,
223
233
  {
224
- title: Q,
234
+ title: V,
225
235
  subtitle: "Each sub-agent handles one piece of the job. Use @ in the main instructions to call them."
226
236
  }
227
237
  ),
228
238
  width: "421px",
229
- headerStyle: Jt,
230
- bodyStyle: qt,
239
+ headerStyle: Qe,
240
+ bodyStyle: Je,
231
241
  onClose: x,
232
242
  saveButtonProps: {
233
243
  "data-test": "subagent-save",
234
244
  buttonText: "Save",
235
245
  buttonType: "primary",
236
246
  size: "small",
237
- disabled: !it,
238
- isLoading: tt,
239
- onClick: Dt
247
+ disabled: !ae,
248
+ isLoading: te,
249
+ onClick: Ge
240
250
  },
241
251
  cancelButtonProps: {
242
252
  "data-test": "subagent-cancel",
@@ -247,99 +257,99 @@ const se = 1e3, Z = 1002, gt = (x, g) => {
247
257
  },
248
258
  children: [
249
259
  /* @__PURE__ */ c(
250
- oe,
260
+ nt,
251
261
  {
252
262
  "data-test": "subagent-name",
253
263
  labelText: "Agent name",
254
264
  labelTextBold: !0,
255
265
  placeholder: "Enter agent name",
256
- value: M,
257
- maxCharLimit: T.name,
266
+ value: O,
267
+ maxCharLimit: b.name,
258
268
  maxCharLimitPosition: "TOP",
259
269
  maxCharStyle: { fontSize: 12, lineHeight: "16px" },
260
- state: j ? "invalid" : void 0,
261
- errorMessage: j ? "A sub-agent with this name already exists" : void 0,
262
- onChangeText: yt
270
+ state: W ? "invalid" : void 0,
271
+ errorMessage: W ? "A sub-agent with this name already exists" : void 0,
272
+ onChangeText: be
263
273
  }
264
274
  ),
265
275
  /* @__PURE__ */ c(
266
- pt,
276
+ fe,
267
277
  {
268
278
  "data-test": "subagent-instructions",
269
279
  label: "Instructions",
270
- value: b,
271
- onChange: R,
272
- maxLength: T.instructions,
280
+ value: T,
281
+ onChange: _,
282
+ maxLength: b.instructions,
273
283
  placeholder: "Write the steps in plain English. The agent will follow them exactly. The more specific you are, the better it performs.",
274
284
  minHeight: "160px",
275
- resetKey: `instr-${Tt}`,
276
- mentionItems: G,
285
+ resetKey: `instr-${Te}`,
286
+ mentionItems: L,
277
287
  tools: s,
278
- toolActions: W,
279
- variablesData: A,
280
- addDataButton: !0,
281
- onMentionSelect: st,
282
- onFocus: St,
283
- registerInsert: Ct,
288
+ toolActions: q,
289
+ integrationStatus: A,
290
+ onConnectIntegration: R,
291
+ onMentionSelect: re,
292
+ onFocus: Se,
293
+ registerInsert: ve,
284
294
  action: d ? /* @__PURE__ */ c(
285
- ft,
295
+ he,
286
296
  {
287
297
  type: "button",
288
298
  "data-test": "subagent-improve-instructions",
289
- disabled: I !== null,
290
- onClick: () => lt("instructions"),
291
- children: I === "instructions" ? "Improving…" : "Improve with AI"
299
+ disabled: v !== null,
300
+ onClick: () => ce("instructions"),
301
+ children: v === "instructions" ? "Improving…" : "Improve with AI"
292
302
  }
293
303
  ) : void 0
294
304
  }
295
305
  ),
296
306
  /* @__PURE__ */ c(
297
- pt,
307
+ fe,
298
308
  {
299
309
  "data-test": "subagent-guardrail",
300
310
  label: "Guardrails",
301
311
  value: C,
302
- onChange: _,
303
- maxLength: T.guardrail,
312
+ onChange: w,
313
+ maxLength: b.guardrail,
304
314
  placeholder: "e.g. Never discuss competitor pricing. Always stay within the cancellation policy. Do not process refunds above ₹10,000 without human approval.",
305
315
  minHeight: "160px",
306
- resetKey: `guard-${bt}`,
307
- mentionItems: G,
316
+ resetKey: `guard-${Ce}`,
317
+ mentionItems: L,
308
318
  tools: s,
309
- toolActions: W,
310
- variablesData: A,
311
- addDataButton: !0,
312
- onMentionSelect: st,
313
- onFocus: vt,
314
- registerInsert: It,
319
+ toolActions: q,
320
+ integrationStatus: A,
321
+ onConnectIntegration: R,
322
+ onMentionSelect: re,
323
+ onFocus: xe,
324
+ registerInsert: Ie,
315
325
  action: d ? /* @__PURE__ */ c(
316
- ft,
326
+ he,
317
327
  {
318
328
  type: "button",
319
329
  "data-test": "subagent-improve-guardrail",
320
- disabled: I !== null,
321
- onClick: () => lt("guardrail"),
322
- children: I === "guardrail" ? "Improving…" : "Improve with AI"
330
+ disabled: v !== null,
331
+ onClick: () => ce("guardrail"),
332
+ children: v === "guardrail" ? "Improving…" : "Improve with AI"
323
333
  }
324
334
  ) : void 0
325
335
  }
326
336
  ),
327
337
  /* @__PURE__ */ c(
328
- te,
338
+ tt,
329
339
  {
330
340
  title: "Tools this agent can use",
331
341
  dataTestPrefix: "subagent-tools",
332
- items: Ot,
333
- addableOptions: Kt,
334
- sourceGroups: Nt,
335
- mentionItems: G,
336
- actionSources: W,
342
+ items: De,
343
+ addableOptions: Ke,
344
+ sourceGroups: Ne,
345
+ mentionItems: L,
346
+ actionSources: q,
337
347
  emptyText: "No tools added yet.",
338
348
  pickerOpensUp: !0,
339
- onAdd: (t) => {
340
- S(t), w((e) => ut(e, t));
349
+ onAdd: (e) => {
350
+ I(e), k((t) => de(t, e));
341
351
  },
342
- onRemove: _t,
352
+ onRemove: we,
343
353
  confirmDelete: { noun: "tool", zIndex: Z + 1 }
344
354
  }
345
355
  )
@@ -347,37 +357,35 @@ const se = 1e3, Z = 1002, gt = (x, g) => {
347
357
  }
348
358
  ),
349
359
  a?.kind === "restapi" && /* @__PURE__ */ c(
350
- Vt,
360
+ et,
351
361
  {
352
362
  initial: a.initialRest,
353
- charLimits: T,
354
- variablesData: A,
355
- onImprove: q,
363
+ charLimits: b,
364
+ onImprove: J,
356
365
  onClose: () => h(null),
357
- onSave: At,
366
+ onSave: Re,
358
367
  zIndex: Z
359
368
  },
360
369
  a.key
361
370
  ),
362
- a?.kind === "config" && a.toolKey && at && /* @__PURE__ */ c(
363
- Zt,
371
+ a?.kind === "config" && a.toolKey && le && /* @__PURE__ */ c(
372
+ Ze,
364
373
  {
365
374
  toolKey: a.toolKey,
366
- template: at,
375
+ template: le,
367
376
  initial: a.initialConfig,
368
- charLimits: T,
369
- variablesData: A,
370
- onImprove: q,
377
+ charLimits: b,
378
+ onImprove: J,
371
379
  onClose: () => h(null),
372
- onSave: Rt,
380
+ onSave: _e,
373
381
  zIndex: Z
374
382
  },
375
383
  a.key
376
384
  ),
377
- H && /* @__PURE__ */ c(
378
- ne,
385
+ U && /* @__PURE__ */ c(
386
+ st,
379
387
  {
380
- text: H.message,
388
+ text: U.message,
381
389
  type: "info",
382
390
  position: "top-right",
383
391
  autoClose: 5e3,
@@ -385,15 +393,15 @@ const se = 1e3, Z = 1002, gt = (x, g) => {
385
393
  buttonProps: {
386
394
  buttonText: "Undo",
387
395
  showButton: !0,
388
- onButtonClick: () => (wt(), {})
396
+ onButtonClick: () => (ke(), {})
389
397
  },
390
- onCloseToast: () => U(null)
398
+ onCloseToast: () => $(null)
391
399
  },
392
- H.id
400
+ U.id
393
401
  )
394
402
  ] });
395
403
  };
396
404
  export {
397
- ve as CreateSubAgentPanel
405
+ xt as CreateSubAgentPanel
398
406
  };
399
407
  //# sourceMappingURL=CreateSubAgentPanel.js.map