@bysages/react 0.2.3 → 0.3.1
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/README.md +16 -2
- package/dist/{ai-response-jZy-0Tvv.mjs → ai-response-BfKTmtCt.mjs} +8 -4
- package/dist/components/ai/index.d.mts +2 -2
- package/dist/components/ai/index.mjs +32 -17
- package/dist/components/ai-attachments/index.mjs +3 -1
- package/dist/components/ai-prompt-input/index.d.mts +1 -1
- package/dist/components/ai-prompt-input/index.mjs +8 -4
- package/dist/components/ai-response/index.d.mts +4 -2
- package/dist/components/ai-response/index.mjs +1 -1
- package/dist/components/autocomplete/index.mjs +3 -1
- package/dist/components/avatar/index.d.mts +4 -1
- package/dist/components/avatar/index.mjs +3 -2
- package/dist/components/banner/index.mjs +21 -17
- package/dist/components/bento/index.d.mts +26 -0
- package/dist/components/bento/index.mjs +41 -0
- package/dist/components/block-ui/index.d.mts +12 -0
- package/dist/components/block-ui/index.mjs +24 -0
- package/dist/components/breadcrumb/index.d.mts +3 -8
- package/dist/components/breadcrumb/index.mjs +11 -1
- package/dist/components/browser/index.d.mts +23 -0
- package/dist/components/browser/index.mjs +70 -0
- package/dist/components/cascade-select/index.mjs +15 -5
- package/dist/components/command/index.mjs +9 -3
- package/dist/components/config-provider/index.d.mts +5 -2
- package/dist/components/config-provider/index.mjs +3 -2
- package/dist/components/data-view/index.d.mts +18 -0
- package/dist/components/data-view/index.mjs +66 -0
- package/dist/components/deferred-content/index.d.mts +16 -0
- package/dist/components/deferred-content/index.mjs +34 -0
- package/dist/components/descriptions/index.d.mts +13 -5
- package/dist/components/descriptions/index.mjs +20 -2
- package/dist/components/dock/index.d.mts +25 -0
- package/dist/components/dock/index.mjs +51 -0
- package/dist/components/dynamic-input/index.mjs +4 -2
- package/dist/components/file-upload/index.d.mts +8 -1
- package/dist/components/file-upload/index.mjs +20 -1
- package/dist/components/float-button/index.mjs +3 -1
- package/dist/components/form/index.mjs +1 -1
- package/dist/components/icon/index.d.mts +10 -5
- package/dist/components/icon/index.mjs +7 -7
- package/dist/components/image/index.d.mts +7 -1
- package/dist/components/image/index.mjs +3 -1
- package/dist/components/image-viewer/index.d.mts +7 -1
- package/dist/components/image-viewer/index.mjs +8 -4
- package/dist/components/input/index.d.mts +4 -1
- package/dist/components/input/index.mjs +1 -20
- package/dist/components/json-tree-view/index.d.mts +3 -3
- package/dist/components/json-tree-view/index.mjs +17 -4
- package/dist/components/layout/index.mjs +3 -1
- package/dist/components/list/index.d.mts +5 -4
- package/dist/components/list/index.mjs +10 -1
- package/dist/components/menubar/index.mjs +1 -0
- package/dist/components/order-list/index.d.mts +21 -0
- package/dist/components/order-list/index.mjs +161 -0
- package/dist/components/result/index.d.mts +31 -0
- package/dist/components/result/index.mjs +59 -0
- package/dist/components/select/index.d.mts +2 -17
- package/dist/components/select/index.mjs +2 -18
- package/dist/components/spinner/index.mjs +3 -1
- package/dist/components/split-button/index.mjs +3 -1
- package/dist/components/spotlight/index.d.mts +12 -0
- package/dist/components/spotlight/index.mjs +33 -0
- package/dist/components/steps/index.d.mts +5 -1
- package/dist/components/steps/index.mjs +10 -1
- package/dist/components/table/index.mjs +19 -15
- package/dist/components/tabs/index.d.mts +3 -1
- package/dist/components/tabs/index.mjs +3 -2
- package/dist/components/terminal/index.d.mts +17 -0
- package/dist/components/terminal/index.mjs +68 -0
- package/dist/components/timeline/index.d.mts +13 -11
- package/dist/components/timeline/index.mjs +11 -1
- package/dist/components/toc/index.d.mts +7 -1
- package/dist/components/toc/index.mjs +13 -1
- package/dist/components/toolbar/index.d.mts +17 -0
- package/dist/components/toolbar/index.mjs +29 -0
- package/dist/components/transfer/index.mjs +7 -5
- package/dist/components/tree-select/index.mjs +5 -3
- package/dist/components/tree-view/index.d.mts +10 -1
- package/dist/components/tree-view/index.mjs +22 -1
- package/dist/components/user/index.d.mts +20 -0
- package/dist/components/user/index.mjs +42 -0
- package/dist/components/virtual-list/index.d.mts +17 -0
- package/dist/components/virtual-list/index.mjs +53 -0
- package/dist/glyph-VI989p8H.mjs +14 -0
- package/dist/{index-DaAbbSz9.d.mts → index-Dn5mHf1g.d.mts} +738 -3786
- package/dist/index-Iy8m0Qev.d.mts +42 -0
- package/dist/index.d.mts +16 -3
- package/dist/index.mjs +28 -15
- package/dist/input-2oezH-dY.mjs +58 -0
- package/dist/messages-1jJWtaYU.mjs +16 -0
- package/dist/select-eAHutw56.mjs +70 -0
- package/package.json +30 -9
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { injectComponentStyle } from "@bysages/core";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { useRef } from "react";
|
|
4
|
+
import { useVirtualizer } from "@tanstack/react-virtual";
|
|
5
|
+
//#region src/components/virtual-list/index.tsx
|
|
6
|
+
/** A ledger that only mounts the rows on stage: the viewport keeps its
|
|
7
|
+
* scroll length by a spacer sized from the row height, the rows
|
|
8
|
+
* themselves are positioned against it — a ten-thousand-row list
|
|
9
|
+
* costs the DOM a window, not the ledger. */
|
|
10
|
+
function VirtualList({ items, itemHeight = 40, height = 320, renderItem, ...rest }) {
|
|
11
|
+
injectComponentStyle("virtual-list");
|
|
12
|
+
const viewport = useRef(null);
|
|
13
|
+
const virtualizer = useVirtualizer({
|
|
14
|
+
count: items.length,
|
|
15
|
+
getScrollElement: () => viewport.current,
|
|
16
|
+
estimateSize: () => itemHeight,
|
|
17
|
+
overscan: 6
|
|
18
|
+
});
|
|
19
|
+
return /* @__PURE__ */ jsx("div", {
|
|
20
|
+
...rest,
|
|
21
|
+
ref: viewport,
|
|
22
|
+
tabIndex: 0,
|
|
23
|
+
"data-scope": "virtual-list",
|
|
24
|
+
"data-part": "root",
|
|
25
|
+
style: {
|
|
26
|
+
...rest.style,
|
|
27
|
+
blockSize: typeof height === "number" ? `${height}px` : height
|
|
28
|
+
},
|
|
29
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
30
|
+
"data-scope": "virtual-list",
|
|
31
|
+
"data-part": "inner",
|
|
32
|
+
style: {
|
|
33
|
+
blockSize: virtualizer.getTotalSize(),
|
|
34
|
+
position: "relative"
|
|
35
|
+
},
|
|
36
|
+
children: virtualizer.getVirtualItems().map((row) => /* @__PURE__ */ jsx("div", {
|
|
37
|
+
"data-scope": "virtual-list",
|
|
38
|
+
"data-part": "row",
|
|
39
|
+
style: {
|
|
40
|
+
position: "absolute",
|
|
41
|
+
top: 0,
|
|
42
|
+
insetInlineStart: 0,
|
|
43
|
+
inlineSize: "100%",
|
|
44
|
+
transform: `translateY(${row.start}px)`,
|
|
45
|
+
blockSize: row.size
|
|
46
|
+
},
|
|
47
|
+
children: renderItem?.(items[row.index], row.index)
|
|
48
|
+
}, String(row.key)))
|
|
49
|
+
})
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
//#endregion
|
|
53
|
+
export { VirtualList };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
//#region src/internal/glyph.tsx
|
|
3
|
+
/** Render a lucide glyph as a bare svg element — the components' own
|
|
4
|
+
* default icons. No span shell: the part rules size the svg directly. */
|
|
5
|
+
function glyphNode(glyph, attrs = {}) {
|
|
6
|
+
return /* @__PURE__ */ jsx("svg", {
|
|
7
|
+
viewBox: `0 0 ${glyph.width} ${glyph.height}`,
|
|
8
|
+
"aria-hidden": "true",
|
|
9
|
+
...attrs,
|
|
10
|
+
dangerouslySetInnerHTML: { __html: glyph.body }
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
//#endregion
|
|
14
|
+
export { glyphNode as t };
|