@shuffleio/shuffle-mcps 0.0.18 → 0.0.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +35 -22
- package/dist/index.d.ts +35 -22
- package/dist/index.js +148 -73
- package/dist/index.mjs +151 -76
- package/dist/{shuffle-mcp-CN72CJJQ.css → shuffle-mcp-ER33P3W2.css} +62 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -448,14 +448,31 @@ __export(index_exports, {
|
|
|
448
448
|
useSyncHostBaseUrl: () => useSyncHostBaseUrl
|
|
449
449
|
});
|
|
450
450
|
module.exports = __toCommonJS(index_exports);
|
|
451
|
-
var import_shuffle_mcp2 = require("./shuffle-mcp-
|
|
451
|
+
var import_shuffle_mcp2 = require("./shuffle-mcp-ER33P3W2.css");
|
|
452
452
|
var import_react20 = __toESM(require("react"));
|
|
453
453
|
|
|
454
454
|
// ShuffleMcpThemeProvider.tsx
|
|
455
455
|
var import_react = __toESM(require("react"));
|
|
456
456
|
var import_material = require("@mui/material");
|
|
457
457
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
458
|
-
var
|
|
458
|
+
var readHtmlDarkClass = () => {
|
|
459
|
+
if (typeof document === "undefined") return false;
|
|
460
|
+
return document.documentElement.classList.contains("dark");
|
|
461
|
+
};
|
|
462
|
+
var useHtmlDarkClass = (enabled) => {
|
|
463
|
+
const [isDark, setIsDark] = import_react.default.useState(() => enabled ? readHtmlDarkClass() : false);
|
|
464
|
+
import_react.default.useEffect(() => {
|
|
465
|
+
if (!enabled || typeof document === "undefined") return;
|
|
466
|
+
setIsDark(readHtmlDarkClass());
|
|
467
|
+
const observer = new MutationObserver(() => setIsDark(readHtmlDarkClass()));
|
|
468
|
+
observer.observe(document.documentElement, { attributes: true, attributeFilter: ["class"] });
|
|
469
|
+
return () => observer.disconnect();
|
|
470
|
+
}, [enabled]);
|
|
471
|
+
return isDark;
|
|
472
|
+
};
|
|
473
|
+
var ShuffleMcpThemeContext = import_react.default.createContext(null);
|
|
474
|
+
var useShuffleMcpTheme = () => import_react.default.useContext(ShuffleMcpThemeContext);
|
|
475
|
+
var buildComponentOverrides = (scopeClassName) => ({
|
|
459
476
|
MuiTextField: { defaultProps: { size: "small" } },
|
|
460
477
|
MuiButton: { defaultProps: { size: "small" } },
|
|
461
478
|
MuiFormControl: { defaultProps: { size: "small" } },
|
|
@@ -497,7 +514,15 @@ var componentOverrides = {
|
|
|
497
514
|
}
|
|
498
515
|
}
|
|
499
516
|
},
|
|
517
|
+
// ---- Portaled surfaces: stamp scopeClassName so HSL tokens resolve ----
|
|
518
|
+
MuiDrawer: {
|
|
519
|
+
defaultProps: { slotProps: { paper: { className: scopeClassName } } }
|
|
520
|
+
},
|
|
521
|
+
MuiDialog: {
|
|
522
|
+
defaultProps: { slotProps: { paper: { className: scopeClassName } } }
|
|
523
|
+
},
|
|
500
524
|
MuiMenu: {
|
|
525
|
+
defaultProps: { slotProps: { paper: { className: scopeClassName } } },
|
|
501
526
|
styleOverrides: {
|
|
502
527
|
paper: {
|
|
503
528
|
backgroundColor: "hsl(var(--popover))",
|
|
@@ -507,6 +532,7 @@ var componentOverrides = {
|
|
|
507
532
|
}
|
|
508
533
|
},
|
|
509
534
|
MuiPopover: {
|
|
535
|
+
defaultProps: { slotProps: { paper: { className: scopeClassName } } },
|
|
510
536
|
styleOverrides: {
|
|
511
537
|
paper: {
|
|
512
538
|
backgroundColor: "hsl(var(--popover))",
|
|
@@ -515,32 +541,23 @@ var componentOverrides = {
|
|
|
515
541
|
}
|
|
516
542
|
}
|
|
517
543
|
},
|
|
544
|
+
MuiTooltip: {
|
|
545
|
+
defaultProps: { slotProps: { tooltip: { className: scopeClassName } } }
|
|
546
|
+
},
|
|
518
547
|
MuiDivider: {
|
|
519
548
|
styleOverrides: { root: { borderColor: "hsl(var(--border))" } }
|
|
520
549
|
}
|
|
521
|
-
};
|
|
522
|
-
var readHtmlDarkClass = () => {
|
|
523
|
-
if (typeof document === "undefined") return false;
|
|
524
|
-
return document.documentElement.classList.contains("dark");
|
|
525
|
-
};
|
|
526
|
-
var useHtmlDarkClass = (enabled) => {
|
|
527
|
-
const [isDark, setIsDark] = import_react.default.useState(() => enabled ? readHtmlDarkClass() : false);
|
|
528
|
-
import_react.default.useEffect(() => {
|
|
529
|
-
if (!enabled || typeof document === "undefined") return;
|
|
530
|
-
setIsDark(readHtmlDarkClass());
|
|
531
|
-
const observer = new MutationObserver(() => setIsDark(readHtmlDarkClass()));
|
|
532
|
-
observer.observe(document.documentElement, { attributes: true, attributeFilter: ["class"] });
|
|
533
|
-
return () => observer.disconnect();
|
|
534
|
-
}, [enabled]);
|
|
535
|
-
return isDark;
|
|
536
|
-
};
|
|
550
|
+
});
|
|
537
551
|
var ShuffleMcpThemeProvider = ({
|
|
538
552
|
children,
|
|
539
|
-
mode = "
|
|
553
|
+
mode = "auto"
|
|
540
554
|
}) => {
|
|
541
555
|
const parent = (0, import_material.useTheme)();
|
|
556
|
+
const parentCtx = useShuffleMcpTheme();
|
|
542
557
|
const htmlIsDark = useHtmlDarkClass(mode === "auto");
|
|
543
558
|
const effectiveDark = mode === "auto" ? htmlIsDark : mode === "dark";
|
|
559
|
+
const sameAsParent = parentCtx !== null && parentCtx.isDark === effectiveDark;
|
|
560
|
+
const scopeClassName = effectiveDark ? "shuffle-mcp-scope dark" : "shuffle-mcp-scope";
|
|
544
561
|
const merged = import_react.default.useMemo(
|
|
545
562
|
() => (0, import_material.createTheme)({
|
|
546
563
|
...parent,
|
|
@@ -550,25 +567,27 @@ var ShuffleMcpThemeProvider = ({
|
|
|
550
567
|
},
|
|
551
568
|
components: {
|
|
552
569
|
...parent.components,
|
|
553
|
-
...
|
|
570
|
+
...buildComponentOverrides(scopeClassName)
|
|
554
571
|
}
|
|
555
572
|
}),
|
|
556
|
-
[parent, effectiveDark]
|
|
573
|
+
[parent, effectiveDark, scopeClassName]
|
|
574
|
+
);
|
|
575
|
+
const ctxValue = import_react.default.useMemo(
|
|
576
|
+
() => ({ mode, isDark: effectiveDark, scopeClassName }),
|
|
577
|
+
[mode, effectiveDark, scopeClassName]
|
|
557
578
|
);
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
if (mode === "light" || mode === "dark") {
|
|
561
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: scopeClassName, "data-shuffle-mode": mode, "data-shuffle-mcp-root": true, children: tree });
|
|
579
|
+
if (sameAsParent) {
|
|
580
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ShuffleMcpThemeContext.Provider, { value: ctxValue, children });
|
|
562
581
|
}
|
|
563
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className:
|
|
582
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ShuffleMcpThemeContext.Provider, { value: ctxValue, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_material.ThemeProvider, { theme: merged, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: scopeClassName, "data-shuffle-mode": mode, "data-shuffle-mcp-root": true, children }) }) });
|
|
564
583
|
};
|
|
565
584
|
|
|
566
|
-
// ShuffleMCP.tsx
|
|
585
|
+
// views/ShuffleMCP.tsx
|
|
567
586
|
var import_react12 = __toESM(require("react"));
|
|
568
587
|
var import_algoliasearch = require("algoliasearch");
|
|
569
588
|
var import_material10 = require("@mui/material");
|
|
570
589
|
|
|
571
|
-
// AppDetailDrawer.tsx
|
|
590
|
+
// views/AppDetailDrawer.tsx
|
|
572
591
|
var import_react10 = require("react");
|
|
573
592
|
|
|
574
593
|
// toast.ts
|
|
@@ -593,7 +612,7 @@ base.info = (msg, opts) => _impl({ title: msg, description: opts?.description, v
|
|
|
593
612
|
base.warning = (msg, opts) => _impl({ title: msg, description: opts?.description, variant: "warning" }, opts);
|
|
594
613
|
var toast = base;
|
|
595
614
|
|
|
596
|
-
// AppDetailDrawer.tsx
|
|
615
|
+
// views/AppDetailDrawer.tsx
|
|
597
616
|
var import_lucide_react6 = require("lucide-react");
|
|
598
617
|
|
|
599
618
|
// datastore.ts
|
|
@@ -1030,7 +1049,7 @@ var DATASTORE_CATEGORIES = {
|
|
|
1030
1049
|
LEGACY_CASES: "shuffle-security_cases"
|
|
1031
1050
|
};
|
|
1032
1051
|
|
|
1033
|
-
// AppDetailDrawer.tsx
|
|
1052
|
+
// views/AppDetailDrawer.tsx
|
|
1034
1053
|
var import_material9 = require("@mui/material");
|
|
1035
1054
|
var import_react_markdown3 = __toESM(require("react-markdown"));
|
|
1036
1055
|
var import_remark_gfm3 = __toESM(require("remark-gfm"));
|
|
@@ -1040,7 +1059,7 @@ var import_framer_motion6 = require("framer-motion");
|
|
|
1040
1059
|
var import_react4 = require("react");
|
|
1041
1060
|
init_api();
|
|
1042
1061
|
|
|
1043
|
-
// IntegrationStatus.tsx
|
|
1062
|
+
// components/IntegrationStatus.tsx
|
|
1044
1063
|
var import_react3 = require("react");
|
|
1045
1064
|
var import_lucide_react = require("lucide-react");
|
|
1046
1065
|
var import_material2 = require("@mui/material");
|
|
@@ -1096,7 +1115,7 @@ var fetchAuthenticatedApps = (crossOrgId) => {
|
|
|
1096
1115
|
return promise;
|
|
1097
1116
|
};
|
|
1098
1117
|
|
|
1099
|
-
// IntegrationStatus.tsx
|
|
1118
|
+
// components/IntegrationStatus.tsx
|
|
1100
1119
|
init_appsCache();
|
|
1101
1120
|
|
|
1102
1121
|
// auth-utils.ts
|
|
@@ -1319,7 +1338,7 @@ function extractValidatedIngestionApps(authApiResponse, workflowAppNames) {
|
|
|
1319
1338
|
return apps;
|
|
1320
1339
|
}
|
|
1321
1340
|
|
|
1322
|
-
// IntegrationStatus.tsx
|
|
1341
|
+
// components/IntegrationStatus.tsx
|
|
1323
1342
|
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
1324
1343
|
var ONBOARDING_CONFIG_CATEGORY = "shuffle-security_onboarding";
|
|
1325
1344
|
var SELECTED_TOOLS_KEY = "selected_tools";
|
|
@@ -1969,11 +1988,11 @@ function useAppAuth() {
|
|
|
1969
1988
|
};
|
|
1970
1989
|
}
|
|
1971
1990
|
|
|
1972
|
-
// AppDetailDrawer.tsx
|
|
1991
|
+
// views/AppDetailDrawer.tsx
|
|
1973
1992
|
init_api();
|
|
1974
1993
|
init_appsCache();
|
|
1975
1994
|
|
|
1976
|
-
// AppTitleHeader.tsx
|
|
1995
|
+
// components/AppTitleHeader.tsx
|
|
1977
1996
|
var import_material3 = require("@mui/material");
|
|
1978
1997
|
var import_lucide_react2 = require("lucide-react");
|
|
1979
1998
|
var import_framer_motion = require("framer-motion");
|
|
@@ -2101,17 +2120,17 @@ function AppTitleHeader({
|
|
|
2101
2120
|
) });
|
|
2102
2121
|
}
|
|
2103
2122
|
|
|
2104
|
-
// AppAuthSection.tsx
|
|
2123
|
+
// components/AppAuthSection.tsx
|
|
2105
2124
|
var import_material5 = require("@mui/material");
|
|
2106
2125
|
var import_framer_motion3 = require("framer-motion");
|
|
2107
2126
|
|
|
2108
|
-
// AppAuthConfig.tsx
|
|
2127
|
+
// components/AppAuthConfig.tsx
|
|
2109
2128
|
var import_react6 = require("react");
|
|
2110
2129
|
var import_lucide_react3 = require("lucide-react");
|
|
2111
2130
|
var import_material4 = require("@mui/material");
|
|
2112
2131
|
var import_framer_motion2 = require("framer-motion");
|
|
2113
2132
|
|
|
2114
|
-
// AppFallbackIcon.tsx
|
|
2133
|
+
// components/AppFallbackIcon.tsx
|
|
2115
2134
|
var import_react5 = require("react");
|
|
2116
2135
|
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
2117
2136
|
var norm = (s) => s.toLowerCase().replace(/[\s_\-]+/g, "_");
|
|
@@ -2257,7 +2276,7 @@ var AppFallbackIcon = ({
|
|
|
2257
2276
|
);
|
|
2258
2277
|
};
|
|
2259
2278
|
|
|
2260
|
-
// AppAuthConfig.tsx
|
|
2279
|
+
// components/AppAuthConfig.tsx
|
|
2261
2280
|
init_api();
|
|
2262
2281
|
var import_react_markdown = __toESM(require("react-markdown"));
|
|
2263
2282
|
var import_remark_gfm = __toESM(require("remark-gfm"));
|
|
@@ -4114,7 +4133,7 @@ var AppAuthConfig = ({
|
|
|
4114
4133
|
] });
|
|
4115
4134
|
};
|
|
4116
4135
|
|
|
4117
|
-
// AppAuthSection.tsx
|
|
4136
|
+
// components/AppAuthSection.tsx
|
|
4118
4137
|
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
4119
4138
|
function AppAuthSection({
|
|
4120
4139
|
displayName,
|
|
@@ -4151,11 +4170,11 @@ function AppAuthSection({
|
|
|
4151
4170
|
] }) });
|
|
4152
4171
|
}
|
|
4153
4172
|
|
|
4154
|
-
// TryMcpSection.tsx
|
|
4173
|
+
// views/TryMcpSection.tsx
|
|
4155
4174
|
var import_material7 = require("@mui/material");
|
|
4156
4175
|
var import_framer_motion5 = require("framer-motion");
|
|
4157
4176
|
|
|
4158
|
-
// AppMcpChat.tsx
|
|
4177
|
+
// views/AppMcpChat.tsx
|
|
4159
4178
|
var import_react7 = require("react");
|
|
4160
4179
|
var import_lucide_react4 = require("lucide-react");
|
|
4161
4180
|
var import_material6 = require("@mui/material");
|
|
@@ -4163,7 +4182,7 @@ var import_material6 = require("@mui/material");
|
|
|
4163
4182
|
// ../assets/singul-agent-icon.png
|
|
4164
4183
|
var singul_agent_icon_default = "data:image/png;base64,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";
|
|
4165
4184
|
|
|
4166
|
-
// AgentIcon.tsx
|
|
4185
|
+
// components/AgentIcon.tsx
|
|
4167
4186
|
var import_jsx_runtime8 = require("react/jsx-runtime");
|
|
4168
4187
|
var AgentIcon = ({ size = 16, className, style }) => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
4169
4188
|
"img",
|
|
@@ -4178,7 +4197,7 @@ var AgentIcon = ({ size = 16, className, style }) => /* @__PURE__ */ (0, import_
|
|
|
4178
4197
|
);
|
|
4179
4198
|
var AgentIcon_default = AgentIcon;
|
|
4180
4199
|
|
|
4181
|
-
// AppMcpChat.tsx
|
|
4200
|
+
// views/AppMcpChat.tsx
|
|
4182
4201
|
var import_framer_motion4 = require("framer-motion");
|
|
4183
4202
|
var import_react_markdown2 = __toESM(require("react-markdown"));
|
|
4184
4203
|
var import_remark_gfm2 = __toESM(require("remark-gfm"));
|
|
@@ -4753,7 +4772,7 @@ ${JSON.stringify(data, null, 2)}
|
|
|
4753
4772
|
};
|
|
4754
4773
|
var AppMcpChat_default = AppMcpChat;
|
|
4755
4774
|
|
|
4756
|
-
// TryMcpSection.tsx
|
|
4775
|
+
// views/TryMcpSection.tsx
|
|
4757
4776
|
var import_jsx_runtime10 = require("react/jsx-runtime");
|
|
4758
4777
|
function TryMcpSection({ appName, appIcon, appId, categories }) {
|
|
4759
4778
|
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_framer_motion5.motion.div, { initial: { opacity: 0, y: 12 }, animate: { opacity: 1, y: 0 }, transition: { duration: 0.3, delay: 0.15 }, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(import_material7.Box, { sx: { mt: 5, mb: 3 }, children: [
|
|
@@ -4770,7 +4789,7 @@ function TryMcpSection({ appName, appIcon, appId, categories }) {
|
|
|
4770
4789
|
] }) });
|
|
4771
4790
|
}
|
|
4772
4791
|
|
|
4773
|
-
// SingulActionsPreview.tsx
|
|
4792
|
+
// components/SingulActionsPreview.tsx
|
|
4774
4793
|
var import_react8 = require("react");
|
|
4775
4794
|
var import_material8 = require("@mui/material");
|
|
4776
4795
|
var import_lucide_react5 = require("lucide-react");
|
|
@@ -5570,7 +5589,7 @@ var SingulActionsPreview = ({
|
|
|
5570
5589
|
};
|
|
5571
5590
|
var SingulActionsPreview_default = SingulActionsPreview;
|
|
5572
5591
|
|
|
5573
|
-
// AppDetailDrawer.tsx
|
|
5592
|
+
// views/AppDetailDrawer.tsx
|
|
5574
5593
|
var import_jsx_runtime12 = require("react/jsx-runtime");
|
|
5575
5594
|
function AppDetailDrawer({
|
|
5576
5595
|
open,
|
|
@@ -5942,11 +5961,11 @@ function AppDetailDrawer({
|
|
|
5942
5961
|
);
|
|
5943
5962
|
}
|
|
5944
5963
|
|
|
5945
|
-
// ShuffleMCP.tsx
|
|
5946
|
-
var import_shuffle_mcp = require("./shuffle-mcp-
|
|
5964
|
+
// views/ShuffleMCP.tsx
|
|
5965
|
+
var import_shuffle_mcp = require("./shuffle-mcp-ER33P3W2.css");
|
|
5947
5966
|
init_appsCache();
|
|
5948
5967
|
|
|
5949
|
-
// SegmentedControl.tsx
|
|
5968
|
+
// components/SegmentedControl.tsx
|
|
5950
5969
|
var React2 = __toESM(require("react"));
|
|
5951
5970
|
var import_framer_motion7 = require("framer-motion");
|
|
5952
5971
|
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
@@ -6153,7 +6172,7 @@ var useSyncHostBaseUrl = (globalUrl) => {
|
|
|
6153
6172
|
}, [globalUrl]);
|
|
6154
6173
|
};
|
|
6155
6174
|
|
|
6156
|
-
// ShuffleMCP.tsx
|
|
6175
|
+
// views/ShuffleMCP.tsx
|
|
6157
6176
|
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
6158
6177
|
var DEFAULT_ALGOLIA_APP_ID = "JNSS5CFDZZ";
|
|
6159
6178
|
var DEFAULT_ALGOLIA_API_KEY = "33e4e3564f4f060e96e0531957bed552";
|
|
@@ -6692,7 +6711,7 @@ var ShuffleMCP = import_react12.default.forwardRef(({
|
|
|
6692
6711
|
});
|
|
6693
6712
|
ShuffleMCP.displayName = "ShuffleMCP";
|
|
6694
6713
|
|
|
6695
|
-
// AppSearchDrawer.tsx
|
|
6714
|
+
// views/AppSearchDrawer.tsx
|
|
6696
6715
|
var import_react13 = require("react");
|
|
6697
6716
|
var import_lucide_react7 = require("lucide-react");
|
|
6698
6717
|
var import_material11 = require("@mui/material");
|
|
@@ -7102,7 +7121,7 @@ function AppSearchDrawer({
|
|
|
7102
7121
|
] });
|
|
7103
7122
|
}
|
|
7104
7123
|
|
|
7105
|
-
// AiAgentPromptsEditor.tsx
|
|
7124
|
+
// components/AiAgentPromptsEditor.tsx
|
|
7106
7125
|
var import_material12 = require("@mui/material");
|
|
7107
7126
|
var import_lucide_react8 = require("lucide-react");
|
|
7108
7127
|
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
@@ -7295,13 +7314,13 @@ var AiAgentPromptsEditor = ({
|
|
|
7295
7314
|
};
|
|
7296
7315
|
var AiAgentPromptsEditor_default = AiAgentPromptsEditor;
|
|
7297
7316
|
|
|
7298
|
-
// ShufflePipelinesBanner.tsx
|
|
7317
|
+
// components/ShufflePipelinesBanner.tsx
|
|
7299
7318
|
var import_material13 = require("@mui/material");
|
|
7300
7319
|
|
|
7301
7320
|
// ../assets/shuffle-icon.png
|
|
7302
7321
|
var shuffle_icon_default = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAYAAADnRuK4AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAkKADAAQAAAABAAAAkAAAAAA/PwqIAAAk1klEQVR4Ae1da6xcV3XeM/fhZ+xrO7YDIck1cUIwEJuKpCqExEhQSFTaQFpVVUuAP61SKkEQ/IPG7o9WKggVtajtD9oUSquSEviBqKhayIPQKmmIA42DaIgf5OHYTmzH9rVzHzP9vrX23mefM+c9Z2bude62zz17r71ee63vrrPnzNwzLdNA63a7U1Bzq+mYnaZtptHfhYM0Htmti6lW9vQwZ2q5UkaoDE/KQmuKpWjypIPo8diH43Ec97VaLY77arXTZ0HzcVjfbQ/rSJ2ll5cpz2nduRBPzQWBYPoijtpgqgygADifgOH8ClMxealxSSUWKa4lVKS09rz3xndqqxqk4N1QvrdqVaoEIIDnLhhpHDiDjMqFoHvIuNsDEO0tG7dSAAJwpqHwmzh2lVVcmW/IUUr6V998fcmkD8Mal/D4IHx5V5lq1C5yGuD5MHgewzE48NCJUlAm42BaffP1JQezkmKtJTyehpbHkPtbi7TlAshesu6GkilD2C63chG4MGI1hcV+02Igc92ZYLSCezIllyeqRyDl2pFCqq538BKZ+6JUANnSxT3PCNoSCWnFyIx6VQ3Y/wj2RP+QXHYPgACeaTBxz8MSFrUsD7LokeRyr+kI1Ip5LaHQ85MYvDW5sU4D0AGYmqZky9v0HZKXW1EE+gxXn+L53vWnfB8A9NbQQGwTbfc900SVIMvDy3dC2eV+VgT6DFef4lleKb0/5buAkT2hAa/OXroOhJPL/XIRCH+pw75I9xCSOgsZkgLDHfe418WlrLUNlYiXNLz1GbW7ou5yr0oE/G8hhMK+6OghJDUXMiQFhjvuca/FvfEnnBMyXar6hEhEvwvJHt1O6/J59BEI89WnNymqWH2kCrkKtLvQRoiWxQYerjDRUkgJjoaHQzdY4L/NVxNuham3Vn0VcgD6eIE71afLeF6Gp4zllBWmkMpoSucp42ejBtPdqENtxq3UANxEf1qlLl91PF+WqRwBpim6dVJGXCTKMA6KZwMr0G6nPRVnbnKA51HZHdiSai5IqkWlklGJueRyKzl/KwG0y2kehDtOd955VHbzfHr1zlXKxi4CaKcLViXsOaEL6dxUACrloOkANrWIUn5NE0DTjnXo6x7qWt0qc85DD0COL5WmwkA2vIhQda9PO7mJzmeRDwI17FSvIxcWhRFtLGSNKms6zidLAKhpmw3payquTelpaFlL7feVl7DmGpNRqpVmzNbW1G94U3qyPU2fyQpBLX+ylKWbbpKaD6CqfoWLD2XRD4fl63tcqsmFD0ZXBX/DWPU4U0GPyOYq69EeJxTYKpheupeweBR6Rlx3P2HtUbhMSI1AfgVKFYmIBeCMGBvslbW5DJ4Gg56jqi8AlU5S2aznOOqmStt0AsvneAQazAUV9wWguGc5o6FkveHI5CxnSU81nIvhAGgoEW84Mt7nZWAmXwL50KBzAQEoXFZWvwAMKdPd5a04gpn9y9kngFIinpW7RUGPB6LH+/i0eOxIPbyLYj2jdyIAUJ0QufCOfiF1PKjifRXeUr7UCXcpxcNlCgDUeIhqrWQwcR2M1loLdEKLI9zOmxLn9BgGAIp0pLPmbaUi2X57TcdV19K01n5XWV4+KxflNShn/3rSY7hk7kQzAOlLSITy/FnTeeJhc+7pl82ZX7TNmQNnzCtHz5m5zkrTaY3jMY5jcl7otqOxAb01ZhY45w+lcbz2itVm1eaV5pLr1pnpG9cmDNYcHsZjCh//d2N4PvWCKlm5xpgt24259leNufrtxqx0tkqvPuZMPamYisLBEgFQQSgImke/b7pPAjj/+6w5+eLrzcz5zYYg6QI0HhgEUBdAAVi6BEw3AgmBInwOZARSUha0VZtXmB23TZltNyLZdRoB88BXFTh58uu3GvPO2xVMeXxl5grCV0ZFFk95AOU4kTOVZVfptQWtWgLnh982nYdwnJ01Lz27w8yc2+iryAIqC4Hiq4sFDIEiwAKYOKfgIdgmYmCLVynyRZXqzQDRW25zFSJ/mX724XuN+Y+/9sNSnes/aMy77yjFOgqm8dJGc64fOlUFDZY3R2eRX50ffc90v/N3pntuxizMrTQv/mKnmZ9bHYlBdwufAaAl+chcSwgyT7MdEp19zLV4SQtp9nN2joV6wvbje89Ad8tce1vJSlQHPDRIuXNnjHn/pzGwcQsdGXE/dRNdzqdkSF2oy0hb3qSKMqKsOl/7M9O59y8VPLMrzInD15j52ckovAQLmsWA1Ro3pixK44cy+Q9/7215bapkrDRATABHCavdPH7vjDmyf87LZHZOHjHmB1/JnC6c+An2So/wcU2Rf4Uyg2CIh1As9AGgBhZTVcXJo2bhS3eaDvY6uN7IcfrINCrQCkk+AWMh4Tp2zLWS31YkjPQOM2j638pHERIwUZ9DIfjYeBIuy7rv3nNCz/3xg380BsDvqz0IAJ5HJeq3RUusrsnGIBQsCaBeq72UUK3rp3CFpLDvRLLOBM+XP2O6J44hg7g44Th/apOZn7lIJaDLF5BAL9fsKwsYfAwcMALeSAGEOA/mSKcy8qfq0J8vPDlvjuDIbKw+P/5u5nTpCYKHlajf5gPQryKVLwmgXqu9lDSHUrhCUtgPE5lUZcFjThwX8BBA/Hfu+BatENAjFyEHCsqDRuDI5Qn00FRSvYwpG5O3sjHmQI9X2OoFkKzFLujwj2Ma+hocytaVF76+bBYIlwRQgZac6dIL8wlJKEPpX/jyZ6XyRDlumVdObTCduUktETDiqoyqwU+5xEXW5VJkAZJmipxOh3qgeyLhdWWIlQ+TotWBDecXDy7EnVYh5XzhqfhcP6McXWlr6sdUOdlu2Xfjo0SUUxxx9buwzne+DPAcFUBIzphEHHOn10VGbE8qjvRtmpl4l3x081bhqlWkNKhANCy6MMsuTgK2jrhlZmeyNIPzleTeh9I1W4+umnoaE2vFASRhSI1FH4vuw9kuXqp3fvR9zRJAo+7CF/i4MBO8ZHc2kGjvqQOOn9PECwhJ47wfsMuFh3skBYk87ID8jlfNKxgx6e2Rp0TTbXwJxiXCgktYhBgJho1IRK25kn4VcN/zvX+Bca04TJXkEEDqLOBGIG4Cxi45mKRJMcs1cGyTLnx2XR5Xds6tzk5H0QBBWPxFXjn40+tAh+PJ1TrndMXOK+L3iXI4Y2KpA96dXmQN4UlfUjq1gvd9KuCNQsNXXLhMeGTYy1cXAGILMco+gSJm7YQDmAMSMy99hwCeRdDq8j4rn7A5I37OGia69L+54m0TdCfRrODV70jQqw4Dw1uvrCpcj9+tOSmdQve/X0neoY/FOeshNs7dR+9DgphgusgzA2kPAggJ5Mg1D5aIAB434Jk6IOPAQxJBQCU8yZk6lUA+iqsKlaUIm9LQISvaJW9Mu6FvJ5l0/6ao8lf76a01875YGePW9R7WFPriAZA4px529j+s93uQIYGJqzyuGrURVCaYAEALf/rsCjgCkJHJgqIHSESCKsHJdnCO4gWaHYhaQRsNd832d64wazdrGJ0kffKN4LnuA37Y24ms9M4FlMvxEBUeyZZqNMk0uPEIAZS98i7fWce0AIRsYfVBvz0+b1ptoMkmkikQfpxdbjXjQXLsbthRxLpjxlxsLPEGJ5Q6focrEaExtLWbx8zO21ZJnz/IqzOepJ3r8IbolqzLT5qEt6ryBKG8F5bQy2GCNeRI0xzOa78cl/CmsCYAlMLRa7EhSsbK8ZK98/QTsIF5fhyD1Uf6HOvRBXbak69IggU55MYU/vck0K0oeH0lusnrG5jk0uaY3QSUWqyIgXD/NLmmbd7zmSlffZxI6pkA+K29xqy/JHW6l5hwhO/Gl9lAJ8Ria+w1YinluIS5h7XnPlAPR6bZQU10nz8YAQWAkcQzMBIcCybcfRhfZe+vWOQkYqdoghhXxCOcZ72Jj8kASmz5lkNo+MFqRFs4r0HlefdnNkkFgmSshSpCGwKA3/t8BRBBLYH3m3tT9z4x3c6D0Lij2XMqf4JHh/mc8dkWPuAyokZH0tYr1YeVhskCh1QAViHSKMEzhMfXvGzaJzfjIxiSU10FWVyDoPxTdlDJiBPGvJqJejsWERC8OPq0K25w0k5MrG6b7TevN1ffvM6wX9ScPm+GVeRjX8V7Y3hP60GcT+F9srRG4PBTiTfcDhDFbwM4dqfbjb0NR0ick/yJ6WCYz5mcHQCAipaiviYdcSvoPncIXQsYAQ0BQm4cTCrVY9zCRnriohNm/uUtAgaCImnZ1i+AbdKsve4K3BHAJRFHp6Vn6VtaV2i4vwQ75ONh5FOKbXwKcdJcvGOtWT+9ohRwIBhrPWslOHjw04mHcJx8QflXAThbX2/MVTdkAiemOBj02AjmBtkdAID6W0r3Jdz7sWARwLAv46gaSWkAbcXaE3inYINZ4I1FGyV3FhCCOrV7u9n6kevNGECU15Lgy+NtbC7rlRUM5PqTO9mYd6UU9dbhKAOlFDTN1D1x3FcZVp4Wq4/4xLM9AB6pRPB+7eZnTBuvyAgz97JefeqayS0XmUs+Wgwe8lN+MbXIn5SERJMjd7kXQKN2LgAJgSOvwkIQOfCQ1sFL+vacWbfxMC5pwTviXAP2MSu3bTTt1bbypORhKNHv2+6oE5IfpV4A5fD3HYsc3X4qBA33ITQKsMg+yAGJZ6kZSm9PvGKmNh0wY2P246XiKLbQUqas5lHlYVR2fUAH26kEoGZjkQFHvgIRoOhlKtpAp48FSOBvt+fNxk3/Z9aufsGMjyuQZvYfMXNH+eH3JlozWprwpC8dVZdRwG9/xftyqaZwBhzdy1Y6boEkZ1Qc+TiHB5d9jeXH6saa1UfNxoueMhvWHDITr7xkDv/JtwVENZ0MxDL8DTiWRLfqMgr4y/9d2JCiM/f3XzALP3lUwcPLFADCKxHB417C6+WMDkXzHmyg6ZXL/W7gJXln3IxtWo9KpPzuskh5pUEVbCT1yrz8Blo5rzsxpo+ii7cH0Mf+a2zzBvRxw3PbVvSnzOSbLzOT01uGFEVdD1wZQGNAIsXjMozTmjdaQX9rA4NMB22SIBsHD6aoz87rJc6OrZwCjnxMLDkXTOf4SxgzwUoXwGHGgVJ4A73JeQUXfaICyln/2Mch9414A5JAx6GXToyfeMbTxrZMmRVvusys3b3DrHzzpVQ0oAYn4UtTjUsWbdJhz1PwKjm202zKZEk9kR9eoPPUk2b2S38qyaefChBNlk82lyOViYvBwXfpcY54MfTz2pexldM5lWHfzfGWgbMh5xg/baEF/E5OQIOEdQSgURXq8i9g6RdvUnIuANjY5nVmw29fb9btfoPqdT9TYuKmss4qUk2wGneW5VE/oczmJHSvfekVpsV9EFYYAUKTLMmzSdUKAEnyMUk4dI9EmgUTo2T7nBegOZBwHIIBIHTgoU4BppMlX8gfyBEcvAvlKo+AxN3VJmCkr6DqQI68PGaPnTVH/uo+8/Qf/nN8j0ZTFZuKVBOsxp3tUKVXYdlqGpxZhc86v/byGHiYWAGATaICizYdUBAO8oCRc543nJcq5fZF5KcsZaCGh+VVW+QLdHNaeCPdtCGgEXsEiIIkOlMeNDkUNIYPdbCXODkDXLNHZ8xTH/u6Ofb1x2hlybXFByCEcOJ9+PwMEuSTKH2QkCyh2zmO+U8a5/xBXvwP+cGn4HB6yRPJCC9BJjSV9bqZdMeLm5cePNAp76/ZKoS7mRFAhKbVSfdHYaWyOuSSp0B74Z6fmEOfuw9/LDAry1kqPxYlgNpXXWNaGy6WhEsgLRAkcS6ROEu1sWPfJ6DsnAAg4I9ASa1cOngtPwFHAMTGXjfIltfvY7jnCasJ+gsyJjgAFoBDZKgTvDrnqpQFkLvEWbunHn7W/Pyu/0RVSv4pEO1Xb1JYq4tVkuAqF2WbuOVW+BVUiFh1AEZkDiyMEhMdjKVaYOyrhkTSAUv5dcMcgJDybBZ8BJhe3gIfPGgUJFpx2Lf+0CbAQADRH9eXCiTgIph03oGPQNN9kYJr5uAp8/TnHkIlsnfV6VOFFoLGrqiCdHXWRQugsV++wbQvvTwCB5NiweIriwWJBwpB4MGkfblsOVDg7G5GUkbfqGWYLS8vT4oGsUUep5uAdVVFNs428Q4k4d5GNtUCFN376Bx0UQcOBRiBA9CwCtG+BRb1zRx62Tz15/9VPZu6klpydYUaB1D4G1DXKSc3cdvvSHA12aDahGpSMcQ4BAwT4WnCqzIeIEKjh+SjvLUkferimCGxephY9uVQuiTd7V1sVXHg4RxfaTmgKEC0sgjQAA7/Uh991c0zHl5FOYLIyp/e/6J59p6fYm5xN3pfu7n4hwoY8qba2NVvMJO3vF8SKwFGcKX5hGuCBUSgSUVh0sUxO8fkC7/1ismnHtGF5TNhOKSqETxOt+hRMGiVifY88oE0Jpu6eRAYlLXVxAFKztTvgGFtKr/TF1WlSJfSnrnnZ+bl/cebCmd5PRK/cuz5AMpSZOlM0aDbxK/9umlfhZttEnxY49kdLsk26Q4Y8lts90xCY3I9r5OnLvy3utylS/mVRyuJVhUFCECTAhJ3afMVR8BlAWbBE87pZQw2PB/1kj86dA/WNr+4p8GHMzBZWTnlnGtwrWzLB1CWoix6WatFfIlFrrzjDtN+3WUCHAGHgAlOSPKpjH2cMNbLEh208zwHYNJKozIKHvbRRDaSc+DRqqKJdfsXqRTQKwlH4snjQOFBQEDwgF4BD8DhNsyOx+sT8Kg+R2OVw0cMzKn9J8zR+55VH5v4ySU22HoBlEheg7bKq0ossrUaj9n91CcVRASEBYdemjDG5ldooLtNsoILdFkPz9rnnwS5ueiyReBZHQSSAIKhQfJlv0MAWcD4MwBhE++rk6sgASAIItlXkearl9NlQUZwiV76QFs43CYd50P3/Bz0xdl6AcQ11GiDxl1r9Sqz6tN3mvFd1wooYpWGwWfi4YQDlesTLB4cSAxB4caiQ2QILj2k8ghoAB4m3yWeZ5dcnKWqQCZ2+XLztCl9exZZ9h09Ao6rZg44CkbLa/04f3zWnHziRI2sDF4kAaD6MKiJu9IrpGcCoj/6A7PiN25BKuC6JF1BQ2B4sJCZcw4sTKjQyEs+npXHgUl4bYK1T/287LjEu7OCR+xZgLlLlIKB6nnZok0LNBnHAeiA43kdKKHTVz1WLIIPx8F/PQiHyzUubeDNGkkAaNAwqL+s0LNJAGjN5+4y42/YroBAggQwAhraILejWZsyR5qdJzA8TcEhQGACbSUREDCBdsyzVAgBhILE7VkiQCg/K0p0iVP9oR7Xj2xRzvGx+rFvbcPPM4dm8DzInGcx2mXa1QUj7TYOKoYYbbQf51Afyv9kFKzjTmj2wYfN3AOPmPknn9aqIsBh9dBKwDPBRbAwQfIn8gSOHbuzJouggCxBxATaS4hPJBMKOquS8LgEM/EeaJwnnwJCgMR5kVVaj63QjpUjj4LLykLHL92100ztWO+WPsJzlIilBaCckC0cfs688p0HBEgLR08KQISdQMHBf1JxCCwCAGMHnqiqWPBQxiWSZ0kwQREl01UOBwatHuSJEs/LrH9/TPQ4vRGQYiCRd+vhVgp4SLvqw1eay295TU4U+piKMFFJyYAAVNObSq6TOd3OwsHnTOfYCTO3/4DpHH3JdM/iQQzk9sChpAUREsM+L0UElSaP3C7JmnSZI7DII0Aif8BjZck3j/exzh08Cb7gDrPXrTakgvnKozQHPle13FlB2jav2b3FvOmO7XRupC2M+gD+MpVrY3CH0dLtjE2/1vCYuO5Nw3Ai1cbcsTPm4J7v4sNip808vqNj3uBJ+raqCTAAHnmF50ApYASNZ/Dhh/LLvAL15UPnU20NmxhGnR4HjdhanC3Xs6zJLPoQljixea2Zvuu9gMO8Wdk9a9Z2T+B8GpajS9yCAw+BZQ9WQj4wQjfnrIycUzDNneVNrMXVEgAKsbW4HM31LGsyi46l1cNWkVR8fmLLWrPyik0SSO6G1nROmos7h/HW6bwARi6LUpUUVLI5l0udfnJR7jHZeQJsdib469s+0xP3tL6yBIDqK1pqkjnYyllKQqonC4l5aGqvneQ7Hdpwxt9rKIi6c/ZlPi9PeonSV3/BB/HtXkv2aKhWc2d7DOb4mj/lXMrnimazLL9qARSFpo9eQRb4pz0zTzyPzXtkg68Gx7uz5pLOz80EQKSbdihylcbtfaQSKbDcJnolvjVxVC1aarAYOJMPoDjvqHxvxu4w1wJbswDPwT3/Jr63bQkSFyyaxs2s2dI5oPsbpEH3PnbjnASPBdf4mgG95qkU4QhKFMv3KM5byUwVZga20BS/rYZP9noZD2PiF7CxTeGJX3yMbt/PYlZ1/Dk30zHPP3LanMIrHt755d6lhXdgbYp9X2sD5jT1cm6Dj+P5Y6fNuf3PmXaXd4GwIQZo5Dc1WCjXu6p7ymxYeN682H6d3mtyVQha5HaBWIUlecWGp43gQVeLreUDaBDe+iD6DsKV0/h1Sd/+fP53jPLRcde+F98x+qFsRblGjDl7bN7s/8ZJc+iBU/a5ZEg+AdAFiFra57eqyq1BT5tXXvJZHvIrX+QKC5DcAcfZXc7c6jd3DppjbfwZEzQraBSS7rLlX+rj0rYOX/7bd3OG+1Vk9QwfQD6RvpO9FH7d4w++UvxlbfzWY34hG7+X63cBtqmyT0OFaQTimUfPm//+mxdNhxUHY+Qqeplm3ezxlgFkpSA/u/JDSNqnAF+Po0VT3AFFjSMCbk33pDnTxl+hUJ/UKntGRdKX8wquddMN7IFCB8QVetdDjJzM6lkRqaxZPKS7xafxRHNRL42vMo3qCAh+QW2Vb/ojkP7pU3jmYMbDK1McefrB8+b+L+CutfvGHZaL5HIw9iRXQiyFT26VLU6QA+HlDyk9ajSikR44gv6GzvP2QmirkL2UCXhkUw1AgcbnNDbfQmeqay8EUJ76aC7qVXchRYJPL+VTTAuaT2rIxwdWfmNPSMnsnznWMY989bTkkyvgU10DqOjYAYEzHjxUadfsSpBDSKpTlluuY2pCQCc6jbnI4O0WUWlvHLrLGd/qsGDa9MY1tR7wSbVlW4brMfEkTz6AQu6sfkx9Q4OvoYoELTQdkF0KQ5L2X8An+EoA8KG/PWNmcW9F9AMPLr9UQpof20uRKHeZFybIQs77J0IWWMKc9kPnFYy4aGE42ZmBDr5vBsDgkMpD4GDS7YUuu2kqTVkGzXuUMZ9OLvKcUkmefACF3Fn9dF/qU3/2EJ6fjCoStNB0QM7vPoL9U047st9+16lTzpjjM8guREJ2YMGAXR3a5JCBNNmzWDHSIjjF+i6lAhzhAzgcEZzcnMuGuR2BxoGHjxm+4qYqH+MQA3Rm4C0fQP2YD4JTpCbG+rMfZrPHGLPZZIYv+/kM5ox2+FH+5Se3rXZjy5iHGcXY1iYBCnGh5m1yOBCCfX9KJ4kpCzR0ZKQnp95Kg8jqE43mzApUIIKKAHKH7omuue1iKqvWrD/VhMpwxxUPDkBRbAq9irEeweWnnxau72i2rhcPMfG0DAEkUrFDYauAZAcATwV/DGQqFwJBNOCHnvnTC1tt1AEabcqkwTtjE+iDLpctgkYPXsq0+qyznBVOXNpAWlzx4ABU1/mcpEf5jC8iZiqc4l4oo505jkuGTyHBwoafLqsyJimk6aRnAZgUPEoRwKFLEerzwLIquF/yGyuvpGXOtqdksxy+ZBdAAUhvvE3fjHXuDOXsfSu2tvgAVOwzOCqsMFcfM8qm+qL9iVL1J+Ysm5yIDtekj3mK2xPRwyJFkq9WGIgU6TJBcEXzMy19nqKrPO585c0bsPepUX1ou7DRmQymYIkZHJ48UABl+eetp3XKfK1RmlwaLUcXv66JLfQxxEZcnUZUeB0CRBi7JKfAIoQn6pFhoJBsrEhSlTBJsOo0vja8fSn84CUtunytx03DnbfX2PvEHc8ZOSdzWEpMDRRAEsQSTsRYtm6PDasMXC69TKou5dp4GZbO7HNoBfWkgVUyfkpHLyhOr1+XAAJURxD2AFQioPocizcmgDHmTGvKnGpvseDRtzG47/mVT+pnn2m+75alJKSH/QoGBwqgCn5ErJdfG/VTe1Eq/LRdfM9MqMsHSLmuujF6Y9JN6R4mBAt4rVLlsQN7on1fgTgg3SqTk5t0BgJ+stLeofGdCh7ZQI+Z1QDPTZ+9FGd9lykwBYmaLUtJSA/7Fcw0CKAgShUc6GHl1yDxafWZLcVO2uKTehI8l+wYN2u3jEnSgysNkql7GDHvAGAZREVMD7iTRDvPE28EekQl1sNVPN++0pxqbbU222b95Sti4EmIxIYpUYjND2vQIIBs5BKeV14owXPDhxJaKg751ZLvvL1Q6B2/j6fBslkned8nBJOgSy5zyqB3j8HOodCtrAOasEkdo1YpSE63EEizYTrXWm+rj162rrx5ytz4x1HlcfxZ53i07QKymAdIbxBA6V5GdzvS51Op1+Mhm29BJarb3nNHqe8YvWTHBL40V0HEFGjqNRlMkCTbZVzGQrV0x4Cza8Jrbz+CNXxVR612xsyYdean4+/AWL/M7sbPXiYb5jLfguhMxc9xOMXnBjsa+Mc5eEmotTx+SzGfF/3IN8tHgNWLX1B79dtLy1z7wTW4NdMxT3zjlMj4YsJOiuMERQQxgMLxCJGrjZq84lJmoXPuWPsK88zYDnyL4pi55n0bzfZbNhS8SUoFodZI/0h71q0B/WFhg0tL+X7R1JDy2/8IupyX7qly1tUDD8zgA2UnzMzR82acHw7jh8fkE4X6qUTXHxOam8eHx8DbsjT+tUUkt2A/bKa0c62LzMmLtpmxbZeaK2/eaF7ztrx9XoPxG7CqTADlBbsxn0IjYT/NAIHEN1r5cQ3erWa1WYdPIk4DOKw4BFAD7dD9p83z/4OPpB47b84fP286Z2cFSPyUIR/WO8ZPIxJc7AsNYwDIf1oRNF6KJlBh5ruTZnLbxaazZavZdN1mfOfqqoJq08ACaqgoCn3efCaAavjBi3yD1bZRZbWWsyxUHIFmN9E1L9WESm8rUJYu1KtmmTLQCDQLoJquFkAlXWstoXRVy9R6EeDv8KIAUD33l7jUkqqg6c7yd9gDKJ1lkSWptpM1BGuIVIrWkqqg2c56AGWz2LAMOqCVol+VuXB1vQpriPQqWaKUCrn2ACpc6mII6GLwoTBQw2OQPFdIdppnqeIV4lweQGnWh0pLXWpDHgxSd0MupqiRPCeSHV+JHcWJMU0J8dhcmcHiB5BffL9LZTi8skRsmtCdUDmiYXwldhQnNurZiACUksgUkqy00cU3qiwbj42mqAFlWbFtQPWIAJSSyBRSA+sbkAqbkVH5XBUQA/RzRABqPq9VY9qfB1kZyfMib66KN9CTZb6KmoZ4lziAoqQ0HtNIdYVQ53mRN1fChPcnR4/nKaGvIRYCCE/lHkYrXl0xR9LP9GBW15PUi3G66hTGiNSI3UhdvFfGnzI8ca19jxRAqStPEGWYoFUyX7y6Yo4SBuFiP3oGu0L634+FEusfLstBAmhfesTT0pBGG67HhdZCFweYq/qqQwcLVxMx1DcY6Wi+JwA6VEpvzXWX0j0optDnkgkIReJuuY+yKjWbLy5ValTGt34MltFfytEepse1AvXQlyYhN079JEDCka1A7OYaL4hntuoCwZLTNfT75fhOqq19/EQi/rLfnEi/jKUKLRNfTREggLIBuA2PMG6dBMN9Sz8m+b8qbn3luBz3EjsnFpcYVlqMl80Gzz5gR/ZAVHx/Je2Lkjl7paG7cS4fppBl6fbji8spHMVLTKhKE/giicInlzFjDmBc5UF8aUqHR2Pui1aZ4EkMh+brqOxWX2AlT7f5CiSXMWMEUdWNjkiiCDx0K8GTGOY4jkAylj1NialTPbwRobzdSCbDgZAh3cUYBwdVvC3t6d0ED7V7iaaqEN31Smkhs5XnzFRxwU4s+thI9WH4+TJeWn9VKEJ5OfDQZHlO9fDV9NPGJgrriBcfc2Svqz50qieLqESPgb5rkB773y/fGaS1C1C3jdsIwncQ4NkWRtRXoID4AfQH+garR63vBNaXu8URsHEbcviIiXclnesBkC1PdyYZBzvm79Jw2/AtDmF9/SyqWPaj4aXLraYHQJwA49047WV/OA2/S8ULaNSVQf/2Dnk5Gpt+wpgfkL3AxLfSEpAKIDJCYA9Oe9nvaYOITv4C4EJTRpvS0xOVGEGXMxxboWHabdgqwbMntBH2i9PW7d4Kgb/HMRUKjrLPABU6XtvBJrU3qKtBVSVDwz3PnQDP3Xn8pfKAV2bTUPJ9YBvnUiJ5NkvODT9iJR0bMdtQ4rIPi/wAwHOwaLGZl7BQkIpwbAN49ob0gfUZo6EBdWCr6F+xxCGpJusXGMyp/En53DGrzl7k+q3MeS6nnczyJlPWVqM9YPhwJtOgJhgg+RKvym5rcGuI9b0U8dlqCft9K25UAYHDt7L+AsBhv3SrHVILpN2w9HEcu0pbrMHYVNyb0lNjCYtV5D44dj+OysBxC6oNIKeA5wBMBBIfVjhtD5wuvLYEgYiqgm/2Na19yMYhHDx/q2q1Scvk/wN41g4g84VXcwAAAABJRU5ErkJggg==";
|
|
7303
7322
|
|
|
7304
|
-
// ShufflePipelinesBanner.tsx
|
|
7323
|
+
// components/ShufflePipelinesBanner.tsx
|
|
7305
7324
|
var import_jsx_runtime17 = require("react/jsx-runtime");
|
|
7306
7325
|
function ShufflePipelinesBanner() {
|
|
7307
7326
|
return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
|
|
@@ -7362,7 +7381,7 @@ function ShufflePipelinesBanner() {
|
|
|
7362
7381
|
}
|
|
7363
7382
|
var ShufflePipelinesBanner_default = ShufflePipelinesBanner;
|
|
7364
7383
|
|
|
7365
|
-
// AgentUI.tsx
|
|
7384
|
+
// components/AgentUI.tsx
|
|
7366
7385
|
var import_react15 = require("react");
|
|
7367
7386
|
var import_lucide_react11 = require("lucide-react");
|
|
7368
7387
|
var import_react_router_dom2 = require("react-router-dom");
|
|
@@ -7928,11 +7947,11 @@ var parseScheduleHint = (input) => {
|
|
|
7928
7947
|
return null;
|
|
7929
7948
|
};
|
|
7930
7949
|
|
|
7931
|
-
// AgentRunDiagnosisBanner.tsx
|
|
7950
|
+
// components/AgentRunDiagnosisBanner.tsx
|
|
7932
7951
|
var import_material15 = require("@mui/material");
|
|
7933
7952
|
var import_lucide_react10 = require("lucide-react");
|
|
7934
7953
|
|
|
7935
|
-
// AgentDiagnosisCtas.tsx
|
|
7954
|
+
// components/AgentDiagnosisCtas.tsx
|
|
7936
7955
|
var import_material14 = require("@mui/material");
|
|
7937
7956
|
var import_lucide_react9 = require("lucide-react");
|
|
7938
7957
|
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
@@ -8006,7 +8025,7 @@ var AgentDiagnosisCtas = ({ diagnosis, compact = false, tone = "medium" }) => {
|
|
|
8006
8025
|
};
|
|
8007
8026
|
var AgentDiagnosisCtas_default = AgentDiagnosisCtas;
|
|
8008
8027
|
|
|
8009
|
-
// AgentRunDiagnosisBanner.tsx
|
|
8028
|
+
// components/AgentRunDiagnosisBanner.tsx
|
|
8010
8029
|
var import_react14 = require("react");
|
|
8011
8030
|
|
|
8012
8031
|
// agentDiagnosis.ts
|
|
@@ -8365,7 +8384,7 @@ var diagnoseOutputWarning = (run) => {
|
|
|
8365
8384
|
return null;
|
|
8366
8385
|
};
|
|
8367
8386
|
|
|
8368
|
-
// AgentRunDiagnosisBanner.tsx
|
|
8387
|
+
// components/AgentRunDiagnosisBanner.tsx
|
|
8369
8388
|
var import_jsx_runtime19 = require("react/jsx-runtime");
|
|
8370
8389
|
var DISMISS_PREFIX = "agent-diagnosis-dismissed::";
|
|
8371
8390
|
var readDismissed = (key) => {
|
|
@@ -8521,7 +8540,7 @@ var AgentRunDiagnosisBanner = ({ run, sx, onJumpToEvidence, executionId }) => {
|
|
|
8521
8540
|
};
|
|
8522
8541
|
var AgentRunDiagnosisBanner_default = AgentRunDiagnosisBanner;
|
|
8523
8542
|
|
|
8524
|
-
// AgentUI.tsx
|
|
8543
|
+
// components/AgentUI.tsx
|
|
8525
8544
|
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
8526
8545
|
var normalizeMarkdown = (raw) => {
|
|
8527
8546
|
if (raw == null) return "";
|
|
@@ -11684,7 +11703,7 @@ var AgentUI = ({
|
|
|
11684
11703
|
};
|
|
11685
11704
|
var AgentUI_default = AgentUI;
|
|
11686
11705
|
|
|
11687
|
-
// AgentRunDrawer.tsx
|
|
11706
|
+
// components/AgentRunDrawer.tsx
|
|
11688
11707
|
var import_react16 = require("react");
|
|
11689
11708
|
var import_material17 = require("@mui/material");
|
|
11690
11709
|
var import_lucide_react12 = require("lucide-react");
|
|
@@ -11876,7 +11895,7 @@ var AgentRunDrawer = ({
|
|
|
11876
11895
|
};
|
|
11877
11896
|
var AgentRunDrawer_default = AgentRunDrawer;
|
|
11878
11897
|
|
|
11879
|
-
// AgentActivityList.tsx
|
|
11898
|
+
// components/AgentActivityList.tsx
|
|
11880
11899
|
var import_react17 = require("react");
|
|
11881
11900
|
var import_material18 = require("@mui/material");
|
|
11882
11901
|
var import_lucide_react13 = require("lucide-react");
|
|
@@ -12031,7 +12050,7 @@ var stopAgentSchedule = async (workflowId, params = {}) => {
|
|
|
12031
12050
|
if (!res.ok) throw new Error(`Failed to stop schedule: ${res.statusText}`);
|
|
12032
12051
|
};
|
|
12033
12052
|
|
|
12034
|
-
// AgentActivityList.tsx
|
|
12053
|
+
// components/AgentActivityList.tsx
|
|
12035
12054
|
var import_lucide_react14 = require("lucide-react");
|
|
12036
12055
|
var import_jsx_runtime22 = require("react/jsx-runtime");
|
|
12037
12056
|
var STATUS_CONFIG = {
|
|
@@ -12647,7 +12666,7 @@ var AgentActivityList = ({
|
|
|
12647
12666
|
};
|
|
12648
12667
|
var AgentActivityList_default = AgentActivityList;
|
|
12649
12668
|
|
|
12650
|
-
// AgentExecutionDrawer.tsx
|
|
12669
|
+
// components/AgentExecutionDrawer.tsx
|
|
12651
12670
|
var import_material19 = require("@mui/material");
|
|
12652
12671
|
var import_lucide_react15 = require("lucide-react");
|
|
12653
12672
|
var import_jsx_runtime23 = require("react/jsx-runtime");
|
|
@@ -12824,11 +12843,23 @@ var AgentExecutionDrawer = ({
|
|
|
12824
12843
|
};
|
|
12825
12844
|
var AgentExecutionDrawer_default = AgentExecutionDrawer;
|
|
12826
12845
|
|
|
12827
|
-
// AgentsView.tsx
|
|
12846
|
+
// views/AgentsView.tsx
|
|
12828
12847
|
var import_react18 = require("react");
|
|
12829
12848
|
var import_material20 = require("@mui/material");
|
|
12830
12849
|
var import_jsx_runtime24 = require("react/jsx-runtime");
|
|
12831
|
-
var AgentsView = ({
|
|
12850
|
+
var AgentsView = ({
|
|
12851
|
+
onSchedule,
|
|
12852
|
+
maxWidth = 820,
|
|
12853
|
+
onChooseLLM,
|
|
12854
|
+
hideChooseLLM,
|
|
12855
|
+
localLLMSlot,
|
|
12856
|
+
permissionsSlot,
|
|
12857
|
+
globalUrl,
|
|
12858
|
+
isLoaded,
|
|
12859
|
+
isLoggedIn,
|
|
12860
|
+
userdata,
|
|
12861
|
+
serverside
|
|
12862
|
+
}) => {
|
|
12832
12863
|
useSyncHostBaseUrl(globalUrl);
|
|
12833
12864
|
const [selectedRun, setSelectedRun] = (0, import_react18.useState)(null);
|
|
12834
12865
|
const [agentView, setAgentView] = (0, import_react18.useState)("start");
|
|
@@ -12838,6 +12869,33 @@ var AgentsView = ({ onSchedule, maxWidth = 820, onChooseLLM, hideChooseLLM, glob
|
|
|
12838
12869
|
key: 0
|
|
12839
12870
|
});
|
|
12840
12871
|
const [editing, setEditing] = (0, import_react18.useState)(null);
|
|
12872
|
+
const [builtInDrawer, setBuiltInDrawer] = (0, import_react18.useState)({
|
|
12873
|
+
open: false,
|
|
12874
|
+
tab: "localLLM"
|
|
12875
|
+
});
|
|
12876
|
+
const effectiveLocalLLMSlot = (0, import_react18.useMemo)(
|
|
12877
|
+
() => localLLMSlot ?? /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(import_material20.Box, { sx: { p: 3, color: "hsl(var(--muted-foreground))", fontSize: "0.85rem", lineHeight: 1.6 }, children: [
|
|
12878
|
+
/* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_material20.Typography, { sx: { fontSize: "0.95rem", fontWeight: 600, color: "hsl(var(--foreground))", mb: 1 }, children: "Local LLM not configured" }),
|
|
12879
|
+
"This host hasn't wired a Local LLM picker yet. Pass an",
|
|
12880
|
+
" ",
|
|
12881
|
+
/* @__PURE__ */ (0, import_jsx_runtime24.jsx)("code", { style: { fontFamily: "monospace" }, children: "onChooseLLM" }),
|
|
12882
|
+
" handler or a",
|
|
12883
|
+
" ",
|
|
12884
|
+
/* @__PURE__ */ (0, import_jsx_runtime24.jsx)("code", { style: { fontFamily: "monospace" }, children: "localLLMSlot" }),
|
|
12885
|
+
" to",
|
|
12886
|
+
" ",
|
|
12887
|
+
/* @__PURE__ */ (0, import_jsx_runtime24.jsx)("code", { style: { fontFamily: "monospace" }, children: "<AgentsView />" }),
|
|
12888
|
+
" to render your own configuration UI here."
|
|
12889
|
+
] }),
|
|
12890
|
+
[localLLMSlot]
|
|
12891
|
+
);
|
|
12892
|
+
const handleChooseLLM = (0, import_react18.useCallback)(() => {
|
|
12893
|
+
if (onChooseLLM) {
|
|
12894
|
+
onChooseLLM();
|
|
12895
|
+
return;
|
|
12896
|
+
}
|
|
12897
|
+
setBuiltInDrawer({ open: true, tab: "localLLM" });
|
|
12898
|
+
}, [onChooseLLM]);
|
|
12841
12899
|
const handleEditWorkflow = (0, import_react18.useCallback)(
|
|
12842
12900
|
({ workflowId, name, prompt, apps }) => {
|
|
12843
12901
|
setEditing({ workflowId, name });
|
|
@@ -12918,7 +12976,7 @@ var AgentsView = ({ onSchedule, maxWidth = 820, onChooseLLM, hideChooseLLM, glob
|
|
|
12918
12976
|
apiBaseUrl: globalUrl,
|
|
12919
12977
|
onViewChange: setAgentView,
|
|
12920
12978
|
onSchedule,
|
|
12921
|
-
onChooseLLM,
|
|
12979
|
+
onChooseLLM: handleChooseLLM,
|
|
12922
12980
|
hideChooseLLM,
|
|
12923
12981
|
defaultInput: prefill.input,
|
|
12924
12982
|
defaultApps: prefill.apps.length > 0 ? prefill.apps : void 0,
|
|
@@ -12948,6 +13006,18 @@ var AgentsView = ({ onSchedule, maxWidth = 820, onChooseLLM, hideChooseLLM, glob
|
|
|
12948
13006
|
apiBaseUrl: globalUrl,
|
|
12949
13007
|
onSchedule
|
|
12950
13008
|
}
|
|
13009
|
+
),
|
|
13010
|
+
/* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
13011
|
+
AgentRunDrawer_default,
|
|
13012
|
+
{
|
|
13013
|
+
open: builtInDrawer.open,
|
|
13014
|
+
onClose: () => setBuiltInDrawer((s) => ({ ...s, open: false })),
|
|
13015
|
+
initialTab: builtInDrawer.tab,
|
|
13016
|
+
globalUrl,
|
|
13017
|
+
localLLMSlot: effectiveLocalLLMSlot,
|
|
13018
|
+
permissionsSlot,
|
|
13019
|
+
agentUIProps: { onSchedule, apiBaseUrl: globalUrl }
|
|
13020
|
+
}
|
|
12951
13021
|
)
|
|
12952
13022
|
] });
|
|
12953
13023
|
};
|
|
@@ -13099,7 +13169,7 @@ init_api();
|
|
|
13099
13169
|
init_fetchBreaker();
|
|
13100
13170
|
init_appsCache();
|
|
13101
13171
|
|
|
13102
|
-
// UsageBar.tsx
|
|
13172
|
+
// components/UsageBar.tsx
|
|
13103
13173
|
var import_material21 = require("@mui/material");
|
|
13104
13174
|
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
13105
13175
|
var fmt = (n) => n.toLocaleString();
|
|
@@ -13180,10 +13250,15 @@ var UsageBar = ({
|
|
|
13180
13250
|
};
|
|
13181
13251
|
|
|
13182
13252
|
// index.ts
|
|
13253
|
+
var resolveMode = (theme, colorMode) => {
|
|
13254
|
+
if (theme === "light" || theme === "dark") return theme;
|
|
13255
|
+
if (theme === "system") return "auto";
|
|
13256
|
+
return colorMode ?? "auto";
|
|
13257
|
+
};
|
|
13183
13258
|
var withMcpTheme = (Inner, displayName) => {
|
|
13184
|
-
const Wrapped = ({ colorMode, ...rest }) => import_react20.default.createElement(
|
|
13259
|
+
const Wrapped = ({ theme, colorMode, ...rest }) => import_react20.default.createElement(
|
|
13185
13260
|
ShuffleMcpThemeProvider,
|
|
13186
|
-
{ mode: colorMode },
|
|
13261
|
+
{ mode: resolveMode(theme, colorMode) },
|
|
13187
13262
|
import_react20.default.createElement(Inner, { ...rest })
|
|
13188
13263
|
);
|
|
13189
13264
|
Wrapped.displayName = `ShuffleMCPs(${displayName})`;
|
|
@@ -13191,9 +13266,9 @@ var withMcpTheme = (Inner, displayName) => {
|
|
|
13191
13266
|
};
|
|
13192
13267
|
var withMcpThemeRef = (Inner, displayName) => {
|
|
13193
13268
|
const Wrapped = import_react20.default.forwardRef(
|
|
13194
|
-
({ colorMode, ...rest }, ref) => import_react20.default.createElement(
|
|
13269
|
+
({ theme, colorMode, ...rest }, ref) => import_react20.default.createElement(
|
|
13195
13270
|
ShuffleMcpThemeProvider,
|
|
13196
|
-
{ mode: colorMode },
|
|
13271
|
+
{ mode: resolveMode(theme, colorMode) },
|
|
13197
13272
|
import_react20.default.createElement(Inner, { ...rest, ref })
|
|
13198
13273
|
)
|
|
13199
13274
|
);
|