@greatapps/greatagents-ui 0.3.24 → 0.3.25
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/index.js +174 -152
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/components/agents/agent-tools-list.tsx +17 -17
- package/src/components/tools/tool-form-dialog.tsx +137 -135
package/dist/index.js
CHANGED
|
@@ -978,7 +978,7 @@ import {
|
|
|
978
978
|
import { Loader2 as Loader22 } from "lucide-react";
|
|
979
979
|
import { toast as toast3 } from "sonner";
|
|
980
980
|
import { ImageCropUpload as ImageCropUpload2 } from "@greatapps/greatauth-ui";
|
|
981
|
-
import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
981
|
+
import { Fragment as Fragment2, jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
982
982
|
function msToSeconds2(ms) {
|
|
983
983
|
if (ms == null || ms === 0) return "";
|
|
984
984
|
return String(Math.round(ms / 1e3));
|
|
@@ -1033,7 +1033,7 @@ function AgentEditForm({ config, agent, idAccount, open, onOpenChange }) {
|
|
|
1033
1033
|
toast3.error("Erro ao atualizar agente");
|
|
1034
1034
|
}
|
|
1035
1035
|
}
|
|
1036
|
-
const
|
|
1036
|
+
const formFields = /* @__PURE__ */ jsxs3(Fragment2, { children: [
|
|
1037
1037
|
/* @__PURE__ */ jsx3("div", { className: "flex justify-center", children: /* @__PURE__ */ jsx3(
|
|
1038
1038
|
ImageCropUpload2,
|
|
1039
1039
|
{
|
|
@@ -1117,8 +1117,35 @@ function AgentEditForm({ config, agent, idAccount, open, onOpenChange }) {
|
|
|
1117
1117
|
),
|
|
1118
1118
|
/* @__PURE__ */ jsx3("p", { className: "text-xs text-muted-foreground", children: "Espera por mensagens agrupadas" })
|
|
1119
1119
|
] })
|
|
1120
|
-
] })
|
|
1121
|
-
|
|
1120
|
+
] })
|
|
1121
|
+
] });
|
|
1122
|
+
if (open !== void 0 && onOpenChange) {
|
|
1123
|
+
return /* @__PURE__ */ jsx3(Sheet2, { open, onOpenChange, children: /* @__PURE__ */ jsxs3(SheetContent2, { className: "sm:max-w-md", children: [
|
|
1124
|
+
/* @__PURE__ */ jsx3(SheetHeader2, { children: /* @__PURE__ */ jsx3(SheetTitle2, { children: "Editar Agente" }) }),
|
|
1125
|
+
/* @__PURE__ */ jsxs3("form", { onSubmit: handleSubmit, className: "flex flex-1 flex-col overflow-hidden", children: [
|
|
1126
|
+
/* @__PURE__ */ jsx3("div", { className: "flex-1 overflow-y-auto px-4 space-y-4", children: formFields }),
|
|
1127
|
+
/* @__PURE__ */ jsxs3(SheetFooter2, { className: "flex-row justify-end border-t", children: [
|
|
1128
|
+
/* @__PURE__ */ jsx3(
|
|
1129
|
+
Button3,
|
|
1130
|
+
{
|
|
1131
|
+
type: "button",
|
|
1132
|
+
variant: "outline",
|
|
1133
|
+
onClick: () => onOpenChange?.(false),
|
|
1134
|
+
disabled: updateAgent.isPending,
|
|
1135
|
+
children: "Cancelar"
|
|
1136
|
+
}
|
|
1137
|
+
),
|
|
1138
|
+
/* @__PURE__ */ jsxs3(Button3, { type: "submit", disabled: updateAgent.isPending, children: [
|
|
1139
|
+
updateAgent.isPending && /* @__PURE__ */ jsx3(Loader22, { "aria-hidden": "true", className: "mr-2 h-4 w-4 animate-spin" }),
|
|
1140
|
+
"Salvar"
|
|
1141
|
+
] })
|
|
1142
|
+
] })
|
|
1143
|
+
] })
|
|
1144
|
+
] }) });
|
|
1145
|
+
}
|
|
1146
|
+
return /* @__PURE__ */ jsx3("div", { className: "max-w-lg pt-4", children: /* @__PURE__ */ jsxs3("form", { onSubmit: handleSubmit, className: "space-y-4", children: [
|
|
1147
|
+
formFields,
|
|
1148
|
+
/* @__PURE__ */ jsxs3("div", { className: "flex justify-end gap-2 pt-4 border-t", children: [
|
|
1122
1149
|
/* @__PURE__ */ jsx3(
|
|
1123
1150
|
Button3,
|
|
1124
1151
|
{
|
|
@@ -1134,14 +1161,7 @@ function AgentEditForm({ config, agent, idAccount, open, onOpenChange }) {
|
|
|
1134
1161
|
"Salvar"
|
|
1135
1162
|
] })
|
|
1136
1163
|
] })
|
|
1137
|
-
] });
|
|
1138
|
-
if (open !== void 0 && onOpenChange) {
|
|
1139
|
-
return /* @__PURE__ */ jsx3(Sheet2, { open, onOpenChange, children: /* @__PURE__ */ jsxs3(SheetContent2, { className: "sm:max-w-md overflow-y-auto", children: [
|
|
1140
|
-
/* @__PURE__ */ jsx3(SheetHeader2, { children: /* @__PURE__ */ jsx3(SheetTitle2, { children: "Editar Agente" }) }),
|
|
1141
|
-
formContent
|
|
1142
|
-
] }) });
|
|
1143
|
-
}
|
|
1144
|
-
return /* @__PURE__ */ jsx3("div", { className: "max-w-lg pt-4", children: formContent });
|
|
1164
|
+
] }) });
|
|
1145
1165
|
}
|
|
1146
1166
|
|
|
1147
1167
|
// src/components/agents/agent-objectives-list.tsx
|
|
@@ -2392,7 +2412,7 @@ import {
|
|
|
2392
2412
|
} from "@greatapps/greatauth-ui/ui";
|
|
2393
2413
|
import { FileText, RotateCcw, X, AlertTriangle } from "lucide-react";
|
|
2394
2414
|
import { toast as toast6 } from "sonner";
|
|
2395
|
-
import { Fragment as
|
|
2415
|
+
import { Fragment as Fragment3, jsx as jsx8, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
2396
2416
|
var STRUCTURED_MARKERS = ["[IDENTIDADE]", "[MISS\xC3O]", "[TOM, ESTILO & FORMATO]"];
|
|
2397
2417
|
function formatDate(dateStr) {
|
|
2398
2418
|
const date = new Date(dateStr);
|
|
@@ -2654,7 +2674,7 @@ function AgentRevisionTab({ agent, config }) {
|
|
|
2654
2674
|
(legacyModalVersion?.prompt_content ?? "").length.toLocaleString("pt-BR"),
|
|
2655
2675
|
" caracteres"
|
|
2656
2676
|
] }),
|
|
2657
|
-
legacyModalVersion?.change_notes && /* @__PURE__ */ jsxs7(
|
|
2677
|
+
legacyModalVersion?.change_notes && /* @__PURE__ */ jsxs7(Fragment3, { children: [
|
|
2658
2678
|
/* @__PURE__ */ jsx8("span", { children: "\xB7" }),
|
|
2659
2679
|
/* @__PURE__ */ jsx8("span", { className: "italic", children: legacyModalVersion.change_notes })
|
|
2660
2680
|
] })
|
|
@@ -3775,11 +3795,11 @@ import {
|
|
|
3775
3795
|
PopoverTrigger,
|
|
3776
3796
|
Input as Input5,
|
|
3777
3797
|
Textarea as Textarea3,
|
|
3778
|
-
|
|
3779
|
-
|
|
3780
|
-
|
|
3781
|
-
|
|
3782
|
-
|
|
3798
|
+
Sheet as Sheet4,
|
|
3799
|
+
SheetContent as SheetContent4,
|
|
3800
|
+
SheetHeader as SheetHeader4,
|
|
3801
|
+
SheetTitle as SheetTitle4,
|
|
3802
|
+
SheetFooter as SheetFooter4,
|
|
3783
3803
|
Label as Label5,
|
|
3784
3804
|
Select,
|
|
3785
3805
|
SelectContent,
|
|
@@ -3995,13 +4015,13 @@ function AgentToolsList({ agent, config }) {
|
|
|
3995
4015
|
);
|
|
3996
4016
|
}) }),
|
|
3997
4017
|
/* @__PURE__ */ jsx15(
|
|
3998
|
-
|
|
4018
|
+
Sheet4,
|
|
3999
4019
|
{
|
|
4000
4020
|
open: !!configTarget,
|
|
4001
4021
|
onOpenChange: (open) => !open && setConfigTarget(null),
|
|
4002
|
-
children: /* @__PURE__ */ jsxs13(
|
|
4003
|
-
/* @__PURE__ */ jsx15(
|
|
4004
|
-
/* @__PURE__ */ jsxs13("div", { className: "space-y-4", children: [
|
|
4022
|
+
children: /* @__PURE__ */ jsxs13(SheetContent4, { className: "sm:max-w-lg", children: [
|
|
4023
|
+
/* @__PURE__ */ jsx15(SheetHeader4, { children: /* @__PURE__ */ jsx15(SheetTitle4, { children: "Instru\xE7\xF5es da Ferramenta" }) }),
|
|
4024
|
+
/* @__PURE__ */ jsxs13("div", { className: "flex-1 overflow-y-auto px-4 space-y-4", children: [
|
|
4005
4025
|
configTarget && getToolInfo(configTarget.id_tool)?.type !== "none" && /* @__PURE__ */ jsxs13("div", { className: "space-y-2", children: [
|
|
4006
4026
|
/* @__PURE__ */ jsx15(Label5, { htmlFor: "tool-credential", children: "Credencial" }),
|
|
4007
4027
|
/* @__PURE__ */ jsxs13(
|
|
@@ -4036,7 +4056,7 @@ function AgentToolsList({ agent, config }) {
|
|
|
4036
4056
|
/* @__PURE__ */ jsx15("p", { className: "text-xs text-muted-foreground", children: "Este texto \xE9 adicionado ao prompt do agente para orientar o uso da ferramenta." })
|
|
4037
4057
|
] })
|
|
4038
4058
|
] }),
|
|
4039
|
-
/* @__PURE__ */ jsxs13(
|
|
4059
|
+
/* @__PURE__ */ jsxs13(SheetFooter4, { className: "flex-row justify-end border-t", children: [
|
|
4040
4060
|
/* @__PURE__ */ jsx15(
|
|
4041
4061
|
Button11,
|
|
4042
4062
|
{
|
|
@@ -4107,7 +4127,7 @@ import { Pencil as Pencil5, Trash2 as Trash25, Search as Search2 } from "lucide-
|
|
|
4107
4127
|
import { format as format2 } from "date-fns";
|
|
4108
4128
|
import { ptBR as ptBR2 } from "date-fns/locale";
|
|
4109
4129
|
import { toast as toast10 } from "sonner";
|
|
4110
|
-
import { Fragment as
|
|
4130
|
+
import { Fragment as Fragment4, jsx as jsx16, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
4111
4131
|
function useColumns2(onEdit, onDelete) {
|
|
4112
4132
|
return [
|
|
4113
4133
|
{
|
|
@@ -4216,7 +4236,7 @@ function ToolsTable({ onEdit, config }) {
|
|
|
4216
4236
|
setSearch(value);
|
|
4217
4237
|
setPage(1);
|
|
4218
4238
|
}
|
|
4219
|
-
return /* @__PURE__ */ jsxs14(
|
|
4239
|
+
return /* @__PURE__ */ jsxs14(Fragment4, { children: [
|
|
4220
4240
|
/* @__PURE__ */ jsx16("div", { className: "flex items-center gap-3", children: /* @__PURE__ */ jsxs14("div", { className: "relative flex-1 max-w-md", children: [
|
|
4221
4241
|
/* @__PURE__ */ jsx16(Search2, { "aria-hidden": "true", className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground" }),
|
|
4222
4242
|
/* @__PURE__ */ jsx16(
|
|
@@ -4277,11 +4297,11 @@ function ToolsTable({ onEdit, config }) {
|
|
|
4277
4297
|
// src/components/tools/tool-form-dialog.tsx
|
|
4278
4298
|
import { useState as useState14 } from "react";
|
|
4279
4299
|
import {
|
|
4280
|
-
|
|
4281
|
-
|
|
4282
|
-
|
|
4283
|
-
|
|
4284
|
-
|
|
4300
|
+
Sheet as Sheet5,
|
|
4301
|
+
SheetContent as SheetContent5,
|
|
4302
|
+
SheetHeader as SheetHeader5,
|
|
4303
|
+
SheetTitle as SheetTitle5,
|
|
4304
|
+
SheetFooter as SheetFooter5,
|
|
4285
4305
|
Button as Button13,
|
|
4286
4306
|
Input as Input7,
|
|
4287
4307
|
Textarea as Textarea4,
|
|
@@ -4404,109 +4424,110 @@ function ToolFormDialog({
|
|
|
4404
4424
|
);
|
|
4405
4425
|
}
|
|
4406
4426
|
}
|
|
4407
|
-
return /* @__PURE__ */ jsx17(
|
|
4408
|
-
/* @__PURE__ */ jsx17(
|
|
4409
|
-
/* @__PURE__ */ jsxs15("form", { onSubmit: handleSubmit, className: "
|
|
4410
|
-
/* @__PURE__ */ jsxs15("div", { className: "space-y-
|
|
4411
|
-
/* @__PURE__ */
|
|
4412
|
-
|
|
4413
|
-
|
|
4414
|
-
|
|
4415
|
-
|
|
4416
|
-
|
|
4417
|
-
|
|
4418
|
-
|
|
4419
|
-
|
|
4420
|
-
|
|
4421
|
-
|
|
4422
|
-
|
|
4423
|
-
|
|
4424
|
-
|
|
4425
|
-
|
|
4426
|
-
|
|
4427
|
-
|
|
4428
|
-
|
|
4429
|
-
|
|
4430
|
-
|
|
4431
|
-
|
|
4432
|
-
|
|
4433
|
-
|
|
4434
|
-
/* @__PURE__ */
|
|
4435
|
-
|
|
4436
|
-
|
|
4437
|
-
|
|
4438
|
-
|
|
4439
|
-
|
|
4440
|
-
|
|
4441
|
-
|
|
4442
|
-
|
|
4443
|
-
|
|
4444
|
-
|
|
4445
|
-
|
|
4446
|
-
|
|
4447
|
-
|
|
4448
|
-
|
|
4449
|
-
|
|
4450
|
-
|
|
4451
|
-
|
|
4452
|
-
|
|
4453
|
-
|
|
4454
|
-
|
|
4455
|
-
|
|
4456
|
-
|
|
4457
|
-
/* @__PURE__ */
|
|
4458
|
-
|
|
4459
|
-
|
|
4460
|
-
|
|
4461
|
-
|
|
4462
|
-
|
|
4463
|
-
|
|
4464
|
-
|
|
4465
|
-
|
|
4466
|
-
|
|
4467
|
-
|
|
4468
|
-
|
|
4469
|
-
|
|
4470
|
-
|
|
4471
|
-
|
|
4472
|
-
|
|
4473
|
-
|
|
4474
|
-
|
|
4475
|
-
|
|
4476
|
-
|
|
4477
|
-
|
|
4478
|
-
|
|
4479
|
-
|
|
4480
|
-
/* @__PURE__ */
|
|
4481
|
-
|
|
4482
|
-
|
|
4483
|
-
|
|
4484
|
-
|
|
4485
|
-
|
|
4486
|
-
|
|
4487
|
-
|
|
4488
|
-
|
|
4489
|
-
|
|
4490
|
-
|
|
4491
|
-
|
|
4492
|
-
|
|
4493
|
-
|
|
4494
|
-
|
|
4495
|
-
/* @__PURE__ */
|
|
4496
|
-
|
|
4497
|
-
|
|
4498
|
-
|
|
4499
|
-
|
|
4500
|
-
|
|
4501
|
-
|
|
4502
|
-
|
|
4503
|
-
|
|
4504
|
-
|
|
4505
|
-
|
|
4506
|
-
|
|
4507
|
-
|
|
4508
|
-
|
|
4509
|
-
|
|
4427
|
+
return /* @__PURE__ */ jsx17(Sheet5, { open, onOpenChange, children: /* @__PURE__ */ jsxs15(SheetContent5, { className: "sm:max-w-lg", children: [
|
|
4428
|
+
/* @__PURE__ */ jsx17(SheetHeader5, { children: /* @__PURE__ */ jsx17(SheetTitle5, { children: isEditing ? "Editar Ferramenta" : "Nova Ferramenta" }) }),
|
|
4429
|
+
/* @__PURE__ */ jsxs15("form", { onSubmit: handleSubmit, className: "flex flex-1 flex-col overflow-hidden", children: [
|
|
4430
|
+
/* @__PURE__ */ jsxs15("div", { className: "flex-1 overflow-y-auto px-4 space-y-4", children: [
|
|
4431
|
+
/* @__PURE__ */ jsxs15("div", { className: "space-y-2", children: [
|
|
4432
|
+
/* @__PURE__ */ jsx17(Label6, { htmlFor: "tool-name", children: "Nome *" }),
|
|
4433
|
+
/* @__PURE__ */ jsx17(
|
|
4434
|
+
Input7,
|
|
4435
|
+
{
|
|
4436
|
+
id: "tool-name",
|
|
4437
|
+
name: "name",
|
|
4438
|
+
value: form.name,
|
|
4439
|
+
onChange: (e) => {
|
|
4440
|
+
const name = e.target.value;
|
|
4441
|
+
setForm((prev) => ({
|
|
4442
|
+
...prev,
|
|
4443
|
+
name,
|
|
4444
|
+
nameError: name.trim() ? false : prev.nameError,
|
|
4445
|
+
...!slugManuallyEdited && !isEditing ? { slug: slugify2(name), slugError: false } : {}
|
|
4446
|
+
}));
|
|
4447
|
+
},
|
|
4448
|
+
placeholder: "Ex: Google Calendar",
|
|
4449
|
+
disabled: isPending
|
|
4450
|
+
}
|
|
4451
|
+
),
|
|
4452
|
+
form.nameError && /* @__PURE__ */ jsx17("p", { className: "text-sm text-destructive", children: "Nome \xE9 obrigat\xF3rio" })
|
|
4453
|
+
] }),
|
|
4454
|
+
/* @__PURE__ */ jsxs15("div", { className: "space-y-2", children: [
|
|
4455
|
+
/* @__PURE__ */ jsx17(Label6, { htmlFor: "tool-slug", children: "Slug (identificador \xFAnico) *" }),
|
|
4456
|
+
/* @__PURE__ */ jsx17(
|
|
4457
|
+
Input7,
|
|
4458
|
+
{
|
|
4459
|
+
id: "tool-slug",
|
|
4460
|
+
name: "slug",
|
|
4461
|
+
value: form.slug,
|
|
4462
|
+
onChange: (e) => {
|
|
4463
|
+
setSlugManuallyEdited(true);
|
|
4464
|
+
setForm((prev) => ({
|
|
4465
|
+
...prev,
|
|
4466
|
+
slug: e.target.value,
|
|
4467
|
+
slugError: e.target.value.trim() ? false : prev.slugError
|
|
4468
|
+
}));
|
|
4469
|
+
},
|
|
4470
|
+
placeholder: "Ex: google-calendar",
|
|
4471
|
+
disabled: isPending
|
|
4472
|
+
}
|
|
4473
|
+
),
|
|
4474
|
+
/* @__PURE__ */ jsx17("p", { className: "text-xs text-muted-foreground", children: "Gerado automaticamente a partir do nome. Usado internamente para identificar a ferramenta." }),
|
|
4475
|
+
form.slugError && /* @__PURE__ */ jsx17("p", { className: "text-sm text-destructive", children: "Slug \xE9 obrigat\xF3rio" })
|
|
4476
|
+
] }),
|
|
4477
|
+
/* @__PURE__ */ jsxs15("div", { className: "space-y-2", children: [
|
|
4478
|
+
/* @__PURE__ */ jsx17(Label6, { htmlFor: "tool-type", children: "Tipo de Autentica\xE7\xE3o *" }),
|
|
4479
|
+
/* @__PURE__ */ jsxs15(
|
|
4480
|
+
Select2,
|
|
4481
|
+
{
|
|
4482
|
+
value: form.type,
|
|
4483
|
+
onValueChange: (value) => {
|
|
4484
|
+
setForm((prev) => ({
|
|
4485
|
+
...prev,
|
|
4486
|
+
type: value,
|
|
4487
|
+
typeError: false
|
|
4488
|
+
}));
|
|
4489
|
+
},
|
|
4490
|
+
disabled: isPending,
|
|
4491
|
+
children: [
|
|
4492
|
+
/* @__PURE__ */ jsx17(SelectTrigger2, { id: "tool-type", children: /* @__PURE__ */ jsx17(SelectValue2, { placeholder: "Selecione o tipo" }) }),
|
|
4493
|
+
/* @__PURE__ */ jsx17(SelectContent2, { children: TOOL_AUTH_TYPES.map((t) => /* @__PURE__ */ jsx17(SelectItem2, { value: t.value, children: t.label }, t.value)) })
|
|
4494
|
+
]
|
|
4495
|
+
}
|
|
4496
|
+
),
|
|
4497
|
+
/* @__PURE__ */ jsx17("p", { className: "text-xs text-muted-foreground", children: "Define se a ferramenta requer credenciais para funcionar." }),
|
|
4498
|
+
form.typeError && /* @__PURE__ */ jsx17("p", { className: "text-sm text-destructive", children: "Tipo \xE9 obrigat\xF3rio" })
|
|
4499
|
+
] }),
|
|
4500
|
+
/* @__PURE__ */ jsxs15("div", { className: "space-y-2", children: [
|
|
4501
|
+
/* @__PURE__ */ jsx17(Label6, { htmlFor: "tool-description", children: "Descri\xE7\xE3o" }),
|
|
4502
|
+
/* @__PURE__ */ jsx17(
|
|
4503
|
+
Textarea4,
|
|
4504
|
+
{
|
|
4505
|
+
id: "tool-description",
|
|
4506
|
+
name: "description",
|
|
4507
|
+
value: form.description,
|
|
4508
|
+
onChange: (e) => setForm((prev) => ({ ...prev, description: e.target.value })),
|
|
4509
|
+
placeholder: "Descri\\u00e7\\u00e3o da ferramenta\\u2026",
|
|
4510
|
+
rows: 3,
|
|
4511
|
+
disabled: isPending
|
|
4512
|
+
}
|
|
4513
|
+
)
|
|
4514
|
+
] }),
|
|
4515
|
+
/* @__PURE__ */ jsxs15("div", { className: "space-y-2", children: [
|
|
4516
|
+
/* @__PURE__ */ jsx17(Label6, { htmlFor: "tool-function-defs", children: "Defini\xE7\xF5es de Fun\xE7\xE3o (JSON)" }),
|
|
4517
|
+
/* @__PURE__ */ jsx17(
|
|
4518
|
+
Textarea4,
|
|
4519
|
+
{
|
|
4520
|
+
id: "tool-function-defs",
|
|
4521
|
+
name: "functionDefs",
|
|
4522
|
+
value: form.functionDefinitions,
|
|
4523
|
+
onChange: (e) => {
|
|
4524
|
+
setForm((prev) => ({
|
|
4525
|
+
...prev,
|
|
4526
|
+
functionDefinitions: e.target.value,
|
|
4527
|
+
jsonError: false
|
|
4528
|
+
}));
|
|
4529
|
+
},
|
|
4530
|
+
placeholder: `[
|
|
4510
4531
|
{
|
|
4511
4532
|
"type": "function",
|
|
4512
4533
|
"function": {
|
|
@@ -4520,15 +4541,16 @@ function ToolFormDialog({
|
|
|
4520
4541
|
}
|
|
4521
4542
|
}
|
|
4522
4543
|
]`,
|
|
4523
|
-
|
|
4524
|
-
|
|
4525
|
-
|
|
4526
|
-
|
|
4527
|
-
|
|
4528
|
-
|
|
4529
|
-
|
|
4544
|
+
rows: 10,
|
|
4545
|
+
className: "font-mono text-sm",
|
|
4546
|
+
disabled: isPending
|
|
4547
|
+
}
|
|
4548
|
+
),
|
|
4549
|
+
/* @__PURE__ */ jsx17("p", { className: "text-xs text-muted-foreground", children: "Array de defini\xE7\xF5es no formato OpenAI Function Calling." }),
|
|
4550
|
+
form.jsonError && /* @__PURE__ */ jsx17("p", { className: "text-sm text-destructive", children: "JSON inv\xE1lido" })
|
|
4551
|
+
] })
|
|
4530
4552
|
] }),
|
|
4531
|
-
/* @__PURE__ */ jsxs15(
|
|
4553
|
+
/* @__PURE__ */ jsxs15(SheetFooter5, { className: "flex-row justify-end border-t", children: [
|
|
4532
4554
|
/* @__PURE__ */ jsx17(
|
|
4533
4555
|
Button13,
|
|
4534
4556
|
{
|
|
@@ -4763,7 +4785,7 @@ import {
|
|
|
4763
4785
|
Unplug,
|
|
4764
4786
|
Trash2 as Trash27
|
|
4765
4787
|
} from "lucide-react";
|
|
4766
|
-
import { Fragment as
|
|
4788
|
+
import { Fragment as Fragment5, jsx as jsx19, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
4767
4789
|
var ICON_MAP2 = {
|
|
4768
4790
|
CalendarSync: CalendarSync2,
|
|
4769
4791
|
Plug: Plug3,
|
|
@@ -4869,7 +4891,7 @@ function IntegrationCard({
|
|
|
4869
4891
|
);
|
|
4870
4892
|
}
|
|
4871
4893
|
const badge = STATE_BADGES[state];
|
|
4872
|
-
return /* @__PURE__ */ jsxs17(
|
|
4894
|
+
return /* @__PURE__ */ jsxs17(Fragment5, { children: [
|
|
4873
4895
|
/* @__PURE__ */ jsxs17(
|
|
4874
4896
|
"div",
|
|
4875
4897
|
{
|
|
@@ -5011,11 +5033,11 @@ function AdvancedTab({ config, agentId, gagentsApiUrl }) {
|
|
|
5011
5033
|
// src/components/capabilities/integration-wizard.tsx
|
|
5012
5034
|
import { useCallback as useCallback7, useEffect as useEffect6, useRef as useRef3, useState as useState18 } from "react";
|
|
5013
5035
|
import {
|
|
5014
|
-
Dialog as
|
|
5015
|
-
DialogContent as
|
|
5016
|
-
DialogFooter
|
|
5017
|
-
DialogHeader as
|
|
5018
|
-
DialogTitle as
|
|
5036
|
+
Dialog as Dialog2,
|
|
5037
|
+
DialogContent as DialogContent2,
|
|
5038
|
+
DialogFooter,
|
|
5039
|
+
DialogHeader as DialogHeader2,
|
|
5040
|
+
DialogTitle as DialogTitle2,
|
|
5019
5041
|
Button as Button17
|
|
5020
5042
|
} from "@greatapps/greatauth-ui/ui";
|
|
5021
5043
|
import { Loader2 as Loader29, ChevronLeft, ChevronRight, Check as Check2 } from "lucide-react";
|
|
@@ -5603,8 +5625,8 @@ function IntegrationWizard({
|
|
|
5603
5625
|
const selectedConfigOption = configOptions.find((o) => o.id === selectedConfigValue) || null;
|
|
5604
5626
|
const isLastStep = currentStep === "confirm";
|
|
5605
5627
|
const effectiveSteps = meta.hasConfigStep ? STEPS : STEPS.filter((s) => s !== "config");
|
|
5606
|
-
return /* @__PURE__ */ jsx25(
|
|
5607
|
-
/* @__PURE__ */ jsx25(
|
|
5628
|
+
return /* @__PURE__ */ jsx25(Dialog2, { open, onOpenChange, children: /* @__PURE__ */ jsxs23(DialogContent2, { className: "sm:max-w-lg", children: [
|
|
5629
|
+
/* @__PURE__ */ jsx25(DialogHeader2, { children: /* @__PURE__ */ jsx25(DialogTitle2, { children: integration.name }) }),
|
|
5608
5630
|
/* @__PURE__ */ jsx25(StepIndicator, { steps: effectiveSteps, currentStep }),
|
|
5609
5631
|
/* @__PURE__ */ jsxs23("div", { className: "min-h-[280px] py-2", children: [
|
|
5610
5632
|
currentStep === "info" && /* @__PURE__ */ jsx25(
|
|
@@ -5648,7 +5670,7 @@ function IntegrationWizard({
|
|
|
5648
5670
|
}
|
|
5649
5671
|
)
|
|
5650
5672
|
] }),
|
|
5651
|
-
/* @__PURE__ */ jsxs23(
|
|
5673
|
+
/* @__PURE__ */ jsxs23(DialogFooter, { className: "flex-row justify-between sm:justify-between", children: [
|
|
5652
5674
|
/* @__PURE__ */ jsx25("div", { children: currentStep === "info" ? /* @__PURE__ */ jsx25(
|
|
5653
5675
|
Button17,
|
|
5654
5676
|
{
|