@shuffleio/shuffle-mcps 0.0.24 → 0.0.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -6950,6 +6950,17 @@ function AppSearchDrawer({
6950
6950
  const [detailAppName, setDetailAppName] = (0, import_react13.useState)(null);
6951
6951
  const [detailAppId, setDetailAppId] = (0, import_react13.useState)(null);
6952
6952
  const [highlightActive, setHighlightActive] = (0, import_react13.useState)(false);
6953
+ const [bodyReady, setBodyReady] = (0, import_react13.useState)(false);
6954
+ (0, import_react13.useEffect)(() => {
6955
+ if (!open) {
6956
+ setBodyReady(false);
6957
+ return;
6958
+ }
6959
+ const raf = requestAnimationFrame(() => {
6960
+ requestAnimationFrame(() => setBodyReady(true));
6961
+ });
6962
+ return () => cancelAnimationFrame(raf);
6963
+ }, [open]);
6953
6964
  (0, import_react13.useEffect)(() => {
6954
6965
  setHighlightActive(false);
6955
6966
  if (!open || !highlightAppName) return;
@@ -7147,15 +7158,15 @@ function AppSearchDrawer({
7147
7158
  },
7148
7159
  "& .singul-results-grid": {
7149
7160
  gridTemplateColumns: "repeat(2, minmax(0, 1fr))",
7150
- gridAutoRows: "88px",
7161
+ gridAutoRows: "78px",
7151
7162
  gap: "12px"
7152
7163
  },
7153
7164
  "& .singul-results-grid .singul-dropdown-item": {
7154
7165
  minWidth: 0,
7155
- minHeight: 88,
7156
- maxHeight: 88,
7157
- height: 88,
7158
- padding: "12px 14px",
7166
+ minHeight: 78,
7167
+ maxHeight: 78,
7168
+ height: 78,
7169
+ padding: "10px 14px",
7159
7170
  alignItems: "center",
7160
7171
  overflow: "hidden"
7161
7172
  },
@@ -7192,7 +7203,7 @@ function AppSearchDrawer({
7192
7203
  exit: { opacity: 0, x: -20 },
7193
7204
  transition: { duration: 0.2 },
7194
7205
  style: { height: "100%", minHeight: 0 },
7195
- children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
7206
+ children: bodyReady ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
7196
7207
  ShuffleMCP2,
7197
7208
  {
7198
7209
  apiKey: API_CONFIG.apiKey || void 0,
@@ -7243,7 +7254,32 @@ function AppSearchDrawer({
7243
7254
  })),
7244
7255
  customStyles: singulStyles
7245
7256
  }
7246
- )
7257
+ ) : /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(import_material11.Box, { sx: { display: "flex", flexDirection: "column", gap: 1.5, height: "100%" }, children: [
7258
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_material11.Box, { sx: {
7259
+ height: 44,
7260
+ borderRadius: "12px",
7261
+ border: "1px solid hsl(var(--border))",
7262
+ backgroundColor: "hsl(var(--background-elevated))"
7263
+ } }),
7264
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_material11.Box, { sx: {
7265
+ display: "grid",
7266
+ gridTemplateColumns: "repeat(2, minmax(0, 1fr))",
7267
+ gap: "12px",
7268
+ mt: 1
7269
+ }, children: Array.from({ length: 8 }).map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_material11.Box, { sx: {
7270
+ height: 78,
7271
+ borderRadius: "12px",
7272
+ backgroundColor: "hsl(var(--input))",
7273
+ border: "1px solid hsl(var(--border))",
7274
+ opacity: 0.6,
7275
+ animation: "shufflePulse 1.4s ease-in-out infinite",
7276
+ animationDelay: `${i * 60}ms`,
7277
+ "@keyframes shufflePulse": {
7278
+ "0%, 100%": { opacity: 0.35 },
7279
+ "50%": { opacity: 0.7 }
7280
+ }
7281
+ } }, i)) })
7282
+ ] })
7247
7283
  },
7248
7284
  "search"
7249
7285
  ) })
@@ -12117,11 +12153,13 @@ var LocalLLMConfig = ({ compact, globalUrl, userdata, isLoaded, isLoggedIn, serv
12117
12153
  cancelled = true;
12118
12154
  };
12119
12155
  }, [orgId]);
