@open-mercato/core 0.6.6-develop.6184.1.b7e55f8d61 → 0.6.6-develop.6198.1.0822f97cc6
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/.turbo/turbo-build.log +1 -1
- package/dist/modules/auth/frontend/login.js +5 -5
- package/dist/modules/auth/frontend/login.js.map +2 -2
- package/dist/modules/catalog/backend/catalog/products/MerchandisingAssistantSheet.js +3 -2
- package/dist/modules/catalog/backend/catalog/products/MerchandisingAssistantSheet.js.map +2 -2
- package/dist/modules/catalog/widgets/injection/product-seo/widget.client.js +26 -14
- package/dist/modules/catalog/widgets/injection/product-seo/widget.client.js.map +2 -2
- package/dist/modules/customers/api/deals/[id]/route.js +169 -149
- package/dist/modules/customers/api/deals/[id]/route.js.map +3 -3
- package/dist/modules/customers/components/detail/InlineEditors.js +9 -4
- package/dist/modules/customers/components/detail/InlineEditors.js.map +2 -2
- package/dist/modules/integrations/backend/integrations/[id]/page.js +13 -9
- package/dist/modules/integrations/backend/integrations/[id]/page.js.map +2 -2
- package/dist/modules/integrations/backend/integrations/detail-page-refresh.js +17 -0
- package/dist/modules/integrations/backend/integrations/detail-page-refresh.js.map +7 -0
- package/dist/modules/sales/components/documents/SalesDocumentForm.js +299 -297
- package/dist/modules/sales/components/documents/SalesDocumentForm.js.map +2 -2
- package/dist/modules/workflows/components/EdgeEditDialog.js +120 -141
- package/dist/modules/workflows/components/EdgeEditDialog.js.map +2 -2
- package/dist/modules/workflows/components/NodeEditDialog.js +114 -118
- package/dist/modules/workflows/components/NodeEditDialog.js.map +2 -2
- package/dist/modules/workflows/frontend/checkout-demo/page.js +155 -260
- package/dist/modules/workflows/frontend/checkout-demo/page.js.map +2 -2
- package/package.json +7 -7
- package/src/modules/auth/frontend/login.tsx +5 -5
- package/src/modules/catalog/backend/catalog/products/MerchandisingAssistantSheet.tsx +4 -3
- package/src/modules/catalog/widgets/injection/product-seo/widget.client.tsx +27 -17
- package/src/modules/customers/api/deals/[id]/route.ts +208 -174
- package/src/modules/customers/components/detail/InlineEditors.tsx +6 -10
- package/src/modules/integrations/backend/integrations/[id]/page.tsx +13 -9
- package/src/modules/integrations/backend/integrations/detail-page-refresh.ts +36 -0
- package/src/modules/sales/components/documents/SalesDocumentForm.tsx +351 -327
- package/src/modules/workflows/components/EdgeEditDialog.tsx +132 -157
- package/src/modules/workflows/components/NodeEditDialog.tsx +116 -121
- package/src/modules/workflows/frontend/checkout-demo/page.tsx +172 -239
- package/src/modules/workflows/i18n/de.json +2 -0
- package/src/modules/workflows/i18n/en.json +2 -0
- package/src/modules/workflows/i18n/es.json +2 -0
- package/src/modules/workflows/i18n/pl.json +2 -0
|
@@ -4,6 +4,8 @@ import { useEffect, useState } from "react";
|
|
|
4
4
|
import { Dialog, DialogContent, DialogFooter, DialogHeader, DialogTitle } from "@open-mercato/ui/primitives/dialog";
|
|
5
5
|
import { Button } from "@open-mercato/ui/primitives/button";
|
|
6
6
|
import { Input } from "@open-mercato/ui/primitives/input";
|
|
7
|
+
import { Textarea } from "@open-mercato/ui/primitives/textarea";
|
|
8
|
+
import { Checkbox } from "@open-mercato/ui/primitives/checkbox";
|
|
7
9
|
import { Badge } from "@open-mercato/ui/primitives/badge";
|
|
8
10
|
import {
|
|
9
11
|
Select,
|
|
@@ -205,7 +207,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
205
207
|
required: false,
|
|
206
208
|
placeholder: ""
|
|
207
209
|
};
|
|
208
|
-
setFormFields([...
|
|
210
|
+
setFormFields((prev) => [...prev, newField]);
|
|
209
211
|
const newExpanded = new Set(expandedFields);
|
|
210
212
|
newExpanded.add(formFields.length);
|
|
211
213
|
setExpandedFields(newExpanded);
|
|
@@ -216,7 +218,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
216
218
|
variant: "destructive"
|
|
217
219
|
});
|
|
218
220
|
if (confirmed) {
|
|
219
|
-
setFormFields(
|
|
221
|
+
setFormFields((prev) => prev.filter((_, i) => i !== index));
|
|
220
222
|
const newExpanded = new Set(expandedFields);
|
|
221
223
|
newExpanded.delete(index);
|
|
222
224
|
setExpandedFields(newExpanded);
|
|
@@ -403,7 +405,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
403
405
|
)
|
|
404
406
|
] }) : /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
405
407
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
406
|
-
/* @__PURE__ */ jsxs("label", { className: "block text-sm font-medium text-
|
|
408
|
+
/* @__PURE__ */ jsxs("label", { className: "block text-sm font-medium text-foreground mb-1", children: [
|
|
407
409
|
t("workflows.form.stepName"),
|
|
408
410
|
" *"
|
|
409
411
|
] }),
|
|
@@ -417,24 +419,23 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
417
419
|
autoFocus: true
|
|
418
420
|
}
|
|
419
421
|
),
|
|
420
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
422
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.form.descriptions.stepName") })
|
|
421
423
|
] }),
|
|
422
424
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
423
|
-
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-
|
|
425
|
+
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: t("workflows.form.description") }),
|
|
424
426
|
/* @__PURE__ */ jsx(
|
|
425
|
-
|
|
427
|
+
Textarea,
|
|
426
428
|
{
|
|
427
429
|
value: description,
|
|
428
430
|
onChange: (e) => setDescription(e.target.value),
|
|
429
431
|
placeholder: t("workflows.form.placeholders.description"),
|
|
430
|
-
rows: 3
|
|
431
|
-
className: "w-full px-3 py-2 border border-gray-300 rounded-lg text-sm focus-visible:ring-2 focus-visible:ring-ring focus-visible:border-ring"
|
|
432
|
+
rows: 3
|
|
432
433
|
}
|
|
433
434
|
),
|
|
434
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
435
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.form.descriptions.description") })
|
|
435
436
|
] }),
|
|
436
437
|
node.type !== "waitForSignal" && node.type !== "waitForTimer" && /* @__PURE__ */ jsxs("div", { children: [
|
|
437
|
-
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-
|
|
438
|
+
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: t("workflows.form.timeout") }),
|
|
438
439
|
/* @__PURE__ */ jsx(
|
|
439
440
|
Input,
|
|
440
441
|
{
|
|
@@ -444,12 +445,12 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
444
445
|
placeholder: t("workflows.form.placeholders.timeout")
|
|
445
446
|
}
|
|
446
447
|
),
|
|
447
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
448
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.form.descriptions.timeout") })
|
|
448
449
|
] }),
|
|
449
450
|
node.type === "userTask" && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
450
|
-
/* @__PURE__ */ jsx("div", { className: "border-t border-
|
|
451
|
+
/* @__PURE__ */ jsx("div", { className: "border-t border-border pt-4 mt-4", children: /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground mb-3", children: t("workflows.nodeEditor.userTaskConfig") }) }),
|
|
451
452
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
452
|
-
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-
|
|
453
|
+
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: t("workflows.form.assignedTo") }),
|
|
453
454
|
/* @__PURE__ */ jsx(
|
|
454
455
|
Input,
|
|
455
456
|
{
|
|
@@ -459,10 +460,10 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
459
460
|
placeholder: t("workflows.form.placeholders.userId")
|
|
460
461
|
}
|
|
461
462
|
),
|
|
462
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
463
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.form.descriptions.assignedTo") })
|
|
463
464
|
] }),
|
|
464
465
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
465
|
-
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-
|
|
466
|
+
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: t("workflows.form.assignedToRoles") }),
|
|
466
467
|
/* @__PURE__ */ jsx(
|
|
467
468
|
Input,
|
|
468
469
|
{
|
|
@@ -472,10 +473,10 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
472
473
|
placeholder: t("workflows.form.placeholders.roles")
|
|
473
474
|
}
|
|
474
475
|
),
|
|
475
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
476
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.form.descriptions.assignedToRoles") })
|
|
476
477
|
] }),
|
|
477
478
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
478
|
-
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-
|
|
479
|
+
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: t("workflows.form.formKey") }),
|
|
479
480
|
/* @__PURE__ */ jsx(
|
|
480
481
|
Input,
|
|
481
482
|
{
|
|
@@ -485,13 +486,13 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
485
486
|
placeholder: t("workflows.form.placeholders.formKey")
|
|
486
487
|
}
|
|
487
488
|
),
|
|
488
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
489
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.form.descriptions.formKey") })
|
|
489
490
|
] }),
|
|
490
|
-
/* @__PURE__ */ jsxs("div", { className: "border-t border-
|
|
491
|
+
/* @__PURE__ */ jsxs("div", { className: "border-t border-border pt-4 mt-4", children: [
|
|
491
492
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between mb-3", children: [
|
|
492
493
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
493
494
|
/* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground", children: t("workflows.form.formFields", { count: formFields.length }) }),
|
|
494
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
495
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-0.5", children: t("workflows.form.descriptions.formFields") })
|
|
495
496
|
] }),
|
|
496
497
|
/* @__PURE__ */ jsxs(
|
|
497
498
|
Button,
|
|
@@ -507,40 +508,41 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
507
508
|
)
|
|
508
509
|
] }),
|
|
509
510
|
isJsonSchemaFormat && /* @__PURE__ */ jsx(Alert, { variant: "info", className: "mb-3", children: /* @__PURE__ */ jsx(AlertDescription, { children: t("workflows.nodeEditor.jsonSchemaFormat") }) }),
|
|
510
|
-
formFields.length === 0 && /* @__PURE__ */ jsx("div", { className: "p-4 text-center text-sm text-
|
|
511
|
+
formFields.length === 0 && /* @__PURE__ */ jsx("div", { className: "p-4 text-center text-sm text-muted-foreground bg-muted rounded-lg border border-border", children: t("workflows.nodeEditor.noFormFields") }),
|
|
511
512
|
/* @__PURE__ */ jsx("div", { className: "space-y-2", children: formFields.map((field, index) => {
|
|
512
513
|
const isExpanded = expandedFields.has(index);
|
|
513
|
-
return /* @__PURE__ */ jsxs("div", { className: "border border-
|
|
514
|
+
return /* @__PURE__ */ jsxs("div", { className: "border border-border rounded-lg bg-muted", children: [
|
|
514
515
|
/* @__PURE__ */ jsxs(
|
|
515
|
-
|
|
516
|
+
Button,
|
|
516
517
|
{
|
|
517
518
|
type: "button",
|
|
519
|
+
variant: "ghost",
|
|
518
520
|
onClick: () => toggleFieldExpanded(index),
|
|
519
|
-
className: "w-full px-4 py-3 text-left
|
|
521
|
+
className: "h-auto w-full justify-between rounded-t-lg px-4 py-3 text-left hover:bg-muted/80",
|
|
520
522
|
children: [
|
|
521
523
|
/* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
|
|
522
524
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
523
525
|
/* @__PURE__ */ jsx("span", { className: "text-sm font-semibold text-foreground", children: field.label || field.name }),
|
|
524
526
|
/* @__PURE__ */ jsx(Badge, { variant: "secondary", className: "text-xs", children: field.type }),
|
|
525
|
-
field.required && /* @__PURE__ */ jsx(Badge, { variant: "destructive", className: "text-xs
|
|
527
|
+
field.required && /* @__PURE__ */ jsx(Badge, { variant: "destructive", className: "text-xs", children: t("workflows.form.required") })
|
|
526
528
|
] }),
|
|
527
|
-
/* @__PURE__ */ jsxs("p", { className: "text-xs text-
|
|
529
|
+
/* @__PURE__ */ jsxs("p", { className: "text-xs text-muted-foreground mt-1", children: [
|
|
528
530
|
"Field name: ",
|
|
529
|
-
/* @__PURE__ */ jsx("code", { className: "bg-
|
|
531
|
+
/* @__PURE__ */ jsx("code", { className: "bg-background px-1 rounded", children: field.name })
|
|
530
532
|
] })
|
|
531
533
|
] }),
|
|
532
534
|
/* @__PURE__ */ jsx(
|
|
533
535
|
ChevronDown,
|
|
534
536
|
{
|
|
535
|
-
className: `
|
|
537
|
+
className: `size-5 text-muted-foreground transition-transform ${isExpanded ? "rotate-180" : ""}`
|
|
536
538
|
}
|
|
537
539
|
)
|
|
538
540
|
]
|
|
539
541
|
}
|
|
540
542
|
),
|
|
541
|
-
isExpanded && /* @__PURE__ */ jsxs("div", { className: "px-4 pb-4 space-y-3 border-t border-
|
|
543
|
+
isExpanded && /* @__PURE__ */ jsxs("div", { className: "px-4 pb-4 space-y-3 border-t border-border bg-background", children: [
|
|
542
544
|
/* @__PURE__ */ jsxs("div", { className: "pt-3", children: [
|
|
543
|
-
/* @__PURE__ */ jsxs("label", { className: "block text-xs font-medium text-
|
|
545
|
+
/* @__PURE__ */ jsxs("label", { className: "block text-xs font-medium text-foreground mb-1", children: [
|
|
544
546
|
t("workflows.form.fieldName"),
|
|
545
547
|
" *"
|
|
546
548
|
] }),
|
|
@@ -554,10 +556,10 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
554
556
|
placeholder: t("workflows.form.placeholders.fieldName")
|
|
555
557
|
}
|
|
556
558
|
),
|
|
557
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
559
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-0.5", children: t("workflows.form.descriptions.fieldName") })
|
|
558
560
|
] }),
|
|
559
561
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
560
|
-
/* @__PURE__ */ jsxs("label", { className: "block text-xs font-medium text-
|
|
562
|
+
/* @__PURE__ */ jsxs("label", { className: "block text-xs font-medium text-foreground mb-1", children: [
|
|
561
563
|
t("workflows.form.fieldLabel"),
|
|
562
564
|
" *"
|
|
563
565
|
] }),
|
|
@@ -571,10 +573,10 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
571
573
|
placeholder: t("workflows.form.placeholders.fieldLabel")
|
|
572
574
|
}
|
|
573
575
|
),
|
|
574
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
576
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-0.5", children: t("workflows.form.descriptions.fieldLabel") })
|
|
575
577
|
] }),
|
|
576
578
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
577
|
-
/* @__PURE__ */ jsxs("label", { className: "block text-xs font-medium text-
|
|
579
|
+
/* @__PURE__ */ jsxs("label", { className: "block text-xs font-medium text-foreground mb-1", children: [
|
|
578
580
|
t("workflows.form.fieldType"),
|
|
579
581
|
" *"
|
|
580
582
|
] }),
|
|
@@ -604,7 +606,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
604
606
|
)
|
|
605
607
|
] }),
|
|
606
608
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
607
|
-
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-
|
|
609
|
+
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-foreground mb-1", children: t("workflows.form.placeholder") }),
|
|
608
610
|
/* @__PURE__ */ jsx(
|
|
609
611
|
Input,
|
|
610
612
|
{
|
|
@@ -617,7 +619,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
617
619
|
)
|
|
618
620
|
] }),
|
|
619
621
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
620
|
-
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-
|
|
622
|
+
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-foreground mb-1", children: t("workflows.form.defaultValue") }),
|
|
621
623
|
/* @__PURE__ */ jsx(
|
|
622
624
|
Input,
|
|
623
625
|
{
|
|
@@ -630,7 +632,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
630
632
|
)
|
|
631
633
|
] }),
|
|
632
634
|
(field.type === "select" || field.type === "radio") && /* @__PURE__ */ jsxs("div", { children: [
|
|
633
|
-
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-
|
|
635
|
+
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-foreground mb-1", children: t("workflows.form.options") }),
|
|
634
636
|
/* @__PURE__ */ jsx(
|
|
635
637
|
Input,
|
|
636
638
|
{
|
|
@@ -641,21 +643,19 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
641
643
|
placeholder: t("workflows.form.placeholders.options")
|
|
642
644
|
}
|
|
643
645
|
),
|
|
644
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
646
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-0.5", children: t("workflows.form.descriptions.options") })
|
|
645
647
|
] }),
|
|
646
|
-
/* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsxs("label", { className: "flex items-center gap-2 text-xs font-medium text-
|
|
648
|
+
/* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsxs("label", { className: "flex items-center gap-2 text-xs font-medium text-foreground", children: [
|
|
647
649
|
/* @__PURE__ */ jsx(
|
|
648
|
-
|
|
650
|
+
Checkbox,
|
|
649
651
|
{
|
|
650
|
-
type: "checkbox",
|
|
651
652
|
checked: field.required,
|
|
652
|
-
|
|
653
|
-
className: "rounded border-gray-300 text-blue-600 focus-visible:ring-ring"
|
|
653
|
+
onCheckedChange: (checked) => updateFormField(index, "required", checked === true)
|
|
654
654
|
}
|
|
655
655
|
),
|
|
656
656
|
t("workflows.form.requiredField")
|
|
657
657
|
] }) }),
|
|
658
|
-
/* @__PURE__ */ jsx("div", { className: "border-t border-
|
|
658
|
+
/* @__PURE__ */ jsx("div", { className: "border-t border-border pt-3", children: /* @__PURE__ */ jsxs(
|
|
659
659
|
Button,
|
|
660
660
|
{
|
|
661
661
|
type: "button",
|
|
@@ -673,11 +673,11 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
673
673
|
}) })
|
|
674
674
|
] })
|
|
675
675
|
] }),
|
|
676
|
-
node.type === "automated" && /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs("div", { className: "border-t border-
|
|
676
|
+
node.type === "automated" && /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs("div", { className: "border-t border-border pt-4 mt-4", children: [
|
|
677
677
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between mb-3", children: [
|
|
678
678
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
679
679
|
/* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground", children: t("workflows.form.stepActivities", { count: stepActivities.length }) }),
|
|
680
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
680
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-0.5", children: t("workflows.form.descriptions.activities") })
|
|
681
681
|
] }),
|
|
682
682
|
/* @__PURE__ */ jsxs(
|
|
683
683
|
Button,
|
|
@@ -703,14 +703,15 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
703
703
|
}
|
|
704
704
|
)
|
|
705
705
|
] }),
|
|
706
|
-
stepActivities.length === 0 && /* @__PURE__ */ jsx("div", { className: "p-4 text-center text-sm text-
|
|
706
|
+
stepActivities.length === 0 && /* @__PURE__ */ jsx("div", { className: "p-4 text-center text-sm text-muted-foreground bg-muted rounded-lg border border-border", children: t("workflows.nodeEditor.noActivities") }),
|
|
707
707
|
/* @__PURE__ */ jsx("div", { className: "space-y-2", children: stepActivities.map((activity, index) => {
|
|
708
708
|
const isExpanded = expandedStepActivities.has(index);
|
|
709
|
-
return /* @__PURE__ */ jsxs("div", { className: "border border-
|
|
709
|
+
return /* @__PURE__ */ jsxs("div", { className: "border border-border rounded-lg bg-muted", children: [
|
|
710
710
|
/* @__PURE__ */ jsxs(
|
|
711
|
-
|
|
711
|
+
Button,
|
|
712
712
|
{
|
|
713
713
|
type: "button",
|
|
714
|
+
variant: "ghost",
|
|
714
715
|
onClick: () => {
|
|
715
716
|
const newExpanded = new Set(expandedStepActivities);
|
|
716
717
|
if (isExpanded) {
|
|
@@ -720,7 +721,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
720
721
|
}
|
|
721
722
|
setExpandedStepActivities(newExpanded);
|
|
722
723
|
},
|
|
723
|
-
className: "w-full px-4 py-3 text-left
|
|
724
|
+
className: "h-auto w-full justify-between rounded-t-lg px-4 py-3 text-left hover:bg-muted/80",
|
|
724
725
|
children: [
|
|
725
726
|
/* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
|
|
726
727
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
@@ -728,23 +729,23 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
728
729
|
/* @__PURE__ */ jsx(Badge, { variant: "secondary", className: "text-xs", children: activity.activityType }),
|
|
729
730
|
activity.async && /* @__PURE__ */ jsx(Badge, { variant: "outline", className: "text-xs", children: t("workflows.form.async") })
|
|
730
731
|
] }),
|
|
731
|
-
/* @__PURE__ */ jsxs("p", { className: "text-xs text-
|
|
732
|
+
/* @__PURE__ */ jsxs("p", { className: "text-xs text-muted-foreground mt-1", children: [
|
|
732
733
|
"ID: ",
|
|
733
|
-
/* @__PURE__ */ jsx("code", { className: "bg-
|
|
734
|
+
/* @__PURE__ */ jsx("code", { className: "bg-background px-1 rounded", children: activity.activityId })
|
|
734
735
|
] })
|
|
735
736
|
] }),
|
|
736
737
|
/* @__PURE__ */ jsx(
|
|
737
738
|
ChevronDown,
|
|
738
739
|
{
|
|
739
|
-
className: `
|
|
740
|
+
className: `size-5 text-muted-foreground transition-transform ${isExpanded ? "rotate-180" : ""}`
|
|
740
741
|
}
|
|
741
742
|
)
|
|
742
743
|
]
|
|
743
744
|
}
|
|
744
745
|
),
|
|
745
|
-
isExpanded && /* @__PURE__ */ jsxs("div", { className: "px-4 pb-4 space-y-3 border-t border-
|
|
746
|
+
isExpanded && /* @__PURE__ */ jsxs("div", { className: "px-4 pb-4 space-y-3 border-t border-border bg-background", children: [
|
|
746
747
|
/* @__PURE__ */ jsxs("div", { className: "pt-3", children: [
|
|
747
|
-
/* @__PURE__ */ jsxs("label", { className: "block text-xs font-medium text-
|
|
748
|
+
/* @__PURE__ */ jsxs("label", { className: "block text-xs font-medium text-foreground mb-1", children: [
|
|
748
749
|
t("workflows.form.activityId"),
|
|
749
750
|
" *"
|
|
750
751
|
] }),
|
|
@@ -764,7 +765,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
764
765
|
)
|
|
765
766
|
] }),
|
|
766
767
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
767
|
-
/* @__PURE__ */ jsxs("label", { className: "block text-xs font-medium text-
|
|
768
|
+
/* @__PURE__ */ jsxs("label", { className: "block text-xs font-medium text-foreground mb-1", children: [
|
|
768
769
|
t("workflows.form.activityName"),
|
|
769
770
|
" *"
|
|
770
771
|
] }),
|
|
@@ -784,7 +785,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
784
785
|
)
|
|
785
786
|
] }),
|
|
786
787
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
787
|
-
/* @__PURE__ */ jsxs("label", { className: "block text-xs font-medium text-
|
|
788
|
+
/* @__PURE__ */ jsxs("label", { className: "block text-xs font-medium text-foreground mb-1", children: [
|
|
788
789
|
t("workflows.form.activityType"),
|
|
789
790
|
" *"
|
|
790
791
|
] }),
|
|
@@ -813,7 +814,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
813
814
|
)
|
|
814
815
|
] }),
|
|
815
816
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
816
|
-
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-
|
|
817
|
+
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-foreground mb-1", children: t("workflows.form.timeout") }),
|
|
817
818
|
/* @__PURE__ */ jsx(
|
|
818
819
|
Input,
|
|
819
820
|
{
|
|
@@ -828,13 +829,13 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
828
829
|
placeholder: t("workflows.form.placeholders.timeoutMs")
|
|
829
830
|
}
|
|
830
831
|
),
|
|
831
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
832
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.form.descriptions.timeoutMs") })
|
|
832
833
|
] }),
|
|
833
|
-
/* @__PURE__ */ jsxs("div", { className: "border border-
|
|
834
|
-
/* @__PURE__ */ jsx("label", { className: "block text-xs font-semibold text-
|
|
834
|
+
/* @__PURE__ */ jsxs("div", { className: "border border-border rounded-lg p-3 bg-muted", children: [
|
|
835
|
+
/* @__PURE__ */ jsx("label", { className: "block text-xs font-semibold text-foreground mb-2", children: t("workflows.form.retryPolicy") }),
|
|
835
836
|
/* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 sm:grid-cols-2 gap-2", children: [
|
|
836
837
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
837
|
-
/* @__PURE__ */ jsx("label", { className: "block text-xs text-
|
|
838
|
+
/* @__PURE__ */ jsx("label", { className: "block text-xs text-muted-foreground mb-1", children: t("workflows.form.maxAttempts") }),
|
|
838
839
|
/* @__PURE__ */ jsx(
|
|
839
840
|
Input,
|
|
840
841
|
{
|
|
@@ -853,7 +854,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
853
854
|
)
|
|
854
855
|
] }),
|
|
855
856
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
856
|
-
/* @__PURE__ */ jsx("label", { className: "block text-xs text-
|
|
857
|
+
/* @__PURE__ */ jsx("label", { className: "block text-xs text-muted-foreground mb-1", children: t("workflows.form.initialInterval") }),
|
|
857
858
|
/* @__PURE__ */ jsx(
|
|
858
859
|
Input,
|
|
859
860
|
{
|
|
@@ -870,7 +871,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
870
871
|
)
|
|
871
872
|
] }),
|
|
872
873
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
873
|
-
/* @__PURE__ */ jsx("label", { className: "block text-xs text-
|
|
874
|
+
/* @__PURE__ */ jsx("label", { className: "block text-xs text-muted-foreground mb-1", children: t("workflows.form.backoffCoefficient") }),
|
|
874
875
|
/* @__PURE__ */ jsx(
|
|
875
876
|
Input,
|
|
876
877
|
{
|
|
@@ -888,7 +889,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
888
889
|
)
|
|
889
890
|
] }),
|
|
890
891
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
891
|
-
/* @__PURE__ */ jsx("label", { className: "block text-xs text-
|
|
892
|
+
/* @__PURE__ */ jsx("label", { className: "block text-xs text-muted-foreground mb-1", children: t("workflows.form.maxInterval") }),
|
|
892
893
|
/* @__PURE__ */ jsx(
|
|
893
894
|
Input,
|
|
894
895
|
{
|
|
@@ -908,23 +909,21 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
908
909
|
] }),
|
|
909
910
|
/* @__PURE__ */ jsx("div", { className: "flex gap-4", children: /* @__PURE__ */ jsxs("label", { className: "flex items-center gap-2 cursor-pointer", children: [
|
|
910
911
|
/* @__PURE__ */ jsx(
|
|
911
|
-
|
|
912
|
+
Checkbox,
|
|
912
913
|
{
|
|
913
|
-
type: "checkbox",
|
|
914
914
|
checked: activity.async || false,
|
|
915
|
-
|
|
915
|
+
onCheckedChange: (checked) => {
|
|
916
916
|
const updated = [...stepActivities];
|
|
917
|
-
updated[index].async =
|
|
917
|
+
updated[index].async = checked === true;
|
|
918
918
|
setStepActivities(updated);
|
|
919
|
-
}
|
|
920
|
-
className: "w-4 h-4 text-blue-600 border-gray-300 rounded focus-visible:ring-ring"
|
|
919
|
+
}
|
|
921
920
|
}
|
|
922
921
|
),
|
|
923
|
-
/* @__PURE__ */ jsx("span", { className: "text-xs text-
|
|
922
|
+
/* @__PURE__ */ jsx("span", { className: "text-xs text-foreground", children: t("workflows.form.executeAsync") })
|
|
924
923
|
] }) }),
|
|
925
924
|
activity.activityType === "WAIT" && /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
|
|
926
925
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
927
|
-
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-
|
|
926
|
+
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-foreground mb-1", children: t("workflows.activities.waitDuration") }),
|
|
928
927
|
/* @__PURE__ */ jsx(
|
|
929
928
|
Input,
|
|
930
929
|
{
|
|
@@ -943,7 +942,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
943
942
|
] }),
|
|
944
943
|
/* @__PURE__ */ jsx("div", { className: "text-xs text-center text-muted-foreground", children: t("workflows.activities.waitOr") }),
|
|
945
944
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
946
|
-
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-
|
|
945
|
+
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-foreground mb-1", children: t("workflows.activities.waitUntil") }),
|
|
947
946
|
/* @__PURE__ */ jsx(
|
|
948
947
|
Input,
|
|
949
948
|
{
|
|
@@ -961,7 +960,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
961
960
|
] })
|
|
962
961
|
] }),
|
|
963
962
|
activity.activityType !== "WAIT" && /* @__PURE__ */ jsxs("div", { children: [
|
|
964
|
-
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-
|
|
963
|
+
/* @__PURE__ */ jsx("label", { className: "block text-xs font-medium text-foreground mb-1", children: t("workflows.form.configuration") }),
|
|
965
964
|
/* @__PURE__ */ jsx(
|
|
966
965
|
JsonBuilder,
|
|
967
966
|
{
|
|
@@ -973,9 +972,9 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
973
972
|
}
|
|
974
973
|
}
|
|
975
974
|
),
|
|
976
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
975
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.form.descriptions.activityConfig") })
|
|
977
976
|
] }),
|
|
978
|
-
/* @__PURE__ */ jsx("div", { className: "pt-3 border-t border-
|
|
977
|
+
/* @__PURE__ */ jsx("div", { className: "pt-3 border-t border-border", children: /* @__PURE__ */ jsxs(
|
|
979
978
|
Button,
|
|
980
979
|
{
|
|
981
980
|
type: "button",
|
|
@@ -998,9 +997,9 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
998
997
|
}) })
|
|
999
998
|
] }) }),
|
|
1000
999
|
node.type === "subWorkflow" && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1001
|
-
/* @__PURE__ */ jsx("div", { className: "border-t border-
|
|
1000
|
+
/* @__PURE__ */ jsx("div", { className: "border-t border-border pt-4 mt-4", children: /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground mb-3", children: t("workflows.form.subWorkflowConfig") }) }),
|
|
1002
1001
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
1003
|
-
/* @__PURE__ */ jsxs("label", { className: "block text-sm font-medium text-
|
|
1002
|
+
/* @__PURE__ */ jsxs("label", { className: "block text-sm font-medium text-foreground mb-1", children: [
|
|
1004
1003
|
t("workflows.form.workflowToInvoke"),
|
|
1005
1004
|
" *"
|
|
1006
1005
|
] }),
|
|
@@ -1026,10 +1025,10 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1026
1025
|
}
|
|
1027
1026
|
)
|
|
1028
1027
|
] }),
|
|
1029
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1028
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.form.descriptions.subWorkflowId") })
|
|
1030
1029
|
] }),
|
|
1031
1030
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
1032
|
-
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-
|
|
1031
|
+
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: t("workflows.form.version") }),
|
|
1033
1032
|
/* @__PURE__ */ jsx(
|
|
1034
1033
|
Input,
|
|
1035
1034
|
{
|
|
@@ -1039,20 +1038,20 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1039
1038
|
placeholder: t("workflows.form.placeholders.version")
|
|
1040
1039
|
}
|
|
1041
1040
|
),
|
|
1042
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1041
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.form.descriptions.subWorkflowVersion") })
|
|
1043
1042
|
] }),
|
|
1044
|
-
/* @__PURE__ */ jsxs("div", { className: "border-t border-
|
|
1043
|
+
/* @__PURE__ */ jsxs("div", { className: "border-t border-border pt-4 mt-4", children: [
|
|
1045
1044
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between mb-3", children: [
|
|
1046
1045
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
1047
1046
|
/* @__PURE__ */ jsx("h4", { className: "text-sm font-semibold text-foreground", children: t("workflows.form.inputMapping", { count: inputMappings.length }) }),
|
|
1048
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1047
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-0.5", children: t("workflows.form.descriptions.inputMapping") })
|
|
1049
1048
|
] }),
|
|
1050
1049
|
/* @__PURE__ */ jsxs(
|
|
1051
1050
|
Button,
|
|
1052
1051
|
{
|
|
1053
1052
|
type: "button",
|
|
1054
1053
|
size: "sm",
|
|
1055
|
-
onClick: () => setInputMappings([...
|
|
1054
|
+
onClick: () => setInputMappings((prev) => [...prev, { key: "", value: "" }]),
|
|
1056
1055
|
children: [
|
|
1057
1056
|
/* @__PURE__ */ jsx(Plus, { className: "size-3 mr-1" }),
|
|
1058
1057
|
t("workflows.form.addMapping")
|
|
@@ -1060,7 +1059,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1060
1059
|
}
|
|
1061
1060
|
)
|
|
1062
1061
|
] }),
|
|
1063
|
-
inputMappings.length === 0 ? /* @__PURE__ */ jsx("p", { className: "text-sm text-
|
|
1062
|
+
inputMappings.length === 0 ? /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground italic", children: t("workflows.nodeEditor.noInputMappings") }) : /* @__PURE__ */ jsx("div", { className: "space-y-2", children: inputMappings.map((mapping, index) => /* @__PURE__ */ jsxs("div", { className: "flex gap-2 items-start", children: [
|
|
1064
1063
|
/* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
|
|
1065
1064
|
/* @__PURE__ */ jsx(
|
|
1066
1065
|
Input,
|
|
@@ -1075,9 +1074,9 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1075
1074
|
placeholder: t("workflows.form.placeholders.childKey")
|
|
1076
1075
|
}
|
|
1077
1076
|
),
|
|
1078
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1077
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-0.5", children: t("workflows.form.descriptions.childKey") })
|
|
1079
1078
|
] }),
|
|
1080
|
-
/* @__PURE__ */ jsx("span", { className: "text-
|
|
1079
|
+
/* @__PURE__ */ jsx("span", { className: "text-muted-foreground mt-2", children: "\u2192" }),
|
|
1081
1080
|
/* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
|
|
1082
1081
|
/* @__PURE__ */ jsx(
|
|
1083
1082
|
Input,
|
|
@@ -1092,7 +1091,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1092
1091
|
placeholder: t("workflows.form.placeholders.parentPath")
|
|
1093
1092
|
}
|
|
1094
1093
|
),
|
|
1095
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1094
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-0.5", children: t("workflows.form.descriptions.parentPath") })
|
|
1096
1095
|
] }),
|
|
1097
1096
|
/* @__PURE__ */ jsx(
|
|
1098
1097
|
Button,
|
|
@@ -1101,7 +1100,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1101
1100
|
size: "sm",
|
|
1102
1101
|
variant: "ghost",
|
|
1103
1102
|
onClick: () => {
|
|
1104
|
-
setInputMappings(
|
|
1103
|
+
setInputMappings((prev) => prev.filter((_, i) => i !== index));
|
|
1105
1104
|
},
|
|
1106
1105
|
className: "mt-1",
|
|
1107
1106
|
children: /* @__PURE__ */ jsx(Trash2, { className: "size-3" })
|
|
@@ -1109,18 +1108,18 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1109
1108
|
)
|
|
1110
1109
|
] }, index)) })
|
|
1111
1110
|
] }),
|
|
1112
|
-
/* @__PURE__ */ jsxs("div", { className: "border-t border-
|
|
1111
|
+
/* @__PURE__ */ jsxs("div", { className: "border-t border-border pt-4 mt-4", children: [
|
|
1113
1112
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between mb-3", children: [
|
|
1114
1113
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
1115
1114
|
/* @__PURE__ */ jsx("h4", { className: "text-sm font-semibold text-foreground", children: t("workflows.form.outputMapping", { count: outputMappings.length }) }),
|
|
1116
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1115
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-0.5", children: t("workflows.form.descriptions.outputMapping") })
|
|
1117
1116
|
] }),
|
|
1118
1117
|
/* @__PURE__ */ jsxs(
|
|
1119
1118
|
Button,
|
|
1120
1119
|
{
|
|
1121
1120
|
type: "button",
|
|
1122
1121
|
size: "sm",
|
|
1123
|
-
onClick: () => setOutputMappings([...
|
|
1122
|
+
onClick: () => setOutputMappings((prev) => [...prev, { key: "", value: "" }]),
|
|
1124
1123
|
children: [
|
|
1125
1124
|
/* @__PURE__ */ jsx(Plus, { className: "size-3 mr-1" }),
|
|
1126
1125
|
t("workflows.form.addMapping")
|
|
@@ -1128,7 +1127,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1128
1127
|
}
|
|
1129
1128
|
)
|
|
1130
1129
|
] }),
|
|
1131
|
-
outputMappings.length === 0 ? /* @__PURE__ */ jsx("p", { className: "text-sm text-
|
|
1130
|
+
outputMappings.length === 0 ? /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground italic", children: t("workflows.nodeEditor.noOutputMappings") }) : /* @__PURE__ */ jsx("div", { className: "space-y-2", children: outputMappings.map((mapping, index) => /* @__PURE__ */ jsxs("div", { className: "flex gap-2 items-start", children: [
|
|
1132
1131
|
/* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
|
|
1133
1132
|
/* @__PURE__ */ jsx(
|
|
1134
1133
|
Input,
|
|
@@ -1143,9 +1142,9 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1143
1142
|
placeholder: t("workflows.form.placeholders.parentKey")
|
|
1144
1143
|
}
|
|
1145
1144
|
),
|
|
1146
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1145
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-0.5", children: t("workflows.form.descriptions.parentKey") })
|
|
1147
1146
|
] }),
|
|
1148
|
-
/* @__PURE__ */ jsx("span", { className: "text-
|
|
1147
|
+
/* @__PURE__ */ jsx("span", { className: "text-muted-foreground mt-2", children: "\u2190" }),
|
|
1149
1148
|
/* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
|
|
1150
1149
|
/* @__PURE__ */ jsx(
|
|
1151
1150
|
Input,
|
|
@@ -1160,7 +1159,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1160
1159
|
placeholder: t("workflows.form.placeholders.childPath")
|
|
1161
1160
|
}
|
|
1162
1161
|
),
|
|
1163
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1162
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-0.5", children: t("workflows.form.descriptions.childPath") })
|
|
1164
1163
|
] }),
|
|
1165
1164
|
/* @__PURE__ */ jsx(
|
|
1166
1165
|
Button,
|
|
@@ -1169,7 +1168,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1169
1168
|
size: "sm",
|
|
1170
1169
|
variant: "ghost",
|
|
1171
1170
|
onClick: () => {
|
|
1172
|
-
setOutputMappings(
|
|
1171
|
+
setOutputMappings((prev) => prev.filter((_, i) => i !== index));
|
|
1173
1172
|
},
|
|
1174
1173
|
className: "mt-1",
|
|
1175
1174
|
children: /* @__PURE__ */ jsx(Trash2, { className: "size-3" })
|
|
@@ -1179,9 +1178,9 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1179
1178
|
] })
|
|
1180
1179
|
] }),
|
|
1181
1180
|
node.type === "waitForSignal" && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1182
|
-
/* @__PURE__ */ jsx("div", { className: "border-t border-
|
|
1181
|
+
/* @__PURE__ */ jsx("div", { className: "border-t border-border pt-4 mt-4", children: /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground mb-3", children: t("workflows.form.signalConfig") }) }),
|
|
1183
1182
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
1184
|
-
/* @__PURE__ */ jsxs("label", { className: "block text-sm font-medium text-
|
|
1183
|
+
/* @__PURE__ */ jsxs("label", { className: "block text-sm font-medium text-foreground mb-1", children: [
|
|
1185
1184
|
t("workflows.form.signalName"),
|
|
1186
1185
|
" *"
|
|
1187
1186
|
] }),
|
|
@@ -1194,10 +1193,10 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1194
1193
|
placeholder: t("workflows.form.placeholders.signalName")
|
|
1195
1194
|
}
|
|
1196
1195
|
),
|
|
1197
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1196
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.form.descriptions.signalName") })
|
|
1198
1197
|
] }),
|
|
1199
1198
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
1200
|
-
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-
|
|
1199
|
+
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: t("workflows.form.timeout") }),
|
|
1201
1200
|
/* @__PURE__ */ jsx(
|
|
1202
1201
|
Input,
|
|
1203
1202
|
{
|
|
@@ -1215,13 +1214,13 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1215
1214
|
"aria-invalid": fieldErrors.signalTimeout ? true : void 0
|
|
1216
1215
|
}
|
|
1217
1216
|
),
|
|
1218
|
-
fieldErrors.signalTimeout ? /* @__PURE__ */ jsx("p", { className: "text-xs text-destructive mt-1", children: fieldErrors.signalTimeout }) : /* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1217
|
+
fieldErrors.signalTimeout ? /* @__PURE__ */ jsx("p", { className: "text-xs text-destructive mt-1", children: fieldErrors.signalTimeout }) : /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.form.descriptions.signalTimeout") })
|
|
1219
1218
|
] })
|
|
1220
1219
|
] }),
|
|
1221
1220
|
node.type === "waitForTimer" && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1222
|
-
/* @__PURE__ */ jsx("div", { className: "border-t border-
|
|
1221
|
+
/* @__PURE__ */ jsx("div", { className: "border-t border-border pt-4 mt-4", children: /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground mb-3", children: t("workflows.steps.types.WAIT_FOR_TIMER") }) }),
|
|
1223
1222
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
1224
|
-
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-
|
|
1223
|
+
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: t("workflows.activities.waitDuration") }),
|
|
1225
1224
|
/* @__PURE__ */ jsx(
|
|
1226
1225
|
Input,
|
|
1227
1226
|
{
|
|
@@ -1240,10 +1239,10 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1240
1239
|
"aria-invalid": fieldErrors.timerDuration ? true : void 0
|
|
1241
1240
|
}
|
|
1242
1241
|
),
|
|
1243
|
-
fieldErrors.timerDuration ? /* @__PURE__ */ jsx("p", { className: "text-xs text-destructive mt-1", children: fieldErrors.timerDuration }) : /* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1242
|
+
fieldErrors.timerDuration ? /* @__PURE__ */ jsx("p", { className: "text-xs text-destructive mt-1", children: fieldErrors.timerDuration }) : /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.activities.waitDurationDescription") })
|
|
1244
1243
|
] }),
|
|
1245
1244
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
1246
|
-
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-
|
|
1245
|
+
/* @__PURE__ */ jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: t("workflows.activities.waitUntil") }),
|
|
1247
1246
|
/* @__PURE__ */ jsx(
|
|
1248
1247
|
Input,
|
|
1249
1248
|
{
|
|
@@ -1263,26 +1262,23 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1263
1262
|
"aria-invalid": fieldErrors.timerUntil ? true : void 0
|
|
1264
1263
|
}
|
|
1265
1264
|
),
|
|
1266
|
-
fieldErrors.timerUntil ? /* @__PURE__ */ jsx("p", { className: "text-xs text-destructive mt-1", children: fieldErrors.timerUntil }) : /* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1265
|
+
fieldErrors.timerUntil ? /* @__PURE__ */ jsx("p", { className: "text-xs text-destructive mt-1", children: fieldErrors.timerUntil }) : /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.activities.waitUntilDescription") })
|
|
1267
1266
|
] })
|
|
1268
1267
|
] }),
|
|
1269
|
-
/* @__PURE__ */ jsxs("div", { className: "border-t border-
|
|
1268
|
+
/* @__PURE__ */ jsxs("div", { className: "border-t border-border pt-4 mt-4", children: [
|
|
1270
1269
|
/* @__PURE__ */ jsxs(
|
|
1271
|
-
|
|
1270
|
+
Button,
|
|
1272
1271
|
{
|
|
1273
1272
|
type: "button",
|
|
1273
|
+
variant: "ghost",
|
|
1274
1274
|
onClick: () => setShowAdvanced(!showAdvanced),
|
|
1275
|
-
className: "
|
|
1275
|
+
className: "h-auto w-full justify-between px-0 py-0 text-left hover:bg-transparent",
|
|
1276
1276
|
children: [
|
|
1277
1277
|
/* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground", children: t("workflows.form.advancedConfiguration") }),
|
|
1278
1278
|
/* @__PURE__ */ jsx(
|
|
1279
|
-
|
|
1279
|
+
ChevronDown,
|
|
1280
1280
|
{
|
|
1281
|
-
className: `
|
|
1282
|
-
fill: "none",
|
|
1283
|
-
stroke: "currentColor",
|
|
1284
|
-
viewBox: "0 0 24 24",
|
|
1285
|
-
children: /* @__PURE__ */ jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" })
|
|
1281
|
+
className: `size-5 transition-transform ${showAdvanced ? "rotate-180" : ""}`
|
|
1286
1282
|
}
|
|
1287
1283
|
)
|
|
1288
1284
|
]
|
|
@@ -1296,7 +1292,7 @@ function NodeEditDialog({ node, isOpen, onClose, onSave, onDelete }) {
|
|
|
1296
1292
|
onChange: setAdvancedConfig
|
|
1297
1293
|
}
|
|
1298
1294
|
),
|
|
1299
|
-
/* @__PURE__ */ jsx("p", { className: "text-xs text-
|
|
1295
|
+
/* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground mt-1", children: t("workflows.form.descriptions.advancedConfig") })
|
|
1300
1296
|
] })
|
|
1301
1297
|
] })
|
|
1302
1298
|
] }) }),
|