@bikdotai/bik-component-library 0.0.821-beta.8 → 0.0.821
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/cjs/assets/icons/Shopify.svg.js +2 -0
- package/dist/cjs/assets/icons/Shopify.svg.js.map +1 -0
- package/dist/cjs/components/agent-builder/AgentBuilder.js +1 -1
- package/dist/cjs/components/agent-builder/AgentBuilder.js.map +1 -1
- package/dist/cjs/components/agent-builder/AgentBuilder.styled.js +57 -23
- package/dist/cjs/components/agent-builder/AgentBuilder.styled.js.map +1 -1
- package/dist/cjs/components/agent-builder/components/CreateSubAgentPanel.js +1 -1
- package/dist/cjs/components/agent-builder/components/CreateSubAgentPanel.js.map +1 -1
- package/dist/cjs/components/agent-builder/components/GoLiveModal.js.map +1 -1
- package/dist/cjs/components/agent-builder/components/MentionEditor.js +1 -1
- package/dist/cjs/components/agent-builder/components/MentionEditor.js.map +1 -1
- package/dist/cjs/components/agent-builder/components/MentionField.js +1 -1
- package/dist/cjs/components/agent-builder/components/MentionField.js.map +1 -1
- package/dist/cjs/components/agent-builder/components/MentionPicker.js +37 -6
- package/dist/cjs/components/agent-builder/components/MentionPicker.js.map +1 -1
- package/dist/cjs/components/agent-builder/components/SelectableListSection.js +1 -1
- package/dist/cjs/components/agent-builder/components/SelectableListSection.js.map +1 -1
- package/dist/cjs/components/agent-builder/constants/charLimits.js +1 -1
- package/dist/cjs/components/agent-builder/constants/charLimits.js.map +1 -1
- package/dist/cjs/components/agent-builder/context/AgentBuilderContext.js +1 -1
- package/dist/cjs/components/agent-builder/context/AgentBuilderContext.js.map +1 -1
- package/dist/cjs/components/agent-builder/steps/Step2WhenItStepsIn.js +1 -1
- package/dist/cjs/components/agent-builder/steps/Step2WhenItStepsIn.js.map +1 -1
- package/dist/cjs/components/agent-builder/steps/Step3HowItResponds.js +1 -1
- package/dist/cjs/components/agent-builder/steps/Step3HowItResponds.js.map +1 -1
- package/dist/cjs/components/agent-builder/utils/mentionSerialization.js +1 -1
- package/dist/cjs/components/agent-builder/utils/mentionSerialization.js.map +1 -1
- package/dist/cjs/components/agent-builder/utils/sourceIcons.js +2 -0
- package/dist/cjs/components/agent-builder/utils/sourceIcons.js.map +1 -0
- package/dist/cjs/components/agent-listing/AgentListing.js +1 -1
- package/dist/cjs/components/agent-listing/AgentListing.js.map +1 -1
- package/dist/cjs/components/agent-listing/AgentListingFilters.js +1 -1
- package/dist/cjs/components/agent-listing/AgentListingFilters.js.map +1 -1
- package/dist/cjs/editor/BikEditor.types.js.map +1 -1
- package/dist/cjs/editor/extensions/mention/MentionDropdown.js +1 -1
- package/dist/cjs/editor/extensions/mention/MentionDropdown.js.map +1 -1
- package/dist/cjs/editor/extensions/mention/MentionExtension.js +1 -1
- package/dist/cjs/editor/extensions/mention/MentionExtension.js.map +1 -1
- package/dist/esm/assets/icons/Shopify.svg.js +6 -0
- package/dist/esm/assets/icons/Shopify.svg.js.map +1 -0
- package/dist/esm/components/agent-builder/AgentBuilder.js +47 -47
- package/dist/esm/components/agent-builder/AgentBuilder.js.map +1 -1
- package/dist/esm/components/agent-builder/AgentBuilder.model.d.ts +1 -1
- package/dist/esm/components/agent-builder/AgentBuilder.styled.d.ts +6 -0
- package/dist/esm/components/agent-builder/AgentBuilder.styled.js +82 -42
- package/dist/esm/components/agent-builder/AgentBuilder.styled.js.map +1 -1
- package/dist/esm/components/agent-builder/components/CreateSubAgentPanel.js +84 -76
- package/dist/esm/components/agent-builder/components/CreateSubAgentPanel.js.map +1 -1
- package/dist/esm/components/agent-builder/components/GoLiveModal.js.map +1 -1
- package/dist/esm/components/agent-builder/components/MentionEditor.d.ts +6 -0
- package/dist/esm/components/agent-builder/components/MentionEditor.js +31 -30
- package/dist/esm/components/agent-builder/components/MentionEditor.js.map +1 -1
- package/dist/esm/components/agent-builder/components/MentionField.js +40 -37
- package/dist/esm/components/agent-builder/components/MentionField.js.map +1 -1
- package/dist/esm/components/agent-builder/components/MentionPicker.d.ts +6 -1
- package/dist/esm/components/agent-builder/components/MentionPicker.js +202 -101
- package/dist/esm/components/agent-builder/components/MentionPicker.js.map +1 -1
- package/dist/esm/components/agent-builder/components/SelectableListSection.d.ts +18 -2
- package/dist/esm/components/agent-builder/components/SelectableListSection.js +159 -91
- package/dist/esm/components/agent-builder/components/SelectableListSection.js.map +1 -1
- package/dist/esm/components/agent-builder/constants/charLimits.d.ts +1 -1
- package/dist/esm/components/agent-builder/constants/charLimits.js +1 -1
- package/dist/esm/components/agent-builder/constants/charLimits.js.map +1 -1
- package/dist/esm/components/agent-builder/context/AgentBuilderContext.d.ts +7 -0
- package/dist/esm/components/agent-builder/context/AgentBuilderContext.js +107 -99
- package/dist/esm/components/agent-builder/context/AgentBuilderContext.js.map +1 -1
- package/dist/esm/components/agent-builder/steps/Step2WhenItStepsIn.js +7 -7
- package/dist/esm/components/agent-builder/steps/Step2WhenItStepsIn.js.map +1 -1
- package/dist/esm/components/agent-builder/steps/Step3HowItResponds.js +131 -106
- package/dist/esm/components/agent-builder/steps/Step3HowItResponds.js.map +1 -1
- package/dist/esm/components/agent-builder/utils/mentionSerialization.js +2 -2
- package/dist/esm/components/agent-builder/utils/mentionSerialization.js.map +1 -1
- package/dist/esm/components/agent-builder/utils/sourceIcons.d.ts +10 -0
- package/dist/esm/components/agent-builder/utils/sourceIcons.js +10 -0
- package/dist/esm/components/agent-builder/utils/sourceIcons.js.map +1 -0
- package/dist/esm/components/agent-listing/AgentListing.js +108 -101
- package/dist/esm/components/agent-listing/AgentListing.js.map +1 -1
- package/dist/esm/components/agent-listing/AgentListing.model.d.ts +8 -0
- package/dist/esm/components/agent-listing/AgentListingFilters.d.ts +2 -0
- package/dist/esm/components/agent-listing/AgentListingFilters.js +37 -33
- package/dist/esm/components/agent-listing/AgentListingFilters.js.map +1 -1
- package/dist/esm/editor/BikEditor.types.d.ts +7 -0
- package/dist/esm/editor/BikEditor.types.js.map +1 -1
- package/dist/esm/editor/extensions/mention/MentionDropdown.d.ts +2 -0
- package/dist/esm/editor/extensions/mention/MentionDropdown.js +21 -20
- package/dist/esm/editor/extensions/mention/MentionDropdown.js.map +1 -1
- package/dist/esm/editor/extensions/mention/MentionExtension.js +66 -55
- package/dist/esm/editor/extensions/mention/MentionExtension.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as o, jsxs as
|
|
1
|
+
import { jsx as o, jsxs as T } from "react/jsx-runtime";
|
|
2
2
|
import { useState as d, useCallback as t } from "react";
|
|
3
3
|
import { COLORS as oe } from "../../constants/Theme.js";
|
|
4
4
|
import { BuilderRoot as te, Main as ae, Rail as re, Content as ie, ContentCard as se } from "./AgentBuilder.styled.js";
|
|
@@ -30,7 +30,7 @@ const Ae = () => {
|
|
|
30
30
|
}
|
|
31
31
|
}, De = (c) => {
|
|
32
32
|
const {
|
|
33
|
-
config:
|
|
33
|
+
config: G,
|
|
34
34
|
onChange: v,
|
|
35
35
|
onStepChange: u,
|
|
36
36
|
onDiscard: r,
|
|
@@ -40,26 +40,26 @@ const Ae = () => {
|
|
|
40
40
|
onTestAgent: f,
|
|
41
41
|
onGoToDashboard: h,
|
|
42
42
|
onCreateSubAgent: s,
|
|
43
|
-
onFetchSubAgent:
|
|
44
|
-
onUpdateSubAgent:
|
|
45
|
-
onImproveSubAgent:
|
|
46
|
-
...
|
|
43
|
+
onFetchSubAgent: P,
|
|
44
|
+
onUpdateSubAgent: w,
|
|
45
|
+
onImproveSubAgent: M,
|
|
46
|
+
...k
|
|
47
47
|
} = c, {
|
|
48
48
|
value: m,
|
|
49
|
-
activeStep:
|
|
50
|
-
availableTools:
|
|
51
|
-
availableSubAgents:
|
|
52
|
-
availableIntents:
|
|
53
|
-
availableModels:
|
|
54
|
-
validation:
|
|
55
|
-
applicationType:
|
|
49
|
+
activeStep: I,
|
|
50
|
+
availableTools: R,
|
|
51
|
+
availableSubAgents: x,
|
|
52
|
+
availableIntents: j = [],
|
|
53
|
+
availableModels: H = [],
|
|
54
|
+
validation: F,
|
|
55
|
+
applicationType: N,
|
|
56
56
|
isSaving: S,
|
|
57
57
|
isPublishing: b,
|
|
58
|
-
isLoading:
|
|
59
|
-
footerHint:
|
|
60
|
-
disableStepNavigation:
|
|
58
|
+
isLoading: O,
|
|
59
|
+
footerHint: U = "Changes don’t affect customers until you go live",
|
|
60
|
+
disableStepNavigation: z,
|
|
61
61
|
debugLog: C
|
|
62
|
-
} =
|
|
62
|
+
} = G, [E, a] = d(null), [A, D] = d(!1), [W, l] = d(!1), [L, y] = d(!1), e = t(
|
|
63
63
|
(n, ...ne) => {
|
|
64
64
|
C && console.log(`[AgentBuilder] ${n}`, ...ne);
|
|
65
65
|
},
|
|
@@ -76,19 +76,19 @@ const Ae = () => {
|
|
|
76
76
|
[e, u]
|
|
77
77
|
), J = t(() => {
|
|
78
78
|
e("onDiscard"), r();
|
|
79
|
-
}, [e, r]),
|
|
79
|
+
}, [e, r]), K = t(() => (e("onSaveDraft"), i()), [e, i]), Q = t(() => (e("onPublish"), p()), [e, p]), V = t(() => {
|
|
80
80
|
e("onBack"), l(!0);
|
|
81
|
-
}, [e]),
|
|
81
|
+
}, [e]), X = t(() => {
|
|
82
82
|
e("onDiscardAndLeave"), l(!1), r();
|
|
83
|
-
}, [e, r]),
|
|
83
|
+
}, [e, r]), B = t(async () => {
|
|
84
84
|
e("onSaveDraftAndLeave");
|
|
85
85
|
const n = i();
|
|
86
86
|
if (n && typeof n.then == "function") {
|
|
87
|
-
|
|
87
|
+
y(!0);
|
|
88
88
|
try {
|
|
89
89
|
await n;
|
|
90
90
|
} finally {
|
|
91
|
-
|
|
91
|
+
y(!1);
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
94
|
l(!1), g?.();
|
|
@@ -101,7 +101,7 @@ const Ae = () => {
|
|
|
101
101
|
[e, s]
|
|
102
102
|
), ee = async () => {
|
|
103
103
|
e("onGoLiveConfirm");
|
|
104
|
-
const n =
|
|
104
|
+
const n = Q();
|
|
105
105
|
if (n && typeof n.then == "function") {
|
|
106
106
|
D(!0);
|
|
107
107
|
try {
|
|
@@ -117,34 +117,34 @@ const Ae = () => {
|
|
|
117
117
|
{
|
|
118
118
|
value: m,
|
|
119
119
|
onChange: $,
|
|
120
|
-
activeStep:
|
|
120
|
+
activeStep: I,
|
|
121
121
|
onStepChange: u ? q : void 0,
|
|
122
|
-
availableTools:
|
|
123
|
-
availableSubAgents:
|
|
124
|
-
availableIntents:
|
|
125
|
-
availableModels:
|
|
126
|
-
validation:
|
|
127
|
-
applicationType:
|
|
128
|
-
disableStepNavigation:
|
|
122
|
+
availableTools: R,
|
|
123
|
+
availableSubAgents: x,
|
|
124
|
+
availableIntents: j,
|
|
125
|
+
availableModels: H,
|
|
126
|
+
validation: F,
|
|
127
|
+
applicationType: N,
|
|
128
|
+
disableStepNavigation: z,
|
|
129
129
|
onCreateSubAgent: s ? _ : void 0,
|
|
130
|
-
onFetchSubAgent:
|
|
131
|
-
onUpdateSubAgent:
|
|
132
|
-
onImproveSubAgent:
|
|
133
|
-
children: /* @__PURE__ */
|
|
130
|
+
onFetchSubAgent: P,
|
|
131
|
+
onUpdateSubAgent: w,
|
|
132
|
+
onImproveSubAgent: M,
|
|
133
|
+
children: /* @__PURE__ */ T(te, { "data-test": k["data-test"] ?? "agent-builder", children: [
|
|
134
134
|
/* @__PURE__ */ o(
|
|
135
135
|
de,
|
|
136
136
|
{
|
|
137
137
|
name: m.name,
|
|
138
138
|
status: m.status,
|
|
139
|
-
onBack: g ?
|
|
139
|
+
onBack: g ? V : void 0,
|
|
140
140
|
onDiscard: J,
|
|
141
|
-
onSaveDraft:
|
|
142
|
-
isSaving: S
|
|
141
|
+
onSaveDraft: B,
|
|
142
|
+
isSaving: S || L
|
|
143
143
|
}
|
|
144
144
|
),
|
|
145
|
-
/* @__PURE__ */
|
|
145
|
+
/* @__PURE__ */ T(ae, { children: [
|
|
146
146
|
/* @__PURE__ */ o(re, { children: /* @__PURE__ */ o(ge, {}) }),
|
|
147
|
-
/* @__PURE__ */ o(ie, { children:
|
|
147
|
+
/* @__PURE__ */ o(ie, { children: O ? /* @__PURE__ */ o(
|
|
148
148
|
"div",
|
|
149
149
|
{
|
|
150
150
|
style: {
|
|
@@ -160,7 +160,7 @@ const Ae = () => {
|
|
|
160
160
|
/* @__PURE__ */ o(
|
|
161
161
|
le,
|
|
162
162
|
{
|
|
163
|
-
footerHint:
|
|
163
|
+
footerHint: U,
|
|
164
164
|
onTestAgent: f ? Y : void 0,
|
|
165
165
|
onGoLive: () => {
|
|
166
166
|
e("onGoLive"), a("confirm");
|
|
@@ -171,11 +171,11 @@ const Ae = () => {
|
|
|
171
171
|
/* @__PURE__ */ o(
|
|
172
172
|
ue,
|
|
173
173
|
{
|
|
174
|
-
mode:
|
|
174
|
+
mode: E,
|
|
175
175
|
onClose: () => a(null),
|
|
176
176
|
onConfirm: ee,
|
|
177
177
|
onSaveDraft: () => {
|
|
178
|
-
a(null),
|
|
178
|
+
a(null), K();
|
|
179
179
|
},
|
|
180
180
|
onGoToDashboard: h ? Z : void 0,
|
|
181
181
|
isPublishing: b || A
|
|
@@ -184,11 +184,11 @@ const Ae = () => {
|
|
|
184
184
|
/* @__PURE__ */ o(
|
|
185
185
|
ce,
|
|
186
186
|
{
|
|
187
|
-
open:
|
|
187
|
+
open: W,
|
|
188
188
|
onClose: () => l(!1),
|
|
189
|
-
onDiscard:
|
|
190
|
-
onSaveDraft:
|
|
191
|
-
isSaving: S ||
|
|
189
|
+
onDiscard: X,
|
|
190
|
+
onSaveDraft: B,
|
|
191
|
+
isSaving: S || L
|
|
192
192
|
}
|
|
193
193
|
),
|
|
194
194
|
/* @__PURE__ */ o(fe, {})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentBuilder.js","sources":["../../../../src/components/agent-builder/AgentBuilder.tsx"],"sourcesContent":["import React, { useCallback, useState } from 'react';\nimport { Spinner } from '@src/components/spinner';\nimport { COLORS } from '@src/constants/Theme';\nimport {\n\tAgentBuilderProps,\n\tAgentValue,\n\tSubAgentDraft,\n} from './AgentBuilder.model';\nimport {\n\tBuilderRoot,\n\tContent,\n\tContentCard,\n\tMain,\n\tRail,\n} from './AgentBuilder.styled';\nimport { AgentBuilderFooter } from './components/AgentBuilderFooter';\nimport { AgentBuilderTopBar } from './components/AgentBuilderTopBar';\nimport { DiscardModal } from './components/DiscardModal';\nimport { GoLiveModal, GoLiveModalMode } from './components/GoLiveModal';\nimport { StepRail } from './components/StepRail';\nimport { UndoToast } from './components/UndoToast';\nimport {\n\tAgentBuilderProvider,\n\tuseAgentBuilderContext,\n} from './context/AgentBuilderContext';\nimport { Step1About } from './steps/Step1About';\nimport { Step2WhenItStepsIn } from './steps/Step2WhenItStepsIn';\nimport { Step3HowItResponds } from './steps/Step3HowItResponds';\nimport { Step4HandoverRules } from './steps/Step4HandoverRules';\n\nconst StepContent: React.FC = () => {\n\tconst { activeStep } = useAgentBuilderContext();\n\tswitch (activeStep) {\n\t\tcase 'about':\n\t\t\treturn <Step1About />;\n\t\tcase 'trigger':\n\t\t\treturn <Step2WhenItStepsIn />;\n\t\tcase 'response':\n\t\t\treturn <Step3HowItResponds />;\n\t\tcase 'handover':\n\t\t\treturn <Step4HandoverRules />;\n\t\tdefault:\n\t\t\treturn null;\n\t}\n};\n\n/**\n * 4-step creation/edit wizard body for an AI agent. Presentational and\n * controlled — the consumer owns the `value`, persistence and routing.\n *\n * @example\n * <AgentBuilder\n * value={agent}\n * onChange={(patch) => setAgent({ ...agent, ...patch })}\n * availableTools={tools}\n * availableSubAgents={subAgents}\n * onDiscard={() => router.back()}\n * onSaveDraft={saveDraft}\n * onPublish={publish}\n * />\n */\nexport const AgentBuilder: React.FC<AgentBuilderProps> = (props) => {\n\tconst {\n\t\tconfig,\n\t\tonChange,\n\t\tonStepChange,\n\t\tonDiscard,\n\t\tonSaveDraft,\n\t\tonPublish,\n\t\tonBack,\n\t\tonTestAgent,\n\t\tonGoToDashboard,\n\t\tonCreateSubAgent,\n\t\tonFetchSubAgent,\n\t\tonUpdateSubAgent,\n\t\tonImproveSubAgent,\n\t\t...rest\n\t} = props;\n\tconst {\n\t\tvalue,\n\t\tactiveStep,\n\t\tavailableTools,\n\t\tavailableSubAgents,\n\t\tavailableIntents = [],\n\t\tavailableModels = [],\n\t\tvalidation,\n\t\tapplicationType,\n\t\tisSaving,\n\t\tisPublishing,\n\t\tisLoading,\n\t\tfooterHint = 'Changes don’t affect customers until you go live',\n\t\tdisableStepNavigation,\n\t\tdebugLog,\n\t} = config;\n\n\tconst [modalMode, setModalMode] = useState<GoLiveModalMode>(null);\n\tconst [publishingLocal, setPublishingLocal] = useState(false);\n\t// Back was pressed → confirm leaving (save draft / discard) before navigating.\n\tconst [showLeaveConfirm, setShowLeaveConfirm] = useState(false);\n\tconst [savingAndLeaving, setSavingAndLeaving] = useState(false);\n\n\t// Gated debug logging: each handler logs at its start only when `debugLog`.\n\tconst logAction = useCallback(\n\t\t(action: string, ...args: unknown[]) => {\n\t\t\tif (debugLog) {\n\t\t\t\t// eslint-disable-next-line no-console\n\t\t\t\tconsole.log(`[AgentBuilder] ${action}`, ...args);\n\t\t\t}\n\t\t},\n\t\t[debugLog],\n\t);\n\n\tconst handleChange = useCallback(\n\t\t(patch: Partial<AgentValue>) => {\n\t\t\tlogAction('onChange', patch);\n\t\t\tonChange(patch);\n\t\t},\n\t\t[logAction, onChange],\n\t);\n\tconst handleStepChange = useCallback(\n\t\t(step: Parameters<NonNullable<typeof onStepChange>>[0]) => {\n\t\t\tlogAction('onStepChange', step);\n\t\t\tonStepChange?.(step);\n\t\t},\n\t\t[logAction, onStepChange],\n\t);\n\tconst handleDiscard = useCallback(() => {\n\t\tlogAction('onDiscard');\n\t\tonDiscard();\n\t}, [logAction, onDiscard]);\n\tconst handleSaveDraft = useCallback(() => {\n\t\tlogAction('onSaveDraft');\n\t\treturn onSaveDraft();\n\t}, [logAction, onSaveDraft]);\n\tconst handlePublish = useCallback(() => {\n\t\tlogAction('onPublish');\n\t\treturn onPublish();\n\t}, [logAction, onPublish]);\n\t// Back opens the \"Save as draft?\" confirmation rather than leaving directly.\n\tconst handleBack = useCallback(() => {\n\t\tlogAction('onBack');\n\t\tsetShowLeaveConfirm(true);\n\t}, [logAction]);\n\n\t// Modal \"Discard\" defers to the parent's discard handler (same as the top bar).\n\tconst handleDiscardAndLeave = useCallback(() => {\n\t\tlogAction('onDiscardAndLeave');\n\t\tsetShowLeaveConfirm(false);\n\t\tonDiscard();\n\t}, [logAction, onDiscard]);\n\n\tconst handleSaveDraftAndLeave = useCallback(async () => {\n\t\tlogAction('onSaveDraftAndLeave');\n\t\tconst result = onSaveDraft();\n\t\tif (result && typeof (result as Promise<void>).then === 'function') {\n\t\t\tsetSavingAndLeaving(true);\n\t\t\ttry {\n\t\t\t\tawait result;\n\t\t\t} finally {\n\t\t\t\tsetSavingAndLeaving(false);\n\t\t\t}\n\t\t}\n\t\tsetShowLeaveConfirm(false);\n\t\tonBack?.();\n\t}, [logAction, onSaveDraft, onBack]);\n\tconst handleTestAgent = useCallback(() => {\n\t\tlogAction('onTestAgent');\n\t\tonTestAgent?.();\n\t}, [logAction, onTestAgent]);\n\tconst handleGoToDashboard = useCallback(() => {\n\t\tlogAction('onGoToDashboard');\n\t\tonGoToDashboard?.();\n\t}, [logAction, onGoToDashboard]);\n\tconst handleCreateSubAgent = useCallback(\n\t\t(draft: SubAgentDraft) => {\n\t\t\tlogAction('onCreateSubAgent', draft);\n\t\t\treturn onCreateSubAgent\n\t\t\t\t? onCreateSubAgent(draft)\n\t\t\t\t: Promise.reject(new Error('onCreateSubAgent not provided'));\n\t\t},\n\t\t[logAction, onCreateSubAgent],\n\t);\n\n\tconst handleConfirmGoLive = async () => {\n\t\tlogAction('onGoLiveConfirm');\n\t\tconst result = handlePublish();\n\t\tif (result && typeof (result as Promise<void>).then === 'function') {\n\t\t\tsetPublishingLocal(true);\n\t\t\ttry {\n\t\t\t\tawait result;\n\t\t\t\tsetModalMode('success');\n\t\t\t} finally {\n\t\t\t\tsetPublishingLocal(false);\n\t\t\t}\n\t\t} else {\n\t\t\tsetModalMode('success');\n\t\t}\n\t};\n\n\treturn (\n\t\t<AgentBuilderProvider\n\t\t\tvalue={value}\n\t\t\tonChange={handleChange}\n\t\t\tactiveStep={activeStep}\n\t\t\tonStepChange={onStepChange ? handleStepChange : undefined}\n\t\t\tavailableTools={availableTools}\n\t\t\tavailableSubAgents={availableSubAgents}\n\t\t\tavailableIntents={availableIntents}\n\t\t\tavailableModels={availableModels}\n\t\t\tvalidation={validation}\n\t\t\tapplicationType={applicationType}\n\t\t\tdisableStepNavigation={disableStepNavigation}\n\t\t\tonCreateSubAgent={onCreateSubAgent ? handleCreateSubAgent : undefined}\n\t\t\tonFetchSubAgent={onFetchSubAgent}\n\t\t\tonUpdateSubAgent={onUpdateSubAgent}\n\t\t\tonImproveSubAgent={onImproveSubAgent}\n\t\t>\n\t\t\t<BuilderRoot data-test={rest['data-test'] ?? 'agent-builder'}>\n\t\t\t\t<AgentBuilderTopBar\n\t\t\t\t\tname={value.name}\n\t\t\t\t\tstatus={value.status}\n\t\t\t\t\tonBack={onBack ? handleBack : undefined}\n\t\t\t\t\tonDiscard={handleDiscard}\n\t\t\t\t\tonSaveDraft={handleSaveDraft}\n\t\t\t\t\tisSaving={isSaving}\n\t\t\t\t/>\n\n\t\t\t\t<Main>\n\t\t\t\t\t<Rail>\n\t\t\t\t\t\t<StepRail />\n\t\t\t\t\t</Rail>\n\t\t\t\t\t<Content>\n\t\t\t\t\t\t{isLoading ? (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\t\t\t\t\talignItems: 'center',\n\t\t\t\t\t\t\t\t\tjustifyContent: 'center',\n\t\t\t\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Spinner size=\"large\" color={COLORS.stroke.brand} />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<ContentCard>\n\t\t\t\t\t\t\t\t<StepContent />\n\t\t\t\t\t\t\t</ContentCard>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Content>\n\t\t\t\t</Main>\n\n\t\t\t\t<AgentBuilderFooter\n\t\t\t\t\tfooterHint={footerHint}\n\t\t\t\t\tonTestAgent={onTestAgent ? handleTestAgent : undefined}\n\t\t\t\t\tonGoLive={() => {\n\t\t\t\t\t\tlogAction('onGoLive');\n\t\t\t\t\t\tsetModalMode('confirm');\n\t\t\t\t\t}}\n\t\t\t\t\tisPublishing={isPublishing || publishingLocal}\n\t\t\t\t/>\n\n\t\t\t\t<GoLiveModal\n\t\t\t\t\tmode={modalMode}\n\t\t\t\t\tonClose={() => setModalMode(null)}\n\t\t\t\t\tonConfirm={handleConfirmGoLive}\n\t\t\t\t\tonSaveDraft={() => {\n\t\t\t\t\t\tsetModalMode(null);\n\t\t\t\t\t\thandleSaveDraft();\n\t\t\t\t\t}}\n\t\t\t\t\tonGoToDashboard={onGoToDashboard ? handleGoToDashboard : undefined}\n\t\t\t\t\tisPublishing={isPublishing || publishingLocal}\n\t\t\t\t/>\n\n\t\t\t\t<DiscardModal\n\t\t\t\t\topen={showLeaveConfirm}\n\t\t\t\t\tonClose={() => setShowLeaveConfirm(false)}\n\t\t\t\t\tonDiscard={handleDiscardAndLeave}\n\t\t\t\t\tonSaveDraft={handleSaveDraftAndLeave}\n\t\t\t\t\tisSaving={isSaving || savingAndLeaving}\n\t\t\t\t/>\n\n\t\t\t\t<UndoToast />\n\t\t\t</BuilderRoot>\n\t\t</AgentBuilderProvider>\n\t);\n};\n\nAgentBuilder.displayName = 'AgentBuilder';\n"],"names":["StepContent","activeStep","useAgentBuilderContext","Step1About","Step2WhenItStepsIn","Step3HowItResponds","Step4HandoverRules","AgentBuilder","props","config","onChange","onStepChange","onDiscard","onSaveDraft","onPublish","onBack","onTestAgent","onGoToDashboard","onCreateSubAgent","onFetchSubAgent","onUpdateSubAgent","onImproveSubAgent","rest","value","availableTools","availableSubAgents","availableIntents","availableModels","validation","applicationType","isSaving","isPublishing","isLoading","footerHint","disableStepNavigation","debugLog","modalMode","setModalMode","useState","publishingLocal","setPublishingLocal","showLeaveConfirm","setShowLeaveConfirm","savingAndLeaving","setSavingAndLeaving","logAction","useCallback","action","args","handleChange","patch","handleStepChange","step","handleDiscard","handleSaveDraft","handlePublish","handleBack","handleDiscardAndLeave","handleSaveDraftAndLeave","result","handleTestAgent","handleGoToDashboard","handleCreateSubAgent","draft","handleConfirmGoLive","jsx","AgentBuilderProvider","BuilderRoot","AgentBuilderTopBar","Main","Rail","StepRail","Content","Spinner","COLORS","ContentCard","AgentBuilderFooter","GoLiveModal","DiscardModal","UndoToast"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AgentBuilder.js","sources":["../../../../src/components/agent-builder/AgentBuilder.tsx"],"sourcesContent":["import React, { useCallback, useState } from 'react';\nimport { Spinner } from '@src/components/spinner';\nimport { COLORS } from '@src/constants/Theme';\nimport {\n\tAgentBuilderProps,\n\tAgentValue,\n\tSubAgentDraft,\n} from './AgentBuilder.model';\nimport {\n\tBuilderRoot,\n\tContent,\n\tContentCard,\n\tMain,\n\tRail,\n} from './AgentBuilder.styled';\nimport { AgentBuilderFooter } from './components/AgentBuilderFooter';\nimport { AgentBuilderTopBar } from './components/AgentBuilderTopBar';\nimport { DiscardModal } from './components/DiscardModal';\nimport { GoLiveModal, GoLiveModalMode } from './components/GoLiveModal';\nimport { StepRail } from './components/StepRail';\nimport { UndoToast } from './components/UndoToast';\nimport {\n\tAgentBuilderProvider,\n\tuseAgentBuilderContext,\n} from './context/AgentBuilderContext';\nimport { Step1About } from './steps/Step1About';\nimport { Step2WhenItStepsIn } from './steps/Step2WhenItStepsIn';\nimport { Step3HowItResponds } from './steps/Step3HowItResponds';\nimport { Step4HandoverRules } from './steps/Step4HandoverRules';\n\nconst StepContent: React.FC = () => {\n\tconst { activeStep } = useAgentBuilderContext();\n\tswitch (activeStep) {\n\t\tcase 'about':\n\t\t\treturn <Step1About />;\n\t\tcase 'trigger':\n\t\t\treturn <Step2WhenItStepsIn />;\n\t\tcase 'response':\n\t\t\treturn <Step3HowItResponds />;\n\t\tcase 'handover':\n\t\t\treturn <Step4HandoverRules />;\n\t\tdefault:\n\t\t\treturn null;\n\t}\n};\n\n/**\n * 4-step creation/edit wizard body for an AI agent. Presentational and\n * controlled — the consumer owns the `value`, persistence and routing.\n *\n * @example\n * <AgentBuilder\n * value={agent}\n * onChange={(patch) => setAgent({ ...agent, ...patch })}\n * availableTools={tools}\n * availableSubAgents={subAgents}\n * onDiscard={() => router.back()}\n * onSaveDraft={saveDraft}\n * onPublish={publish}\n * />\n */\nexport const AgentBuilder: React.FC<AgentBuilderProps> = (props) => {\n\tconst {\n\t\tconfig,\n\t\tonChange,\n\t\tonStepChange,\n\t\tonDiscard,\n\t\tonSaveDraft,\n\t\tonPublish,\n\t\tonBack,\n\t\tonTestAgent,\n\t\tonGoToDashboard,\n\t\tonCreateSubAgent,\n\t\tonFetchSubAgent,\n\t\tonUpdateSubAgent,\n\t\tonImproveSubAgent,\n\t\t...rest\n\t} = props;\n\tconst {\n\t\tvalue,\n\t\tactiveStep,\n\t\tavailableTools,\n\t\tavailableSubAgents,\n\t\tavailableIntents = [],\n\t\tavailableModels = [],\n\t\tvalidation,\n\t\tapplicationType,\n\t\tisSaving,\n\t\tisPublishing,\n\t\tisLoading,\n\t\tfooterHint = 'Changes don’t affect customers until you go live',\n\t\tdisableStepNavigation,\n\t\tdebugLog,\n\t} = config;\n\n\tconst [modalMode, setModalMode] = useState<GoLiveModalMode>(null);\n\tconst [publishingLocal, setPublishingLocal] = useState(false);\n\t// Back was pressed → confirm leaving (save draft / discard) before navigating.\n\tconst [showLeaveConfirm, setShowLeaveConfirm] = useState(false);\n\tconst [savingAndLeaving, setSavingAndLeaving] = useState(false);\n\n\t// Gated debug logging: each handler logs at its start only when `debugLog`.\n\tconst logAction = useCallback(\n\t\t(action: string, ...args: unknown[]) => {\n\t\t\tif (debugLog) {\n\t\t\t\t// eslint-disable-next-line no-console\n\t\t\t\tconsole.log(`[AgentBuilder] ${action}`, ...args);\n\t\t\t}\n\t\t},\n\t\t[debugLog],\n\t);\n\n\tconst handleChange = useCallback(\n\t\t(patch: Partial<AgentValue>) => {\n\t\t\tlogAction('onChange', patch);\n\t\t\tonChange(patch);\n\t\t},\n\t\t[logAction, onChange],\n\t);\n\tconst handleStepChange = useCallback(\n\t\t(step: Parameters<NonNullable<typeof onStepChange>>[0]) => {\n\t\t\tlogAction('onStepChange', step);\n\t\t\tonStepChange?.(step);\n\t\t},\n\t\t[logAction, onStepChange],\n\t);\n\tconst handleDiscard = useCallback(() => {\n\t\tlogAction('onDiscard');\n\t\tonDiscard();\n\t}, [logAction, onDiscard]);\n\tconst handleSaveDraft = useCallback(() => {\n\t\tlogAction('onSaveDraft');\n\t\treturn onSaveDraft();\n\t}, [logAction, onSaveDraft]);\n\tconst handlePublish = useCallback(() => {\n\t\tlogAction('onPublish');\n\t\treturn onPublish();\n\t}, [logAction, onPublish]);\n\t// Back opens the \"Save as draft?\" confirmation rather than leaving directly.\n\tconst handleBack = useCallback(() => {\n\t\tlogAction('onBack');\n\t\tsetShowLeaveConfirm(true);\n\t}, [logAction]);\n\n\t// Modal \"Discard\" defers to the parent's discard handler (same as the top bar).\n\tconst handleDiscardAndLeave = useCallback(() => {\n\t\tlogAction('onDiscardAndLeave');\n\t\tsetShowLeaveConfirm(false);\n\t\tonDiscard();\n\t}, [logAction, onDiscard]);\n\n\tconst handleSaveDraftAndLeave = useCallback(async () => {\n\t\tlogAction('onSaveDraftAndLeave');\n\t\tconst result = onSaveDraft();\n\t\tif (result && typeof (result as Promise<void>).then === 'function') {\n\t\t\tsetSavingAndLeaving(true);\n\t\t\ttry {\n\t\t\t\tawait result;\n\t\t\t} finally {\n\t\t\t\tsetSavingAndLeaving(false);\n\t\t\t}\n\t\t}\n\t\tsetShowLeaveConfirm(false);\n\t\tonBack?.();\n\t}, [logAction, onSaveDraft, onBack]);\n\tconst handleTestAgent = useCallback(() => {\n\t\tlogAction('onTestAgent');\n\t\tonTestAgent?.();\n\t}, [logAction, onTestAgent]);\n\tconst handleGoToDashboard = useCallback(() => {\n\t\tlogAction('onGoToDashboard');\n\t\tonGoToDashboard?.();\n\t}, [logAction, onGoToDashboard]);\n\tconst handleCreateSubAgent = useCallback(\n\t\t(draft: SubAgentDraft) => {\n\t\t\tlogAction('onCreateSubAgent', draft);\n\t\t\treturn onCreateSubAgent\n\t\t\t\t? onCreateSubAgent(draft)\n\t\t\t\t: Promise.reject(new Error('onCreateSubAgent not provided'));\n\t\t},\n\t\t[logAction, onCreateSubAgent],\n\t);\n\n\tconst handleConfirmGoLive = async () => {\n\t\tlogAction('onGoLiveConfirm');\n\t\tconst result = handlePublish();\n\t\tif (result && typeof (result as Promise<void>).then === 'function') {\n\t\t\tsetPublishingLocal(true);\n\t\t\ttry {\n\t\t\t\tawait result;\n\t\t\t\tsetModalMode('success');\n\t\t\t} finally {\n\t\t\t\tsetPublishingLocal(false);\n\t\t\t}\n\t\t} else {\n\t\t\tsetModalMode('success');\n\t\t}\n\t};\n\n\treturn (\n\t\t<AgentBuilderProvider\n\t\t\tvalue={value}\n\t\t\tonChange={handleChange}\n\t\t\tactiveStep={activeStep}\n\t\t\tonStepChange={onStepChange ? handleStepChange : undefined}\n\t\t\tavailableTools={availableTools}\n\t\t\tavailableSubAgents={availableSubAgents}\n\t\t\tavailableIntents={availableIntents}\n\t\t\tavailableModels={availableModels}\n\t\t\tvalidation={validation}\n\t\t\tapplicationType={applicationType}\n\t\t\tdisableStepNavigation={disableStepNavigation}\n\t\t\tonCreateSubAgent={onCreateSubAgent ? handleCreateSubAgent : undefined}\n\t\t\tonFetchSubAgent={onFetchSubAgent}\n\t\t\tonUpdateSubAgent={onUpdateSubAgent}\n\t\t\tonImproveSubAgent={onImproveSubAgent}\n\t\t>\n\t\t\t<BuilderRoot data-test={rest['data-test'] ?? 'agent-builder'}>\n\t\t\t\t<AgentBuilderTopBar\n\t\t\t\t\tname={value.name}\n\t\t\t\t\tstatus={value.status}\n\t\t\t\t\tonBack={onBack ? handleBack : undefined}\n\t\t\t\t\tonDiscard={handleDiscard}\n\t\t\t\t\tonSaveDraft={handleSaveDraftAndLeave}\n\t\t\t\t\tisSaving={isSaving || savingAndLeaving}\n\t\t\t\t/>\n\n\t\t\t\t<Main>\n\t\t\t\t\t<Rail>\n\t\t\t\t\t\t<StepRail />\n\t\t\t\t\t</Rail>\n\t\t\t\t\t<Content>\n\t\t\t\t\t\t{isLoading ? (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\t\t\t\t\talignItems: 'center',\n\t\t\t\t\t\t\t\t\tjustifyContent: 'center',\n\t\t\t\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Spinner size=\"large\" color={COLORS.stroke.brand} />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<ContentCard>\n\t\t\t\t\t\t\t\t<StepContent />\n\t\t\t\t\t\t\t</ContentCard>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Content>\n\t\t\t\t</Main>\n\n\t\t\t\t<AgentBuilderFooter\n\t\t\t\t\tfooterHint={footerHint}\n\t\t\t\t\tonTestAgent={onTestAgent ? handleTestAgent : undefined}\n\t\t\t\t\tonGoLive={() => {\n\t\t\t\t\t\tlogAction('onGoLive');\n\t\t\t\t\t\tsetModalMode('confirm');\n\t\t\t\t\t}}\n\t\t\t\t\tisPublishing={isPublishing || publishingLocal}\n\t\t\t\t/>\n\n\t\t\t\t<GoLiveModal\n\t\t\t\t\tmode={modalMode}\n\t\t\t\t\tonClose={() => setModalMode(null)}\n\t\t\t\t\tonConfirm={handleConfirmGoLive}\n\t\t\t\t\tonSaveDraft={() => {\n\t\t\t\t\t\tsetModalMode(null);\n\t\t\t\t\t\thandleSaveDraft();\n\t\t\t\t\t}}\n\t\t\t\t\tonGoToDashboard={onGoToDashboard ? handleGoToDashboard : undefined}\n\t\t\t\t\tisPublishing={isPublishing || publishingLocal}\n\t\t\t\t/>\n\n\t\t\t\t<DiscardModal\n\t\t\t\t\topen={showLeaveConfirm}\n\t\t\t\t\tonClose={() => setShowLeaveConfirm(false)}\n\t\t\t\t\tonDiscard={handleDiscardAndLeave}\n\t\t\t\t\tonSaveDraft={handleSaveDraftAndLeave}\n\t\t\t\t\tisSaving={isSaving || savingAndLeaving}\n\t\t\t\t/>\n\n\t\t\t\t<UndoToast />\n\t\t\t</BuilderRoot>\n\t\t</AgentBuilderProvider>\n\t);\n};\n\nAgentBuilder.displayName = 'AgentBuilder';\n"],"names":["StepContent","activeStep","useAgentBuilderContext","Step1About","Step2WhenItStepsIn","Step3HowItResponds","Step4HandoverRules","AgentBuilder","props","config","onChange","onStepChange","onDiscard","onSaveDraft","onPublish","onBack","onTestAgent","onGoToDashboard","onCreateSubAgent","onFetchSubAgent","onUpdateSubAgent","onImproveSubAgent","rest","value","availableTools","availableSubAgents","availableIntents","availableModels","validation","applicationType","isSaving","isPublishing","isLoading","footerHint","disableStepNavigation","debugLog","modalMode","setModalMode","useState","publishingLocal","setPublishingLocal","showLeaveConfirm","setShowLeaveConfirm","savingAndLeaving","setSavingAndLeaving","logAction","useCallback","action","args","handleChange","patch","handleStepChange","step","handleDiscard","handleSaveDraft","handlePublish","handleBack","handleDiscardAndLeave","handleSaveDraftAndLeave","result","handleTestAgent","handleGoToDashboard","handleCreateSubAgent","draft","handleConfirmGoLive","jsx","AgentBuilderProvider","BuilderRoot","AgentBuilderTopBar","Main","Rail","StepRail","Content","Spinner","COLORS","ContentCard","AgentBuilderFooter","GoLiveModal","DiscardModal","UndoToast"],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ export type AgentTool = AgentToolDoc;
|
|
|
16
16
|
export type AgentTriggerValue = Trigger;
|
|
17
17
|
/**
|
|
18
18
|
* The data captured by the "Create sub-agent" drawer. The consumer persists it
|
|
19
|
-
* (as an `
|
|
19
|
+
* (as an `is_entry: false` agent) and returns the created {@link SubAgentRef}.
|
|
20
20
|
*/
|
|
21
21
|
export interface SubAgentDraft {
|
|
22
22
|
name: string;
|
|
@@ -101,6 +101,12 @@ export declare const SideSectionHeader: import('styled-components').StyledCompon
|
|
|
101
101
|
export declare const AddIconButton: import('styled-components').StyledComponent<"button", any, {
|
|
102
102
|
className: "bik-add-icon-button";
|
|
103
103
|
}, "className">;
|
|
104
|
+
export declare const SourceButtonRow: import('styled-components').StyledComponent<"div", any, {
|
|
105
|
+
className: "bik-source-button-row";
|
|
106
|
+
}, "className">;
|
|
107
|
+
export declare const SourceButton: import('styled-components').StyledComponent<"button", any, {
|
|
108
|
+
className: "bik-source-button";
|
|
109
|
+
}, "className">;
|
|
104
110
|
export declare const SelectableRow: import('styled-components').StyledComponent<"div", any, {
|
|
105
111
|
className: "bik-selectable-row";
|
|
106
112
|
}, "className">;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import e from "styled-components";
|
|
2
2
|
import { COLORS as t } from "../../constants/Theme.js";
|
|
3
|
-
const
|
|
3
|
+
const n = e.div.attrs({ className: "bik-builder-root" })`
|
|
4
4
|
display: flex;
|
|
5
5
|
flex-direction: column;
|
|
6
6
|
height: 100%;
|
|
@@ -110,7 +110,7 @@ const s = e.div.attrs({ className: "bik-builder-root" })`
|
|
|
110
110
|
border-left: 1px dashed #e0e0e0;
|
|
111
111
|
pointer-events: none;
|
|
112
112
|
}
|
|
113
|
-
`,
|
|
113
|
+
`, h = e.div.attrs({ className: "bik-step-badge" })`
|
|
114
114
|
width: 20px;
|
|
115
115
|
height: 20px;
|
|
116
116
|
flex-shrink: 0;
|
|
@@ -123,7 +123,7 @@ const s = e.div.attrs({ className: "bik-builder-root" })`
|
|
|
123
123
|
font-weight: 600;
|
|
124
124
|
background: ${(a) => a.state === "complete" ? t.content.brand : a.state === "active" ? t.background.brandTint : "#F0F0F0"};
|
|
125
125
|
color: ${(a) => a.state === "complete" ? t.content.primaryInverse : a.state === "active" ? t.content.brand : t.content.placeholder};
|
|
126
|
-
`,
|
|
126
|
+
`, k = e.div.attrs({
|
|
127
127
|
className: "bik-section-header-wrap"
|
|
128
128
|
})`
|
|
129
129
|
display: flex;
|
|
@@ -235,14 +235,14 @@ const s = e.div.attrs({ className: "bik-builder-root" })`
|
|
|
235
235
|
@media (max-width: 1100px) {
|
|
236
236
|
grid-template-columns: 1fr;
|
|
237
237
|
}
|
|
238
|
-
`,
|
|
238
|
+
`, T = e.div.attrs({ className: "bik-step3-main" })`
|
|
239
239
|
display: flex;
|
|
240
240
|
flex-direction: column;
|
|
241
|
-
`,
|
|
241
|
+
`, z = e.div.attrs({ className: "bik-step3-side" })`
|
|
242
242
|
display: flex;
|
|
243
243
|
flex-direction: column;
|
|
244
244
|
gap: 24px;
|
|
245
|
-
`,
|
|
245
|
+
`, I = e.div.attrs({ className: "bik-side-section" })`
|
|
246
246
|
display: flex;
|
|
247
247
|
flex-direction: column;
|
|
248
248
|
gap: 8px;
|
|
@@ -269,7 +269,28 @@ const s = e.div.attrs({ className: "bik-builder-root" })`
|
|
|
269
269
|
&:hover {
|
|
270
270
|
background: ${t.surface.subdued};
|
|
271
271
|
}
|
|
272
|
-
`,
|
|
272
|
+
`, L = e.div.attrs({
|
|
273
|
+
className: "bik-source-button-row"
|
|
274
|
+
})`
|
|
275
|
+
display: flex;
|
|
276
|
+
gap: 8px;
|
|
277
|
+
`, P = e.button.attrs({
|
|
278
|
+
className: "bik-source-button"
|
|
279
|
+
})`
|
|
280
|
+
display: flex;
|
|
281
|
+
align-items: center;
|
|
282
|
+
gap: 8px;
|
|
283
|
+
padding: 6px;
|
|
284
|
+
border: 1px solid ${t.stroke.primary};
|
|
285
|
+
border-radius: 4px;
|
|
286
|
+
background: ${t.surface.standard};
|
|
287
|
+
cursor: pointer;
|
|
288
|
+
height: 28px;
|
|
289
|
+
|
|
290
|
+
&:hover {
|
|
291
|
+
background: ${t.surface.subdued};
|
|
292
|
+
}
|
|
293
|
+
`, D = e.div.attrs({
|
|
273
294
|
className: "bik-selectable-row"
|
|
274
295
|
})`
|
|
275
296
|
display: flex;
|
|
@@ -278,9 +299,26 @@ const s = e.div.attrs({ className: "bik-builder-root" })`
|
|
|
278
299
|
padding: 8px 12px;
|
|
279
300
|
border: 1px solid ${t.stroke.primary};
|
|
280
301
|
border-radius: 4px;
|
|
281
|
-
|
|
302
|
+
height: 40px;
|
|
303
|
+
min-width: 0;
|
|
304
|
+
overflow: hidden;
|
|
305
|
+
|
|
306
|
+
/* Leading icon (e.g. tool source) keeps its size; the label takes the rest. */
|
|
307
|
+
& > svg {
|
|
308
|
+
flex-shrink: 0;
|
|
309
|
+
}
|
|
310
|
+
`, O = e.div.attrs({ className: "bik-row-text" })`
|
|
282
311
|
flex: 1;
|
|
283
312
|
min-width: 0;
|
|
313
|
+
overflow: hidden;
|
|
314
|
+
|
|
315
|
+
/* Truncate the label to one line with an ellipsis. */
|
|
316
|
+
& > * {
|
|
317
|
+
display: block;
|
|
318
|
+
overflow: hidden;
|
|
319
|
+
white-space: nowrap;
|
|
320
|
+
text-overflow: ellipsis;
|
|
321
|
+
}
|
|
284
322
|
`;
|
|
285
323
|
e.button.attrs({
|
|
286
324
|
className: "bik-row-remove-button"
|
|
@@ -293,19 +331,19 @@ e.button.attrs({
|
|
|
293
331
|
padding: 0;
|
|
294
332
|
cursor: pointer;
|
|
295
333
|
`;
|
|
296
|
-
const
|
|
334
|
+
const W = e.div.attrs({ className: "bik-row-actions" })`
|
|
297
335
|
display: flex;
|
|
298
336
|
align-items: center;
|
|
299
337
|
gap: 4px;
|
|
300
338
|
flex-shrink: 0;
|
|
301
|
-
`,
|
|
339
|
+
`, G = e.span.attrs({
|
|
302
340
|
className: "bik-row-action-divider"
|
|
303
341
|
})`
|
|
304
342
|
width: 1px;
|
|
305
343
|
align-self: stretch;
|
|
306
344
|
margin: 4px 0;
|
|
307
345
|
background: ${t.stroke.primary};
|
|
308
|
-
`,
|
|
346
|
+
`, q = e.button.attrs({
|
|
309
347
|
className: "bik-row-menu-button"
|
|
310
348
|
})`
|
|
311
349
|
display: flex;
|
|
@@ -322,32 +360,32 @@ const D = e.div.attrs({ className: "bik-row-actions" })`
|
|
|
322
360
|
&:hover {
|
|
323
361
|
background: ${t.surface.subdued};
|
|
324
362
|
}
|
|
325
|
-
`,
|
|
363
|
+
`, E = e.div.attrs({ className: "bik-modal-body" })`
|
|
326
364
|
padding: 24px;
|
|
327
365
|
display: flex;
|
|
328
366
|
flex-direction: column;
|
|
329
367
|
align-items: center;
|
|
330
368
|
gap: 16px;
|
|
331
369
|
text-align: center;
|
|
332
|
-
`,
|
|
370
|
+
`, J = e.div.attrs({ className: "bik-modal-icon" })`
|
|
333
371
|
display: flex;
|
|
334
372
|
align-items: center;
|
|
335
373
|
justify-content: center;
|
|
336
374
|
margin-bottom: 4px;
|
|
337
|
-
`,
|
|
375
|
+
`, K = e.div.attrs({
|
|
338
376
|
className: "bik-modal-actions"
|
|
339
377
|
})`
|
|
340
378
|
display: flex;
|
|
341
379
|
gap: 12px;
|
|
342
380
|
width: 100%;
|
|
343
|
-
`,
|
|
381
|
+
`, Q = e.div.attrs({
|
|
344
382
|
className: "bik-subagent-scrim"
|
|
345
383
|
})`
|
|
346
384
|
position: fixed;
|
|
347
385
|
inset: 0;
|
|
348
386
|
background: rgba(0, 0, 0, 0.32);
|
|
349
387
|
z-index: 1000;
|
|
350
|
-
`,
|
|
388
|
+
`, U = e.div.attrs({
|
|
351
389
|
className: "bik-subagent-panel"
|
|
352
390
|
})`
|
|
353
391
|
position: fixed;
|
|
@@ -362,7 +400,7 @@ const D = e.div.attrs({ className: "bik-row-actions" })`
|
|
|
362
400
|
box-shadow: -8px 0 24px rgba(0, 0, 0, 0.12);
|
|
363
401
|
z-index: 1001;
|
|
364
402
|
box-sizing: border-box;
|
|
365
|
-
`,
|
|
403
|
+
`, V = e.div.attrs({
|
|
366
404
|
className: "bik-subagent-panel-header"
|
|
367
405
|
})`
|
|
368
406
|
display: flex;
|
|
@@ -372,14 +410,14 @@ const D = e.div.attrs({ className: "bik-row-actions" })`
|
|
|
372
410
|
padding: 16px;
|
|
373
411
|
border-bottom: 1px solid ${t.stroke.primary};
|
|
374
412
|
flex-shrink: 0;
|
|
375
|
-
`,
|
|
413
|
+
`, X = e.div.attrs({
|
|
376
414
|
className: "bik-subagent-panel-header-text"
|
|
377
415
|
})`
|
|
378
416
|
display: flex;
|
|
379
417
|
flex-direction: column;
|
|
380
418
|
gap: 4px;
|
|
381
419
|
min-width: 0;
|
|
382
|
-
`,
|
|
420
|
+
`, Y = e.div.attrs({
|
|
383
421
|
className: "bik-subagent-panel-body"
|
|
384
422
|
})`
|
|
385
423
|
flex: 1;
|
|
@@ -389,7 +427,7 @@ const D = e.div.attrs({ className: "bik-row-actions" })`
|
|
|
389
427
|
display: flex;
|
|
390
428
|
flex-direction: column;
|
|
391
429
|
gap: 20px;
|
|
392
|
-
`,
|
|
430
|
+
`, Z = e.div.attrs({
|
|
393
431
|
className: "bik-subagent-panel-footer"
|
|
394
432
|
})`
|
|
395
433
|
display: flex;
|
|
@@ -399,7 +437,7 @@ const D = e.div.attrs({ className: "bik-row-actions" })`
|
|
|
399
437
|
min-height: 48px;
|
|
400
438
|
border-top: 1px solid ${t.stroke.primary};
|
|
401
439
|
flex-shrink: 0;
|
|
402
|
-
`,
|
|
440
|
+
`, _ = e.button.attrs({
|
|
403
441
|
className: "bik-subagent-close"
|
|
404
442
|
})`
|
|
405
443
|
display: flex;
|
|
@@ -431,7 +469,7 @@ export {
|
|
|
431
469
|
N as AiTextAreaInput,
|
|
432
470
|
w as AiTextAreaShell,
|
|
433
471
|
d as BackButton,
|
|
434
|
-
|
|
472
|
+
n as BuilderRoot,
|
|
435
473
|
$ as CardRow,
|
|
436
474
|
j as ChipCloseButton,
|
|
437
475
|
B as ChipWrap,
|
|
@@ -444,33 +482,35 @@ export {
|
|
|
444
482
|
g as FooterHint,
|
|
445
483
|
R as IntentChip,
|
|
446
484
|
l as Main,
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
485
|
+
K as ModalActions,
|
|
486
|
+
E as ModalBody,
|
|
487
|
+
J as ModalIcon,
|
|
450
488
|
S as RadioCard,
|
|
451
489
|
A as RadioCardText,
|
|
452
490
|
c as Rail,
|
|
453
491
|
f as RailItem,
|
|
454
492
|
u as RailList,
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
493
|
+
G as RowActionDivider,
|
|
494
|
+
W as RowActions,
|
|
495
|
+
q as RowMenuButton,
|
|
496
|
+
O as RowText,
|
|
497
|
+
k as SectionHeaderWrap,
|
|
498
|
+
D as SelectableRow,
|
|
499
|
+
I as SideSection,
|
|
462
500
|
H as SideSectionHeader,
|
|
501
|
+
P as SourceButton,
|
|
502
|
+
L as SourceButtonRow,
|
|
463
503
|
F as Step3Grid,
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
504
|
+
T as Step3Main,
|
|
505
|
+
z as Step3Side,
|
|
506
|
+
h as StepBadge,
|
|
507
|
+
_ as SubAgentCloseButton,
|
|
508
|
+
U as SubAgentPanel,
|
|
509
|
+
Y as SubAgentPanelBody,
|
|
510
|
+
Z as SubAgentPanelFooter,
|
|
511
|
+
V as SubAgentPanelHeader,
|
|
512
|
+
X as SubAgentPanelHeaderText,
|
|
513
|
+
Q as SubAgentScrim,
|
|
474
514
|
r as TopBar,
|
|
475
515
|
o as TopBarSide
|
|
476
516
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentBuilder.styled.js","sources":["../../../../src/components/agent-builder/AgentBuilder.styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { COLORS } from '@src/constants/Theme';\n\nexport const BuilderRoot = styled.div.attrs({ className: 'bik-builder-root' })`\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 100%;\n\twidth: 100%;\n\tmin-height: 0;\n\tbackground: ${COLORS.surface.standard};\n`;\n\nexport const TopBar = styled.div.attrs({ className: 'bik-top-bar' })`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\theight: 56px;\n\tpadding: 12px 16px;\n\tborder-bottom: 1px solid ${COLORS.stroke.primary};\n\tflex-shrink: 0;\n`;\n\nexport const TopBarSide = styled.div.attrs({ className: 'bik-top-bar-side' })`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 12px;\n`;\n\nexport const BackButton = styled.button.attrs({ className: 'bik-back-button' })`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 28px;\n\theight: 28px;\n\tborder: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tcursor: pointer;\n\tborder-radius: 4px;\n\n\t&:hover {\n\t\tbackground: ${COLORS.surface.subdued};\n\t}\n`;\n\nexport const Main = styled.div.attrs({ className: 'bik-main' })`\n\tdisplay: flex;\n\tflex: 1;\n\tmin-height: 0;\n`;\n\nexport const Rail = styled.div.attrs({ className: 'bik-rail' })`\n\twidth: 234px;\n\tflex-shrink: 0;\n\tborder-right: 1px solid ${COLORS.stroke.primary};\n\tpadding: 16px;\n\toverflow-y: auto;\n\tbackground: ${COLORS.surface.standard};\n`;\n\nexport const Content = styled.div.attrs({ className: 'bik-content' })`\n\tflex: 1;\n\tmin-width: 0;\n\toverflow-y: auto;\n\tpadding: 16px;\n\tbackground: ${COLORS.surface.standard};\n`;\n\nexport const ContentCard = styled.div.attrs({ className: 'bik-content-card' })`\n\tborder: 1px solid ${COLORS.stroke.primary};\n\tborder-radius: 8px;\n\tpadding: 24px;\n\tmin-height: 100%;\n\tbox-sizing: border-box;\n`;\n\nexport const Footer = styled.div.attrs({ className: 'bik-footer' })`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\tmin-height: 56px;\n\tpadding: 12px 16px;\n\tborder-top: 1px solid ${COLORS.stroke.primary};\n\tflex-shrink: 0;\n`;\n\nexport const FooterHint = styled.div.attrs({ className: 'bik-footer-hint' })`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 6px;\n`;\n\nexport const FooterActions = styled.div.attrs({\n\tclassName: 'bik-footer-actions',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n`;\n\n// ── Step rail items ─────────────────────────────────────────────────────────\n\nexport const RailList = styled.div.attrs({ className: 'bik-rail-list' })`\n\tdisplay: flex;\n\tflex-direction: column;\n`;\n\nexport const RailItem = styled.button.attrs({ className: 'bik-rail-item' })`\n\tposition: relative;\n\tdisplay: flex;\n\talign-items: flex-start;\n\tgap: 8px;\n\t/* Bottom padding leaves room for the connector down to the next badge. */\n\tpadding: 0 0 24px;\n\tborder: none;\n\tbackground: transparent;\n\tcursor: pointer;\n\ttext-align: left;\n\twidth: 100%;\n\n\t&:last-child {\n\t\tpadding-bottom: 0;\n\t}\n\n\t&:disabled {\n\t\tcursor: default;\n\t}\n\n\t/* Dashed connector line between consecutive step badges (centered on the badge). */\n\t&:not(:last-child)::after {\n\t\tcontent: '';\n\t\tposition: absolute;\n\t\tleft: 9px;\n\t\ttop: 20px;\n\t\twidth: 0;\n\t\theight: 24px;\n\t\tborder-left: 1px dashed #e0e0e0;\n\t\tpointer-events: none;\n\t}\n`;\n\nexport const StepBadge = styled.div.attrs({ className: 'bik-step-badge' })<{\n\tstate: 'active' | 'complete' | 'inactive';\n}>`\n\twidth: 20px;\n\theight: 20px;\n\tflex-shrink: 0;\n\tborder-radius: 50%;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tfont-family: Inter;\n\tfont-size: 12px;\n\tfont-weight: 600;\n\tbackground: ${(p) =>\n\t\tp.state === 'complete'\n\t\t\t? COLORS.content.brand\n\t\t\t: p.state === 'active'\n\t\t\t? COLORS.background.brandTint\n\t\t\t: '#F0F0F0'};\n\tcolor: ${(p) =>\n\t\tp.state === 'complete'\n\t\t\t? COLORS.content.primaryInverse\n\t\t\t: p.state === 'active'\n\t\t\t? COLORS.content.brand\n\t\t\t: COLORS.content.placeholder};\n`;\n\n// ── Shared step pieces ──────────────────────────────────────────────────────\n\nexport const SectionHeaderWrap = styled.div.attrs({\n\tclassName: 'bik-section-header-wrap',\n})`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 4px;\n\tmargin-bottom: 20px;\n`;\n\nexport const FieldBlock = styled.div.attrs({ className: 'bik-field-block' })`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 8px;\n\tmargin-bottom: 20px;\n`;\n\nexport const FieldLabelRow = styled.div.attrs({\n\tclassName: 'bik-field-label-row',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n`;\n\n// ── Labelled text area ──────────────────────────────────────────────────────\n\nexport const AiTextAreaShell = styled.div.attrs({\n\tclassName: 'bik-ai-text-area-shell',\n})<{\n\tfocused?: boolean;\n\tminHeight?: string;\n}>`\n\tdisplay: flex;\n\tflex-direction: column;\n\tborder: 1px solid\n\t\t${(p) => (p.focused ? COLORS.stroke.brand : COLORS.stroke.primary)};\n\tborder-radius: 4px;\n\tpadding: 8px 12px;\n\tgap: 8px;\n\tmin-height: ${(p) => p.minHeight ?? '120px'};\n\tbackground: ${COLORS.surface.standard};\n`;\n\nexport const AiTextAreaInput = styled.textarea.attrs({\n\tclassName: 'bik-ai-text-area-input',\n})`\n\tflex: 1;\n\tborder: none;\n\toutline: none;\n\tresize: none;\n\tfont-family: Inter;\n\tfont-size: 14px;\n\tline-height: 20px;\n\tcolor: ${COLORS.content.primary};\n\tbackground: transparent;\n\tmin-height: 60px;\n\n\t&::placeholder {\n\t\tcolor: ${COLORS.content.placeholder};\n\t}\n`;\n\n// ── Radio card (Step 2 / Step 4 option cards) ───────────────────────────────\n\nexport const CardRow = styled.div.attrs({ className: 'bik-card-row' })`\n\tdisplay: flex;\n\tgap: 12px;\n\tmargin-bottom: 16px;\n`;\n\nexport const RadioCard = styled.button.attrs({ className: 'bik-radio-card' })<{\n\tselected?: boolean;\n}>`\n\tflex: 1;\n\tdisplay: flex;\n\talign-items: flex-start;\n\tgap: 12px;\n\tpadding: 16px;\n\tborder: 1px solid\n\t\t${(p) => (p.selected ? COLORS.stroke.brand : COLORS.stroke.primary)};\n\tbackground: ${(p) =>\n\t\tp.selected ? COLORS.background.brandLight : COLORS.surface.standard};\n\tborder-radius: 8px;\n\tcursor: pointer;\n\ttext-align: left;\n\twidth: 100%;\n`;\n\nexport const RadioCardText = styled.div.attrs({\n\tclassName: 'bik-radio-card-text',\n})`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 4px;\n`;\n\n// ── Intent chips (Step 2) ───────────────────────────────────────────────────\n\nexport const ChipWrap = styled.div.attrs({ className: 'bik-chip-wrap' })`\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\talign-items: center;\n\tgap: 8px;\n`;\n\nexport const IntentChip = styled.div.attrs({ className: 'bik-intent-chip' })`\n\tdisplay: inline-flex;\n\talign-items: center;\n\tgap: 6px;\n\tpadding: 4px 8px;\n\tborder: 1px solid ${COLORS.stroke.primary};\n\tborder-radius: 4px;\n\tbackground: ${COLORS.surface.standard};\n`;\n\nexport const ChipCloseButton = styled.button.attrs({\n\tclassName: 'bik-chip-close-button',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tborder: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tcursor: pointer;\n`;\n\nexport const AddChipButton = styled.button.attrs({\n\tclassName: 'bik-add-chip-button',\n})`\n\tdisplay: inline-flex;\n\talign-items: center;\n\tgap: 6px;\n\tpadding: 4px 8px;\n\tborder: 1px dashed ${COLORS.stroke.primary};\n\tborder-radius: 4px;\n\tbackground: transparent;\n\tcursor: pointer;\n`;\n\n// ── Step 3 two-column layout + tool / sub-agent rows ────────────────────────\n\nexport const Step3Grid = styled.div.attrs({ className: 'bik-step3-grid' })`\n\tdisplay: grid;\n\tgrid-template-columns: minmax(0, 1fr) 300px;\n\tgap: 24px;\n\n\t@media (max-width: 1100px) {\n\t\tgrid-template-columns: 1fr;\n\t}\n`;\n\nexport const Step3Main = styled.div.attrs({ className: 'bik-step3-main' })`\n\tdisplay: flex;\n\tflex-direction: column;\n`;\n\nexport const Step3Side = styled.div.attrs({ className: 'bik-step3-side' })`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 24px;\n`;\n\nexport const SideSection = styled.div.attrs({ className: 'bik-side-section' })`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 8px;\n`;\n\nexport const SideSectionHeader = styled.div.attrs({\n\tclassName: 'bik-side-section-header',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n`;\n\nexport const AddIconButton = styled.button.attrs({\n\tclassName: 'bik-add-icon-button',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 24px;\n\theight: 24px;\n\tborder: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tcursor: pointer;\n\tborder-radius: 4px;\n\n\t&:hover {\n\t\tbackground: ${COLORS.surface.subdued};\n\t}\n`;\n\nexport const SelectableRow = styled.div.attrs({\n\tclassName: 'bik-selectable-row',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n\tpadding: 8px 12px;\n\tborder: 1px solid ${COLORS.stroke.primary};\n\tborder-radius: 4px;\n`;\n\nexport const RowText = styled.div.attrs({ className: 'bik-row-text' })`\n\tflex: 1;\n\tmin-width: 0;\n`;\n\nexport const RowRemoveButton = styled.button.attrs({\n\tclassName: 'bik-row-remove-button',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tborder: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tcursor: pointer;\n`;\n\n// ── Per-row actions (always-visible edit / delete icon buttons) ───────────────\n\nexport const RowActions = styled.div.attrs({ className: 'bik-row-actions' })`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 4px;\n\tflex-shrink: 0;\n`;\n\n// Vertical separator between the edit and delete icon buttons.\nexport const RowActionDivider = styled.span.attrs({\n\tclassName: 'bik-row-action-divider',\n})`\n\twidth: 1px;\n\talign-self: stretch;\n\tmargin: 4px 0;\n\tbackground: ${COLORS.stroke.primary};\n`;\n\nexport const RowMenuButton = styled.button.attrs({\n\tclassName: 'bik-row-menu-button',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 24px;\n\theight: 24px;\n\tborder: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tcursor: pointer;\n\tborder-radius: 4px;\n\n\t&:hover {\n\t\tbackground: ${COLORS.surface.subdued};\n\t}\n`;\n\n// ── Go-live modal ───────────────────────────────────────────────────────────\n\nexport const ModalBody = styled.div.attrs({ className: 'bik-modal-body' })`\n\tpadding: 24px;\n\tdisplay: flex;\n\tflex-direction: column;\n\talign-items: center;\n\tgap: 16px;\n\ttext-align: center;\n`;\n\nexport const ModalIcon = styled.div.attrs({ className: 'bik-modal-icon' })`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tmargin-bottom: 4px;\n`;\n\nexport const ModalActions = styled.div.attrs({\n\tclassName: 'bik-modal-actions',\n})`\n\tdisplay: flex;\n\tgap: 12px;\n\twidth: 100%;\n`;\n\n// ── Create sub-agent drawer ─────────────────────────────────────────────────\n\nexport const SubAgentScrim = styled.div.attrs({\n\tclassName: 'bik-subagent-scrim',\n})`\n\tposition: fixed;\n\tinset: 0;\n\tbackground: rgba(0, 0, 0, 0.32);\n\tz-index: 1000;\n`;\n\nexport const SubAgentPanel = styled.div.attrs({\n\tclassName: 'bik-subagent-panel',\n})`\n\tposition: fixed;\n\ttop: 0;\n\tright: 0;\n\theight: 100%;\n\twidth: 421px;\n\tmax-width: 100%;\n\tdisplay: flex;\n\tflex-direction: column;\n\tbackground: ${COLORS.surface.standard};\n\tbox-shadow: -8px 0 24px rgba(0, 0, 0, 0.12);\n\tz-index: 1001;\n\tbox-sizing: border-box;\n`;\n\nexport const SubAgentPanelHeader = styled.div.attrs({\n\tclassName: 'bik-subagent-panel-header',\n})`\n\tdisplay: flex;\n\talign-items: flex-start;\n\tjustify-content: space-between;\n\tgap: 12px;\n\tpadding: 16px;\n\tborder-bottom: 1px solid ${COLORS.stroke.primary};\n\tflex-shrink: 0;\n`;\n\nexport const SubAgentPanelHeaderText = styled.div.attrs({\n\tclassName: 'bik-subagent-panel-header-text',\n})`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 4px;\n\tmin-width: 0;\n`;\n\nexport const SubAgentPanelBody = styled.div.attrs({\n\tclassName: 'bik-subagent-panel-body',\n})`\n\tflex: 1;\n\tmin-height: 0;\n\toverflow-y: auto;\n\tpadding: 16px;\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 20px;\n`;\n\nexport const SubAgentPanelFooter = styled.div.attrs({\n\tclassName: 'bik-subagent-panel-footer',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n\tpadding: 8px 12px;\n\tmin-height: 48px;\n\tborder-top: 1px solid ${COLORS.stroke.primary};\n\tflex-shrink: 0;\n`;\n\nexport const SubAgentCloseButton = styled.button.attrs({\n\tclassName: 'bik-subagent-close',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 24px;\n\theight: 24px;\n\tborder: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tcursor: pointer;\n\tborder-radius: 4px;\n\tflex-shrink: 0;\n\n\t&:hover {\n\t\tbackground: ${COLORS.surface.subdued};\n\t}\n`;\n\n/** Inline action row inside a rich field (e.g. \"Improve with AI\"). */\nexport const FieldActionRow = styled.div.attrs({\n\tclassName: 'bik-field-action-row',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n`;\n"],"names":["BuilderRoot","styled","COLORS","TopBar","TopBarSide","BackButton","Main","Rail","Content","ContentCard","Footer","FooterHint","FooterActions","RailList","RailItem","StepBadge","p","SectionHeaderWrap","FieldBlock","FieldLabelRow","AiTextAreaShell","AiTextAreaInput","CardRow","RadioCard","RadioCardText","ChipWrap","IntentChip","ChipCloseButton","AddChipButton","Step3Grid","Step3Main","Step3Side","SideSection","SideSectionHeader","AddIconButton","SelectableRow","RowText","RowActions","RowActionDivider","RowMenuButton","ModalBody","ModalIcon","ModalActions","SubAgentScrim","SubAgentPanel","SubAgentPanelHeader","SubAgentPanelHeaderText","SubAgentPanelBody","SubAgentPanelFooter","SubAgentCloseButton"],"mappings":";;AAGO,MAAMA,IAAcC,EAAO,IAAI,MAAM,EAAE,WAAW,oBAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,eAM9DC,EAAO,QAAQ,QAAQ;AAAA,GAGzBC,IAASF,EAAO,IAAI,MAAM,EAAE,WAAW,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAMvCC,EAAO,OAAO,OAAO;AAAA;AAAA,GAIpCE,IAAaH,EAAO,IAAI,MAAM,EAAE,WAAW,oBAAoB;AAAA;AAAA;AAAA;AAAA,GAM/DI,IAAaJ,EAAO,OAAO,MAAM,EAAE,WAAW,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAa9DC,EAAO,QAAQ,OAAO;AAAA;AAAA,GAIzBI,IAAOL,EAAO,IAAI,MAAM,EAAE,WAAW,YAAY;AAAA;AAAA;AAAA;AAAA,GAMjDM,IAAON,EAAO,IAAI,MAAM,EAAE,WAAW,YAAY;AAAA;AAAA;AAAA,2BAGnCC,EAAO,OAAO,OAAO;AAAA;AAAA;AAAA,eAGjCA,EAAO,QAAQ,QAAQ;AAAA,GAGzBM,IAAUP,EAAO,IAAI,MAAM,EAAE,WAAW,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA,eAKrDC,EAAO,QAAQ,QAAQ;AAAA,GAGzBO,IAAcR,EAAO,IAAI,MAAM,EAAE,WAAW,oBAAoB;AAAA,qBACxDC,EAAO,OAAO,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,GAO7BQ,IAAST,EAAO,IAAI,MAAM,EAAE,WAAW,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yBAMzCC,EAAO,OAAO,OAAO;AAAA;AAAA,GAIjCS,IAAaV,EAAO,IAAI,MAAM,EAAE,WAAW,mBAAmB;AAAA;AAAA;AAAA;AAAA,GAM9DW,IAAgBX,EAAO,IAAI,MAAM;AAAA,EAC7C,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA,GAQYY,IAAWZ,EAAO,IAAI,MAAM,EAAE,WAAW,iBAAiB;AAAA;AAAA;AAAA,GAK1Da,IAAWb,EAAO,OAAO,MAAM,EAAE,WAAW,iBAAiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAkC7Dc,IAAYd,EAAO,IAAI,MAAM,EAAE,WAAW,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,eAa1D,CAACe,MACdA,EAAE,UAAU,aACTd,EAAO,QAAQ,QACfc,EAAE,UAAU,WACZd,EAAO,WAAW,YAClB,SAAS;AAAA,UACJ,CAACc,MACTA,EAAE,UAAU,aACTd,EAAO,QAAQ,iBACfc,EAAE,UAAU,WACZd,EAAO,QAAQ,QACfA,EAAO,QAAQ,WAAW;AAAA,GAKlBe,IAAoBhB,EAAO,IAAI,MAAM;AAAA,EACjD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,GAOYiB,IAAajB,EAAO,IAAI,MAAM,EAAE,WAAW,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA,GAO9DkB,IAAgBlB,EAAO,IAAI,MAAM;AAAA,EAC7C,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA,GAQYmB,IAAkBnB,EAAO,IAAI,MAAM;AAAA,EAC/C,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA,IAOG,CAACe,MAAOA,EAAE,UAAUd,EAAO,OAAO,QAAQA,EAAO,OAAO,OAAQ;AAAA;AAAA;AAAA;AAAA,eAIrD,CAACc,MAAMA,EAAE,aAAa,OAAO;AAAA,eAC7Bd,EAAO,QAAQ,QAAQ;AAAA,GAGzBmB,IAAkBpB,EAAO,SAAS,MAAM;AAAA,EACpD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAQSC,EAAO,QAAQ,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,WAKrBA,EAAO,QAAQ,WAAW;AAAA;AAAA,GAMxBoB,IAAUrB,EAAO,IAAI,MAAM,EAAE,WAAW,gBAAgB;AAAA;AAAA;AAAA;AAAA,GAMxDsB,IAAYtB,EAAO,OAAO,MAAM,EAAE,WAAW,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IASxE,CAACe,MAAOA,EAAE,WAAWd,EAAO,OAAO,QAAQA,EAAO,OAAO,OAAQ;AAAA,eACtD,CAACc,MACdA,EAAE,WAAWd,EAAO,WAAW,aAAaA,EAAO,QAAQ,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,GAOxDsB,IAAgBvB,EAAO,IAAI,MAAM;AAAA,EAC7C,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA,GAQYwB,IAAWxB,EAAO,IAAI,MAAM,EAAE,WAAW,iBAAiB;AAAA;AAAA;AAAA;AAAA;AAAA,GAO1DyB,IAAazB,EAAO,IAAI,MAAM,EAAE,WAAW,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA,qBAKtDC,EAAO,OAAO,OAAO;AAAA;AAAA,eAE3BA,EAAO,QAAQ,QAAQ;AAAA,GAGzByB,IAAkB1B,EAAO,OAAO,MAAM;AAAA,EAClD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAUY2B,IAAgB3B,EAAO,OAAO,MAAM;AAAA,EAChD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,sBAKqBC,EAAO,OAAO,OAAO;AAAA;AAAA;AAAA;AAAA,GAQ9B2B,IAAY5B,EAAO,IAAI,MAAM,EAAE,WAAW,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAU5D6B,IAAY7B,EAAO,IAAI,MAAM,EAAE,WAAW,kBAAkB;AAAA;AAAA;AAAA,GAK5D8B,IAAY9B,EAAO,IAAI,MAAM,EAAE,WAAW,kBAAkB;AAAA;AAAA;AAAA;AAAA,GAM5D+B,IAAc/B,EAAO,IAAI,MAAM,EAAE,WAAW,oBAAoB;AAAA;AAAA;AAAA;AAAA,GAMhEgC,IAAoBhC,EAAO,IAAI,MAAM;AAAA,EACjD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA,GAMYiC,IAAgBjC,EAAO,OAAO,MAAM;AAAA,EAChD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAaeC,EAAO,QAAQ,OAAO;AAAA;AAAA,GAIzBiC,IAAgBlC,EAAO,IAAI,MAAM;AAAA,EAC7C,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,qBAKoBC,EAAO,OAAO,OAAO;AAAA;AAAA,GAI7BkC,IAAUnC,EAAO,IAAI,MAAM,EAAE,WAAW,gBAAgB;AAAA;AAAA;AAAA;AAKtCA,EAAO,OAAO,MAAM;AAAA,EAClD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYM,MAAMoC,IAAapC,EAAO,IAAI,MAAM,EAAE,WAAW,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA,GAQ9DqC,IAAmBrC,EAAO,KAAK,MAAM;AAAA,EACjD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA,eAIcC,EAAO,OAAO,OAAO;AAAA,GAGvBqC,IAAgBtC,EAAO,OAAO,MAAM;AAAA,EAChD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAaeC,EAAO,QAAQ,OAAO;AAAA;AAAA,GAMzBsC,IAAYvC,EAAO,IAAI,MAAM,EAAE,WAAW,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAS5DwC,IAAYxC,EAAO,IAAI,MAAM,EAAE,WAAW,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA,GAO5DyC,IAAezC,EAAO,IAAI,MAAM;AAAA,EAC5C,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA,GAQY0C,IAAgB1C,EAAO,IAAI,MAAM;AAAA,EAC7C,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,GAOY2C,IAAgB3C,EAAO,IAAI,MAAM;AAAA,EAC7C,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,eAScC,EAAO,QAAQ,QAAQ;AAAA;AAAA;AAAA;AAAA,GAMzB2C,IAAsB5C,EAAO,IAAI,MAAM;AAAA,EACnD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAM2BC,EAAO,OAAO,OAAO;AAAA;AAAA,GAIpC4C,IAA0B7C,EAAO,IAAI,MAAM;AAAA,EACvD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,GAOY8C,IAAoB9C,EAAO,IAAI,MAAM;AAAA,EACjD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAUY+C,IAAsB/C,EAAO,IAAI,MAAM;AAAA,EACnD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yBAMwBC,EAAO,OAAO,OAAO;AAAA;AAAA,GAIjC+C,IAAsBhD,EAAO,OAAO,MAAM;AAAA,EACtD,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAceC,EAAO,QAAQ,OAAO;AAAA;AAAA;AAKRD,EAAO,IAAI,MAAM;AAAA,EAC9C,WAAW;AACZ,CAAC;AAAA;AAAA;AAAA;AAAA;"}
|
|
1
|
+
{"version":3,"file":"AgentBuilder.styled.js","sources":["../../../../src/components/agent-builder/AgentBuilder.styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { COLORS } from '@src/constants/Theme';\n\nexport const BuilderRoot = styled.div.attrs({ className: 'bik-builder-root' })`\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 100%;\n\twidth: 100%;\n\tmin-height: 0;\n\tbackground: ${COLORS.surface.standard};\n`;\n\nexport const TopBar = styled.div.attrs({ className: 'bik-top-bar' })`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\theight: 56px;\n\tpadding: 12px 16px;\n\tborder-bottom: 1px solid ${COLORS.stroke.primary};\n\tflex-shrink: 0;\n`;\n\nexport const TopBarSide = styled.div.attrs({ className: 'bik-top-bar-side' })`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 12px;\n`;\n\nexport const BackButton = styled.button.attrs({ className: 'bik-back-button' })`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 28px;\n\theight: 28px;\n\tborder: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tcursor: pointer;\n\tborder-radius: 4px;\n\n\t&:hover {\n\t\tbackground: ${COLORS.surface.subdued};\n\t}\n`;\n\nexport const Main = styled.div.attrs({ className: 'bik-main' })`\n\tdisplay: flex;\n\tflex: 1;\n\tmin-height: 0;\n`;\n\nexport const Rail = styled.div.attrs({ className: 'bik-rail' })`\n\twidth: 234px;\n\tflex-shrink: 0;\n\tborder-right: 1px solid ${COLORS.stroke.primary};\n\tpadding: 16px;\n\toverflow-y: auto;\n\tbackground: ${COLORS.surface.standard};\n`;\n\nexport const Content = styled.div.attrs({ className: 'bik-content' })`\n\tflex: 1;\n\tmin-width: 0;\n\toverflow-y: auto;\n\tpadding: 16px;\n\tbackground: ${COLORS.surface.standard};\n`;\n\nexport const ContentCard = styled.div.attrs({ className: 'bik-content-card' })`\n\tborder: 1px solid ${COLORS.stroke.primary};\n\tborder-radius: 8px;\n\tpadding: 24px;\n\tmin-height: 100%;\n\tbox-sizing: border-box;\n`;\n\nexport const Footer = styled.div.attrs({ className: 'bik-footer' })`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\tmin-height: 56px;\n\tpadding: 12px 16px;\n\tborder-top: 1px solid ${COLORS.stroke.primary};\n\tflex-shrink: 0;\n`;\n\nexport const FooterHint = styled.div.attrs({ className: 'bik-footer-hint' })`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 6px;\n`;\n\nexport const FooterActions = styled.div.attrs({\n\tclassName: 'bik-footer-actions',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n`;\n\n// ── Step rail items ─────────────────────────────────────────────────────────\n\nexport const RailList = styled.div.attrs({ className: 'bik-rail-list' })`\n\tdisplay: flex;\n\tflex-direction: column;\n`;\n\nexport const RailItem = styled.button.attrs({ className: 'bik-rail-item' })`\n\tposition: relative;\n\tdisplay: flex;\n\talign-items: flex-start;\n\tgap: 8px;\n\t/* Bottom padding leaves room for the connector down to the next badge. */\n\tpadding: 0 0 24px;\n\tborder: none;\n\tbackground: transparent;\n\tcursor: pointer;\n\ttext-align: left;\n\twidth: 100%;\n\n\t&:last-child {\n\t\tpadding-bottom: 0;\n\t}\n\n\t&:disabled {\n\t\tcursor: default;\n\t}\n\n\t/* Dashed connector line between consecutive step badges (centered on the badge). */\n\t&:not(:last-child)::after {\n\t\tcontent: '';\n\t\tposition: absolute;\n\t\tleft: 9px;\n\t\ttop: 20px;\n\t\twidth: 0;\n\t\theight: 24px;\n\t\tborder-left: 1px dashed #e0e0e0;\n\t\tpointer-events: none;\n\t}\n`;\n\nexport const StepBadge = styled.div.attrs({ className: 'bik-step-badge' })<{\n\tstate: 'active' | 'complete' | 'inactive';\n}>`\n\twidth: 20px;\n\theight: 20px;\n\tflex-shrink: 0;\n\tborder-radius: 50%;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tfont-family: Inter;\n\tfont-size: 12px;\n\tfont-weight: 600;\n\tbackground: ${(p) =>\n\t\tp.state === 'complete'\n\t\t\t? COLORS.content.brand\n\t\t\t: p.state === 'active'\n\t\t\t? COLORS.background.brandTint\n\t\t\t: '#F0F0F0'};\n\tcolor: ${(p) =>\n\t\tp.state === 'complete'\n\t\t\t? COLORS.content.primaryInverse\n\t\t\t: p.state === 'active'\n\t\t\t? COLORS.content.brand\n\t\t\t: COLORS.content.placeholder};\n`;\n\n// ── Shared step pieces ──────────────────────────────────────────────────────\n\nexport const SectionHeaderWrap = styled.div.attrs({\n\tclassName: 'bik-section-header-wrap',\n})`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 4px;\n\tmargin-bottom: 20px;\n`;\n\nexport const FieldBlock = styled.div.attrs({ className: 'bik-field-block' })`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 8px;\n\tmargin-bottom: 20px;\n`;\n\nexport const FieldLabelRow = styled.div.attrs({\n\tclassName: 'bik-field-label-row',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n`;\n\n// ── Labelled text area ──────────────────────────────────────────────────────\n\nexport const AiTextAreaShell = styled.div.attrs({\n\tclassName: 'bik-ai-text-area-shell',\n})<{\n\tfocused?: boolean;\n\tminHeight?: string;\n}>`\n\tdisplay: flex;\n\tflex-direction: column;\n\tborder: 1px solid\n\t\t${(p) => (p.focused ? COLORS.stroke.brand : COLORS.stroke.primary)};\n\tborder-radius: 4px;\n\tpadding: 8px 12px;\n\tgap: 8px;\n\tmin-height: ${(p) => p.minHeight ?? '120px'};\n\tbackground: ${COLORS.surface.standard};\n`;\n\nexport const AiTextAreaInput = styled.textarea.attrs({\n\tclassName: 'bik-ai-text-area-input',\n})`\n\tflex: 1;\n\tborder: none;\n\toutline: none;\n\tresize: none;\n\tfont-family: Inter;\n\tfont-size: 14px;\n\tline-height: 20px;\n\tcolor: ${COLORS.content.primary};\n\tbackground: transparent;\n\tmin-height: 60px;\n\n\t&::placeholder {\n\t\tcolor: ${COLORS.content.placeholder};\n\t}\n`;\n\n// ── Radio card (Step 2 / Step 4 option cards) ───────────────────────────────\n\nexport const CardRow = styled.div.attrs({ className: 'bik-card-row' })`\n\tdisplay: flex;\n\tgap: 12px;\n\tmargin-bottom: 16px;\n`;\n\nexport const RadioCard = styled.button.attrs({ className: 'bik-radio-card' })<{\n\tselected?: boolean;\n}>`\n\tflex: 1;\n\tdisplay: flex;\n\talign-items: flex-start;\n\tgap: 12px;\n\tpadding: 16px;\n\tborder: 1px solid\n\t\t${(p) => (p.selected ? COLORS.stroke.brand : COLORS.stroke.primary)};\n\tbackground: ${(p) =>\n\t\tp.selected ? COLORS.background.brandLight : COLORS.surface.standard};\n\tborder-radius: 8px;\n\tcursor: pointer;\n\ttext-align: left;\n\twidth: 100%;\n`;\n\nexport const RadioCardText = styled.div.attrs({\n\tclassName: 'bik-radio-card-text',\n})`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 4px;\n`;\n\n// ── Intent chips (Step 2) ───────────────────────────────────────────────────\n\nexport const ChipWrap = styled.div.attrs({ className: 'bik-chip-wrap' })`\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\talign-items: center;\n\tgap: 8px;\n`;\n\nexport const IntentChip = styled.div.attrs({ className: 'bik-intent-chip' })`\n\tdisplay: inline-flex;\n\talign-items: center;\n\tgap: 6px;\n\tpadding: 4px 8px;\n\tborder: 1px solid ${COLORS.stroke.primary};\n\tborder-radius: 4px;\n\tbackground: ${COLORS.surface.standard};\n`;\n\nexport const ChipCloseButton = styled.button.attrs({\n\tclassName: 'bik-chip-close-button',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tborder: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tcursor: pointer;\n`;\n\nexport const AddChipButton = styled.button.attrs({\n\tclassName: 'bik-add-chip-button',\n})`\n\tdisplay: inline-flex;\n\talign-items: center;\n\tgap: 6px;\n\tpadding: 4px 8px;\n\tborder: 1px dashed ${COLORS.stroke.primary};\n\tborder-radius: 4px;\n\tbackground: transparent;\n\tcursor: pointer;\n`;\n\n// ── Step 3 two-column layout + tool / sub-agent rows ────────────────────────\n\nexport const Step3Grid = styled.div.attrs({ className: 'bik-step3-grid' })`\n\tdisplay: grid;\n\tgrid-template-columns: minmax(0, 1fr) 300px;\n\tgap: 24px;\n\n\t@media (max-width: 1100px) {\n\t\tgrid-template-columns: 1fr;\n\t}\n`;\n\nexport const Step3Main = styled.div.attrs({ className: 'bik-step3-main' })`\n\tdisplay: flex;\n\tflex-direction: column;\n`;\n\nexport const Step3Side = styled.div.attrs({ className: 'bik-step3-side' })`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 24px;\n`;\n\nexport const SideSection = styled.div.attrs({ className: 'bik-side-section' })`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 8px;\n`;\n\nexport const SideSectionHeader = styled.div.attrs({\n\tclassName: 'bik-side-section-header',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n`;\n\nexport const AddIconButton = styled.button.attrs({\n\tclassName: 'bik-add-icon-button',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 24px;\n\theight: 24px;\n\tborder: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tcursor: pointer;\n\tborder-radius: 4px;\n\n\t&:hover {\n\t\tbackground: ${COLORS.surface.subdued};\n\t}\n`;\n\n// Empty-state tool-source picker (e.g. Manifest / Shopify buttons).\nexport const SourceButtonRow = styled.div.attrs({\n\tclassName: 'bik-source-button-row',\n})`\n\tdisplay: flex;\n\tgap: 8px;\n`;\n\nexport const SourceButton = styled.button.attrs({\n\tclassName: 'bik-source-button',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n\tpadding: 6px;\n\tborder: 1px solid ${COLORS.stroke.primary};\n\tborder-radius: 4px;\n\tbackground: ${COLORS.surface.standard};\n\tcursor: pointer;\n\theight: 28px;\n\n\t&:hover {\n\t\tbackground: ${COLORS.surface.subdued};\n\t}\n`;\n\nexport const SelectableRow = styled.div.attrs({\n\tclassName: 'bik-selectable-row',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n\tpadding: 8px 12px;\n\tborder: 1px solid ${COLORS.stroke.primary};\n\tborder-radius: 4px;\n\theight: 40px;\n\tmin-width: 0;\n\toverflow: hidden;\n\n\t/* Leading icon (e.g. tool source) keeps its size; the label takes the rest. */\n\t& > svg {\n\t\tflex-shrink: 0;\n\t}\n`;\n\nexport const RowText = styled.div.attrs({ className: 'bik-row-text' })`\n\tflex: 1;\n\tmin-width: 0;\n\toverflow: hidden;\n\n\t/* Truncate the label to one line with an ellipsis. */\n\t& > * {\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n`;\n\nexport const RowRemoveButton = styled.button.attrs({\n\tclassName: 'bik-row-remove-button',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tborder: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tcursor: pointer;\n`;\n\n// ── Per-row actions (always-visible edit / delete icon buttons) ───────────────\n\nexport const RowActions = styled.div.attrs({ className: 'bik-row-actions' })`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 4px;\n\tflex-shrink: 0;\n`;\n\n// Vertical separator between the edit and delete icon buttons.\nexport const RowActionDivider = styled.span.attrs({\n\tclassName: 'bik-row-action-divider',\n})`\n\twidth: 1px;\n\talign-self: stretch;\n\tmargin: 4px 0;\n\tbackground: ${COLORS.stroke.primary};\n`;\n\nexport const RowMenuButton = styled.button.attrs({\n\tclassName: 'bik-row-menu-button',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 24px;\n\theight: 24px;\n\tborder: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tcursor: pointer;\n\tborder-radius: 4px;\n\n\t&:hover {\n\t\tbackground: ${COLORS.surface.subdued};\n\t}\n`;\n\n// ── Go-live modal ───────────────────────────────────────────────────────────\n\nexport const ModalBody = styled.div.attrs({ className: 'bik-modal-body' })`\n\tpadding: 24px;\n\tdisplay: flex;\n\tflex-direction: column;\n\talign-items: center;\n\tgap: 16px;\n\ttext-align: center;\n`;\n\nexport const ModalIcon = styled.div.attrs({ className: 'bik-modal-icon' })`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tmargin-bottom: 4px;\n`;\n\nexport const ModalActions = styled.div.attrs({\n\tclassName: 'bik-modal-actions',\n})`\n\tdisplay: flex;\n\tgap: 12px;\n\twidth: 100%;\n`;\n\n// ── Create sub-agent drawer ─────────────────────────────────────────────────\n\nexport const SubAgentScrim = styled.div.attrs({\n\tclassName: 'bik-subagent-scrim',\n})`\n\tposition: fixed;\n\tinset: 0;\n\tbackground: rgba(0, 0, 0, 0.32);\n\tz-index: 1000;\n`;\n\nexport const SubAgentPanel = styled.div.attrs({\n\tclassName: 'bik-subagent-panel',\n})`\n\tposition: fixed;\n\ttop: 0;\n\tright: 0;\n\theight: 100%;\n\twidth: 421px;\n\tmax-width: 100%;\n\tdisplay: flex;\n\tflex-direction: column;\n\tbackground: ${COLORS.surface.standard};\n\tbox-shadow: -8px 0 24px rgba(0, 0, 0, 0.12);\n\tz-index: 1001;\n\tbox-sizing: border-box;\n`;\n\nexport const SubAgentPanelHeader = styled.div.attrs({\n\tclassName: 'bik-subagent-panel-header',\n})`\n\tdisplay: flex;\n\talign-items: flex-start;\n\tjustify-content: space-between;\n\tgap: 12px;\n\tpadding: 16px;\n\tborder-bottom: 1px solid ${COLORS.stroke.primary};\n\tflex-shrink: 0;\n`;\n\nexport const SubAgentPanelHeaderText = styled.div.attrs({\n\tclassName: 'bik-subagent-panel-header-text',\n})`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 4px;\n\tmin-width: 0;\n`;\n\nexport const SubAgentPanelBody = styled.div.attrs({\n\tclassName: 'bik-subagent-panel-body',\n})`\n\tflex: 1;\n\tmin-height: 0;\n\toverflow-y: auto;\n\tpadding: 16px;\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 20px;\n`;\n\nexport const SubAgentPanelFooter = styled.div.attrs({\n\tclassName: 'bik-subagent-panel-footer',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n\tpadding: 8px 12px;\n\tmin-height: 48px;\n\tborder-top: 1px solid ${COLORS.stroke.primary};\n\tflex-shrink: 0;\n`;\n\nexport const SubAgentCloseButton = styled.button.attrs({\n\tclassName: 'bik-subagent-close',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 24px;\n\theight: 24px;\n\tborder: none;\n\tbackground: transparent;\n\tpadding: 0;\n\tcursor: pointer;\n\tborder-radius: 4px;\n\tflex-shrink: 0;\n\n\t&:hover {\n\t\tbackground: ${COLORS.surface.subdued};\n\t}\n`;\n\n/** Inline action row inside a rich field (e.g. \"Improve with AI\"). */\nexport const FieldActionRow = styled.div.attrs({\n\tclassName: 'bik-field-action-row',\n})`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n`;\n"],"names":["BuilderRoot","styled","COLORS","TopBar","TopBarSide","BackButton","Main","Rail","Content","ContentCard","Footer","FooterHint","FooterActions","RailList","RailItem","StepBadge","p","SectionHeaderWrap","FieldBlock","FieldLabelRow","AiTextAreaShell","AiTextAreaInput","CardRow","RadioCard","RadioCardText","ChipWrap","IntentChip","ChipCloseButton","AddChipButton","Step3Grid","Step3Main","Step3Side","SideSection","SideSectionHeader","AddIconButton","SourceButtonRow","SourceButton","SelectableRow","RowText","RowActions","RowActionDivider","RowMenuButton","ModalBody","ModalIcon","ModalActions","SubAgentScrim","SubAgentPanel","SubAgentPanelHeader","SubAgentPanelHeaderText","SubAgentPanelBody","SubAgentPanelFooter","SubAgentCloseButton"],"mappings":"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"}
|