12120
- const appRunLimit = orgData?.app_execution_limit ?? userdata?.app_execution_limit ?? 0;
12121
- const appRunUsage = (orgData?.app_execution_usage ?? userdata?.app_execution_usage ?? 0) + (orgData?.app_executions_suborgs ?? userdata?.app_executions_suborgs ?? 0);
12122
- const agentTokens = orgData?.sync_features?.agent_tokens ?? userdata?.sync_features?.agent_tokens;
12123
- const agentTokenLimit = Number(agentTokens?.limit) || 0;
12124
- const agentTokenUsage = Number(agentTokens?.usage) || 0;
12156
+ const sync = orgData?.sync_features ?? userdata?.sync_features ?? {};
12157
+ const appExec = sync.app_executions ?? {};
12158
+ const appRunLimit = Number(appExec.limit) || 0;
12159
+ const appRunUsage = Number(appExec.usage) || 0;
12160
+ const agentTokens = sync.agent_tokens ?? {};
12161
+ const agentTokenLimit = Number(agentTokens.limit) || 0;
12162
+ const agentTokenUsage = Number(agentTokens.usage) || 0;
12125
12163
  return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(import_material18.Box, { sx: { display: "flex", flexDirection: "column", gap: 2.5 }, children: [
12126
12164
  /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(import_material18.Box, { sx: { display: "flex", flexDirection: "column", gap: 1 }, children: [
12127
12165
  /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_material18.Typography, { sx: { fontSize: "0.85rem", fontWeight: 600, color: "hsl(var(--foreground))" }, children: "AI Provider" }),
@@ -12273,7 +12311,6 @@ var AgentRunDrawer = ({
12273
12311
  const effectiveLocalLLMSlot = localLLMSlot ?? /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
12274
12312
  LocalLLMConfig_default,
12275
12313
  {
12276
- compact: true,
12277
12314
  globalUrl,
12278
12315
  userdata,
12279
12316
  isLoaded,
@@ -13571,7 +13608,6 @@ var AgentsView = ({
13571
13608
  () => localLLMSlot ?? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
13572
13609
  LocalLLMConfig_default,
13573
13610
  {
13574
- compact: true,
13575
13611
  globalUrl,
13576
13612
  userdata,
13577
13613
  isLoaded,
@@ -13588,6 +13624,12 @@ var AgentsView = ({
13588
13624
  onChooseLLM();
13589
13625
  return;
13590
13626
  }
13627
+ if (typeof window !== "undefined" && window.__shuffleAgentDrawerMounted > 0) {
13628
+ window.dispatchEvent(
13629
+ new CustomEvent("agent-drawer-open", { detail: { tab: "localLLM" } })
13630
+ );
13631
+ return;
13632
+ }
13591
13633
  setBuiltInDrawer({ open: true, tab: "localLLM" });
13592
13634
  }, [onChooseLLM]);
13593
13635
  const handleEditWorkflow = (0, import_react20.useCallback)(
package/dist/index.mjs CHANGED
@@ -6586,6 +6586,17 @@ function AppSearchDrawer({
6586
6586
  const [detailAppName, setDetailAppName] = useState10(null);
6587
6587
  const [detailAppId, setDetailAppId] = useState10(null);
6588
6588
  const [highlightActive, setHighlightActive] = useState10(false);
6589
+ const [bodyReady, setBodyReady] = useState10(false);
6590
+ useEffect9(() => {
6591
+ if (!open) {
6592
+ setBodyReady(false);
6593
+ return;
6594
+ }
6595
+ const raf = requestAnimationFrame(() => {
6596
+ requestAnimationFrame(() => setBodyReady(true));
6597
+ });
6598
+ return () => cancelAnimationFrame(raf);
6599
+ }, [open]);
6589
6600
  useEffect9(() => {
6590
6601
  setHighlightActive(false);
6591
6602
  if (!open || !highlightAppName) return;
@@ -6783,15 +6794,15 @@ function AppSearchDrawer({
6783
6794
  },
6784
6795
  "& .singul-results-grid": {
6785
6796
  gridTemplateColumns: "repeat(2, minmax(0, 1fr))",
6786
- gridAutoRows: "88px",
6797
+ gridAutoRows: "78px",
6787
6798
  gap: "12px"
6788
6799
  },
6789
6800
  "& .singul-results-grid .singul-dropdown-item": {
6790
6801
  minWidth: 0,
6791
- minHeight: 88,
6792
- maxHeight: 88,
6793
- height: 88,
6794
- padding: "12px 14px",
6802
+ minHeight: 78,
6803
+ maxHeight: 78,
6804
+ height: 78,
6805
+ padding: "10px 14px",
6795
6806
  alignItems: "center",
6796
6807
  overflow: "hidden"
6797
6808
  },
@@ -6828,7 +6839,7 @@ function AppSearchDrawer({
6828
6839
  exit: { opacity: 0, x: -20 },
6829
6840
  transition: { duration: 0.2 },
6830
6841
  style: { height: "100%", minHeight: 0 },
6831
- children: /* @__PURE__ */ jsx15(
6842
+ children: bodyReady ? /* @__PURE__ */ jsx15(
6832
6843
  ShuffleMCP2,
6833
6844
  {
6834
6845
  apiKey: API_CONFIG.apiKey || void 0,
@@ -6879,7 +6890,32 @@ function AppSearchDrawer({
6879
6890
  })),
6880
6891
  customStyles: singulStyles
6881
6892
  }
6882
- )
6893
+ ) : /* @__PURE__ */ jsxs12(Box9, { sx: { display: "flex", flexDirection: "column", gap: 1.5, height: "100%" }, children: [
6894
+ /* @__PURE__ */ jsx15(Box9, { sx: {
6895
+ height: 44,
6896
+ borderRadius: "12px",
6897
+ border: "1px solid hsl(var(--border))",
6898
+ backgroundColor: "hsl(var(--background-elevated))"
6899
+ } }),
6900
+ /* @__PURE__ */ jsx15(Box9, { sx: {
6901
+ display: "grid",
6902
+ gridTemplateColumns: "repeat(2, minmax(0, 1fr))",
6903
+ gap: "12px",
6904
+ mt: 1
6905
+ }, children: Array.from({ length: 8 }).map((_, i) => /* @__PURE__ */ jsx15(Box9, { sx: {
6906
+ height: 78,
6907
+ borderRadius: "12px",
6908
+ backgroundColor: "hsl(var(--input))",
6909
+ border: "1px solid hsl(var(--border))",
6910
+ opacity: 0.6,
6911
+ animation: "shufflePulse 1.4s ease-in-out infinite",
6912
+ animationDelay: `${i * 60}ms`,
6913
+ "@keyframes shufflePulse": {
6914
+ "0%, 100%": { opacity: 0.35 },
6915
+ "50%": { opacity: 0.7 }
6916
+ }
6917
+ } }, i)) })
6918
+ ] })
6883
6919
  },
6884
6920
  "search"
6885
6921
  ) })
@@ -11808,11 +11844,13 @@ var LocalLLMConfig = ({ compact, globalUrl, userdata, isLoaded, isLoggedIn, serv
11808
11844
  cancelled = true;
11809
11845
  };
11810
11846
  }, [orgId]);
11811
- const appRunLimit = orgData?.app_execution_limit ?? userdata?.app_execution_limit ?? 0;
11812
- const appRunUsage = (orgData?.app_execution_usage ?? userdata?.app_execution_usage ?? 0) + (orgData?.app_executions_suborgs ?? userdata?.app_executions_suborgs ?? 0);
11813
- const agentTokens = orgData?.sync_features?.agent_tokens ?? userdata?.sync_features?.agent_tokens;
11814
- const agentTokenLimit = Number(agentTokens?.limit) || 0;
11815
- const agentTokenUsage = Number(agentTokens?.usage) || 0;
11847
+ const sync = orgData?.sync_features ?? userdata?.sync_features ?? {};
11848
+ const appExec = sync.app_executions ?? {};
11849
+ const appRunLimit = Number(appExec.limit) || 0;
11850
+ const appRunUsage = Number(appExec.usage) || 0;
11851
+ const agentTokens = sync.agent_tokens ?? {};
11852
+ const agentTokenLimit = Number(agentTokens.limit) || 0;
11853
+ const agentTokenUsage = Number(agentTokens.usage) || 0;
11816
11854
  return /* @__PURE__ */ jsxs19(Box16, { sx: { display: "flex", flexDirection: "column", gap: 2.5 }, children: [
11817
11855
  /* @__PURE__ */ jsxs19(Box16, { sx: { display: "flex", flexDirection: "column", gap: 1 }, children: [
11818
11856
  /* @__PURE__ */ jsx22(Typography15, { sx: { fontSize: "0.85rem", fontWeight: 600, color: "hsl(var(--foreground))" }, children: "AI Provider" }),
@@ -11964,7 +12002,6 @@ var AgentRunDrawer = ({
11964
12002
  const effectiveLocalLLMSlot = localLLMSlot ?? /* @__PURE__ */ jsx23(
11965
12003
  LocalLLMConfig_default,
11966
12004
  {
11967
- compact: true,
11968
12005
  globalUrl,
11969
12006
  userdata,
11970
12007
  isLoaded,
@@ -13291,7 +13328,6 @@ var AgentsView = ({
13291
13328
  () => localLLMSlot ?? /* @__PURE__ */ jsx26(
13292
13329
  LocalLLMConfig_default,
13293
13330
  {
13294
- compact: true,
13295
13331
  globalUrl,
13296
13332
  userdata,
13297
13333
  isLoaded,
@@ -13308,6 +13344,12 @@ var AgentsView = ({
13308
13344
  onChooseLLM();
13309
13345
  return;
13310
13346
  }
13347
+ if (typeof window !== "undefined" && window.__shuffleAgentDrawerMounted > 0) {
13348
+ window.dispatchEvent(
13349
+ new CustomEvent("agent-drawer-open", { detail: { tab: "localLLM" } })
13350
+ );
13351
+ return;
13352
+ }
13311
13353
  setBuiltInDrawer({ open: true, tab: "localLLM" });
13312
13354
  }, [onChooseLLM]);
13313
13355
  const handleEditWorkflow = useCallback10(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shuffleio/shuffle-mcps",
3
- "version": "0.0.24",
3
+ "version": "0.0.25",
4
4
  "description": "Turn 3,000+ SaaS tools into MCP servers your agents can use. Headless React component for search, selection, and OAuth handoff.",
5
5
  "license": "MIT",
6
6
  "repository": {