@arcadeai/design-system 3.29.0 → 3.29.2

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.
Files changed (78) hide show
  1. package/dist/components/index.js +95 -101
  2. package/dist/components/ui/index.d.ts +0 -1
  3. package/dist/components/ui/index.d.ts.map +1 -1
  4. package/dist/components/ui/index.js +95 -101
  5. package/dist/components/ui/molecules/index.d.ts +0 -2
  6. package/dist/components/ui/molecules/index.d.ts.map +1 -1
  7. package/dist/components/ui/molecules/index.js +9 -13
  8. package/dist/components/ui/molecules/requirement-badges.js +4 -7
  9. package/dist/components/ui/molecules/toolkit-card.d.ts +14 -2
  10. package/dist/components/ui/molecules/toolkit-card.d.ts.map +1 -1
  11. package/dist/components/ui/molecules/toolkit-card.js +1 -1
  12. package/dist/main.js +136 -142
  13. package/dist/{toolkit-card-BTFS_2j_.js → toolkit-card-DE-5B2dS.js} +2 -5
  14. package/package.json +27 -71
  15. package/dist/components/ui/molecules/toolkit-picker-trigger.d.ts +0 -9
  16. package/dist/components/ui/molecules/toolkit-picker-trigger.d.ts.map +0 -1
  17. package/dist/components/ui/molecules/toolkit-picker-trigger.js +0 -99
  18. package/dist/components/ui/molecules/toolkit-selection-summary.d.ts +0 -12
  19. package/dist/components/ui/molecules/toolkit-selection-summary.d.ts.map +0 -1
  20. package/dist/components/ui/molecules/toolkit-selection-summary.js +0 -116
  21. package/dist/components/ui/organisms/index.d.ts +0 -3
  22. package/dist/components/ui/organisms/index.d.ts.map +0 -1
  23. package/dist/components/ui/organisms/index.js +0 -4
  24. package/dist/components/ui/organisms/toolkit-picker/components/action-buttons.d.ts +0 -7
  25. package/dist/components/ui/organisms/toolkit-picker/components/action-buttons.d.ts.map +0 -1
  26. package/dist/components/ui/organisms/toolkit-picker/components/action-buttons.js +0 -54
  27. package/dist/components/ui/organisms/toolkit-picker/components/filter-badges.d.ts +0 -2
  28. package/dist/components/ui/organisms/toolkit-picker/components/filter-badges.d.ts.map +0 -1
  29. package/dist/components/ui/organisms/toolkit-picker/components/filter-badges.js +0 -89
  30. package/dist/components/ui/organisms/toolkit-picker/components/footer-summary.d.ts +0 -2
  31. package/dist/components/ui/organisms/toolkit-picker/components/footer-summary.d.ts.map +0 -1
  32. package/dist/components/ui/organisms/toolkit-picker/components/footer-summary.js +0 -36
  33. package/dist/components/ui/organisms/toolkit-picker/components/search-input.d.ts +0 -2
  34. package/dist/components/ui/organisms/toolkit-picker/components/search-input.d.ts.map +0 -1
  35. package/dist/components/ui/organisms/toolkit-picker/components/search-input.js +0 -70
  36. package/dist/components/ui/organisms/toolkit-picker/components/select-button.d.ts +0 -10
  37. package/dist/components/ui/organisms/toolkit-picker/components/select-button.d.ts.map +0 -1
  38. package/dist/components/ui/organisms/toolkit-picker/components/select-button.js +0 -35
  39. package/dist/components/ui/organisms/toolkit-picker/components/toolkit-card-with-selection.d.ts +0 -10
  40. package/dist/components/ui/organisms/toolkit-picker/components/toolkit-card-with-selection.d.ts.map +0 -1
  41. package/dist/components/ui/organisms/toolkit-picker/components/toolkit-card-with-selection.js +0 -36
  42. package/dist/components/ui/organisms/toolkit-picker/components/toolkit-list.d.ts +0 -9
  43. package/dist/components/ui/organisms/toolkit-picker/components/toolkit-list.d.ts.map +0 -1
  44. package/dist/components/ui/organisms/toolkit-picker/components/toolkit-list.js +0 -169
  45. package/dist/components/ui/organisms/toolkit-picker/components/tools-list.d.ts +0 -9
  46. package/dist/components/ui/organisms/toolkit-picker/components/tools-list.d.ts.map +0 -1
  47. package/dist/components/ui/organisms/toolkit-picker/components/tools-list.js +0 -125
  48. package/dist/components/ui/organisms/toolkit-picker/components/unoptimized-toggle.d.ts +0 -21
  49. package/dist/components/ui/organisms/toolkit-picker/components/unoptimized-toggle.d.ts.map +0 -1
  50. package/dist/components/ui/organisms/toolkit-picker/components/unoptimized-toggle.js +0 -29
  51. package/dist/components/ui/organisms/toolkit-picker/hooks/featured-toolkits.d.ts +0 -8
  52. package/dist/components/ui/organisms/toolkit-picker/hooks/featured-toolkits.d.ts.map +0 -1
  53. package/dist/components/ui/organisms/toolkit-picker/hooks/featured-toolkits.js +0 -11
  54. package/dist/components/ui/organisms/toolkit-picker/hooks/use-toolkit-picker.d.ts +0 -60
  55. package/dist/components/ui/organisms/toolkit-picker/hooks/use-toolkit-picker.d.ts.map +0 -1
  56. package/dist/components/ui/organisms/toolkit-picker/hooks/use-toolkit-picker.js +0 -326
  57. package/dist/components/ui/organisms/toolkit-picker/index.d.ts +0 -17
  58. package/dist/components/ui/organisms/toolkit-picker/index.d.ts.map +0 -1
  59. package/dist/components/ui/organisms/toolkit-picker/index.js +0 -17
  60. package/dist/components/ui/organisms/toolkit-picker/mocks/toolkit-collection.d.ts +0 -14
  61. package/dist/components/ui/organisms/toolkit-picker/mocks/toolkit-collection.d.ts.map +0 -1
  62. package/dist/components/ui/organisms/toolkit-picker/mocks/toolkit-collection.js +0 -896
  63. package/dist/components/ui/organisms/toolkit-picker/toolkit-picker.d.ts +0 -3
  64. package/dist/components/ui/organisms/toolkit-picker/toolkit-picker.d.ts.map +0 -1
  65. package/dist/components/ui/organisms/toolkit-picker/toolkit-picker.js +0 -221
  66. package/dist/components/ui/organisms/toolkit-picker/utils/toolkit-grouping.d.ts +0 -51
  67. package/dist/components/ui/organisms/toolkit-picker/utils/toolkit-grouping.d.ts.map +0 -1
  68. package/dist/components/ui/organisms/toolkit-picker/utils/toolkit-grouping.js +0 -81
  69. package/dist/lib/arcade/arcade.d.ts +0 -76
  70. package/dist/lib/arcade/arcade.d.ts.map +0 -1
  71. package/dist/lib/arcade/arcade.js +0 -1305
  72. package/dist/lib/arcade/mocks.d.ts +0 -3
  73. package/dist/lib/arcade/mocks.d.ts.map +0 -1
  74. package/dist/lib/arcade/mocks.js +0 -547
  75. package/dist/lib/arcade/toolkit-collection.d.ts +0 -15
  76. package/dist/lib/arcade/toolkit-collection.d.ts.map +0 -1
  77. package/dist/lib/arcade/toolkit-collection.js +0 -149
  78. package/dist/web-sgv-FK6q.js +0 -84
