@dust-tt/sparkle 0.2.591 → 0.2.592
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/cjs/index.js +1 -1
- package/dist/esm/components/DataTable.d.ts +1 -1
- package/dist/esm/components/DataTable.d.ts.map +1 -1
- package/dist/esm/components/DataTable.js +51 -48
- package/dist/esm/components/DataTable.js.map +1 -1
- package/dist/esm/components/MultiPageSheet.d.ts +5 -0
- package/dist/esm/components/MultiPageSheet.d.ts.map +1 -1
- package/dist/esm/components/MultiPageSheet.js +1 -1
- package/dist/esm/components/MultiPageSheet.js.map +1 -1
- package/dist/esm/components/Sheet.d.ts +4 -1
- package/dist/esm/components/Sheet.d.ts.map +1 -1
- package/dist/esm/components/Sheet.js +5 -3
- package/dist/esm/components/Sheet.js.map +1 -1
- package/dist/esm/stories/DataTable.stories.d.ts +1 -0
- package/dist/esm/stories/DataTable.stories.d.ts.map +1 -1
- package/dist/esm/stories/DataTable.stories.js +28 -0
- package/dist/esm/stories/DataTable.stories.js.map +1 -1
- package/dist/esm/stories/MultiPageSheet.stories.d.ts +1 -0
- package/dist/esm/stories/MultiPageSheet.stories.d.ts.map +1 -1
- package/dist/esm/stories/MultiPageSheet.stories.js +154 -1
- package/dist/esm/stories/MultiPageSheet.stories.js.map +1 -1
- package/dist/sparkle.css +5 -4
- package/package.json +1 -1
- package/src/components/DataTable.tsx +115 -111
- package/src/components/MultiPageSheet.tsx +6 -0
- package/src/components/Sheet.tsx +17 -10
- package/src/stories/DataTable.stories.tsx +61 -0
- package/src/stories/MultiPageSheet.stories.tsx +214 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { __assign, __read, __spreadArray } from "tslib";
|
|
2
|
-
import React, { useState } from "react";
|
|
2
|
+
import React, { useCallback, useState } from "react";
|
|
3
3
|
import { Button } from "../components/Button";
|
|
4
|
+
import { ScrollableDataTable } from "../components/DataTable";
|
|
4
5
|
import { MultiPageSheet, MultiPageSheetContent, MultiPageSheetTrigger, } from "../components/MultiPageSheet";
|
|
5
6
|
import { Cog6ToothIcon, DocumentTextIcon, UserIcon } from "../icons/app";
|
|
6
7
|
var meta = {
|
|
@@ -244,4 +245,156 @@ export var WithConditionalNavigation = {
|
|
|
244
245
|
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() })));
|
|
245
246
|
},
|
|
246
247
|
};
|
|
248
|
+
// Generate random user data
|
|
249
|
+
var generateRandomUsers = function (count, startId) {
|
|
250
|
+
if (startId === void 0) { startId = 0; }
|
|
251
|
+
var roles = ["Admin", "User", "Manager", "Developer", "Designer"];
|
|
252
|
+
var statuses = ["Active", "Inactive", "Pending"];
|
|
253
|
+
var firstNames = [
|
|
254
|
+
"John",
|
|
255
|
+
"Jane",
|
|
256
|
+
"Mike",
|
|
257
|
+
"Sarah",
|
|
258
|
+
"David",
|
|
259
|
+
"Lisa",
|
|
260
|
+
"Tom",
|
|
261
|
+
"Anna",
|
|
262
|
+
"Chris",
|
|
263
|
+
"Emma",
|
|
264
|
+
];
|
|
265
|
+
var lastNames = [
|
|
266
|
+
"Smith",
|
|
267
|
+
"Johnson",
|
|
268
|
+
"Williams",
|
|
269
|
+
"Brown",
|
|
270
|
+
"Jones",
|
|
271
|
+
"Garcia",
|
|
272
|
+
"Miller",
|
|
273
|
+
"Davis",
|
|
274
|
+
"Rodriguez",
|
|
275
|
+
"Martinez",
|
|
276
|
+
];
|
|
277
|
+
return Array.from({ length: count }, function (_, index) {
|
|
278
|
+
var firstName = firstNames[Math.floor(Math.random() * firstNames.length)];
|
|
279
|
+
var lastName = lastNames[Math.floor(Math.random() * lastNames.length)];
|
|
280
|
+
var id = (startId + index + 1).toString();
|
|
281
|
+
return {
|
|
282
|
+
id: id,
|
|
283
|
+
name: "".concat(firstName, " ").concat(lastName),
|
|
284
|
+
email: "".concat(firstName.toLowerCase(), ".").concat(lastName.toLowerCase(), "@example.com"),
|
|
285
|
+
role: roles[Math.floor(Math.random() * roles.length)],
|
|
286
|
+
status: statuses[Math.floor(Math.random() * statuses.length)],
|
|
287
|
+
lastActive: new Date(Date.now() - Math.floor(Math.random() * 30) * 24 * 60 * 60 * 1000).toLocaleDateString(),
|
|
288
|
+
onClick: function () { return alert("Clicked on user: ".concat(firstName, " ").concat(lastName)); },
|
|
289
|
+
};
|
|
290
|
+
});
|
|
291
|
+
};
|
|
292
|
+
export var WithScrollableDataTable = {
|
|
293
|
+
render: function () {
|
|
294
|
+
var _a = __read(useState("users"), 2), currentPageId = _a[0], setCurrentPageId = _a[1];
|
|
295
|
+
var _b = __read(useState(function () {
|
|
296
|
+
return generateRandomUsers(50);
|
|
297
|
+
}), 2), users = _b[0], setUsers = _b[1];
|
|
298
|
+
var _c = __read(useState(false), 2), isLoading = _c[0], setIsLoading = _c[1];
|
|
299
|
+
var _d = __read(useState(true), 2), hasMore = _d[0], setHasMore = _d[1];
|
|
300
|
+
// Define columns for the data table
|
|
301
|
+
var columns = [
|
|
302
|
+
{
|
|
303
|
+
accessorKey: "name",
|
|
304
|
+
header: "Name",
|
|
305
|
+
cell: function (_a) {
|
|
306
|
+
var row = _a.row;
|
|
307
|
+
return (React.createElement("div", { className: "s-font-medium" }, row.getValue("name")));
|
|
308
|
+
},
|
|
309
|
+
meta: { sizeRatio: 25 },
|
|
310
|
+
},
|
|
311
|
+
{
|
|
312
|
+
accessorKey: "email",
|
|
313
|
+
header: "Email",
|
|
314
|
+
cell: function (_a) {
|
|
315
|
+
var row = _a.row;
|
|
316
|
+
return (React.createElement("div", { className: "s-text-muted-foreground" }, row.getValue("email")));
|
|
317
|
+
},
|
|
318
|
+
meta: { sizeRatio: 30 },
|
|
319
|
+
},
|
|
320
|
+
{
|
|
321
|
+
accessorKey: "role",
|
|
322
|
+
header: "Role",
|
|
323
|
+
cell: function (_a) {
|
|
324
|
+
var row = _a.row;
|
|
325
|
+
return (React.createElement("div", { className: "s-inline-flex s-rounded-full s-bg-blue-100 s-px-2 s-py-1 s-text-xs s-font-semibold s-text-blue-800" }, row.getValue("role")));
|
|
326
|
+
},
|
|
327
|
+
meta: { sizeRatio: 15 },
|
|
328
|
+
},
|
|
329
|
+
{
|
|
330
|
+
accessorKey: "status",
|
|
331
|
+
header: "Status",
|
|
332
|
+
cell: function (_a) {
|
|
333
|
+
var row = _a.row;
|
|
334
|
+
var status = row.getValue("status");
|
|
335
|
+
var colorClass = status === "Active"
|
|
336
|
+
? "s-bg-green-100 s-text-green-800"
|
|
337
|
+
: status === "Inactive"
|
|
338
|
+
? "s-bg-red-100 s-text-red-800"
|
|
339
|
+
: "s-bg-yellow-100 s-text-yellow-800";
|
|
340
|
+
return (React.createElement("div", { className: "s-inline-flex s-rounded-full s-px-2 s-py-1 s-text-xs s-font-semibold ".concat(colorClass) }, status));
|
|
341
|
+
},
|
|
342
|
+
meta: { sizeRatio: 15 },
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
accessorKey: "lastActive",
|
|
346
|
+
header: "Last Active",
|
|
347
|
+
cell: function (_a) {
|
|
348
|
+
var row = _a.row;
|
|
349
|
+
return (React.createElement("div", { className: "s-text-sm s-text-muted-foreground" }, row.getValue("lastActive")));
|
|
350
|
+
},
|
|
351
|
+
meta: { sizeRatio: 15 },
|
|
352
|
+
},
|
|
353
|
+
];
|
|
354
|
+
// Handle infinite loading
|
|
355
|
+
var handleLoadMore = useCallback(function () {
|
|
356
|
+
if (isLoading || !hasMore) {
|
|
357
|
+
return;
|
|
358
|
+
}
|
|
359
|
+
setIsLoading(true);
|
|
360
|
+
// Simulate API call delay
|
|
361
|
+
setTimeout(function () {
|
|
362
|
+
var newUsers = generateRandomUsers(25, users.length);
|
|
363
|
+
setUsers(function (prev) { return __spreadArray(__spreadArray([], __read(prev), false), __read(newUsers), false); });
|
|
364
|
+
setIsLoading(false);
|
|
365
|
+
// Stop loading more after reaching 200 items for demo purposes
|
|
366
|
+
if (users.length >= 175) {
|
|
367
|
+
setHasMore(false);
|
|
368
|
+
}
|
|
369
|
+
}, 1000);
|
|
370
|
+
}, [isLoading, hasMore, users.length]);
|
|
371
|
+
var handleSave = function () {
|
|
372
|
+
alert("User data saved!");
|
|
373
|
+
};
|
|
374
|
+
var scrollableDataTablePages = [
|
|
375
|
+
{
|
|
376
|
+
id: "users",
|
|
377
|
+
title: "User Management",
|
|
378
|
+
description: "Manage users with infinite scroll",
|
|
379
|
+
icon: UserIcon,
|
|
380
|
+
noScroll: true,
|
|
381
|
+
content: (React.createElement("div", { className: "s-flex s-h-full s-flex-col s-space-y-4" },
|
|
382
|
+
React.createElement("div", { className: "s-flex-shrink-0" },
|
|
383
|
+
React.createElement("h3", { className: "s-mb-2 s-text-lg s-font-semibold" }, "Users Database"),
|
|
384
|
+
React.createElement("p", { className: "s-text-sm s-text-muted-foreground" }, "Browse through all users with infinite scrolling. Click on any row to view details.")),
|
|
385
|
+
React.createElement(ScrollableDataTable, { className: "s-min-h-0", data: users, columns: columns, maxHeight: true, onLoadMore: hasMore ? handleLoadMore : undefined, isLoading: isLoading, enableRowSelection: false }),
|
|
386
|
+
React.createElement("div", { className: "s-flex-shrink-0 s-text-xs s-text-muted-foreground" },
|
|
387
|
+
"Showing ",
|
|
388
|
+
users.length,
|
|
389
|
+
" users",
|
|
390
|
+
" ",
|
|
391
|
+
hasMore ? "(loading more available)" : "(all users loaded)"))),
|
|
392
|
+
},
|
|
393
|
+
];
|
|
394
|
+
return (React.createElement(MultiPageSheet, null,
|
|
395
|
+
React.createElement(MultiPageSheetTrigger, { asChild: true },
|
|
396
|
+
React.createElement(Button, { label: "Open User Management" })),
|
|
397
|
+
React.createElement(MultiPageSheetContent, { pages: scrollableDataTablePages, currentPageId: currentPageId, onPageChange: setCurrentPageId, size: "xl", onSave: handleSave })));
|
|
398
|
+
},
|
|
399
|
+
};
|
|
247
400
|
//# sourceMappingURL=MultiPageSheet.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiPageSheet.stories.js","sourceRoot":"","sources":["../../../src/stories/MultiPageSheet.stories.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EACL,cAAc,EACd,qBAAqB,EAErB,qBAAqB,GACtB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE/E,IAAM,IAAI,GAAuC;IAC/C,KAAK,EAAE,2BAA2B;IAClC,SAAS,EAAE,qBAAqB;CACjC,CAAC;AAEF,eAAe,IAAI,CAAC;AAGpB,IAAM,WAAW,GAAyB;IACxC;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,kCAAkC;QAC/C,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CACP,6BAAK,SAAS,EAAC,aAAa;YAC1B;gBACE,4BAAI,SAAS,EAAC,kCAAkC,2BAE3C;gBACL,2BAAG,SAAS,EAAC,mCAAmC,mDAE5C,CACA;YACN,6BAAK,SAAS,EAAC,aAAa;gBAC1B;oBACE,+BAAO,SAAS,EAAC,yBAAyB,gBAAkB;oBAC5D,+BACE,IAAI,EAAC,MAAM,EACX,SAAS,EAAC,qDAAqD,EAC/D,WAAW,EAAC,UAAU,GACtB,CACE;gBACN;oBACE,+BAAO,SAAS,EAAC,yBAAyB,YAAc;oBACxD,+BACE,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,qDAAqD,EAC/D,WAAW,EAAC,kBAAkB,GAC9B,CACE,CACF,CACF,CACP;KACF;IACD;QACE,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,WAAW;QAClB,WAAW,EAAE,4BAA4B;QACzC,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,CACP,6BAAK,SAAS,EAAC,aAAa;YAC1B;gBACE,4BAAI,SAAS,EAAC,kCAAkC,sBAAqB;gBACrE,2BAAG,SAAS,EAAC,mCAAmC,mDAE5C,CACA;YACN,6BAAK,SAAS,EAAC,aAAa;gBAC1B,6BAAK,SAAS,EAAC,qEAAqE;oBAClF,8BAAM,SAAS,EAAC,WAAW,oBAAqB;oBAChD,oBAAC,MAAM,IAAC,KAAK,EAAC,UAAU,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAC,SAAS,GAAG,CACnD;gBACN,6BAAK,SAAS,EAAC,qEAAqE;oBAClF,8BAAM,SAAS,EAAC,WAAW,kBAAmB;oBAC9C,oBAAC,MAAM,IAAC,KAAK,EAAC,UAAU,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAC,SAAS,GAAG,CACnD,CACF,CACF,CACP;KACF;IACD;QACE,EAAE,EAAE,UAAU;QACd,KAAK,EAAE,UAAU;QACjB,WAAW,EAAE,4BAA4B;QACzC,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,CACP,6BAAK,SAAS,EAAC,aAAa;YAC1B;gBACE,4BAAI,SAAS,EAAC,kCAAkC,2BAE3C;gBACL,2BAAG,SAAS,EAAC,mCAAmC,8DAE5C,CACA;YACN,6BAAK,SAAS,EAAC,aAAa;gBAC1B,6BAAK,SAAS,EAAC,yCAAyC;oBACtD,8BAAM,SAAS,EAAC,WAAW,0BAA2B;oBACtD,+BAAO,IAAI,EAAC,UAAU,EAAC,SAAS,EAAC,WAAW,EAAC,cAAc,SAAG,CAC1D;gBACN,6BAAK,SAAS,EAAC,yCAAyC;oBACtD,8BAAM,SAAS,EAAC,WAAW,gBAAiB;oBAC5C,+BAAO,IAAI,EAAC,UAAU,EAAC,SAAS,EAAC,WAAW,GAAG,CAC3C;gBACN,6BAAK,SAAS,EAAC,yCAAyC;oBACtD,8BAAM,SAAS,EAAC,WAAW,gBAAiB;oBAC5C,+BAAO,IAAI,EAAC,UAAU,EAAC,SAAS,EAAC,WAAW,EAAC,cAAc,SAAG,CAC1D,CACF,CACF,CACP;KACF;CACF,CAAC;AAEF,IAAM,kBAAkB,GAAG;IACnB,IAAA,KAAA,OAAoC,QAAQ,CAAC,SAAS,CAAC,IAAA,EAAtD,aAAa,QAAA,EAAE,gBAAgB,QAAuB,CAAC;IAE9D,IAAM,UAAU,GAAG;QACjB,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC1B,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,cAAc;QACb,oBAAC,qBAAqB,IAAC,OAAO;YAC5B,oBAAC,MAAM,IAAC,KAAK,EAAC,uBAAuB,GAAG,CAClB;QACxB,oBAAC,qBAAqB,IACpB,KAAK,EAAE,WAAW,EAClB,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,gBAAgB,EAC9B,IAAI,EAAC,IAAI,EACT,MAAM,EAAE,UAAU,GAClB,CACa,CAClB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,OAAO,GAAU;IAC5B,MAAM,EAAE,cAAM,OAAA,oBAAC,kBAAkB,OAAG,EAAtB,CAAsB;CACrC,CAAC;AAEF,MAAM,CAAC,IAAM,kBAAkB,GAAU;IACvC,MAAM,EAAE;QACA,IAAA,KAAA,OAAoC,QAAQ,CAAC,OAAO,CAAC,IAAA,EAApD,aAAa,QAAA,EAAE,gBAAgB,QAAqB,CAAC;QACtD,IAAA,KAAA,OAA0B,QAAQ,CAAC;YACvC,IAAI,EAAE,EAAE;YACR,KAAK,EAAE,EAAE;YACT,YAAY,EAAE,EAAE;YAChB,aAAa,EAAE,KAAK;SACrB,CAAC,IAAA,EALK,QAAQ,QAAA,EAAE,WAAW,QAK1B,CAAC;QAEH,IAAM,UAAU,GAAG;YACjB,KAAK,CAAC,iCAA0B,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAE,CAAC,CAAC;QACvE,CAAC,CAAC;QAEF,IAAM,gBAAgB,GAAyB;YAC7C;gBACE,EAAE,EAAE,OAAO;gBACX,KAAK,EAAE,eAAe;gBACtB,WAAW,EAAE,8BAA8B;gBAC3C,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,CACP,6BAAK,SAAS,EAAC,aAAa;oBAC1B;wBACE,4BAAI,SAAS,EAAC,kCAAkC,wBAE3C;wBACL,2BAAG,SAAS,EAAC,mCAAmC,yDAE5C,CACA;oBACN,6BAAK,SAAS,EAAC,aAAa;wBAC1B;4BACE,+BAAO,SAAS,EAAC,yBAAyB,kBAAoB;4BAC9D,+BACE,IAAI,EAAC,MAAM,EACX,SAAS,EAAC,qDAAqD,EAC/D,WAAW,EAAC,iBAAiB,EAC7B,KAAK,EAAE,QAAQ,CAAC,IAAI,EACpB,QAAQ,EAAE,UAAC,CAAC;oCACV,OAAA,WAAW,uBAAM,QAAQ,KAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,IAAG;gCAAlD,CAAkD,GAEpD,CACE;wBACN;4BACE,+BAAO,SAAS,EAAC,yBAAyB,cAAgB;4BAC1D,+BACE,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,qDAAqD,EAC/D,WAAW,EAAC,kBAAkB,EAC9B,KAAK,EAAE,QAAQ,CAAC,KAAK,EACrB,QAAQ,EAAE,UAAC,CAAC;oCACV,OAAA,WAAW,uBAAM,QAAQ,KAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,IAAG;gCAAnD,CAAmD,GAErD,CACE;wBACN,6BAAK,SAAS,EAAC,QAAQ;4BACrB,oBAAC,MAAM,IACL,KAAK,EAAC,4BAA4B,EAClC,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,IAAI,EACT,QAAQ,EAAE,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,EAC3C,OAAO,EAAE,cAAM,OAAA,gBAAgB,CAAC,OAAO,CAAC,EAAzB,CAAyB,GACxC,CACE,CACF,CACF,CACP;aACF;YACD;gBACE,EAAE,EAAE,OAAO;gBACX,KAAK,EAAE,gBAAgB;gBACvB,WAAW,EAAE,mBAAmB;gBAChC,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,CACP,6BAAK,SAAS,EAAC,aAAa;oBAC1B;wBACE,4BAAI,SAAS,EAAC,kCAAkC,iCAE3C;wBACL,2BAAG,SAAS,EAAC,mCAAmC,6CAE5C,CACA;oBACN,6BAAK,SAAS,EAAC,aAAa,IACzB;wBACC,sBAAsB;wBACtB,kBAAkB;wBAClB,oBAAoB;qBACrB,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,CACd,6BACE,GAAG,EAAE,IAAI,EACT,SAAS,EAAE,sIACT,QAAQ,CAAC,YAAY,KAAK,IAAI;4BAC5B,CAAC,CAAC,gCAAgC;4BAClC,CAAC,CAAC,EAAE,CACN,EACF,OAAO,EAAE;4BACP,OAAA,WAAW,uBAAM,QAAQ,KAAE,YAAY,EAAE,IAAI,IAAG;wBAAhD,CAAgD;wBAGlD,8BAAM,SAAS,EAAC,WAAW,IAAE,IAAI,CAAQ;wBACzC,6BAAK,SAAS,EAAC,+BAA+B;4BAC5C,+BACE,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,QAAQ,CAAC,YAAY,KAAK,IAAI,EACvC,QAAQ,QACR,SAAS,EAAC,uBAAuB,GACjC,CACE,CACF,CACP,EAtBe,CAsBf,CAAC,CACE;oBACL,QAAQ,CAAC,YAAY,IAAI,CACxB,6BAAK,SAAS,EAAC,QAAQ;wBACrB,oBAAC,MAAM,IACL,KAAK,EAAC,sBAAsB,EAC5B,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,IAAI,EACT,OAAO,EAAE,cAAM,OAAA,gBAAgB,CAAC,OAAO,CAAC,EAAzB,CAAyB,GACxC,CACE,CACP,CACG,CACP;aACF;YACD;gBACE,EAAE,EAAE,OAAO;gBACX,KAAK,EAAE,gBAAgB;gBACvB,WAAW,EAAE,4BAA4B;gBACzC,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,CACP,6BAAK,SAAS,EAAC,aAAa;oBAC1B;wBACE,4BAAI,SAAS,EAAC,kCAAkC,mBAAkB;wBAClE,2BAAG,SAAS,EAAC,mCAAmC,+DAE5C,CACA;oBACN,6BAAK,SAAS,EAAC,aAAa;wBAC1B,6BAAK,SAAS,EAAC,yCAAyC;4BACtD,8BAAM,SAAS,EAAC,WAAW,iCAAkC;4BAC7D,+BACE,IAAI,EAAC,UAAU,EACf,SAAS,EAAC,WAAW,EACrB,OAAO,EAAE,QAAQ,CAAC,aAAa,EAC/B,QAAQ,EAAE,UAAC,CAAC;oCACV,OAAA,WAAW,uBACN,QAAQ,KACX,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,IAC/B;gCAHF,CAGE,GAEJ,CACE;wBACN,6BAAK,SAAS,EAAC,iCAAiC;4BAC9C,4BAAI,SAAS,EAAC,gCAAgC,cAAa;4BAC3D,6BAAK,SAAS,EAAC,uCAAuC;gCACpD;;oCAAY,QAAQ,CAAC,IAAI,CAAO;gCAChC;;oCAAa,QAAQ,CAAC,KAAK,CAAO;gCAClC;;oCAAqB,QAAQ,CAAC,YAAY,CAAO;gCACjD;;oCACiB,GAAG;oCACjB,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAC5C,CACF,CACF,CACF,CACF,CACP;aACF;SACF,CAAC;QAEF,OAAO,CACL,oBAAC,cAAc;YACb,oBAAC,qBAAqB,IAAC,OAAO;gBAC5B,oBAAC,MAAM,IAAC,KAAK,EAAC,wBAAwB,GAAG,CACnB;YACxB,oBAAC,qBAAqB,IACpB,KAAK,EAAE,gBAAgB,EACvB,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,gBAAgB,EAC9B,IAAI,EAAC,IAAI,EACT,MAAM,EAAE,UAAU,GAClB,CACa,CAClB,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,IAAM,yBAAyB,GAAU;IAC9C,MAAM,EAAE;QACA,IAAA,KAAA,OAAoC,QAAQ,CAAC,gBAAgB,CAAC,IAAA,EAA7D,aAAa,QAAA,EAAE,gBAAgB,QAA8B,CAAC;QAC/D,IAAA,KAAA,OAAoC,QAAQ,CAAW,EAAE,CAAC,IAAA,EAAzD,aAAa,QAAA,EAAE,gBAAgB,QAA0B,CAAC;QAC3D,IAAA,KAAA,OAAgC,QAAQ,CAAC,EAAE,CAAC,IAAA,EAA3C,WAAW,QAAA,EAAE,cAAc,QAAgB,CAAC;QAEnD,IAAM,UAAU,GAAG;YACjB,KAAK,CACH,yCAAkC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,4BAAkB,WAAW,CAAE,CAC1F,CAAC;QACJ,CAAC,CAAC;QAEF,IAAM,gBAAgB,GAAyB;YAC7C;gBACE,EAAE,EAAE,gBAAgB;gBACpB,KAAK,EAAE,qBAAqB;gBAC5B,WAAW,EAAE,sCAAsC;gBACnD,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,CACP,6BAAK,SAAS,EAAC,aAAa;oBAC1B;wBACE,4BAAI,SAAS,EAAC,kCAAkC,6BAE3C;wBACL,2BAAG,SAAS,EAAC,mCAAmC,mEAE5C,CACA;oBACN,6BAAK,SAAS,EAAC,aAAa,IACzB;wBACC,kBAAkB;wBAClB,gBAAgB;wBAChB,gBAAgB;wBAChB,iBAAiB;qBAClB,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,CACd,6BACE,GAAG,EAAE,IAAI,EACT,SAAS,EAAE,sIACT,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC;4BAC1B,CAAC,CAAC,gCAAgC;4BAClC,CAAC,CAAC,EAAE,CACN,EACF,OAAO,EAAE;4BACP,IAAI,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gCACjC,gBAAgB,CAAC,aAAa,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,KAAK,IAAI,EAAV,CAAU,CAAC,CAAC,CAAC;4BAC5D,CAAC;iCAAM,CAAC;gCACN,gBAAgB,wCAAK,aAAa,YAAE,IAAI,UAAE,CAAC;4BAC7C,CAAC;wBACH,CAAC;wBAED,8BAAM,SAAS,EAAC,WAAW,IAAE,IAAI,CAAQ;wBACzC,+BACE,IAAI,EAAC,UAAU,EACf,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EACrC,QAAQ,QACR,SAAS,EAAC,uBAAuB,GACjC,CACE,CACP,EAxBe,CAwBf,CAAC,CACE;oBACL,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,CAC3B,6BAAK,SAAS,EAAC,0CAA0C;wBACvD,2BAAG,SAAS,EAAC,2BAA2B;4BACrC,aAAa,CAAC,MAAM;;4BACpB,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;wCACpC,CACA,CACP,CACG,CACP;aACF;YACD;gBACE,EAAE,EAAE,aAAa;gBACjB,KAAK,EAAE,iBAAiB;gBACxB,WAAW,EAAE,6BAA6B;gBAC1C,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,CACP,6BAAK,SAAS,EAAC,aAAa;oBAC1B;wBACE,4BAAI,SAAS,EAAC,kCAAkC,4BAE3C;wBACL,2BAAG,SAAS,EAAC,mCAAmC,wDAE5C,CACA;oBACN,6BAAK,SAAS,EAAC,0CAA0C;wBACvD,2BAAG,SAAS,EAAC,2BAA2B;;4BAC3B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CACjC,CACA;oBACN,6BAAK,SAAS,EAAC,aAAa;wBAC1B,+BAAO,SAAS,EAAC,yBAAyB,kBAAoB;wBAC9D,kCACE,SAAS,EAAC,qDAAqD,EAC/D,WAAW,EAAC,iDAAiD,EAC7D,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,UAAC,CAAC,IAAK,OAAA,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAA9B,CAA8B,EAC/C,IAAI,EAAE,CAAC,GACP;wBACF,2BAAG,SAAS,EAAC,mCAAmC,wEAG5C,CACA,CACF,CACP;gBACD,aAAa,EAAE,CACb,6BAAK,SAAS,EAAC,wCAAwC,+BAEjD,CACP;aACF;SACF,CAAC;QAEF,OAAO,CACL,oBAAC,cAAc;YACb,oBAAC,qBAAqB,IAAC,OAAO;gBAC5B,oBAAC,MAAM,IAAC,KAAK,EAAC,2BAA2B,GAAG,CACtB;YACxB,oBAAC,qBAAqB,IACpB,KAAK,EAAE,gBAAgB,EACvB,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,gBAAgB,EAC9B,IAAI,EAAC,IAAI,EACT,MAAM,EAAE,UAAU,EAClB,cAAc,EAAE,IAAI,EACpB,WAAW,EACT,aAAa,KAAK,gBAAgB,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAElE,WAAW,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,GAChC,CACa,CAClB,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"MultiPageSheet.stories.js","sourceRoot":"","sources":["../../../src/stories/MultiPageSheet.stories.tsx"],"names":[],"mappings":"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"}
|
package/dist/sparkle.css
CHANGED
|
@@ -1315,10 +1315,6 @@ select {
|
|
|
1315
1315
|
height: 2.5rem;
|
|
1316
1316
|
}
|
|
1317
1317
|
|
|
1318
|
-
.s-h-100 {
|
|
1319
|
-
height: 400px;
|
|
1320
|
-
}
|
|
1321
|
-
|
|
1322
1318
|
.s-h-11 {
|
|
1323
1319
|
height: 2.75rem;
|
|
1324
1320
|
}
|
|
@@ -3805,6 +3801,11 @@ select {
|
|
|
3805
3801
|
background-color: rgb(255 255 255 / 0.95);
|
|
3806
3802
|
}
|
|
3807
3803
|
|
|
3804
|
+
.s-bg-yellow-100 {
|
|
3805
|
+
--tw-bg-opacity: 1;
|
|
3806
|
+
background-color: rgb(254 249 195 / var(--tw-bg-opacity));
|
|
3807
|
+
}
|
|
3808
|
+
|
|
3808
3809
|
.s-bg-yellow-200 {
|
|
3809
3810
|
--tw-bg-opacity: 1;
|
|
3810
3811
|
background-color: rgb(254 240 138 / var(--tw-bg-opacity));
|
package/package.json
CHANGED
|
@@ -327,7 +327,7 @@ export function DataTable<TData extends TBaseData>({
|
|
|
327
327
|
|
|
328
328
|
export interface ScrollableDataTableProps<TData extends TBaseData>
|
|
329
329
|
extends DataTableProps<TData> {
|
|
330
|
-
maxHeight?: string;
|
|
330
|
+
maxHeight?: string | boolean;
|
|
331
331
|
onLoadMore?: () => void;
|
|
332
332
|
isLoading?: boolean;
|
|
333
333
|
}
|
|
@@ -343,7 +343,7 @@ export function ScrollableDataTable<TData extends TBaseData>({
|
|
|
343
343
|
className,
|
|
344
344
|
widthClassName = "s-w-full",
|
|
345
345
|
columnsBreakpoints = {},
|
|
346
|
-
maxHeight
|
|
346
|
+
maxHeight,
|
|
347
347
|
onLoadMore,
|
|
348
348
|
isLoading = false,
|
|
349
349
|
rowSelection,
|
|
@@ -480,24 +480,95 @@ export function ScrollableDataTable<TData extends TBaseData>({
|
|
|
480
480
|
}, [onLoadMore, isLoading]);
|
|
481
481
|
|
|
482
482
|
return (
|
|
483
|
-
<div
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
483
|
+
<div
|
|
484
|
+
className={cn(
|
|
485
|
+
"s-relative s-overflow-y-auto s-overflow-x-hidden",
|
|
486
|
+
className,
|
|
487
|
+
widthClassName,
|
|
488
|
+
maxHeight === true
|
|
489
|
+
? "s-flex-1"
|
|
490
|
+
: typeof maxHeight === "string"
|
|
491
|
+
? maxHeight
|
|
492
|
+
: "s-max-h-100"
|
|
493
|
+
)}
|
|
494
|
+
ref={tableContainerRef}
|
|
495
|
+
>
|
|
496
|
+
<div className="s-relative">
|
|
497
|
+
<DataTable.Root className="s-w-full s-table-fixed">
|
|
498
|
+
<DataTable.Header className="s-sticky s-top-0 s-z-20 s-bg-white s-shadow-sm dark:s-bg-background-night">
|
|
499
|
+
{table.getHeaderGroups().map((headerGroup) => (
|
|
500
|
+
<DataTable.Row
|
|
501
|
+
key={headerGroup.id}
|
|
502
|
+
widthClassName={widthClassName}
|
|
503
|
+
>
|
|
504
|
+
{headerGroup.headers.map((header) => {
|
|
505
|
+
const breakpoint = columnsBreakpoints[header.id];
|
|
506
|
+
if (
|
|
507
|
+
!windowSize.width ||
|
|
508
|
+
!shouldRenderColumn(windowSize.width, breakpoint)
|
|
509
|
+
) {
|
|
510
|
+
return null;
|
|
511
|
+
}
|
|
512
|
+
|
|
513
|
+
return (
|
|
514
|
+
<DataTable.Head
|
|
515
|
+
column={header.column}
|
|
516
|
+
key={header.id}
|
|
517
|
+
className="s-max-w-0"
|
|
518
|
+
style={{
|
|
519
|
+
width: columnSizing[header.id],
|
|
520
|
+
minWidth: columnSizing[header.id],
|
|
521
|
+
}}
|
|
522
|
+
>
|
|
523
|
+
<div className="s-flex s-w-full s-items-center s-space-x-1">
|
|
524
|
+
<span className="s-truncate">
|
|
525
|
+
{flexRender(
|
|
526
|
+
header.column.columnDef.header,
|
|
527
|
+
header.getContext()
|
|
528
|
+
)}
|
|
529
|
+
</span>
|
|
530
|
+
</div>
|
|
531
|
+
</DataTable.Head>
|
|
532
|
+
);
|
|
533
|
+
})}
|
|
534
|
+
</DataTable.Row>
|
|
535
|
+
))}
|
|
536
|
+
</DataTable.Header>
|
|
537
|
+
<DataTable.Body
|
|
538
|
+
className="s-relative s-w-full"
|
|
539
|
+
style={{
|
|
540
|
+
height: `${rowVirtualizer.getTotalSize()}px`,
|
|
541
|
+
}}
|
|
542
|
+
>
|
|
543
|
+
{rowVirtualizer.getVirtualItems().map((virtualRow) => {
|
|
544
|
+
const row = rows[virtualRow.index];
|
|
545
|
+
const handleRowClick = () => {
|
|
546
|
+
if (enableRowSelection && row.getCanSelect()) {
|
|
547
|
+
row.toggleSelected(
|
|
548
|
+
!enableMultiRowSelection ? true : undefined
|
|
549
|
+
);
|
|
550
|
+
}
|
|
551
|
+
row.original.onClick?.();
|
|
552
|
+
};
|
|
553
|
+
|
|
554
|
+
return (
|
|
495
555
|
<DataTable.Row
|
|
496
|
-
key={
|
|
556
|
+
key={row.id}
|
|
557
|
+
id={row.id}
|
|
497
558
|
widthClassName={widthClassName}
|
|
559
|
+
onClick={
|
|
560
|
+
enableRowSelection ? handleRowClick : row.original.onClick
|
|
561
|
+
}
|
|
562
|
+
className="s-absolute s-w-full"
|
|
563
|
+
{...(enableRowSelection && {
|
|
564
|
+
"data-selected": row.getIsSelected(),
|
|
565
|
+
})}
|
|
566
|
+
style={{
|
|
567
|
+
transform: `translateY(${virtualRow.start}px)`,
|
|
568
|
+
}}
|
|
498
569
|
>
|
|
499
|
-
{
|
|
500
|
-
const breakpoint = columnsBreakpoints[
|
|
570
|
+
{row.getVisibleCells().map((cell) => {
|
|
571
|
+
const breakpoint = columnsBreakpoints[cell.column.id];
|
|
501
572
|
if (
|
|
502
573
|
!windowSize.width ||
|
|
503
574
|
!shouldRenderColumn(windowSize.width, breakpoint)
|
|
@@ -506,114 +577,47 @@ export function ScrollableDataTable<TData extends TBaseData>({
|
|
|
506
577
|
}
|
|
507
578
|
|
|
508
579
|
return (
|
|
509
|
-
<DataTable.
|
|
510
|
-
column={
|
|
511
|
-
key={
|
|
580
|
+
<DataTable.Cell
|
|
581
|
+
column={cell.column}
|
|
582
|
+
key={cell.id}
|
|
583
|
+
id={cell.id}
|
|
512
584
|
className="s-max-w-0"
|
|
513
585
|
style={{
|
|
514
|
-
width: columnSizing[
|
|
515
|
-
minWidth: columnSizing[
|
|
586
|
+
width: columnSizing[cell.column.id],
|
|
587
|
+
minWidth: columnSizing[cell.column.id],
|
|
516
588
|
}}
|
|
517
589
|
>
|
|
518
|
-
<div className="s-flex s-
|
|
590
|
+
<div className="s-flex s-items-center s-space-x-1">
|
|
519
591
|
<span className="s-truncate">
|
|
520
592
|
{flexRender(
|
|
521
|
-
|
|
522
|
-
|
|
593
|
+
cell.column.columnDef.cell,
|
|
594
|
+
cell.getContext()
|
|
523
595
|
)}
|
|
524
596
|
</span>
|
|
525
597
|
</div>
|
|
526
|
-
</DataTable.
|
|
598
|
+
</DataTable.Cell>
|
|
527
599
|
);
|
|
528
600
|
})}
|
|
529
601
|
</DataTable.Row>
|
|
530
|
-
)
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
const handleRowClick = () => {
|
|
541
|
-
if (enableRowSelection && row.getCanSelect()) {
|
|
542
|
-
row.toggleSelected(
|
|
543
|
-
!enableMultiRowSelection ? true : undefined
|
|
544
|
-
);
|
|
545
|
-
}
|
|
546
|
-
row.original.onClick?.();
|
|
547
|
-
};
|
|
548
|
-
|
|
549
|
-
return (
|
|
550
|
-
<DataTable.Row
|
|
551
|
-
key={row.id}
|
|
552
|
-
id={row.id}
|
|
553
|
-
widthClassName={widthClassName}
|
|
554
|
-
onClick={
|
|
555
|
-
enableRowSelection ? handleRowClick : row.original.onClick
|
|
556
|
-
}
|
|
557
|
-
className="s-absolute s-w-full"
|
|
558
|
-
{...(enableRowSelection && {
|
|
559
|
-
"data-selected": row.getIsSelected(),
|
|
560
|
-
})}
|
|
561
|
-
style={{
|
|
562
|
-
transform: `translateY(${virtualRow.start}px)`,
|
|
563
|
-
}}
|
|
564
|
-
>
|
|
565
|
-
{row.getVisibleCells().map((cell) => {
|
|
566
|
-
const breakpoint = columnsBreakpoints[cell.column.id];
|
|
567
|
-
if (
|
|
568
|
-
!windowSize.width ||
|
|
569
|
-
!shouldRenderColumn(windowSize.width, breakpoint)
|
|
570
|
-
) {
|
|
571
|
-
return null;
|
|
572
|
-
}
|
|
573
|
-
|
|
574
|
-
return (
|
|
575
|
-
<DataTable.Cell
|
|
576
|
-
column={cell.column}
|
|
577
|
-
key={cell.id}
|
|
578
|
-
id={cell.id}
|
|
579
|
-
className="s-max-w-0"
|
|
580
|
-
style={{
|
|
581
|
-
width: columnSizing[cell.column.id],
|
|
582
|
-
minWidth: columnSizing[cell.column.id],
|
|
583
|
-
}}
|
|
584
|
-
>
|
|
585
|
-
<div className="s-flex s-items-center s-space-x-1">
|
|
586
|
-
<span className="s-truncate">
|
|
587
|
-
{flexRender(
|
|
588
|
-
cell.column.columnDef.cell,
|
|
589
|
-
cell.getContext()
|
|
590
|
-
)}
|
|
591
|
-
</span>
|
|
592
|
-
</div>
|
|
593
|
-
</DataTable.Cell>
|
|
594
|
-
);
|
|
595
|
-
})}
|
|
596
|
-
</DataTable.Row>
|
|
597
|
-
);
|
|
598
|
-
})}
|
|
599
|
-
</DataTable.Body>
|
|
600
|
-
</DataTable.Root>
|
|
601
|
-
{/*sentinel div used for the intersection observer*/}
|
|
602
|
-
<div
|
|
603
|
-
ref={loadMoreRef}
|
|
604
|
-
className="s-absolute s-bottom-0 s-h-1 s-w-full"
|
|
605
|
-
/>
|
|
606
|
-
</div>
|
|
602
|
+
);
|
|
603
|
+
})}
|
|
604
|
+
</DataTable.Body>
|
|
605
|
+
</DataTable.Root>
|
|
606
|
+
{/*sentinel div used for the intersection observer*/}
|
|
607
|
+
<div
|
|
608
|
+
ref={loadMoreRef}
|
|
609
|
+
className="s-absolute s-bottom-0 s-h-1 s-w-full"
|
|
610
|
+
/>
|
|
611
|
+
</div>
|
|
607
612
|
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
</div>
|
|
613
|
+
{isLoading && (
|
|
614
|
+
<div className="s-sticky s-bottom-0 s-left-0 s-right-0 s-flex s-justify-center s-bg-white/80 s-py-2 s-backdrop-blur-sm dark:s-bg-background-night/80">
|
|
615
|
+
<div className="s-flex s-items-center s-gap-2 s-text-sm s-text-muted-foreground">
|
|
616
|
+
<Spinner size="xs" />
|
|
617
|
+
<span>Loading more data...</span>
|
|
614
618
|
</div>
|
|
615
|
-
|
|
616
|
-
|
|
619
|
+
</div>
|
|
620
|
+
)}
|
|
617
621
|
</div>
|
|
618
622
|
);
|
|
619
623
|
}
|
|
@@ -22,6 +22,11 @@ interface MultiPageSheetPage {
|
|
|
22
22
|
content: React.ReactNode;
|
|
23
23
|
fixedContent?: React.ReactNode;
|
|
24
24
|
footerContent?: React.ReactNode;
|
|
25
|
+
/**
|
|
26
|
+
* Remove the default ScrollArea in the SheetContainer.
|
|
27
|
+
* To be used if you want to manage the scroll yourself
|
|
28
|
+
*/
|
|
29
|
+
noScroll?: boolean;
|
|
25
30
|
}
|
|
26
31
|
|
|
27
32
|
interface MultiPageSheetProps {
|
|
@@ -231,6 +236,7 @@ const MultiPageSheetContent = React.forwardRef<
|
|
|
231
236
|
)}
|
|
232
237
|
<SheetContainer
|
|
233
238
|
className={currentPage.fixedContent ? "s-flex-1" : undefined}
|
|
239
|
+
noScroll={currentPage.noScroll}
|
|
234
240
|
>
|
|
235
241
|
{currentPage.content}
|
|
236
242
|
</SheetContainer>
|
package/src/components/Sheet.tsx
CHANGED
|
@@ -180,18 +180,25 @@ const SheetHeader = ({
|
|
|
180
180
|
);
|
|
181
181
|
SheetHeader.displayName = "SheetHeader";
|
|
182
182
|
|
|
183
|
-
|
|
183
|
+
interface SheetContainerProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
184
|
+
noScroll?: boolean;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
const SheetContainer = ({ children, noScroll }: SheetContainerProps) => {
|
|
188
|
+
const ScrollContainer = noScroll ? React.Fragment : ScrollArea;
|
|
184
189
|
return (
|
|
185
|
-
<
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
190
|
+
<ScrollContainer>
|
|
191
|
+
<div
|
|
192
|
+
className={cn(
|
|
193
|
+
"s-h-full s-w-full s-flex-grow",
|
|
194
|
+
"s-border-t s-border-border/60 s-transition-all s-duration-300 dark:s-border-border-night/60"
|
|
195
|
+
)}
|
|
196
|
+
>
|
|
197
|
+
<div className="s-relative s-flex s-h-full s-flex-col s-gap-5 s-p-5 s-text-left s-text-sm s-text-foreground dark:s-text-foreground-night">
|
|
198
|
+
{children}
|
|
199
|
+
</div>
|
|
193
200
|
</div>
|
|
194
|
-
</
|
|
201
|
+
</ScrollContainer>
|
|
195
202
|
);
|
|
196
203
|
};
|
|
197
204
|
SheetContainer.displayName = "SheetContainer";
|
|
@@ -607,6 +607,67 @@ export const ScrollableDataTableExample = () => {
|
|
|
607
607
|
);
|
|
608
608
|
};
|
|
609
609
|
|
|
610
|
+
export const ScrollableDataTableFullHeightExample = () => {
|
|
611
|
+
const [filter, setFilter] = useState("");
|
|
612
|
+
const [rowSelection, setRowSelection] = useState<RowSelectionState>({});
|
|
613
|
+
const [data, setData] = useState(() => createData(0, 50));
|
|
614
|
+
const [isLoading, setIsLoading] = useState(false);
|
|
615
|
+
|
|
616
|
+
// Load more data when user scrolls to bottom
|
|
617
|
+
const loadMore = useCallback(() => {
|
|
618
|
+
setIsLoading(true);
|
|
619
|
+
|
|
620
|
+
// Simulate API call delay
|
|
621
|
+
setTimeout(() => {
|
|
622
|
+
setData((prevData) => [...prevData, ...createData(prevData.length, 50)]);
|
|
623
|
+
setIsLoading(false);
|
|
624
|
+
}, 1000);
|
|
625
|
+
}, []);
|
|
626
|
+
|
|
627
|
+
const columnsWithSize = columns.map((column, index) => {
|
|
628
|
+
return { ...column, meta: { sizeRatio: index % 2 === 0 ? 15 : 10 } };
|
|
629
|
+
});
|
|
630
|
+
|
|
631
|
+
const columnsWithSelection: ColumnDef<Data>[] = useMemo(
|
|
632
|
+
() => [createSelectionColumn<Data>(), ...columnsWithSize],
|
|
633
|
+
[]
|
|
634
|
+
);
|
|
635
|
+
return (
|
|
636
|
+
<div className="s-flex s-w-full s-max-w-4xl s-flex-col s-gap-6">
|
|
637
|
+
<h3 className="s-text-lg s-font-medium">
|
|
638
|
+
Virtualized ScrollableDataTable with Infinite Scrolling based on parent
|
|
639
|
+
height
|
|
640
|
+
</h3>
|
|
641
|
+
|
|
642
|
+
<div className="s-flex s-h-[400px] s-flex-col s-gap-4">
|
|
643
|
+
<Input
|
|
644
|
+
name="filter"
|
|
645
|
+
placeholder="Filter"
|
|
646
|
+
value={filter}
|
|
647
|
+
onChange={(e) => setFilter(e.target.value)}
|
|
648
|
+
/>
|
|
649
|
+
|
|
650
|
+
<ScrollableDataTable
|
|
651
|
+
data={data}
|
|
652
|
+
filter={filter}
|
|
653
|
+
filterColumn="name"
|
|
654
|
+
columns={columnsWithSelection}
|
|
655
|
+
onLoadMore={loadMore}
|
|
656
|
+
isLoading={isLoading}
|
|
657
|
+
maxHeight
|
|
658
|
+
rowSelection={rowSelection}
|
|
659
|
+
setRowSelection={setRowSelection}
|
|
660
|
+
enableRowSelection={true}
|
|
661
|
+
/>
|
|
662
|
+
|
|
663
|
+
<div className="s-text-sm s-text-muted-foreground">
|
|
664
|
+
Loaded {data.length} rows. Scroll to the bottom to load more.
|
|
665
|
+
</div>
|
|
666
|
+
</div>
|
|
667
|
+
</div>
|
|
668
|
+
);
|
|
669
|
+
};
|
|
670
|
+
|
|
610
671
|
export const DataTableWithRowSelectionExample = () => {
|
|
611
672
|
const [rowSelection, setRowSelection] = useState<RowSelectionState>({});
|
|
612
673
|
const [data] = useState<Data[]>(() => createData(0, 10));
|