@dust-tt/sparkle 0.2.531 → 0.2.533

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.
@@ -18,6 +18,8 @@ interface MultiPageSheetProps {
18
18
  footerContent?: React.ReactNode;
19
19
  onSave?: () => void;
20
20
  className?: string;
21
+ disableNext?: boolean;
22
+ disableSave?: boolean;
21
23
  }
22
24
  declare const MultiPageSheetRoot: React.FC<import("@radix-ui/react-dialog").DialogProps>;
23
25
  declare const MultiPageSheetTrigger: React.ForwardRefExoticComponent<import("@radix-ui/react-dialog").DialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;
@@ -1 +1 @@
1
- {"version":3,"file":"MultiPageSheet.d.ts","sourceRoot":"","sources":["../../../src/components/MultiPageSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAIL,YAAY,EAMb,MAAM,2BAA2B,CAAC;AAGnC,UAAU,kBAAkB;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC3B,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B;AAED,UAAU,mBAAmB;IAC3B,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,IAAI,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;IACzD,IAAI,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;IACzD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,QAAA,MAAM,kBAAkB,wDAAQ,CAAC;AACjC,QAAA,MAAM,qBAAqB,+HAAe,CAAC;AAC3C,QAAA,MAAM,mBAAmB,6HAAa,CAAC;AAEvC,UAAU,0BAA2B,SAAQ,mBAAmB;IAC9D,QAAQ,CAAC,EAAE,KAAK,CAAC;CAClB;AAED,QAAA,MAAM,qBAAqB,mGAiJ1B,CAAC;AAIF,OAAO,EACL,kBAAkB,IAAI,cAAc,EACpC,mBAAmB,EACnB,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,qBAAqB,GACtB,CAAC"}
1
+ {"version":3,"file":"MultiPageSheet.d.ts","sourceRoot":"","sources":["../../../src/components/MultiPageSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAIL,YAAY,EAMb,MAAM,2BAA2B,CAAC;AAGnC,UAAU,kBAAkB;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC3B,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B;AAED,UAAU,mBAAmB;IAC3B,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,IAAI,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;IACzD,IAAI,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;IACzD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,QAAA,MAAM,kBAAkB,wDAAQ,CAAC;AACjC,QAAA,MAAM,qBAAqB,+HAAe,CAAC;AAC3C,QAAA,MAAM,mBAAmB,6HAAa,CAAC;AAEvC,UAAU,0BAA2B,SAAQ,mBAAmB;IAC9D,QAAQ,CAAC,EAAE,KAAK,CAAC;CAClB;AAED,QAAA,MAAM,qBAAqB,mGAsJ1B,CAAC;AAIF,OAAO,EACL,kBAAkB,IAAI,cAAc,EACpC,mBAAmB,EACnB,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,qBAAqB,GACtB,CAAC"}
@@ -7,7 +7,7 @@ var MultiPageSheetRoot = Sheet;
7
7
  var MultiPageSheetTrigger = SheetTrigger;
8
8
  var MultiPageSheetClose = SheetClose;
9
9
  var MultiPageSheetContent = React.forwardRef(function (_a, ref) {
10
- var pages = _a.pages, currentPageId = _a.currentPageId, onPageChange = _a.onPageChange, _b = _a.size, size = _b === void 0 ? "md" : _b, _c = _a.side, side = _c === void 0 ? "right" : _c, trapFocusScope = _a.trapFocusScope, _d = _a.showNavigation, showNavigation = _d === void 0 ? true : _d, footerContent = _a.footerContent, onSave = _a.onSave, className = _a.className, props = __rest(_a, ["pages", "currentPageId", "onPageChange", "size", "side", "trapFocusScope", "showNavigation", "footerContent", "onSave", "className"]);
10
+ var pages = _a.pages, currentPageId = _a.currentPageId, onPageChange = _a.onPageChange, _b = _a.size, size = _b === void 0 ? "md" : _b, _c = _a.side, side = _c === void 0 ? "right" : _c, trapFocusScope = _a.trapFocusScope, _d = _a.showNavigation, showNavigation = _d === void 0 ? true : _d, footerContent = _a.footerContent, onSave = _a.onSave, className = _a.className, _e = _a.disableNext, disableNext = _e === void 0 ? false : _e, _f = _a.disableSave, disableSave = _f === void 0 ? false : _f, props = __rest(_a, ["pages", "currentPageId", "onPageChange", "size", "side", "trapFocusScope", "showNavigation", "footerContent", "onSave", "className", "disableNext", "disableSave"]);
11
11
  var currentPageIndex = pages.findIndex(function (page) { return page.id === currentPageId; });
12
12
  var currentPage = pages[currentPageIndex];
13
13
  var handlePrevious = React.useCallback(function () {
@@ -26,13 +26,14 @@ var MultiPageSheetContent = React.forwardRef(function (_a, ref) {
26
26
  }
27
27
  var hasPrevious = currentPageIndex > 0;
28
28
  var hasNext = currentPageIndex < pages.length - 1;
29
+ var nextButtonDisabled = disableNext || !hasNext;
29
30
  return (React.createElement(SheetContent, __assign({ ref: ref, size: size, side: side, trapFocusScope: trapFocusScope, className: className }, props),
30
31
  React.createElement(SheetHeader, { hideButton: true },
31
32
  React.createElement("div", { className: "s-flex s-items-center s-justify-between s-pr-8" },
32
33
  React.createElement("div", { className: "s-flex s-items-center s-gap-3" },
33
34
  showNavigation && (React.createElement("div", { className: "s-flex s-items-center s-gap-1" },
34
35
  React.createElement(Button, { icon: ChevronLeftIcon, variant: "ghost", size: "sm", disabled: !hasPrevious, onClick: handlePrevious, tooltip: hasPrevious ? "Previous page" : undefined }),
35
- React.createElement(Button, { icon: ChevronRightIcon, variant: "ghost", size: "sm", disabled: !hasNext, onClick: handleNext, tooltip: hasNext ? "Next page" : undefined }))),
36
+ React.createElement(Button, { icon: ChevronRightIcon, variant: "ghost", size: "sm", disabled: nextButtonDisabled, onClick: handleNext, tooltip: hasNext && !disableNext ? "Next page" : undefined }))),
36
37
  React.createElement("div", { className: "s-flex s-items-center s-gap-2" },
37
38
  currentPage.icon && (React.createElement(Icon, { visual: currentPage.icon, size: "lg", className: "s-text-foreground" })),
38
39
  React.createElement("div", null,
@@ -50,8 +51,8 @@ var MultiPageSheetContent = React.forwardRef(function (_a, ref) {
50
51
  } },
51
52
  React.createElement("div", { className: "s-ml-auto s-flex s-items-center s-gap-2" },
52
53
  showNavigation && pages.length > 1 && hasPrevious && (React.createElement(Button, { label: "Previous", icon: ChevronLeftIcon, variant: "outline", size: "sm", onClick: handlePrevious })),
53
- showNavigation && pages.length > 1 && hasNext && (React.createElement(Button, { label: "Next", icon: ChevronRightIcon, variant: "outline", size: "sm", onClick: handleNext })),
54
- showNavigation && pages.length > 1 && !hasNext && onSave && (React.createElement(Button, { label: "Save changes", variant: "primary", size: "sm", onClick: onSave })),
54
+ showNavigation && pages.length > 1 && hasNext && (React.createElement(Button, { label: "Next", icon: ChevronRightIcon, variant: "outline", size: "sm", disabled: disableNext, onClick: handleNext })),
55
+ showNavigation && pages.length > 1 && !hasNext && onSave && (React.createElement(Button, { label: "Save changes", variant: "primary", size: "sm", disabled: disableSave, onClick: onSave })),
55
56
  footerContent))));
56
57
  });
57
58
  MultiPageSheetContent.displayName = "MultiPageSheetContent";
@@ -1 +1 @@
1
- {"version":3,"file":"MultiPageSheet.js","sourceRoot":"","sources":["../../../src/components/MultiPageSheet.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MultiPageSheet.js","sourceRoot":"","sources":["../../../src/components/MultiPageSheet.tsx"],"names":[],"mappings":"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"}
@@ -5,4 +5,5 @@ export default meta;
5
5
  type Story = StoryObj<typeof meta>;
6
6
  export declare const Default: Story;
7
7
  export declare const InteractiveContent: Story;
8
+ export declare const WithConditionalNavigation: Story;
8
9
  //# sourceMappingURL=MultiPageSheet.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MultiPageSheet.stories.d.ts","sourceRoot":"","sources":["../../../src/stories/MultiPageSheet.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAIvD,OAAO,EAEL,qBAAqB,EAGtB,MAAM,oCAAoC,CAAC;AAG5C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,qBAAqB,CAG5C,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AA0HnC,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KA0LhC,CAAC"}
1
+ {"version":3,"file":"MultiPageSheet.stories.d.ts","sourceRoot":"","sources":["../../../src/stories/MultiPageSheet.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAIvD,OAAO,EAEL,qBAAqB,EAGtB,MAAM,oCAAoC,CAAC;AAG5C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,qBAAqB,CAG5C,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AA0HnC,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KA0LhC,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,KAkIvC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { __assign, __read } from "tslib";
1
+ import { __assign, __read, __spreadArray } from "tslib";
2
2
  import React, { useState } from "react";
3
3
  import { Button } from "../components/Button";
4
4
  import { MultiPageSheet, MultiPageSheetContent, MultiPageSheetTrigger, } from "../components/MultiPageSheet";
@@ -176,4 +176,71 @@ export var InteractiveContent = {
176
176
  React.createElement(MultiPageSheetContent, { pages: interactivePages, currentPageId: currentPageId, onPageChange: setCurrentPageId, size: "lg", onSave: handleSave })));
177
177
  },
178
178
  };
179
+ export var WithConditionalNavigation = {
180
+ render: function () {
181
+ var _a = __read(useState("data-selection"), 2), currentPageId = _a[0], setCurrentPageId = _a[1];
182
+ var _b = __read(useState([]), 2), selectedItems = _b[0], setSelectedItems = _b[1];
183
+ var _c = __read(useState(""), 2), description = _c[0], setDescription = _c[1];
184
+ var handleSave = function () {
185
+ alert("Configuration saved! Selected: ".concat(selectedItems.join(", "), ", Description: ").concat(description));
186
+ };
187
+ var conditionalPages = [
188
+ {
189
+ id: "data-selection",
190
+ title: "Select Data Sources",
191
+ description: "Choose which data sources to include",
192
+ icon: DocumentTextIcon,
193
+ content: (React.createElement("div", { className: "s-space-y-4" },
194
+ React.createElement("div", null,
195
+ React.createElement("h3", { className: "s-mb-2 s-text-lg s-font-semibold" }, "Available Data Sources"),
196
+ React.createElement("p", { className: "s-text-sm s-text-muted-foreground" }, "Select at least one data source to proceed to the next step.")),
197
+ React.createElement("div", { className: "s-space-y-2" }, [
198
+ "Company Database",
199
+ "Customer Files",
200
+ "Analytics Data",
201
+ "Reports Archive",
202
+ ].map(function (item) { return (React.createElement("div", { key: item, className: "s-flex s-cursor-pointer s-items-center s-justify-between s-rounded-md s-border s-p-3 s-transition-colors hover:s-bg-gray-50 ".concat(selectedItems.includes(item)
203
+ ? "s-border-blue-300 s-bg-blue-50"
204
+ : ""), onClick: function () {
205
+ if (selectedItems.includes(item)) {
206
+ setSelectedItems(selectedItems.filter(function (i) { return i !== item; }));
207
+ }
208
+ else {
209
+ setSelectedItems(__spreadArray(__spreadArray([], __read(selectedItems), false), [item], false));
210
+ }
211
+ } },
212
+ React.createElement("span", { className: "s-text-sm" }, item),
213
+ React.createElement("input", { type: "checkbox", checked: selectedItems.includes(item), readOnly: true, className: "s-pointer-events-none" }))); })),
214
+ selectedItems.length > 0 && (React.createElement("div", { className: "s-rounded-md s-border s-bg-blue-50 s-p-3" },
215
+ React.createElement("p", { className: "s-text-sm s-text-blue-700" },
216
+ selectedItems.length,
217
+ " data source",
218
+ selectedItems.length !== 1 ? "s" : "",
219
+ " selected"))))),
220
+ },
221
+ {
222
+ id: "description",
223
+ title: "Add Description",
224
+ description: "Describe your configuration",
225
+ icon: Cog6ToothIcon,
226
+ content: (React.createElement("div", { className: "s-space-y-4" },
227
+ React.createElement("div", null,
228
+ React.createElement("h3", { className: "s-mb-2 s-text-lg s-font-semibold" }, "Configuration Details"),
229
+ React.createElement("p", { className: "s-text-sm s-text-muted-foreground" }, "Add a description for your selected data sources.")),
230
+ React.createElement("div", { className: "s-rounded-md s-border s-bg-blue-50 s-p-3" },
231
+ React.createElement("p", { className: "s-text-sm s-text-blue-700" },
232
+ "Selected: ",
233
+ selectedItems.join(", "))),
234
+ React.createElement("div", { className: "s-space-y-2" },
235
+ React.createElement("label", { className: "s-text-sm s-font-medium" }, "Description"),
236
+ React.createElement("textarea", { className: "s-mt-1 s-w-full s-rounded-md s-border s-px-3 s-py-2", placeholder: "Describe how these data sources will be used...", value: description, onChange: function (e) { return setDescription(e.target.value); }, rows: 4 }),
237
+ React.createElement("p", { className: "s-text-xs s-text-muted-foreground" }, "This description helps explain the purpose of your configuration.")))),
238
+ },
239
+ ];
240
+ return (React.createElement(MultiPageSheet, null,
241
+ React.createElement(MultiPageSheetTrigger, { asChild: true },
242
+ React.createElement(Button, { label: "Open Configuration Wizard" })),
243
+ React.createElement(MultiPageSheetContent, { pages: conditionalPages, currentPageId: currentPageId, onPageChange: setCurrentPageId, size: "lg", onSave: handleSave, showNavigation: true, disableNext: currentPageId === "data-selection" && selectedItems.length === 0, disableSave: !description.trim() })));
244
+ },
245
+ };
179
246
  //# sourceMappingURL=MultiPageSheet.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MultiPageSheet.stories.js","sourceRoot":"","sources":["../../../src/stories/MultiPageSheet.stories.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MultiPageSheet.stories.js","sourceRoot":"","sources":["../../../src/stories/MultiPageSheet.stories.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dust-tt/sparkle",
3
- "version": "0.2.531",
3
+ "version": "0.2.533",
4
4
  "scripts": {
5
5
  "build": "rm -rf dist && npm run tailwind && npm run build:esm && npm run build:cjs",
6
6
  "tailwind": "tailwindcss -i ./src/styles/tailwind.css -o dist/sparkle.css",
@@ -33,6 +33,8 @@ interface MultiPageSheetProps {
33
33
  footerContent?: React.ReactNode;
34
34
  onSave?: () => void;
35
35
  className?: string;
36
+ disableNext?: boolean;
37
+ disableSave?: boolean;
36
38
  }
37
39
 
38
40
  const MultiPageSheetRoot = Sheet;
@@ -59,6 +61,8 @@ const MultiPageSheetContent = React.forwardRef<
59
61
  footerContent,
60
62
  onSave,
61
63
  className,
64
+ disableNext = false,
65
+ disableSave = false,
62
66
  ...props
63
67
  },
64
68
  ref
@@ -87,6 +91,7 @@ const MultiPageSheetContent = React.forwardRef<
87
91
 
88
92
  const hasPrevious = currentPageIndex > 0;
89
93
  const hasNext = currentPageIndex < pages.length - 1;
94
+ const nextButtonDisabled = disableNext || !hasNext;
90
95
 
91
96
  return (
92
97
  <SheetContent
@@ -114,9 +119,9 @@ const MultiPageSheetContent = React.forwardRef<
114
119
  icon={ChevronRightIcon}
115
120
  variant="ghost"
116
121
  size="sm"
117
- disabled={!hasNext}
122
+ disabled={nextButtonDisabled}
118
123
  onClick={handleNext}
119
- tooltip={hasNext ? "Next page" : undefined}
124
+ tooltip={hasNext && !disableNext ? "Next page" : undefined}
120
125
  />
121
126
  </div>
122
127
  )}
@@ -171,6 +176,7 @@ const MultiPageSheetContent = React.forwardRef<
171
176
  icon={ChevronRightIcon}
172
177
  variant="outline"
173
178
  size="sm"
179
+ disabled={disableNext}
174
180
  onClick={handleNext}
175
181
  />
176
182
  )}
@@ -179,6 +185,7 @@ const MultiPageSheetContent = React.forwardRef<
179
185
  label="Save changes"
180
186
  variant="primary"
181
187
  size="sm"
188
+ disabled={disableSave}
182
189
  onClick={onSave}
183
190
  />
184
191
  )}
@@ -329,3 +329,135 @@ export const InteractiveContent: Story = {
329
329
  );
330
330
  },
331
331
  };