package/package.json CHANGED
@@ -1,77 +1,33 @@
1
1
  {
2
2
  "name": "@arcadeai/design-system",
3
3
  "private": false,
4
- "version": "3.29.0",
4
+ "version": "3.29.2",
5
5
  "type": "module",
6
6
  "main": "./dist/main.js",
7
7
  "types": "./dist/main.d.ts",
8
8
  "exports": {
9
9
  ".": {
10
- "development": "./lib/main.ts",
11
10
  "types": "./dist/main.d.ts",
12
11
  "default": "./dist/main.js"
13
12
  },
14
13
  "./rhf": {
15
- "development": "./lib/integrations/rhf/index.ts",
16
14
  "types": "./dist/integrations/rhf/index.d.ts",
17
15
  "default": "./dist/integrations/rhf/index.js"
18
16
  },
19
17
  "./index.css": "./dist/assets/index.css",
20
- "./components/ui/organisms/toolkit-picker": {
21
- "development": "./lib/components/ui/organisms/toolkit-picker/index.tsx",
22
- "types": "./dist/components/ui/organisms/toolkit-picker/index.d.ts",
23
- "default": "./dist/components/ui/organisms/toolkit-picker/index.js"
24
- },
25
18
  "./components/ui/atoms/icons": {
26
- "development": "./lib/components/ui/atoms/icons/index.tsx",
27
19
  "types": "./dist/components/ui/atoms/icons/index.d.ts",
28
20
  "default": "./dist/components/ui/atoms/icons/index.js"
29
21
  },
30
- "./components/*": {
31
- "development": "./lib/components/*.tsx",
32
- "types": "./dist/components/*.d.ts",
33
- "default": "./dist/components/*.js"
34
- },
35
- "./hooks/*": {
36
- "development": "./lib/hooks/*.ts",
37
- "types": "./dist/hooks/*.d.ts",
38
- "default": "./dist/hooks/*.js"
39
- },
40
- "./lib/*": {
41
- "development": "./lib/lib/*.ts",
42
- "types": "./dist/lib/*.d.ts",
43
- "default": "./dist/lib/*.js"
44
- },
45
22
  "./metadata/toolkit-icons": {
46
- "development": "./lib/metadata/toolkit-icons.tsx",
47
23
  "types": "./dist/metadata/toolkit-icons.d.ts",
48
24
  "default": "./dist/metadata/toolkit-icons.js"
49
25
  },
50
- "./metadata/*": {
51
- "development": "./lib/metadata/*.ts",
52
- "types": "./dist/metadata/*.d.ts",
53
- "default": "./dist/metadata/*.js"
54
- },
55
- "./integrations/*": {
56
- "development": "./lib/integrations/*.ts",
57
- "types": "./dist/integrations/*.d.ts",
58
- "default": "./dist/integrations/*.js"
59
- },
60
- "./assets/images/*": {
61
- "development": "./lib/assets/images/*.svg",
62
- "types": "./dist/assets/images/*.d.ts",
63
- "default": "./dist/assets/images/*.js"
64
- },
65
- "./assets/icons/*": {
66
- "development": "./lib/assets/icons/*.svg",
67
- "types": "./dist/assets/icons/*.d.ts",
68
- "default": "./dist/assets/icons/*.js"
69
- },
70
- "./assets/*.css": {
71
- "development": "./lib/*.css",
72
- "default": "./dist/assets/*.css"
73
- },
74
- "./assets/*": "./dist/assets/*"
26
+ "./assets/*.css": "./dist/assets/*.css",
27
+ "./*": {
28
+ "types": "./dist/*.d.ts",
29
+ "default": "./dist/*.js"
30
+ }
75
31
  },
76
32
  "repository": "github:ArcadeAI/Design-System",
77
33
  "files": [
@@ -99,45 +55,47 @@
99
55
  "build:registry": "bun ./scripts/generate-registry.ts && bun x shadcn build"
100
56
  },
101
57
  "peerDependencies": {
102
- "@hookform/resolvers": "5.2.1",
103
- "lucide-react": "0.544.0",
104
- "react": "19.2.1",
105
- "react-dom": "19.2.1",
106
- "react-hook-form": "7.62.0",
107
- "recharts": "3.2.0",
108
- "tailwindcss": "4.1.13"
58
+ "@hookform/resolvers": ">=5.2.1",
59
+ "lucide-react": ">=0.544.0",
60
+ "react": ">=19.2.1",
61
+ "react-dom": ">=19.2.1",
62
+ "react-hook-form": ">=7.62.0",
63
+ "recharts": ">=3.2.0",
64
+ "tailwindcss": ">=4.1.13"
109
65
  },
110
66
  "devDependencies": {
111
- "@chromatic-com/storybook": "4.1.3",
67
+ "@chromatic-com/storybook": "5.0.1",
68
+ "@tanstack/react-virtual": "3.13.18",
112
69
  "@hookform/resolvers": "5.2.2",
113
70
  "@monorepo/config": "0.0.0",
114
- "@storybook/addon-a11y": "10.1.11",
115
- "@storybook/addon-docs": "10.1.11",
116
- "@storybook/addon-themes": "10.1.11",
117
- "@storybook/addon-vitest": "10.1.11",
118
- "@storybook/react-vite": "10.1.11",
71
+ "@monorepo/storybook-config": "0.0.0",
72
+ "@storybook/addon-a11y": "10.2.10",
73
+ "@storybook/addon-docs": "10.2.10",
74
+ "@storybook/addon-themes": "10.2.10",
75
+ "@storybook/addon-vitest": "10.2.10",
76
+ "@storybook/react-vite": "10.2.10",
119
77
  "@tailwindcss/vite": "4.1.18",
120
78
  "@testing-library/dom": "10.4.1",
121
79
  "@testing-library/jest-dom": "6.9.1",
122
80
  "@testing-library/react": "16.3.1",
123
81
  "@testing-library/user-event": "14.6.1",
124
- "@types/node": "24.8.1",
82
+ "@types/node": "24.10.0",
125
83
  "@types/react": "19.2.7",
126
84
  "@types/react-dom": "19.2.3",
127
85
  "@vitejs/plugin-react-swc": "4.2.2",
128
86
  "@vitest/browser-playwright": "4.0.16",
129
87
  "@vitest/coverage-istanbul": "4.0.16",
130
- "chromatic": "13.3.0",
88
+ "chromatic": "15.1.1",
131
89
  "glob": "11.1.0",
132
- "globals": "16.4.0",
90
+ "globals": "16.5.0",
133
91
  "happy-dom": "20.0.5",
134
- "lucide-react": "0.546.0",
92
+ "lucide-react": "0.553.0",
135
93
  "playwright": "1.57.0",
136
94
  "react": "19.2.3",
137
95
  "react-dom": "19.2.3",
138
96
  "react-hook-form": "7.66.0",
139
- "recharts": "3.3.0",
140
- "storybook": "10.1.11",
97
+ "recharts": "3.4.1",
98
+ "storybook": "10.2.10",
141
99
  "tailwindcss": "4.1.18",
142
100
  "tw-animate-css": "1.4.0",
143
101
  "typescript": "5.9.3",
@@ -149,8 +107,6 @@
149
107
  "zod": "4.3.4"
150
108
  },
151
109
  "dependencies": {
152
- "@arcadeai/arcadejs": "1.11.1",
153
- "@tanstack/react-virtual": "3.13.18",
154
110
  "class-variance-authority": "0.7.1",
155
111
  "clsx": "2.1.1",
156
112
  "cmdk": "1.1.1",
@@ -1,9 +0,0 @@
1
- import { Button } from '../atoms/button';
2
- import type * as React from "react";
3
- export type ToolkitPickerTriggerProps = React.ComponentProps<typeof Button> & {
4
- maxVisibleIcons?: number;
5
- countType?: "toolkits" | "tools";
6
- loading?: boolean;
7
- };
8
- export declare function ToolkitPickerTrigger({ maxVisibleIcons, className, countType, loading, ...buttonProps }: ToolkitPickerTriggerProps): import("react/jsx-runtime").JSX.Element;
9
- //# sourceMappingURL=toolkit-picker-trigger.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"toolkit-picker-trigger.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/molecules/toolkit-picker-trigger.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAUtD,MAAM,MAAM,yBAAyB,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,GAAG;IAC5E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,EACnC,eAAmB,EACnB,SAAS,EACT,SAAsB,EACtB,OAAe,EACf,GAAG,WAAW,EACf,EAAE,yBAAyB,2CAsH3B"}
@@ -1,99 +0,0 @@
1
- import { jsx as e, jsxs as t, Fragment as h } from "react/jsx-runtime";
2
- import { Loader2 as T, Package as w } from "lucide-react";
3
- import { Badge as C } from "../atoms/badge.js";
4
- import { Button as y } from "../atoms/button.js";
5
- import { Tooltip as z, TooltipTrigger as M, TooltipContent as P } from "../atoms/tooltip.js";
6
- import { c as g } from "../../../utils-6KgZuQUR.js";
7
- import { getToolkitIcon as S } from "../../../metadata/toolkit-icons.js";
8
- import { useToolkitPicker as j } from "../organisms/toolkit-picker/hooks/use-toolkit-picker.js";
9
- function D({
10
- maxVisibleIcons: k = 2,
11
- className: b,
12
- countType: s = "toolkits",
13
- loading: n = !1,
14
- ...i
15
- }) {
16
- const {
17
- state: { committedToolkits: f, committedTools: N }
18
- } = j(), o = Array.from(f.keys()), l = o.length, x = N.size, c = o.slice(0, k).map((a) => {
19
- const r = f.get(a);
20
- return S(r?.metadata?.id);
21
- }), p = Math.max(l - c.length, 0), v = s === "tools";
22
- let d = "MCP Servers", m = l;
23
- v && (d = "Tools", m = x);
24
- let u = `Select ${s === "tools" ? "Tools" : "MCP Servers"}`;
25
- return n ? u = "Loading MCP servers..." : l > 0 && (u = `${m} ${d.toLowerCase()} selected`), /* @__PURE__ */ e(
26
- y,
27
- {
28
- ...i,
29
- "aria-label": u,
30
- className: g("gap-2 bg-transparent transition-colors", b),
31
- disabled: n,
32
- size: i.size ?? "sm",
33
- variant: i.variant ?? "outline",
34
- children: n ? /* @__PURE__ */ t(h, { children: [
35
- /* @__PURE__ */ e(T, { className: "h-4 w-4 animate-spin" }),
36
- /* @__PURE__ */ t("div", { className: "flex items-center gap-2", children: [
37
- /* @__PURE__ */ e("div", { className: "h-4 w-16 animate-pulse rounded bg-neutral-200 dark:bg-neutral-700" }),
38
- /* @__PURE__ */ e("div", { className: "h-5 w-6 animate-pulse rounded-full bg-neutral-200 dark:bg-neutral-700" })
39
- ] })
40
- ] }) : /* @__PURE__ */ t(h, { children: [
41
- l > 0 && /* @__PURE__ */ t(z, { children: [
42
- /* @__PURE__ */ e(M, { asChild: !0, children: /* @__PURE__ */ t("span", { className: "mr-2 flex items-center", children: [
43
- c.map((a, r) => /* @__PURE__ */ e(
44
- "div",
45
- {
46
- className: g("relative first:ml-0", r > 0 && "-ml-2"),
47
- style: { zIndex: r + 1 },
48
- children: /* @__PURE__ */ e("div", { className: "flex size-6 items-center justify-center rounded-xl bg-gradient-to-br from-white to-neutral-50 p-1.5 shadow-lg ring-1 ring-neutral-200/80 transition-all hover:scale-110 hover:shadow-xl dark:from-neutral-800 dark:to-neutral-900 dark:ring-neutral-700/80", children: /* @__PURE__ */ e(a, { className: "h-3 w-3 text-neutral-700 dark:text-neutral-300" }) })
49
- },
50
- `${a.name || "icon"}-${r}`
51
- )),
52
- p > 0 && /* @__PURE__ */ t(
53
- "span",
54
- {
55
- className: "inline-flex h-6 w-6 items-center justify-center rounded-xl bg-gradient-to-br from-blue-50 to-blue-100 font-bold text-[11px] text-blue-800 shadow-lg ring-1 ring-blue-200/80 dark:from-blue-900/40 dark:to-blue-800/40 dark:text-blue-200 dark:ring-blue-700/80",
56
- style: { zIndex: c.length + 10 },
57
- children: [
58
- "+",
59
- p
60
- ]
61
- }
62
- )
63
- ] }) }),
64
- /* @__PURE__ */ e(P, { side: "bottom", sideOffset: 6, children: /* @__PURE__ */ e("div", { className: "text-xs", children: /* @__PURE__ */ t("ul", { className: "list-disc space-y-1 pl-4", children: [
65
- /* @__PURE__ */ t("li", { children: [
66
- /* @__PURE__ */ e("span", { className: "font-semibold text-neutral-800 dark:text-neutral-200", children: "MCP Servers" }),
67
- /* @__PURE__ */ t("span", { className: "text-neutral-700 dark:text-neutral-300", children: [
68
- ": ",
69
- o.join(", ")
70
- ] })
71
- ] }),
72
- /* @__PURE__ */ t("li", { children: [
73
- /* @__PURE__ */ e("span", { className: "font-semibold text-neutral-800 dark:text-neutral-200", children: "Tools" }),
74
- /* @__PURE__ */ t("span", { className: "text-neutral-700 dark:text-neutral-300", children: [
75
- ": ",
76
- x,
77
- " selected"
78
- ] })
79
- ] })
80
- ] }) }) })
81
- ] }),
82
- l === 0 && /* @__PURE__ */ t(h, { children: [
83
- /* @__PURE__ */ e(w, { className: "h-4 w-4" }),
84
- /* @__PURE__ */ t("span", { className: "truncate text-sm", children: [
85
- "Select ",
86
- s === "tools" ? "Tools" : "MCP Servers"
87
- ] })
88
- ] }),
89
- l > 0 && /* @__PURE__ */ t("span", { className: "inline-flex items-center gap-2 truncate text-sm", children: [
90
- d,
91
- /* @__PURE__ */ e(C, { className: "px-1.5 py-0 text-[11px]", variant: "default", children: m })
92
- ] })
93
- ] })
94
- }
95
- );
96
- }
97
- export {
98
- D as ToolkitPickerTrigger
99
- };
@@ -1,12 +0,0 @@
1
- import { SelectionMode } from '../organisms/toolkit-picker';
2
- import { ToolkitSelectionMap } from '../organisms/toolkit-picker/hooks/use-toolkit-picker';
3
- export type ToolkitSelectionSummaryProps = {
4
- selectedToolkits: ToolkitSelectionMap;
5
- selectedTools: Set<string>;
6
- onClear: () => void;
7
- onSelectAll?: () => void;
8
- allVisibleSelected?: boolean;
9
- selectionMode?: SelectionMode;
10
- };
11
- export declare function ToolkitSelectionSummary({ selectedToolkits, selectedTools, onClear, onSelectAll, allVisibleSelected, selectionMode, }: ToolkitSelectionSummaryProps): import("react/jsx-runtime").JSX.Element;
12
- //# sourceMappingURL=toolkit-selection-summary.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"toolkit-selection-summary.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/molecules/toolkit-selection-summary.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AAC9E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mEAAmE,CAAC;AAG7G,MAAM,MAAM,4BAA4B,GAAG;IACzC,gBAAgB,EAAE,mBAAmB,CAAC;IACtC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,CAAC;AAGF,wBAAgB,uBAAuB,CAAC,EACtC,gBAAgB,EAChB,aAAa,EACb,OAAO,EACP,WAAW,EACX,kBAAkB,EAClB,aAAa,GACd,EAAE,4BAA4B,2CA6G9B"}
@@ -1,116 +0,0 @@
1
- import { jsxs as t, jsx as e } from "react/jsx-runtime";
2
- import { Package as u, X as y, CheckSquare as C } from "lucide-react";
3
- import { Button as x } from "../atoms/button.js";
4
- import { MobileTooltip as p, MobileTooltipTrigger as g, MobileTooltipContent as f } from "../atoms/mobile-tooltip.js";
5
- import "react";
6
- import "../atoms/chart.js";
7
- import "../../../react-resizable-panels.browser-DYl0LXfw.js";
8
- import "../atoms/sidebar.js";
9
- import "./date-time-picker.js";
10
- import "../../../toolkit-card-BTFS_2j_.js";
11
- import "./tool-card.js";
12
- import { getToolkitIcon as z } from "../../../metadata/toolkit-icons.js";
13
- import "../organisms/toolkit-picker/hooks/use-toolkit-picker.js";
14
- const j = 3;
15
- function D({
16
- selectedToolkits: s,
17
- selectedTools: n,
18
- onClear: N,
19
- onSelectAll: m,
20
- allVisibleSelected: k,
21
- selectionMode: v
22
- }) {
23
- const l = s.size > 0 || n.size > 0, i = Array.from(s.keys()), o = n.size, a = i.length, r = i.slice(0, j), c = Math.max(a - r.length, 0);
24
- return /* @__PURE__ */ t(
25
- "div",
26
- {
27
- className: "flex items-center gap-3",
28
- "data-testid": "toolkit-selection-summary",
29
- children: [
30
- !l && /* @__PURE__ */ t("div", { className: "flex items-center gap-2 text-neutral-500 text-sm dark:text-neutral-400", children: [
31
- /* @__PURE__ */ e(u, { className: "h-4 w-4" }),
32
- /* @__PURE__ */ e("span", { children: "No items selected" })
33
- ] }),
34
- l && /* @__PURE__ */ e("div", { className: "flex w-full items-center gap-2 sm:w-auto", children: /* @__PURE__ */ t(p, { children: [
35
- /* @__PURE__ */ e(g, { asChild: !0, children: /* @__PURE__ */ t("div", { className: "grid min-h-8 w-full grid-cols-1 items-center gap-x-3 gap-y-1 rounded-lg bg-neutral-100 px-2 py-1.5 text-xs sm:min-h-10 sm:w-auto sm:grid-cols-[auto_auto] sm:px-3 sm:py-2 sm:text-sm dark:bg-neutral-800", children: [
36
- /* @__PURE__ */ t("div", { className: "flex items-center gap-2", children: [
37
- /* @__PURE__ */ e(u, { className: "h-3.5 w-3.5 text-neutral-600 sm:h-4 sm:w-4 dark:text-neutral-300" }),
38
- /* @__PURE__ */ t("span", { className: "font-medium text-neutral-900 dark:text-neutral-100", children: [
39
- o,
40
- " tool",
41
- o !== 1 ? "s" : "",
42
- " selected"
43
- ] }),
44
- /* @__PURE__ */ t("div", { className: "ml-1 flex items-center sm:ml-1.5", children: [
45
- r.map((d, h) => {
46
- const w = s.get(d), b = z(w?.metadata?.id);
47
- return /* @__PURE__ */ e(
48
- "div",
49
- {
50
- className: `relative ${h > 0 ? "-ml-2" : ""}`,
51
- style: { zIndex: h + 1 },
52
- children: /* @__PURE__ */ e("div", { className: "flex h-5 w-5 items-center justify-center rounded-full bg-neutral-200 p-0.5 ring-1 ring-black/15 sm:h-6 sm:w-6 dark:bg-neutral-700 dark:ring-white/15", children: /* @__PURE__ */ e(b, { className: "h-3 w-3 sm:h-3.5 sm:w-3.5" }) })
53
- },
54
- `mini-icon-${d}`
55
- );
56
- }),
57
- c > 0 && /* @__PURE__ */ t(
58
- "span",
59
- {
60
- className: "-ml-2 inline-flex h-5 w-5 items-center justify-center rounded-full bg-neutral-200 font-medium text-[10px] text-neutral-700 ring-1 ring-black/15 sm:h-6 sm:w-6 dark:bg-neutral-700 dark:text-neutral-200 dark:ring-white/15",
61
- style: { zIndex: r.length + 10 },
62
- children: [
63
- "+",
64
- c
65
- ]
66
- }
67
- )
68
- ] })
69
- ] }),
70
- /* @__PURE__ */ t("div", { className: "text-neutral-600 text-xs dark:text-neutral-400", children: [
71
- "from ",
72
- a,
73
- " MCP server",
74
- a !== 1 ? "s" : ""
75
- ] })
76
- ] }) }),
77
- /* @__PURE__ */ e(f, { side: "top", sideOffset: 6, children: /* @__PURE__ */ e("div", { className: "max-w-64 text-wrap text-xs", children: i.join(", ") }) })
78
- ] }) }),
79
- /* @__PURE__ */ t("div", { className: "ml-auto flex items-center gap-2 sm:hidden", children: [
80
- l && /* @__PURE__ */ t(
81
- x,
82
- {
83
- className: "h-8 text-red-600 hover:text-red-700",
84
- "data-testid": "footer-clear-selections",
85
- onClick: N,
86
- size: "sm",
87
- variant: "ghost",
88
- children: [
89
- /* @__PURE__ */ e(y, { className: "mr-0.5 h-4 w-4" }),
90
- "Clear All"
91
- ]
92
- }
93
- ),
94
- v !== "single" && m && !k && /* @__PURE__ */ t(p, { children: [
95
- /* @__PURE__ */ e(g, { asChild: !0, children: /* @__PURE__ */ e(
96
- x,
97
- {
98
- "aria-label": "Select all visible",
99
- className: "h-8 w-8",
100
- "data-testid": "footer-select-all",
101
- onClick: m,
102
- size: "sm",
103
- variant: "ghost",
104
- children: /* @__PURE__ */ e(C, { className: "h-4 w-4" })
105
- }
106
- ) }),
107
- /* @__PURE__ */ e(f, { side: "top", sideOffset: 6, children: /* @__PURE__ */ e("div", { className: "text-xs", children: "Select all visible" }) })
108
- ] })
109
- ] })
110
- ]
111
- }
112
- );
113
- }
114
- export {
115
- D as ToolkitSelectionSummary
116
- };
@@ -1,3 +0,0 @@
1
- /** biome-ignore-all lint/performance/noBarrelFile: Barrel files are acceptable for atomic component folders */
2
- export { ToolkitPicker } from './toolkit-picker/index';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/organisms/index.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAC/G,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC"}
@@ -1,4 +0,0 @@
1
- import { ToolkitPicker as e } from "./toolkit-picker/index.js";
2
- export {
3
- e as ToolkitPicker
4
- };
@@ -1,7 +0,0 @@
1
- import { SelectionMode } from '../index';
2
- type ActionButtonsProps = {
3
- selectionMode: SelectionMode;
4
- };
5
- export declare function ActionButtons({ selectionMode }: ActionButtonsProps): import("react/jsx-runtime").JSX.Element;
6
- export {};
7
- //# sourceMappingURL=action-buttons.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"action-buttons.d.ts","sourceRoot":"","sources":["../../../../../../lib/components/ui/organisms/toolkit-picker/components/action-buttons.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,KAAK,kBAAkB,GAAG;IACxB,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,wBAAgB,aAAa,CAAC,EAAE,aAAa,EAAE,EAAE,kBAAkB,2CA6DlE"}
@@ -1,54 +0,0 @@
1
- import { jsxs as l, jsx as s } from "react/jsx-runtime";
2
- import { X as v, CheckSquare as x } from "lucide-react";
3
- import { Button as r } from "../../../atoms/button.js";
4
- import { useToolkitPicker as b } from "../hooks/use-toolkit-picker.js";
5
- function y({ selectionMode: o }) {
6
- const {
7
- state: {
8
- selectedToolkits: i,
9
- selectedTools: a,
10
- activeTab: n,
11
- filteredToolkits: c,
12
- filteredTools: d
13
- },
14
- clearSelections: m,
15
- selectAll: u
16
- } = b(), h = i.size > 0 || a.size > 0, t = n === "toolkits" ? Array.from(c).flatMap(
17
- (e) => e.tools.map((k) => k.fully_qualified_name)
18
- ) : Array.from(d).map((e) => e.fully_qualified_name), f = t.length > 0 && t.every((e) => a.has(e));
19
- return /* @__PURE__ */ l("div", { className: "hidden items-center gap-2 sm:flex", children: [
20
- h && /* @__PURE__ */ l(
21
- r,
22
- {
23
- className: "h-8 border-neutral-300 text-neutral-700 hover:bg-neutral-50 hover:text-neutral-900 dark:border-neutral-700 dark:text-neutral-300 dark:hover:bg-neutral-900/40 dark:hover:text-neutral-100",
24
- "data-testid": "clear-selections",
25
- onClick: m,
26
- size: "sm",
27
- variant: "outline",
28
- children: [
29
- /* @__PURE__ */ s(v, { className: "h-4 w-4 text-red-600 dark:text-red-400" }),
30
- "Clear All"
31
- ]
32
- }
33
- ),
34
- o === "multi" && !f && /* @__PURE__ */ l(
35
- r,
36
- {
37
- className: "h-8",
38
- "data-testid": "select-all",
39
- onClick: () => {
40
- u(t);
41
- },
42
- size: "sm",
43
- variant: "outline",
44
- children: [
45
- /* @__PURE__ */ s(x, { className: "h-4 w-4" }),
46
- "Select all"
47
- ]
48
- }
49
- )
50
- ] });
51
- }
52
- export {
53
- y as ActionButtons
54
- };
@@ -1,2 +0,0 @@
1
- export declare function FilterBadges(): import("react/jsx-runtime").JSX.Element | null;
2
- //# sourceMappingURL=filter-badges.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"filter-badges.d.ts","sourceRoot":"","sources":["../../../../../../lib/components/ui/organisms/toolkit-picker/components/filter-badges.tsx"],"names":[],"mappings":"AAKA,wBAAgB,YAAY,mDAyE3B"}
@@ -1,89 +0,0 @@
1
- import { jsxs as r, jsx as e } from "react/jsx-runtime";
2
- import { FilterIcon as m, X as l, Search as x } from "lucide-react";
3
- import { Badge as i } from "../../../atoms/badge.js";
4
- import { getToolkitIcon as b } from "../../../../../metadata/toolkit-icons.js";
5
- import { useToolkitPicker as h } from "../hooks/use-toolkit-picker.js";
6
- function y() {
7
- const {
8
- state: { toolkitFilter: t, searchQuery: a, filteredToolkits: d },
9
- setActiveTab: s,
10
- clearFilter: n,
11
- clearSearchQuery: o
12
- } = h();
13
- return t || a ? /* @__PURE__ */ r("div", { className: "mb-2 flex flex-wrap items-center gap-2", children: [
14
- t && /* @__PURE__ */ r(
15
- i,
16
- {
17
- className: "h-8 border border-purple-200 bg-purple-50 pr-1.5 pl-2 text-purple-800 shadow-sm ring-1 ring-purple-200/50 dark:border-purple-800/60 dark:bg-purple-950/40 dark:text-purple-200 dark:ring-purple-800/30",
18
- variant: "secondary",
19
- children: [
20
- /* @__PURE__ */ r("span", { className: "mr-1.5 inline-flex items-center gap-1 rounded-full bg-purple-100 px-1.5 py-0.5 text-[10px] text-purple-700 dark:bg-purple-800/60 dark:text-purple-200", children: [
21
- /* @__PURE__ */ e(m, { className: "h-3 w-3" }),
22
- "Filter"
23
- ] }),
24
- /* @__PURE__ */ r(
25
- "button",
26
- {
27
- className: "inline-flex h-full items-center gap-1.5",
28
- "data-testid": "filter-badge",
29
- onClick: () => s("toolkits"),
30
- type: "button",
31
- children: [
32
- (() => {
33
- const c = Array.from(d).find(
34
- (u) => u.name === t
35
- ), p = b(c?.metadata?.id);
36
- return /* @__PURE__ */ e(p, { className: "h-3.5 w-3.5" });
37
- })(),
38
- /* @__PURE__ */ e("span", { className: "font-medium text-xs", children: t })
39
- ]
40
- }
41
- ),
42
- /* @__PURE__ */ e(
43
- "button",
44
- {
45
- "aria-label": "Clear toolkit filter",
46
- className: "ml-1 inline-flex h-5 w-5 items-center justify-center rounded-full bg-purple-100 text-red-600 hover:bg-red-100 hover:text-red-700 focus-visible:ring-[3px] focus-visible:ring-red-200 dark:bg-purple-800/60 dark:text-red-400 dark:hover:bg-red-950/40 dark:hover:text-red-300",
47
- "data-testid": "clear-filter",
48
- onClick: n,
49
- type: "button",
50
- children: /* @__PURE__ */ e(l, { className: "h-3.5 w-3.5" })
51
- }
52
- )
53
- ]
54
- }
55
- ),
56
- a && /* @__PURE__ */ r(
57
- i,
58
- {
59
- className: "h-8 border border-teal-200 bg-teal-50 pr-1.5 pl-2 text-teal-800 shadow-sm ring-1 ring-teal-200/50 dark:border-teal-800/60 dark:bg-teal-950/40 dark:text-teal-200 dark:ring-teal-800/30",
60
- variant: "secondary",
61
- children: [
62
- /* @__PURE__ */ r("span", { className: "mr-1.5 inline-flex items-center gap-1 rounded-full bg-teal-100 px-1.5 py-0.5 text-[10px] text-teal-700 dark:bg-teal-800/60 dark:text-teal-200", children: [
63
- /* @__PURE__ */ e(x, { className: "h-3 w-3" }),
64
- "Search"
65
- ] }),
66
- /* @__PURE__ */ r("span", { className: "font-medium text-xs", children: [
67
- '"',
68
- a,
69
- '"'
70
- ] }),
71
- /* @__PURE__ */ e(
72
- "button",
73
- {
74
- "aria-label": "Clear search query",
75
- className: "ml-1 inline-flex h-5 w-5 items-center justify-center rounded-full bg-teal-100 text-red-600 hover:bg-red-100 hover:text-red-700 focus-visible:ring-[3px] focus-visible:ring-red-200 dark:bg-teal-800/60 dark:text-red-400 dark:hover:bg-red-950/40 dark:hover:text-red-300",
76
- "data-testid": "clear-search",
77
- onClick: o,
78
- type: "button",
79
- children: /* @__PURE__ */ e(l, { className: "h-3.5 w-3.5" })
80
- }
81
- )
82
- ]
83
- }
84
- )
85
- ] }) : null;
86
- }
87
- export {
88
- y as FilterBadges
89
- };
@@ -1,2 +0,0 @@
1
- export declare function FooterSummary(): import("react/jsx-runtime").JSX.Element | null;
2
- //# sourceMappingURL=footer-summary.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"footer-summary.d.ts","sourceRoot":"","sources":["../../../../../../lib/components/ui/organisms/toolkit-picker/components/footer-summary.tsx"],"names":[],"mappings":"AAGA,wBAAgB,aAAa,mDA2C5B"}
@@ -1,36 +0,0 @@
1
- import { jsx as r } from "react/jsx-runtime";
2
- import { ToolkitSelectionSummary as S } from "../../../molecules/toolkit-selection-summary.js";
3
- import { useToolkitPicker as T } from "../hooks/use-toolkit-picker.js";
4
- function A() {
5
- const {
6
- state: {
7
- selectionMode: l,
8
- selectedToolkits: o,
9
- selectedTools: t,
10
- filteredToolkits: i,
11
- filteredTools: s,
12
- activeTab: a
13
- },
14
- clearSelections: c,
15
- selectAll: n
16
- } = T(), m = i.size === o.size && s.size === t.size, f = () => {
17
- const u = a === "toolkits" ? Array.from(i).flatMap(
18
- (e) => e.tools.map((d) => d.fully_qualified_name)
19
- ) : Array.from(s).map((e) => e.fully_qualified_name);
20
- n(u);
21
- };
22
- return l !== "multi" ? null : /* @__PURE__ */ r("div", { className: "w-full sm:w-auto", children: /* @__PURE__ */ r(
23
- S,
24
- {
25
- allVisibleSelected: m,
26
- onClear: c,
27
- onSelectAll: f,
28
- selectedToolkits: o,
29
- selectedTools: new Set(t.keys()),
30
- selectionMode: l
31
- }
32
- ) });
33
- }
34
- export {
35
- A as FooterSummary
36
- };
@@ -1,2 +0,0 @@
1
- export declare function SearchInput(): import("react/jsx-runtime").JSX.Element;
2
- //# sourceMappingURL=search-input.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"search-input.d.ts","sourceRoot":"","sources":["../../../../../../lib/components/ui/organisms/toolkit-picker/components/search-input.tsx"],"names":[],"mappings":"AAMA,wBAAgB,WAAW,4CAwE1B"}