@ixo/editor 6.29.0 → 6.29.1
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/{chunk-LMZV7QFM.js → chunk-LY32OATI.js} +2 -5
- package/dist/chunk-LY32OATI.js.map +1 -0
- package/dist/{chunk-C44S6WAW.js → chunk-OAAEXL7Q.js} +2 -2
- package/dist/{chunk-GEJ2KLBL.js → chunk-RFTH7IX3.js} +242 -208
- package/dist/chunk-RFTH7IX3.js.map +1 -0
- package/dist/core/index.js +2 -2
- package/dist/index.js +3 -3
- package/dist/mantine/index.js +2 -2
- package/package.json +1 -1
- package/dist/chunk-GEJ2KLBL.js.map +0 -1
- package/dist/chunk-LMZV7QFM.js.map +0 -1
- /package/dist/{chunk-C44S6WAW.js.map → chunk-OAAEXL7Q.js.map} +0 -0
|
@@ -130,7 +130,7 @@ import {
|
|
|
130
130
|
writeActionState,
|
|
131
131
|
writeRunRecordAndReconcile,
|
|
132
132
|
xeroOracleActivityForBlockForEditor
|
|
133
|
-
} from "./chunk-
|
|
133
|
+
} from "./chunk-LY32OATI.js";
|
|
134
134
|
|
|
135
135
|
// src/mantine/hooks/usePanel.ts
|
|
136
136
|
import { useCallback, useMemo, useEffect, useRef } from "react";
|
|
@@ -1981,7 +1981,7 @@ var GeneralTab = ({
|
|
|
1981
1981
|
};
|
|
1982
1982
|
|
|
1983
1983
|
// src/mantine/components/Layouts/BaseRightPanelLayout.tsx
|
|
1984
|
-
import { ActionIcon as
|
|
1984
|
+
import { ActionIcon as ActionIcon6, Box as Box3, Flex as Flex2, Stack as Stack11, Text as Text9 } from "@mantine/core";
|
|
1985
1985
|
import { IconAdjustmentsHorizontal, IconBolt, IconBrain, IconGitCompare, IconHistory, IconHourglass, IconSettings, IconShieldCheck as IconShieldCheck2, IconWand, IconX as IconX3 } from "@tabler/icons-react";
|
|
1986
1986
|
import React24, { useContext as useContext3, useEffect as useEffect12, useMemo as useMemo9 } from "react";
|
|
1987
1987
|
|
|
@@ -2058,10 +2058,13 @@ function TabsSelection({ tabs, activeTab, onTabChange, defaultValue, stickyTabs
|
|
|
2058
2058
|
|
|
2059
2059
|
// src/mantine/components/PanelTabBar.tsx
|
|
2060
2060
|
import React11 from "react";
|
|
2061
|
-
import { Box as Box2, Button as Button3, Group as Group3 } from "@mantine/core";
|
|
2061
|
+
import { ActionIcon as ActionIcon3, Box as Box2, Button as Button3, Group as Group3, Tooltip } from "@mantine/core";
|
|
2062
2062
|
function PanelTabBar({ tabs, activeTab, onChange }) {
|
|
2063
2063
|
return /* @__PURE__ */ React11.createElement(Box2, { className: "ixo-hide-scrollbar", style: { overflowX: "auto" } }, /* @__PURE__ */ React11.createElement(Group3, { gap: 2, p: 2, w: "max-content", bg: "neutralColor.3", style: { borderRadius: 10 }, wrap: "nowrap" }, tabs.map((tab) => {
|
|
2064
2064
|
const active = tab.value === activeTab;
|
|
2065
|
+
if (tab.iconOnly) {
|
|
2066
|
+
return /* @__PURE__ */ React11.createElement(Tooltip, { key: tab.value, label: tab.label }, /* @__PURE__ */ React11.createElement(ActionIcon3, { h: 28, w: 28, variant: active ? "secondary" : "ghost", "data-active": active || void 0, "aria-label": tab.label, onClick: () => onChange(tab.value) }, tab.icon));
|
|
2067
|
+
}
|
|
2065
2068
|
return /* @__PURE__ */ React11.createElement(
|
|
2066
2069
|
Button3,
|
|
2067
2070
|
{
|
|
@@ -3035,7 +3038,7 @@ function ConditionsTab({ block, editor }) {
|
|
|
3035
3038
|
|
|
3036
3039
|
// src/mantine/components/SkillsTab.tsx
|
|
3037
3040
|
import React21, { useCallback as useCallback13, useEffect as useEffect11, useState as useState10, useRef as useRef5 } from "react";
|
|
3038
|
-
import { Stack as Stack9, Text as Text7, Group as Group5, Card as Card2, Badge as Badge3, Loader as Loader2, ActionIcon as
|
|
3041
|
+
import { Stack as Stack9, Text as Text7, Group as Group5, Card as Card2, Badge as Badge3, Loader as Loader2, ActionIcon as ActionIcon4 } from "@mantine/core";
|
|
3039
3042
|
import { IconX as IconX2 } from "@tabler/icons-react";
|
|
3040
3043
|
|
|
3041
3044
|
// src/mantine/components/Base/BaseMultiSelect.tsx
|
|
@@ -3145,7 +3148,7 @@ function SkillsTab({ block, editor }) {
|
|
|
3145
3148
|
border: "1px solid var(--mantine-color-neutralColor-5)"
|
|
3146
3149
|
}
|
|
3147
3150
|
},
|
|
3148
|
-
/* @__PURE__ */ React21.createElement(Stack9, { gap: "sm" }, /* @__PURE__ */ React21.createElement(Group5, { justify: "space-between", align: "center" }, /* @__PURE__ */ React21.createElement(Text7, { size: "sm", fw: 500 }, skill.name), /* @__PURE__ */ React21.createElement(
|
|
3151
|
+
/* @__PURE__ */ React21.createElement(Stack9, { gap: "sm" }, /* @__PURE__ */ React21.createElement(Group5, { justify: "space-between", align: "center" }, /* @__PURE__ */ React21.createElement(Text7, { size: "sm", fw: 500 }, skill.name), /* @__PURE__ */ React21.createElement(ActionIcon4, { variant: "subtle", color: "red", size: "sm", onClick: () => removeSkill(skill.cid) }, /* @__PURE__ */ React21.createElement(IconX2, { size: 14 }))), skill.description && /* @__PURE__ */ React21.createElement(Text7, { size: "xs", c: "dimmed" }, skill.description), /* @__PURE__ */ React21.createElement(Group5, { gap: "xs" }, skill.license && /* @__PURE__ */ React21.createElement(Badge3, { size: "xs", variant: "outline", style: { borderColor: "var(--mantine-color-neutralColor-5)", color: "var(--mantine-color-dimmed)" } }, skill.license), skill.compatibility && /* @__PURE__ */ React21.createElement(Badge3, { size: "xs", variant: "outline", style: { borderColor: "var(--mantine-color-neutralColor-5)", color: "var(--mantine-color-dimmed)" } }, skill.compatibility)), /* @__PURE__ */ React21.createElement(Text7, { size: "xs", c: "dimmed", style: { fontFamily: "monospace" } }, "CID: ", skill.cid))
|
|
3149
3152
|
))));
|
|
3150
3153
|
}
|
|
3151
3154
|
|
|
@@ -3270,11 +3273,11 @@ var TtlTab = ({ editor, block }) => {
|
|
|
3270
3273
|
|
|
3271
3274
|
// src/mantine/components/PanelMaximizeButton.tsx
|
|
3272
3275
|
import React23 from "react";
|
|
3273
|
-
import { ActionIcon as
|
|
3276
|
+
import { ActionIcon as ActionIcon5 } from "@mantine/core";
|
|
3274
3277
|
import { IconArrowsMaximize, IconArrowsMinimize } from "@tabler/icons-react";
|
|
3275
3278
|
function PanelMaximizeButton({ isMaximized, onToggleMaximize, isMobile }) {
|
|
3276
3279
|
if (isMobile) return null;
|
|
3277
|
-
return /* @__PURE__ */ React23.createElement(
|
|
3280
|
+
return /* @__PURE__ */ React23.createElement(ActionIcon5, { onClick: onToggleMaximize, variant: "secondary", "aria-label": isMaximized ? "Minimize panel" : "Maximize panel" }, isMaximized ? icon(IconArrowsMinimize) : icon(IconArrowsMaximize));
|
|
3278
3281
|
}
|
|
3279
3282
|
|
|
3280
3283
|
// src/mantine/components/Layouts/BaseRightPanelLayout.tsx
|
|
@@ -3288,7 +3291,7 @@ function GroupedTabContent({ items }) {
|
|
|
3288
3291
|
if (items.length === 1) return /* @__PURE__ */ React24.createElement(React24.Fragment, null, items[0].content);
|
|
3289
3292
|
return /* @__PURE__ */ React24.createElement(Stack11, { gap: "xl" }, items.map((item) => /* @__PURE__ */ React24.createElement(Stack11, { key: item.value, gap: "xs" }, /* @__PURE__ */ React24.createElement(Text9, { fz: 12, fw: 600, c: "dimmed", tt: "uppercase" }, item.label), item.content)));
|
|
3290
3293
|
}
|
|
3291
|
-
function buildStepTabs(tabs, t) {
|
|
3294
|
+
function buildStepTabs(tabs, t, showSettings) {
|
|
3292
3295
|
const actionItems = tabs.filter((tab) => !SET_VALUES.has(tab.value) && !SETTINGS_VALUES.has(tab.value));
|
|
3293
3296
|
const setItems = tabs.filter((tab) => SET_VALUES.has(tab.value));
|
|
3294
3297
|
const settingsItems = tabs.filter((tab) => SETTINGS_VALUES.has(tab.value));
|
|
@@ -3335,17 +3338,28 @@ function buildStepTabs(tabs, t) {
|
|
|
3335
3338
|
}
|
|
3336
3339
|
)
|
|
3337
3340
|
},
|
|
3338
|
-
...settingsItems.length ? [
|
|
3341
|
+
...showSettings && settingsItems.length ? [
|
|
3339
3342
|
{
|
|
3340
3343
|
value: "settings",
|
|
3341
3344
|
label: t("stepTabs.settings", { defaultValue: "Settings" }),
|
|
3342
3345
|
icon: icon(IconSettings),
|
|
3343
|
-
content: /* @__PURE__ */ React24.createElement(GroupedTabContent, { items: settingsItems })
|
|
3346
|
+
content: /* @__PURE__ */ React24.createElement(GroupedTabContent, { items: settingsItems }),
|
|
3347
|
+
iconOnly: true
|
|
3344
3348
|
}
|
|
3345
3349
|
] : []
|
|
3346
3350
|
];
|
|
3347
3351
|
}
|
|
3348
|
-
function BaseRightPanelLayout({
|
|
3352
|
+
function BaseRightPanelLayout({
|
|
3353
|
+
title,
|
|
3354
|
+
isTemplate: _isTemplate = true,
|
|
3355
|
+
captionContent,
|
|
3356
|
+
onClose,
|
|
3357
|
+
children,
|
|
3358
|
+
tabs,
|
|
3359
|
+
context,
|
|
3360
|
+
stepTabs = false,
|
|
3361
|
+
showSettings = _isTemplate
|
|
3362
|
+
}) {
|
|
3349
3363
|
const { setMaximized, isMaximized } = useListBlocksUI();
|
|
3350
3364
|
const { askCompanion } = useBlocknoteHandlers();
|
|
3351
3365
|
const t = useTranslate();
|
|
@@ -3389,7 +3403,7 @@ function BaseRightPanelLayout({ title, isTemplate: _isTemplate = true, captionCo
|
|
|
3389
3403
|
return {};
|
|
3390
3404
|
}
|
|
3391
3405
|
}, [context?.block.props.skill]);
|
|
3392
|
-
const renderTabs = stepTabs && allTabs.length > 0 ? buildStepTabs(allTabs, t) : allTabs;
|
|
3406
|
+
const renderTabs = stepTabs && allTabs.length > 0 ? buildStepTabs(allTabs, t, showSettings) : allTabs;
|
|
3393
3407
|
const tabState = useTabState(renderTabs);
|
|
3394
3408
|
const embedded = useContext3(FlowPanelEmbeddedContext);
|
|
3395
3409
|
return (
|
|
@@ -3409,7 +3423,7 @@ function BaseRightPanelLayout({ title, isTemplate: _isTemplate = true, captionCo
|
|
|
3409
3423
|
}
|
|
3410
3424
|
},
|
|
3411
3425
|
!embedded && /* @__PURE__ */ React24.createElement(Flex2, { align: "center", px: "md", justify: "space-between", gap: "md" }, title ? /* @__PURE__ */ React24.createElement(Text9, { fz: 16, fw: 400, truncate: "end", style: { flex: 1, minWidth: 0 } }, title) : /* @__PURE__ */ React24.createElement(Box3, { style: { flex: 1 } }), /* @__PURE__ */ React24.createElement(Flex2, { align: "center", gap: "5px" }, /* @__PURE__ */ React24.createElement(PanelMaximizeButton, { isMaximized, onToggleMaximize: () => setMaximized(!isMaximized), isMobile }), /* @__PURE__ */ React24.createElement(
|
|
3412
|
-
|
|
3426
|
+
ActionIcon6,
|
|
3413
3427
|
{
|
|
3414
3428
|
onClick: () => {
|
|
3415
3429
|
onClose();
|
|
@@ -3574,7 +3588,7 @@ var CheckboxTemplateView = ({ editor, block }) => {
|
|
|
3574
3588
|
|
|
3575
3589
|
// src/mantine/blocks/checkbox/flow/FlowView.tsx
|
|
3576
3590
|
import React29, { useMemo as useMemo11 } from "react";
|
|
3577
|
-
import { Checkbox as Checkbox3, Group as Group8, Stack as Stack13, Text as Text11, Tooltip } from "@mantine/core";
|
|
3591
|
+
import { Checkbox as Checkbox3, Group as Group8, Stack as Stack13, Text as Text11, Tooltip as Tooltip2 } from "@mantine/core";
|
|
3578
3592
|
|
|
3579
3593
|
// src/mantine/blocks/checkbox/flow/FlowConfig.tsx
|
|
3580
3594
|
import React28 from "react";
|
|
@@ -3602,7 +3616,7 @@ var CheckboxFlowView = ({ editor, block, isDisabled }) => {
|
|
|
3602
3616
|
});
|
|
3603
3617
|
};
|
|
3604
3618
|
const checkboxElement = /* @__PURE__ */ React29.createElement(Checkbox3, { contentEditable: false, disabled, checked, onChange: handleCheckboxChange, style: { flexShrink: 0 }, onClick: (e) => e.stopPropagation() });
|
|
3605
|
-
return /* @__PURE__ */ React29.createElement(BaseContainer, { blockId: block.id, onClick: open }, /* @__PURE__ */ React29.createElement(Group8, { wrap: "nowrap", justify: "space-between", align: "center" }, /* @__PURE__ */ React29.createElement(Group8, { wrap: "nowrap", align: "center" }, getIcon("square-check", block.props.icon), /* @__PURE__ */ React29.createElement(Stack13, { gap: "xs", style: { flex: 1 } }, /* @__PURE__ */ React29.createElement(Text11, { fw: 500, size: "sm", contentEditable: false }, block.props.title || "Checkbox Title"), /* @__PURE__ */ React29.createElement(Text11, { size: "xs", c: "dimmed", contentEditable: false }, block.props.description || "Checkbox description"))), disabled && isDisabled?.message ? /* @__PURE__ */ React29.createElement(
|
|
3619
|
+
return /* @__PURE__ */ React29.createElement(BaseContainer, { blockId: block.id, onClick: open }, /* @__PURE__ */ React29.createElement(Group8, { wrap: "nowrap", justify: "space-between", align: "center" }, /* @__PURE__ */ React29.createElement(Group8, { wrap: "nowrap", align: "center" }, getIcon("square-check", block.props.icon), /* @__PURE__ */ React29.createElement(Stack13, { gap: "xs", style: { flex: 1 } }, /* @__PURE__ */ React29.createElement(Text11, { fw: 500, size: "sm", contentEditable: false }, block.props.title || "Checkbox Title"), /* @__PURE__ */ React29.createElement(Text11, { size: "xs", c: "dimmed", contentEditable: false }, block.props.description || "Checkbox description"))), disabled && isDisabled?.message ? /* @__PURE__ */ React29.createElement(Tooltip2, { label: isDisabled.message, position: "left", withArrow: true }, checkboxElement) : checkboxElement));
|
|
3606
3620
|
};
|
|
3607
3621
|
|
|
3608
3622
|
// src/mantine/blocks/hooks/useBlockConditions.ts
|
|
@@ -5208,7 +5222,7 @@ var ListTemplateView = ({ editor, block }) => {
|
|
|
5208
5222
|
|
|
5209
5223
|
// src/mantine/blocks/list/flow/ListFlowView.tsx
|
|
5210
5224
|
import React93, { useState as useState38, useEffect as useEffect36, useMemo as useMemo42, useCallback as useCallback31, useRef as useRef11 } from "react";
|
|
5211
|
-
import { Stack as Stack59, Text as Text60, ActionIcon as
|
|
5225
|
+
import { Stack as Stack59, Text as Text60, ActionIcon as ActionIcon15, Loader as Loader16, Center as Center9, Flex as Flex28, Title as Title5, Collapse as Collapse2, Tooltip as Tooltip10 } from "@mantine/core";
|
|
5212
5226
|
|
|
5213
5227
|
// src/mantine/blocks/list/linked_resources/ResourcesList.tsx
|
|
5214
5228
|
import React38 from "react";
|
|
@@ -5216,7 +5230,7 @@ import { Stack as Stack16, Text as Text14, Box as Box4, Flex as Flex4 } from "@m
|
|
|
5216
5230
|
import { IconPdf, IconFileTypeHtml, IconJson, IconPhoto, IconFileText as IconFileText3, IconFile as IconFile2 } from "@tabler/icons-react";
|
|
5217
5231
|
|
|
5218
5232
|
// src/mantine/blocks/list/ListItemContainer.tsx
|
|
5219
|
-
import { Center, Flex as Flex3, Paper as Paper3, Tooltip as
|
|
5233
|
+
import { Center, Flex as Flex3, Paper as Paper3, Tooltip as Tooltip3 } from "@mantine/core";
|
|
5220
5234
|
import { IconPlayerPlay } from "@tabler/icons-react";
|
|
5221
5235
|
import React36 from "react";
|
|
5222
5236
|
function ListItemContainer({
|
|
@@ -5254,7 +5268,7 @@ function ListItemContainer({
|
|
|
5254
5268
|
withIcon && /* @__PURE__ */ React36.createElement(Paper3, { ml: 12, w: 28, h: 28, radius: "xl", style: { backgroundColor: "color-mix(in srgb, var(--mantine-color-accent-5) 20%, transparent)" } }, /* @__PURE__ */ React36.createElement(Center, { w: 28, h: 28 }, /* @__PURE__ */ React36.createElement(IconPlayerPlay, { size: 20, color: "var(--mantine-color-accent-5)" })))
|
|
5255
5269
|
);
|
|
5256
5270
|
if (tooltip) {
|
|
5257
|
-
return /* @__PURE__ */ React36.createElement(
|
|
5271
|
+
return /* @__PURE__ */ React36.createElement(Tooltip3, { label: tooltip, disabled: !disabled, position: tooltipPosition, withArrow: true }, content);
|
|
5258
5272
|
}
|
|
5259
5273
|
return content;
|
|
5260
5274
|
}
|
|
@@ -5810,13 +5824,13 @@ var SelectionPanelEmpty = ({ message = "No item selected" }) => {
|
|
|
5810
5824
|
|
|
5811
5825
|
// src/mantine/blocks/list/transactions/TransactionDetails.tsx
|
|
5812
5826
|
import React57, { useEffect as useEffect15, useState as useState14 } from "react";
|
|
5813
|
-
import { Text as Text31, Tooltip as
|
|
5827
|
+
import { Text as Text31, Tooltip as Tooltip4, Stack as Stack32, Group as Group13, Paper as Paper5, Divider as Divider4, CopyButton, ActionIcon as ActionIcon7 } from "@mantine/core";
|
|
5814
5828
|
import { IconCopy, IconCheck } from "@tabler/icons-react";
|
|
5815
5829
|
var CopyableField = ({ label, value, truncate: truncate2 = true }) => {
|
|
5816
5830
|
if (!value) {
|
|
5817
5831
|
return /* @__PURE__ */ React57.createElement(Stack32, { gap: 4 }, /* @__PURE__ */ React57.createElement(Text31, { size: "xs", c: "dimmed" }, label), /* @__PURE__ */ React57.createElement(Text31, { size: "sm" }, "-"));
|
|
5818
5832
|
}
|
|
5819
|
-
return /* @__PURE__ */ React57.createElement(Stack32, { gap: 4 }, /* @__PURE__ */ React57.createElement(Text31, { size: "xs", c: "dimmed" }, label), /* @__PURE__ */ React57.createElement(Group13, { gap: "xs" }, /* @__PURE__ */ React57.createElement(
|
|
5833
|
+
return /* @__PURE__ */ React57.createElement(Stack32, { gap: 4 }, /* @__PURE__ */ React57.createElement(Text31, { size: "xs", c: "dimmed" }, label), /* @__PURE__ */ React57.createElement(Group13, { gap: "xs" }, /* @__PURE__ */ React57.createElement(Tooltip4, { label: value, position: "top", disabled: !truncate2 }, /* @__PURE__ */ React57.createElement(Text31, { size: "sm", style: { fontFamily: "monospace" } }, truncate2 ? shortStr(value, 20, 6) : value)), /* @__PURE__ */ React57.createElement(CopyButton, { value, timeout: 2e3 }, ({ copied, copy }) => /* @__PURE__ */ React57.createElement(ActionIcon7, { size: "xs", variant: "subtle", color: copied ? "teal" : "gray", onClick: copy }, copied ? /* @__PURE__ */ React57.createElement(IconCheck, { size: 14 }) : /* @__PURE__ */ React57.createElement(IconCopy, { size: 14 })))));
|
|
5820
5834
|
};
|
|
5821
5835
|
var TransactionDetails = ({ transaction }) => {
|
|
5822
5836
|
const handlers = useBlocknoteHandlers();
|
|
@@ -6622,7 +6636,7 @@ var AssignmentTab = ({ editor, block: initialBlock }) => {
|
|
|
6622
6636
|
|
|
6623
6637
|
// src/mantine/components/AssignmentDisplay.tsx
|
|
6624
6638
|
import React64, { useMemo as useMemo18 } from "react";
|
|
6625
|
-
import { Stack as Stack37, Text as Text36, Flex as Flex21, Box as Box18, Popover as Popover2, ActionIcon as
|
|
6639
|
+
import { Stack as Stack37, Text as Text36, Flex as Flex21, Box as Box18, Popover as Popover2, ActionIcon as ActionIcon8, Tooltip as Tooltip5 } from "@mantine/core";
|
|
6626
6640
|
import { useDisclosure } from "@mantine/hooks";
|
|
6627
6641
|
import { IconCirclePlus2 } from "@tabler/icons-react";
|
|
6628
6642
|
var AVATAR_SIZE = 24;
|
|
@@ -6666,8 +6680,8 @@ var AssignmentDisplay = ({ block, onClick }) => {
|
|
|
6666
6680
|
const timestampData = assignmentState.assignedTimestamp;
|
|
6667
6681
|
const hasAssignment = !!assignedActorData?.did;
|
|
6668
6682
|
if (!hasAssignment) {
|
|
6669
|
-
return /* @__PURE__ */ React64.createElement(
|
|
6670
|
-
|
|
6683
|
+
return /* @__PURE__ */ React64.createElement(Tooltip5, { label: "Assign responsibility", withArrow: true }, /* @__PURE__ */ React64.createElement(
|
|
6684
|
+
ActionIcon8,
|
|
6671
6685
|
{
|
|
6672
6686
|
size: AVATAR_SIZE,
|
|
6673
6687
|
radius: "xl",
|
|
@@ -6704,7 +6718,7 @@ import { useMemo as useMemo21 } from "react";
|
|
|
6704
6718
|
|
|
6705
6719
|
// src/mantine/components/CommitmentDisplay.tsx
|
|
6706
6720
|
import React66, { useMemo as useMemo20 } from "react";
|
|
6707
|
-
import { Stack as Stack38, Text as Text37, Flex as Flex22, Box as Box19, Popover as Popover3, ActionIcon as
|
|
6721
|
+
import { Stack as Stack38, Text as Text37, Flex as Flex22, Box as Box19, Popover as Popover3, ActionIcon as ActionIcon9, Tooltip as Tooltip6 } from "@mantine/core";
|
|
6708
6722
|
import { useDisclosure as useDisclosure2 } from "@mantine/hooks";
|
|
6709
6723
|
import { IconCircleDotted } from "@tabler/icons-react";
|
|
6710
6724
|
var AVATAR_SIZE2 = 24;
|
|
@@ -6749,8 +6763,8 @@ var CommitmentDisplay = ({ block, onClick }) => {
|
|
|
6749
6763
|
const commitmentExpiresAt = commitmentState.commitmentExpiresAt;
|
|
6750
6764
|
const hasCommitment = !!committedActorData?.did;
|
|
6751
6765
|
if (!hasCommitment) {
|
|
6752
|
-
return /* @__PURE__ */ React66.createElement(
|
|
6753
|
-
|
|
6766
|
+
return /* @__PURE__ */ React66.createElement(Tooltip6, { label: "Commit to action", withArrow: true }, /* @__PURE__ */ React66.createElement(
|
|
6767
|
+
ActionIcon9,
|
|
6754
6768
|
{
|
|
6755
6769
|
size: AVATAR_SIZE2,
|
|
6756
6770
|
radius: "xl",
|
|
@@ -6965,7 +6979,7 @@ import { Stack as Stack41, Text as Text40, Group as Group17 } from "@mantine/cor
|
|
|
6965
6979
|
|
|
6966
6980
|
// src/mantine/blocks/claim/flow/ClaimsListSheet.tsx
|
|
6967
6981
|
import React70, { useState as useState23, useEffect as useEffect24, useCallback as useCallback22, useMemo as useMemo25 } from "react";
|
|
6968
|
-
import { Loader as Loader5, Stack as Stack40, Text as Text39, ActionIcon as
|
|
6982
|
+
import { Loader as Loader5, Stack as Stack40, Text as Text39, ActionIcon as ActionIcon11, Alert as Alert6, Box as Box20, Group as Group16 } from "@mantine/core";
|
|
6969
6983
|
import { IconArrowLeft as IconArrowLeft2, IconAlertCircle as IconAlertCircle2 } from "@tabler/icons-react";
|
|
6970
6984
|
import { Survey as Survey2, SurveyModel as SurveyModel2 } from "@ixo/surveys";
|
|
6971
6985
|
|
|
@@ -7007,7 +7021,7 @@ function attachSurveyAnalytics({ model, handlers, flowType, sectionName, extraPr
|
|
|
7007
7021
|
|
|
7008
7022
|
// src/mantine/components/SurveyAiFillButton.tsx
|
|
7009
7023
|
import React69 from "react";
|
|
7010
|
-
import { ActionIcon as
|
|
7024
|
+
import { ActionIcon as ActionIcon10, Group as Group15, Tooltip as Tooltip7 } from "@mantine/core";
|
|
7011
7025
|
import { IconSparkles as IconSparkles2 } from "@tabler/icons-react";
|
|
7012
7026
|
function SurveyAiFillButton({ surveyId, title }) {
|
|
7013
7027
|
const handlers = useBlocknoteHandlers();
|
|
@@ -7015,7 +7029,7 @@ function SurveyAiFillButton({ surveyId, title }) {
|
|
|
7015
7029
|
const requestAiFill = handlers.requestAiFill;
|
|
7016
7030
|
if (!requestAiFill) return null;
|
|
7017
7031
|
const label = t("survey.aiFill.tooltip", { defaultValue: "Let AI fill this form for you" });
|
|
7018
|
-
return /* @__PURE__ */ React69.createElement(Group15, { justify: "flex-end" }, /* @__PURE__ */ React69.createElement(
|
|
7032
|
+
return /* @__PURE__ */ React69.createElement(Group15, { justify: "flex-end" }, /* @__PURE__ */ React69.createElement(Tooltip7, { label }, /* @__PURE__ */ React69.createElement(ActionIcon10, { variant: "default", size: "lg", radius: "sm", "aria-label": label, onClick: () => requestAiFill({ surveyId, title }) }, /* @__PURE__ */ React69.createElement(IconSparkles2, { size: 18 }))));
|
|
7019
7033
|
}
|
|
7020
7034
|
|
|
7021
7035
|
// src/mantine/blocks/claim/flow/ClaimsListSheet.tsx
|
|
@@ -7333,7 +7347,7 @@ var ClaimsListSheet = ({
|
|
|
7333
7347
|
pointerEvents: viewMode === "survey" ? "auto" : "none"
|
|
7334
7348
|
}
|
|
7335
7349
|
},
|
|
7336
|
-
/* @__PURE__ */ React70.createElement(Stack40, { gap: "md" }, /* @__PURE__ */ React70.createElement(Group16, { gap: "xs" }, /* @__PURE__ */ React70.createElement(
|
|
7350
|
+
/* @__PURE__ */ React70.createElement(Stack40, { gap: "md" }, /* @__PURE__ */ React70.createElement(Group16, { gap: "xs" }, /* @__PURE__ */ React70.createElement(ActionIcon11, { variant: "subtle", onClick: handleBackToList, size: "md" }, /* @__PURE__ */ React70.createElement(IconArrowLeft2, { size: 20 })), /* @__PURE__ */ React70.createElement(Text39, { size: "sm", c: "dimmed" }, "Back to claims list")), /* @__PURE__ */ React70.createElement(Box20, null, surveyLoading && /* @__PURE__ */ React70.createElement(Stack40, { align: "center", justify: "center", mih: 200 }, /* @__PURE__ */ React70.createElement(Loader5, { size: "lg" }), /* @__PURE__ */ React70.createElement(Text39, { size: "sm", c: "dimmed" }, "Loading survey template...")), surveyError && /* @__PURE__ */ React70.createElement(Alert6, { color: "red", icon: /* @__PURE__ */ React70.createElement(IconAlertCircle2, { size: 18 }) }, /* @__PURE__ */ React70.createElement(Text39, { size: "sm" }, surveyError)), !surveyLoading && !surveyError && surveyModel && /* @__PURE__ */ React70.createElement(React70.Fragment, null, /* @__PURE__ */ React70.createElement(SurveyAiFillButton, { surveyId: openSurveyId, title: openSurveyTitle }), /* @__PURE__ */ React70.createElement(Survey2, { model: surveyModel }))))
|
|
7337
7351
|
)
|
|
7338
7352
|
));
|
|
7339
7353
|
};
|
|
@@ -7460,7 +7474,7 @@ import { IconAlertCircle as IconAlertCircle4 } from "@tabler/icons-react";
|
|
|
7460
7474
|
|
|
7461
7475
|
// src/mantine/blocks/components/bid/components/BidItem.tsx
|
|
7462
7476
|
import React73, { useMemo as useMemo31 } from "react";
|
|
7463
|
-
import { Stack as Stack43, Text as Text42, Badge as Badge6, Group as Group19, ActionIcon as
|
|
7477
|
+
import { Stack as Stack43, Text as Text42, Badge as Badge6, Group as Group19, ActionIcon as ActionIcon12 } from "@mantine/core";
|
|
7464
7478
|
import { IconArrowRight } from "@tabler/icons-react";
|
|
7465
7479
|
|
|
7466
7480
|
// src/mantine/blocks/components/bid/components/BidViewPanel.tsx
|
|
@@ -7815,7 +7829,7 @@ var BidItem = ({ editor, block, bid, deedId, adminAddress, onRefresh, execution,
|
|
|
7815
7829
|
const displayDate = bid.created || "";
|
|
7816
7830
|
const displayStatus = bid.status;
|
|
7817
7831
|
const displayReason = bid.reason;
|
|
7818
|
-
return /* @__PURE__ */ React73.createElement(ListItemContainer, { isChecked: false }, /* @__PURE__ */ React73.createElement(Stack43, { gap: 4, style: { flex: 1 } }, /* @__PURE__ */ React73.createElement(Group19, { gap: "xs" }, /* @__PURE__ */ React73.createElement(Text42, { size: "xs", fw: 500 }, loadingProfile ? "Loading..." : displayName), userProfile?.verified && /* @__PURE__ */ React73.createElement(Text42, { size: "xs", c: "blue", fw: 600, title: "Verified user" }, "\u2713"), /* @__PURE__ */ React73.createElement(Badge6, { size: "xs", variant: "light", color: getRoleColor(bid.role) }, getRoleLabel(bid.role))), /* @__PURE__ */ React73.createElement(Text42, { size: "xs", c: "dimmed" }, "Submitted: ", formatDate(displayDate)), displayStatus === "rejected" && displayReason && /* @__PURE__ */ React73.createElement(Text42, { size: "xs", c: "red" }, "Reason: ", displayReason)), /* @__PURE__ */ React73.createElement(Group19, { gap: "xs" }, displayStatus && /* @__PURE__ */ React73.createElement(Badge6, { size: "sm", color: getStatusColor(displayStatus) }, getStatusLabel(displayStatus)), /* @__PURE__ */ React73.createElement(
|
|
7832
|
+
return /* @__PURE__ */ React73.createElement(ListItemContainer, { isChecked: false }, /* @__PURE__ */ React73.createElement(Stack43, { gap: 4, style: { flex: 1 } }, /* @__PURE__ */ React73.createElement(Group19, { gap: "xs" }, /* @__PURE__ */ React73.createElement(Text42, { size: "xs", fw: 500 }, loadingProfile ? "Loading..." : displayName), userProfile?.verified && /* @__PURE__ */ React73.createElement(Text42, { size: "xs", c: "blue", fw: 600, title: "Verified user" }, "\u2713"), /* @__PURE__ */ React73.createElement(Badge6, { size: "xs", variant: "light", color: getRoleColor(bid.role) }, getRoleLabel(bid.role))), /* @__PURE__ */ React73.createElement(Text42, { size: "xs", c: "dimmed" }, "Submitted: ", formatDate(displayDate)), displayStatus === "rejected" && displayReason && /* @__PURE__ */ React73.createElement(Text42, { size: "xs", c: "red" }, "Reason: ", displayReason)), /* @__PURE__ */ React73.createElement(Group19, { gap: "xs" }, displayStatus && /* @__PURE__ */ React73.createElement(Badge6, { size: "sm", color: getStatusColor(displayStatus) }, getStatusLabel(displayStatus)), /* @__PURE__ */ React73.createElement(ActionIcon12, { variant: "subtle", size: "lg", onClick: openBidPanel }, /* @__PURE__ */ React73.createElement(IconArrowRight, { size: 20 }))));
|
|
7819
7833
|
};
|
|
7820
7834
|
|
|
7821
7835
|
// src/mantine/blocks/components/bid/hooks/useBids.ts
|
|
@@ -8291,7 +8305,7 @@ import {
|
|
|
8291
8305
|
Loader as Loader11,
|
|
8292
8306
|
Stack as Stack48,
|
|
8293
8307
|
Text as Text48,
|
|
8294
|
-
ActionIcon as
|
|
8308
|
+
ActionIcon as ActionIcon13,
|
|
8295
8309
|
Alert as Alert10,
|
|
8296
8310
|
Badge as Badge8,
|
|
8297
8311
|
Group as Group22,
|
|
@@ -8397,7 +8411,7 @@ import { Survey as Survey5, SurveyModel as SurveyModel5 } from "@ixo/surveys";
|
|
|
8397
8411
|
|
|
8398
8412
|
// src/mantine/blocks/evaluator/flow/RubricEvaluationResults.tsx
|
|
8399
8413
|
import React78, { useMemo as useMemo35 } from "react";
|
|
8400
|
-
import { Paper as Paper6, Stack as Stack47, Text as Text47, Badge as Badge7, Group as Group21, Progress as Progress2, Accordion as Accordion2, ThemeIcon as ThemeIcon2, Timeline, Box as Box22, Tooltip as
|
|
8414
|
+
import { Paper as Paper6, Stack as Stack47, Text as Text47, Badge as Badge7, Group as Group21, Progress as Progress2, Accordion as Accordion2, ThemeIcon as ThemeIcon2, Timeline, Box as Box22, Tooltip as Tooltip8, Divider as Divider5, Card as Card4, RingProgress, Center as Center5 } from "@mantine/core";
|
|
8401
8415
|
import { IconCheck as IconCheck3, IconX as IconX6, IconAlertTriangle, IconClock as IconClock3, IconBrain as IconBrain2, IconUser as IconUser5, IconArrowUp, IconCalculator, IconCloud, IconChecklist as IconChecklist2, IconInfoCircle } from "@tabler/icons-react";
|
|
8402
8416
|
var getOutcomeConfig = (outcome) => {
|
|
8403
8417
|
switch (outcome) {
|
|
@@ -8540,7 +8554,7 @@ var RubricEvaluationResults = ({ evaluation }) => {
|
|
|
8540
8554
|
leftSection: trace.actor.type === "ai" ? /* @__PURE__ */ React78.createElement(IconBrain2, { size: 12, style: { display: "block" } }) : /* @__PURE__ */ React78.createElement(IconUser5, { size: 12, style: { display: "block" } })
|
|
8541
8555
|
},
|
|
8542
8556
|
trace.actor.type === "ai" ? "AI Evaluated" : "Human Evaluated"
|
|
8543
|
-
), trace.rubricName && /* @__PURE__ */ React78.createElement(Badge7, { variant: "outline", color: "gray" }, trace.rubricName), /* @__PURE__ */ React78.createElement(Badge7, { variant: "outline", color: "gray" }, "v", trace.rubricVersion)), /* @__PURE__ */ React78.createElement(Group21, { gap: "xs" }, /* @__PURE__ */ React78.createElement(
|
|
8557
|
+
), trace.rubricName && /* @__PURE__ */ React78.createElement(Badge7, { variant: "outline", color: "gray" }, trace.rubricName), /* @__PURE__ */ React78.createElement(Badge7, { variant: "outline", color: "gray" }, "v", trace.rubricVersion)), /* @__PURE__ */ React78.createElement(Group21, { gap: "xs" }, /* @__PURE__ */ React78.createElement(Tooltip8, { label: "Execution ID" }, /* @__PURE__ */ React78.createElement(Text47, { size: "xs", c: "dimmed", style: { fontFamily: "monospace" } }, trace.result.executionId.slice(0, 12), "..."))))), /* @__PURE__ */ React78.createElement(Divider5, { my: "xs" }), /* @__PURE__ */ React78.createElement(
|
|
8544
8558
|
Accordion2,
|
|
8545
8559
|
{
|
|
8546
8560
|
variant: "separated",
|
|
@@ -9034,8 +9048,8 @@ var ClaimsList = ({ collectionId, collectionName, deedId, adminAddress, onEvalua
|
|
|
9034
9048
|
marginBottom: "1rem"
|
|
9035
9049
|
}
|
|
9036
9050
|
},
|
|
9037
|
-
/* @__PURE__ */ React79.createElement("div", { style: { display: "flex", alignItems: "center", gap: "0.5rem" } }, viewMode === "survey" && /* @__PURE__ */ React79.createElement(
|
|
9038
|
-
/* @__PURE__ */ React79.createElement(Group22, { gap: "xs" }, viewMode === "list" && /* @__PURE__ */ React79.createElement(
|
|
9051
|
+
/* @__PURE__ */ React79.createElement("div", { style: { display: "flex", alignItems: "center", gap: "0.5rem" } }, viewMode === "survey" && /* @__PURE__ */ React79.createElement(ActionIcon13, { variant: "subtle", onClick: handleBackToList }, /* @__PURE__ */ React79.createElement(IconArrowLeft3, { size: 20 })), /* @__PURE__ */ React79.createElement(Title4, { order: 3 }, viewMode === "list" ? `${collectionName} - Claims` : `Evaluate Claim #${selectedClaim?.claimId}`), viewMode === "list" && !loading && claims.length > 0 && /* @__PURE__ */ React79.createElement(Badge8, { size: "lg", variant: "light" }, claims.length)),
|
|
9052
|
+
/* @__PURE__ */ React79.createElement(Group22, { gap: "xs" }, viewMode === "list" && /* @__PURE__ */ React79.createElement(ActionIcon13, { variant: "subtle", onClick: fetchClaims, loading, title: "Refresh claims" }, /* @__PURE__ */ React79.createElement(IconRefresh, { size: 18 })), /* @__PURE__ */ React79.createElement(CloseButton, { onClick: closePanel }))
|
|
9039
9053
|
),
|
|
9040
9054
|
/* @__PURE__ */ React79.createElement(
|
|
9041
9055
|
"div",
|
|
@@ -9147,7 +9161,7 @@ var ClaimListItem = ({ claim, onViewClaim }) => {
|
|
|
9147
9161
|
tabIndex: 0,
|
|
9148
9162
|
style: { cursor: "pointer" }
|
|
9149
9163
|
},
|
|
9150
|
-
/* @__PURE__ */ React79.createElement(ListItemContainer, { isChecked: false }, /* @__PURE__ */ React79.createElement(Stack48, { gap: 4, style: { flex: 1 } }, /* @__PURE__ */ React79.createElement(Text48, { size: "sm", fw: 500 }, "Claim #", claim.claimId), /* @__PURE__ */ React79.createElement(Text48, { size: "xs", c: "dimmed" }, "Submitted: ", formatDate(claim.submissionDate || claim.submittedAt)), claim.agentDid && /* @__PURE__ */ React79.createElement(Group22, { gap: 4 }, /* @__PURE__ */ React79.createElement(Text48, { size: "xs", c: "dimmed" }, "Agent: ", loadingProfile ? "Loading..." : displayName), userProfile?.verified && /* @__PURE__ */ React79.createElement(Text48, { size: "xs", c: "blue", fw: 600, title: "Verified user" }, "\u2713"))), /* @__PURE__ */ React79.createElement(Stack48, { gap: 4, align: "flex-end" }, /* @__PURE__ */ React79.createElement(Badge8, { color: claimStatus2.color, size: "sm" }, claimStatus2.label), /* @__PURE__ */ React79.createElement(
|
|
9164
|
+
/* @__PURE__ */ React79.createElement(ListItemContainer, { isChecked: false }, /* @__PURE__ */ React79.createElement(Stack48, { gap: 4, style: { flex: 1 } }, /* @__PURE__ */ React79.createElement(Text48, { size: "sm", fw: 500 }, "Claim #", claim.claimId), /* @__PURE__ */ React79.createElement(Text48, { size: "xs", c: "dimmed" }, "Submitted: ", formatDate(claim.submissionDate || claim.submittedAt)), claim.agentDid && /* @__PURE__ */ React79.createElement(Group22, { gap: 4 }, /* @__PURE__ */ React79.createElement(Text48, { size: "xs", c: "dimmed" }, "Agent: ", loadingProfile ? "Loading..." : displayName), userProfile?.verified && /* @__PURE__ */ React79.createElement(Text48, { size: "xs", c: "blue", fw: 600, title: "Verified user" }, "\u2713"))), /* @__PURE__ */ React79.createElement(Stack48, { gap: 4, align: "flex-end" }, /* @__PURE__ */ React79.createElement(Badge8, { color: claimStatus2.color, size: "sm" }, claimStatus2.label), /* @__PURE__ */ React79.createElement(ActionIcon13, { variant: "subtle", size: "sm" }, /* @__PURE__ */ React79.createElement(IconArrowRight2, { size: 16 }))))
|
|
9151
9165
|
);
|
|
9152
9166
|
};
|
|
9153
9167
|
|
|
@@ -10038,7 +10052,7 @@ function categorizeResources(linkedResources, services) {
|
|
|
10038
10052
|
|
|
10039
10053
|
// src/mantine/blocks/list/ListActionsMenu.tsx
|
|
10040
10054
|
import React92, { useState as useState37 } from "react";
|
|
10041
|
-
import { Menu, Text as Text59, ActionIcon as
|
|
10055
|
+
import { Menu, Text as Text59, ActionIcon as ActionIcon14, Flex as Flex27, Box as Box29, Collapse, Tooltip as Tooltip9 } from "@mantine/core";
|
|
10042
10056
|
import {
|
|
10043
10057
|
IconArrowDown,
|
|
10044
10058
|
IconArrowUp as IconArrowUp2,
|
|
@@ -10066,7 +10080,7 @@ var SortRow = ({ opt, value, onChange }) => {
|
|
|
10066
10080
|
}
|
|
10067
10081
|
},
|
|
10068
10082
|
/* @__PURE__ */ React92.createElement(Flex27, { align: "center", justify: "space-between", gap: "xs" }, /* @__PURE__ */ React92.createElement(
|
|
10069
|
-
|
|
10083
|
+
ActionIcon14,
|
|
10070
10084
|
{
|
|
10071
10085
|
variant: "subtle",
|
|
10072
10086
|
size: "xs",
|
|
@@ -10094,7 +10108,7 @@ var SortRow = ({ opt, value, onChange }) => {
|
|
|
10094
10108
|
},
|
|
10095
10109
|
opt.label
|
|
10096
10110
|
), /* @__PURE__ */ React92.createElement(
|
|
10097
|
-
|
|
10111
|
+
ActionIcon14,
|
|
10098
10112
|
{
|
|
10099
10113
|
variant: "subtle",
|
|
10100
10114
|
size: "xs",
|
|
@@ -10142,7 +10156,7 @@ var ListActionsMenu = React92.forwardRef(
|
|
|
10142
10156
|
}
|
|
10143
10157
|
}
|
|
10144
10158
|
},
|
|
10145
|
-
/* @__PURE__ */ React92.createElement(Menu.Target, null, /* @__PURE__ */ React92.createElement(
|
|
10159
|
+
/* @__PURE__ */ React92.createElement(Menu.Target, null, /* @__PURE__ */ React92.createElement(Tooltip9, { label: "Actions", withArrow: true }, /* @__PURE__ */ React92.createElement(ActionIcon14, { variant: "subtle", size: "sm", "aria-label": "List actions", title: "List actions" }, /* @__PURE__ */ React92.createElement(IconAdjustmentsHorizontal2, { size: 18 })))),
|
|
10146
10160
|
/* @__PURE__ */ React92.createElement(Menu.Dropdown, null, /* @__PURE__ */ React92.createElement(Menu.Label, { onClick: () => setOrderByCollapsed(!orderByCollapsed), style: { cursor: "pointer" } }, /* @__PURE__ */ React92.createElement(Flex27, { align: "center", gap: 10 }, orderByCollapsed ? /* @__PURE__ */ React92.createElement(IconChevronRight, { size: 14 }) : /* @__PURE__ */ React92.createElement(IconChevronDown, { size: 14 }), /* @__PURE__ */ React92.createElement(Text59, { fz: "14" }, "Order By"))), /* @__PURE__ */ React92.createElement(Collapse, { in: !orderByCollapsed }, options.map((opt) => /* @__PURE__ */ React92.createElement(SortRow, { key: opt.key, opt, value, onChange }))), onSearchToggle && /* @__PURE__ */ React92.createElement(React92.Fragment, null, /* @__PURE__ */ React92.createElement(Menu.Divider, null), /* @__PURE__ */ React92.createElement(Menu.Item, { onClick: onSearchToggle, leftSection: /* @__PURE__ */ React92.createElement(IconSearch3, { size: 16 }), "data-active": isSearchActive }, "Search")), /* @__PURE__ */ React92.createElement(Menu.Divider, null), /* @__PURE__ */ React92.createElement(Menu.Item, { leftSection: /* @__PURE__ */ React92.createElement(IconAdjustments, { size: 16 }) }, "Smart Filter"), /* @__PURE__ */ React92.createElement(Menu.Divider, null), /* @__PURE__ */ React92.createElement(Menu.Item, { onClick: () => setIsMultiSelect(!isMultiSelect), leftSection: /* @__PURE__ */ React92.createElement(IconCheckbox2, { size: 16 }) }, "Multi Select"), onDownloadCsv && /* @__PURE__ */ React92.createElement(React92.Fragment, null, /* @__PURE__ */ React92.createElement(Menu.Divider, null), /* @__PURE__ */ React92.createElement(Menu.Item, { onClick: onDownloadCsv, leftSection: /* @__PURE__ */ React92.createElement(IconDownload2, { size: 16 }) }, "Download CSV")))
|
|
10147
10161
|
));
|
|
10148
10162
|
}
|
|
@@ -10589,7 +10603,7 @@ var ListFlowView = ({ block, editor }) => {
|
|
|
10589
10603
|
if (!listType) {
|
|
10590
10604
|
return /* @__PURE__ */ React93.createElement(Center9, { py: "xl" }, /* @__PURE__ */ React93.createElement(Text60, { size: "sm", c: "dimmed" }, "List not configured"));
|
|
10591
10605
|
}
|
|
10592
|
-
return /* @__PURE__ */ React93.createElement(Stack59, { w: "100%" }, /* @__PURE__ */ React93.createElement(Flex28, { px: 5, align: "center", justify: "space-between" }, /* @__PURE__ */ React93.createElement(Title5, { order: 4 }, getListNameByType(listType)), /* @__PURE__ */ React93.createElement(
|
|
10606
|
+
return /* @__PURE__ */ React93.createElement(Stack59, { w: "100%" }, /* @__PURE__ */ React93.createElement(Flex28, { px: 5, align: "center", justify: "space-between" }, /* @__PURE__ */ React93.createElement(Title5, { order: 4 }, getListNameByType(listType)), /* @__PURE__ */ React93.createElement(Tooltip10, { label: opened ? "Collapse" : "Expand", withArrow: true }, /* @__PURE__ */ React93.createElement(ActionIcon15, { variant: "subtle", size: "sm", onClick: toggle, "aria-label": opened ? "Collapse" : "Expand" }, opened ? /* @__PURE__ */ React93.createElement(IconChevronUp, { size: 18 }) : /* @__PURE__ */ React93.createElement(IconChevronDown2, { size: 18 })))), /* @__PURE__ */ React93.createElement(Collapse2, { pb: 5, px: 5, in: opened }, /* @__PURE__ */ React93.createElement(Stack59, { mih: totalPages !== 1 ? 500 : void 0, w: "100%" }, /* @__PURE__ */ React93.createElement(Flex28, { align: "center", gap: "xs" }, listSortConfig?.key && /* @__PURE__ */ React93.createElement(Flex28, { align: "center" }, /* @__PURE__ */ React93.createElement(Text60, { size: "xs" }, listSortConfig.key?.replace(/([A-Z])/g, " $1").replace(
|
|
10593
10607
|
/^./,
|
|
10594
10608
|
(str) => str.toUpperCase()
|
|
10595
10609
|
), " "), /* @__PURE__ */ React93.createElement(Text60, { lh: 0.5 }, listSortConfig.direction === "asc" && /* @__PURE__ */ React93.createElement(IconArrowUp3, { size: 18 }), listSortConfig.direction === "desc" && /* @__PURE__ */ React93.createElement(IconArrowDown2, { size: 18 }))), isMultiSelect && /* @__PURE__ */ React93.createElement(Text60, { lh: 0.5 }, "Multi Selection")), /* @__PURE__ */ React93.createElement(Flex28, { justify: "space-between" }, /* @__PURE__ */ React93.createElement(Flex28, { gap: "xs", align: "center" }, /* @__PURE__ */ React93.createElement(FilterTab, { key: "All", label: "All", isActive: !listFilterConfig?.key, onClick: () => handleFilterChange(null) }), Array.isArray(listFilterConfigOptions) && listFilterConfigOptions.length > 0 && listFilterConfigOptions.map(({ key, label, type }) => /* @__PURE__ */ React93.createElement(
|
|
@@ -10600,7 +10614,7 @@ var ListFlowView = ({ block, editor }) => {
|
|
|
10600
10614
|
isActive: listFilterConfig?.key === key && listFilterConfig?.value === type,
|
|
10601
10615
|
onClick: () => handleFilterChange({ key, value: type })
|
|
10602
10616
|
}
|
|
10603
|
-
))), /* @__PURE__ */ React93.createElement(Flex28, { gap: "xs" }, /* @__PURE__ */ React93.createElement(
|
|
10617
|
+
))), /* @__PURE__ */ React93.createElement(Flex28, { gap: "xs" }, /* @__PURE__ */ React93.createElement(Tooltip10, { label: "Refresh", withArrow: true }, /* @__PURE__ */ React93.createElement(ActionIcon15, { variant: "subtle", size: "sm", onClick: fetchData, loading }, /* @__PURE__ */ React93.createElement(IconRefresh2, { size: 18 }))), editable && /* @__PURE__ */ React93.createElement(Tooltip10, { label: "Settings", withArrow: true }, /* @__PURE__ */ React93.createElement(ActionIcon15, { variant: "subtle", size: "sm", onClick: openPanel }, /* @__PURE__ */ React93.createElement(IconSettings5, { size: 18 }))), listConfig && listSortConfigOptions && listSortConfigOptions?.length > 0 && /* @__PURE__ */ React93.createElement(
|
|
10604
10618
|
ListSearchPopover,
|
|
10605
10619
|
{
|
|
10606
10620
|
listType,
|
|
@@ -10966,7 +10980,7 @@ import { Card as Card12, Stack as Stack94 } from "@mantine/core";
|
|
|
10966
10980
|
|
|
10967
10981
|
// src/mantine/blocks/proposal/actions-components/ActionsCard.tsx
|
|
10968
10982
|
import React98 from "react";
|
|
10969
|
-
import { Card as Card5, Group as Group27, Text as Text63, Badge as Badge11, Stack as Stack62, ActionIcon as
|
|
10983
|
+
import { Card as Card5, Group as Group27, Text as Text63, Badge as Badge11, Stack as Stack62, ActionIcon as ActionIcon16, ScrollArea as ScrollArea2 } from "@mantine/core";
|
|
10970
10984
|
var getActionSummary = (action) => {
|
|
10971
10985
|
switch (action.type) {
|
|
10972
10986
|
case "Spend":
|
|
@@ -11036,7 +11050,7 @@ var ActionsCard = ({ actions, isSelected, onClick, onEditAction, onRemoveAction,
|
|
|
11036
11050
|
},
|
|
11037
11051
|
action.type
|
|
11038
11052
|
), /* @__PURE__ */ React98.createElement(Text63, { size: "sm", c: "dimmed" }, getActionSummary(action))), !disabled && /* @__PURE__ */ React98.createElement(Group27, { gap: 4 }, /* @__PURE__ */ React98.createElement(
|
|
11039
|
-
|
|
11053
|
+
ActionIcon16,
|
|
11040
11054
|
{
|
|
11041
11055
|
size: "sm",
|
|
11042
11056
|
variant: "subtle",
|
|
@@ -11049,7 +11063,7 @@ var ActionsCard = ({ actions, isSelected, onClick, onEditAction, onRemoveAction,
|
|
|
11049
11063
|
},
|
|
11050
11064
|
"\u270F\uFE0F"
|
|
11051
11065
|
), /* @__PURE__ */ React98.createElement(
|
|
11052
|
-
|
|
11066
|
+
ActionIcon16,
|
|
11053
11067
|
{
|
|
11054
11068
|
size: "sm",
|
|
11055
11069
|
variant: "subtle",
|
|
@@ -11126,7 +11140,7 @@ var SpendActionForm = ({ data, onChange }) => {
|
|
|
11126
11140
|
|
|
11127
11141
|
// src/mantine/blocks/proposal/actions-components/UpdateMembersActionForm.tsx
|
|
11128
11142
|
import React100, { useState as useState41 } from "react";
|
|
11129
|
-
import { Stack as Stack64, Button as Button13, Group as Group28, Text as Text65, Card as Card6, Badge as Badge12, ActionIcon as
|
|
11143
|
+
import { Stack as Stack64, Button as Button13, Group as Group28, Text as Text65, Card as Card6, Badge as Badge12, ActionIcon as ActionIcon17, Divider as Divider8, ScrollArea as ScrollArea3 } from "@mantine/core";
|
|
11130
11144
|
var UpdateMembersActionForm = ({ data, onChange }) => {
|
|
11131
11145
|
const [newMember, setNewMember] = useState41({ addr: "", weight: 1 });
|
|
11132
11146
|
const [newRemoveAddress, setNewRemoveAddress] = useState41("");
|
|
@@ -11180,7 +11194,7 @@ var UpdateMembersActionForm = ({ data, onChange }) => {
|
|
|
11180
11194
|
},
|
|
11181
11195
|
"Weight: ",
|
|
11182
11196
|
member.weight
|
|
11183
|
-
)), /* @__PURE__ */ React100.createElement(
|
|
11197
|
+
)), /* @__PURE__ */ React100.createElement(ActionIcon17, { size: "sm", variant: "subtle", onClick: () => handleRemoveMember(index), style: { color: "var(--mantine-color-red-5)" } }, "\u{1F5D1}\uFE0F"))
|
|
11184
11198
|
)))), /* @__PURE__ */ React100.createElement(Group28, { grow: true }, /* @__PURE__ */ React100.createElement(BaseTextInput, { placeholder: "Member address", value: newMember.addr, onChange: (e) => setNewMember({ ...newMember, addr: e.currentTarget.value }) }), /* @__PURE__ */ React100.createElement(BaseNumberInput, { placeholder: "Weight", value: newMember.weight, onChange: (value) => setNewMember({ ...newMember, weight: Number(value) || 1 }), min: 1 }), /* @__PURE__ */ React100.createElement(
|
|
11185
11199
|
Button13,
|
|
11186
11200
|
{
|
|
@@ -11205,7 +11219,7 @@ var UpdateMembersActionForm = ({ data, onChange }) => {
|
|
|
11205
11219
|
borderColor: "var(--mantine-color-neutralColor-5)"
|
|
11206
11220
|
}
|
|
11207
11221
|
},
|
|
11208
|
-
/* @__PURE__ */ React100.createElement(Group28, { justify: "space-between" }, /* @__PURE__ */ React100.createElement(Text65, { size: "sm", style: { color: "var(--mantine-color-dimmed)" } }, item.addr.slice(0, 30), "..."), /* @__PURE__ */ React100.createElement(
|
|
11222
|
+
/* @__PURE__ */ React100.createElement(Group28, { justify: "space-between" }, /* @__PURE__ */ React100.createElement(Text65, { size: "sm", style: { color: "var(--mantine-color-dimmed)" } }, item.addr.slice(0, 30), "..."), /* @__PURE__ */ React100.createElement(ActionIcon17, { size: "sm", variant: "subtle", onClick: () => handleRemoveRemoveAddress(index), style: { color: "var(--mantine-color-red-5)" } }, "\u{1F5D1}\uFE0F"))
|
|
11209
11223
|
)))), /* @__PURE__ */ React100.createElement(Group28, { grow: true }, /* @__PURE__ */ React100.createElement(BaseTextInput, { placeholder: "Address to remove", value: newRemoveAddress, onChange: (e) => setNewRemoveAddress(e.currentTarget.value) }), /* @__PURE__ */ React100.createElement(
|
|
11210
11224
|
Button13,
|
|
11211
11225
|
{
|
|
@@ -13609,7 +13623,7 @@ var useVoteBusinessLogic = ({ block }) => {
|
|
|
13609
13623
|
|
|
13610
13624
|
// src/mantine/blocks/proposal/flow/VoteGeneralTab.tsx
|
|
13611
13625
|
import React136, { useState as useState52 } from "react";
|
|
13612
|
-
import { Stack as Stack99, Text as Text76, Group as Group42, Card as Card15, Button as Button20, Progress as Progress4, Box as Box31, Tooltip as
|
|
13626
|
+
import { Stack as Stack99, Text as Text76, Group as Group42, Card as Card15, Button as Button20, Progress as Progress4, Box as Box31, Tooltip as Tooltip11 } from "@mantine/core";
|
|
13613
13627
|
|
|
13614
13628
|
// src/mantine/blocks/action/actionTypes/governance/_shared/ProposalOverviewCard.tsx
|
|
13615
13629
|
import React135, { useEffect as useEffect44, useState as useState51 } from "react";
|
|
@@ -14152,7 +14166,7 @@ var FlowGeneralTab = ({
|
|
|
14152
14166
|
}
|
|
14153
14167
|
}
|
|
14154
14168
|
), /* @__PURE__ */ React136.createElement(Text76, { size: "sm", fw: 500, style: { color: "#ffd43b" } }, isDisabled.message))
|
|
14155
|
-
), /* @__PURE__ */ React136.createElement(Stack99, { gap: "md" }, ["yes", "no", "abstain"].map((voteType) => /* @__PURE__ */ React136.createElement(
|
|
14169
|
+
), /* @__PURE__ */ React136.createElement(Stack99, { gap: "md" }, ["yes", "no", "abstain"].map((voteType) => /* @__PURE__ */ React136.createElement(Tooltip11, { key: voteType, label: disabled ? isDisabled?.message : void 0, disabled: !disabled, position: "top" }, /* @__PURE__ */ React136.createElement(
|
|
14156
14170
|
Button20,
|
|
14157
14171
|
{
|
|
14158
14172
|
variant: "outline",
|
|
@@ -14193,7 +14207,7 @@ var FlowGeneralTab = ({
|
|
|
14193
14207
|
}
|
|
14194
14208
|
},
|
|
14195
14209
|
/* @__PURE__ */ React136.createElement(Stack99, { gap: "xs" }, /* @__PURE__ */ React136.createElement(Text76, { fw: 500, size: "sm", style: { color: "var(--mantine-color-text)" } }, "Proposal Executed"), /* @__PURE__ */ React136.createElement(Text76, { size: "sm", style: { color: "var(--mantine-color-dimmed)" } }, "This proposal has been successfully executed."))
|
|
14196
|
-
), !hasSubmittedProposal && /* @__PURE__ */ React136.createElement(Stack99, { gap: "lg" }, /* @__PURE__ */ React136.createElement(Stack99, { gap: "md" }, ["yes", "no", "abstain"].map((voteType) => /* @__PURE__ */ React136.createElement(
|
|
14210
|
+
), !hasSubmittedProposal && /* @__PURE__ */ React136.createElement(Stack99, { gap: "lg" }, /* @__PURE__ */ React136.createElement(Stack99, { gap: "md" }, ["yes", "no", "abstain"].map((voteType) => /* @__PURE__ */ React136.createElement(Tooltip11, { key: voteType, label: "The proposal must be submitted before you can vote", position: "top" }, /* @__PURE__ */ React136.createElement(
|
|
14197
14211
|
Button20,
|
|
14198
14212
|
{
|
|
14199
14213
|
variant: "outline",
|
|
@@ -14211,7 +14225,7 @@ var FlowGeneralTab = ({
|
|
|
14211
14225
|
}
|
|
14212
14226
|
},
|
|
14213
14227
|
/* @__PURE__ */ React136.createElement(Text76, { fw: 500, tt: "capitalize", style: { textAlign: "left" } }, voteType)
|
|
14214
|
-
))))), hasSubmittedProposal && !hasVoted && selectedVote && (status === "open" || proposalStatus === "open") && /* @__PURE__ */ React136.createElement(
|
|
14228
|
+
))))), hasSubmittedProposal && !hasVoted && selectedVote && (status === "open" || proposalStatus === "open") && /* @__PURE__ */ React136.createElement(Tooltip11, { label: disabled ? isDisabled?.message : "Sign to vote", position: "top" }, /* @__PURE__ */ React136.createElement("div", null, /* @__PURE__ */ React136.createElement(
|
|
14215
14229
|
Button20,
|
|
14216
14230
|
{
|
|
14217
14231
|
size: "sm",
|
|
@@ -14708,17 +14722,17 @@ import { IconSettings as IconSettings7, IconCode as IconCode2, IconShieldCheck a
|
|
|
14708
14722
|
|
|
14709
14723
|
// src/mantine/blocks/apiRequest/template/GeneralTab.tsx
|
|
14710
14724
|
import React145, { useEffect as useEffect48, useState as useState58 } from "react";
|
|
14711
|
-
import { Divider as Divider10, Stack as Stack104, Text as Text81, Button as Button23, Group as Group45, ActionIcon as
|
|
14725
|
+
import { Divider as Divider10, Stack as Stack104, Text as Text81, Button as Button23, Group as Group45, ActionIcon as ActionIcon20, Paper as Paper9 } from "@mantine/core";
|
|
14712
14726
|
import { IconTrash as IconTrash2, IconPlus as IconPlus3 } from "@tabler/icons-react";
|
|
14713
14727
|
|
|
14714
14728
|
// src/mantine/components/DataInput/DataInput.tsx
|
|
14715
14729
|
import React144, { useState as useState57, useCallback as useCallback37, useMemo as useMemo48 } from "react";
|
|
14716
|
-
import { Input, ActionIcon as
|
|
14730
|
+
import { Input, ActionIcon as ActionIcon19, Tooltip as Tooltip12, Group as Group44 } from "@mantine/core";
|
|
14717
14731
|
import { IconVariable, IconX as IconX9 } from "@tabler/icons-react";
|
|
14718
14732
|
|
|
14719
14733
|
// src/mantine/components/DataInput/BlockPropSelector.tsx
|
|
14720
14734
|
import React143, { useState as useState56, useMemo as useMemo47 } from "react";
|
|
14721
|
-
import { Popover as Popover4, Text as Text80, Stack as Stack103, Group as Group43, ActionIcon as
|
|
14735
|
+
import { Popover as Popover4, Text as Text80, Stack as Stack103, Group as Group43, ActionIcon as ActionIcon18, TextInput as TextInput5, ScrollArea as ScrollArea5, Badge as Badge17, Box as Box32 } from "@mantine/core";
|
|
14722
14736
|
import { IconSearch as IconSearch4, IconX as IconX8, IconChevronRight as IconChevronRight3, IconArrowLeft as IconArrowLeft4, IconBolt as IconBolt5 } from "@tabler/icons-react";
|
|
14723
14737
|
var TRIGGER_PAYLOAD_BLOCK_ID = "__trigger__";
|
|
14724
14738
|
var ITEM_SCOPE_BLOCK_ID = "item";
|
|
@@ -14894,7 +14908,7 @@ function BlockPropSelector({ children, opened, onClose, onSelect, editorDocument
|
|
|
14894
14908
|
backgroundColor: "#282828"
|
|
14895
14909
|
}
|
|
14896
14910
|
},
|
|
14897
|
-
/* @__PURE__ */ React143.createElement(Group43, { justify: "space-between", align: "center" }, /* @__PURE__ */ React143.createElement(Group43, { gap: 6 }, (selectedBlock || navigationPath.length > 0) && /* @__PURE__ */ React143.createElement(
|
|
14911
|
+
/* @__PURE__ */ React143.createElement(Group43, { justify: "space-between", align: "center" }, /* @__PURE__ */ React143.createElement(Group43, { gap: 6 }, (selectedBlock || navigationPath.length > 0) && /* @__PURE__ */ React143.createElement(ActionIcon18, { variant: "subtle", size: "sm", onClick: handleBack, color: "gray", styles: { root: { color: TEXT_DIMMED, "&:hover": { backgroundColor: ITEM_HOVER_BG } } } }, /* @__PURE__ */ React143.createElement(IconArrowLeft4, { size: 14 })), /* @__PURE__ */ React143.createElement(Stack103, { gap: 0 }, /* @__PURE__ */ React143.createElement(Text80, { size: "sm", fw: 500, c: TEXT_PRIMARY, style: { letterSpacing: "0.2px" } }, headerTitle), headerSubtitle && /* @__PURE__ */ React143.createElement(Text80, { size: "xs", c: TEXT_DIMMED }, headerSubtitle))), /* @__PURE__ */ React143.createElement(ActionIcon18, { variant: "subtle", size: "sm", onClick: handleClose, styles: { root: { color: TEXT_DIMMED, "&:hover": { backgroundColor: ITEM_HOVER_BG } } } }, /* @__PURE__ */ React143.createElement(IconX8, { size: 14 })))
|
|
14898
14912
|
),
|
|
14899
14913
|
!selectedBlock && /* @__PURE__ */ React143.createElement(Box32, { px: "md", py: "xs", style: { borderBottom: `1px solid ${BORDER_COLOR}` } }, /* @__PURE__ */ React143.createElement(
|
|
14900
14914
|
TextInput5,
|
|
@@ -14904,7 +14918,7 @@ function BlockPropSelector({ children, opened, onClose, onSelect, editorDocument
|
|
|
14904
14918
|
value: searchQuery,
|
|
14905
14919
|
onChange: (e) => setSearchQuery(e.currentTarget.value),
|
|
14906
14920
|
size: "xs",
|
|
14907
|
-
rightSection: searchQuery ? /* @__PURE__ */ React143.createElement(
|
|
14921
|
+
rightSection: searchQuery ? /* @__PURE__ */ React143.createElement(ActionIcon18, { variant: "subtle", size: "xs", onClick: () => setSearchQuery(""), styles: { root: { color: TEXT_DIMMED } } }, /* @__PURE__ */ React143.createElement(IconX8, { size: 12 })) : null,
|
|
14908
14922
|
styles: {
|
|
14909
14923
|
input: {
|
|
14910
14924
|
backgroundColor: "var(--mantine-color-neutralColor-3)",
|
|
@@ -15031,7 +15045,7 @@ function DataInput({
|
|
|
15031
15045
|
},
|
|
15032
15046
|
rightSectionPointerEvents: "all",
|
|
15033
15047
|
rightSectionWidth: containsReferences ? 52 : 28,
|
|
15034
|
-
rightSection: /* @__PURE__ */ React144.createElement(Group44, { gap: 2, wrap: "nowrap" }, containsReferences && /* @__PURE__ */ React144.createElement(
|
|
15048
|
+
rightSection: /* @__PURE__ */ React144.createElement(Group44, { gap: 2, wrap: "nowrap" }, containsReferences && /* @__PURE__ */ React144.createElement(Tooltip12, { label: "Clear references", position: "top" }, /* @__PURE__ */ React144.createElement(ActionIcon19, { variant: "subtle", color: "gray", onClick: handleClearReferences, size: "xs" }, /* @__PURE__ */ React144.createElement(IconX9, { size: 12 }))), /* @__PURE__ */ React144.createElement(
|
|
15035
15049
|
BlockPropSelector,
|
|
15036
15050
|
{
|
|
15037
15051
|
opened: selectorOpened,
|
|
@@ -15041,7 +15055,7 @@ function DataInput({
|
|
|
15041
15055
|
currentBlockId,
|
|
15042
15056
|
itemScope
|
|
15043
15057
|
},
|
|
15044
|
-
/* @__PURE__ */ React144.createElement(
|
|
15058
|
+
/* @__PURE__ */ React144.createElement(Tooltip12, { label: containsReferences ? "Add another reference" : "Insert block reference", position: "top" }, /* @__PURE__ */ React144.createElement(ActionIcon19, { variant: "subtle", color: containsReferences ? "teal" : "gray", onClick: handleOpenSelector, disabled, size: "xs" }, /* @__PURE__ */ React144.createElement(IconVariable, { size: 14 })))
|
|
15045
15059
|
))
|
|
15046
15060
|
}
|
|
15047
15061
|
)
|
|
@@ -15184,7 +15198,7 @@ var GeneralTab5 = ({
|
|
|
15184
15198
|
currentBlockId: blockId,
|
|
15185
15199
|
size: "sm"
|
|
15186
15200
|
}
|
|
15187
|
-
), /* @__PURE__ */ React145.createElement(
|
|
15201
|
+
), /* @__PURE__ */ React145.createElement(ActionIcon20, { color: "red", variant: "subtle", onClick: () => handleRemoveHeader(index) }, /* @__PURE__ */ React145.createElement(IconTrash2, { size: 16 }))))))), /* @__PURE__ */ React145.createElement(Divider10, { variant: "dashed" }), /* @__PURE__ */ React145.createElement(Stack104, { gap: "xs" }, /* @__PURE__ */ React145.createElement(Group45, { justify: "space-between" }, /* @__PURE__ */ React145.createElement(Text81, { size: "sm", fw: 600 }, "Request Body (JSON)"), /* @__PURE__ */ React145.createElement(Button23, { size: "xs", variant: "light", leftSection: /* @__PURE__ */ React145.createElement(IconPlus3, { size: 14 }), onClick: handleAddBodyField }, "Add Field")), /* @__PURE__ */ React145.createElement(Text81, { size: "xs" }, "Build your JSON request body as key-value pairs"), localBody.length > 0 && /* @__PURE__ */ React145.createElement(Stack104, { gap: "xs" }, localBody.map((field, index) => /* @__PURE__ */ React145.createElement(Paper9, { key: index, p: "xs" }, /* @__PURE__ */ React145.createElement(Group45, { gap: "xs", align: "flex-start" }, /* @__PURE__ */ React145.createElement(
|
|
15188
15202
|
DataInput,
|
|
15189
15203
|
{
|
|
15190
15204
|
placeholder: "Field key (e.g., name)",
|
|
@@ -15204,12 +15218,12 @@ var GeneralTab5 = ({
|
|
|
15204
15218
|
currentBlockId: blockId,
|
|
15205
15219
|
size: "sm"
|
|
15206
15220
|
}
|
|
15207
|
-
), /* @__PURE__ */ React145.createElement(
|
|
15221
|
+
), /* @__PURE__ */ React145.createElement(ActionIcon20, { color: "red", variant: "subtle", onClick: () => handleRemoveBodyField(index) }, /* @__PURE__ */ React145.createElement(IconTrash2, { size: 16 }))))))));
|
|
15208
15222
|
};
|
|
15209
15223
|
|
|
15210
15224
|
// src/mantine/blocks/apiRequest/template/ResponseSchemaTab.tsx
|
|
15211
15225
|
import React146 from "react";
|
|
15212
|
-
import { Stack as Stack105, Text as Text82, Button as Button24, Group as Group46, ActionIcon as
|
|
15226
|
+
import { Stack as Stack105, Text as Text82, Button as Button24, Group as Group46, ActionIcon as ActionIcon21, Paper as Paper10, Alert as Alert19, Code as Code2 } from "@mantine/core";
|
|
15213
15227
|
import { IconTrash as IconTrash3, IconPlus as IconPlus4, IconInfoCircle as IconInfoCircle2 } from "@tabler/icons-react";
|
|
15214
15228
|
var ResponseSchemaTab = ({ schema, onSchemaChange, blockId }) => {
|
|
15215
15229
|
const fields = schema?.fields || [];
|
|
@@ -15234,7 +15248,7 @@ var ResponseSchemaTab = ({ schema, onSchemaChange, blockId }) => {
|
|
|
15234
15248
|
newFields[index] = { ...newFields[index], [key]: value };
|
|
15235
15249
|
onSchemaChange({ fields: newFields });
|
|
15236
15250
|
};
|
|
15237
|
-
return /* @__PURE__ */ React146.createElement(Stack105, { gap: "lg" }, /* @__PURE__ */ React146.createElement(Alert19, { icon: /* @__PURE__ */ React146.createElement(IconInfoCircle2, { size: 16 }), title: "Response Schema", color: "blue" }, /* @__PURE__ */ React146.createElement(Text82, { size: "xs" }, "Define the expected structure of your API response. This allows other blocks to reference specific fields from the response data using the DataInput component.")), /* @__PURE__ */ React146.createElement(Stack105, { gap: "xs" }, /* @__PURE__ */ React146.createElement(Text82, { size: "sm", fw: 600 }, "How it works"), /* @__PURE__ */ React146.createElement(Text82, { size: "xs", c: "dimmed" }, "1. Define response fields using dot notation (e.g., ", /* @__PURE__ */ React146.createElement(Code2, null, "customer.email"), ")"), /* @__PURE__ */ React146.createElement(Text82, { size: "xs", c: "dimmed" }, "2. Fields become available in DataInput selectors across other blocks"), /* @__PURE__ */ React146.createElement(Text82, { size: "xs", c: "dimmed" }, "3. Reference them like: ", /* @__PURE__ */ React146.createElement(Code2, null, `{{${blockId}.response.customer.email}}`))), /* @__PURE__ */ React146.createElement(Stack105, { gap: "xs" }, /* @__PURE__ */ React146.createElement(Group46, { justify: "space-between" }, /* @__PURE__ */ React146.createElement(Text82, { size: "sm", fw: 600 }, "Response Fields"), /* @__PURE__ */ React146.createElement(Button24, { size: "xs", variant: "light", leftSection: /* @__PURE__ */ React146.createElement(IconPlus4, { size: 14 }), onClick: handleAddField }, "Add Field")), fields.length === 0 ? /* @__PURE__ */ React146.createElement(Code2, { p: "md" }, 'No response fields defined yet. Click "Add Field" to start defining your response structure.') : /* @__PURE__ */ React146.createElement(Stack105, { gap: "md" }, fields.map((field, index) => /* @__PURE__ */ React146.createElement(Paper10, { key: index, p: "md", withBorder: true }, /* @__PURE__ */ React146.createElement(Stack105, { gap: "sm" }, /* @__PURE__ */ React146.createElement(Group46, { justify: "space-between", align: "flex-start" }, /* @__PURE__ */ React146.createElement(Text82, { size: "sm", fw: 500 }, "Field ", index + 1), /* @__PURE__ */ React146.createElement(
|
|
15251
|
+
return /* @__PURE__ */ React146.createElement(Stack105, { gap: "lg" }, /* @__PURE__ */ React146.createElement(Alert19, { icon: /* @__PURE__ */ React146.createElement(IconInfoCircle2, { size: 16 }), title: "Response Schema", color: "blue" }, /* @__PURE__ */ React146.createElement(Text82, { size: "xs" }, "Define the expected structure of your API response. This allows other blocks to reference specific fields from the response data using the DataInput component.")), /* @__PURE__ */ React146.createElement(Stack105, { gap: "xs" }, /* @__PURE__ */ React146.createElement(Text82, { size: "sm", fw: 600 }, "How it works"), /* @__PURE__ */ React146.createElement(Text82, { size: "xs", c: "dimmed" }, "1. Define response fields using dot notation (e.g., ", /* @__PURE__ */ React146.createElement(Code2, null, "customer.email"), ")"), /* @__PURE__ */ React146.createElement(Text82, { size: "xs", c: "dimmed" }, "2. Fields become available in DataInput selectors across other blocks"), /* @__PURE__ */ React146.createElement(Text82, { size: "xs", c: "dimmed" }, "3. Reference them like: ", /* @__PURE__ */ React146.createElement(Code2, null, `{{${blockId}.response.customer.email}}`))), /* @__PURE__ */ React146.createElement(Stack105, { gap: "xs" }, /* @__PURE__ */ React146.createElement(Group46, { justify: "space-between" }, /* @__PURE__ */ React146.createElement(Text82, { size: "sm", fw: 600 }, "Response Fields"), /* @__PURE__ */ React146.createElement(Button24, { size: "xs", variant: "light", leftSection: /* @__PURE__ */ React146.createElement(IconPlus4, { size: 14 }), onClick: handleAddField }, "Add Field")), fields.length === 0 ? /* @__PURE__ */ React146.createElement(Code2, { p: "md" }, 'No response fields defined yet. Click "Add Field" to start defining your response structure.') : /* @__PURE__ */ React146.createElement(Stack105, { gap: "md" }, fields.map((field, index) => /* @__PURE__ */ React146.createElement(Paper10, { key: index, p: "md", withBorder: true }, /* @__PURE__ */ React146.createElement(Stack105, { gap: "sm" }, /* @__PURE__ */ React146.createElement(Group46, { justify: "space-between", align: "flex-start" }, /* @__PURE__ */ React146.createElement(Text82, { size: "sm", fw: 500 }, "Field ", index + 1), /* @__PURE__ */ React146.createElement(ActionIcon21, { color: "red", variant: "subtle", onClick: () => handleRemoveField(index) }, /* @__PURE__ */ React146.createElement(IconTrash3, { size: 16 }))), /* @__PURE__ */ React146.createElement(
|
|
15238
15252
|
BaseTextInput,
|
|
15239
15253
|
{
|
|
15240
15254
|
label: "Field Path",
|
|
@@ -15544,7 +15558,7 @@ var ApiRequestFlowView = ({ editor, block, isDisabled }) => {
|
|
|
15544
15558
|
[editor, block, disabled, isDisabled?.message]
|
|
15545
15559
|
);
|
|
15546
15560
|
const panelContent = useMemo51(
|
|
15547
|
-
() => /* @__PURE__ */ React149.createElement(BaseRightPanelLayout, { stepTabs: true, onClose: closePanel, title: "API Request Settings", tabs, context: { editor, block } }),
|
|
15561
|
+
() => /* @__PURE__ */ React149.createElement(BaseRightPanelLayout, { stepTabs: true, showSettings: false, onClose: closePanel, title: "API Request Settings", tabs, context: { editor, block } }),
|
|
15548
15562
|
[tabs, editor, block, closePanel]
|
|
15549
15563
|
);
|
|
15550
15564
|
const { open } = usePanel(panelId, panelContent);
|
|
@@ -15785,7 +15799,7 @@ import { createReactBlockSpec as createReactBlockSpec7 } from "@blocknote/react"
|
|
|
15785
15799
|
|
|
15786
15800
|
// src/mantine/blocks/dynamicList/DynamicListBlock.tsx
|
|
15787
15801
|
import React153, { useMemo as useMemo53, useState as useState61, useCallback as useCallback39, useEffect as useEffect49, useRef as useRef12 } from "react";
|
|
15788
|
-
import { Box as Box34, Stack as Stack109, Text as Text86, Paper as Paper12, Group as Group50, Button as Button26, ActionIcon as
|
|
15802
|
+
import { Box as Box34, Stack as Stack109, Text as Text86, Paper as Paper12, Group as Group50, Button as Button26, ActionIcon as ActionIcon22, Tooltip as Tooltip13, Code as Code5, Flex as Flex29, Collapse as Collapse5, Title as Title6, Badge as Badge20, TextInput as TextInput6, CloseButton as CloseButton3, Select as Select3, Menu as Menu2 } from "@mantine/core";
|
|
15789
15803
|
import { useDisclosure as useDisclosure5 } from "@mantine/hooks";
|
|
15790
15804
|
import {
|
|
15791
15805
|
IconCamera,
|
|
@@ -16237,7 +16251,7 @@ function DynamicListBlock({ block, editor }) {
|
|
|
16237
16251
|
if (!listId) {
|
|
16238
16252
|
return /* @__PURE__ */ React153.createElement(Paper12, { p: "xl", withBorder: true, w: "100%", radius: "lg" }, /* @__PURE__ */ React153.createElement(Stack109, { align: "center", gap: "sm" }, /* @__PURE__ */ React153.createElement(IconDatabase2, { size: 32, color: "var(--mantine-color-dimmed)" }), /* @__PURE__ */ React153.createElement(Text86, { fz: "18", ta: "center" }, "Dynamic List Block"), /* @__PURE__ */ React153.createElement(Text86, { fz: "sm", c: "dimmed", ta: "center" }, "This block will display dynamic data from AG-UI.", /* @__PURE__ */ React153.createElement("br", null), "Add a list from the AG-UI Canvas to populate it.")));
|
|
16239
16253
|
}
|
|
16240
|
-
return /* @__PURE__ */ React153.createElement(Stack109, { w: "100%" }, /* @__PURE__ */ React153.createElement(Flex29, { px: 5, align: "center", justify: "space-between" }, /* @__PURE__ */ React153.createElement(Title6, { order: 4 }, title || "Dynamic List"), /* @__PURE__ */ React153.createElement(
|
|
16254
|
+
return /* @__PURE__ */ React153.createElement(Stack109, { w: "100%" }, /* @__PURE__ */ React153.createElement(Flex29, { px: 5, align: "center", justify: "space-between" }, /* @__PURE__ */ React153.createElement(Title6, { order: 4 }, title || "Dynamic List"), /* @__PURE__ */ React153.createElement(ActionIcon22, { variant: "subtle", size: "sm", onClick: toggle, "aria-label": opened ? "Collapse" : "Expand" }, opened ? /* @__PURE__ */ React153.createElement(IconChevronUp2, { size: 18 }) : /* @__PURE__ */ React153.createElement(IconChevronDown5, { size: 18 }))), /* @__PURE__ */ React153.createElement(Collapse5, { in: showInfo }, /* @__PURE__ */ React153.createElement(
|
|
16241
16255
|
Box34,
|
|
16242
16256
|
{
|
|
16243
16257
|
mx: 5,
|
|
@@ -16249,7 +16263,7 @@ function DynamicListBlock({ block, editor }) {
|
|
|
16249
16263
|
border: "1px solid var(--mantine-color-dark-4)"
|
|
16250
16264
|
}
|
|
16251
16265
|
},
|
|
16252
|
-
/* @__PURE__ */ React153.createElement(Flex29, { justify: "space-between", align: "flex-start", mb: "xs" }, /* @__PURE__ */ React153.createElement(Group50, { gap: "xs" }, /* @__PURE__ */ React153.createElement(IconInfoCircle3, { size: 14, color: "var(--mantine-color-blue-4)" }), /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", fw: 500, c: "dimmed" }, "Data Source")), /* @__PURE__ */ React153.createElement(
|
|
16266
|
+
/* @__PURE__ */ React153.createElement(Flex29, { justify: "space-between", align: "flex-start", mb: "xs" }, /* @__PURE__ */ React153.createElement(Group50, { gap: "xs" }, /* @__PURE__ */ React153.createElement(IconInfoCircle3, { size: 14, color: "var(--mantine-color-blue-4)" }), /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", fw: 500, c: "dimmed" }, "Data Source")), /* @__PURE__ */ React153.createElement(ActionIcon22, { variant: "subtle", size: "xs", onClick: () => setShowInfo(false), "aria-label": "Close info" }, /* @__PURE__ */ React153.createElement(IconX10, { size: 14 }))),
|
|
16253
16267
|
/* @__PURE__ */ React153.createElement(Stack109, { gap: 6 }, parsedDataSource?.oracleName && /* @__PURE__ */ React153.createElement(Group50, { gap: "xs" }, /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", c: "dimmed", w: 70 }, "Oracle:"), /* @__PURE__ */ React153.createElement(Text86, { fz: "xs" }, parsedDataSource.oracleName)), parsedDataSource?.oracleDid && /* @__PURE__ */ React153.createElement(Group50, { gap: "xs" }, /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", c: "dimmed", w: 70 }, "DID:"), /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", style: { wordBreak: "break-all" } }, parsedDataSource.oracleDid)), parsedDataSource?.toolName && /* @__PURE__ */ React153.createElement(Group50, { gap: "xs" }, /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", c: "dimmed", w: 70 }, "Tool:"), /* @__PURE__ */ React153.createElement(Text86, { fz: "xs" }, parsedDataSource.toolName)), parsedDataSource?.query && /* @__PURE__ */ React153.createElement(Box34, null, /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", c: "dimmed", mb: 4 }, "Query:"), /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", style: { whiteSpace: "pre-wrap" } }, parsedDataSource.query)), parsedDataSource?.description && /* @__PURE__ */ React153.createElement(Box34, null, /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", c: "dimmed", mb: 4 }, "Description:"), /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", fs: "italic" }, parsedDataSource.description)), parsedDataSource?.params && Object.keys(parsedDataSource.params).length > 0 && /* @__PURE__ */ React153.createElement(Box34, null, /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", c: "dimmed", mb: 4 }, "Params:"), /* @__PURE__ */ React153.createElement(Code5, { block: true, style: { fontSize: "11px", whiteSpace: "pre-wrap" } }, JSON.stringify(parsedDataSource.params, null, 2))))
|
|
16254
16268
|
)), /* @__PURE__ */ React153.createElement(Collapse5, { pb: 5, px: 5, in: opened }, /* @__PURE__ */ React153.createElement(Stack109, { w: "100%" }, /* @__PURE__ */ React153.createElement(Collapse5, { in: showSearch }, /* @__PURE__ */ React153.createElement(Flex29, { gap: "xs", align: "center" }, /* @__PURE__ */ React153.createElement(
|
|
16255
16269
|
TextInput6,
|
|
@@ -16272,7 +16286,7 @@ function DynamicListBlock({ block, editor }) {
|
|
|
16272
16286
|
}
|
|
16273
16287
|
}
|
|
16274
16288
|
}
|
|
16275
|
-
), /* @__PURE__ */ React153.createElement(
|
|
16289
|
+
), /* @__PURE__ */ React153.createElement(ActionIcon22, { variant: "subtle", size: "sm", onClick: handleSearchToggle, "aria-label": "Close search", title: "Close search" }, /* @__PURE__ */ React153.createElement(IconChevronUp2, { size: 16 })))), sortConfig && /* @__PURE__ */ React153.createElement(Flex29, { align: "center", gap: "xs" }, /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", c: "dimmed" }, "Sorted by ", parsedColumns.find((c) => c.key === sortConfig.key)?.label || sortConfig.key), sortConfig.direction === "asc" ? /* @__PURE__ */ React153.createElement(IconArrowUp4, { size: 14 }) : /* @__PURE__ */ React153.createElement(IconArrowDown3, { size: 14 })), hasData && /* @__PURE__ */ React153.createElement(Flex29, { justify: "space-between", align: "center" }, /* @__PURE__ */ React153.createElement(Group50, { gap: "xs" }, /* @__PURE__ */ React153.createElement(Text86, { fz: "sm", c: "dimmed" }, totalItems, " ", totalItems === 1 ? "item" : "items", searchQuery && rawData && ` of ${rawData.length}`, selectedIds.size > 0 && ` \u2022 ${selectedIds.size} selected`), useSnapshot && snapshotTimestamp && /* @__PURE__ */ React153.createElement(Tooltip13, { label: `Snapshot from ${new Date(snapshotTimestamp).toLocaleString()}` }, /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", c: "yellow", style: { cursor: "help" } }, "(snapshot)")), useSnapshot && !snapshotTimestamp && /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", c: "yellow" }, "(snapshot)"), !useSnapshot && /* @__PURE__ */ React153.createElement(Text86, { fz: "xs", c: "green" }, "(live)")), /* @__PURE__ */ React153.createElement(Group50, { gap: "xs" }, editable && /* @__PURE__ */ React153.createElement(React153.Fragment, null, useSnapshot && liveData.items && liveData.items.length > 0 && /* @__PURE__ */ React153.createElement(Button26, { size: "compact-xs", variant: "subtle", onClick: handleUseLiveData, leftSection: /* @__PURE__ */ React153.createElement(IconRefresh3, { size: 12 }) }, "Use Live"), !useSnapshot && hasSnapshot && /* @__PURE__ */ React153.createElement(Button26, { size: "compact-xs", variant: "subtle", onClick: handleUseSnapshot, leftSection: /* @__PURE__ */ React153.createElement(IconCamera, { size: 12 }) }, "Use Snapshot"), !useSnapshot && liveData.items && liveData.items.length > 0 && /* @__PURE__ */ React153.createElement(Tooltip13, { label: "Save current data as snapshot" }, /* @__PURE__ */ React153.createElement(ActionIcon22, { variant: "subtle", size: "sm", onClick: handleSaveSnapshot }, /* @__PURE__ */ React153.createElement(IconCamera, { size: 16 })))), /* @__PURE__ */ React153.createElement(
|
|
16276
16290
|
Menu2,
|
|
16277
16291
|
{
|
|
16278
16292
|
shadow: "md",
|
|
@@ -16300,7 +16314,7 @@ function DynamicListBlock({ block, editor }) {
|
|
|
16300
16314
|
}
|
|
16301
16315
|
}
|
|
16302
16316
|
},
|
|
16303
|
-
/* @__PURE__ */ React153.createElement(Menu2.Target, null, /* @__PURE__ */ React153.createElement(
|
|
16317
|
+
/* @__PURE__ */ React153.createElement(Menu2.Target, null, /* @__PURE__ */ React153.createElement(ActionIcon22, { variant: "subtle", size: "sm", "aria-label": "List actions", title: "List actions" }, /* @__PURE__ */ React153.createElement(IconAdjustmentsHorizontal3, { size: 18 }))),
|
|
16304
16318
|
/* @__PURE__ */ React153.createElement(Menu2.Dropdown, null, sortOptions.length > 0 && /* @__PURE__ */ React153.createElement(React153.Fragment, null, /* @__PURE__ */ React153.createElement(Menu2.Label, { onClick: () => setOrderByCollapsed(!orderByCollapsed), style: { cursor: "pointer" } }, /* @__PURE__ */ React153.createElement(Flex29, { align: "center", gap: 10 }, orderByCollapsed ? /* @__PURE__ */ React153.createElement(IconChevronRight5, { size: 14 }) : /* @__PURE__ */ React153.createElement(IconChevronDown5, { size: 14 }), /* @__PURE__ */ React153.createElement(Text86, { fz: "14" }, "Order By"))), /* @__PURE__ */ React153.createElement(Collapse5, { in: !orderByCollapsed }, sortOptions.map((opt) => {
|
|
16305
16319
|
const isAscActive = sortConfig?.key === opt.key && sortConfig?.direction === "asc";
|
|
16306
16320
|
const isDescActive = sortConfig?.key === opt.key && sortConfig?.direction === "desc";
|
|
@@ -16318,7 +16332,7 @@ function DynamicListBlock({ block, editor }) {
|
|
|
16318
16332
|
}
|
|
16319
16333
|
},
|
|
16320
16334
|
/* @__PURE__ */ React153.createElement(Flex29, { align: "center", justify: "space-between", gap: "xs" }, /* @__PURE__ */ React153.createElement(
|
|
16321
|
-
|
|
16335
|
+
ActionIcon22,
|
|
16322
16336
|
{
|
|
16323
16337
|
variant: "subtle",
|
|
16324
16338
|
size: "xs",
|
|
@@ -16336,7 +16350,7 @@ function DynamicListBlock({ block, editor }) {
|
|
|
16336
16350
|
},
|
|
16337
16351
|
/* @__PURE__ */ React153.createElement(IconArrowUp4, { size: 14 })
|
|
16338
16352
|
), /* @__PURE__ */ React153.createElement(Text86, { fz: "sm", style: { flex: 1, textAlign: "center" } }, opt.label), /* @__PURE__ */ React153.createElement(
|
|
16339
|
-
|
|
16353
|
+
ActionIcon22,
|
|
16340
16354
|
{
|
|
16341
16355
|
variant: "subtle",
|
|
16342
16356
|
size: "xs",
|
|
@@ -16459,7 +16473,7 @@ import { IconPlus as IconPlus5, IconMail as IconMail4, IconLink as IconLink3 } f
|
|
|
16459
16473
|
|
|
16460
16474
|
// src/mantine/components/HookedActionsTab/ActionInstanceCard.tsx
|
|
16461
16475
|
import React155, { useCallback as useCallback40, useState as useState62, useEffect as useEffect50 } from "react";
|
|
16462
|
-
import { Card as Card18, Stack as Stack110, Group as Group51, Text as Text87, ActionIcon as
|
|
16476
|
+
import { Card as Card18, Stack as Stack110, Group as Group51, Text as Text87, ActionIcon as ActionIcon23, Switch as Switch4, Badge as Badge21, Divider as Divider13, Loader as Loader22 } from "@mantine/core";
|
|
16463
16477
|
import { IconTrash as IconTrash4, IconMail as IconMail3, IconLink as IconLink2 } from "@tabler/icons-react";
|
|
16464
16478
|
|
|
16465
16479
|
// src/mantine/blocks/email/utils/extractHandlebars.ts
|
|
@@ -16664,7 +16678,7 @@ var ActionInstanceCard = ({ instance, actionType, payloadFields, availableBlocks
|
|
|
16664
16678
|
}
|
|
16665
16679
|
}
|
|
16666
16680
|
}
|
|
16667
|
-
), /* @__PURE__ */ React155.createElement(
|
|
16681
|
+
), /* @__PURE__ */ React155.createElement(ActionIcon23, { variant: "subtle", color: "red", size: "sm", onClick: onRemove, style: { color: "var(--mantine-color-red-5)" } }, /* @__PURE__ */ React155.createElement(IconTrash4, { size: 14 })))), /* @__PURE__ */ React155.createElement(Stack110, { gap: "sm" }, actionType.configSchema.map(renderConfigField)), instance.type === "sendEmail" && instance.config.templateName && /* @__PURE__ */ React155.createElement(React155.Fragment, null, /* @__PURE__ */ React155.createElement(Divider13, { color: "var(--mantine-color-neutralColor-4)" }), /* @__PURE__ */ React155.createElement(Stack110, { gap: "sm" }, /* @__PURE__ */ React155.createElement(Group51, { justify: "space-between", align: "center" }, /* @__PURE__ */ React155.createElement(Text87, { size: "sm", fw: 500, c: "var(--mantine-color-text)", style: { opacity: 0.7 } }, "Template Variables"), templateVariables.length > 0 && /* @__PURE__ */ React155.createElement(
|
|
16668
16682
|
Badge21,
|
|
16669
16683
|
{
|
|
16670
16684
|
size: "sm",
|
|
@@ -17048,7 +17062,7 @@ function useNodeContext(editor, nodeId) {
|
|
|
17048
17062
|
// src/mantine/blocks/enumChecklist/EnumChecklistBlock.tsx
|
|
17049
17063
|
import React163, { useState as useState66, useEffect as useEffect53, useMemo as useMemo55, useCallback as useCallback43 } from "react";
|
|
17050
17064
|
import { createReactBlockSpec as createReactBlockSpec8 } from "@blocknote/react";
|
|
17051
|
-
import { Stack as Stack117, Text as Text94, Button as Button32, ActionIcon as
|
|
17065
|
+
import { Stack as Stack117, Text as Text94, Button as Button32, ActionIcon as ActionIcon24, Center as Center10, Flex as Flex31 } from "@mantine/core";
|
|
17052
17066
|
|
|
17053
17067
|
// src/mantine/blocks/enumChecklist/oracle_personalities/index.tsx
|
|
17054
17068
|
import React157 from "react";
|
|
@@ -17509,7 +17523,7 @@ var EnumChecklistBlockContent = ({ block, editor }) => {
|
|
|
17509
17523
|
return null;
|
|
17510
17524
|
}
|
|
17511
17525
|
};
|
|
17512
|
-
return /* @__PURE__ */ React163.createElement(Stack117, { w: "100%" }, listType && /* @__PURE__ */ React163.createElement(Flex31, { align: "center", justify: "space-between", gap: "xs" }, /* @__PURE__ */ React163.createElement(Text94, null, getEnumListNameByType(listType)), listConfig.listSelectionMode && /* @__PURE__ */ React163.createElement(Text94, { lh: 0.5, c: "dimmed" }, listConfig?.selection_mode === "single" ? "Single Selection" : "Multi Selection"), editable && /* @__PURE__ */ React163.createElement(Flex31, { justify: listType ? "space-between" : "flex-end" }, /* @__PURE__ */ React163.createElement(Flex31, { gap: "xs" }, /* @__PURE__ */ React163.createElement(
|
|
17526
|
+
return /* @__PURE__ */ React163.createElement(Stack117, { w: "100%" }, listType && /* @__PURE__ */ React163.createElement(Flex31, { align: "center", justify: "space-between", gap: "xs" }, /* @__PURE__ */ React163.createElement(Text94, null, getEnumListNameByType(listType)), listConfig.listSelectionMode && /* @__PURE__ */ React163.createElement(Text94, { lh: 0.5, c: "dimmed" }, listConfig?.selection_mode === "single" ? "Single Selection" : "Multi Selection"), editable && /* @__PURE__ */ React163.createElement(Flex31, { justify: listType ? "space-between" : "flex-end" }, /* @__PURE__ */ React163.createElement(Flex31, { gap: "xs" }, /* @__PURE__ */ React163.createElement(ActionIcon24, { variant: "subtle", size: "sm", onClick: () => setModalOpened(true) }, /* @__PURE__ */ React163.createElement(IconSettings8, null))))), /* @__PURE__ */ React163.createElement(Flex31, { flex: 1 }, !listType ? /* @__PURE__ */ React163.createElement(Center10, { py: "xl" }, /* @__PURE__ */ React163.createElement(Stack117, { align: "center", gap: "sm" }, /* @__PURE__ */ React163.createElement(Text94, { size: "sm", c: "dimmed", ta: "center" }, "No list type configured"), /* @__PURE__ */ React163.createElement(Button32, { size: "sm", variant: "light", onClick: () => setModalOpened(true) }, "Configure List"))) : /* @__PURE__ */ React163.createElement(Stack117, { gap: "md", flex: 1 }, renderListComponent())), /* @__PURE__ */ React163.createElement(
|
|
17513
17527
|
EnumChecklistConfigModal,
|
|
17514
17528
|
{
|
|
17515
17529
|
opened: modalOpened,
|
|
@@ -17562,7 +17576,7 @@ import { IconSettings as IconSettings9 } from "@tabler/icons-react";
|
|
|
17562
17576
|
|
|
17563
17577
|
// src/mantine/blocks/notify/template/GeneralTab.tsx
|
|
17564
17578
|
import React164, { useEffect as useEffect54, useState as useState67 } from "react";
|
|
17565
|
-
import { Divider as Divider14, Stack as Stack118, Text as Text95, Group as Group57, ActionIcon as
|
|
17579
|
+
import { Divider as Divider14, Stack as Stack118, Text as Text95, Group as Group57, ActionIcon as ActionIcon25, Paper as Paper13 } from "@mantine/core";
|
|
17566
17580
|
import { IconTrash as IconTrash5 } from "@tabler/icons-react";
|
|
17567
17581
|
var GeneralTab6 = ({
|
|
17568
17582
|
title,
|
|
@@ -17689,7 +17703,7 @@ var GeneralTab6 = ({
|
|
|
17689
17703
|
currentBlockId: blockId,
|
|
17690
17704
|
size: "sm"
|
|
17691
17705
|
}
|
|
17692
|
-
), /* @__PURE__ */ React164.createElement(
|
|
17706
|
+
), /* @__PURE__ */ React164.createElement(ActionIcon25, { color: "red", variant: "light", onClick: () => handleRemoveRecipient("to", index) }, /* @__PURE__ */ React164.createElement(IconTrash5, { size: 16 }))))))), /* @__PURE__ */ React164.createElement(Stack118, { gap: "xs" }, /* @__PURE__ */ React164.createElement(Group57, { justify: "space-between" }, /* @__PURE__ */ React164.createElement(Text95, { size: "sm", fw: 600 }, "CC (Optional)"), /* @__PURE__ */ React164.createElement(BaseButton, { leftSection: getIcon("plus", "plus", "black"), onClick: () => handleAddRecipient("cc") }, "Add")), localCc.length > 0 && /* @__PURE__ */ React164.createElement(Stack118, { gap: "xs" }, localCc.map((recipient, index) => /* @__PURE__ */ React164.createElement(Paper13, { key: index, p: "xs", withBorder: true }, /* @__PURE__ */ React164.createElement(Group57, { gap: "xs", wrap: "nowrap", align: "flex-start" }, /* @__PURE__ */ React164.createElement(
|
|
17693
17707
|
DataInput,
|
|
17694
17708
|
{
|
|
17695
17709
|
placeholder: "email@example.com or reference",
|
|
@@ -17699,7 +17713,7 @@ var GeneralTab6 = ({
|
|
|
17699
17713
|
currentBlockId: blockId,
|
|
17700
17714
|
size: "sm"
|
|
17701
17715
|
}
|
|
17702
|
-
), /* @__PURE__ */ React164.createElement(
|
|
17716
|
+
), /* @__PURE__ */ React164.createElement(ActionIcon25, { color: "red", variant: "light", onClick: () => handleRemoveRecipient("cc", index) }, /* @__PURE__ */ React164.createElement(IconTrash5, { size: 16 }))))))), /* @__PURE__ */ React164.createElement(Stack118, { gap: "xs" }, /* @__PURE__ */ React164.createElement(Group57, { justify: "space-between" }, /* @__PURE__ */ React164.createElement(Text95, { size: "sm", fw: 600 }, "BCC (Optional)"), /* @__PURE__ */ React164.createElement(BaseButton, { leftSection: getIcon("plus", "plus", "black"), onClick: () => handleAddRecipient("bcc") }, "Add")), localBcc.length > 0 && /* @__PURE__ */ React164.createElement(Stack118, { gap: "xs" }, localBcc.map((recipient, index) => /* @__PURE__ */ React164.createElement(Paper13, { key: index, p: "xs", withBorder: true }, /* @__PURE__ */ React164.createElement(Group57, { gap: "xs", wrap: "nowrap", align: "flex-start" }, /* @__PURE__ */ React164.createElement(
|
|
17703
17717
|
DataInput,
|
|
17704
17718
|
{
|
|
17705
17719
|
placeholder: "email@example.com or reference",
|
|
@@ -17709,7 +17723,7 @@ var GeneralTab6 = ({
|
|
|
17709
17723
|
currentBlockId: blockId,
|
|
17710
17724
|
size: "sm"
|
|
17711
17725
|
}
|
|
17712
|
-
), /* @__PURE__ */ React164.createElement(
|
|
17726
|
+
), /* @__PURE__ */ React164.createElement(ActionIcon25, { color: "red", variant: "light", onClick: () => handleRemoveRecipient("bcc", index) }, /* @__PURE__ */ React164.createElement(IconTrash5, { size: 16 }))))))), /* @__PURE__ */ React164.createElement(Divider14, { variant: "dashed" }), /* @__PURE__ */ React164.createElement(Stack118, { gap: "xs" }, /* @__PURE__ */ React164.createElement(
|
|
17713
17727
|
BaseTextInput,
|
|
17714
17728
|
{
|
|
17715
17729
|
label: "From (Optional)",
|
|
@@ -17890,7 +17904,7 @@ var NotifyTemplateView = ({ editor, block }) => {
|
|
|
17890
17904
|
|
|
17891
17905
|
// src/mantine/blocks/notify/flow/FlowView.tsx
|
|
17892
17906
|
import React167, { useState as useState68 } from "react";
|
|
17893
|
-
import { Group as Group59, Stack as Stack120, Text as Text97, ActionIcon as
|
|
17907
|
+
import { Group as Group59, Stack as Stack120, Text as Text97, ActionIcon as ActionIcon26, Tooltip as Tooltip14, Button as Button33, Badge as Badge24, Collapse as Collapse6, Alert as Alert22, Loader as Loader23, Code as Code6 } from "@mantine/core";
|
|
17894
17908
|
import { IconSend as IconSend3, IconChevronDown as IconChevronDown6, IconChevronUp as IconChevronUp3, IconCheck as IconCheck6, IconX as IconX11 } from "@tabler/icons-react";
|
|
17895
17909
|
var NotifyFlowView = ({ editor, block, isDisabled }) => {
|
|
17896
17910
|
const disabled = isDisabled?.isDisabled === "disable";
|
|
@@ -18018,7 +18032,7 @@ var NotifyFlowView = ({ editor, block, isDisabled }) => {
|
|
|
18018
18032
|
},
|
|
18019
18033
|
isLoading ? "Sending..." : status === "sent" ? "Sent" : "Send"
|
|
18020
18034
|
);
|
|
18021
|
-
return /* @__PURE__ */ React167.createElement(BaseContainer, { blockId: block.id }, /* @__PURE__ */ React167.createElement(Stack120, { gap: "md" }, /* @__PURE__ */ React167.createElement(Group59, { wrap: "nowrap", justify: "space-between", align: "flex-start" }, /* @__PURE__ */ React167.createElement(Group59, { wrap: "nowrap", align: "flex-start", style: { flex: 1 } }, getIcon("bell", block.props.icon), /* @__PURE__ */ React167.createElement(Stack120, { gap: "xs", style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React167.createElement(Group59, { gap: "xs", wrap: "nowrap" }, /* @__PURE__ */ React167.createElement(Badge24, { size: "sm", variant: "filled", color: getChannelColor(channel) }, channel.toUpperCase()), /* @__PURE__ */ React167.createElement(Text97, { fw: 500, size: "sm", contentEditable: false }, block.props.title || "Notification"), status !== "idle" && /* @__PURE__ */ React167.createElement(Badge24, { size: "xs", variant: "dot", color: getStatusColor5(status) }, status)), /* @__PURE__ */ React167.createElement(Text97, { size: "xs", c: "dimmed", contentEditable: false, lineClamp: 1 }, to.length > 0 ? `To: ${to.slice(0, 2).join(", ")}${to.length > 2 ? ` +${to.length - 2} more` : ""}` : "No recipients"), block.props.description && /* @__PURE__ */ React167.createElement(Text97, { size: "xs", c: "dimmed", contentEditable: false }, block.props.description))), /* @__PURE__ */ React167.createElement(Group59, { gap: "xs", style: { flexShrink: 0 } }, disabled && isDisabled?.message ? /* @__PURE__ */ React167.createElement(
|
|
18035
|
+
return /* @__PURE__ */ React167.createElement(BaseContainer, { blockId: block.id }, /* @__PURE__ */ React167.createElement(Stack120, { gap: "md" }, /* @__PURE__ */ React167.createElement(Group59, { wrap: "nowrap", justify: "space-between", align: "flex-start" }, /* @__PURE__ */ React167.createElement(Group59, { wrap: "nowrap", align: "flex-start", style: { flex: 1 } }, getIcon("bell", block.props.icon), /* @__PURE__ */ React167.createElement(Stack120, { gap: "xs", style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React167.createElement(Group59, { gap: "xs", wrap: "nowrap" }, /* @__PURE__ */ React167.createElement(Badge24, { size: "sm", variant: "filled", color: getChannelColor(channel) }, channel.toUpperCase()), /* @__PURE__ */ React167.createElement(Text97, { fw: 500, size: "sm", contentEditable: false }, block.props.title || "Notification"), status !== "idle" && /* @__PURE__ */ React167.createElement(Badge24, { size: "xs", variant: "dot", color: getStatusColor5(status) }, status)), /* @__PURE__ */ React167.createElement(Text97, { size: "xs", c: "dimmed", contentEditable: false, lineClamp: 1 }, to.length > 0 ? `To: ${to.slice(0, 2).join(", ")}${to.length > 2 ? ` +${to.length - 2} more` : ""}` : "No recipients"), block.props.description && /* @__PURE__ */ React167.createElement(Text97, { size: "xs", c: "dimmed", contentEditable: false }, block.props.description))), /* @__PURE__ */ React167.createElement(Group59, { gap: "xs", style: { flexShrink: 0 } }, disabled && isDisabled?.message ? /* @__PURE__ */ React167.createElement(Tooltip14, { label: isDisabled.message, position: "left", withArrow: true }, sendButton) : sendButton, /* @__PURE__ */ React167.createElement(ActionIcon26, { variant: "subtle", onClick: () => setShowDetails(!showDetails) }, showDetails ? /* @__PURE__ */ React167.createElement(IconChevronUp3, { size: 16 }) : /* @__PURE__ */ React167.createElement(IconChevronDown6, { size: 16 })))), status === "failed" && runtime.error?.message && /* @__PURE__ */ React167.createElement(Alert22, { color: "red", icon: /* @__PURE__ */ React167.createElement(IconX11, { size: 16 }), title: "Failed to send", styles: { message: { fontSize: "12px" } } }, runtime.error.message), status === "sent" && runtime.output?.notify?.messageId && /* @__PURE__ */ React167.createElement(Alert22, { color: "green", icon: /* @__PURE__ */ React167.createElement(IconCheck6, { size: 16 }), title: "Sent successfully", styles: { message: { fontSize: "12px" } } }, "Message ID: ", runtime.output.notify.messageId, runtime.output.notify.sentAt && /* @__PURE__ */ React167.createElement(React167.Fragment, null, /* @__PURE__ */ React167.createElement("br", null), "Sent at: ", new Date(runtime.output.notify.sentAt).toLocaleString())), /* @__PURE__ */ React167.createElement(Collapse6, { in: showDetails }, /* @__PURE__ */ React167.createElement(Stack120, { gap: "md" }, channel === "email" && /* @__PURE__ */ React167.createElement(React167.Fragment, null, /* @__PURE__ */ React167.createElement(Stack120, { gap: "xs" }, /* @__PURE__ */ React167.createElement(Text97, { size: "xs", fw: 600, c: "dimmed" }, "Recipients:"), /* @__PURE__ */ React167.createElement(Code6, { block: true, style: { fontSize: "11px" } }, JSON.stringify(
|
|
18022
18036
|
{
|
|
18023
18037
|
to: to.filter((e) => e.trim() !== ""),
|
|
18024
18038
|
...cc.length > 0 && { cc: cc.filter((e) => e.trim() !== "") },
|
|
@@ -18646,7 +18660,7 @@ var DomainCreatorTemplateView = ({ editor, block }) => {
|
|
|
18646
18660
|
|
|
18647
18661
|
// src/mantine/blocks/domainCreator/flow/FlowView.tsx
|
|
18648
18662
|
import React182, { useCallback as useCallback51, useMemo as useMemo63, useState as useState73 } from "react";
|
|
18649
|
-
import { ActionIcon as
|
|
18663
|
+
import { ActionIcon as ActionIcon27, Badge as Badge26, Group as Group64, Stack as Stack126, Text as Text103, Tooltip as Tooltip15 } from "@mantine/core";
|
|
18650
18664
|
import { IconChevronRight as IconChevronRight6, IconCheck as IconCheck8, IconAlertCircle as IconAlertCircle12 } from "@tabler/icons-react";
|
|
18651
18665
|
|
|
18652
18666
|
// src/mantine/blocks/domainCreator/flow/DomainCreatorSurveyPanel.tsx
|
|
@@ -18957,7 +18971,7 @@ var DomainCreatorFlowView = ({ editor, block }) => {
|
|
|
18957
18971
|
return { variant: "light", color: "gray", text: "Click to start", icon: null };
|
|
18958
18972
|
};
|
|
18959
18973
|
const badgeProps = getBadgeProps();
|
|
18960
|
-
return /* @__PURE__ */ React182.createElement(BaseContainer, { blockId: block.id, onClick: handleOpen }, /* @__PURE__ */ React182.createElement(Group64, { wrap: "nowrap", justify: "space-between", align: "center" }, /* @__PURE__ */ React182.createElement(Group64, { wrap: "nowrap", align: "center", style: { flex: 1 } }, getIcon("file-text", block.props.icon), /* @__PURE__ */ React182.createElement(Stack126, { gap: 4, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React182.createElement(Group64, { gap: "xs", align: "center" }, /* @__PURE__ */ React182.createElement(Text103, { fw: 600, size: "sm", contentEditable: false }, block.props.title || "Domain Creator"), /* @__PURE__ */ React182.createElement(Badge26, { size: "xs", variant: badgeProps.variant, color: badgeProps.color, leftSection: badgeProps.icon }, badgeProps.text)), /* @__PURE__ */ React182.createElement(Text103, { size: "xs", c: "dimmed", contentEditable: false, lineClamp: 2 }, hasExistingSubmission ? `Domain created: ${lastSubmission.entityDid}` : block.props.description || "Open the survey panel to create a new domain."))), /* @__PURE__ */ React182.createElement(
|
|
18974
|
+
return /* @__PURE__ */ React182.createElement(BaseContainer, { blockId: block.id, onClick: handleOpen }, /* @__PURE__ */ React182.createElement(Group64, { wrap: "nowrap", justify: "space-between", align: "center" }, /* @__PURE__ */ React182.createElement(Group64, { wrap: "nowrap", align: "center", style: { flex: 1 } }, getIcon("file-text", block.props.icon), /* @__PURE__ */ React182.createElement(Stack126, { gap: 4, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React182.createElement(Group64, { gap: "xs", align: "center" }, /* @__PURE__ */ React182.createElement(Text103, { fw: 600, size: "sm", contentEditable: false }, block.props.title || "Domain Creator"), /* @__PURE__ */ React182.createElement(Badge26, { size: "xs", variant: badgeProps.variant, color: badgeProps.color, leftSection: badgeProps.icon }, badgeProps.text)), /* @__PURE__ */ React182.createElement(Text103, { size: "xs", c: "dimmed", contentEditable: false, lineClamp: 2 }, hasExistingSubmission ? `Domain created: ${lastSubmission.entityDid}` : block.props.description || "Open the survey panel to create a new domain."))), /* @__PURE__ */ React182.createElement(Tooltip15, { label: hasExistingSubmission ? "View/Edit domain" : "Create domain", withArrow: true }, /* @__PURE__ */ React182.createElement(ActionIcon27, { variant: "subtle", color: "blue" }, /* @__PURE__ */ React182.createElement(IconChevronRight6, { size: 18 })))));
|
|
18961
18975
|
};
|
|
18962
18976
|
|
|
18963
18977
|
// src/mantine/blocks/domainCreator/DomainCreatorBlock.tsx
|
|
@@ -19301,7 +19315,7 @@ var EmailTemplateView = ({ editor, block }) => {
|
|
|
19301
19315
|
|
|
19302
19316
|
// src/mantine/blocks/email/flow/FlowView.tsx
|
|
19303
19317
|
import React189, { useMemo as useMemo67 } from "react";
|
|
19304
|
-
import { Group as Group67, Stack as Stack130, Text as Text107, ActionIcon as
|
|
19318
|
+
import { Group as Group67, Stack as Stack130, Text as Text107, ActionIcon as ActionIcon28, Tooltip as Tooltip16, Button as Button35, Badge as Badge29, Alert as Alert26, Loader as Loader27, Divider as Divider17 } from "@mantine/core";
|
|
19305
19319
|
import { IconSend as IconSend4, IconCheck as IconCheck10, IconX as IconX12, IconMail as IconMail5, IconUser as IconUser11 } from "@tabler/icons-react";
|
|
19306
19320
|
|
|
19307
19321
|
// src/mantine/blocks/email/flow/hooks/useEmailActions.ts
|
|
@@ -19444,7 +19458,7 @@ var EmailFlowView = ({ editor, block, isDisabled }) => {
|
|
|
19444
19458
|
[editor, block, isDisabled, disabled]
|
|
19445
19459
|
);
|
|
19446
19460
|
const panelContent = useMemo67(
|
|
19447
|
-
() => /* @__PURE__ */ React189.createElement(BaseRightPanelLayout, { stepTabs: true, onClose: closePanel, title: "Email Details", tabs, context: { editor, block } }),
|
|
19461
|
+
() => /* @__PURE__ */ React189.createElement(BaseRightPanelLayout, { stepTabs: true, showSettings: false, onClose: closePanel, title: "Email Details", tabs, context: { editor, block } }),
|
|
19448
19462
|
[tabs, editor, block, closePanel]
|
|
19449
19463
|
);
|
|
19450
19464
|
const panelId = `email-details-panel-${block.id}`;
|
|
@@ -19486,7 +19500,7 @@ function EmailPanelContent({ editor, block, isDisabled }) {
|
|
|
19486
19500
|
disabled: !canSend
|
|
19487
19501
|
},
|
|
19488
19502
|
loading ? "Sending..." : status === "sent" ? "Sent" : block.props.buttonLabel || "Send"
|
|
19489
|
-
), status === "sent" && /* @__PURE__ */ React189.createElement(
|
|
19503
|
+
), status === "sent" && /* @__PURE__ */ React189.createElement(Tooltip16, { label: "Send again", position: "top", withArrow: true }, /* @__PURE__ */ React189.createElement(ActionIcon28, { variant: "light", color: "blue", onClick: resetStatus }, /* @__PURE__ */ React189.createElement(IconSend4, { size: 14 })))), isDisabled?.isDisabled === "disable" && isDisabled?.message && /* @__PURE__ */ React189.createElement(Text107, { size: "xs", c: "dimmed" }, isDisabled.message), status === "error" && runtime.error?.message && /* @__PURE__ */ React189.createElement(Alert26, { color: "red", icon: /* @__PURE__ */ React189.createElement(IconX12, { size: 16 }), title: "Failed to send", styles: { message: { fontSize: "12px" } } }, runtime.error.message), /* @__PURE__ */ React189.createElement(Divider17, null), /* @__PURE__ */ React189.createElement(Stack130, { gap: "xs" }, /* @__PURE__ */ React189.createElement(Text107, { size: "sm", fw: 600 }, "Recipients"), /* @__PURE__ */ React189.createElement(DetailRow, { label: "To", value: toDisplay }), ccDisplay && /* @__PURE__ */ React189.createElement(DetailRow, { label: "CC", value: ccDisplay }), bccDisplay && /* @__PURE__ */ React189.createElement(DetailRow, { label: "BCC", value: bccDisplay }), replyToDisplay && /* @__PURE__ */ React189.createElement(DetailRow, { label: "Reply-To", value: replyToDisplay })), /* @__PURE__ */ React189.createElement(Divider17, null), /* @__PURE__ */ React189.createElement(Stack130, { gap: "xs" }, /* @__PURE__ */ React189.createElement(Text107, { size: "sm", fw: 600 }, "Subject"), /* @__PURE__ */ React189.createElement(Text107, { size: "sm", c: subjectDisplay ? void 0 : "dimmed" }, subjectDisplay || "No subject")), /* @__PURE__ */ React189.createElement(Divider17, null), /* @__PURE__ */ React189.createElement(Stack130, { gap: "xs" }, /* @__PURE__ */ React189.createElement(Text107, { size: "sm", fw: 600 }, "Template"), /* @__PURE__ */ React189.createElement(DetailRow, { label: "Name", value: block.props.templateName, placeholder: "Not selected" }), block.props.templateVersion && /* @__PURE__ */ React189.createElement(DetailRow, { label: "Version", value: block.props.templateVersion })), Object.keys(variables).length > 0 && /* @__PURE__ */ React189.createElement(React189.Fragment, null, /* @__PURE__ */ React189.createElement(Divider17, null), /* @__PURE__ */ React189.createElement(Stack130, { gap: "xs" }, /* @__PURE__ */ React189.createElement(Text107, { size: "sm", fw: 600 }, "Variables"), Object.entries(variables).map(([key, value]) => /* @__PURE__ */ React189.createElement(DetailRow, { key, label: key, value: resolveReferences(value, editorDocument) })))), runtime.state && runtime.state !== "idle" && /* @__PURE__ */ React189.createElement(React189.Fragment, null, /* @__PURE__ */ React189.createElement(Divider17, null), /* @__PURE__ */ React189.createElement(Stack130, { gap: "xs" }, /* @__PURE__ */ React189.createElement(Text107, { size: "sm", fw: 600 }, "Status"), /* @__PURE__ */ React189.createElement(DetailRow, { label: "Status", value: runtime.state }), emailOutput?.sentAt && /* @__PURE__ */ React189.createElement(DetailRow, { label: "Last sent", value: new Date(emailOutput.sentAt).toLocaleString() }), emailOutput?.messageId && /* @__PURE__ */ React189.createElement(DetailRow, { label: "Message ID", value: emailOutput.messageId }), runtime.error?.message && /* @__PURE__ */ React189.createElement(Text107, { size: "xs", c: "red" }, runtime.error.message))));
|
|
19490
19504
|
}
|
|
19491
19505
|
function DetailRow({ label, value, placeholder }) {
|
|
19492
19506
|
return /* @__PURE__ */ React189.createElement(Group67, { gap: "xs", wrap: "nowrap" }, /* @__PURE__ */ React189.createElement(Text107, { size: "xs", fw: 500, c: "dimmed", style: { minWidth: 70 } }, label, ":"), /* @__PURE__ */ React189.createElement(Text107, { size: "xs", c: value ? void 0 : "dimmed", lineClamp: 1, style: { flex: 1 } }, value || placeholder || "\u2014"));
|
|
@@ -19714,7 +19728,7 @@ var ProtocolSelectorTemplateView = ({ editor, block }) => {
|
|
|
19714
19728
|
|
|
19715
19729
|
// src/mantine/blocks/protocolSelector/flow/FlowView.tsx
|
|
19716
19730
|
import React197, { useMemo as useMemo71 } from "react";
|
|
19717
|
-
import { Badge as Badge30, Box as Box42, Group as Group70, Stack as Stack134, Text as Text111, Tooltip as
|
|
19731
|
+
import { Badge as Badge30, Box as Box42, Group as Group70, Stack as Stack134, Text as Text111, Tooltip as Tooltip17 } from "@mantine/core";
|
|
19718
19732
|
import { IconCircleDashed as IconCircleDashed3, IconChecks as IconChecks3 } from "@tabler/icons-react";
|
|
19719
19733
|
|
|
19720
19734
|
// src/mantine/blocks/protocolSelector/flow/ProtocolSelectionPanel.tsx
|
|
@@ -19890,7 +19904,7 @@ var ProtocolSelectorFlowView = ({ editor, block, isDisabled }) => {
|
|
|
19890
19904
|
/* @__PURE__ */ React197.createElement(IconCircleDashed3, { size: 26, color: "currentColor" })
|
|
19891
19905
|
), /* @__PURE__ */ React197.createElement(Stack134, { gap: 2, style: { flex: 1 } }, /* @__PURE__ */ React197.createElement(Text111, { fw: 500, size: "sm", lineClamp: 1, style: { opacity: disabled ? 0.5 : 1 } }, block.props.title || "Select Protocol"), isCompleted && block.props.selectedProtocolType ? /* @__PURE__ */ React197.createElement(Badge30, { size: "sm", styles: { root: { backgroundColor: "var(--mantine-primary-color-light)", color: "var(--mantine-primary-color-filled)" } } }, block.props.selectedProtocolType) : /* @__PURE__ */ React197.createElement(Text111, { size: "xs", c: "dimmed", style: { opacity: disabled ? 0.5 : 1 } }, "Selection"))), /* @__PURE__ */ React197.createElement(Stack134, { gap: 2, align: "flex-end" }, isCompleted ? /* @__PURE__ */ React197.createElement(React197.Fragment, null, /* @__PURE__ */ React197.createElement(Group70, { gap: 4 }, /* @__PURE__ */ React197.createElement(IconChecks3, { size: 16, color: "var(--mantine-color-green-4)" }), /* @__PURE__ */ React197.createElement(Text111, { size: "sm", c: "green.4", fw: 500 }, "Completed")), /* @__PURE__ */ React197.createElement(Text111, { size: "xs", c: "dimmed", lineClamp: 1 }, block.props.selectedProtocolName || block.props.selectedProtocolDid)) : /* @__PURE__ */ React197.createElement(React197.Fragment, null, /* @__PURE__ */ React197.createElement(Text111, { size: "sm" }, "Pending"), /* @__PURE__ */ React197.createElement(Text111, { size: "xs", c: "dimmed" }, "Complete now")))));
|
|
19892
19906
|
if (disabled && isDisabled?.message) {
|
|
19893
|
-
return /* @__PURE__ */ React197.createElement(
|
|
19907
|
+
return /* @__PURE__ */ React197.createElement(Tooltip17, { label: isDisabled.message, position: "top", withArrow: true }, /* @__PURE__ */ React197.createElement(Box42, { style: { cursor: "not-allowed" } }, containerContent));
|
|
19894
19908
|
}
|
|
19895
19909
|
return containerContent;
|
|
19896
19910
|
};
|
|
@@ -20112,7 +20126,7 @@ var FormTemplateView = ({ editor, block }) => {
|
|
|
20112
20126
|
|
|
20113
20127
|
// src/mantine/blocks/form/flow/FlowView.tsx
|
|
20114
20128
|
import React204, { useMemo as useMemo74, useState as useState80, useCallback as useCallback60 } from "react";
|
|
20115
|
-
import { ActionIcon as
|
|
20129
|
+
import { ActionIcon as ActionIcon29, Badge as Badge32, Group as Group72, Stack as Stack136, Text as Text115, Tooltip as Tooltip18 } from "@mantine/core";
|
|
20116
20130
|
import { IconChevronRight as IconChevronRight7 } from "@tabler/icons-react";
|
|
20117
20131
|
|
|
20118
20132
|
// src/mantine/blocks/form/flow/FormPanel.tsx
|
|
@@ -20284,7 +20298,7 @@ var FormFlowView = ({ editor, block }) => {
|
|
|
20284
20298
|
const badgeProps = getBadgeProps();
|
|
20285
20299
|
const hasSchema = Boolean(block.props.surveySchema);
|
|
20286
20300
|
const completedAt = runtime.executedAt;
|
|
20287
|
-
return /* @__PURE__ */ React204.createElement(BaseContainer, { blockId: block.id, onClick: handleOpen }, /* @__PURE__ */ React204.createElement(Group72, { wrap: "nowrap", justify: "space-between", align: "center" }, /* @__PURE__ */ React204.createElement(Group72, { wrap: "nowrap", align: "center", style: { flex: 1 } }, getIcon("checklist", block.props.icon), /* @__PURE__ */ React204.createElement(Stack136, { gap: 4, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React204.createElement(Group72, { gap: "xs", align: "center" }, /* @__PURE__ */ React204.createElement(Text115, { fw: 600, size: "sm" }, block.props.title || "Form"), /* @__PURE__ */ React204.createElement(Badge32, { size: "xs", variant: badgeProps.variant, color: badgeProps.color, styles: { root: { backgroundColor: `var(--mantine-color-${badgeProps.color}-6)` } } }, badgeProps.text)), /* @__PURE__ */ React204.createElement(Text115, { size: "xs", c: "dimmed", lineClamp: 2 }, isCompleted && completedAt ? `Completed on ${new Date(completedAt).toLocaleDateString()}` : hasSchema ? "Click to fill out the form" : "Form not configured"))), /* @__PURE__ */ React204.createElement(
|
|
20301
|
+
return /* @__PURE__ */ React204.createElement(BaseContainer, { blockId: block.id, onClick: handleOpen }, /* @__PURE__ */ React204.createElement(Group72, { wrap: "nowrap", justify: "space-between", align: "center" }, /* @__PURE__ */ React204.createElement(Group72, { wrap: "nowrap", align: "center", style: { flex: 1 } }, getIcon("checklist", block.props.icon), /* @__PURE__ */ React204.createElement(Stack136, { gap: 4, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React204.createElement(Group72, { gap: "xs", align: "center" }, /* @__PURE__ */ React204.createElement(Text115, { fw: 600, size: "sm" }, block.props.title || "Form"), /* @__PURE__ */ React204.createElement(Badge32, { size: "xs", variant: badgeProps.variant, color: badgeProps.color, styles: { root: { backgroundColor: `var(--mantine-color-${badgeProps.color}-6)` } } }, badgeProps.text)), /* @__PURE__ */ React204.createElement(Text115, { size: "xs", c: "dimmed", lineClamp: 2 }, isCompleted && completedAt ? `Completed on ${new Date(completedAt).toLocaleDateString()}` : hasSchema ? "Click to fill out the form" : "Form not configured"))), /* @__PURE__ */ React204.createElement(Tooltip18, { label: isCompleted ? "View form" : "Fill form", withArrow: true }, /* @__PURE__ */ React204.createElement(ActionIcon29, { variant: "subtle", color: "blue" }, /* @__PURE__ */ React204.createElement(IconChevronRight7, { size: 18 })))));
|
|
20288
20302
|
};
|
|
20289
20303
|
|
|
20290
20304
|
// src/mantine/blocks/form/FormBlock.tsx
|
|
@@ -20429,7 +20443,7 @@ var DomainCreatorSignTemplateView = ({ editor, block }) => {
|
|
|
20429
20443
|
|
|
20430
20444
|
// src/mantine/blocks/domainCreatorSign/flow/FlowView.tsx
|
|
20431
20445
|
import React213, { useCallback as useCallback63, useMemo as useMemo76, useEffect as useEffect67 } from "react";
|
|
20432
|
-
import { ActionIcon as
|
|
20446
|
+
import { ActionIcon as ActionIcon30, Badge as Badge35, Group as Group75, Stack as Stack140, Text as Text120, Tooltip as Tooltip20 } from "@mantine/core";
|
|
20433
20447
|
import { IconChevronRight as IconChevronRight8 } from "@tabler/icons-react";
|
|
20434
20448
|
|
|
20435
20449
|
// src/mantine/blocks/domainCreatorSign/flow/SignPanel.tsx
|
|
@@ -20439,7 +20453,7 @@ import React212, { useCallback as useCallback62, useState as useState84 } from "
|
|
|
20439
20453
|
|
|
20440
20454
|
// src/mantine/components/Base/BaseSigning.tsx
|
|
20441
20455
|
import React211, { useState as useState83 } from "react";
|
|
20442
|
-
import { Badge as Badge34, Box as Box43, Flex as Flex33, Stack as Stack138, Tabs as Tabs3, Text as Text118, Tooltip as
|
|
20456
|
+
import { Badge as Badge34, Box as Box43, Flex as Flex33, Stack as Stack138, Tabs as Tabs3, Text as Text118, Tooltip as Tooltip19 } from "@mantine/core";
|
|
20443
20457
|
import { IconClock as IconClock9, IconFeather as IconFeather3, IconUsers as IconUsers2, IconArrowsExchange as IconArrowsExchange2, IconCalendar as IconCalendar2, IconLeaf as IconLeaf2, IconBolt as IconBolt6 } from "@tabler/icons-react";
|
|
20444
20458
|
|
|
20445
20459
|
// src/mantine/components/Base/SlideToSign.tsx
|
|
@@ -20550,7 +20564,7 @@ function BaseSigning({ handleSign }) {
|
|
|
20550
20564
|
}
|
|
20551
20565
|
}
|
|
20552
20566
|
},
|
|
20553
|
-
/* @__PURE__ */ React211.createElement(Tabs3.List, null, /* @__PURE__ */ React211.createElement(
|
|
20567
|
+
/* @__PURE__ */ React211.createElement(Tabs3.List, null, /* @__PURE__ */ React211.createElement(Tooltip19, { label: "Agents" }, /* @__PURE__ */ React211.createElement(Tabs3.Tab, { value: "agents", leftSection: /* @__PURE__ */ React211.createElement(IconUsers2, { size: 18 }) })), /* @__PURE__ */ React211.createElement(Tooltip19, { label: "Transactions" }, /* @__PURE__ */ React211.createElement(Tabs3.Tab, { value: "transactions", leftSection: /* @__PURE__ */ React211.createElement(IconArrowsExchange2, { size: 18 }) })), /* @__PURE__ */ React211.createElement(Tooltip19, { label: "Date" }, /* @__PURE__ */ React211.createElement(Tabs3.Tab, { value: "date", leftSection: /* @__PURE__ */ React211.createElement(IconCalendar2, { size: 18 }) })), /* @__PURE__ */ React211.createElement(Tooltip19, { label: "Charge" }, /* @__PURE__ */ React211.createElement(Tabs3.Tab, { value: "charge", leftSection: /* @__PURE__ */ React211.createElement(IconBolt6, { size: 18 }) })), /* @__PURE__ */ React211.createElement(Tooltip19, { label: "Impact" }, /* @__PURE__ */ React211.createElement(Tabs3.Tab, { value: "impact", leftSection: /* @__PURE__ */ React211.createElement(IconLeaf2, { size: 18 }) }))),
|
|
20554
20568
|
/* @__PURE__ */ React211.createElement(Tabs3.Panel, { value: "agents" }, /* @__PURE__ */ React211.createElement(Text118, { size: "sm" }, "Agents content")),
|
|
20555
20569
|
/* @__PURE__ */ React211.createElement(Tabs3.Panel, { value: "transactions" }, /* @__PURE__ */ React211.createElement(Text118, { size: "sm" }, "Transactions content")),
|
|
20556
20570
|
/* @__PURE__ */ React211.createElement(Tabs3.Panel, { value: "date" }, /* @__PURE__ */ React211.createElement(Text118, { size: "sm" }, "Date content")),
|
|
@@ -20856,7 +20870,7 @@ var DomainCreatorSignFlowView = ({ editor, block }) => {
|
|
|
20856
20870
|
return "Waiting for domain card data";
|
|
20857
20871
|
}
|
|
20858
20872
|
};
|
|
20859
|
-
return /* @__PURE__ */ React213.createElement(BaseContainer, { blockId: block.id, onClick: isClickable ? handleOpen : void 0, style: { opacity: isClickable ? 1 : 0.7, cursor: isClickable ? "pointer" : "not-allowed" } }, /* @__PURE__ */ React213.createElement(Group75, { wrap: "nowrap", justify: "space-between", align: "center" }, /* @__PURE__ */ React213.createElement(Group75, { wrap: "nowrap", align: "center", style: { flex: 1 } }, getIcon("feather", block.props.icon), /* @__PURE__ */ React213.createElement(Stack140, { gap: 4, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React213.createElement(Group75, { gap: "xs", align: "center" }, /* @__PURE__ */ React213.createElement(Text120, { fw: 600, size: "sm" }, block.props.title || "Sign to Create"), /* @__PURE__ */ React213.createElement(Badge35, { size: "xs", variant: "filled", color: badgeProps.color, styles: { root: { backgroundColor: `var(--mantine-color-${badgeProps.color}-6)`, color: "white" } } }, badgeProps.text)), /* @__PURE__ */ React213.createElement(Text120, { size: "xs", c: "dimmed", lineClamp: 2 }, getDescriptionText()))), /* @__PURE__ */ React213.createElement(Group75, null, /* @__PURE__ */ React213.createElement(CommitmentDisplay, { block, onClick: openCommitment }), /* @__PURE__ */ React213.createElement(AssignmentDisplay, { block, onClick: openAssignment }), isClickable && /* @__PURE__ */ React213.createElement(
|
|
20873
|
+
return /* @__PURE__ */ React213.createElement(BaseContainer, { blockId: block.id, onClick: isClickable ? handleOpen : void 0, style: { opacity: isClickable ? 1 : 0.7, cursor: isClickable ? "pointer" : "not-allowed" } }, /* @__PURE__ */ React213.createElement(Group75, { wrap: "nowrap", justify: "space-between", align: "center" }, /* @__PURE__ */ React213.createElement(Group75, { wrap: "nowrap", align: "center", style: { flex: 1 } }, getIcon("feather", block.props.icon), /* @__PURE__ */ React213.createElement(Stack140, { gap: 4, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React213.createElement(Group75, { gap: "xs", align: "center" }, /* @__PURE__ */ React213.createElement(Text120, { fw: 600, size: "sm" }, block.props.title || "Sign to Create"), /* @__PURE__ */ React213.createElement(Badge35, { size: "xs", variant: "filled", color: badgeProps.color, styles: { root: { backgroundColor: `var(--mantine-color-${badgeProps.color}-6)`, color: "white" } } }, badgeProps.text)), /* @__PURE__ */ React213.createElement(Text120, { size: "xs", c: "dimmed", lineClamp: 2 }, getDescriptionText()))), /* @__PURE__ */ React213.createElement(Group75, null, /* @__PURE__ */ React213.createElement(CommitmentDisplay, { block, onClick: openCommitment }), /* @__PURE__ */ React213.createElement(AssignmentDisplay, { block, onClick: openAssignment }), isClickable && /* @__PURE__ */ React213.createElement(Tooltip20, { label: status === "completed" ? "View details" : "Sign & Create", withArrow: true }, /* @__PURE__ */ React213.createElement(ActionIcon30, { variant: "subtle", color: "blue" }, /* @__PURE__ */ React213.createElement(IconChevronRight8, { size: 18 }))))));
|
|
20860
20874
|
};
|
|
20861
20875
|
|
|
20862
20876
|
// src/mantine/blocks/domainCreatorSign/DomainCreatorSignBlock.tsx
|
|
@@ -21032,7 +21046,7 @@ var DomainCardViewerTemplateView = ({ editor, block }) => {
|
|
|
21032
21046
|
|
|
21033
21047
|
// src/mantine/blocks/domainCardViewer/flow/FlowView.tsx
|
|
21034
21048
|
import React220, { useMemo as useMemo79, useCallback as useCallback65, useEffect as useEffect69 } from "react";
|
|
21035
|
-
import { ActionIcon as
|
|
21049
|
+
import { ActionIcon as ActionIcon31, Badge as Badge37, Button as Button38, Group as Group77, Stack as Stack143, Text as Text123, Tooltip as Tooltip21 } from "@mantine/core";
|
|
21036
21050
|
import { IconChevronRight as IconChevronRight9, IconLoader, IconTestPipe, IconTrash as IconTrash6 } from "@tabler/icons-react";
|
|
21037
21051
|
|
|
21038
21052
|
// src/mantine/blocks/domainCardViewer/flow/ViewerPanel.tsx
|
|
@@ -21442,7 +21456,7 @@ var DomainCardViewerFlowView = ({ editor, block }) => {
|
|
|
21442
21456
|
}
|
|
21443
21457
|
};
|
|
21444
21458
|
const canOpenPanel = status !== "pending";
|
|
21445
|
-
return /* @__PURE__ */ React220.createElement(BaseContainer, { blockId: block.id, onClick: canOpenPanel ? open : void 0, style: { opacity: canOpenPanel ? 1 : 0.7, cursor: canOpenPanel ? "pointer" : "not-allowed" } }, /* @__PURE__ */ React220.createElement(Group77, { wrap: "nowrap", justify: "space-between", align: "center" }, /* @__PURE__ */ React220.createElement(Group77, { wrap: "nowrap", align: "center", style: { flex: 1 } }, getIcon("dots-circle", block.props.icon), /* @__PURE__ */ React220.createElement(Stack143, { gap: 4, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React220.createElement(Group77, { gap: "xs", align: "center" }, /* @__PURE__ */ React220.createElement(Text123, { fw: 600, size: "sm" }, block.props.title || "Domain Card"), /* @__PURE__ */ React220.createElement(Badge37, { size: "xs", variant: "filled", color: badgeProps.color, styles: { root: { backgroundColor: `var(--mantine-color-${badgeProps.color}-6)`, color: "white" } } }, badgeProps.text)), /* @__PURE__ */ React220.createElement(Text123, { size: "xs", c: "dimmed", lineClamp: 2 }, getDescriptionText()))), IS_DEV && status === "pending" && /* @__PURE__ */ React220.createElement(React220.Fragment, null, /* @__PURE__ */ React220.createElement(Button38, { size: "compact-xs", variant: "light", color: "orange", leftSection: /* @__PURE__ */ React220.createElement(IconTestPipe, { size: 14 }), onClick: handleInjectDummyData }, "Test Data"), /* @__PURE__ */ React220.createElement(Button38, { size: "compact-xs", variant: "light", color: "blue", leftSection: /* @__PURE__ */ React220.createElement(IconLoader, { size: 14 }), onClick: handleSetLoading }, "Loading")), IS_DEV && (status === "ready" || status === "approved" || status === "loading") && /* @__PURE__ */ React220.createElement(Button38, { size: "compact-xs", variant: "light", color: "orange", leftSection: /* @__PURE__ */ React220.createElement(IconTrash6, { size: 14 }), onClick: handleClearData }, "Clear"), canOpenPanel && /* @__PURE__ */ React220.createElement(
|
|
21459
|
+
return /* @__PURE__ */ React220.createElement(BaseContainer, { blockId: block.id, onClick: canOpenPanel ? open : void 0, style: { opacity: canOpenPanel ? 1 : 0.7, cursor: canOpenPanel ? "pointer" : "not-allowed" } }, /* @__PURE__ */ React220.createElement(Group77, { wrap: "nowrap", justify: "space-between", align: "center" }, /* @__PURE__ */ React220.createElement(Group77, { wrap: "nowrap", align: "center", style: { flex: 1 } }, getIcon("dots-circle", block.props.icon), /* @__PURE__ */ React220.createElement(Stack143, { gap: 4, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React220.createElement(Group77, { gap: "xs", align: "center" }, /* @__PURE__ */ React220.createElement(Text123, { fw: 600, size: "sm" }, block.props.title || "Domain Card"), /* @__PURE__ */ React220.createElement(Badge37, { size: "xs", variant: "filled", color: badgeProps.color, styles: { root: { backgroundColor: `var(--mantine-color-${badgeProps.color}-6)`, color: "white" } } }, badgeProps.text)), /* @__PURE__ */ React220.createElement(Text123, { size: "xs", c: "dimmed", lineClamp: 2 }, getDescriptionText()))), IS_DEV && status === "pending" && /* @__PURE__ */ React220.createElement(React220.Fragment, null, /* @__PURE__ */ React220.createElement(Button38, { size: "compact-xs", variant: "light", color: "orange", leftSection: /* @__PURE__ */ React220.createElement(IconTestPipe, { size: 14 }), onClick: handleInjectDummyData }, "Test Data"), /* @__PURE__ */ React220.createElement(Button38, { size: "compact-xs", variant: "light", color: "blue", leftSection: /* @__PURE__ */ React220.createElement(IconLoader, { size: 14 }), onClick: handleSetLoading }, "Loading")), IS_DEV && (status === "ready" || status === "approved" || status === "loading") && /* @__PURE__ */ React220.createElement(Button38, { size: "compact-xs", variant: "light", color: "orange", leftSection: /* @__PURE__ */ React220.createElement(IconTrash6, { size: 14 }), onClick: handleClearData }, "Clear"), canOpenPanel && /* @__PURE__ */ React220.createElement(Tooltip21, { label: status === "approved" ? "View domain data" : "Review domain data", withArrow: true }, /* @__PURE__ */ React220.createElement(ActionIcon31, { variant: "subtle", color: "blue" }, /* @__PURE__ */ React220.createElement(IconChevronRight9, { size: 18 })))));
|
|
21446
21460
|
};
|
|
21447
21461
|
|
|
21448
21462
|
// src/mantine/blocks/domainCardViewer/DomainCardViewerBlock.tsx
|
|
@@ -22389,7 +22403,7 @@ var GovernanceGroupTemplateView = ({ editor, block }) => {
|
|
|
22389
22403
|
|
|
22390
22404
|
// src/mantine/blocks/governanceGroup/flow/FlowView.tsx
|
|
22391
22405
|
import React227, { useCallback as useCallback68, useEffect as useEffect72, useMemo as useMemo82, useRef as useRef20, useState as useState88 } from "react";
|
|
22392
|
-
import { ActionIcon as
|
|
22406
|
+
import { ActionIcon as ActionIcon32, Badge as Badge39, Group as Group80, Stack as Stack147, Text as Text127, Tooltip as Tooltip22 } from "@mantine/core";
|
|
22393
22407
|
import { IconChevronRight as IconChevronRight10 } from "@tabler/icons-react";
|
|
22394
22408
|
|
|
22395
22409
|
// src/mantine/blocks/governanceGroup/flow/GovernanceGroupPanel.tsx
|
|
@@ -22728,7 +22742,7 @@ var GovernanceGroupFlowView = ({ editor, block }) => {
|
|
|
22728
22742
|
const groupTypeName = lastSubmission.groupType ? lastSubmission.groupType.charAt(0).toUpperCase() + lastSubmission.groupType.slice(1).replace(/([A-Z])/g, " $1") : "Group";
|
|
22729
22743
|
return `${groupTypeName} created: ${lastSubmission.coreAddress?.slice(0, 12)}...`;
|
|
22730
22744
|
};
|
|
22731
|
-
return /* @__PURE__ */ React227.createElement(BaseContainer, { blockId: block.id, onClick: handleOpen }, /* @__PURE__ */ React227.createElement(Group80, { wrap: "nowrap", justify: "space-between", align: "center" }, /* @__PURE__ */ React227.createElement(Group80, { wrap: "nowrap", align: "center", style: { flex: 1 } }, getIcon("users", block.props.icon), /* @__PURE__ */ React227.createElement(Stack147, { gap: 4, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React227.createElement(Group80, { gap: "xs", align: "center" }, /* @__PURE__ */ React227.createElement(Text127, { fw: 600, size: "sm", contentEditable: false }, block.props.title || "Governance Group"), /* @__PURE__ */ React227.createElement(Badge39, { size: "xs", variant: "filled", color: badgeProps.color, styles: { root: { backgroundColor: `var(--mantine-color-${badgeProps.color}-6)` } } }, badgeProps.text)), /* @__PURE__ */ React227.createElement(Text127, { size: "xs", c: "dimmed", contentEditable: false, lineClamp: 2 }, hasExistingSubmission ? getSubmissionDisplay() : block.props.description || "Open the panel to create a new governance group."))), /* @__PURE__ */ React227.createElement(
|
|
22745
|
+
return /* @__PURE__ */ React227.createElement(BaseContainer, { blockId: block.id, onClick: handleOpen }, /* @__PURE__ */ React227.createElement(Group80, { wrap: "nowrap", justify: "space-between", align: "center" }, /* @__PURE__ */ React227.createElement(Group80, { wrap: "nowrap", align: "center", style: { flex: 1 } }, getIcon("users", block.props.icon), /* @__PURE__ */ React227.createElement(Stack147, { gap: 4, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React227.createElement(Group80, { gap: "xs", align: "center" }, /* @__PURE__ */ React227.createElement(Text127, { fw: 600, size: "sm", contentEditable: false }, block.props.title || "Governance Group"), /* @__PURE__ */ React227.createElement(Badge39, { size: "xs", variant: "filled", color: badgeProps.color, styles: { root: { backgroundColor: `var(--mantine-color-${badgeProps.color}-6)` } } }, badgeProps.text)), /* @__PURE__ */ React227.createElement(Text127, { size: "xs", c: "dimmed", contentEditable: false, lineClamp: 2 }, hasExistingSubmission ? getSubmissionDisplay() : block.props.description || "Open the panel to create a new governance group."))), /* @__PURE__ */ React227.createElement(Tooltip22, { label: hasExistingSubmission ? "View/Edit group" : "Create group", withArrow: true }, /* @__PURE__ */ React227.createElement(ActionIcon32, { variant: "subtle", color: "blue" }, /* @__PURE__ */ React227.createElement(IconChevronRight10, { size: 18 })))));
|
|
22732
22746
|
};
|
|
22733
22747
|
|
|
22734
22748
|
// src/mantine/blocks/governanceGroup/GovernanceGroupBlock.tsx
|
|
@@ -22818,7 +22832,7 @@ var GeneralTab15 = ({ title, description, icon: icon2, onTitleChange, onDescript
|
|
|
22818
22832
|
|
|
22819
22833
|
// src/mantine/blocks/flowLink/template/LinksTab.tsx
|
|
22820
22834
|
import React231, { useEffect as useEffect73, useMemo as useMemo83, useState as useState89 } from "react";
|
|
22821
|
-
import { Stack as Stack149, Card as Card22, Group as Group81, ActionIcon as
|
|
22835
|
+
import { Stack as Stack149, Card as Card22, Group as Group81, ActionIcon as ActionIcon33, Text as Text128, Divider as Divider19 } from "@mantine/core";
|
|
22822
22836
|
import { IconPlus as IconPlus6, IconTrash as IconTrash7, IconGripVertical } from "@tabler/icons-react";
|
|
22823
22837
|
import { DndContext, PointerSensor, useSensor, useSensors, closestCenter, useDraggable, useDroppable } from "@dnd-kit/core";
|
|
22824
22838
|
|
|
@@ -22851,7 +22865,7 @@ var DraggableLinkCard = ({ link, index, onRemove, onUpdate }) => {
|
|
|
22851
22865
|
opacity: isDragging ? 0.5 : 1,
|
|
22852
22866
|
border: isOver ? "2px dashed var(--mantine-color-accent-5)" : void 0
|
|
22853
22867
|
};
|
|
22854
|
-
return /* @__PURE__ */ React231.createElement("div", { ref: setDropRef }, /* @__PURE__ */ React231.createElement(Card22, { p: "sm", style }, /* @__PURE__ */ React231.createElement(Stack149, { gap: "xs" }, /* @__PURE__ */ React231.createElement(Group81, { justify: "space-between", align: "flex-start" }, /* @__PURE__ */ React231.createElement(Group81, { gap: "xs", align: "center" }, /* @__PURE__ */ React231.createElement("div", { ref: setDragRef, ...listeners, ...attributes, style: { cursor: "grab", display: "flex", alignItems: "center" } }, /* @__PURE__ */ React231.createElement(IconGripVertical, { size: 16, color: "gray" })), /* @__PURE__ */ React231.createElement(Text128, { size: "xs", c: "dimmed" }, link.title || `Link ${index + 1}`)), /* @__PURE__ */ React231.createElement(
|
|
22868
|
+
return /* @__PURE__ */ React231.createElement("div", { ref: setDropRef }, /* @__PURE__ */ React231.createElement(Card22, { p: "sm", style }, /* @__PURE__ */ React231.createElement(Stack149, { gap: "xs" }, /* @__PURE__ */ React231.createElement(Group81, { justify: "space-between", align: "flex-start" }, /* @__PURE__ */ React231.createElement(Group81, { gap: "xs", align: "center" }, /* @__PURE__ */ React231.createElement("div", { ref: setDragRef, ...listeners, ...attributes, style: { cursor: "grab", display: "flex", alignItems: "center" } }, /* @__PURE__ */ React231.createElement(IconGripVertical, { size: 16, color: "gray" })), /* @__PURE__ */ React231.createElement(Text128, { size: "xs", c: "dimmed" }, link.title || `Link ${index + 1}`)), /* @__PURE__ */ React231.createElement(ActionIcon33, { variant: "subtle", color: "red", size: "sm", onClick: () => onRemove(link.id) }, /* @__PURE__ */ React231.createElement(IconTrash7, { size: 14 }))), /* @__PURE__ */ React231.createElement(Divider19, null), /* @__PURE__ */ React231.createElement(BaseTextInput, { label: "Title", placeholder: "Link title", value: link.title, onChange: (e) => onUpdate(link.id, { title: e.currentTarget.value }) }), /* @__PURE__ */ React231.createElement(
|
|
22855
22869
|
BaseTextInput,
|
|
22856
22870
|
{
|
|
22857
22871
|
label: "Description",
|
|
@@ -22981,11 +22995,11 @@ var FlowLinkTemplateView = ({ editor, block }) => {
|
|
|
22981
22995
|
|
|
22982
22996
|
// src/mantine/blocks/flowLink/flow/FlowView.tsx
|
|
22983
22997
|
import React235, { useMemo as useMemo85 } from "react";
|
|
22984
|
-
import { Badge as Badge41, Group as Group84, Stack as Stack152, Text as Text131, Tooltip as
|
|
22998
|
+
import { Badge as Badge41, Group as Group84, Stack as Stack152, Text as Text131, Tooltip as Tooltip24 } from "@mantine/core";
|
|
22985
22999
|
|
|
22986
23000
|
// src/mantine/blocks/flowLink/flow/FlowLinkPanel.tsx
|
|
22987
23001
|
import React234, { useState as useState90, useEffect as useEffect74, useCallback as useCallback69 } from "react";
|
|
22988
|
-
import { Stack as Stack151, Text as Text130, Card as Card23, Group as Group83, Badge as Badge40, ActionIcon as
|
|
23002
|
+
import { Stack as Stack151, Text as Text130, Card as Card23, Group as Group83, Badge as Badge40, ActionIcon as ActionIcon34, Loader as Loader32, Tooltip as Tooltip23 } from "@mantine/core";
|
|
22989
23003
|
import { IconRefresh as IconRefresh4, IconCheck as IconCheck14, IconClock as IconClock10, IconCircleDashed as IconCircleDashed4 } from "@tabler/icons-react";
|
|
22990
23004
|
var FlowLinkPanel = ({ editor, block }) => {
|
|
22991
23005
|
const { closePanel } = usePanelStore();
|
|
@@ -23029,7 +23043,7 @@ var FlowLinkPanel = ({ editor, block }) => {
|
|
|
23029
23043
|
return /* @__PURE__ */ React234.createElement(Badge40, { display: "inline-block", size: "sm", variant: "light", color: "gray", leftSection: /* @__PURE__ */ React234.createElement(Loader32, { size: 10 }) }, "Loading");
|
|
23030
23044
|
}
|
|
23031
23045
|
if (link.error) {
|
|
23032
|
-
return /* @__PURE__ */ React234.createElement(
|
|
23046
|
+
return /* @__PURE__ */ React234.createElement(Tooltip23, { label: link.error }, /* @__PURE__ */ React234.createElement(Badge40, { display: "inline-block", size: "sm", variant: "light", color: "red" }, "Error"));
|
|
23033
23047
|
}
|
|
23034
23048
|
if (!link.statusData) {
|
|
23035
23049
|
return null;
|
|
@@ -23045,7 +23059,7 @@ var FlowLinkPanel = ({ editor, block }) => {
|
|
|
23045
23059
|
return /* @__PURE__ */ React234.createElement(Badge40, { display: "inline-block", size: "sm", variant: "light", color: "gray", leftSection: /* @__PURE__ */ React234.createElement(IconCircleDashed4, { size: 12 }) }, "Not Started");
|
|
23046
23060
|
}
|
|
23047
23061
|
};
|
|
23048
|
-
return /* @__PURE__ */ React234.createElement(BaseRightPanelLayout, { title: block.props.title || "Flow Links", onClose: closePanel, isTemplate: false, context: { editor, block } }, /* @__PURE__ */ React234.createElement(Stack151, { gap: "md" }, handlers.getFlowStatus && /* @__PURE__ */ React234.createElement(
|
|
23062
|
+
return /* @__PURE__ */ React234.createElement(BaseRightPanelLayout, { title: block.props.title || "Flow Links", onClose: closePanel, isTemplate: false, context: { editor, block } }, /* @__PURE__ */ React234.createElement(Stack151, { gap: "md" }, handlers.getFlowStatus && /* @__PURE__ */ React234.createElement(Tooltip23, { label: "Refresh status" }, /* @__PURE__ */ React234.createElement(ActionIcon34, { variant: "subtle", size: "sm", onClick: fetchStatuses }, /* @__PURE__ */ React234.createElement(IconRefresh4, { size: 16 }))), linksWithStatus.length === 0 ? /* @__PURE__ */ React234.createElement(Card23, { withBorder: true, p: "md", bg: "gray.0" }, /* @__PURE__ */ React234.createElement(Text130, { size: "sm", c: "dimmed", ta: "center" }, "No flow links configured.")) : /* @__PURE__ */ React234.createElement(Stack151, { gap: "sm" }, linksWithStatus.map((link) => /* @__PURE__ */ React234.createElement(Stack151, { key: link.id }, link.description && /* @__PURE__ */ React234.createElement(Text130, null, link.description), /* @__PURE__ */ React234.createElement(
|
|
23049
23063
|
BaseContainer,
|
|
23050
23064
|
{
|
|
23051
23065
|
onClick: () => handleNavigate(link),
|
|
@@ -23082,7 +23096,7 @@ var FlowLinkFlowView = ({ editor, block, isDisabled }) => {
|
|
|
23082
23096
|
const badgeProps = getBadgeProps();
|
|
23083
23097
|
const cardContent = /* @__PURE__ */ React235.createElement(BaseContainer, { blockId: block.id, onClick: handleClick, style: { opacity: disabled ? 0.6 : 1, cursor: disabled ? "not-allowed" : "pointer" } }, /* @__PURE__ */ React235.createElement(Group84, { wrap: "nowrap", align: "center", style: { flex: 1 } }, getIcon("external-link", block.props.icon), /* @__PURE__ */ React235.createElement(Stack152, { gap: 4, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React235.createElement(Group84, { gap: "xs", align: "center" }, /* @__PURE__ */ React235.createElement(Text131, { fw: 600, size: "sm" }, block.props.title || "Flow Link"), /* @__PURE__ */ React235.createElement(Badge41, { size: "xs", variant: "light", bg: badgeProps.color }, badgeProps.text)), /* @__PURE__ */ React235.createElement(Text131, { size: "xs", c: "dimmed", lineClamp: 2 }, block.props.description || (linksCount > 0 ? "Click to view links" : "No links configured")))));
|
|
23084
23098
|
if (disabled && isDisabled?.message) {
|
|
23085
|
-
return /* @__PURE__ */ React235.createElement(
|
|
23099
|
+
return /* @__PURE__ */ React235.createElement(Tooltip24, { label: isDisabled.message }, cardContent);
|
|
23086
23100
|
}
|
|
23087
23101
|
return cardContent;
|
|
23088
23102
|
};
|
|
@@ -23167,7 +23181,7 @@ import { IconCheck as IconCheck15, IconClock as IconClock11, IconContract as Ico
|
|
|
23167
23181
|
|
|
23168
23182
|
// src/mantine/blocks/action/template/GeneralTab.tsx
|
|
23169
23183
|
import React239, { useEffect as useEffect75, useMemo as useMemo86, useState as useState92 } from "react";
|
|
23170
|
-
import { Group as Group86, Stack as Stack154, Text as Text133, Button as Button40, ActionIcon as
|
|
23184
|
+
import { Group as Group86, Stack as Stack154, Text as Text133, Button as Button40, ActionIcon as ActionIcon35, Paper as Paper16, Select as Select5, Box as Box45, Checkbox as Checkbox12 } from "@mantine/core";
|
|
23171
23185
|
import { IconBolt as IconBolt8, IconTrash as IconTrash8, IconPlus as IconPlus7, IconSparkles as IconSparkles6, IconBell as IconBell2, IconCheckbox as IconCheckbox3 } from "@tabler/icons-react";
|
|
23172
23186
|
|
|
23173
23187
|
// src/mantine/components/Base/BaseIconCombobox.tsx
|
|
@@ -23487,7 +23501,7 @@ function BarrierSourcesEditor({
|
|
|
23487
23501
|
style: { flex: 1 },
|
|
23488
23502
|
size: "xs"
|
|
23489
23503
|
}
|
|
23490
|
-
), /* @__PURE__ */ React239.createElement(
|
|
23504
|
+
), /* @__PURE__ */ React239.createElement(ActionIcon35, { color: "red", variant: "subtle", onClick: () => handleRemove(index), size: "sm" }, /* @__PURE__ */ React239.createElement(IconTrash8, { size: 14 }))), src.sourceBlockId && /* @__PURE__ */ React239.createElement(
|
|
23491
23505
|
Select5,
|
|
23492
23506
|
{
|
|
23493
23507
|
label: "Event",
|
|
@@ -23560,7 +23574,7 @@ function GenericInputsEditor({ inputs, onInputsChange, editor, blockId }) {
|
|
|
23560
23574
|
currentBlockId: blockId,
|
|
23561
23575
|
size: "sm"
|
|
23562
23576
|
}
|
|
23563
|
-
), /* @__PURE__ */ React239.createElement(
|
|
23577
|
+
), /* @__PURE__ */ React239.createElement(ActionIcon35, { color: "red", variant: "subtle", onClick: () => handleRemoveInput(index) }, /* @__PURE__ */ React239.createElement(IconTrash8, { size: 16 })))))));
|
|
23564
23578
|
}
|
|
23565
23579
|
|
|
23566
23580
|
// src/mantine/blocks/action/template/TemplateConfig.tsx
|
|
@@ -24040,7 +24054,7 @@ function useActionDiff({ actionType, inputs, actorDid = "", entityDid }) {
|
|
|
24040
24054
|
|
|
24041
24055
|
// src/mantine/blocks/action/PendingInvocationList.tsx
|
|
24042
24056
|
import React244, { useEffect as useEffect79, useState as useState96, useMemo as useMemo91, useCallback as useCallback72, useRef as useRef22 } from "react";
|
|
24043
|
-
import { Stack as Stack158, Group as Group89, Text as Text138, Box as Box48, Badge as Badge43, Button as Button41, Paper as Paper17, ActionIcon as
|
|
24057
|
+
import { Stack as Stack158, Group as Group89, Text as Text138, Box as Box48, Badge as Badge43, Button as Button41, Paper as Paper17, ActionIcon as ActionIcon36, Tooltip as Tooltip25 } from "@mantine/core";
|
|
24044
24058
|
import { IconBolt as IconBolt9, IconClock as IconClock12, IconRefresh as IconRefresh5, IconX as IconX13 } from "@tabler/icons-react";
|
|
24045
24059
|
var PendingInvocationList = ({ editor, blockId, actionType: _actionType, onInvoke, autoResolve }) => {
|
|
24046
24060
|
const yDoc = editor?._yDoc;
|
|
@@ -24111,7 +24125,7 @@ var PendingInvocationRow = ({ invocation, editor, onInvoke, onDismiss }) => {
|
|
|
24111
24125
|
if (!invocation.expiresAt) return false;
|
|
24112
24126
|
return new Date(invocation.expiresAt).getTime() < Date.now();
|
|
24113
24127
|
}, [invocation.expiresAt]);
|
|
24114
|
-
return /* @__PURE__ */ React244.createElement(Paper17, { p: "xs", withBorder: true }, /* @__PURE__ */ React244.createElement(Group89, { justify: "space-between", align: "center", wrap: "nowrap" }, /* @__PURE__ */ React244.createElement(Box48, { style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React244.createElement(Group89, { gap: 6, align: "center", wrap: "nowrap" }, /* @__PURE__ */ React244.createElement(Badge43, { size: "xs", variant: "light", color: isExpired ? "red" : "teal" }, invocation.eventName), /* @__PURE__ */ React244.createElement(Text138, { size: "xs", c: "dimmed", truncate: true }, "from ", invocation.triggeringBlockId)), /* @__PURE__ */ React244.createElement(Text138, { size: "sm", fw: 500, mt: 2, truncate: true }, previewLabel), /* @__PURE__ */ React244.createElement(Text138, { size: "xs", c: "dimmed", mt: 2 }, formatTimestamp2(invocation.emittedAt), isExpired && " \xB7 expired")), /* @__PURE__ */ React244.createElement(Group89, { gap: 4, wrap: "nowrap" }, /* @__PURE__ */ React244.createElement(
|
|
24128
|
+
return /* @__PURE__ */ React244.createElement(Paper17, { p: "xs", withBorder: true }, /* @__PURE__ */ React244.createElement(Group89, { justify: "space-between", align: "center", wrap: "nowrap" }, /* @__PURE__ */ React244.createElement(Box48, { style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React244.createElement(Group89, { gap: 6, align: "center", wrap: "nowrap" }, /* @__PURE__ */ React244.createElement(Badge43, { size: "xs", variant: "light", color: isExpired ? "red" : "teal" }, invocation.eventName), /* @__PURE__ */ React244.createElement(Text138, { size: "xs", c: "dimmed", truncate: true }, "from ", invocation.triggeringBlockId)), /* @__PURE__ */ React244.createElement(Text138, { size: "sm", fw: 500, mt: 2, truncate: true }, previewLabel), /* @__PURE__ */ React244.createElement(Text138, { size: "xs", c: "dimmed", mt: 2 }, formatTimestamp2(invocation.emittedAt), isExpired && " \xB7 expired")), /* @__PURE__ */ React244.createElement(Group89, { gap: 4, wrap: "nowrap" }, /* @__PURE__ */ React244.createElement(Tooltip25, { label: "Invoke this listener", withArrow: true }, /* @__PURE__ */ React244.createElement(Button41, { size: "xs", variant: "filled", leftSection: /* @__PURE__ */ React244.createElement(IconRefresh5, { size: 12 }), onClick: () => onInvoke?.(invocation), disabled: isExpired || !onInvoke }, "Invoke")), /* @__PURE__ */ React244.createElement(Tooltip25, { label: "Dismiss without invoking", withArrow: true }, /* @__PURE__ */ React244.createElement(ActionIcon36, { variant: "subtle", color: "gray", onClick: onDismiss, "aria-label": "Dismiss" }, /* @__PURE__ */ React244.createElement(IconX13, { size: 14 }))))));
|
|
24115
24129
|
};
|
|
24116
24130
|
function buildPreview(editor, invocation) {
|
|
24117
24131
|
const sourceBlock = (editor?.document || []).find((b) => b?.id === invocation.triggeringBlockId);
|
|
@@ -24545,7 +24559,17 @@ function ActionFlowPanel({ editor, block, isDisabled }) {
|
|
|
24545
24559
|
);
|
|
24546
24560
|
return baseTabs;
|
|
24547
24561
|
}, [editor, block, actionType, FlowDetailComponent, disabled, isDisabled?.message]);
|
|
24548
|
-
return /* @__PURE__ */ React246.createElement(
|
|
24562
|
+
return /* @__PURE__ */ React246.createElement(
|
|
24563
|
+
BaseRightPanelLayout,
|
|
24564
|
+
{
|
|
24565
|
+
stepTabs: true,
|
|
24566
|
+
showSettings: false,
|
|
24567
|
+
onClose: closePanel,
|
|
24568
|
+
title: block.props.title || getActionMeta(actionType).label || "",
|
|
24569
|
+
tabs,
|
|
24570
|
+
context: { editor, block }
|
|
24571
|
+
}
|
|
24572
|
+
);
|
|
24549
24573
|
}
|
|
24550
24574
|
function ActionPanelContent({
|
|
24551
24575
|
actionType,
|
|
@@ -25105,7 +25129,7 @@ var EntitySingleSelectionConfig = ({ inputs, onInputsChange }) => {
|
|
|
25105
25129
|
|
|
25106
25130
|
// src/mantine/blocks/action/actionTypes/pod/entitySingleSelection/EntitySingleSelectionFlowDetail.tsx
|
|
25107
25131
|
import React252, { useCallback as useCallback80, useEffect as useEffect85, useState as useState104 } from "react";
|
|
25108
|
-
import { ActionIcon as
|
|
25132
|
+
import { ActionIcon as ActionIcon37, Badge as Badge44, Box as Box52, Button as Button46, Group as Group94, Loader as Loader36, Stack as Stack166, Text as Text146, Tooltip as Tooltip26 } from "@mantine/core";
|
|
25109
25133
|
import { IconRefresh as IconRefresh6 } from "@tabler/icons-react";
|
|
25110
25134
|
var ALLOWED_TYPES = ["dao", "dao/pod"];
|
|
25111
25135
|
var TYPE_LABELS = {
|
|
@@ -25182,7 +25206,7 @@ var EntitySingleSelectionFlowDetail = ({ block, runtime, isDisabled, executeActi
|
|
|
25182
25206
|
const output = { selectedEntityDid: null, selectedEntityName: "", selectedEntityType: "", skipped: true };
|
|
25183
25207
|
await executeAction({ runtimeInputs: output });
|
|
25184
25208
|
}, [executeAction]);
|
|
25185
|
-
return /* @__PURE__ */ React252.createElement(Stack166, { gap: "md" }, /* @__PURE__ */ React252.createElement(Stack166, { gap: 2 }, /* @__PURE__ */ React252.createElement(Text146, { fw: 600 }, block?.props?.title || "Parent Organisation"), /* @__PURE__ */ React252.createElement(Text146, { size: "sm", c: "dimmed" }, block?.props?.description || "Optionally nest this POD inside a DAO or POD you control. You can skip this step.")), error && /* @__PURE__ */ React252.createElement(DismissibleAlert, { color: "red", styles: actionAlertStyles }, /* @__PURE__ */ React252.createElement(Text146, { size: "sm" }, error)), /* @__PURE__ */ React252.createElement(Group94, { justify: "space-between", align: "center", wrap: "nowrap" }, /* @__PURE__ */ React252.createElement(Text146, { size: "sm", fw: 600 }, "Available parent organisations"), /* @__PURE__ */ React252.createElement(
|
|
25209
|
+
return /* @__PURE__ */ React252.createElement(Stack166, { gap: "md" }, /* @__PURE__ */ React252.createElement(Stack166, { gap: 2 }, /* @__PURE__ */ React252.createElement(Text146, { fw: 600 }, block?.props?.title || "Parent Organisation"), /* @__PURE__ */ React252.createElement(Text146, { size: "sm", c: "dimmed" }, block?.props?.description || "Optionally nest this POD inside a DAO or POD you control. You can skip this step.")), error && /* @__PURE__ */ React252.createElement(DismissibleAlert, { color: "red", styles: actionAlertStyles }, /* @__PURE__ */ React252.createElement(Text146, { size: "sm" }, error)), /* @__PURE__ */ React252.createElement(Group94, { justify: "space-between", align: "center", wrap: "nowrap" }, /* @__PURE__ */ React252.createElement(Text146, { size: "sm", fw: 600 }, "Available parent organisations"), /* @__PURE__ */ React252.createElement(Tooltip26, { label: "Refetch organisations", withArrow: true }, /* @__PURE__ */ React252.createElement(ActionIcon37, { variant: "subtle", size: "sm", onClick: loadEntities, loading, disabled: isDisabled, "aria-label": "Refetch organisations" }, /* @__PURE__ */ React252.createElement(IconRefresh6, { size: 16 })))), loading ? /* @__PURE__ */ React252.createElement(Group94, { justify: "center", py: "md" }, /* @__PURE__ */ React252.createElement(Loader36, { size: "sm" }), /* @__PURE__ */ React252.createElement(Text146, { size: "sm", c: "dimmed" }, "Loading your organisations...")) : /* @__PURE__ */ React252.createElement(Stack166, { gap: "xs" }, entities.length === 0 && !error && /* @__PURE__ */ React252.createElement(Text146, { size: "sm", c: "dimmed", ta: "center", py: "sm" }, "No DAOs or PODs found where you are a controller."), entities.map((entity) => {
|
|
25186
25210
|
const isSelected = entity.did === selectedDid;
|
|
25187
25211
|
return /* @__PURE__ */ React252.createElement(
|
|
25188
25212
|
Box52,
|
|
@@ -25237,7 +25261,7 @@ var MemberMultiSelectConfig = ({ inputs, onInputsChange }) => {
|
|
|
25237
25261
|
|
|
25238
25262
|
// src/mantine/blocks/action/actionTypes/pod/memberMultiSelect/MemberMultiSelectFlowDetail.tsx
|
|
25239
25263
|
import React254, { useCallback as useCallback82, useMemo as useMemo95, useRef as useRef25, useState as useState106 } from "react";
|
|
25240
|
-
import { ActionIcon as
|
|
25264
|
+
import { ActionIcon as ActionIcon38, Badge as Badge45, Button as Button47, Flex as Flex35, Group as Group95, Loader as Loader37, NumberInput as NumberInput3, Paper as Paper18, Select as Select6, Stack as Stack168, Switch as Switch6, Text as Text148, TextInput as TextInput7 } from "@mantine/core";
|
|
25241
25265
|
import { IconSearch as IconSearch8, IconAlertCircle as IconAlertCircle20, IconCheck as IconCheck16, IconX as IconX15 } from "@tabler/icons-react";
|
|
25242
25266
|
function normalizeMember(m) {
|
|
25243
25267
|
return {
|
|
@@ -25495,7 +25519,7 @@ var MemberMultiSelectFlowDetail = ({ inputs, block, runtime, isDisabled, execute
|
|
|
25495
25519
|
onClick: () => handleUpdateMember(i, { votingPower: m.votingPower - 1 })
|
|
25496
25520
|
},
|
|
25497
25521
|
"\u2212"
|
|
25498
|
-
), /* @__PURE__ */ React254.createElement(Text148, { size: "sm", w: 20, ta: "center" }, m.votingPower), /* @__PURE__ */ React254.createElement(Button47, { variant: "subtle", size: "compact-xs", px: 6, disabled: isDisabled, onClick: () => handleUpdateMember(i, { votingPower: m.votingPower + 1 }) }, "+")), /* @__PURE__ */ React254.createElement(
|
|
25522
|
+
), /* @__PURE__ */ React254.createElement(Text148, { size: "sm", w: 20, ta: "center" }, m.votingPower), /* @__PURE__ */ React254.createElement(Button47, { variant: "subtle", size: "compact-xs", px: 6, disabled: isDisabled, onClick: () => handleUpdateMember(i, { votingPower: m.votingPower + 1 }) }, "+")), /* @__PURE__ */ React254.createElement(ActionIcon38, { color: "red", variant: "subtle", size: "sm", onClick: () => handleRemoveMember(i), disabled: isDisabled || members.length === 1 }, /* @__PURE__ */ React254.createElement(IconX15, { size: 14 }))));
|
|
25499
25523
|
})));
|
|
25500
25524
|
const renderMultisig = () => /* @__PURE__ */ React254.createElement(Stack168, { gap: "md" }, /* @__PURE__ */ React254.createElement(
|
|
25501
25525
|
NumberInput3,
|
|
@@ -25509,7 +25533,7 @@ var MemberMultiSelectFlowDetail = ({ inputs, block, runtime, isDisabled, execute
|
|
|
25509
25533
|
disabled: isDisabled,
|
|
25510
25534
|
size: "sm"
|
|
25511
25535
|
}
|
|
25512
|
-
), /* @__PURE__ */ React254.createElement(MemberSearch, { members, onAdd: handleAddMember, isDisabled }), members.length > 0 && /* @__PURE__ */ React254.createElement(Stack168, { gap: "xs" }, /* @__PURE__ */ React254.createElement(Group95, { gap: "xs" }, /* @__PURE__ */ React254.createElement(Text148, { size: "xs", fw: 600, c: "dimmed" }, "SIGNATORIES (", members.length, ")"), /* @__PURE__ */ React254.createElement(Badge45, { size: "xs", color: "orange", variant: "light" }, "threshold: ", multisigThreshold, " of ", members.length)), members.map((m, i) => /* @__PURE__ */ React254.createElement(Paper18, { key: `${m.did}-${i}`, withBorder: true, p: "sm", style: { borderRadius: 10 } }, /* @__PURE__ */ React254.createElement(Group95, { wrap: "nowrap", gap: "sm", align: "center" }, /* @__PURE__ */ React254.createElement(BaseAvatar, { src: m.avatarUrl, did: m.did, size: 32 }), /* @__PURE__ */ React254.createElement(Stack168, { gap: 0, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React254.createElement(Text148, { size: "sm", fw: 500, lineClamp: 1 }, m.displayName), /* @__PURE__ */ React254.createElement(Text148, { size: "xs", c: "dimmed", lineClamp: 1 }, (m.did || "").length > 44 ? `${m.did.slice(0, 22)}\u2026${m.did.slice(-16)}` : m.did)), /* @__PURE__ */ React254.createElement(
|
|
25536
|
+
), /* @__PURE__ */ React254.createElement(MemberSearch, { members, onAdd: handleAddMember, isDisabled }), members.length > 0 && /* @__PURE__ */ React254.createElement(Stack168, { gap: "xs" }, /* @__PURE__ */ React254.createElement(Group95, { gap: "xs" }, /* @__PURE__ */ React254.createElement(Text148, { size: "xs", fw: 600, c: "dimmed" }, "SIGNATORIES (", members.length, ")"), /* @__PURE__ */ React254.createElement(Badge45, { size: "xs", color: "orange", variant: "light" }, "threshold: ", multisigThreshold, " of ", members.length)), members.map((m, i) => /* @__PURE__ */ React254.createElement(Paper18, { key: `${m.did}-${i}`, withBorder: true, p: "sm", style: { borderRadius: 10 } }, /* @__PURE__ */ React254.createElement(Group95, { wrap: "nowrap", gap: "sm", align: "center" }, /* @__PURE__ */ React254.createElement(BaseAvatar, { src: m.avatarUrl, did: m.did, size: 32 }), /* @__PURE__ */ React254.createElement(Stack168, { gap: 0, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React254.createElement(Text148, { size: "sm", fw: 500, lineClamp: 1 }, m.displayName), /* @__PURE__ */ React254.createElement(Text148, { size: "xs", c: "dimmed", lineClamp: 1 }, (m.did || "").length > 44 ? `${m.did.slice(0, 22)}\u2026${m.did.slice(-16)}` : m.did)), /* @__PURE__ */ React254.createElement(ActionIcon38, { color: "red", variant: "subtle", size: "sm", onClick: () => handleRemoveMember(i), disabled: isDisabled || members.length === 1 }, /* @__PURE__ */ React254.createElement(IconX15, { size: 14 })))))));
|
|
25513
25537
|
const renderNftStaking = () => /* @__PURE__ */ React254.createElement(Stack168, { gap: "md" }, /* @__PURE__ */ React254.createElement(DismissibleAlert, { color: "blue", styles: actionAlertStyles }, /* @__PURE__ */ React254.createElement(Text148, { size: "sm" }, "For NFT staking groups, voting power is derived from on-chain NFT holdings. Provide the NFT contract address \u2014 no explicit member list is needed.")), /* @__PURE__ */ React254.createElement(
|
|
25514
25538
|
TextInput7,
|
|
25515
25539
|
{
|
|
@@ -25930,7 +25954,7 @@ var ListDomainFlowsConfig = ({ inputs, onInputsChange }) => {
|
|
|
25930
25954
|
|
|
25931
25955
|
// src/mantine/blocks/action/actionTypes/pod/listDomainFlows/ListDomainFlowsFlowDetail.tsx
|
|
25932
25956
|
import React258, { useCallback as useCallback86, useEffect as useEffect89, useMemo as useMemo97, useRef as useRef26, useState as useState110 } from "react";
|
|
25933
|
-
import { ActionIcon as
|
|
25957
|
+
import { ActionIcon as ActionIcon39, Badge as Badge46, Box as Box54, Button as Button49, Checkbox as Checkbox13, Group as Group97, Loader as Loader38, Stack as Stack172, Text as Text152, Tooltip as Tooltip27 } from "@mantine/core";
|
|
25934
25958
|
import { IconAlertCircle as IconAlertCircle22, IconArrowLeft as IconArrowLeft7, IconCheck as IconCheck18, IconFolders, IconRefresh as IconRefresh7, IconTemplate } from "@tabler/icons-react";
|
|
25935
25959
|
function templateSelectionKey(protocolDid, template) {
|
|
25936
25960
|
return `${protocolDid}::${template.sourceRoomId}`;
|
|
@@ -26124,7 +26148,7 @@ var ListDomainFlowsFlowDetail = ({ inputs, block, runtime, updateRuntime, isDisa
|
|
|
26124
26148
|
/* @__PURE__ */ React258.createElement(Group97, { wrap: "nowrap", gap: "sm", align: "center" }, /* @__PURE__ */ React258.createElement(Checkbox13, { checked, disabled, onChange: (event) => toggleTemplate(protocol.protocolDid, template, event.currentTarget.checked) }), /* @__PURE__ */ React258.createElement(Stack172, { gap: 2, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React258.createElement(Group97, { gap: "xs", wrap: "nowrap" }, /* @__PURE__ */ React258.createElement(Text152, { fw: 500, size: "sm", lineClamp: 1 }, template.label), template.alreadyImported && /* @__PURE__ */ React258.createElement(Badge46, { size: "xs", color: "gray", variant: "light" }, "imported")), /* @__PURE__ */ React258.createElement(Text152, { size: "xs", c: "dimmed", lineClamp: 1, ff: "monospace" }, template.path || template.sourceRoomId)))
|
|
26125
26149
|
);
|
|
26126
26150
|
};
|
|
26127
|
-
return /* @__PURE__ */ React258.createElement(Stack172, { gap: "md" }, /* @__PURE__ */ React258.createElement(Stack172, { gap: 2 }, /* @__PURE__ */ React258.createElement(Text152, { fw: 600 }, block?.props?.title || "Linked Flows"), /* @__PURE__ */ React258.createElement(Text152, { size: "sm", c: "dimmed" }, block?.props?.description || "Choose flow templates from protocol deeds. You can select templates across multiple deeds.")), loading && /* @__PURE__ */ React258.createElement(Group97, { justify: "center", py: "sm" }, /* @__PURE__ */ React258.createElement(Loader38, { size: "sm" }), /* @__PURE__ */ React258.createElement(Text152, { size: "sm", c: "dimmed" }, "Loading protocol templates...")), error && /* @__PURE__ */ React258.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React258.createElement(IconAlertCircle22, { size: 16 }), color: "red", styles: actionAlertStyles }, /* @__PURE__ */ React258.createElement(Text152, { size: "sm" }, error)), !loading && !error && protocols.length === 0 && /* @__PURE__ */ React258.createElement(Text152, { size: "sm", c: "dimmed", ta: "center", py: "sm" }, "No protocol deeds with templates were found."), !loading && !error && protocols.length > 0 && view === "deeds" && /* @__PURE__ */ React258.createElement(Stack172, { gap: "xs" }, /* @__PURE__ */ React258.createElement(Group97, { justify: "space-between", gap: "sm" }, /* @__PURE__ */ React258.createElement(Text152, { size: "xs", fw: 600, c: "dimmed" }, "PROTOCOL DEEDS"), /* @__PURE__ */ React258.createElement(
|
|
26151
|
+
return /* @__PURE__ */ React258.createElement(Stack172, { gap: "md" }, /* @__PURE__ */ React258.createElement(Stack172, { gap: 2 }, /* @__PURE__ */ React258.createElement(Text152, { fw: 600 }, block?.props?.title || "Linked Flows"), /* @__PURE__ */ React258.createElement(Text152, { size: "sm", c: "dimmed" }, block?.props?.description || "Choose flow templates from protocol deeds. You can select templates across multiple deeds.")), loading && /* @__PURE__ */ React258.createElement(Group97, { justify: "center", py: "sm" }, /* @__PURE__ */ React258.createElement(Loader38, { size: "sm" }), /* @__PURE__ */ React258.createElement(Text152, { size: "sm", c: "dimmed" }, "Loading protocol templates...")), error && /* @__PURE__ */ React258.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React258.createElement(IconAlertCircle22, { size: 16 }), color: "red", styles: actionAlertStyles }, /* @__PURE__ */ React258.createElement(Text152, { size: "sm" }, error)), !loading && !error && protocols.length === 0 && /* @__PURE__ */ React258.createElement(Text152, { size: "sm", c: "dimmed", ta: "center", py: "sm" }, "No protocol deeds with templates were found."), !loading && !error && protocols.length > 0 && view === "deeds" && /* @__PURE__ */ React258.createElement(Stack172, { gap: "xs" }, /* @__PURE__ */ React258.createElement(Group97, { justify: "space-between", gap: "sm" }, /* @__PURE__ */ React258.createElement(Text152, { size: "xs", fw: 600, c: "dimmed" }, "PROTOCOL DEEDS"), /* @__PURE__ */ React258.createElement(Tooltip27, { label: "Refresh protocol deeds", withArrow: true }, /* @__PURE__ */ React258.createElement(ActionIcon39, { variant: "subtle", size: "sm", onClick: () => loadProtocols("refresh"), loading: refreshing, disabled: isDisabled }, /* @__PURE__ */ React258.createElement(IconRefresh7, { size: 16 })))), protocols.map((protocol) => {
|
|
26128
26152
|
const selectedCount = protocol.templates.filter((template) => isTemplateSelected(selected, protocol.protocolDid, template)).length;
|
|
26129
26153
|
return /* @__PURE__ */ React258.createElement(
|
|
26130
26154
|
Box54,
|
|
@@ -26146,7 +26170,7 @@ var ListDomainFlowsFlowDetail = ({ inputs, block, runtime, updateRuntime, isDisa
|
|
|
26146
26170
|
},
|
|
26147
26171
|
/* @__PURE__ */ React258.createElement(Stack172, { gap: 6 }, /* @__PURE__ */ React258.createElement(Group97, { gap: "xs", wrap: "nowrap" }, /* @__PURE__ */ React258.createElement(IconFolders, { size: 16, color: "var(--mantine-color-blue-4)" }), /* @__PURE__ */ React258.createElement(Text152, { size: "sm", fw: 500, lineClamp: 1 }, protocol.name)), protocol.description && /* @__PURE__ */ React258.createElement(Text152, { size: "xs", c: "dimmed", lineClamp: 2 }, protocol.description), /* @__PURE__ */ React258.createElement(Group97, { gap: "xs" }, /* @__PURE__ */ React258.createElement(Badge46, { size: "xs", color: "gray", variant: "light" }, protocol.templates.length, " template", protocol.templates.length === 1 ? "" : "s"), selectedCount > 0 && /* @__PURE__ */ React258.createElement(Badge46, { size: "xs", color: "blue", variant: "light" }, selectedCount, " selected"), protocol.importedCount ? /* @__PURE__ */ React258.createElement(Badge46, { size: "xs", color: "gray", variant: "dot" }, protocol.importedCount, " imported") : null))
|
|
26148
26172
|
);
|
|
26149
|
-
})), !loading && !error && view === "templates" && activeProtocol && /* @__PURE__ */ React258.createElement(Stack172, { gap: "xs" }, /* @__PURE__ */ React258.createElement(Group97, { justify: "space-between", gap: "sm" }, /* @__PURE__ */ React258.createElement(Group97, { gap: "xs", style: { minWidth: 0 } }, /* @__PURE__ */ React258.createElement(
|
|
26173
|
+
})), !loading && !error && view === "templates" && activeProtocol && /* @__PURE__ */ React258.createElement(Stack172, { gap: "xs" }, /* @__PURE__ */ React258.createElement(Group97, { justify: "space-between", gap: "sm" }, /* @__PURE__ */ React258.createElement(Group97, { gap: "xs", style: { minWidth: 0 } }, /* @__PURE__ */ React258.createElement(Tooltip27, { label: "Back to protocol deeds", withArrow: true }, /* @__PURE__ */ React258.createElement(ActionIcon39, { variant: "subtle", size: "sm", onClick: goBackToDeeds }, /* @__PURE__ */ React258.createElement(IconArrowLeft7, { size: 16 }))), /* @__PURE__ */ React258.createElement(IconTemplate, { size: 16, color: "var(--mantine-color-blue-4)" }), /* @__PURE__ */ React258.createElement(Text152, { size: "xs", fw: 600, c: "dimmed", lineClamp: 1 }, activeProtocol.name)), /* @__PURE__ */ React258.createElement(Group97, { gap: "xs" }, /* @__PURE__ */ React258.createElement(Badge46, { size: "xs", color: "blue", variant: "light" }, activeProtocol.templates.filter((template) => isTemplateSelected(selected, activeProtocol.protocolDid, template)).length, " selected"), /* @__PURE__ */ React258.createElement(
|
|
26150
26174
|
Button49,
|
|
26151
26175
|
{
|
|
26152
26176
|
size: "compact-xs",
|
|
@@ -26294,7 +26318,7 @@ var GovernanceMemberProposalConfig = ({ inputs, onInputsChange }) => {
|
|
|
26294
26318
|
|
|
26295
26319
|
// src/mantine/blocks/action/actionTypes/governance/memberProposal/GovernanceMemberProposalFlowDetail.tsx
|
|
26296
26320
|
import React263, { useCallback as useCallback89, useEffect as useEffect94, useMemo as useMemo100, useRef as useRef29, useState as useState116 } from "react";
|
|
26297
|
-
import { ActionIcon as
|
|
26321
|
+
import { ActionIcon as ActionIcon40, Button as Button51, Card as Card24, Group as Group98, Loader as Loader41, Paper as Paper20, SegmentedControl as SegmentedControl7, Select as Select8, Stack as Stack177, Text as Text156 } from "@mantine/core";
|
|
26298
26322
|
import { IconAlertCircle as IconAlertCircle23, IconCheck as IconCheck19, IconUsers as IconUsers7, IconX as IconX16 } from "@tabler/icons-react";
|
|
26299
26323
|
|
|
26300
26324
|
// src/mantine/blocks/action/actionTypes/governance/_shared/UserSearch.tsx
|
|
@@ -26684,7 +26708,7 @@ var GovernanceMemberProposalFlowDetail = ({
|
|
|
26684
26708
|
onClick: () => setAddList((prev) => prev.map((x, idx) => idx === i ? { ...x, weight: x.weight + 1 } : x))
|
|
26685
26709
|
},
|
|
26686
26710
|
"+"
|
|
26687
|
-
)), /* @__PURE__ */ React263.createElement(
|
|
26711
|
+
)), /* @__PURE__ */ React263.createElement(ActionIcon40, { color: "red", variant: "subtle", size: "sm", disabled: isDisabled, onClick: () => setAddList((prev) => prev.filter((_, idx) => idx !== i)) }, /* @__PURE__ */ React263.createElement(IconX16, { size: 14 }))))))), operation === "remove" && /* @__PURE__ */ React263.createElement(
|
|
26688
26712
|
Select8,
|
|
26689
26713
|
{
|
|
26690
26714
|
label: "Member to remove",
|
|
@@ -28384,7 +28408,7 @@ import { IconPlugConnected } from "@tabler/icons-react";
|
|
|
28384
28408
|
|
|
28385
28409
|
// src/mantine/blocks/action/actionTypes/governance/_shared/EntityDidField.tsx
|
|
28386
28410
|
import React282, { useCallback as useCallback97, useMemo as useMemo105 } from "react";
|
|
28387
|
-
import { Button as Button56, Stack as Stack189, Text as Text170, Tooltip as
|
|
28411
|
+
import { Button as Button56, Stack as Stack189, Text as Text170, Tooltip as Tooltip28 } from "@mantine/core";
|
|
28388
28412
|
import { IconWorldPin } from "@tabler/icons-react";
|
|
28389
28413
|
var EntityDidField = ({ label, description, value, onChange, isDisabled, placeholder }) => {
|
|
28390
28414
|
const handlers = useBlocknoteHandlers();
|
|
@@ -28410,7 +28434,7 @@ var EntityDidField = ({ label, description, value, onChange, isDisabled, placeho
|
|
|
28410
28434
|
disabled: isDisabled,
|
|
28411
28435
|
size: "sm",
|
|
28412
28436
|
rightSectionWidth: 130,
|
|
28413
|
-
rightSection: currentDid ? /* @__PURE__ */ React282.createElement(
|
|
28437
|
+
rightSection: currentDid ? /* @__PURE__ */ React282.createElement(Tooltip28, { label: currentDid, position: "top", withArrow: true }, /* @__PURE__ */ React282.createElement(Button56, { variant: "light", size: "compact-xs", leftSection: /* @__PURE__ */ React282.createElement(IconWorldPin, { size: 12 }), onClick: useCurrent, disabled: isDisabled || isCurrent }, isCurrent ? "This domain" : "Use this domain")) : void 0
|
|
28414
28438
|
}
|
|
28415
28439
|
), isCurrent && /* @__PURE__ */ React282.createElement(Text170, { size: "xs", c: "dimmed" }, "Using the current domain's DID."));
|
|
28416
28440
|
};
|
|
@@ -28568,7 +28592,7 @@ import { IconSitemap as IconSitemap2 } from "@tabler/icons-react";
|
|
|
28568
28592
|
|
|
28569
28593
|
// src/mantine/blocks/action/actionTypes/governance/daoManageSubDaos/GovernanceDaoManageSubDaosFlowDetail.tsx
|
|
28570
28594
|
import React286, { useState as useState138 } from "react";
|
|
28571
|
-
import { ActionIcon as
|
|
28595
|
+
import { ActionIcon as ActionIcon41, Button as Button57, Group as Group102, Paper as Paper22, Stack as Stack191, Text as Text172 } from "@mantine/core";
|
|
28572
28596
|
import { IconSitemap, IconX as IconX17 } from "@tabler/icons-react";
|
|
28573
28597
|
|
|
28574
28598
|
// src/mantine/blocks/action/actionTypes/governance/_shared/GroupAccountField.tsx
|
|
@@ -28665,7 +28689,7 @@ var AddressList = ({ label, entryLabel, entryDescription, addresses, onChange, i
|
|
|
28665
28689
|
onChange([...addresses, addr]);
|
|
28666
28690
|
setDraft("");
|
|
28667
28691
|
};
|
|
28668
|
-
return /* @__PURE__ */ React286.createElement(Stack191, { gap: "xs" }, /* @__PURE__ */ React286.createElement(Text172, { size: "xs", fw: 600, c: "dimmed" }, label), addresses.map((addr, i) => /* @__PURE__ */ React286.createElement(Paper22, { key: addr, withBorder: true, p: "sm", style: { borderRadius: 10 } }, /* @__PURE__ */ React286.createElement(Group102, { wrap: "nowrap", gap: "sm", align: "center" }, /* @__PURE__ */ React286.createElement(Text172, { size: "sm", style: { flex: 1, minWidth: 0, wordBreak: "break-all" } }, addr), /* @__PURE__ */ React286.createElement(
|
|
28692
|
+
return /* @__PURE__ */ React286.createElement(Stack191, { gap: "xs" }, /* @__PURE__ */ React286.createElement(Text172, { size: "xs", fw: 600, c: "dimmed" }, label), addresses.map((addr, i) => /* @__PURE__ */ React286.createElement(Paper22, { key: addr, withBorder: true, p: "sm", style: { borderRadius: 10 } }, /* @__PURE__ */ React286.createElement(Group102, { wrap: "nowrap", gap: "sm", align: "center" }, /* @__PURE__ */ React286.createElement(Text172, { size: "sm", style: { flex: 1, minWidth: 0, wordBreak: "break-all" } }, addr), /* @__PURE__ */ React286.createElement(ActionIcon41, { color: "red", variant: "subtle", size: "sm", disabled: isDisabled, onClick: () => onChange(addresses.filter((_, idx) => idx !== i)) }, /* @__PURE__ */ React286.createElement(IconX17, { size: 14 }))))), /* @__PURE__ */ React286.createElement(Group102, { gap: "xs", wrap: "nowrap", align: "flex-end" }, /* @__PURE__ */ React286.createElement("div", { style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React286.createElement(GroupAccountField, { label: entryLabel, description: entryDescription, value: draft, onChange: setDraft, isDisabled })), /* @__PURE__ */ React286.createElement(Button57, { size: "sm", variant: "light", onClick: handleAdd, disabled: isDisabled || !draft.trim() || addresses.includes(draft.trim()) }, "Add")));
|
|
28669
28693
|
};
|
|
28670
28694
|
var GovernanceDaoManageSubDaosFlowDetail = (props) => {
|
|
28671
28695
|
const { isDisabled } = props;
|
|
@@ -28891,7 +28915,7 @@ import { IconRosetteDiscountCheck as IconRosetteDiscountCheck2 } from "@tabler/i
|
|
|
28891
28915
|
|
|
28892
28916
|
// src/mantine/blocks/action/actionTypes/governance/daoAcceptToMarketplace/GovernanceDaoAcceptToMarketplaceFlowDetail.tsx
|
|
28893
28917
|
import React289, { useMemo as useMemo107, useState as useState141 } from "react";
|
|
28894
|
-
import { Button as Button58, Tooltip as
|
|
28918
|
+
import { Button as Button58, Tooltip as Tooltip29 } from "@mantine/core";
|
|
28895
28919
|
import { IconRosetteDiscountCheck } from "@tabler/icons-react";
|
|
28896
28920
|
var GovernanceDaoAcceptToMarketplaceFlowDetail = (props) => {
|
|
28897
28921
|
const { isDisabled } = props;
|
|
@@ -28941,7 +28965,7 @@ var GovernanceDaoAcceptToMarketplaceFlowDetail = (props) => {
|
|
|
28941
28965
|
disabled: isDisabled,
|
|
28942
28966
|
size: "sm",
|
|
28943
28967
|
rightSectionWidth: 130,
|
|
28944
|
-
rightSection: currentRelayerDid ? /* @__PURE__ */ React289.createElement(
|
|
28968
|
+
rightSection: currentRelayerDid ? /* @__PURE__ */ React289.createElement(Tooltip29, { label: currentRelayerDid, position: "top", withArrow: true }, /* @__PURE__ */ React289.createElement(Button58, { variant: "light", size: "compact-xs", onClick: () => setRelayerNodeDid(currentRelayerDid), disabled: isDisabled || isCurrentRelayer }, isCurrentRelayer ? "This relayer" : "Use this relayer")) : void 0
|
|
28945
28969
|
}
|
|
28946
28970
|
),
|
|
28947
28971
|
/* @__PURE__ */ React289.createElement(
|
|
@@ -29908,7 +29932,7 @@ import { IconWorld as IconWorld2 } from "@tabler/icons-react";
|
|
|
29908
29932
|
|
|
29909
29933
|
// src/mantine/blocks/action/actionTypes/httpRequest/HttpRequestConfig.tsx
|
|
29910
29934
|
import React301, { useEffect as useEffect102, useState as useState153, useCallback as useCallback98 } from "react";
|
|
29911
|
-
import { Stack as Stack195, Text as Text183, Button as Button59, Group as Group103, ActionIcon as
|
|
29935
|
+
import { Stack as Stack195, Text as Text183, Button as Button59, Group as Group103, ActionIcon as ActionIcon42, Paper as Paper23, Alert as Alert40, Code as Code10 } from "@mantine/core";
|
|
29912
29936
|
import { IconTrash as IconTrash9, IconPlus as IconPlus8, IconInfoCircle as IconInfoCircle5 } from "@tabler/icons-react";
|
|
29913
29937
|
var HttpRequestConfig = ({ inputs, onInputsChange, editor, blockId }) => {
|
|
29914
29938
|
const [local, setLocal] = useState153(() => parseHttpRequestInputs(inputs));
|
|
@@ -29993,7 +30017,7 @@ var HttpRequestConfig = ({ inputs, onInputsChange, editor, blockId }) => {
|
|
|
29993
30017
|
currentBlockId: blockId,
|
|
29994
30018
|
size: "sm"
|
|
29995
30019
|
}
|
|
29996
|
-
), /* @__PURE__ */ React301.createElement(
|
|
30020
|
+
), /* @__PURE__ */ React301.createElement(ActionIcon42, { color: "red", variant: "subtle", onClick: () => handleRemoveHeader(index) }, /* @__PURE__ */ React301.createElement(IconTrash9, { size: 16 }))))))), /* @__PURE__ */ React301.createElement(Stack195, { gap: "xs" }, /* @__PURE__ */ React301.createElement(Group103, { justify: "space-between" }, /* @__PURE__ */ React301.createElement(Text183, { size: "sm", c: "neutralColor.7" }, "Request Body (JSON)"), /* @__PURE__ */ React301.createElement(Button59, { size: "xs", variant: "light", leftSection: /* @__PURE__ */ React301.createElement(IconPlus8, { size: 14 }), onClick: handleAddBodyField }, "Add Field")), /* @__PURE__ */ React301.createElement(Text183, { size: "xs", c: "dimmed" }, "Build your JSON request body as key-value pairs"), local.body.length > 0 && /* @__PURE__ */ React301.createElement(Stack195, { gap: "xs" }, local.body.map((field, index) => /* @__PURE__ */ React301.createElement(Paper23, { key: index, p: "xs" }, /* @__PURE__ */ React301.createElement(Group103, { gap: "xs", align: "flex-start" }, /* @__PURE__ */ React301.createElement(
|
|
29997
30021
|
DataInput,
|
|
29998
30022
|
{
|
|
29999
30023
|
placeholder: "Field key (e.g., name)",
|
|
@@ -30013,7 +30037,7 @@ var HttpRequestConfig = ({ inputs, onInputsChange, editor, blockId }) => {
|
|
|
30013
30037
|
currentBlockId: blockId,
|
|
30014
30038
|
size: "sm"
|
|
30015
30039
|
}
|
|
30016
|
-
), /* @__PURE__ */ React301.createElement(
|
|
30040
|
+
), /* @__PURE__ */ React301.createElement(ActionIcon42, { color: "red", variant: "subtle", onClick: () => handleRemoveBodyField(index) }, /* @__PURE__ */ React301.createElement(IconTrash9, { size: 16 }))))))), /* @__PURE__ */ React301.createElement(Alert40, { icon: /* @__PURE__ */ React301.createElement(IconInfoCircle5, { size: 16 }), title: "Response Schema", styles: actionAlertStyles }, /* @__PURE__ */ React301.createElement(Text183, { size: "xs" }, "Define the expected structure of your API response. This allows other blocks to reference specific fields from the response data using the DataInput component.")), /* @__PURE__ */ React301.createElement(Stack195, { gap: "xs" }, /* @__PURE__ */ React301.createElement(Text183, { size: "sm", c: "neutralColor.7" }, "How it works"), /* @__PURE__ */ React301.createElement(Text183, { size: "xs", c: "dimmed" }, "1. Define response fields using dot notation (e.g., ", /* @__PURE__ */ React301.createElement(Code10, null, "customer.email"), ")"), /* @__PURE__ */ React301.createElement(Text183, { size: "xs", c: "dimmed" }, "2. Fields become available in DataInput selectors across other blocks"), /* @__PURE__ */ React301.createElement(Text183, { size: "xs", c: "dimmed" }, "3. Reference them like: ", /* @__PURE__ */ React301.createElement(Code10, null, `{{${blockId}.response.customer.email}}`))), /* @__PURE__ */ React301.createElement(Stack195, { gap: "xs" }, /* @__PURE__ */ React301.createElement(Group103, { justify: "space-between" }, /* @__PURE__ */ React301.createElement(Text183, { size: "sm", c: "neutralColor.7" }, "Response Fields"), /* @__PURE__ */ React301.createElement(Button59, { size: "xs", variant: "light", leftSection: /* @__PURE__ */ React301.createElement(IconPlus8, { size: 14 }), onClick: handleAddSchemaField }, "Add Field")), schemaFields.length === 0 ? /* @__PURE__ */ React301.createElement(Code10, { p: "md" }, 'No response fields defined yet. Click "Add Field" to start defining your response structure.') : /* @__PURE__ */ React301.createElement(Stack195, { gap: "md" }, schemaFields.map((field, index) => /* @__PURE__ */ React301.createElement(Paper23, { key: index, p: "md", withBorder: true }, /* @__PURE__ */ React301.createElement(Stack195, { gap: "sm" }, /* @__PURE__ */ React301.createElement(Group103, { justify: "space-between", align: "flex-start" }, /* @__PURE__ */ React301.createElement(Text183, { size: "sm", fw: 500 }, "Field ", index + 1), /* @__PURE__ */ React301.createElement(ActionIcon42, { color: "red", variant: "subtle", onClick: () => handleRemoveSchemaField(index) }, /* @__PURE__ */ React301.createElement(IconTrash9, { size: 16 }))), /* @__PURE__ */ React301.createElement(
|
|
30017
30041
|
BaseTextInput,
|
|
30018
30042
|
{
|
|
30019
30043
|
label: "Field Path",
|
|
@@ -30066,7 +30090,7 @@ var HttpRequestConfig = ({ inputs, onInputsChange, editor, blockId }) => {
|
|
|
30066
30090
|
|
|
30067
30091
|
// src/mantine/blocks/action/actionTypes/httpRequest/HttpRequestFlowDetail.tsx
|
|
30068
30092
|
import React302, { useMemo as useMemo108, useState as useState154 } from "react";
|
|
30069
|
-
import { Group as Group104, Stack as Stack196, Text as Text184, ActionIcon as
|
|
30093
|
+
import { Group as Group104, Stack as Stack196, Text as Text184, ActionIcon as ActionIcon43, Badge as Badge47, Collapse as Collapse8, Code as Code11, Loader as Loader48 } from "@mantine/core";
|
|
30070
30094
|
import { IconSend as IconSend7, IconChevronDown as IconChevronDown8, IconChevronUp as IconChevronUp4, IconAlertTriangle as IconAlertTriangle11 } from "@tabler/icons-react";
|
|
30071
30095
|
var HttpRequestFlowDetail = ({ inputs, runtime, isDisabled, executeAction }) => {
|
|
30072
30096
|
const [isLoading, setIsLoading] = useState154(false);
|
|
@@ -30136,7 +30160,7 @@ var HttpRequestFlowDetail = ({ inputs, runtime, isDisabled, executeAction }) =>
|
|
|
30136
30160
|
}
|
|
30137
30161
|
};
|
|
30138
30162
|
const hasDetails = headers.length > 0 || body.length > 0 || !!response;
|
|
30139
|
-
return /* @__PURE__ */ React302.createElement(Stack196, { gap: "md" }, /* @__PURE__ */ React302.createElement(Group104, { gap: "xs", wrap: "nowrap" }, /* @__PURE__ */ React302.createElement(Badge47, { size: "sm", variant: "filled", color: getMethodColor(method) }, method), /* @__PURE__ */ React302.createElement(Text184, { size: "xs", c: "dimmed", contentEditable: false, style: { wordBreak: "break-all", overflow: "hidden", textOverflow: "ellipsis" } }, endpoint || "No endpoint configured"), status !== "idle" && /* @__PURE__ */ React302.createElement(Badge47, { size: "xs", variant: "dot", color: getStatusColor5(status) }, status)), /* @__PURE__ */ React302.createElement(Group104, { gap: "xs" }, /* @__PURE__ */ React302.createElement(BasePrimaryButton, { leftSection: isLoading ? /* @__PURE__ */ React302.createElement(Loader48, { size: 14 }) : /* @__PURE__ */ React302.createElement(IconSend7, { size: 14 }), onClick: handleExecuteRequest, disabled: isDisabled || isLoading || !endpoint }, isLoading ? "Sending..." : "Execute"), /* @__PURE__ */ React302.createElement(
|
|
30163
|
+
return /* @__PURE__ */ React302.createElement(Stack196, { gap: "md" }, /* @__PURE__ */ React302.createElement(Group104, { gap: "xs", wrap: "nowrap" }, /* @__PURE__ */ React302.createElement(Badge47, { size: "sm", variant: "filled", color: getMethodColor(method) }, method), /* @__PURE__ */ React302.createElement(Text184, { size: "xs", c: "dimmed", contentEditable: false, style: { wordBreak: "break-all", overflow: "hidden", textOverflow: "ellipsis" } }, endpoint || "No endpoint configured"), status !== "idle" && /* @__PURE__ */ React302.createElement(Badge47, { size: "xs", variant: "dot", color: getStatusColor5(status) }, status)), /* @__PURE__ */ React302.createElement(Group104, { gap: "xs" }, /* @__PURE__ */ React302.createElement(BasePrimaryButton, { leftSection: isLoading ? /* @__PURE__ */ React302.createElement(Loader48, { size: 14 }) : /* @__PURE__ */ React302.createElement(IconSend7, { size: 14 }), onClick: handleExecuteRequest, disabled: isDisabled || isLoading || !endpoint }, isLoading ? "Sending..." : "Execute"), /* @__PURE__ */ React302.createElement(ActionIcon43, { variant: "subtle", onClick: () => setShowDetails(!showDetails), disabled: !hasDetails }, showDetails ? /* @__PURE__ */ React302.createElement(IconChevronUp4, { size: 16 }) : /* @__PURE__ */ React302.createElement(IconChevronDown8, { size: 16 }))), /* @__PURE__ */ React302.createElement(Collapse8, { in: showDetails }, /* @__PURE__ */ React302.createElement(Stack196, { gap: "md" }, validationWarnings.length > 0 && /* @__PURE__ */ React302.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React302.createElement(IconAlertTriangle11, { size: 16 }), title: "Schema Validation Warnings", color: "yellow", styles: actionAlertStyles }, /* @__PURE__ */ React302.createElement(Stack196, { gap: "xs" }, /* @__PURE__ */ React302.createElement(Text184, { size: "xs" }, "The API response does not match the defined schema:"), validationWarnings.map((warning, index) => /* @__PURE__ */ React302.createElement(Text184, { key: index, size: "xs", c: "dimmed" }, "\u2022 ", warning)))), headers.length > 0 && /* @__PURE__ */ React302.createElement(Stack196, { gap: "xs" }, /* @__PURE__ */ React302.createElement(Text184, { size: "xs", fw: 600, c: "dimmed" }, "Headers:"), /* @__PURE__ */ React302.createElement(Code11, { block: true, style: { fontSize: "11px" } }, JSON.stringify(
|
|
30140
30164
|
headers.reduce(
|
|
30141
30165
|
(acc, h) => {
|
|
30142
30166
|
if (h.key && h.value) acc[h.key] = h.value;
|
|
@@ -30512,7 +30536,7 @@ var StableSurvey = React305.memo(Survey9, (prev, next) => prev.model === next.mo
|
|
|
30512
30536
|
|
|
30513
30537
|
// src/mantine/blocks/action/actionTypes/_shared/groupExecution/ActAsGroupSection.tsx
|
|
30514
30538
|
import React306, { useEffect as useEffect105, useMemo as useMemo111, useRef as useRef35, useState as useState157 } from "react";
|
|
30515
|
-
import { Alert as Alert43, Group as Group106, Loader as Loader51, SegmentedControl as SegmentedControl13, Stack as Stack199, Text as Text187, Tooltip as
|
|
30539
|
+
import { Alert as Alert43, Group as Group106, Loader as Loader51, SegmentedControl as SegmentedControl13, Stack as Stack199, Text as Text187, Tooltip as Tooltip30 } from "@mantine/core";
|
|
30516
30540
|
import { IconInfoCircle as IconInfoCircle8, IconUsersGroup as IconUsersGroup4 } from "@tabler/icons-react";
|
|
30517
30541
|
function emptyActAsGroupState() {
|
|
30518
30542
|
return { actAsGroup: false, groupCoreAddress: "", proposalTitle: "", proposalDescription: "" };
|
|
@@ -30599,7 +30623,7 @@ var ActAsGroupSection = ({ value, onChange, isDisabled, actionLabel, authzFilter
|
|
|
30599
30623
|
)), value.actAsGroup && /* @__PURE__ */ React306.createElement(React306.Fragment, null, /* @__PURE__ */ React306.createElement(
|
|
30600
30624
|
BaseSelect,
|
|
30601
30625
|
{
|
|
30602
|
-
label: /* @__PURE__ */ React306.createElement(Group106, { gap: 4, display: "inline-flex" }, "POD", value.groupCoreAddress && /* @__PURE__ */ React306.createElement(
|
|
30626
|
+
label: /* @__PURE__ */ React306.createElement(Group106, { gap: 4, display: "inline-flex" }, "POD", value.groupCoreAddress && /* @__PURE__ */ React306.createElement(Tooltip30, { label: value.groupCoreAddress, withArrow: true, multiline: true, maw: 440, events: { hover: true, focus: true, touch: true } }, /* @__PURE__ */ React306.createElement(IconInfoCircle8, { size: 13, style: { opacity: 0.6, cursor: "help", verticalAlign: "middle" } }))),
|
|
30603
30627
|
description: "One of your PODs \u2014 the action is performed on its behalf.",
|
|
30604
30628
|
placeholder: loading ? "Loading your PODs\u2026" : "Search or select a POD",
|
|
30605
30629
|
value: value.groupCoreAddress || null,
|
|
@@ -31229,7 +31253,7 @@ var EvaluateBidConfig = ({ inputs, onInputsChange, editor, blockId }) => {
|
|
|
31229
31253
|
|
|
31230
31254
|
// src/mantine/blocks/action/actionTypes/evaluateBid/EvaluateBidFlowDetail.tsx
|
|
31231
31255
|
import React314, { useCallback as useCallback105, useEffect as useEffect109, useMemo as useMemo114, useRef as useRef38, useState as useState164 } from "react";
|
|
31232
|
-
import { ActionIcon as
|
|
31256
|
+
import { ActionIcon as ActionIcon45, Badge as Badge49, Box as Box57, Button as Button62, Divider as Divider21, Group as Group111, Loader as Loader55, Stack as Stack205, Text as Text193, UnstyledButton as UnstyledButton4 } from "@mantine/core";
|
|
31233
31257
|
import { IconArrowLeft as IconArrowLeft8, IconCheck as IconCheck21, IconFilter } from "@tabler/icons-react";
|
|
31234
31258
|
|
|
31235
31259
|
// src/mantine/components/CollapsibleSection.tsx
|
|
@@ -31254,7 +31278,7 @@ function CollapsibleSection({ title, defaultOpen = false, badge, children }) {
|
|
|
31254
31278
|
|
|
31255
31279
|
// src/mantine/blocks/action/actionTypes/_shared/dataExport/DownloadCsvButton.tsx
|
|
31256
31280
|
import React311, { useCallback as useCallback104, useState as useState162 } from "react";
|
|
31257
|
-
import { ActionIcon as
|
|
31281
|
+
import { ActionIcon as ActionIcon44 } from "@mantine/core";
|
|
31258
31282
|
import { IconDownload as IconDownload4 } from "@tabler/icons-react";
|
|
31259
31283
|
var DownloadCsvButton = ({ onDownload, disabled, label = "Download CSV" }) => {
|
|
31260
31284
|
const [busy, setBusy] = useState162(false);
|
|
@@ -31266,7 +31290,7 @@ var DownloadCsvButton = ({ onDownload, disabled, label = "Download CSV" }) => {
|
|
|
31266
31290
|
setBusy(false);
|
|
31267
31291
|
}
|
|
31268
31292
|
}, [onDownload]);
|
|
31269
|
-
return /* @__PURE__ */ React311.createElement(
|
|
31293
|
+
return /* @__PURE__ */ React311.createElement(ActionIcon44, { variant: "subtle", color: "gray", size: "sm", "aria-label": label, title: label, loading: busy, disabled, onClick: handleClick }, /* @__PURE__ */ React311.createElement(IconDownload4, { size: 16 }));
|
|
31270
31294
|
};
|
|
31271
31295
|
|
|
31272
31296
|
// src/mantine/blocks/action/actionTypes/_shared/dataExport/buildBidRows.ts
|
|
@@ -31774,7 +31798,7 @@ var EvaluateBidFlowDetail = ({
|
|
|
31774
31798
|
bidData = typeof selectedBid.data === "string" ? JSON.parse(selectedBid.data) : selectedBid.data;
|
|
31775
31799
|
} catch {
|
|
31776
31800
|
}
|
|
31777
|
-
return /* @__PURE__ */ React314.createElement(Stack205, { gap: "md" }, /* @__PURE__ */ React314.createElement(Group111, { gap: "xs", align: "center" }, /* @__PURE__ */ React314.createElement(
|
|
31801
|
+
return /* @__PURE__ */ React314.createElement(Stack205, { gap: "md" }, /* @__PURE__ */ React314.createElement(Group111, { gap: "xs", align: "center" }, /* @__PURE__ */ React314.createElement(ActionIcon45, { variant: "subtle", color: "gray", size: "sm", onClick: () => setSelectedBidId("") }, /* @__PURE__ */ React314.createElement(IconArrowLeft8, { size: 16 })), /* @__PURE__ */ React314.createElement(Text193, { fw: 500, size: "sm", truncate: true, style: { flex: 1, minWidth: 0 } }, t("actionTypes.evaluateBid.flow.bidNumber", { id: selectedBid.id, defaultValue: `Bid #${selectedBid.id}` })), /* @__PURE__ */ React314.createElement(DownloadCsvButton, { onDownload: () => downloadBidsCsv([selectedBid], `bid-${selectedBid.id}.csv`), label: "Download bid CSV" })), /* @__PURE__ */ React314.createElement(Group111, { gap: 16, align: "center", style: { width: "100%" } }, /* @__PURE__ */ React314.createElement(
|
|
31778
31802
|
Box57,
|
|
31779
31803
|
{
|
|
31780
31804
|
style: {
|
|
@@ -31868,7 +31892,7 @@ var EvaluateBidFlowDetail = ({
|
|
|
31868
31892
|
}
|
|
31869
31893
|
},
|
|
31870
31894
|
/* @__PURE__ */ React314.createElement(Text193, { size: "sm", fw: 500, c: activeFilter === tab.value ? "var(--mantine-color-text)" : "dimmed" }, tab.label)
|
|
31871
|
-
))), /* @__PURE__ */ React314.createElement(Group111, { gap: 4 }, /* @__PURE__ */ React314.createElement(DownloadCsvButton, { onDownload: handleDownloadBidsCsv, disabled: loadingBids || bids.length === 0, label: "Download bids CSV" }), /* @__PURE__ */ React314.createElement(
|
|
31895
|
+
))), /* @__PURE__ */ React314.createElement(Group111, { gap: 4 }, /* @__PURE__ */ React314.createElement(DownloadCsvButton, { onDownload: handleDownloadBidsCsv, disabled: loadingBids || bids.length === 0, label: "Download bids CSV" }), /* @__PURE__ */ React314.createElement(ActionIcon45, { variant: "subtle", color: "gray", size: "sm" }, /* @__PURE__ */ React314.createElement(IconFilter, { size: 16 })))), loadingBids && /* @__PURE__ */ React314.createElement(Group111, { gap: "xs", justify: "center", py: "md" }, /* @__PURE__ */ React314.createElement(Loader55, { size: "xs" }), /* @__PURE__ */ React314.createElement(Text193, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateBid.flow.loadingBids", { defaultValue: "Loading bids..." }))), !loadingBids && filteredBids.length === 0 && /* @__PURE__ */ React314.createElement(Text193, { size: "sm", c: "dimmed", ta: "center", py: "md" }, bids.length === 0 ? t("actionTypes.evaluateBid.flow.empty.allCollections", { defaultValue: "No bids available for this collection." }) : t("actionTypes.evaluateBid.flow.empty.filtered", { filter: activeFilter, defaultValue: `No ${activeFilter} bids found.` })), filteredBids.length > 0 && /* @__PURE__ */ React314.createElement(Stack205, { gap: 12 }, filteredBids.map((bid) => {
|
|
31872
31896
|
const status = getBidStatus(bid, t);
|
|
31873
31897
|
const profile = profilesByDid[bid.did];
|
|
31874
31898
|
const displayName = profile?.displayname || bid.did || bid.address;
|
|
@@ -32089,7 +32113,7 @@ var ClaimConfig = ({ inputs, onInputsChange, editor, blockId }) => {
|
|
|
32089
32113
|
|
|
32090
32114
|
// src/mantine/blocks/action/actionTypes/claim/ClaimFlowDetail.tsx
|
|
32091
32115
|
import React316, { useCallback as useCallback107, useEffect as useEffect111, useMemo as useMemo116, useRef as useRef40, useState as useState166 } from "react";
|
|
32092
|
-
import { ActionIcon as
|
|
32116
|
+
import { ActionIcon as ActionIcon46, Box as Box58, Collapse as Collapse10, Group as Group112, Loader as Loader57, Stack as Stack207, Text as Text195, UnstyledButton as UnstyledButton5 } from "@mantine/core";
|
|
32093
32117
|
import { IconArrowLeft as IconArrowLeft9, IconCheck as IconCheck22, IconChevronRight as IconChevronRight12, IconPlayerPlay as IconPlayerPlay6 } from "@tabler/icons-react";
|
|
32094
32118
|
import { SurveyModel as SurveyModel10 } from "@ixo/surveys";
|
|
32095
32119
|
|
|
@@ -32685,7 +32709,7 @@ var ClaimFlowDetail = ({
|
|
|
32685
32709
|
});
|
|
32686
32710
|
}, [surveyModel, handlers, editor, deedDid, collectionId, block.id, block?.props?.title]);
|
|
32687
32711
|
if (selectedClaim) {
|
|
32688
|
-
return /* @__PURE__ */ React316.createElement(Stack207, { gap: "md" }, /* @__PURE__ */ React316.createElement(Group112, { gap: "xs", align: "center" }, /* @__PURE__ */ React316.createElement(
|
|
32712
|
+
return /* @__PURE__ */ React316.createElement(Stack207, { gap: "md" }, /* @__PURE__ */ React316.createElement(Group112, { gap: "xs", align: "center" }, /* @__PURE__ */ React316.createElement(ActionIcon46, { variant: "subtle", color: "gray", size: "sm", onClick: () => setSelectedClaimId("") }, /* @__PURE__ */ React316.createElement(IconArrowLeft9, { size: 16 })), /* @__PURE__ */ React316.createElement(Text195, { fw: 500, size: "sm", title: selectedClaim.claimId }, t("actionTypes.claim.flow.claimNumber", { id: truncateId(selectedClaim.claimId), defaultValue: `Claim #${truncateId(selectedClaim.claimId)}` }))), selectedClaimStatus && /* @__PURE__ */ React316.createElement(Group112, { gap: "xs", align: "center" }, /* @__PURE__ */ React316.createElement(Text195, { size: "sm", c: "dimmed" }, t("actionTypes.claim.flow.statusLabel", { defaultValue: "Status:" })), /* @__PURE__ */ React316.createElement(Text195, { fw: 500, size: "sm", c: selectedClaimStatus.color }, selectedClaimStatus.label), /* @__PURE__ */ React316.createElement(Text195, { size: "xs", c: "dimmed" }, "\xB7 ", getTimeAgo2(selectedClaim.submissionDate || ""))), isSelectedDisputed && /* @__PURE__ */ React316.createElement(DismissibleAlert, { color: "orange", title: t("actionTypes.claim.flow.disputed.title", { defaultValue: "Claim disputed" }), styles: actionAlertStyles }, loadingDispute ? /* @__PURE__ */ React316.createElement(Group112, { gap: "xs" }, /* @__PURE__ */ React316.createElement(Loader57, { size: "xs" }), /* @__PURE__ */ React316.createElement(Text195, { size: "xs" }, t("actionTypes.claim.flow.disputed.loadingDetails", { defaultValue: "Loading dispute details\u2026" }))) : disputeDetails ? /* @__PURE__ */ React316.createElement(Stack207, { gap: 6 }, disputeDetails.reason ? /* @__PURE__ */ React316.createElement(Text195, { size: "sm" }, disputeDetails.reason) : /* @__PURE__ */ React316.createElement(Text195, { size: "sm", c: "dimmed" }, t("actionTypes.claim.flow.disputed.noMessage", { defaultValue: "The evaluator disputed this claim but did not provide a message." })), (disputeDetails.evaluatorDid || disputeDetails.disputedAt) && /* @__PURE__ */ React316.createElement(Text195, { size: "xs", c: "dimmed" }, disputeDetails.evaluatorDid ? t("actionTypes.claim.flow.disputed.byEvaluator", {
|
|
32689
32713
|
address: truncateAddress3(disputeDetails.evaluatorDid),
|
|
32690
32714
|
defaultValue: `By ${truncateAddress3(disputeDetails.evaluatorDid)}`
|
|
32691
32715
|
}) : "", disputeDetails.evaluatorDid && disputeDetails.disputedAt ? " \xB7 " : "", disputeDetails.disputedAt ? new Date(disputeDetails.disputedAt).toLocaleString() : ""), /* @__PURE__ */ React316.createElement(BasePrimaryButton, { onClick: amendAndResubmit, disabled: isDisabled || submitting || !isServiceAgentAuthorized || !selectedClaimData }, t("actionTypes.claim.flow.disputed.amendAndResubmit", { defaultValue: "Amend & Resubmit" }))) : typeof handlers.getClaimDisputeDetails !== "function" ? /* @__PURE__ */ React316.createElement(Text195, { size: "xs", c: "dimmed" }, t("actionTypes.claim.flow.disputed.unavailable", { defaultValue: "Dispute details unavailable in this environment." })) : /* @__PURE__ */ React316.createElement(Text195, { size: "xs", c: "dimmed" }, t("actionTypes.claim.flow.disputed.noRecord", { defaultValue: "No dispute record found on-chain for this claim." }))), loadingClaimDetail ? /* @__PURE__ */ React316.createElement(Group112, { gap: "xs" }, /* @__PURE__ */ React316.createElement(Loader57, { size: "xs" }), /* @__PURE__ */ React316.createElement(Text195, { size: "xs", c: "dimmed" }, t("actionTypes.claim.flow.loadingSubmission", { defaultValue: "Loading submission\u2026" }))) : detailSurveyModel ? /* @__PURE__ */ React316.createElement(StableSurvey, { model: detailSurveyModel }) : /* @__PURE__ */ React316.createElement(Text195, { size: "xs", c: "dimmed" }, t("actionTypes.claim.flow.noSubmissionData", { defaultValue: "No submission data available." })), error && /* @__PURE__ */ React316.createElement(DismissibleAlert, { color: "red", styles: actionAlertStyles }, error));
|
|
@@ -33725,7 +33749,7 @@ var CollectionUsersConfig = ({ inputs, onInputsChange, editor, blockId }) => {
|
|
|
33725
33749
|
|
|
33726
33750
|
// src/mantine/blocks/action/actionTypes/collectionUsers/CollectionUsersFlowDetail.tsx
|
|
33727
33751
|
import React320, { useCallback as useCallback111, useEffect as useEffect115, useMemo as useMemo120, useRef as useRef42, useState as useState170 } from "react";
|
|
33728
|
-
import { ActionIcon as
|
|
33752
|
+
import { ActionIcon as ActionIcon47, Alert as MantineAlert, Badge as Badge52, Box as Box60, Button as Button67, Divider as Divider22, Group as Group116, Loader as Loader61, Radio as Radio5, SegmentedControl as SegmentedControl15, Stack as Stack211, Text as Text199 } from "@mantine/core";
|
|
33729
33753
|
import { useDebouncedValue } from "@mantine/hooks";
|
|
33730
33754
|
import { IconAlertCircle as IconAlertCircle28, IconArrowLeft as IconArrowLeft10, IconCheck as IconCheck24, IconRefresh as IconRefresh9, IconTrash as IconTrash10 } from "@tabler/icons-react";
|
|
33731
33755
|
var LOG2 = "[collection.users]";
|
|
@@ -34220,7 +34244,7 @@ var CollectionUsersFlowDetail = ({
|
|
|
34220
34244
|
{ label: "Bids", value: "bids" }
|
|
34221
34245
|
]
|
|
34222
34246
|
}
|
|
34223
|
-
), !configMissing && section === "list" && /* @__PURE__ */ React320.createElement(Stack211, { gap: "sm" }, /* @__PURE__ */ React320.createElement(Group116, { justify: "space-between", align: "center" }, /* @__PURE__ */ React320.createElement(Text199, { size: "sm", fw: 600 }, "Grantees"), /* @__PURE__ */ React320.createElement(Group116, { gap: 4 }, /* @__PURE__ */ React320.createElement(DownloadCsvButton, { onDownload: handleDownloadGranteesCsv, disabled: isRunning || listGrantees.length === 0, label: "Download members CSV" }), /* @__PURE__ */ React320.createElement(
|
|
34247
|
+
), !configMissing && section === "list" && /* @__PURE__ */ React320.createElement(Stack211, { gap: "sm" }, /* @__PURE__ */ React320.createElement(Group116, { justify: "space-between", align: "center" }, /* @__PURE__ */ React320.createElement(Text199, { size: "sm", fw: 600 }, "Grantees"), /* @__PURE__ */ React320.createElement(Group116, { gap: 4 }, /* @__PURE__ */ React320.createElement(DownloadCsvButton, { onDownload: handleDownloadGranteesCsv, disabled: isRunning || listGrantees.length === 0, label: "Download members CSV" }), /* @__PURE__ */ React320.createElement(ActionIcon47, { variant: "subtle", color: "gray", size: "sm", onClick: handleManualRefreshList, disabled: isRunning || !adminAddress }, /* @__PURE__ */ React320.createElement(IconRefresh9, { size: 16 })))), isRunning && lastOp !== "add" && lastOp !== "revoke" && /* @__PURE__ */ React320.createElement(Group116, { gap: "xs", justify: "center", py: "sm" }, /* @__PURE__ */ React320.createElement(Loader61, { size: "xs" }), /* @__PURE__ */ React320.createElement(Text199, { size: "xs", c: "dimmed" }, "Loading grantees\u2026")), !isRunning && listGrantees.length === 0 && /* @__PURE__ */ React320.createElement(Text199, { size: "sm", c: "dimmed", ta: "center", py: "sm" }, "No grantees hold a constraint for this collection yet."), listGrantees.map((grantee) => {
|
|
34224
34248
|
const isTarget = revokeTarget?.address === grantee.address && revokeTarget?.role === grantee.role;
|
|
34225
34249
|
const granteeDid = getGranteeDid(grantee);
|
|
34226
34250
|
const profile = granteeProfilesByDid[granteeDid];
|
|
@@ -34511,7 +34535,7 @@ var BidInboxSection = ({
|
|
|
34511
34535
|
}
|
|
34512
34536
|
] : []
|
|
34513
34537
|
];
|
|
34514
|
-
return /* @__PURE__ */ React320.createElement(Stack211, { gap: "md" }, /* @__PURE__ */ React320.createElement(Group116, { gap: "xs", align: "center" }, /* @__PURE__ */ React320.createElement(
|
|
34538
|
+
return /* @__PURE__ */ React320.createElement(Stack211, { gap: "md" }, /* @__PURE__ */ React320.createElement(Group116, { gap: "xs", align: "center" }, /* @__PURE__ */ React320.createElement(ActionIcon47, { variant: "subtle", color: "gray", size: "sm", onClick: () => setSelectedBidId("") }, /* @__PURE__ */ React320.createElement(IconArrowLeft10, { size: 16 })), /* @__PURE__ */ React320.createElement(Text199, { fw: 500, size: "sm", truncate: true, style: { flex: 1, minWidth: 0 } }, "Bid #", selectedBid.id), /* @__PURE__ */ React320.createElement(DownloadCsvButton, { onDownload: () => downloadBidsCsv([selectedBid], `bid-${selectedBid.id}.csv`), label: "Download bid CSV" })), /* @__PURE__ */ React320.createElement(Stack211, { gap: 4 }, /* @__PURE__ */ React320.createElement(Text199, { size: "sm", fw: 600, truncate: true }, displayName), /* @__PURE__ */ React320.createElement(Group116, { gap: "xs" }, /* @__PURE__ */ React320.createElement(Badge52, { size: "xs", variant: "light", color: getRoleColor3(selectedBid.role) }, getBidRoleLabel(selectedBid.role)), /* @__PURE__ */ React320.createElement(Text199, { size: "xs", c: "dimmed" }, truncateAddress4(selectedBid.address)))), /* @__PURE__ */ React320.createElement(CollapsibleSection, { title: "Inputs" }, bidData && typeof bidData === "object" && Object.keys(bidData).length > 0 ? /* @__PURE__ */ React320.createElement(ReadableKeyValues, { data: bidData }) : /* @__PURE__ */ React320.createElement(Text199, { size: "xs", c: "dimmed" }, "No input data available.")), evaluatedStatus ? /* @__PURE__ */ React320.createElement(
|
|
34515
34539
|
MantineAlert,
|
|
34516
34540
|
{
|
|
34517
34541
|
color: evaluatedStatus === "approved" ? "green" : "red",
|
|
@@ -34573,7 +34597,7 @@ var BidInboxSection = ({
|
|
|
34573
34597
|
styles: actionAlertStyles
|
|
34574
34598
|
},
|
|
34575
34599
|
lastDecision.kind === "approved" ? `${lastDecision.roleLabel} access granted to ${lastDecision.name}. They can now ${lastDecision.roleLabel === "Evaluator" ? "evaluate" : "submit"} claims in this collection.` : `${lastDecision.name}'s application was declined.`
|
|
34576
|
-
), /* @__PURE__ */ React320.createElement(Group116, { justify: "space-between", align: "center" }, /* @__PURE__ */ React320.createElement(Text199, { size: "sm", fw: 600 }, "Incoming bids"), /* @__PURE__ */ React320.createElement(Group116, { gap: 4 }, /* @__PURE__ */ React320.createElement(DownloadCsvButton, { onDownload: handleDownloadBidsCsv, disabled: loading || bids.length === 0, label: "Download bids CSV" }), /* @__PURE__ */ React320.createElement(
|
|
34600
|
+
), /* @__PURE__ */ React320.createElement(Group116, { justify: "space-between", align: "center" }, /* @__PURE__ */ React320.createElement(Text199, { size: "sm", fw: 600 }, "Incoming bids"), /* @__PURE__ */ React320.createElement(Group116, { gap: 4 }, /* @__PURE__ */ React320.createElement(DownloadCsvButton, { onDownload: handleDownloadBidsCsv, disabled: loading || bids.length === 0, label: "Download bids CSV" }), /* @__PURE__ */ React320.createElement(ActionIcon47, { variant: "subtle", color: "gray", size: "sm", onClick: refreshBids, disabled: loading }, /* @__PURE__ */ React320.createElement(IconRefresh9, { size: 16 })))), /* @__PURE__ */ React320.createElement(Divider22, { color: "color-mix(in srgb, var(--mantine-color-text) 6%, transparent)" }), loading && /* @__PURE__ */ React320.createElement(Group116, { gap: "xs", justify: "center", py: "sm" }, /* @__PURE__ */ React320.createElement(Loader61, { size: "xs" }), /* @__PURE__ */ React320.createElement(Text199, { size: "xs", c: "dimmed" }, "Loading bids\u2026")), !loading && bids.length === 0 && /* @__PURE__ */ React320.createElement(Text199, { size: "sm", c: "dimmed", ta: "center", py: "sm" }, "No bids available for this collection."), bids.map((bid) => {
|
|
34577
34601
|
const profile = profilesByDid[bid.did];
|
|
34578
34602
|
const displayName = profile?.displayname || bid.did || bid.address;
|
|
34579
34603
|
const status = bidEvaluatedStatus(bid) || "pending";
|
|
@@ -35182,7 +35206,7 @@ var EvalEngineConfig = ({ inputs, onInputsChange, editor, blockId }) => {
|
|
|
35182
35206
|
|
|
35183
35207
|
// src/mantine/blocks/action/actionTypes/evalEngine/EvalEngineFlowDetail.tsx
|
|
35184
35208
|
import React335, { useCallback as useCallback114, useEffect as useEffect123, useMemo as useMemo128, useRef as useRef49, useState as useState181 } from "react";
|
|
35185
|
-
import { ActionIcon as
|
|
35209
|
+
import { ActionIcon as ActionIcon53, Alert as Alert55, Badge as Badge54, Box as Box64, Button as Button76, Group as Group130, Loader as Loader65, Paper as Paper35, Stack as Stack224, Text as Text212 } from "@mantine/core";
|
|
35186
35210
|
import { IconAlertCircle as IconAlertCircle29, IconAlertTriangle as IconAlertTriangle17, IconArrowRight as IconArrowRight3, IconCheck as IconCheck26, IconInfoCircle as IconInfoCircle11, IconTrash as IconTrash14 } from "@tabler/icons-react";
|
|
35187
35211
|
|
|
35188
35212
|
// src/mantine/blocks/action/actionTypes/evalRubric/AdvancedPanel.tsx
|
|
@@ -36396,7 +36420,7 @@ var ApprovalPolicy = ({ body, index, checkCount, onChange, disabled }) => {
|
|
|
36396
36420
|
|
|
36397
36421
|
// src/mantine/blocks/action/actionTypes/evalRubric/LinkedRuleEditor.tsx
|
|
36398
36422
|
import React326, { useMemo as useMemo123, useState as useState174 } from "react";
|
|
36399
|
-
import { ActionIcon as
|
|
36423
|
+
import { ActionIcon as ActionIcon48, Alert as Alert50, Button as Button71, Group as Group121, Modal as Modal4, Paper as Paper27, ScrollArea as ScrollArea9, Stack as Stack216, Text as Text203 } from "@mantine/core";
|
|
36400
36424
|
import { IconAlertTriangle as IconAlertTriangle13, IconPlus as IconPlus9, IconRobot as IconRobot4, IconTrash as IconTrash11 } from "@tabler/icons-react";
|
|
36401
36425
|
|
|
36402
36426
|
// src/mantine/blocks/action/actionTypes/evalRubric/ValueInput.tsx
|
|
@@ -37292,7 +37316,7 @@ var LinkedRuleEditor = ({ opened, onClose, body, catalog, index, initialChecked,
|
|
|
37292
37316
|
value: row.instructions ?? "",
|
|
37293
37317
|
onChange: (event) => setCase(at, { instructions: event.currentTarget.value })
|
|
37294
37318
|
}
|
|
37295
|
-
)) : /* @__PURE__ */ React326.createElement(React326.Fragment, null, /* @__PURE__ */ React326.createElement(Text203, { mt: 6, style: leadWordStyle }, "it ", opLabel), /* @__PURE__ */ React326.createElement(ValueInput, { op: draft.op, field: checkedField, index, value: row.value, tolerance: row.tolerance, onChange: (patch) => setCase(at, patch) }), opSuffix && /* @__PURE__ */ React326.createElement(Text203, { mt: 6, size: "sm", c: "dimmed" }, opSuffix)), /* @__PURE__ */ React326.createElement(
|
|
37319
|
+
)) : /* @__PURE__ */ React326.createElement(React326.Fragment, null, /* @__PURE__ */ React326.createElement(Text203, { mt: 6, style: leadWordStyle }, "it ", opLabel), /* @__PURE__ */ React326.createElement(ValueInput, { op: draft.op, field: checkedField, index, value: row.value, tolerance: row.tolerance, onChange: (patch) => setCase(at, patch) }), opSuffix && /* @__PURE__ */ React326.createElement(Text203, { mt: 6, size: "sm", c: "dimmed" }, opSuffix)), /* @__PURE__ */ React326.createElement(ActionIcon48, { mt: 4, variant: "subtle", color: "red", onClick: () => removeCase(at), disabled: draft.cases.length <= 1, "aria-label": "Remove this case" }, /* @__PURE__ */ React326.createElement(IconTrash11, { size: 16 })))), /* @__PURE__ */ React326.createElement(Group121, { gap: 8, align: "flex-start", wrap: "wrap" }, draft.aiMode ? /* @__PURE__ */ React326.createElement(React326.Fragment, null, /* @__PURE__ */ React326.createElement(Text203, { mt: 6, style: leadWordStyle }, LINKED_AI_ELSE_LEAD), /* @__PURE__ */ React326.createElement(
|
|
37296
37320
|
BaseTextInput,
|
|
37297
37321
|
{
|
|
37298
37322
|
style: { flex: 1, minWidth: 260 },
|
|
@@ -37338,7 +37362,7 @@ var LinkedRuleEditor = ({ opened, onClose, body, catalog, index, initialChecked,
|
|
|
37338
37362
|
|
|
37339
37363
|
// src/mantine/blocks/action/actionTypes/evalRubric/RuleCard.tsx
|
|
37340
37364
|
import React327 from "react";
|
|
37341
|
-
import { ActionIcon as
|
|
37365
|
+
import { ActionIcon as ActionIcon49, Alert as Alert51, Box as Box62, Button as Button72, Group as Group122, Paper as Paper28, Stack as Stack217, Text as Text204 } from "@mantine/core";
|
|
37342
37366
|
import { IconAlertTriangle as IconAlertTriangle14, IconLink as IconLink5, IconPencil as IconPencil3, IconPlus as IconPlus10, IconTrash as IconTrash12 } from "@tabler/icons-react";
|
|
37343
37367
|
var RuleCard = ({
|
|
37344
37368
|
field,
|
|
@@ -37364,9 +37388,9 @@ var RuleCard = ({
|
|
|
37364
37388
|
// A compound the builder cannot represent — quiet, honest,
|
|
37365
37389
|
// and deletable; never rewritten (§B.5 doctrine).
|
|
37366
37390
|
/* @__PURE__ */ React327.createElement(Text204, { size: "xs", c: "dimmed" }, GROUP_OUTSIDE_BUILDER_TEXT)
|
|
37367
|
-
) : /* @__PURE__ */ React327.createElement(RuleSentence, { text: describeRule(rule, ctx) })), (!grownShape || grownShape.editable) && /* @__PURE__ */ React327.createElement(
|
|
37368
|
-
}), (linked ?? []).map((entry) => /* @__PURE__ */ React327.createElement(Group122, { key: entry.elseCase.code, gap: "sm", align: "flex-start", wrap: "nowrap", pl: 20 }, /* @__PURE__ */ React327.createElement(Box62, { mt: 2, style: consequencePillStyle(entry.onFail === "review" ? "var(--mantine-color-grape-6)" : "var(--mantine-color-red-6)") }, consequenceIcon(entry.onFail === "review" ? "human" : "reject", 15)), /* @__PURE__ */ React327.createElement(Box62, { style: { flex: 1 } }, /* @__PURE__ */ React327.createElement(RuleSentence, { text: describeLinked(linkedSentenceOf(entry), ctx) })), /* @__PURE__ */ React327.createElement(
|
|
37369
|
-
|
|
37391
|
+
) : /* @__PURE__ */ React327.createElement(RuleSentence, { text: describeRule(rule, ctx) })), (!grownShape || grownShape.editable) && /* @__PURE__ */ React327.createElement(ActionIcon49, { variant: "subtle", onClick: () => onEdit(rule), disabled, "aria-label": `Change the rule on ${field.title}` }, /* @__PURE__ */ React327.createElement(IconPencil3, { size: 16 })), /* @__PURE__ */ React327.createElement(ActionIcon49, { variant: "subtle", color: "red", onClick: () => onDelete(rule), disabled, "aria-label": `Delete the rule on ${field.title}` }, /* @__PURE__ */ React327.createElement(IconTrash12, { size: 16 })));
|
|
37392
|
+
}), (linked ?? []).map((entry) => /* @__PURE__ */ React327.createElement(Group122, { key: entry.elseCase.code, gap: "sm", align: "flex-start", wrap: "nowrap", pl: 20 }, /* @__PURE__ */ React327.createElement(Box62, { mt: 2, style: consequencePillStyle(entry.onFail === "review" ? "var(--mantine-color-grape-6)" : "var(--mantine-color-red-6)") }, consequenceIcon(entry.onFail === "review" ? "human" : "reject", 15)), /* @__PURE__ */ React327.createElement(Box62, { style: { flex: 1 } }, /* @__PURE__ */ React327.createElement(RuleSentence, { text: describeLinked(linkedSentenceOf(entry), ctx) })), /* @__PURE__ */ React327.createElement(ActionIcon49, { variant: "subtle", onClick: () => onEditLinked?.(entry), disabled: disabled || !onEditLinked, "aria-label": `Change the linked rule on ${field.title}` }, /* @__PURE__ */ React327.createElement(IconPencil3, { size: 16 })), /* @__PURE__ */ React327.createElement(
|
|
37393
|
+
ActionIcon49,
|
|
37370
37394
|
{
|
|
37371
37395
|
variant: "subtle",
|
|
37372
37396
|
color: "red",
|
|
@@ -37383,12 +37407,12 @@ function unique(problems) {
|
|
|
37383
37407
|
|
|
37384
37408
|
// src/mantine/blocks/action/actionTypes/evalRubric/RuleEditor.tsx
|
|
37385
37409
|
import React332, { useMemo as useMemo125, useState as useState177 } from "react";
|
|
37386
|
-
import { ActionIcon as
|
|
37410
|
+
import { ActionIcon as ActionIcon52, Alert as Alert53, Box as Box63, Button as Button75, Divider as Divider24, Group as Group127, Modal as Modal5, Paper as Paper32, ScrollArea as ScrollArea10, Stack as Stack221, Text as Text209 } from "@mantine/core";
|
|
37387
37411
|
import { IconAlertTriangle as IconAlertTriangle16, IconPlus as IconPlus12, IconRobot as IconRobot6, IconTrash as IconTrash13, IconWand as IconWand2, IconWorld as IconWorld4, IconX as IconX20 } from "@tabler/icons-react";
|
|
37388
37412
|
|
|
37389
37413
|
// src/mantine/blocks/action/actionTypes/evalRubric/AiCheckInline.tsx
|
|
37390
37414
|
import React328 from "react";
|
|
37391
|
-
import { ActionIcon as
|
|
37415
|
+
import { ActionIcon as ActionIcon50, Button as Button73, Group as Group123, Paper as Paper29, Stack as Stack218, Text as Text205 } from "@mantine/core";
|
|
37392
37416
|
import { IconPlus as IconPlus11, IconRobot as IconRobot5, IconX as IconX18 } from "@tabler/icons-react";
|
|
37393
37417
|
var AiCheckInline = ({ ai, questionTitle, onChange, disabled, index }) => {
|
|
37394
37418
|
const setRule = (at, text) => onChange({ ...ai, instructions: ai.instructions.map((rule, i) => i === at ? text : rule) });
|
|
@@ -37407,7 +37431,7 @@ var AiCheckInline = ({ ai, questionTitle, onChange, disabled, index }) => {
|
|
|
37407
37431
|
onChange: (event) => setRule(at, event.currentTarget.value),
|
|
37408
37432
|
disabled
|
|
37409
37433
|
}
|
|
37410
|
-
), /* @__PURE__ */ React328.createElement(
|
|
37434
|
+
), /* @__PURE__ */ React328.createElement(ActionIcon50, { variant: "subtle", color: "red", onClick: () => removeRule2(at), disabled: disabled || ai.instructions.length <= 1, "aria-label": "Remove this rule" }, /* @__PURE__ */ React328.createElement(IconX18, { size: 16 })))
|
|
37411
37435
|
)), /* @__PURE__ */ React328.createElement(Button73, { size: "xs", variant: "subtle", styles: quietButton, leftSection: /* @__PURE__ */ React328.createElement(IconPlus11, { size: 14 }), onClick: addRule, disabled, style: { alignSelf: "flex-start" } }, "Add a rule")), index && /* @__PURE__ */ React328.createElement(
|
|
37412
37436
|
BaseMultiSelect,
|
|
37413
37437
|
{
|
|
@@ -37637,7 +37661,7 @@ function appErrorMessage(error) {
|
|
|
37637
37661
|
|
|
37638
37662
|
// src/mantine/blocks/action/actionTypes/evalRubric/ReviewTaskEditor.tsx
|
|
37639
37663
|
import React331, { useEffect as useEffect119, useState as useState176 } from "react";
|
|
37640
|
-
import { ActionIcon as
|
|
37664
|
+
import { ActionIcon as ActionIcon51, Group as Group126, Loader as Loader64, Paper as Paper31, SegmentedControl as SegmentedControl18, Stack as Stack220, TagsInput as TagsInput2, Text as Text208 } from "@mantine/core";
|
|
37641
37665
|
import { IconBan as IconBan3, IconCircleCheck as IconCircleCheck2, IconMessages, IconPercentage, IconUser as IconUser14, IconX as IconX19 } from "@tabler/icons-react";
|
|
37642
37666
|
var VERDICT_OPTIONS = [
|
|
37643
37667
|
{ value: "approve", label: "Approve the claim", Icon: IconCircleCheck2, color: "var(--mantine-color-green-6)" },
|
|
@@ -37774,7 +37798,7 @@ var EngineChannelAccess = ({ roomId }) => {
|
|
|
37774
37798
|
}
|
|
37775
37799
|
return /* @__PURE__ */ React331.createElement(Group126, { gap: 6, wrap: "nowrap" }, icon(IconCircleCheck2, 14, "var(--mantine-color-green-6)"), /* @__PURE__ */ React331.createElement(Text208, { size: "xs", c: "dimmed" }, "The eval engine can post review requests here."));
|
|
37776
37800
|
};
|
|
37777
|
-
var PickedValue = ({ title, value, onClear, clearLabel }) => /* @__PURE__ */ React331.createElement(Paper31, { p: "xs", style: panelStyle }, /* @__PURE__ */ React331.createElement(Group126, { gap: "xs", justify: "space-between", wrap: "nowrap" }, /* @__PURE__ */ React331.createElement(Stack220, { gap: 0 }, /* @__PURE__ */ React331.createElement(Text208, { size: "sm", fw: 500 }, title), /* @__PURE__ */ React331.createElement(Text208, { size: "xs", c: "dimmed", style: { wordBreak: "break-all" } }, value)), /* @__PURE__ */ React331.createElement(
|
|
37801
|
+
var PickedValue = ({ title, value, onClear, clearLabel }) => /* @__PURE__ */ React331.createElement(Paper31, { p: "xs", style: panelStyle }, /* @__PURE__ */ React331.createElement(Group126, { gap: "xs", justify: "space-between", wrap: "nowrap" }, /* @__PURE__ */ React331.createElement(Stack220, { gap: 0 }, /* @__PURE__ */ React331.createElement(Text208, { size: "sm", fw: 500 }, title), /* @__PURE__ */ React331.createElement(Text208, { size: "xs", c: "dimmed", style: { wordBreak: "break-all" } }, value)), /* @__PURE__ */ React331.createElement(ActionIcon51, { variant: "subtle", color: "red", onClick: onClear, "aria-label": clearLabel }, /* @__PURE__ */ React331.createElement(IconX19, { size: 16 }))));
|
|
37778
37802
|
var ChannelSearch = ({ onPick }) => {
|
|
37779
37803
|
const handlers = useBlocknoteHandlers();
|
|
37780
37804
|
const canList = typeof handlers.listDomainChannels === "function" || typeof handlers.sourceDomainSpaces === "function";
|
|
@@ -38136,7 +38160,7 @@ var RuleEditor = ({ opened, onClose, body, catalog, index, field, editing, onSav
|
|
|
38136
38160
|
onChange: (next) => setMemberAi(at, next)
|
|
38137
38161
|
}
|
|
38138
38162
|
))
|
|
38139
|
-
)), /* @__PURE__ */ React332.createElement(
|
|
38163
|
+
)), /* @__PURE__ */ React332.createElement(ActionIcon52, { variant: "subtle", color: "red", onClick: () => removeCheck(at), "aria-label": "Remove this check" }, /* @__PURE__ */ React332.createElement(IconTrash13, { size: 16 })))), /* @__PURE__ */ React332.createElement(Button75, { variant: "subtle", size: "compact-sm", styles: quietButton, style: { alignSelf: "flex-start" }, leftSection: /* @__PURE__ */ React332.createElement(IconPlus12, { size: 14 }), onClick: addCheck }, GROW_RULE_LABEL)))
|
|
38140
38164
|
) : draft.consequence === "reject" && !ext && !ai ? /* @__PURE__ */ React332.createElement(
|
|
38141
38165
|
ConditionRow2,
|
|
38142
38166
|
{
|
|
@@ -38216,7 +38240,7 @@ var RuleEditor = ({ opened, onClose, body, catalog, index, field, editing, onSav
|
|
|
38216
38240
|
onChange: (rule) => setDraft((current) => ({ ...current, appliesWhen: rule })),
|
|
38217
38241
|
lead: "Only check this if"
|
|
38218
38242
|
}
|
|
38219
|
-
)), /* @__PURE__ */ React332.createElement(
|
|
38243
|
+
)), /* @__PURE__ */ React332.createElement(ActionIcon52, { variant: "subtle", color: "red", onClick: () => setDraft((current) => ({ ...current, appliesWhen: void 0 })), "aria-label": "Always check this rule" }, /* @__PURE__ */ React332.createElement(IconX20, { size: 16 })))) : /* @__PURE__ */ React332.createElement(
|
|
38220
38244
|
Button75,
|
|
38221
38245
|
{
|
|
38222
38246
|
variant: "subtle",
|
|
@@ -39137,7 +39161,7 @@ var EvalEngineFlowDetail = ({
|
|
|
39137
39161
|
disabled: editingLocked
|
|
39138
39162
|
}
|
|
39139
39163
|
)
|
|
39140
|
-
))), (orphanRules.length > 0 || orphanLinked.length > 0) && /* @__PURE__ */ React335.createElement(Paper35, { p: 18, style: { ...cardStyle, borderColor: "var(--mantine-color-red-6)" } }, /* @__PURE__ */ React335.createElement(Stack224, { gap: "sm" }, /* @__PURE__ */ React335.createElement(Text212, { size: "sm", fw: 600 }, "Rules with no question"), /* @__PURE__ */ React335.createElement(Text212, { size: "xs", c: "dimmed" }, "These are about answers the form no longer asks for. Delete them, or put the questions back on the form."), orphanRules.map((rule) => /* @__PURE__ */ React335.createElement(Group130, { key: rule.code, gap: "sm", align: "flex-start", wrap: "nowrap" }, /* @__PURE__ */ React335.createElement(Box64, { mt: 2, style: consequencePillStyle(CONSEQUENCES.find((entry) => entry.value === rule.consequence)?.color ?? SLATE) }, consequenceIcon(rule.consequence, 15)), /* @__PURE__ */ React335.createElement(Box64, { style: { flex: 1 } }, /* @__PURE__ */ React335.createElement(RuleSentence, { text: describeRule(rule, { fields: draft.index, aiChecks: body.aiChecks }) })), /* @__PURE__ */ React335.createElement(
|
|
39164
|
+
))), (orphanRules.length > 0 || orphanLinked.length > 0) && /* @__PURE__ */ React335.createElement(Paper35, { p: 18, style: { ...cardStyle, borderColor: "var(--mantine-color-red-6)" } }, /* @__PURE__ */ React335.createElement(Stack224, { gap: "sm" }, /* @__PURE__ */ React335.createElement(Text212, { size: "sm", fw: 600 }, "Rules with no question"), /* @__PURE__ */ React335.createElement(Text212, { size: "xs", c: "dimmed" }, "These are about answers the form no longer asks for. Delete them, or put the questions back on the form."), orphanRules.map((rule) => /* @__PURE__ */ React335.createElement(Group130, { key: rule.code, gap: "sm", align: "flex-start", wrap: "nowrap" }, /* @__PURE__ */ React335.createElement(Box64, { mt: 2, style: consequencePillStyle(CONSEQUENCES.find((entry) => entry.value === rule.consequence)?.color ?? SLATE) }, consequenceIcon(rule.consequence, 15)), /* @__PURE__ */ React335.createElement(Box64, { style: { flex: 1 } }, /* @__PURE__ */ React335.createElement(RuleSentence, { text: describeRule(rule, { fields: draft.index, aiChecks: body.aiChecks }) })), /* @__PURE__ */ React335.createElement(ActionIcon53, { variant: "subtle", color: "red", onClick: () => deleteRule(rule), disabled: editingLocked, "aria-label": "Delete this rule" }, /* @__PURE__ */ React335.createElement(IconTrash14, { size: 16 })))), orphanLinked.map((entry) => /* @__PURE__ */ React335.createElement(Group130, { key: entry.elseCase.code, gap: "sm", align: "flex-start", wrap: "nowrap" }, /* @__PURE__ */ React335.createElement(Box64, { mt: 2, style: consequencePillStyle(entry.onFail === "review" ? "var(--mantine-color-grape-6)" : "var(--mantine-color-red-6)") }, consequenceIcon(entry.onFail === "review" ? "human" : "reject", 15)), /* @__PURE__ */ React335.createElement(Box64, { style: { flex: 1 } }, /* @__PURE__ */ React335.createElement(RuleSentence, { text: describeLinked(linkedSentenceOf(entry), { fields: draft.index }) })), /* @__PURE__ */ React335.createElement(ActionIcon53, { variant: "subtle", color: "red", onClick: () => deleteLinked(entry), disabled: editingLocked, "aria-label": "Delete this rule" }, /* @__PURE__ */ React335.createElement(IconTrash14, { size: 16 })))))), allErrors.filter((problem) => problem.code === "RUB_AI_CHECKS_DISABLED").map((problem) => /* @__PURE__ */ React335.createElement(Alert55, { key: problem.code, color: "red", icon: /* @__PURE__ */ React335.createElement(IconAlertTriangle17, { size: 16 }), title: "AI checks are turned off for this collection", styles: actionAlertStyles }, /* @__PURE__ */ React335.createElement(Text212, { size: "xs" }, problem.message))), /* @__PURE__ */ React335.createElement(ApprovalPolicy, { body, index: draft.index, checkCount, onChange: draft.setRubric, disabled: editingLocked }), /* @__PURE__ */ React335.createElement(UniqueRule, { body, catalog, onChange: draft.setRubric, disabled: editingLocked }), /* @__PURE__ */ React335.createElement(FrequencyRule, { body, onChange: draft.setRubric, disabled: editingLocked }), problemsByCard.loose.filter((problem) => problem.severity === "warning" && problem.code !== "RUB_WEIGHT_IGNORED").map((problem) => /* @__PURE__ */ React335.createElement(Alert55, { key: `${problem.code}${problem.path}`, color: "yellow", icon: /* @__PURE__ */ React335.createElement(IconInfoCircle11, { size: 16 }), styles: actionAlertStyles }, /* @__PURE__ */ React335.createElement(Text212, { size: "xs" }, problemText(problem)))), /* @__PURE__ */ React335.createElement(Paper35, { p: "md", style: cardStyle }, /* @__PURE__ */ React335.createElement(Stack224, { gap: "xs" }, /* @__PURE__ */ React335.createElement(Group130, { justify: "space-between" }, /* @__PURE__ */ React335.createElement(Group130, { gap: "xs" }, allErrors.length === 0 ? /* @__PURE__ */ React335.createElement(IconCheck26, { size: 16, color: "var(--mantine-color-green-6)" }) : /* @__PURE__ */ React335.createElement(IconAlertTriangle17, { size: 16, color: "var(--mantine-color-red-6)" }), /* @__PURE__ */ React335.createElement(Text212, { size: "sm" }, describeTally(draft.rules, { linked: draft.linked.length, policyMembers: policyMemberCount }))), /* @__PURE__ */ React335.createElement(Text212, { size: "sm", fw: 600, c: allErrors.length > 0 ? "red" : "dimmed" }, allErrors.length > 0 ? `${allErrors.length} problem${allErrors.length === 1 ? "" : "s"} left to fix` : "Ready to sign")), problemList.length > 0 && /* @__PURE__ */ React335.createElement(Stack224, { gap: 6 }, problemList.map((problem, at) => /* @__PURE__ */ React335.createElement(Group130, { key: `${problem.text}${at}`, gap: "xs", wrap: "nowrap", align: "flex-start" }, /* @__PURE__ */ React335.createElement(Box64, { mt: 3, style: { flexShrink: 0 } }, /* @__PURE__ */ React335.createElement(IconAlertTriangle17, { size: 14, color: "var(--mantine-color-red-6)" })), /* @__PURE__ */ React335.createElement(Text212, { size: "xs", style: { flex: 1 } }, problem.text), problem.card && /* @__PURE__ */ React335.createElement(Button76, { size: "compact-xs", variant: "subtle", styles: quietButton, rightSection: /* @__PURE__ */ React335.createElement(IconArrowRight3, { size: 12 }), onClick: () => scrollToCard(problem.card) }, "Take me there")))))), /* @__PURE__ */ React335.createElement(AdvancedPanel, { body }), editorState && /* @__PURE__ */ React335.createElement(
|
|
39141
39165
|
RuleEditor,
|
|
39142
39166
|
{
|
|
39143
39167
|
opened: true,
|
|
@@ -39479,13 +39503,13 @@ var EvaluateClaimConfig = ({ inputs, onInputsChange, editor, blockId }) => {
|
|
|
39479
39503
|
|
|
39480
39504
|
// src/mantine/blocks/action/actionTypes/evaluateClaim/EvaluateClaimFlowDetail.tsx
|
|
39481
39505
|
import { SurveyModel as SurveyModel11 } from "@ixo/surveys";
|
|
39482
|
-
import { ActionIcon as
|
|
39506
|
+
import { ActionIcon as ActionIcon57, Box as Box69, Button as Button80, Checkbox as Checkbox16, Divider as Divider25, Group as Group142, Loader as Loader69, ScrollArea as ScrollArea12, Stack as Stack236, Text as Text224, UnstyledButton as UnstyledButton10 } from "@mantine/core";
|
|
39483
39507
|
import { IconArrowLeft as IconArrowLeft11, IconCheck as IconCheck34, IconFilter as IconFilter2, IconRefresh as IconRefresh11 } from "@tabler/icons-react";
|
|
39484
39508
|
import { default as React347, useCallback as useCallback118, useEffect as useEffect127, useMemo as useMemo132, useRef as useRef53, useState as useState189 } from "react";
|
|
39485
39509
|
|
|
39486
39510
|
// src/mantine/blocks/action/actionTypes/evaluateClaim/AiChecksSection.tsx
|
|
39487
39511
|
import React337 from "react";
|
|
39488
|
-
import { Accordion as Accordion6, Group as Group132, Stack as Stack226, Text as Text214, Tooltip as
|
|
39512
|
+
import { Accordion as Accordion6, Group as Group132, Stack as Stack226, Text as Text214, Tooltip as Tooltip31 } from "@mantine/core";
|
|
39489
39513
|
import { IconAlertTriangle as IconAlertTriangle18, IconCheck as IconCheck27, IconPhoto as IconPhoto5, IconX as IconX21 } from "@tabler/icons-react";
|
|
39490
39514
|
|
|
39491
39515
|
// src/mantine/blocks/action/actionTypes/evaluateClaim/engineModel.ts
|
|
@@ -39690,13 +39714,13 @@ var AiChecksSection = ({ ai, rubric }) => {
|
|
|
39690
39714
|
return /* @__PURE__ */ React337.createElement(Accordion6, { variant: "separated", radius: "md", multiple: true, defaultValue: failedNames }, Object.entries(ai).map(([name, fact]) => {
|
|
39691
39715
|
const check = rubric?.aiChecks?.find((entry) => entry.name === name);
|
|
39692
39716
|
const provenance = provenanceOf(fact);
|
|
39693
|
-
return /* @__PURE__ */ React337.createElement(Accordion6.Item, { key: name, value: name }, /* @__PURE__ */ React337.createElement(Accordion6.Control, null, /* @__PURE__ */ React337.createElement(Group132, { gap: "xs", wrap: "nowrap" }, /* @__PURE__ */ React337.createElement(Stack226, { gap: 0, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React337.createElement(Text214, { size: "sm", fw: 500, truncate: true }, purposeOf(name, check)), /* @__PURE__ */ React337.createElement(Text214, { size: "xs", c: "dimmed", style: { fontFamily: "monospace" }, truncate: true }, name)), /* @__PURE__ */ React337.createElement(CheckStatus, { fact }), fact.status === "ok" && /* @__PURE__ */ React337.createElement(
|
|
39717
|
+
return /* @__PURE__ */ React337.createElement(Accordion6.Item, { key: name, value: name }, /* @__PURE__ */ React337.createElement(Accordion6.Control, null, /* @__PURE__ */ React337.createElement(Group132, { gap: "xs", wrap: "nowrap" }, /* @__PURE__ */ React337.createElement(Stack226, { gap: 0, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React337.createElement(Text214, { size: "sm", fw: 500, truncate: true }, purposeOf(name, check)), /* @__PURE__ */ React337.createElement(Text214, { size: "xs", c: "dimmed", style: { fontFamily: "monospace" }, truncate: true }, name)), /* @__PURE__ */ React337.createElement(CheckStatus, { fact }), fact.status === "ok" && /* @__PURE__ */ React337.createElement(Tooltip31, { label: `${fact.score}/100` }, /* @__PURE__ */ React337.createElement(Text214, { size: "xs", c: "dimmed", style: { whiteSpace: "nowrap" } }, confidenceOf(fact.score))))), /* @__PURE__ */ React337.createElement(Accordion6.Panel, null, /* @__PURE__ */ React337.createElement(Stack226, { gap: 8 }, fact.status === "ok" && fact.reason && /* @__PURE__ */ React337.createElement(Text214, { size: "sm" }, fact.reason), fact.status === "ok" && fact.failedRules.length > 0 && /* @__PURE__ */ React337.createElement(Stack226, { gap: 2 }, fact.failedRules.map((rule, i) => /* @__PURE__ */ React337.createElement(Group132, { key: i, gap: 6, wrap: "nowrap", align: "flex-start" }, /* @__PURE__ */ React337.createElement(IconX21, { size: 12, color: "var(--mantine-color-red-6)" }), /* @__PURE__ */ React337.createElement(Text214, { size: "xs" }, rule)))), fact.status === "error" && /* @__PURE__ */ React337.createElement(Text214, { size: "sm", c: "dimmed" }, fact.onError === "reject" ? "This check couldn't run, so the claim was rejected to stay safe." : "This check couldn't run, so the claim is held for a person to look at."), provenance && /* @__PURE__ */ React337.createElement(Group132, { gap: 6, wrap: "nowrap", align: "flex-start" }, /* @__PURE__ */ React337.createElement(IconPhoto5, { size: 14, color: "var(--mantine-color-dimmed)" }), /* @__PURE__ */ React337.createElement(Text214, { size: "xs" }, provenance.aiGenerated && provenance.trusted ? `This photo carries a hidden label: made by AI (${VENDOR_NAME[provenance.vendor] ?? "another provider"}) \u2014 check failed automatically` : "No hidden label found \u2014 nothing proves this photo is AI-made.")), check && Object.keys(check.send).length > 0 && /* @__PURE__ */ React337.createElement(Text214, { size: "xs", c: "dimmed" }, "What the AI was shown: ", Object.keys(check.send).join(", ")))));
|
|
39694
39718
|
}));
|
|
39695
39719
|
};
|
|
39696
39720
|
|
|
39697
39721
|
// src/mantine/blocks/action/actionTypes/evaluateClaim/ClaimAttachments.tsx
|
|
39698
39722
|
import React338, { useCallback as useCallback116, useEffect as useEffect125, useMemo as useMemo130, useRef as useRef51, useState as useState183 } from "react";
|
|
39699
|
-
import { Box as Box65, Group as Group133, Loader as Loader67, SimpleGrid as SimpleGrid4, Stack as Stack227, Text as Text215, Tooltip as
|
|
39723
|
+
import { Box as Box65, Group as Group133, Loader as Loader67, SimpleGrid as SimpleGrid4, Stack as Stack227, Text as Text215, Tooltip as Tooltip32, UnstyledButton as UnstyledButton6 } from "@mantine/core";
|
|
39700
39724
|
import { IconFile as IconFile5, IconFileText as IconFileText6, IconMusic, IconPhoto as IconPhoto6, IconVideo } from "@tabler/icons-react";
|
|
39701
39725
|
function toMediaFile(raw) {
|
|
39702
39726
|
if (!raw) return null;
|
|
@@ -39851,7 +39875,7 @@ var ClaimAttachments = ({ surveyModel, credentialSubject, entityDid }) => {
|
|
|
39851
39875
|
const showImage = isImage(item);
|
|
39852
39876
|
const displayUrl = resolved[item.content] || (!fetchClaimMedia ? item.content : "");
|
|
39853
39877
|
const isFetching = !!pending[item.content] || openingKey === item.content;
|
|
39854
|
-
return /* @__PURE__ */ React338.createElement(
|
|
39878
|
+
return /* @__PURE__ */ React338.createElement(Tooltip32, { key: `${item.content}-${index}`, label: item.label, openDelay: 400, disabled: !item.label || item.label === item.name }, /* @__PURE__ */ React338.createElement(
|
|
39855
39879
|
UnstyledButton6,
|
|
39856
39880
|
{
|
|
39857
39881
|
onClick: () => handleOpen(item),
|
|
@@ -39964,7 +39988,7 @@ var EnginePromo = () => {
|
|
|
39964
39988
|
|
|
39965
39989
|
// src/mantine/blocks/action/actionTypes/evaluateClaim/FlowManagerAdvisorySections.tsx
|
|
39966
39990
|
import React341, { useState as useState185 } from "react";
|
|
39967
|
-
import { ActionIcon as
|
|
39991
|
+
import { ActionIcon as ActionIcon54, Badge as Badge55, Group as Group136, Stack as Stack230, Text as Text218, Tooltip as Tooltip33 } from "@mantine/core";
|
|
39968
39992
|
import { IconCheck as IconCheck29, IconLink as IconLink7, IconPencil as IconPencil4, IconSparkles as IconSparkles7, IconUser as IconUser15, IconX as IconX23 } from "@tabler/icons-react";
|
|
39969
39993
|
|
|
39970
39994
|
// src/mantine/blocks/action/actionTypes/evaluateClaim/evaluationReportModel.ts
|
|
@@ -40059,7 +40083,7 @@ function ProvenanceHint({ provenance }) {
|
|
|
40059
40083
|
const t = useTranslate();
|
|
40060
40084
|
if (provenance !== "derived" && provenance !== "inferred" && provenance !== "human") return null;
|
|
40061
40085
|
const hint = provenance === "human" ? { Icon: IconUser15, label: t("actionTypes.evaluateClaim.flow.flowManager.provenance.human", { defaultValue: "Set by human" }) } : provenance === "derived" ? { Icon: IconLink7, label: t("actionTypes.evaluateClaim.flow.flowManager.provenance.derived", { defaultValue: "Derived from inputs" }) } : { Icon: IconSparkles7, label: t("actionTypes.evaluateClaim.flow.flowManager.provenance.inferred", { defaultValue: "Inferred by LLM" }) };
|
|
40062
|
-
return /* @__PURE__ */ React341.createElement(
|
|
40086
|
+
return /* @__PURE__ */ React341.createElement(Tooltip33, { label: hint.label, withArrow: true }, /* @__PURE__ */ React341.createElement("span", { style: { display: "inline-flex", alignItems: "center" }, "aria-label": hint.label }, icon(hint.Icon, 12, "var(--mantine-color-dimmed)")));
|
|
40063
40087
|
}
|
|
40064
40088
|
var FlowManagerContextSection = ({ record, onOverride, disabled }) => {
|
|
40065
40089
|
const t = useTranslate();
|
|
@@ -40100,7 +40124,7 @@ var FlowManagerContextSection = ({ record, onOverride, disabled }) => {
|
|
|
40100
40124
|
"aria-label": t("actionTypes.evaluateClaim.flow.flowManager.themeEditLabel", { defaultValue: "Edit theme" })
|
|
40101
40125
|
}
|
|
40102
40126
|
)), /* @__PURE__ */ React341.createElement(
|
|
40103
|
-
|
|
40127
|
+
ActionIcon54,
|
|
40104
40128
|
{
|
|
40105
40129
|
variant: "subtle",
|
|
40106
40130
|
color: "gray",
|
|
@@ -40110,7 +40134,7 @@ var FlowManagerContextSection = ({ record, onOverride, disabled }) => {
|
|
|
40110
40134
|
},
|
|
40111
40135
|
icon(IconCheck29, 14)
|
|
40112
40136
|
), /* @__PURE__ */ React341.createElement(
|
|
40113
|
-
|
|
40137
|
+
ActionIcon54,
|
|
40114
40138
|
{
|
|
40115
40139
|
variant: "subtle",
|
|
40116
40140
|
color: "gray",
|
|
@@ -40120,7 +40144,7 @@ var FlowManagerContextSection = ({ record, onOverride, disabled }) => {
|
|
|
40120
40144
|
},
|
|
40121
40145
|
icon(IconX23, 14)
|
|
40122
40146
|
)) : /* @__PURE__ */ React341.createElement(React341.Fragment, null, /* @__PURE__ */ React341.createElement(Text218, { size: "sm", style: { flex: 1, minWidth: 0 }, truncate: true }, theme), /* @__PURE__ */ React341.createElement(ProvenanceHint, { provenance: provenance.theme }), !disabled && /* @__PURE__ */ React341.createElement(
|
|
40123
|
-
|
|
40147
|
+
ActionIcon54,
|
|
40124
40148
|
{
|
|
40125
40149
|
variant: "subtle",
|
|
40126
40150
|
color: "gray",
|
|
@@ -40173,9 +40197,9 @@ var OutsideServicesSection = ({ ext }) => /* @__PURE__ */ React342.createElement
|
|
|
40173
40197
|
|
|
40174
40198
|
// src/mantine/blocks/action/actionTypes/evaluateClaim/TechnicalDetails.tsx
|
|
40175
40199
|
import React343 from "react";
|
|
40176
|
-
import { ActionIcon as
|
|
40200
|
+
import { ActionIcon as ActionIcon55, Badge as Badge57, CopyButton as CopyButton3, Group as Group138, Paper as Paper37, ScrollArea as ScrollArea11, Stack as Stack232, Table, Text as Text220, Timeline as Timeline2, Tooltip as Tooltip34 } from "@mantine/core";
|
|
40177
40201
|
import { IconCheck as IconCheck31, IconCopy as IconCopy2 } from "@tabler/icons-react";
|
|
40178
|
-
var CopyIcon = ({ value }) => /* @__PURE__ */ React343.createElement(CopyButton3, { value, timeout: 1500 }, ({ copied, copy }) => /* @__PURE__ */ React343.createElement(
|
|
40202
|
+
var CopyIcon = ({ value }) => /* @__PURE__ */ React343.createElement(CopyButton3, { value, timeout: 1500 }, ({ copied, copy }) => /* @__PURE__ */ React343.createElement(Tooltip34, { label: copied ? "Copied" : "Copy" }, /* @__PURE__ */ React343.createElement(ActionIcon55, { size: "xs", variant: "subtle", color: copied ? "teal" : "gray", onClick: copy }, copied ? /* @__PURE__ */ React343.createElement(IconCheck31, { size: 12 }) : /* @__PURE__ */ React343.createElement(IconCopy2, { size: 12 }))));
|
|
40179
40203
|
var IdRow = ({ label, value }) => value ? /* @__PURE__ */ React343.createElement(Group138, { gap: 6, wrap: "nowrap" }, /* @__PURE__ */ React343.createElement(Text220, { size: "xs", c: "dimmed", style: { width: 110, flexShrink: 0 } }, label), /* @__PURE__ */ React343.createElement(Text220, { size: "xs", style: { fontFamily: "monospace", wordBreak: "break-all", flex: 1 } }, value), /* @__PURE__ */ React343.createElement(CopyIcon, { value })) : null;
|
|
40180
40204
|
var SubHead = ({ children }) => /* @__PURE__ */ React343.createElement(Text220, { size: "xs", fw: 600, c: "dimmed", tt: "uppercase" }, children);
|
|
40181
40205
|
var JsonViewer2 = ({ label, value }) => {
|
|
@@ -40320,7 +40344,7 @@ function useEngineSummaries(collectionId) {
|
|
|
40320
40344
|
|
|
40321
40345
|
// src/mantine/blocks/action/actionTypes/evaluateClaim/VerdictBlock.tsx
|
|
40322
40346
|
import React345, { useState as useState188 } from "react";
|
|
40323
|
-
import { ActionIcon as
|
|
40347
|
+
import { ActionIcon as ActionIcon56, Badge as Badge58, Box as Box67, Group as Group140, Loader as Loader68, Stack as Stack234, Text as Text222, Tooltip as Tooltip35, UnstyledButton as UnstyledButton8 } from "@mantine/core";
|
|
40324
40348
|
import { IconAlertTriangle as IconAlertTriangle21, IconArrowRight as IconArrowRight4, IconCheck as IconCheck32, IconMinus as IconMinus2, IconRefresh as IconRefresh10, IconX as IconX24 } from "@tabler/icons-react";
|
|
40325
40349
|
|
|
40326
40350
|
// src/mantine/blocks/action/actionTypes/evaluateClaim/ReviewAnswerForm.tsx
|
|
@@ -40444,7 +40468,10 @@ var MatchedClaims = ({ refs, duplicate, openableClaimIds, onOpenClaim }) => {
|
|
|
40444
40468
|
};
|
|
40445
40469
|
const shownIds = new Set(refs.map((ref) => ref.id));
|
|
40446
40470
|
const extraCandidates = (duplicate?.candidates ?? []).filter((c) => !shownIds.has(c.claimId));
|
|
40447
|
-
const rows = [
|
|
40471
|
+
const rows = [
|
|
40472
|
+
...refs.map((ref) => ({ id: ref.id, detail: detailFor(ref.id) })),
|
|
40473
|
+
...expanded ? extraCandidates.map((c) => ({ id: c.claimId, detail: detailFor(c.claimId) })) : []
|
|
40474
|
+
];
|
|
40448
40475
|
return /* @__PURE__ */ React345.createElement(Stack234, { gap: 4 }, /* @__PURE__ */ React345.createElement(Text222, { size: "xs", fw: 600, c: "dimmed" }, refs[0].label), rows.map((row) => {
|
|
40449
40476
|
const canOpen = !!onOpenClaim && !!openableClaimIds?.has(row.id);
|
|
40450
40477
|
const id = /* @__PURE__ */ React345.createElement(Text222, { size: "xs", style: { fontFamily: "monospace" } }, truncateClaimId2(row.id));
|
|
@@ -40511,7 +40538,7 @@ var VerdictBlock = ({
|
|
|
40511
40538
|
disabled,
|
|
40512
40539
|
onSubmit
|
|
40513
40540
|
}
|
|
40514
|
-
), /* @__PURE__ */ React345.createElement(Group140, { justify: "space-between", align: "center", wrap: "nowrap", gap: "xs" }, /* @__PURE__ */ React345.createElement(Text222, { size: "xs", c: "dimmed", style: { flex: 1, minWidth: 0 } }, metaLine), /* @__PURE__ */ React345.createElement(
|
|
40541
|
+
), /* @__PURE__ */ React345.createElement(Group140, { justify: "space-between", align: "center", wrap: "nowrap", gap: "xs" }, /* @__PURE__ */ React345.createElement(Text222, { size: "xs", c: "dimmed", style: { flex: 1, minWidth: 0 } }, metaLine), /* @__PURE__ */ React345.createElement(Tooltip35, { label: updatedAt ? `Updated ${new Date(updatedAt).toLocaleTimeString()}` : "Loading\u2026" }, /* @__PURE__ */ React345.createElement(ActionIcon56, { size: "xs", variant: "subtle", color: "gray", onClick: onRefresh, "aria-label": "Refresh" }, /* @__PURE__ */ React345.createElement(IconRefresh10, { size: 12 })))))
|
|
40515
40542
|
);
|
|
40516
40543
|
};
|
|
40517
40544
|
|
|
@@ -41298,7 +41325,7 @@ var EvaluateClaimFlowDetail = ({
|
|
|
41298
41325
|
const selectedClaimProfile = profilesByDid[selectedClaim.agentDid];
|
|
41299
41326
|
const selectedDisplayName = selectedClaimProfile?.displayname || selectedClaim.agentDid || selectedClaim.agentAddress;
|
|
41300
41327
|
const selectedAvatarLabel = (selectedClaimProfile?.displayname || selectedClaim.agentDid || selectedClaim.agentAddress || "?")[0]?.toUpperCase();
|
|
41301
|
-
return /* @__PURE__ */ React347.createElement(Stack236, { gap: "md" }, /* @__PURE__ */ React347.createElement(Group142, { gap: "xs", align: "center" }, /* @__PURE__ */ React347.createElement(
|
|
41328
|
+
return /* @__PURE__ */ React347.createElement(Stack236, { gap: "md" }, /* @__PURE__ */ React347.createElement(Group142, { gap: "xs", align: "center" }, /* @__PURE__ */ React347.createElement(ActionIcon57, { variant: "subtle", color: "gray", size: "sm", onClick: () => setSelectedClaimId("") }, /* @__PURE__ */ React347.createElement(IconArrowLeft11, { size: 16 })), /* @__PURE__ */ React347.createElement(Text224, { fw: 500, size: "sm", title: selectedClaim.claimId, truncate: true, style: { flex: 1, minWidth: 0 } }, t("actionTypes.claim.flow.claimNumber", { id: truncateId2(selectedClaim.claimId), defaultValue: `Claim #${truncateId2(selectedClaim.claimId)}` })), /* @__PURE__ */ React347.createElement(DownloadCsvButton, { onDownload: () => downloadClaimsCsv([selectedClaim], `claim-${truncateId2(selectedClaim.claimId)}.csv`), label: "Download claim CSV" })), /* @__PURE__ */ React347.createElement(Group142, { gap: 16, align: "center", style: { width: "100%" } }, /* @__PURE__ */ React347.createElement(
|
|
41302
41329
|
Box69,
|
|
41303
41330
|
{
|
|
41304
41331
|
style: {
|
|
@@ -41359,7 +41386,14 @@ var EvaluateClaimFlowDetail = ({
|
|
|
41359
41386
|
rubric: rubricBody
|
|
41360
41387
|
}
|
|
41361
41388
|
)
|
|
41362
|
-
), engine.record?.evaluation?.trace && Object.keys(engine.record.evaluation.trace.ai).length > 0 && /* @__PURE__ */ React347.createElement(CollapsibleSection, { key: selectedClaim.claimId, title: `AI checks \xB7 ${aiChecksPassedCount(engine.record.evaluation.trace.ai)} passed` }, /* @__PURE__ */ React347.createElement(AiChecksSection, { ai: engine.record.evaluation.trace.ai, rubric: rubricBody })), engine.record?.evaluation?.trace && Object.keys(engine.record.evaluation.trace.ext).length > 0 && /* @__PURE__ */ React347.createElement(
|
|
41389
|
+
), engine.record?.evaluation?.trace && Object.keys(engine.record.evaluation.trace.ai).length > 0 && /* @__PURE__ */ React347.createElement(CollapsibleSection, { key: selectedClaim.claimId, title: `AI checks \xB7 ${aiChecksPassedCount(engine.record.evaluation.trace.ai)} passed` }, /* @__PURE__ */ React347.createElement(AiChecksSection, { ai: engine.record.evaluation.trace.ai, rubric: rubricBody })), engine.record?.evaluation?.trace && Object.keys(engine.record.evaluation.trace.ext).length > 0 && /* @__PURE__ */ React347.createElement(
|
|
41390
|
+
CollapsibleSection,
|
|
41391
|
+
{
|
|
41392
|
+
key: selectedClaim.claimId,
|
|
41393
|
+
title: `Outside services \xB7 ${Object.values(engine.record.evaluation.trace.ext).filter((fact) => fact.status === "ok").length} answered`
|
|
41394
|
+
},
|
|
41395
|
+
/* @__PURE__ */ React347.createElement(OutsideServicesSection, { ext: engine.record.evaluation.trace.ext })
|
|
41396
|
+
))), /* @__PURE__ */ React347.createElement(CollapsibleSection, { title: t("actionTypes.evaluateClaim.flow.section.submission", { defaultValue: "The claim" }) }, surveyLoading ? /* @__PURE__ */ React347.createElement(Group142, { gap: "xs" }, /* @__PURE__ */ React347.createElement(Loader69, { size: "xs" }), /* @__PURE__ */ React347.createElement(Text224, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.loadingSubmissionDetails", { defaultValue: "Loading submission details..." }))) : surveyModel ? /* @__PURE__ */ React347.createElement(ScrollArea12, { h: 280 }, /* @__PURE__ */ React347.createElement(StableSurvey, { model: surveyModel })) : /* @__PURE__ */ React347.createElement(Text224, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.noSubmissionTemplate", { defaultValue: "No submission template/data available." }))), /* @__PURE__ */ React347.createElement(CollapsibleSection, { title: t("actionTypes.evaluateClaim.flow.section.attachments", { defaultValue: "Attachments" }) }, /* @__PURE__ */ React347.createElement(ClaimAttachments, { surveyModel, credentialSubject: resolvedCredentialSubject, entityDid: deedDid })), flowManagerContext, /* @__PURE__ */ React347.createElement(EvaluationReportSection, { runtime, selectedClaimId: selectedClaim.claimId }), parsed.xeroOracleInvoiceOnApprove && /* @__PURE__ */ React347.createElement(CollapsibleSection, { title: "Xero work", defaultOpen: false }, /* @__PURE__ */ React347.createElement(DismissibleAlert, { color: "blue", variant: "light", p: "xs" }, /* @__PURE__ */ React347.createElement(Text224, { size: "xs" }, "Approving this claim queues a Xero invoice work item. The contracted Xero oracle creates a draft invoice from the claim material \u2014 no Xero side effects run in the browser."))), (outcomeTemplateLoading || outcomeTemplateJson) && /* @__PURE__ */ React347.createElement(
|
|
41363
41397
|
CollapsibleSection,
|
|
41364
41398
|
{
|
|
41365
41399
|
title: t("actionTypes.evaluateClaim.flow.section.outcome", { defaultValue: "Outcome" }),
|
|
@@ -41471,7 +41505,7 @@ var EvaluateClaimFlowDetail = ({
|
|
|
41471
41505
|
},
|
|
41472
41506
|
/* @__PURE__ */ React347.createElement(Text224, { size: "sm", fw: 500, c: activeFilter === tab.value ? "var(--mantine-color-text)" : "dimmed" }, tab.label)
|
|
41473
41507
|
))), /* @__PURE__ */ React347.createElement(Group142, { gap: 4, align: "center" }, engineSummaries.supported && /* @__PURE__ */ React347.createElement(Text224, { size: "xs", c: "dimmed" }, claims.length, " claim", claims.length === 1 ? "" : "s", " \xB7 ", owedCount, " owed by you"), engineSummaries.updatedAt && /* @__PURE__ */ React347.createElement(Text224, { size: "xs", c: "dimmed" }, "Updated ", new Date(engineSummaries.updatedAt).toLocaleTimeString()), /* @__PURE__ */ React347.createElement(
|
|
41474
|
-
|
|
41508
|
+
ActionIcon57,
|
|
41475
41509
|
{
|
|
41476
41510
|
variant: "subtle",
|
|
41477
41511
|
color: "gray",
|
|
@@ -41483,7 +41517,7 @@ var EvaluateClaimFlowDetail = ({
|
|
|
41483
41517
|
}
|
|
41484
41518
|
},
|
|
41485
41519
|
/* @__PURE__ */ React347.createElement(IconRefresh11, { size: 16 })
|
|
41486
|
-
), /* @__PURE__ */ React347.createElement(DownloadCsvButton, { onDownload: handleDownloadClaimsCsv, disabled: loadingClaims || claims.length === 0, label: "Download claims CSV" }), /* @__PURE__ */ React347.createElement(
|
|
41520
|
+
), /* @__PURE__ */ React347.createElement(DownloadCsvButton, { onDownload: handleDownloadClaimsCsv, disabled: loadingClaims || claims.length === 0, label: "Download claims CSV" }), /* @__PURE__ */ React347.createElement(ActionIcon57, { variant: "subtle", color: "gray", size: "sm" }, /* @__PURE__ */ React347.createElement(IconFilter2, { size: 16 })))), engineSummaries.supported && engineSummaries.notEnrolled && /* @__PURE__ */ React347.createElement(EnginePromo, null), loadingClaims && /* @__PURE__ */ React347.createElement(Group142, { gap: "xs", justify: "center", py: "md" }, /* @__PURE__ */ React347.createElement(Loader69, { size: "xs" }), /* @__PURE__ */ React347.createElement(Text224, { size: "xs", c: "dimmed" }, t("actionTypes.evaluateClaim.flow.loadingClaims", { defaultValue: "Loading claims..." }))), !loadingClaims && filteredClaims.length === 0 && /* @__PURE__ */ React347.createElement(Text224, { size: "sm", c: "dimmed", ta: "center", py: "md" }, claims.length === 0 ? t("actionTypes.evaluateClaim.flow.empty.allCollections", { defaultValue: "No claims available for this collection." }) : activeFilter === "owed" ? "No claims are waiting on you right now." : t("actionTypes.evaluateClaim.flow.empty.filtered", { filter: activeFilter, defaultValue: `No ${activeFilter} claims found.` })), filteredClaims.length > 0 && /* @__PURE__ */ React347.createElement(Stack236, { gap: 12 }, filteredClaims.map((claim) => {
|
|
41487
41521
|
const row = engineSummaries.byClaimId[claim.claimId];
|
|
41488
41522
|
const view = rowViewByClaimId.get(claim.claimId) ?? { tone: "neutral", headline: "", owed: false, action: null, chain: null };
|
|
41489
41523
|
const profile = profilesByDid[claim.agentDid];
|
|
@@ -42077,7 +42111,7 @@ var ProposalVoteConfig = ({ inputs, onInputsChange, editor, blockId }) => {
|
|
|
42077
42111
|
|
|
42078
42112
|
// src/mantine/blocks/action/actionTypes/proposalVote/ProposalVoteFlowDetail.tsx
|
|
42079
42113
|
import React351, { useCallback as useCallback122, useEffect as useEffect131, useMemo as useMemo135, useState as useState193 } from "react";
|
|
42080
|
-
import { Box as Box70, Button as Button82, Card as Card30, Group as Group144, Progress as Progress6, Stack as Stack240, Text as Text228, Tooltip as
|
|
42114
|
+
import { Box as Box70, Button as Button82, Card as Card30, Group as Group144, Progress as Progress6, Stack as Stack240, Text as Text228, Tooltip as Tooltip36 } from "@mantine/core";
|
|
42081
42115
|
var getVoteIcon2 = (voteType) => {
|
|
42082
42116
|
switch (voteType) {
|
|
42083
42117
|
case "yes":
|
|
@@ -42231,7 +42265,7 @@ var ProposalVoteFlowDetail = ({ inputs, editor, block, runtime, isDisabled, exec
|
|
|
42231
42265
|
}
|
|
42232
42266
|
), /* @__PURE__ */ React351.createElement(Text228, { size: "sm", style: { color: "var(--mantine-color-dimmed)" } }, "Proposal ID")), /* @__PURE__ */ React351.createElement(Text228, { size: "sm", fw: 500, style: { color: "var(--mantine-color-text)" } }, hasSubmittedProposal ? `#${proposalId}` : "TBD")), /* @__PURE__ */ React351.createElement(Group144, { justify: "space-between" }, /* @__PURE__ */ React351.createElement(Group144, { gap: "xs" }, /* @__PURE__ */ React351.createElement(Box70, { w: 8, h: 8, style: { backgroundColor: "var(--mantine-color-dimmed)", borderRadius: "50%" } }), /* @__PURE__ */ React351.createElement(Text228, { size: "sm", style: { color: "var(--mantine-color-dimmed)" } }, "My Vote")), /* @__PURE__ */ React351.createElement(Text228, { size: "sm", fw: 500, style: { color: "var(--mantine-color-text)" } }, hasSubmittedProposal ? userVote?.vote ? userVote.vote.vote : "Pending" : "N/A"))),
|
|
42233
42267
|
/* @__PURE__ */ React351.createElement(Stack240, { gap: "xs", mt: "md" }, /* @__PURE__ */ React351.createElement(Text228, { size: "sm", style: { color: "var(--mantine-color-dimmed)" } }, hasSubmittedProposal ? "Voting is open" : "Voting pending"), /* @__PURE__ */ React351.createElement(Progress6, { value: hasSubmittedProposal ? 75 : 0, size: "md" }))
|
|
42234
|
-
), hasSubmittedProposal && proposalContractAddress && /* @__PURE__ */ React351.createElement(ProposalOverviewCard, { proposalContractAddress, proposalId }), hasSubmittedProposal && !hasVoted && /* @__PURE__ */ React351.createElement(Stack240, { gap: "lg" }, /* @__PURE__ */ React351.createElement(Stack240, { gap: "md" }, ["yes", "no", "abstain"].map((voteType) => /* @__PURE__ */ React351.createElement(
|
|
42268
|
+
), hasSubmittedProposal && proposalContractAddress && /* @__PURE__ */ React351.createElement(ProposalOverviewCard, { proposalContractAddress, proposalId }), hasSubmittedProposal && !hasVoted && /* @__PURE__ */ React351.createElement(Stack240, { gap: "lg" }, /* @__PURE__ */ React351.createElement(Stack240, { gap: "md" }, ["yes", "no", "abstain"].map((voteType) => /* @__PURE__ */ React351.createElement(Tooltip36, { key: voteType, label: isDisabled ? "Action is disabled" : void 0, disabled: !isDisabled, position: "top" }, /* @__PURE__ */ React351.createElement(
|
|
42235
42269
|
Button82,
|
|
42236
42270
|
{
|
|
42237
42271
|
variant: "outline",
|
|
@@ -42261,7 +42295,7 @@ var ProposalVoteFlowDetail = ({ inputs, editor, block, runtime, isDisabled, exec
|
|
|
42261
42295
|
disabled: isDisabled,
|
|
42262
42296
|
rows: 3
|
|
42263
42297
|
}
|
|
42264
|
-
)), !hasSubmittedProposal && /* @__PURE__ */ React351.createElement(Stack240, { gap: "md" }, ["yes", "no", "abstain"].map((voteType) => /* @__PURE__ */ React351.createElement(
|
|
42298
|
+
)), !hasSubmittedProposal && /* @__PURE__ */ React351.createElement(Stack240, { gap: "md" }, ["yes", "no", "abstain"].map((voteType) => /* @__PURE__ */ React351.createElement(Tooltip36, { key: voteType, label: "The proposal must be submitted before you can vote", position: "top" }, /* @__PURE__ */ React351.createElement(
|
|
42265
42299
|
Button82,
|
|
42266
42300
|
{
|
|
42267
42301
|
variant: "outline",
|
|
@@ -44888,7 +44922,7 @@ function finaliseLineItem(cells) {
|
|
|
44888
44922
|
|
|
44889
44923
|
// src/mantine/blocks/action/actionTypes/xero/invoiceCreate/XeroLineItemsEditor.tsx
|
|
44890
44924
|
import React376, { useCallback as useCallback146, useMemo as useMemo150 } from "react";
|
|
44891
|
-
import { ActionIcon as
|
|
44925
|
+
import { ActionIcon as ActionIcon58, Alert as Alert58, Box as Box74, Button as Button89, Collapse as Collapse11, Divider as Divider32, Group as Group151, SegmentedControl as SegmentedControl22, Stack as Stack265, Text as Text249, Tooltip as Tooltip37 } from "@mantine/core";
|
|
44892
44926
|
import { useDisclosure as useDisclosure6 } from "@mantine/hooks";
|
|
44893
44927
|
import { IconChevronDown as IconChevronDown10, IconChevronRight as IconChevronRight13, IconPlus as IconPlus14, IconTrash as IconTrash15 } from "@tabler/icons-react";
|
|
44894
44928
|
function getNestedField(fields, path) {
|
|
@@ -44995,7 +45029,7 @@ function LineItemRowCard({
|
|
|
44995
45029
|
background: "var(--mantine-color-neutralColor-2)"
|
|
44996
45030
|
}
|
|
44997
45031
|
},
|
|
44998
|
-
/* @__PURE__ */ React376.createElement(Group151, { justify: "space-between", align: "center", mb: "xs" }, /* @__PURE__ */ React376.createElement(Text249, { size: "xs", c: "dimmed", fw: 600 }, "Line item ", index + 1), canRemove && onRemove && /* @__PURE__ */ React376.createElement(
|
|
45032
|
+
/* @__PURE__ */ React376.createElement(Group151, { justify: "space-between", align: "center", mb: "xs" }, /* @__PURE__ */ React376.createElement(Text249, { size: "xs", c: "dimmed", fw: 600 }, "Line item ", index + 1), canRemove && onRemove && /* @__PURE__ */ React376.createElement(Tooltip37, { label: "Remove", withArrow: true }, /* @__PURE__ */ React376.createElement(ActionIcon58, { size: "sm", variant: "subtle", color: "red", onClick: onRemove }, /* @__PURE__ */ React376.createElement(IconTrash15, { size: 14 })))),
|
|
44999
45033
|
/* @__PURE__ */ React376.createElement(Stack265, { gap: "xs" }, /* @__PURE__ */ React376.createElement(
|
|
45000
45034
|
DataInput,
|
|
45001
45035
|
{
|
|
@@ -46118,7 +46152,7 @@ var XeroPaymentCreateConfig = ({ inputs, onInputsChange, editor, blockId }) => {
|
|
|
46118
46152
|
|
|
46119
46153
|
// src/mantine/blocks/action/actionTypes/xero/paymentCreate/XeroPaymentCreateFlowDetail.tsx
|
|
46120
46154
|
import React383, { useCallback as useCallback153, useEffect as useEffect157, useMemo as useMemo154, useState as useState226 } from "react";
|
|
46121
|
-
import { ActionIcon as
|
|
46155
|
+
import { ActionIcon as ActionIcon59, Badge as Badge65, Button as Button92, Group as Group157, Stack as Stack272, Text as Text255 } from "@mantine/core";
|
|
46122
46156
|
import { IconArrowLeft as IconArrowLeft12 } from "@tabler/icons-react";
|
|
46123
46157
|
|
|
46124
46158
|
// src/mantine/blocks/action/actionTypes/xero/_shared/useFlowXeroBinding.ts
|
|
@@ -46543,7 +46577,7 @@ var XeroPaymentCreateFlowDetail = ({
|
|
|
46543
46577
|
const paymentDate = String(item.reviewPayload?.Date || "");
|
|
46544
46578
|
const invoiceStatus = String(attachedInvoiceResult.status || attachedInvoicePayload.Status || "DRAFT").toUpperCase();
|
|
46545
46579
|
return /* @__PURE__ */ React383.createElement(Stack272, { gap: "md" }, /* @__PURE__ */ React383.createElement(Group157, { gap: "xs", align: "center" }, /* @__PURE__ */ React383.createElement(
|
|
46546
|
-
|
|
46580
|
+
ActionIcon59,
|
|
46547
46581
|
{
|
|
46548
46582
|
variant: "subtle",
|
|
46549
46583
|
color: "gray",
|
|
@@ -49189,7 +49223,7 @@ var EntityCreateOracleConfig = ({ inputs, onInputsChange }) => {
|
|
|
49189
49223
|
|
|
49190
49224
|
// src/mantine/blocks/action/actionTypes/entityCreateOracle/EntityCreateOracleFlowDetail.tsx
|
|
49191
49225
|
import React412, { useCallback as useCallback177, useMemo as useMemo166 } from "react";
|
|
49192
|
-
import { ActionIcon as
|
|
49226
|
+
import { ActionIcon as ActionIcon60, Button as Button104, CopyButton as CopyButton4, Group as Group169, Loader as Loader93, Stack as Stack301, Text as Text282, Tooltip as Tooltip38 } from "@mantine/core";
|
|
49193
49227
|
import { IconCheck as IconCheck50, IconAlertCircle as IconAlertCircle44, IconCopy as IconCopy3 } from "@tabler/icons-react";
|
|
49194
49228
|
var EntityCreateOracleFlowDetail = ({ inputs, editor, block, runtime, updateRuntime, isDisabled, executeAction }) => {
|
|
49195
49229
|
const parsed = useMemo166(() => parseEntityCreateOracleInputs(inputs), [inputs]);
|
|
@@ -49278,7 +49312,7 @@ var EntityCreateOracleFlowDetail = ({ inputs, editor, block, runtime, updateRunt
|
|
|
49278
49312
|
const handleRetry = useCallback177(() => {
|
|
49279
49313
|
updateRuntime({ state: "idle", error: void 0, output: {} });
|
|
49280
49314
|
}, [updateRuntime]);
|
|
49281
|
-
return /* @__PURE__ */ React412.createElement(Stack301, { gap: "md" }, /* @__PURE__ */ React412.createElement(Stack301, { gap: 2 }, /* @__PURE__ */ React412.createElement(Text282, { fw: 600 }, block?.props?.title || "Create Oracle Entity"), /* @__PURE__ */ React412.createElement(Text282, { size: "sm", c: "dimmed" }, block?.props?.description || "Create an oracle entity on-chain.")), !isRunning && !isCompleted && !isStale && !isFailed && !inputsReady && /* @__PURE__ */ React412.createElement(Group169, { gap: "xs" }, /* @__PURE__ */ React412.createElement(Loader93, { size: 14 }), /* @__PURE__ */ React412.createElement(Text282, { size: "sm", c: "dimmed" }, "Waiting for upstream wallet + matrix + form inputs...")), isRunning && /* @__PURE__ */ React412.createElement(Group169, { gap: "xs" }, /* @__PURE__ */ React412.createElement(Loader93, { size: 14 }), /* @__PURE__ */ React412.createElement(Text282, { size: "sm" }, "Creating oracle entity...")), isCompleted && /* @__PURE__ */ React412.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React412.createElement(IconCheck50, { size: 16 }), title: "Oracle Entity Created", color: "green" }, /* @__PURE__ */ React412.createElement(Stack301, { gap: "xs" }, /* @__PURE__ */ React412.createElement(Text282, { size: "sm" }, "Oracle entity created successfully on-chain."), /* @__PURE__ */ React412.createElement(Group169, { gap: 6, wrap: "nowrap", align: "center" }, /* @__PURE__ */ React412.createElement(Text282, { size: "xs", c: "dimmed" }, "Entity DID:"), /* @__PURE__ */ React412.createElement(Text282, { size: "xs", ff: "monospace", style: { wordBreak: "break-all" } }, entityDid), /* @__PURE__ */ React412.createElement(CopyButton4, { value: entityDid, timeout: 1500 }, ({ copied, copy }) => /* @__PURE__ */ React412.createElement(
|
|
49315
|
+
return /* @__PURE__ */ React412.createElement(Stack301, { gap: "md" }, /* @__PURE__ */ React412.createElement(Stack301, { gap: 2 }, /* @__PURE__ */ React412.createElement(Text282, { fw: 600 }, block?.props?.title || "Create Oracle Entity"), /* @__PURE__ */ React412.createElement(Text282, { size: "sm", c: "dimmed" }, block?.props?.description || "Create an oracle entity on-chain.")), !isRunning && !isCompleted && !isStale && !isFailed && !inputsReady && /* @__PURE__ */ React412.createElement(Group169, { gap: "xs" }, /* @__PURE__ */ React412.createElement(Loader93, { size: 14 }), /* @__PURE__ */ React412.createElement(Text282, { size: "sm", c: "dimmed" }, "Waiting for upstream wallet + matrix + form inputs...")), isRunning && /* @__PURE__ */ React412.createElement(Group169, { gap: "xs" }, /* @__PURE__ */ React412.createElement(Loader93, { size: 14 }), /* @__PURE__ */ React412.createElement(Text282, { size: "sm" }, "Creating oracle entity...")), isCompleted && /* @__PURE__ */ React412.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React412.createElement(IconCheck50, { size: 16 }), title: "Oracle Entity Created", color: "green" }, /* @__PURE__ */ React412.createElement(Stack301, { gap: "xs" }, /* @__PURE__ */ React412.createElement(Text282, { size: "sm" }, "Oracle entity created successfully on-chain."), /* @__PURE__ */ React412.createElement(Group169, { gap: 6, wrap: "nowrap", align: "center" }, /* @__PURE__ */ React412.createElement(Text282, { size: "xs", c: "dimmed" }, "Entity DID:"), /* @__PURE__ */ React412.createElement(Text282, { size: "xs", ff: "monospace", style: { wordBreak: "break-all" } }, entityDid), /* @__PURE__ */ React412.createElement(CopyButton4, { value: entityDid, timeout: 1500 }, ({ copied, copy }) => /* @__PURE__ */ React412.createElement(Tooltip38, { label: copied ? "Copied" : "Copy" }, /* @__PURE__ */ React412.createElement(ActionIcon60, { size: "sm", variant: "subtle", color: copied ? "teal" : "gray", onClick: copy }, copied ? /* @__PURE__ */ React412.createElement(IconCheck50, { size: 14 }) : /* @__PURE__ */ React412.createElement(IconCopy3, { size: 14 }))))))), isStale && /* @__PURE__ */ React412.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React412.createElement(IconAlertCircle44, { size: 16 }), color: "yellow", title: "Inconsistent State" }, /* @__PURE__ */ React412.createElement(Stack301, { gap: "xs" }, /* @__PURE__ */ React412.createElement(Text282, { size: "sm" }, "Marked completed but no entityDid recorded. Stale state \u2014 reset and re-run."), /* @__PURE__ */ React412.createElement(Group169, null, /* @__PURE__ */ React412.createElement(Button104, { variant: "outline", size: "xs", onClick: handleRetry }, "Reset"), /* @__PURE__ */ React412.createElement(Button104, { variant: "filled", size: "xs", onClick: handleExecute, disabled: !inputsReady }, "Force Run Now")))), isFailed && errorMessage && /* @__PURE__ */ React412.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React412.createElement(IconAlertCircle44, { size: 16 }), color: "red", styles: actionAlertStyles }, errorMessage), isFailed && /* @__PURE__ */ React412.createElement(Group169, null, /* @__PURE__ */ React412.createElement(Button104, { variant: "outline", onClick: handleRetry }, "Try Again")), !isRunning && !isStale && /* @__PURE__ */ React412.createElement(Group169, null, /* @__PURE__ */ React412.createElement(Button104, { variant: "filled", size: "sm", onClick: handleExecute, disabled: !inputsReady || isDisabled }, isCompleted ? "Re-run" : inputsReady ? "Run Now" : "Waiting for inputs...")));
|
|
49282
49316
|
};
|
|
49283
49317
|
|
|
49284
49318
|
// src/mantine/blocks/action/actionTypes/entityCreateOracle/index.ts
|
|
@@ -51750,7 +51784,7 @@ function useUnlMap() {
|
|
|
51750
51784
|
|
|
51751
51785
|
// src/mantine/blocks/location/components/TileSelector.tsx
|
|
51752
51786
|
import React433, { useState as useState257, useCallback as useCallback193 } from "react";
|
|
51753
|
-
import { ActionIcon as
|
|
51787
|
+
import { ActionIcon as ActionIcon61, Group as Group179, Tooltip as Tooltip39 } from "@mantine/core";
|
|
51754
51788
|
import { IconMap, IconMoon, IconSatellite, IconMountain } from "@tabler/icons-react";
|
|
51755
51789
|
var TILE_LAYERS = {
|
|
51756
51790
|
dark: {
|
|
@@ -51838,8 +51872,8 @@ var TileSelector = ({ mapRef }) => {
|
|
|
51838
51872
|
padding: 2
|
|
51839
51873
|
}
|
|
51840
51874
|
},
|
|
51841
|
-
items.map(({ type, label, icon: icon2 }) => /* @__PURE__ */ React433.createElement(
|
|
51842
|
-
|
|
51875
|
+
items.map(({ type, label, icon: icon2 }) => /* @__PURE__ */ React433.createElement(Tooltip39, { key: type, label, withArrow: true }, /* @__PURE__ */ React433.createElement(
|
|
51876
|
+
ActionIcon61,
|
|
51843
51877
|
{
|
|
51844
51878
|
variant: active === type ? "filled" : "subtle",
|
|
51845
51879
|
color: active === type ? "accent.5" : "gray",
|
|
@@ -52426,7 +52460,7 @@ import { createReactBlockSpec as createReactBlockSpec23 } from "@blocknote/react
|
|
|
52426
52460
|
|
|
52427
52461
|
// src/mantine/blocks/secrets/SecretsBlock.tsx
|
|
52428
52462
|
import React449, { useCallback as useCallback197, useMemo as useMemo180, useState as useState261 } from "react";
|
|
52429
|
-
import { Anchor as Anchor6, ActionIcon as
|
|
52463
|
+
import { Anchor as Anchor6, ActionIcon as ActionIcon62, Button as Button114, Collapse as Collapse16, CopyButton as CopyButton5, Group as Group184, Paper as Paper38, Stack as Stack326, Text as Text308, Tooltip as Tooltip40 } from "@mantine/core";
|
|
52430
52464
|
import { IconCheck as IconCheck60, IconCopy as IconCopy4, IconDownload as IconDownload6, IconEye, IconEyeOff, IconKey as IconKey5 } from "@tabler/icons-react";
|
|
52431
52465
|
var SENSITIVE_KEYS = /* @__PURE__ */ new Set(["mnemonic", "matrixPassword", "matrixRecoveryPhrase", "matrixAccessToken", "pin", "openRouterApiKeyJwe", "authToken"]);
|
|
52432
52466
|
var BLOCK_LABELS = {
|
|
@@ -52531,7 +52565,7 @@ function MaskedValue({ value, isSensitive }) {
|
|
|
52531
52565
|
if (!isSensitive) {
|
|
52532
52566
|
return /* @__PURE__ */ React449.createElement(Text308, { size: "xs", ff: "monospace", style: { wordBreak: "break-all" } }, String(value));
|
|
52533
52567
|
}
|
|
52534
|
-
return /* @__PURE__ */ React449.createElement(Group184, { gap: 4, align: "center", wrap: "nowrap" }, /* @__PURE__ */ React449.createElement(Text308, { size: "xs", ff: "monospace", style: { wordBreak: "break-all" } }, visible ? String(value) : "\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022"), /* @__PURE__ */ React449.createElement(
|
|
52568
|
+
return /* @__PURE__ */ React449.createElement(Group184, { gap: 4, align: "center", wrap: "nowrap" }, /* @__PURE__ */ React449.createElement(Text308, { size: "xs", ff: "monospace", style: { wordBreak: "break-all" } }, visible ? String(value) : "\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022"), /* @__PURE__ */ React449.createElement(ActionIcon62, { variant: "subtle", size: "xs", onClick: () => setVisible((v) => !v) }, visible ? /* @__PURE__ */ React449.createElement(IconEyeOff, { size: 12 }) : /* @__PURE__ */ React449.createElement(IconEye, { size: 12 })));
|
|
52535
52569
|
}
|
|
52536
52570
|
function OutputEntry({ label, value, isSensitive }) {
|
|
52537
52571
|
const displayValue = typeof value === "object" ? JSON.stringify(value, null, 2) : String(value ?? "");
|
|
@@ -52563,7 +52597,7 @@ function SecretsBlock({ editor, block }) {
|
|
|
52563
52597
|
if (docType === "template") {
|
|
52564
52598
|
return /* @__PURE__ */ React449.createElement(BaseContainer, { blockId: block.id }, /* @__PURE__ */ React449.createElement(Stack326, { gap: "xs" }, /* @__PURE__ */ React449.createElement(Group184, { gap: "xs", align: "center" }, /* @__PURE__ */ React449.createElement(IconKey5, { size: 18 }), /* @__PURE__ */ React449.createElement(Text308, { fw: 600, size: "sm" }, block.props.title || "Flow Output")), /* @__PURE__ */ React449.createElement(Text308, { size: "xs", c: "dimmed" }, "Displays all flow outputs and allows downloading them in flow mode.")));
|
|
52565
52599
|
}
|
|
52566
|
-
return /* @__PURE__ */ React449.createElement(BaseContainer, { blockId: block.id }, /* @__PURE__ */ React449.createElement(Stack326, { gap: "md" }, /* @__PURE__ */ React449.createElement(Group184, { gap: "xs", align: "center" }, /* @__PURE__ */ React449.createElement(IconKey5, { size: 18 }), /* @__PURE__ */ React449.createElement(Text308, { fw: 600, size: "sm" }, block.props.title || "Flow Output")), /* @__PURE__ */ React449.createElement(Text308, { size: "sm", c: "dimmed" }, "Everything produced by this flow. You can view it here or download as JSON."), connectUrl && /* @__PURE__ */ React449.createElement(Stack326, { gap: "xs" }, /* @__PURE__ */ React449.createElement(Text308, { size: "sm", fw: 500 }, "Oracle Connect Link"), /* @__PURE__ */ React449.createElement(Group184, { gap: "xs", align: "center" }, /* @__PURE__ */ React449.createElement(Anchor6, { href: connectUrl, target: "_blank", size: "sm", style: { wordBreak: "break-all" } }, connectUrl), /* @__PURE__ */ React449.createElement(CopyButton5, { value: connectUrl, timeout: 2e3 }, ({ copied, copy }) => /* @__PURE__ */ React449.createElement(
|
|
52600
|
+
return /* @__PURE__ */ React449.createElement(BaseContainer, { blockId: block.id }, /* @__PURE__ */ React449.createElement(Stack326, { gap: "md" }, /* @__PURE__ */ React449.createElement(Group184, { gap: "xs", align: "center" }, /* @__PURE__ */ React449.createElement(IconKey5, { size: 18 }), /* @__PURE__ */ React449.createElement(Text308, { fw: 600, size: "sm" }, block.props.title || "Flow Output")), /* @__PURE__ */ React449.createElement(Text308, { size: "sm", c: "dimmed" }, "Everything produced by this flow. You can view it here or download as JSON."), connectUrl && /* @__PURE__ */ React449.createElement(Stack326, { gap: "xs" }, /* @__PURE__ */ React449.createElement(Text308, { size: "sm", fw: 500 }, "Oracle Connect Link"), /* @__PURE__ */ React449.createElement(Group184, { gap: "xs", align: "center" }, /* @__PURE__ */ React449.createElement(Anchor6, { href: connectUrl, target: "_blank", size: "sm", style: { wordBreak: "break-all" } }, connectUrl), /* @__PURE__ */ React449.createElement(CopyButton5, { value: connectUrl, timeout: 2e3 }, ({ copied, copy }) => /* @__PURE__ */ React449.createElement(Tooltip40, { label: copied ? "Copied" : "Copy link", withArrow: true, position: "right" }, /* @__PURE__ */ React449.createElement(ActionIcon62, { color: copied ? "teal" : "gray", variant: "subtle", onClick: copy, size: "sm" }, copied ? /* @__PURE__ */ React449.createElement(IconCheck60, { size: 14 }) : /* @__PURE__ */ React449.createElement(IconCopy4, { size: 14 })))))), /* @__PURE__ */ React449.createElement(Group184, { gap: "xs" }, /* @__PURE__ */ React449.createElement(Button114, { variant: "light", size: "xs", leftSection: /* @__PURE__ */ React449.createElement(IconEye, { size: 14 }), onClick: () => setShowOutput((v) => !v) }, showOutput ? "Hide Output" : "View Output"), /* @__PURE__ */ React449.createElement(Button114, { variant: "filled", size: "sm", leftSection: /* @__PURE__ */ React449.createElement(IconDownload6, { size: 14 }), onClick: handleDownload, disabled: outputs.length === 0 }, "Download JSON")), /* @__PURE__ */ React449.createElement(Collapse16, { in: showOutput }, /* @__PURE__ */ React449.createElement(Stack326, { gap: "sm" }, outputs.length === 0 && /* @__PURE__ */ React449.createElement(Text308, { size: "xs", c: "dimmed", fs: "italic" }, "No outputs yet."), outputs.map(({ id, label, output }) => /* @__PURE__ */ React449.createElement(Paper38, { key: id, p: "xs", withBorder: true, style: { borderColor: "var(--mantine-color-neutralColor-6)" } }, /* @__PURE__ */ React449.createElement(Stack326, { gap: 4 }, /* @__PURE__ */ React449.createElement(Text308, { size: "xs", fw: 600 }, label), Object.entries(output).map(([key, value]) => /* @__PURE__ */ React449.createElement(OutputEntry, { key, label: key, value, isSensitive: SENSITIVE_KEYS.has(key) })))))))));
|
|
52567
52601
|
}
|
|
52568
52602
|
|
|
52569
52603
|
// src/mantine/blocks/secrets/SecretsBlockSpec.tsx
|
|
@@ -52630,7 +52664,7 @@ var SkillsTemplateView = ({ editor: _editor, block }) => {
|
|
|
52630
52664
|
};
|
|
52631
52665
|
|
|
52632
52666
|
// src/mantine/blocks/skills/flow/SkillsFlowView.tsx
|
|
52633
|
-
import { ActionIcon as
|
|
52667
|
+
import { ActionIcon as ActionIcon63, Badge as Badge68, Button as Button115, Collapse as Collapse17, Group as Group186, Loader as Loader104, Paper as Paper39, Stack as Stack328, Text as Text310, Tooltip as Tooltip41 } from "@mantine/core";
|
|
52634
52668
|
import { IconBrain as IconBrain3, IconCheck as IconCheck61, IconPencil as IconPencil5, IconPlus as IconPlus15, IconTrash as IconTrash17, IconX as IconX27 } from "@tabler/icons-react";
|
|
52635
52669
|
import React454, { useCallback as useCallback198, useEffect as useEffect191, useMemo as useMemo182, useRef as useRef66, useState as useState262 } from "react";
|
|
52636
52670
|
function parseSkills2(raw) {
|
|
@@ -52844,7 +52878,7 @@ var SkillsFlowView = ({ editor, block }) => {
|
|
|
52844
52878
|
option: { padding: "8px 12px" }
|
|
52845
52879
|
}
|
|
52846
52880
|
}
|
|
52847
|
-
) : null, skills.map((skill) => /* @__PURE__ */ React454.createElement(Paper39, { key: skill.cid, p: "xs", withBorder: true, style: { borderColor: "var(--mantine-color-neutralColor-6)" } }, /* @__PURE__ */ React454.createElement(Group186, { justify: "space-between", wrap: "nowrap" }, /* @__PURE__ */ React454.createElement(Stack328, { gap: 2, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React454.createElement(Group186, { gap: "xs", align: "center" }, /* @__PURE__ */ React454.createElement(Text310, { size: "xs", fw: 500 }, skill.name), /* @__PURE__ */ React454.createElement(Badge68, { size: "xs", variant: "light", color: "blue" }, "CID")), skill.description && /* @__PURE__ */ React454.createElement(Text310, { size: "xs", c: "dimmed", lineClamp: 2 }, skill.description), /* @__PURE__ */ React454.createElement(Text310, { size: "xs", c: "dimmed", ff: "monospace", lineClamp: 1 }, skill.cid)), !isCompleted && /* @__PURE__ */ React454.createElement(
|
|
52881
|
+
) : null, skills.map((skill) => /* @__PURE__ */ React454.createElement(Paper39, { key: skill.cid, p: "xs", withBorder: true, style: { borderColor: "var(--mantine-color-neutralColor-6)" } }, /* @__PURE__ */ React454.createElement(Group186, { justify: "space-between", wrap: "nowrap" }, /* @__PURE__ */ React454.createElement(Stack328, { gap: 2, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React454.createElement(Group186, { gap: "xs", align: "center" }, /* @__PURE__ */ React454.createElement(Text310, { size: "xs", fw: 500 }, skill.name), /* @__PURE__ */ React454.createElement(Badge68, { size: "xs", variant: "light", color: "blue" }, "CID")), skill.description && /* @__PURE__ */ React454.createElement(Text310, { size: "xs", c: "dimmed", lineClamp: 2 }, skill.description), /* @__PURE__ */ React454.createElement(Text310, { size: "xs", c: "dimmed", ff: "monospace", lineClamp: 1 }, skill.cid)), !isCompleted && /* @__PURE__ */ React454.createElement(ActionIcon63, { variant: "subtle", color: "red", size: "sm", onClick: () => updateSkills(skills.filter((s) => s.cid !== skill.cid)) }, /* @__PURE__ */ React454.createElement(IconX27, { size: 14 }))))), skills.length === 0 && !loadingCapsules && /* @__PURE__ */ React454.createElement(Text310, { size: "xs", c: "dimmed", fs: "italic" }, "No skills selected yet.")), /* @__PURE__ */ React454.createElement(Stack328, { gap: "xs" }, /* @__PURE__ */ React454.createElement(Group186, { justify: "space-between", align: "center" }, /* @__PURE__ */ React454.createElement(Text310, { size: "xs", fw: 500 }, "MCP Servers")), !isCompleted && mcpPresets.length > 0 && /* @__PURE__ */ React454.createElement(
|
|
52848
52882
|
BaseSelect,
|
|
52849
52883
|
{
|
|
52850
52884
|
placeholder: "Add from presets...",
|
|
@@ -52863,8 +52897,8 @@ var SkillsFlowView = ({ editor, block }) => {
|
|
|
52863
52897
|
), mcpServers.map((server, i) => {
|
|
52864
52898
|
const validation = validationResults[server.url];
|
|
52865
52899
|
const isValidating = validatingUrls[server.url];
|
|
52866
|
-
return /* @__PURE__ */ React454.createElement(Paper39, { key: i, p: "xs", withBorder: true, style: { borderColor: "var(--mantine-color-neutralColor-6)" } }, /* @__PURE__ */ React454.createElement(Group186, { justify: "space-between", wrap: "nowrap" }, /* @__PURE__ */ React454.createElement(Stack328, { gap: 2, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React454.createElement(Group186, { gap: "xs", align: "center" }, /* @__PURE__ */ React454.createElement(Text310, { size: "xs", fw: 500 }, server.name), validation && validation.success && /* @__PURE__ */ React454.createElement(Badge68, { size: "xs", variant: "light", color: "green", leftSection: /* @__PURE__ */ React454.createElement(IconCheck61, { size: 10 }) }, validation.toolCount, " tools")), server.description && /* @__PURE__ */ React454.createElement(Text310, { size: "xs", c: "dimmed", lineClamp: 1 }, server.description), /* @__PURE__ */ React454.createElement(Text310, { size: "xs", c: "dimmed", ff: "monospace", lineClamp: 1 }, server.url), validation && !validation.success && /* @__PURE__ */ React454.createElement(Text310, { size: "xs", c: "red" }, validation.error)), !isCompleted && /* @__PURE__ */ React454.createElement(Group186, { gap: 4 }, !server.isPreset && /* @__PURE__ */ React454.createElement(
|
|
52867
|
-
|
|
52900
|
+
return /* @__PURE__ */ React454.createElement(Paper39, { key: i, p: "xs", withBorder: true, style: { borderColor: "var(--mantine-color-neutralColor-6)" } }, /* @__PURE__ */ React454.createElement(Group186, { justify: "space-between", wrap: "nowrap" }, /* @__PURE__ */ React454.createElement(Stack328, { gap: 2, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React454.createElement(Group186, { gap: "xs", align: "center" }, /* @__PURE__ */ React454.createElement(Text310, { size: "xs", fw: 500 }, server.name), validation && validation.success && /* @__PURE__ */ React454.createElement(Badge68, { size: "xs", variant: "light", color: "green", leftSection: /* @__PURE__ */ React454.createElement(IconCheck61, { size: 10 }) }, validation.toolCount, " tools")), server.description && /* @__PURE__ */ React454.createElement(Text310, { size: "xs", c: "dimmed", lineClamp: 1 }, server.description), /* @__PURE__ */ React454.createElement(Text310, { size: "xs", c: "dimmed", ff: "monospace", lineClamp: 1 }, server.url), validation && !validation.success && /* @__PURE__ */ React454.createElement(Text310, { size: "xs", c: "red" }, validation.error)), !isCompleted && /* @__PURE__ */ React454.createElement(Group186, { gap: 4 }, !server.isPreset && /* @__PURE__ */ React454.createElement(Tooltip41, { label: "Test connection" }, /* @__PURE__ */ React454.createElement(Button115, { variant: "subtle", size: "compact-xs", onClick: () => handleValidateMcp(server.url), disabled: isValidating }, isValidating ? /* @__PURE__ */ React454.createElement(Loader104, { size: 12 }) : "Test")), /* @__PURE__ */ React454.createElement(
|
|
52901
|
+
ActionIcon63,
|
|
52868
52902
|
{
|
|
52869
52903
|
variant: "subtle",
|
|
52870
52904
|
size: "sm",
|
|
@@ -52877,7 +52911,7 @@ var SkillsFlowView = ({ editor, block }) => {
|
|
|
52877
52911
|
}
|
|
52878
52912
|
},
|
|
52879
52913
|
/* @__PURE__ */ React454.createElement(IconPencil5, { size: 14 })
|
|
52880
|
-
), /* @__PURE__ */ React454.createElement(
|
|
52914
|
+
), /* @__PURE__ */ React454.createElement(ActionIcon63, { variant: "subtle", color: "red", size: "sm", onClick: () => updateMcpServers(mcpServers.filter((_, idx) => idx !== i)) }, /* @__PURE__ */ React454.createElement(IconTrash17, { size: 14 })))));
|
|
52881
52915
|
}), !isCompleted && !showAddMcp && /* @__PURE__ */ React454.createElement(Button115, { variant: "light", size: "xs", leftSection: /* @__PURE__ */ React454.createElement(IconPlus15, { size: 14 }), onClick: () => setShowAddMcp(true) }, "Add MCP Server"), /* @__PURE__ */ React454.createElement(Collapse17, { in: showAddMcp }, /* @__PURE__ */ React454.createElement(Paper39, { p: "sm", withBorder: true, style: { borderColor: "var(--mantine-color-neutralColor-6)" } }, /* @__PURE__ */ React454.createElement(Stack328, { gap: "xs" }, /* @__PURE__ */ React454.createElement(BaseTextInput, { size: "xs", label: "Name", placeholder: "Server name", value: mcpName, onChange: (e) => setMcpName(e.currentTarget.value) }), /* @__PURE__ */ React454.createElement(BaseTextInput, { size: "xs", label: "URL", placeholder: "https://...", value: mcpUrl, onChange: (e) => setMcpUrl(e.currentTarget.value) }), /* @__PURE__ */ React454.createElement(
|
|
52882
52916
|
BaseTextInput,
|
|
52883
52917
|
{
|
|
@@ -55465,7 +55499,7 @@ import { useDisclosure as useDisclosure7 } from "@mantine/hooks";
|
|
|
55465
55499
|
|
|
55466
55500
|
// src/mantine/components/FlowSettingsPanel.tsx
|
|
55467
55501
|
import React461, { useState as useState269, useEffect as useEffect198, useCallback as useCallback202 } from "react";
|
|
55468
|
-
import { Stack as Stack330, Group as Group189, Button as Button116, ActionIcon as
|
|
55502
|
+
import { Stack as Stack330, Group as Group189, Button as Button116, ActionIcon as ActionIcon64, Text as Text313, Box as Box83 } from "@mantine/core";
|
|
55469
55503
|
import { IconPlus as IconPlus16, IconTrash as IconTrash18 } from "@tabler/icons-react";
|
|
55470
55504
|
var SYSTEM_KEYS = /* @__PURE__ */ new Set(["@context", "_type", "schema_version", "doc_id", "title", "createdAt", "createdBy", "flowOwnerDid"]);
|
|
55471
55505
|
var FlowSettingsPanel = ({ editor }) => {
|
|
@@ -55532,7 +55566,7 @@ var FlowSettingsPanel = ({ editor }) => {
|
|
|
55532
55566
|
[editor]
|
|
55533
55567
|
);
|
|
55534
55568
|
const subtitle = /* @__PURE__ */ React461.createElement(Box83, { px: 40, mb: "md" }, /* @__PURE__ */ React461.createElement(Text313, { size: "sm", c: "dimmed" }, "Add key-value settings for this flow. These are available to oracles and action blocks at runtime."));
|
|
55535
|
-
return /* @__PURE__ */ React461.createElement(BaseRightPanelLayout, { title: "Flow Details", onClose: closePanel, isTemplate: true, captionContent: subtitle }, /* @__PURE__ */ React461.createElement(Stack330, { gap: "lg" }, rows.map((row, index) => /* @__PURE__ */ React461.createElement(Stack330, { key: index, gap: "xs" }, /* @__PURE__ */ React461.createElement(Group189, { gap: "xs", align: "center", wrap: "nowrap" }, /* @__PURE__ */ React461.createElement(BaseTextInput, { placeholder: "Key (e.g. protocolDid)", value: row.key, onChange: (e) => handleKeyChange(index, e.currentTarget.value), style: { flex: 1 } }), /* @__PURE__ */ React461.createElement(
|
|
55569
|
+
return /* @__PURE__ */ React461.createElement(BaseRightPanelLayout, { title: "Flow Details", onClose: closePanel, isTemplate: true, captionContent: subtitle }, /* @__PURE__ */ React461.createElement(Stack330, { gap: "lg" }, rows.map((row, index) => /* @__PURE__ */ React461.createElement(Stack330, { key: index, gap: "xs" }, /* @__PURE__ */ React461.createElement(Group189, { gap: "xs", align: "center", wrap: "nowrap" }, /* @__PURE__ */ React461.createElement(BaseTextInput, { placeholder: "Key (e.g. protocolDid)", value: row.key, onChange: (e) => handleKeyChange(index, e.currentTarget.value), style: { flex: 1 } }), /* @__PURE__ */ React461.createElement(ActionIcon64, { variant: "subtle", color: "red", onClick: () => handleDelete(index), size: "lg" }, /* @__PURE__ */ React461.createElement(IconTrash18, { size: 16 }))), /* @__PURE__ */ React461.createElement(BaseTextArea, { placeholder: "Value", value: row.value, onChange: (e) => handleValueChange(index, e.currentTarget.value), minRows: 1, maxRows: 8 }))), /* @__PURE__ */ React461.createElement(Button116, { variant: "subtle", leftSection: /* @__PURE__ */ React461.createElement(IconPlus16, { size: 16 }), onClick: handleAdd, size: "sm" }, "Add detail")));
|
|
55536
55570
|
};
|
|
55537
55571
|
|
|
55538
55572
|
// src/mantine/components/CoverImage.tsx
|
|
@@ -57297,7 +57331,7 @@ var EntitySigningSetup = ({ opened, onClose, entityDid, entityName, onSetup }) =
|
|
|
57297
57331
|
|
|
57298
57332
|
// src/mantine/components/FlowPermissionsPanel.tsx
|
|
57299
57333
|
import React470, { useState as useState276, useEffect as useEffect205, useMemo as useMemo194 } from "react";
|
|
57300
|
-
import { Stack as Stack334, Text as Text317, Paper as Paper41, Group as Group193, Badge as Badge70, Button as Button119, ActionIcon as
|
|
57334
|
+
import { Stack as Stack334, Text as Text317, Paper as Paper41, Group as Group193, Badge as Badge70, Button as Button119, ActionIcon as ActionIcon65, Loader as Loader106, Alert as Alert62, Divider as Divider47 } from "@mantine/core";
|
|
57301
57335
|
import { IconPlus as IconPlus17, IconTrash as IconTrash20, IconShieldCheck as IconShieldCheck19, IconUser as IconUser17, IconRobot as IconRobot9, IconBuilding as IconBuilding2 } from "@tabler/icons-react";
|
|
57302
57336
|
var FlowPermissionsPanel = ({ editor, entityDid, entityName, onGrantPermission, onRevokePermission, getUserDisplayName }) => {
|
|
57303
57337
|
const [delegations, setDelegations] = useState276([]);
|
|
@@ -57379,12 +57413,12 @@ var FlowPermissionsPanel = ({ editor, entityDid, entityName, onGrantPermission,
|
|
|
57379
57413
|
if (date < /* @__PURE__ */ new Date()) return "Expired";
|
|
57380
57414
|
return date.toLocaleDateString();
|
|
57381
57415
|
};
|
|
57382
|
-
return /* @__PURE__ */ React470.createElement(Stack334, { gap: "md" }, /* @__PURE__ */ React470.createElement(Stack334, { gap: "xs" }, /* @__PURE__ */ React470.createElement(Text317, { fw: 600, size: "sm" }, "Root Authority"), /* @__PURE__ */ React470.createElement(Paper41, { p: "sm", withBorder: true }, /* @__PURE__ */ React470.createElement(Group193, { gap: "xs" }, /* @__PURE__ */ React470.createElement(IconShieldCheck19, { size: 20, color: "var(--mantine-color-green-6)" }), /* @__PURE__ */ React470.createElement(Stack334, { gap: 2, style: { flex: 1 } }, /* @__PURE__ */ React470.createElement(Text317, { size: "sm", fw: 500 }, entityName || entityDid), /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, rootDelegation ? `Granted: ${new Date(rootDelegation.createdAt).toLocaleDateString()}` : "Root capability not set up")), /* @__PURE__ */ React470.createElement(Badge70, { color: "green", variant: "light" }, "Entity")))), /* @__PURE__ */ React470.createElement(Divider47, { label: "Flow Permissions", labelPosition: "center" }), loading ? /* @__PURE__ */ React470.createElement(Group193, { justify: "center", py: "xl" }, /* @__PURE__ */ React470.createElement(Loader106, { size: "sm" })) : flowDelegations.length === 0 ? /* @__PURE__ */ React470.createElement(Alert62, { color: "gray", variant: "light" }, /* @__PURE__ */ React470.createElement(Text317, { size: "sm" }, "No flow permissions have been granted yet.")) : /* @__PURE__ */ React470.createElement(Stack334, { gap: "xs" }, flowDelegations.map(({ delegation, displayName, type }) => /* @__PURE__ */ React470.createElement(Paper41, { key: delegation.cid, p: "sm", withBorder: true }, /* @__PURE__ */ React470.createElement(Group193, { justify: "space-between" }, /* @__PURE__ */ React470.createElement(Group193, { gap: "xs" }, getIcon2(type), /* @__PURE__ */ React470.createElement(Stack334, { gap: 2 }, /* @__PURE__ */ React470.createElement(Text317, { size: "sm", fw: 500 }, displayName), /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, formatCapabilities(delegation.capabilities)), /* @__PURE__ */ React470.createElement(Group193, { gap: "xs" }, /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, "Expires: ", formatExpiration(delegation.expiration)), /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, "\u2022"), /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, "Granted by: ", delegation.issuerDid === entityDid ? "Entity" : delegation.issuerDid.slice(-8))))), /* @__PURE__ */ React470.createElement(
|
|
57416
|
+
return /* @__PURE__ */ React470.createElement(Stack334, { gap: "md" }, /* @__PURE__ */ React470.createElement(Stack334, { gap: "xs" }, /* @__PURE__ */ React470.createElement(Text317, { fw: 600, size: "sm" }, "Root Authority"), /* @__PURE__ */ React470.createElement(Paper41, { p: "sm", withBorder: true }, /* @__PURE__ */ React470.createElement(Group193, { gap: "xs" }, /* @__PURE__ */ React470.createElement(IconShieldCheck19, { size: 20, color: "var(--mantine-color-green-6)" }), /* @__PURE__ */ React470.createElement(Stack334, { gap: 2, style: { flex: 1 } }, /* @__PURE__ */ React470.createElement(Text317, { size: "sm", fw: 500 }, entityName || entityDid), /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, rootDelegation ? `Granted: ${new Date(rootDelegation.createdAt).toLocaleDateString()}` : "Root capability not set up")), /* @__PURE__ */ React470.createElement(Badge70, { color: "green", variant: "light" }, "Entity")))), /* @__PURE__ */ React470.createElement(Divider47, { label: "Flow Permissions", labelPosition: "center" }), loading ? /* @__PURE__ */ React470.createElement(Group193, { justify: "center", py: "xl" }, /* @__PURE__ */ React470.createElement(Loader106, { size: "sm" })) : flowDelegations.length === 0 ? /* @__PURE__ */ React470.createElement(Alert62, { color: "gray", variant: "light" }, /* @__PURE__ */ React470.createElement(Text317, { size: "sm" }, "No flow permissions have been granted yet.")) : /* @__PURE__ */ React470.createElement(Stack334, { gap: "xs" }, flowDelegations.map(({ delegation, displayName, type }) => /* @__PURE__ */ React470.createElement(Paper41, { key: delegation.cid, p: "sm", withBorder: true }, /* @__PURE__ */ React470.createElement(Group193, { justify: "space-between" }, /* @__PURE__ */ React470.createElement(Group193, { gap: "xs" }, getIcon2(type), /* @__PURE__ */ React470.createElement(Stack334, { gap: 2 }, /* @__PURE__ */ React470.createElement(Text317, { size: "sm", fw: 500 }, displayName), /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, formatCapabilities(delegation.capabilities)), /* @__PURE__ */ React470.createElement(Group193, { gap: "xs" }, /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, "Expires: ", formatExpiration(delegation.expiration)), /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, "\u2022"), /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, "Granted by: ", delegation.issuerDid === entityDid ? "Entity" : delegation.issuerDid.slice(-8))))), /* @__PURE__ */ React470.createElement(ActionIcon65, { color: "red", variant: "subtle", onClick: () => handleRevoke(delegation.cid), loading: revoking === delegation.cid, disabled: !!revoking }, /* @__PURE__ */ React470.createElement(IconTrash20, { size: 16 })))))), /* @__PURE__ */ React470.createElement(Divider47, { label: "Custom Capabilities", labelPosition: "center" }), !loading && customDelegations.length === 0 ? /* @__PURE__ */ React470.createElement(Alert62, { color: "gray", variant: "light" }, /* @__PURE__ */ React470.createElement(Text317, { size: "sm" }, "No custom capabilities have been created yet.")) : /* @__PURE__ */ React470.createElement(Stack334, { gap: "xs" }, customDelegations.map(({ delegation, displayName, type }) => /* @__PURE__ */ React470.createElement(Paper41, { key: delegation.cid, p: "sm", withBorder: true, style: { borderColor: "var(--mantine-color-violet-4)" } }, /* @__PURE__ */ React470.createElement(Group193, { justify: "space-between" }, /* @__PURE__ */ React470.createElement(Group193, { gap: "xs" }, getIcon2(type), /* @__PURE__ */ React470.createElement(Stack334, { gap: 2 }, /* @__PURE__ */ React470.createElement(Group193, { gap: "xs" }, /* @__PURE__ */ React470.createElement(Text317, { size: "sm", fw: 500 }, displayName), /* @__PURE__ */ React470.createElement(Badge70, { size: "xs", variant: "light", color: "violet" }, "custom")), /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, formatCapabilities(delegation.capabilities)), /* @__PURE__ */ React470.createElement(Group193, { gap: "xs" }, /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, "Expires: ", formatExpiration(delegation.expiration)), /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, "\u2022"), /* @__PURE__ */ React470.createElement(Text317, { size: "xs", c: "dimmed" }, "Issued by: ", delegation.issuerDid.slice(-12))))), /* @__PURE__ */ React470.createElement(ActionIcon65, { color: "red", variant: "subtle", onClick: () => handleRevoke(delegation.cid), loading: revoking === delegation.cid, disabled: !!revoking }, /* @__PURE__ */ React470.createElement(IconTrash20, { size: 16 })))))), /* @__PURE__ */ React470.createElement(Button119, { leftSection: /* @__PURE__ */ React470.createElement(IconPlus17, { size: 16 }), variant: "light", onClick: onGrantPermission }, "Grant Permission"));
|
|
57383
57417
|
};
|
|
57384
57418
|
|
|
57385
57419
|
// src/mantine/components/GrantPermissionModal.tsx
|
|
57386
57420
|
import React471, { useState as useState277, useCallback as useCallback206 } from "react";
|
|
57387
|
-
import { Modal as Modal9, Stack as Stack335, Text as Text318, TextInput as TextInput13, Button as Button120, Group as Group194, Radio as Radio7, Checkbox as Checkbox19, Alert as Alert63, Paper as Paper42, Loader as Loader107, Badge as Badge71, ActionIcon as
|
|
57421
|
+
import { Modal as Modal9, Stack as Stack335, Text as Text318, TextInput as TextInput13, Button as Button120, Group as Group194, Radio as Radio7, Checkbox as Checkbox19, Alert as Alert63, Paper as Paper42, Loader as Loader107, Badge as Badge71, ActionIcon as ActionIcon66, Divider as Divider48, NumberInput as NumberInput16 } from "@mantine/core";
|
|
57388
57422
|
import { IconSearch as IconSearch12, IconUser as IconUser18, IconRobot as IconRobot10, IconX as IconX29, IconShieldPlus as IconShieldPlus5 } from "@tabler/icons-react";
|
|
57389
57423
|
var GrantPermissionModal = ({ opened, onClose, flowUri, blocks, targetBlockId, searchUsers, getOracles, onGrant }) => {
|
|
57390
57424
|
const singleBlockMode = !!targetBlockId || blocks.length === 1;
|
|
@@ -57520,7 +57554,7 @@ var GrantPermissionModal = ({ opened, onClose, flowUri, blocks, targetBlockId, s
|
|
|
57520
57554
|
onChange: (e) => setSearchQuery(e.currentTarget.value),
|
|
57521
57555
|
onKeyDown: (e) => e.key === "Enter" && handleSearch()
|
|
57522
57556
|
}
|
|
57523
|
-
), selectedRecipient ? /* @__PURE__ */ React471.createElement(Paper42, { p: "sm", withBorder: true }, /* @__PURE__ */ React471.createElement(Group194, { justify: "space-between" }, /* @__PURE__ */ React471.createElement(Group194, { gap: "xs" }, recipientType === "oracle" ? /* @__PURE__ */ React471.createElement(IconRobot10, { size: 16 }) : /* @__PURE__ */ React471.createElement(IconUser18, { size: 16 }), /* @__PURE__ */ React471.createElement(Text318, { size: "sm" }, selectedRecipient.displayName), /* @__PURE__ */ React471.createElement(Badge71, { size: "xs", variant: "light" }, selectedRecipient.did.slice(-12))), /* @__PURE__ */ React471.createElement(
|
|
57557
|
+
), selectedRecipient ? /* @__PURE__ */ React471.createElement(Paper42, { p: "sm", withBorder: true }, /* @__PURE__ */ React471.createElement(Group194, { justify: "space-between" }, /* @__PURE__ */ React471.createElement(Group194, { gap: "xs" }, recipientType === "oracle" ? /* @__PURE__ */ React471.createElement(IconRobot10, { size: 16 }) : /* @__PURE__ */ React471.createElement(IconUser18, { size: 16 }), /* @__PURE__ */ React471.createElement(Text318, { size: "sm" }, selectedRecipient.displayName), /* @__PURE__ */ React471.createElement(Badge71, { size: "xs", variant: "light" }, selectedRecipient.did.slice(-12))), /* @__PURE__ */ React471.createElement(ActionIcon66, { size: "sm", variant: "subtle", onClick: () => setSelectedRecipient(null) }, /* @__PURE__ */ React471.createElement(IconX29, { size: 14 })))) : searchResults.length > 0 ? /* @__PURE__ */ React471.createElement(Paper42, { p: "xs", withBorder: true, style: { maxHeight: 150, overflow: "auto" } }, /* @__PURE__ */ React471.createElement(Stack335, { gap: 4 }, searchResults.map((result) => /* @__PURE__ */ React471.createElement(Button120, { key: result.did, variant: "subtle", size: "sm", justify: "flex-start", onClick: () => setSelectedRecipient(result) }, result.displayName)))) : null) : /* @__PURE__ */ React471.createElement(TextInput13, { label: "Recipient DID", placeholder: "did:ixo:...", value: manualDid, onChange: (e) => setManualDid(e.currentTarget.value) }), /* @__PURE__ */ React471.createElement(Divider48, null), /* @__PURE__ */ React471.createElement(Stack335, { gap: "xs" }, /* @__PURE__ */ React471.createElement(Text318, { size: "sm", fw: 500 }, "Permission Scope"), singleBlockMode && fixedBlock ? (
|
|
57524
57558
|
// Single block mode: show fixed block info
|
|
57525
57559
|
/* @__PURE__ */ React471.createElement(Paper42, { p: "sm", withBorder: true }, /* @__PURE__ */ React471.createElement(Group194, { gap: "xs" }, /* @__PURE__ */ React471.createElement(Badge71, { variant: "light", color: "blue" }, fixedBlock.type), /* @__PURE__ */ React471.createElement(Text318, { size: "sm" }, fixedBlock.name || `Block ${fixedBlock.id.slice(-8)}`)), /* @__PURE__ */ React471.createElement(Text318, { size: "xs", c: "dimmed", mt: "xs" }, "Permission will be granted to execute this specific block."))
|
|
57526
57560
|
) : (
|
|
@@ -57700,4 +57734,4 @@ export {
|
|
|
57700
57734
|
ixoGraphQLClient,
|
|
57701
57735
|
getEntity
|
|
57702
57736
|
};
|
|
57703
|
-
//# sourceMappingURL=chunk-
|
|
57737
|
+
//# sourceMappingURL=chunk-RFTH7IX3.js.map
|