332
+
333
+ export const WithConditionalNavigation: Story = {
334
+ render: () => {
335
+ const [currentPageId, setCurrentPageId] = useState("data-selection");
336
+ const [selectedItems, setSelectedItems] = useState<string[]>([]);
337
+ const [description, setDescription] = useState("");
338
+
339
+ const handleSave = () => {
340
+ alert(
341
+ `Configuration saved! Selected: ${selectedItems.join(", ")}, Description: ${description}`
342
+ );
343
+ };
344
+
345
+ const conditionalPages: MultiPageSheetPage[] = [
346
+ {
347
+ id: "data-selection",
348
+ title: "Select Data Sources",
349
+ description: "Choose which data sources to include",
350
+ icon: DocumentTextIcon,
351
+ content: (
352
+ <div className="s-space-y-4">
353
+ <div>
354
+ <h3 className="s-mb-2 s-text-lg s-font-semibold">
355
+ Available Data Sources
356
+ </h3>
357
+ <p className="s-text-sm s-text-muted-foreground">
358
+ Select at least one data source to proceed to the next step.
359
+ </p>
360
+ </div>
361
+ <div className="s-space-y-2">
362
+ {[
363
+ "Company Database",
364
+ "Customer Files",
365
+ "Analytics Data",
366
+ "Reports Archive",
367
+ ].map((item) => (
368
+ <div
369
+ key={item}
370
+ className={`s-flex s-cursor-pointer s-items-center s-justify-between s-rounded-md s-border s-p-3 s-transition-colors hover:s-bg-gray-50 ${
371
+ selectedItems.includes(item)
372
+ ? "s-border-blue-300 s-bg-blue-50"
373
+ : ""
374
+ }`}
375
+ onClick={() => {
376
+ if (selectedItems.includes(item)) {
377
+ setSelectedItems(selectedItems.filter((i) => i !== item));
378
+ } else {
379
+ setSelectedItems([...selectedItems, item]);
380
+ }
381
+ }}
382
+ >
383
+ <span className="s-text-sm">{item}</span>
384
+ <input
385
+ type="checkbox"
386
+ checked={selectedItems.includes(item)}
387
+ readOnly
388
+ className="s-pointer-events-none"
389
+ />
390
+ </div>
391
+ ))}
392
+ </div>
393
+ {selectedItems.length > 0 && (
394
+ <div className="s-rounded-md s-border s-bg-blue-50 s-p-3">
395
+ <p className="s-text-sm s-text-blue-700">
396
+ {selectedItems.length} data source
397
+ {selectedItems.length !== 1 ? "s" : ""} selected
398
+ </p>
399
+ </div>
400
+ )}
401
+ </div>
402
+ ),
403
+ },
404
+ {
405
+ id: "description",
406
+ title: "Add Description",
407
+ description: "Describe your configuration",
408
+ icon: Cog6ToothIcon,
409
+ content: (
410
+ <div className="s-space-y-4">
411
+ <div>
412
+ <h3 className="s-mb-2 s-text-lg s-font-semibold">
413
+ Configuration Details
414
+ </h3>
415
+ <p className="s-text-sm s-text-muted-foreground">
416
+ Add a description for your selected data sources.
417
+ </p>
418
+ </div>
419
+ <div className="s-rounded-md s-border s-bg-blue-50 s-p-3">
420
+ <p className="s-text-sm s-text-blue-700">
421
+ Selected: {selectedItems.join(", ")}
422
+ </p>
423
+ </div>
424
+ <div className="s-space-y-2">
425
+ <label className="s-text-sm s-font-medium">Description</label>
426
+ <textarea
427
+ className="s-mt-1 s-w-full s-rounded-md s-border s-px-3 s-py-2"
428
+ placeholder="Describe how these data sources will be used..."
429
+ value={description}
430
+ onChange={(e) => setDescription(e.target.value)}
431
+ rows={4}
432
+ />
433
+ <p className="s-text-xs s-text-muted-foreground">
434
+ This description helps explain the purpose of your
435
+ configuration.
436
+ </p>
437
+ </div>
438
+ </div>
439
+ ),
440
+ },
441
+ ];
442
+
443
+ return (
444
+ <MultiPageSheet>
445
+ <MultiPageSheetTrigger asChild>
446
+ <Button label="Open Configuration Wizard" />
447
+ </MultiPageSheetTrigger>
448
+ <MultiPageSheetContent
449
+ pages={conditionalPages}
450
+ currentPageId={currentPageId}
451
+ onPageChange={setCurrentPageId}
452
+ size="lg"
453
+ onSave={handleSave}
454
+ showNavigation={true}
455
+ disableNext={
456
+ currentPageId === "data-selection" && selectedItems.length === 0
457
+ }
458
+ disableSave={!description.trim()}
459
+ />
460
+ </MultiPageSheet>
461
+ );
462
+ },
463
+ };