@bysages/solid 0.2.2 → 0.3.0
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-ClGGptX3.mjs +139 -0
- package/dist/chevron-D5RzcayK.mjs +9 -0
- package/dist/components/accordion/index.d.mts +7 -0
- package/dist/components/accordion/index.mjs +10 -0
- package/dist/components/affix/index.d.mts +20 -0
- package/dist/components/affix/index.mjs +33 -0
- package/dist/components/ai/index.d.mts +2 -0
- package/dist/components/ai/index.mjs +71 -0
- package/dist/components/ai-action/index.d.mts +13 -0
- package/dist/components/ai-action/index.mjs +27 -0
- package/dist/components/ai-attachments/index.d.mts +20 -0
- package/dist/components/ai-attachments/index.mjs +110 -0
- package/dist/components/ai-message/index.d.mts +13 -0
- package/dist/components/ai-message/index.mjs +22 -0
- package/dist/components/ai-prompt-input/index.d.mts +45 -0
- package/dist/components/ai-prompt-input/index.mjs +153 -0
- package/dist/components/ai-reasoning/index.d.mts +13 -0
- package/dist/components/ai-reasoning/index.mjs +38 -0
- package/dist/components/ai-response/index.d.mts +20 -0
- package/dist/components/ai-response/index.mjs +2 -0
- package/dist/components/ai-source/index.d.mts +13 -0
- package/dist/components/ai-source/index.mjs +36 -0
- package/dist/components/ai-suggestion/index.d.mts +13 -0
- package/dist/components/ai-suggestion/index.mjs +22 -0
- package/dist/components/ai-tool/index.d.mts +23 -0
- package/dist/components/ai-tool/index.mjs +90 -0
- package/dist/components/alert/index.d.mts +22 -0
- package/dist/components/alert/index.mjs +87 -0
- package/dist/components/angle-slider/index.d.mts +15 -0
- package/dist/components/angle-slider/index.mjs +18 -0
- package/dist/components/aspect-ratio/index.d.mts +10 -0
- package/dist/components/aspect-ratio/index.mjs +23 -0
- package/dist/components/autocomplete/index.d.mts +21 -0
- package/dist/components/autocomplete/index.mjs +76 -0
- package/dist/components/avatar/index.d.mts +23 -0
- package/dist/components/avatar/index.mjs +20 -0
- package/dist/components/avatar-group/index.d.mts +11 -0
- package/dist/components/avatar-group/index.mjs +20 -0
- package/dist/components/back-top/index.d.mts +29 -0
- package/dist/components/back-top/index.mjs +93 -0
- package/dist/components/badge/index.d.mts +10 -0
- package/dist/components/badge/index.mjs +23 -0
- package/dist/components/banner/index.d.mts +24 -0
- package/dist/components/banner/index.mjs +67 -0
- package/dist/components/bento/index.d.mts +24 -0
- package/dist/components/bento/index.mjs +51 -0
- package/dist/components/block-ui/index.d.mts +12 -0
- package/dist/components/block-ui/index.mjs +43 -0
- package/dist/components/breadcrumb/index.d.mts +11 -0
- package/dist/components/breadcrumb/index.mjs +45 -0
- package/dist/components/browser/index.d.mts +21 -0
- package/dist/components/browser/index.mjs +87 -0
- package/dist/components/button/index.d.mts +15 -0
- package/dist/components/button/index.mjs +43 -0
- package/dist/components/button-group/index.d.mts +23 -0
- package/dist/components/button-group/index.mjs +38 -0
- package/dist/components/calendar/index.d.mts +17 -0
- package/dist/components/calendar/index.mjs +209 -0
- package/dist/components/card/index.d.mts +11 -0
- package/dist/components/card/index.mjs +33 -0
- package/dist/components/carousel/index.d.mts +9 -0
- package/dist/components/carousel/index.mjs +12 -0
- package/dist/components/cascade-select/index.d.mts +31 -0
- package/dist/components/cascade-select/index.mjs +304 -0
- package/dist/components/checkbox/index.d.mts +15 -0
- package/dist/components/checkbox/index.mjs +18 -0
- package/dist/components/checkbox-group/index.d.mts +28 -0
- package/dist/components/checkbox-group/index.mjs +97 -0
- package/dist/components/chip/index.d.mts +12 -0
- package/dist/components/chip/index.mjs +36 -0
- package/dist/components/client-only/index.d.mts +2 -0
- package/dist/components/client-only/index.mjs +2 -0
- package/dist/components/clipboard/index.d.mts +16 -0
- package/dist/components/clipboard/index.mjs +19 -0
- package/dist/components/collapsible/index.d.mts +7 -0
- package/dist/components/collapsible/index.mjs +10 -0
- package/dist/components/collection/index.d.mts +2 -0
- package/dist/components/collection/index.mjs +2 -0
- package/dist/components/color-picker/index.d.mts +19 -0
- package/dist/components/color-picker/index.mjs +18 -0
- package/dist/components/combobox/index.d.mts +17 -0
- package/dist/components/combobox/index.mjs +18 -0
- package/dist/components/command/index.d.mts +43 -0
- package/dist/components/command/index.mjs +253 -0
- package/dist/components/comment/index.d.mts +17 -0
- package/dist/components/comment/index.mjs +101 -0
- package/dist/components/config-provider/index.d.mts +48 -0
- package/dist/components/config-provider/index.mjs +67 -0
- package/dist/components/container/index.d.mts +13 -0
- package/dist/components/container/index.mjs +23 -0
- package/dist/components/data-view/index.d.mts +18 -0
- package/dist/components/data-view/index.mjs +110 -0
- package/dist/components/date-input/index.d.mts +15 -0
- package/dist/components/date-input/index.mjs +18 -0
- package/dist/components/date-picker/index.d.mts +17 -0
- package/dist/components/date-picker/index.mjs +18 -0
- package/dist/components/deferred-content/index.d.mts +16 -0
- package/dist/components/deferred-content/index.mjs +52 -0
- package/dist/components/descriptions/index.d.mts +26 -0
- package/dist/components/descriptions/index.mjs +69 -0
- package/dist/components/dialog/index.d.mts +9 -0
- package/dist/components/dialog/index.mjs +11 -0
- package/dist/components/dock/index.d.mts +22 -0
- package/dist/components/dock/index.mjs +64 -0
- package/dist/components/download-trigger/index.d.mts +2 -0
- package/dist/components/download-trigger/index.mjs +2 -0
- package/dist/components/drawer/index.d.mts +9 -0
- package/dist/components/drawer/index.mjs +12 -0
- package/dist/components/dynamic-input/index.d.mts +30 -0
- package/dist/components/dynamic-input/index.mjs +119 -0
- package/dist/components/editable/index.d.mts +15 -0
- package/dist/components/editable/index.mjs +18 -0
- package/dist/components/ellipsis/index.d.mts +10 -0
- package/dist/components/ellipsis/index.mjs +27 -0
- package/dist/components/empty/index.d.mts +10 -0
- package/dist/components/empty/index.mjs +31 -0
- package/dist/components/field/index.d.mts +8 -0
- package/dist/components/field/index.mjs +11 -0
- package/dist/components/fieldset/index.d.mts +7 -0
- package/dist/components/fieldset/index.mjs +10 -0
- package/dist/components/file-upload/index.d.mts +17 -0
- package/dist/components/file-upload/index.mjs +18 -0
- package/dist/components/float-button/index.d.mts +61 -0
- package/dist/components/float-button/index.mjs +129 -0
- package/dist/components/floating-panel/index.d.mts +9 -0
- package/dist/components/floating-panel/index.mjs +12 -0
- package/dist/components/focus-trap/index.d.mts +2 -0
- package/dist/components/focus-trap/index.mjs +2 -0
- package/dist/components/form/index.d.mts +2 -0
- package/dist/components/form/index.mjs +125 -0
- package/dist/components/format/index.d.mts +9 -0
- package/dist/components/format/index.mjs +10 -0
- package/dist/components/frame/index.d.mts +10 -0
- package/dist/components/frame/index.mjs +12 -0
- package/dist/components/grid/index.d.mts +13 -0
- package/dist/components/grid/index.mjs +42 -0
- package/dist/components/highlight/index.d.mts +7 -0
- package/dist/components/highlight/index.mjs +11 -0
- package/dist/components/hover-card/index.d.mts +7 -0
- package/dist/components/hover-card/index.mjs +10 -0
- package/dist/components/icon/index.d.mts +24 -0
- package/dist/components/icon/index.mjs +54 -0
- package/dist/components/image/index.d.mts +17 -0
- package/dist/components/image/index.mjs +70 -0
- package/dist/components/image-cropper/index.d.mts +8 -0
- package/dist/components/image-cropper/index.mjs +11 -0
- package/dist/components/image-viewer/index.d.mts +19 -0
- package/dist/components/image-viewer/index.mjs +152 -0
- package/dist/components/input/index.d.mts +19 -0
- package/dist/components/input/index.mjs +2 -0
- package/dist/components/input-group/index.d.mts +18 -0
- package/dist/components/input-group/index.mjs +36 -0
- package/dist/components/json-tree-view/index.d.mts +7 -0
- package/dist/components/json-tree-view/index.mjs +10 -0
- package/dist/components/kbd/index.d.mts +6 -0
- package/dist/components/kbd/index.mjs +15 -0
- package/dist/components/layout/index.d.mts +60 -0
- package/dist/components/layout/index.mjs +192 -0
- package/dist/components/link/index.d.mts +10 -0
- package/dist/components/link/index.mjs +24 -0
- package/dist/components/list/index.d.mts +26 -0
- package/dist/components/list/index.mjs +97 -0
- package/dist/components/listbox/index.d.mts +17 -0
- package/dist/components/listbox/index.mjs +19 -0
- package/dist/components/marquee/index.d.mts +7 -0
- package/dist/components/marquee/index.mjs +10 -0
- package/dist/components/masonry/index.d.mts +11 -0
- package/dist/components/masonry/index.mjs +34 -0
- package/dist/components/mentions/index.d.mts +2 -0
- package/dist/components/mentions/index.mjs +3 -0
- package/dist/components/menu/index.d.mts +13 -0
- package/dist/components/menu/index.mjs +38 -0
- package/dist/components/menubar/index.d.mts +32 -0
- package/dist/components/menubar/index.mjs +83 -0
- package/dist/components/meter/index.d.mts +21 -0
- package/dist/components/meter/index.mjs +95 -0
- package/dist/components/navigation-menu/index.d.mts +8 -0
- package/dist/components/navigation-menu/index.mjs +11 -0
- package/dist/components/number-input/index.d.mts +15 -0
- package/dist/components/number-input/index.mjs +18 -0
- package/dist/components/order-list/index.d.mts +21 -0
- package/dist/components/order-list/index.mjs +160 -0
- package/dist/components/page-header/index.d.mts +11 -0
- package/dist/components/page-header/index.mjs +34 -0
- package/dist/components/pagination/index.d.mts +17 -0
- package/dist/components/pagination/index.mjs +18 -0
- package/dist/components/password-input/index.d.mts +15 -0
- package/dist/components/password-input/index.mjs +18 -0
- package/dist/components/pin-input/index.d.mts +14 -0
- package/dist/components/pin-input/index.mjs +18 -0
- package/dist/components/popconfirm/index.d.mts +17 -0
- package/dist/components/popconfirm/index.mjs +85 -0
- package/dist/components/popover/index.d.mts +8 -0
- package/dist/components/popover/index.mjs +11 -0
- package/dist/components/presence/index.d.mts +2 -0
- package/dist/components/presence/index.mjs +2 -0
- package/dist/components/progress/index.d.mts +15 -0
- package/dist/components/progress/index.mjs +18 -0
- package/dist/components/progress-group/index.d.mts +22 -0
- package/dist/components/progress-group/index.mjs +84 -0
- package/dist/components/qr-code/index.d.mts +8 -0
- package/dist/components/qr-code/index.mjs +11 -0
- package/dist/components/radio-group/index.d.mts +15 -0
- package/dist/components/radio-group/index.mjs +18 -0
- package/dist/components/rating-group/index.d.mts +15 -0
- package/dist/components/rating-group/index.mjs +18 -0
- package/dist/components/result/index.d.mts +22 -0
- package/dist/components/result/index.mjs +66 -0
- package/dist/components/scroll-area/index.d.mts +7 -0
- package/dist/components/scroll-area/index.mjs +10 -0
- package/dist/components/segment-group/index.d.mts +17 -0
- package/dist/components/segment-group/index.mjs +23 -0
- package/dist/components/select/index.d.mts +2 -0
- package/dist/components/select/index.mjs +2 -0
- package/dist/components/separator/index.d.mts +11 -0
- package/dist/components/separator/index.mjs +27 -0
- package/dist/components/signature-pad/index.d.mts +8 -0
- package/dist/components/signature-pad/index.mjs +11 -0
- package/dist/components/skeleton/index.d.mts +7 -0
- package/dist/components/skeleton/index.mjs +15 -0
- package/dist/components/slider/index.d.mts +15 -0
- package/dist/components/slider/index.mjs +18 -0
- package/dist/components/spinner/index.d.mts +9 -0
- package/dist/components/spinner/index.mjs +26 -0
- package/dist/components/split-button/index.d.mts +36 -0
- package/dist/components/split-button/index.mjs +124 -0
- package/dist/components/splitter/index.d.mts +7 -0
- package/dist/components/splitter/index.mjs +10 -0
- package/dist/components/spotlight/index.d.mts +11 -0
- package/dist/components/spotlight/index.mjs +38 -0
- package/dist/components/stack/index.d.mts +11 -0
- package/dist/components/stack/index.mjs +45 -0
- package/dist/components/stat/index.d.mts +17 -0
- package/dist/components/stat/index.mjs +44 -0
- package/dist/components/steps/index.d.mts +18 -0
- package/dist/components/steps/index.mjs +18 -0
- package/dist/components/swap/index.d.mts +8 -0
- package/dist/components/swap/index.mjs +11 -0
- package/dist/components/switch/index.d.mts +15 -0
- package/dist/components/switch/index.mjs +18 -0
- package/dist/components/table/index.d.mts +77 -0
- package/dist/components/table/index.mjs +837 -0
- package/dist/components/tabs/index.d.mts +19 -0
- package/dist/components/tabs/index.mjs +23 -0
- package/dist/components/tags-input/index.d.mts +16 -0
- package/dist/components/tags-input/index.mjs +18 -0
- package/dist/components/terminal/index.d.mts +17 -0
- package/dist/components/terminal/index.mjs +84 -0
- package/dist/components/textarea/index.d.mts +14 -0
- package/dist/components/textarea/index.mjs +37 -0
- package/dist/components/timeline/index.d.mts +15 -0
- package/dist/components/timeline/index.mjs +44 -0
- package/dist/components/timer/index.d.mts +8 -0
- package/dist/components/timer/index.mjs +11 -0
- package/dist/components/toast/index.d.mts +11 -0
- package/dist/components/toast/index.mjs +13 -0
- package/dist/components/toc/index.d.mts +7 -0
- package/dist/components/toc/index.mjs +10 -0
- package/dist/components/toggle/index.d.mts +7 -0
- package/dist/components/toggle/index.mjs +10 -0
- package/dist/components/toggle-group/index.d.mts +14 -0
- package/dist/components/toggle-group/index.mjs +18 -0
- package/dist/components/toolbar/index.d.mts +17 -0
- package/dist/components/toolbar/index.mjs +46 -0
- package/dist/components/tooltip/index.d.mts +7 -0
- package/dist/components/tooltip/index.mjs +10 -0
- package/dist/components/tour/index.d.mts +11 -0
- package/dist/components/tour/index.mjs +13 -0
- package/dist/components/transfer/index.d.mts +24 -0
- package/dist/components/transfer/index.mjs +175 -0
- package/dist/components/tree-select/index.d.mts +28 -0
- package/dist/components/tree-select/index.mjs +253 -0
- package/dist/components/tree-view/index.d.mts +18 -0
- package/dist/components/tree-view/index.mjs +19 -0
- package/dist/components/typography/index.d.mts +11 -0
- package/dist/components/typography/index.mjs +34 -0
- package/dist/components/user/index.d.mts +19 -0
- package/dist/components/user/index.mjs +68 -0
- package/dist/components/virtual-list/index.d.mts +17 -0
- package/dist/components/virtual-list/index.mjs +71 -0
- package/dist/components/watermark/index.d.mts +17 -0
- package/dist/components/watermark/index.mjs +77 -0
- package/dist/index-B1xiJ5ki.d.mts +1811 -0
- package/dist/index-DDX7x8aT.d.mts +95 -0
- package/dist/index-IfofF-SW.d.mts +10356 -0
- package/dist/index-YPUiqD3n.d.mts +42 -0
- package/dist/index.d.mts +141 -15209
- package/dist/index.mjs +141 -6171
- package/dist/input-DoFQ7RXh.mjs +78 -0
- package/dist/mentions-f5Js_2W7.mjs +263 -0
- package/dist/select-CHaXbzLX.mjs +115 -0
- package/package.json +101 -7
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { injectComponentStyle } from "@bysages/core";
|
|
2
|
+
import { insert, setAttribute, spread, template } from "@solidjs/web";
|
|
3
|
+
//#region src/components/browser/index.tsx
|
|
4
|
+
var _tmpl$ = /* @__PURE__ */ template(`<div>`);
|
|
5
|
+
var _tmpl$2 = /* @__PURE__ */ template(`<span data-scope=browser data-part=dot>`);
|
|
6
|
+
/** The three lamps are the system's own fixed pigments — the same
|
|
7
|
+
* semantics reserved for danger, warning, and success. */
|
|
8
|
+
function BrowserDots(props) {
|
|
9
|
+
injectComponentStyle("browser");
|
|
10
|
+
var _el$ = _tmpl$();
|
|
11
|
+
spread(_el$, [props, {
|
|
12
|
+
"data-scope": "browser",
|
|
13
|
+
"data-part": "dots"
|
|
14
|
+
}], true);
|
|
15
|
+
insert(_el$, () => {
|
|
16
|
+
return [
|
|
17
|
+
"danger",
|
|
18
|
+
"warning",
|
|
19
|
+
"success"
|
|
20
|
+
].map((tone) => (() => {
|
|
21
|
+
var _el$2 = _tmpl$2();
|
|
22
|
+
setAttribute(_el$2, "data-tone", tone);
|
|
23
|
+
return _el$2;
|
|
24
|
+
})());
|
|
25
|
+
});
|
|
26
|
+
return _el$;
|
|
27
|
+
}
|
|
28
|
+
function BrowserRoot(props) {
|
|
29
|
+
injectComponentStyle("browser");
|
|
30
|
+
var _el$3 = _tmpl$();
|
|
31
|
+
spread(_el$3, [props, {
|
|
32
|
+
"data-scope": "browser",
|
|
33
|
+
"data-part": "root"
|
|
34
|
+
}], true);
|
|
35
|
+
insert(_el$3, () => {
|
|
36
|
+
return props.children;
|
|
37
|
+
});
|
|
38
|
+
return _el$3;
|
|
39
|
+
}
|
|
40
|
+
function BrowserTitleBar(props) {
|
|
41
|
+
injectComponentStyle("browser");
|
|
42
|
+
var _el$4 = _tmpl$();
|
|
43
|
+
spread(_el$4, [props, {
|
|
44
|
+
"data-scope": "browser",
|
|
45
|
+
"data-part": "titlebar"
|
|
46
|
+
}], true);
|
|
47
|
+
insert(_el$4, () => {
|
|
48
|
+
return props.children;
|
|
49
|
+
});
|
|
50
|
+
return _el$4;
|
|
51
|
+
}
|
|
52
|
+
function BrowserUrlBar(props) {
|
|
53
|
+
injectComponentStyle("browser");
|
|
54
|
+
var _el$5 = _tmpl$();
|
|
55
|
+
spread(_el$5, [props, {
|
|
56
|
+
"data-scope": "browser",
|
|
57
|
+
"data-part": "urlbar"
|
|
58
|
+
}], true);
|
|
59
|
+
insert(_el$5, () => {
|
|
60
|
+
return props.children;
|
|
61
|
+
});
|
|
62
|
+
return _el$5;
|
|
63
|
+
}
|
|
64
|
+
function BrowserBody(props) {
|
|
65
|
+
injectComponentStyle("browser");
|
|
66
|
+
var _el$6 = _tmpl$();
|
|
67
|
+
spread(_el$6, [props, {
|
|
68
|
+
"data-scope": "browser",
|
|
69
|
+
"data-part": "body"
|
|
70
|
+
}], true);
|
|
71
|
+
insert(_el$6, () => {
|
|
72
|
+
return props.children;
|
|
73
|
+
});
|
|
74
|
+
return _el$6;
|
|
75
|
+
}
|
|
76
|
+
/** A browser window as a vessel: title bar, the three lamps, the
|
|
77
|
+
* address well, and a body that carries whatever the site hangs in
|
|
78
|
+
* it — an iframe, a screenshot, a live page. */
|
|
79
|
+
const Browser = Object.assign(BrowserRoot, {
|
|
80
|
+
Root: BrowserRoot,
|
|
81
|
+
TitleBar: BrowserTitleBar,
|
|
82
|
+
Dots: BrowserDots,
|
|
83
|
+
UrlBar: BrowserUrlBar,
|
|
84
|
+
Body: BrowserBody
|
|
85
|
+
});
|
|
86
|
+
//#endregion
|
|
87
|
+
export { Browser, BrowserBody, BrowserDots, BrowserRoot, BrowserTitleBar, BrowserUrlBar };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { JSX } from "solid-js";
|
|
2
|
+
//#region src/components/button/index.d.ts
|
|
3
|
+
/** The control recipe as a standalone button: the variant chooses how it
|
|
4
|
+
* rests, the tone chooses the pigment. Ink is the solemn default; any
|
|
5
|
+
* action can carry the primary weight. The react package's asChild has
|
|
6
|
+
* no solid equivalent — compose a control around `<Button>` instead. */
|
|
7
|
+
export interface ButtonProps extends JSX.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
8
|
+
variant?: "solid" | "outline" | "ghost" | "subtle";
|
|
9
|
+
tone?: "ink" | "info" | "success" | "warning" | "danger";
|
|
10
|
+
size?: "sm" | "md" | "lg";
|
|
11
|
+
/** Icon-only: the silhouette squares to the control height. */
|
|
12
|
+
square?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export declare function Button(props: ButtonProps): JSX.Element;
|
|
15
|
+
//#endregion
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { injectComponentStyle } from "@bysages/core";
|
|
2
|
+
import { spread, template } from "@solidjs/web";
|
|
3
|
+
import { splitProps } from "solid-js";
|
|
4
|
+
//#region src/components/button/index.tsx
|
|
5
|
+
var _tmpl$ = /* @__PURE__ */ template(`<button>`);
|
|
6
|
+
function Button(props) {
|
|
7
|
+
injectComponentStyle("button");
|
|
8
|
+
const [own, rest] = splitProps(props, [
|
|
9
|
+
"variant",
|
|
10
|
+
"tone",
|
|
11
|
+
"size",
|
|
12
|
+
"square",
|
|
13
|
+
"type",
|
|
14
|
+
"disabled"
|
|
15
|
+
]);
|
|
16
|
+
var _el$ = _tmpl$();
|
|
17
|
+
spread(_el$, [rest, {
|
|
18
|
+
get type() {
|
|
19
|
+
return own.type ?? "button";
|
|
20
|
+
},
|
|
21
|
+
get disabled() {
|
|
22
|
+
return own.disabled;
|
|
23
|
+
},
|
|
24
|
+
"data-scope": "button",
|
|
25
|
+
"data-part": "root",
|
|
26
|
+
get "data-variant"() {
|
|
27
|
+
return own.variant ?? "solid";
|
|
28
|
+
},
|
|
29
|
+
get "data-tone"() {
|
|
30
|
+
return own.tone ?? "ink";
|
|
31
|
+
},
|
|
32
|
+
get "data-size"() {
|
|
33
|
+
return own.size ?? "md";
|
|
34
|
+
},
|
|
35
|
+
get "data-square"() {
|
|
36
|
+
return own.square ? "true" : void 0;
|
|
37
|
+
},
|
|
38
|
+
"data-motion": "ink-ripple lit"
|
|
39
|
+
}], false);
|
|
40
|
+
return _el$;
|
|
41
|
+
}
|
|
42
|
+
//#endregion
|
|
43
|
+
export { Button };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { JSX } from "solid-js";
|
|
2
|
+
//#region src/components/button-group/index.d.ts
|
|
3
|
+
export interface ButtonGroupProps extends JSX.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
/** The seam runs across the group (default) or down it. */
|
|
5
|
+
orientation?: "horizontal" | "vertical";
|
|
6
|
+
/** One register for every member: falls onto data-size for the
|
|
7
|
+
* stylesheet to retune the buttons' heights. */
|
|
8
|
+
size?: "sm" | "md" | "lg";
|
|
9
|
+
/** The members' corner register: retunes --bs-radius-control for the
|
|
10
|
+
* whole fused shape — edges and trimmed seams keep one story. */
|
|
11
|
+
radius?: "sm" | "md" | "lg" | "xl" | "2xl" | "full";
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Buttons fused into one control: the group owns only the joinery, so
|
|
15
|
+
* members keep every variant they were given — a solid action can sit
|
|
16
|
+
* beside an outline one and the seam still reads. Selection belongs to
|
|
17
|
+
* the toggle group; this is layout alone.
|
|
18
|
+
*/
|
|
19
|
+
export declare function ButtonGroupRoot(props: ButtonGroupProps): JSX.Element;
|
|
20
|
+
export declare const ButtonGroup: typeof ButtonGroupRoot & {
|
|
21
|
+
Root: typeof ButtonGroupRoot;
|
|
22
|
+
};
|
|
23
|
+
//#endregion
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { injectComponentStyle } from "@bysages/core";
|
|
2
|
+
import { spread, template } from "@solidjs/web";
|
|
3
|
+
import { splitProps } from "solid-js";
|
|
4
|
+
//#region src/components/button-group/index.tsx
|
|
5
|
+
var _tmpl$ = /* @__PURE__ */ template(`<div>`);
|
|
6
|
+
/**
|
|
7
|
+
* Buttons fused into one control: the group owns only the joinery, so
|
|
8
|
+
* members keep every variant they were given — a solid action can sit
|
|
9
|
+
* beside an outline one and the seam still reads. Selection belongs to
|
|
10
|
+
* the toggle group; this is layout alone.
|
|
11
|
+
*/
|
|
12
|
+
function ButtonGroupRoot(props) {
|
|
13
|
+
injectComponentStyle("button-group");
|
|
14
|
+
const [own, rest] = splitProps(props, [
|
|
15
|
+
"orientation",
|
|
16
|
+
"size",
|
|
17
|
+
"radius"
|
|
18
|
+
]);
|
|
19
|
+
var _el$ = _tmpl$();
|
|
20
|
+
spread(_el$, [rest, {
|
|
21
|
+
role: "group",
|
|
22
|
+
"data-scope": "button-group",
|
|
23
|
+
"data-part": "root",
|
|
24
|
+
get "data-orientation"() {
|
|
25
|
+
return own.orientation ?? "horizontal";
|
|
26
|
+
},
|
|
27
|
+
get "data-size"() {
|
|
28
|
+
return own.size;
|
|
29
|
+
},
|
|
30
|
+
get "data-radius"() {
|
|
31
|
+
return own.radius;
|
|
32
|
+
}
|
|
33
|
+
}], false);
|
|
34
|
+
return _el$;
|
|
35
|
+
}
|
|
36
|
+
const ButtonGroup = Object.assign(ButtonGroupRoot, { Root: ButtonGroupRoot });
|
|
37
|
+
//#endregion
|
|
38
|
+
export { ButtonGroup, ButtonGroupRoot };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { JSX } from "solid-js";
|
|
2
|
+
import { DatePickerRootProps } from "@ark-ui/solid/date-picker";
|
|
3
|
+
//#region src/components/calendar/index.d.ts
|
|
4
|
+
export interface CalendarProps extends JSX.HTMLAttributes<HTMLDivElement> {
|
|
5
|
+
/** Selected date(s) — an array, as the machine speaks in ranges. */
|
|
6
|
+
value?: DatePickerRootProps["value"];
|
|
7
|
+
min?: DatePickerRootProps["min"];
|
|
8
|
+
max?: DatePickerRootProps["max"];
|
|
9
|
+
onValueChange?: (value: NonNullable<DatePickerRootProps["value"]>) => void;
|
|
10
|
+
}
|
|
11
|
+
/** The date-picker's month grid, standing on the page without its
|
|
12
|
+
* popup: always open, the trigger gone, the vessel a quiet card. The
|
|
13
|
+
* title zooms out through month and year grids; the grids themselves
|
|
14
|
+
* are the shared machinery — value, range selection, and focus ride
|
|
15
|
+
* Ark's own contract. */
|
|
16
|
+
export declare function Calendar(props: CalendarProps): JSX.Element;
|
|
17
|
+
//#endregion
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
import { injectComponentStyle } from "@bysages/core";
|
|
2
|
+
import { createComponent, effect, insert, memo, mergeProps, readShallow, spread, style, template } from "@solidjs/web";
|
|
3
|
+
import { For, Show, splitProps } from "solid-js";
|
|
4
|
+
import { DatePicker } from "@ark-ui/solid/date-picker";
|
|
5
|
+
//#region src/components/calendar/index.tsx
|
|
6
|
+
var _tmpl$ = /* @__PURE__ */ template(`<svg width=16 height=16 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=1.75 aria-hidden=true><path d="m9 5 7 7-7 7">`);
|
|
7
|
+
var _tmpl$2 = /* @__PURE__ */ template(`<div data-scope=calendar data-part=header>`);
|
|
8
|
+
var _tmpl$3 = /* @__PURE__ */ template(`<div><!><!>`);
|
|
9
|
+
function chevron(dir) {
|
|
10
|
+
var _el$ = _tmpl$();
|
|
11
|
+
effect(() => readShallow(dir === "left" ? { transform: "rotate(180deg)" } : void 0), (_v$, _$p) => {
|
|
12
|
+
style(_el$, _v$, _$p);
|
|
13
|
+
});
|
|
14
|
+
return _el$;
|
|
15
|
+
}
|
|
16
|
+
/** The date-picker's month grid, standing on the page without its
|
|
17
|
+
* popup: always open, the trigger gone, the vessel a quiet card. The
|
|
18
|
+
* title zooms out through month and year grids; the grids themselves
|
|
19
|
+
* are the shared machinery — value, range selection, and focus ride
|
|
20
|
+
* Ark's own contract. */
|
|
21
|
+
function Calendar(props) {
|
|
22
|
+
injectComponentStyle("calendar");
|
|
23
|
+
injectComponentStyle("date-picker");
|
|
24
|
+
const [own, rest] = splitProps(props, [
|
|
25
|
+
"value",
|
|
26
|
+
"min",
|
|
27
|
+
"max",
|
|
28
|
+
"onValueChange"
|
|
29
|
+
]);
|
|
30
|
+
const title = (dp) => {
|
|
31
|
+
const api = dp();
|
|
32
|
+
const d = api.focusedValue;
|
|
33
|
+
if (!d) return "";
|
|
34
|
+
if (api.view === "day") return api.format(d, {
|
|
35
|
+
month: "long",
|
|
36
|
+
year: "numeric"
|
|
37
|
+
});
|
|
38
|
+
if (api.view === "month") return api.format(d, { year: "numeric" });
|
|
39
|
+
const decade = Math.floor(d.year / 10) * 10;
|
|
40
|
+
return `${decade} - ${decade + 9}`;
|
|
41
|
+
};
|
|
42
|
+
const header = () => (() => {
|
|
43
|
+
var _el$2 = _tmpl$2();
|
|
44
|
+
insert(_el$2, createComponent(DatePicker.ViewControl, { get children() {
|
|
45
|
+
return [
|
|
46
|
+
createComponent(DatePicker.PrevTrigger, { get children() {
|
|
47
|
+
return chevron("left");
|
|
48
|
+
} }),
|
|
49
|
+
createComponent(DatePicker.Context, { children: (dp) => createComponent(DatePicker.ViewTrigger, { get children() {
|
|
50
|
+
return title(dp);
|
|
51
|
+
} }) }),
|
|
52
|
+
createComponent(DatePicker.NextTrigger, { get children() {
|
|
53
|
+
return chevron("right");
|
|
54
|
+
} })
|
|
55
|
+
];
|
|
56
|
+
} }));
|
|
57
|
+
return _el$2;
|
|
58
|
+
})();
|
|
59
|
+
var _el$3 = _tmpl$3();
|
|
60
|
+
var _el$4 = _el$3.firstChild;
|
|
61
|
+
var _el$5 = _el$4.nextSibling;
|
|
62
|
+
spread(_el$3, [rest, {
|
|
63
|
+
"data-scope": "calendar",
|
|
64
|
+
"data-part": "root"
|
|
65
|
+
}], true);
|
|
66
|
+
insert(_el$3, createComponent(DatePicker.Root, mergeProps({
|
|
67
|
+
open: true,
|
|
68
|
+
closeOnSelect: true,
|
|
69
|
+
inline: true
|
|
70
|
+
}, () => {
|
|
71
|
+
return own.value !== void 0 ? { value: own.value } : {};
|
|
72
|
+
}, () => {
|
|
73
|
+
return own.min !== void 0 ? { min: own.min } : {};
|
|
74
|
+
}, () => {
|
|
75
|
+
return own.max !== void 0 ? { max: own.max } : {};
|
|
76
|
+
}, {
|
|
77
|
+
onValueChange: (details) => own.onValueChange?.(details.value),
|
|
78
|
+
get children() {
|
|
79
|
+
return [
|
|
80
|
+
createComponent(DatePicker.View, {
|
|
81
|
+
view: "day",
|
|
82
|
+
get children() {
|
|
83
|
+
return [memo(() => {
|
|
84
|
+
return header();
|
|
85
|
+
}), createComponent(DatePicker.Table, { get children() {
|
|
86
|
+
return [createComponent(DatePicker.TableHead, { get children() {
|
|
87
|
+
return createComponent(DatePicker.TableRow, { get children() {
|
|
88
|
+
return createComponent(DatePicker.Context, { children: (dp) => createComponent(For, {
|
|
89
|
+
get each() {
|
|
90
|
+
return dp().weekDays;
|
|
91
|
+
},
|
|
92
|
+
children: (day) => createComponent(DatePicker.TableHeader, {
|
|
93
|
+
get "aria-label"() {
|
|
94
|
+
return day.long;
|
|
95
|
+
},
|
|
96
|
+
get children() {
|
|
97
|
+
return day.narrow;
|
|
98
|
+
}
|
|
99
|
+
})
|
|
100
|
+
}) });
|
|
101
|
+
} });
|
|
102
|
+
} }), createComponent(DatePicker.TableBody, { get children() {
|
|
103
|
+
return createComponent(DatePicker.Context, { children: (dp) => createComponent(For, {
|
|
104
|
+
get each() {
|
|
105
|
+
return dp().weeks;
|
|
106
|
+
},
|
|
107
|
+
children: (week) => createComponent(DatePicker.TableRow, { get children() {
|
|
108
|
+
return createComponent(For, {
|
|
109
|
+
each: week,
|
|
110
|
+
children: (day) => createComponent(DatePicker.TableCell, {
|
|
111
|
+
value: day,
|
|
112
|
+
get children() {
|
|
113
|
+
return createComponent(DatePicker.TableCellTrigger, { get children() {
|
|
114
|
+
return day.day;
|
|
115
|
+
} });
|
|
116
|
+
}
|
|
117
|
+
})
|
|
118
|
+
});
|
|
119
|
+
} })
|
|
120
|
+
}) });
|
|
121
|
+
} })];
|
|
122
|
+
} })];
|
|
123
|
+
}
|
|
124
|
+
}),
|
|
125
|
+
createComponent(DatePicker.View, {
|
|
126
|
+
view: "month",
|
|
127
|
+
get children() {
|
|
128
|
+
return [memo(() => {
|
|
129
|
+
return header();
|
|
130
|
+
}), createComponent(DatePicker.Table, {
|
|
131
|
+
columns: 3,
|
|
132
|
+
get children() {
|
|
133
|
+
return createComponent(DatePicker.TableBody, { get children() {
|
|
134
|
+
return createComponent(DatePicker.Context, { children: (dp) => createComponent(For, {
|
|
135
|
+
get each() {
|
|
136
|
+
return dp().getMonthsGrid({ columns: 3 });
|
|
137
|
+
},
|
|
138
|
+
children: (months) => createComponent(DatePicker.TableRow, { get children() {
|
|
139
|
+
return createComponent(For, {
|
|
140
|
+
each: months,
|
|
141
|
+
children: (month) => createComponent(DatePicker.TableCell, {
|
|
142
|
+
get value() {
|
|
143
|
+
return month.value;
|
|
144
|
+
},
|
|
145
|
+
columns: 3,
|
|
146
|
+
get children() {
|
|
147
|
+
return createComponent(DatePicker.TableCellTrigger, { get children() {
|
|
148
|
+
return month.label;
|
|
149
|
+
} });
|
|
150
|
+
}
|
|
151
|
+
})
|
|
152
|
+
});
|
|
153
|
+
} })
|
|
154
|
+
}) });
|
|
155
|
+
} });
|
|
156
|
+
}
|
|
157
|
+
})];
|
|
158
|
+
}
|
|
159
|
+
}),
|
|
160
|
+
createComponent(DatePicker.View, {
|
|
161
|
+
view: "year",
|
|
162
|
+
get children() {
|
|
163
|
+
return [memo(() => {
|
|
164
|
+
return header();
|
|
165
|
+
}), createComponent(DatePicker.Table, {
|
|
166
|
+
columns: 3,
|
|
167
|
+
get children() {
|
|
168
|
+
return createComponent(DatePicker.TableBody, { get children() {
|
|
169
|
+
return createComponent(DatePicker.Context, { children: (dp) => createComponent(For, {
|
|
170
|
+
get each() {
|
|
171
|
+
return dp().getYearsGrid({ columns: 3 });
|
|
172
|
+
},
|
|
173
|
+
children: (years) => createComponent(DatePicker.TableRow, { get children() {
|
|
174
|
+
return createComponent(For, {
|
|
175
|
+
each: years,
|
|
176
|
+
children: (year) => createComponent(DatePicker.TableCell, {
|
|
177
|
+
get value() {
|
|
178
|
+
return year.value;
|
|
179
|
+
},
|
|
180
|
+
columns: 3,
|
|
181
|
+
get children() {
|
|
182
|
+
return createComponent(DatePicker.TableCellTrigger, { get children() {
|
|
183
|
+
return year.label;
|
|
184
|
+
} });
|
|
185
|
+
}
|
|
186
|
+
})
|
|
187
|
+
});
|
|
188
|
+
} })
|
|
189
|
+
}) });
|
|
190
|
+
} });
|
|
191
|
+
}
|
|
192
|
+
})];
|
|
193
|
+
}
|
|
194
|
+
})
|
|
195
|
+
];
|
|
196
|
+
}
|
|
197
|
+
})), _el$4);
|
|
198
|
+
insert(_el$3, createComponent(Show, {
|
|
199
|
+
get when() {
|
|
200
|
+
return rest.children;
|
|
201
|
+
},
|
|
202
|
+
get children() {
|
|
203
|
+
return rest.children;
|
|
204
|
+
}
|
|
205
|
+
}), _el$5);
|
|
206
|
+
return _el$3;
|
|
207
|
+
}
|
|
208
|
+
//#endregion
|
|
209
|
+
export { Calendar };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Component } from "solid-js";
|
|
2
|
+
//#region src/components/card/index.d.ts
|
|
3
|
+
export declare const Card: Component<Record<string, unknown>> & {
|
|
4
|
+
Root: Component<Record<string, unknown>>;
|
|
5
|
+
Header: Component<Record<string, unknown>>;
|
|
6
|
+
Title: Component<Record<string, unknown>>;
|
|
7
|
+
Description: Component<Record<string, unknown>>;
|
|
8
|
+
Content: Component<Record<string, unknown>>;
|
|
9
|
+
Footer: Component<Record<string, unknown>>;
|
|
10
|
+
};
|
|
11
|
+
//#endregion
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { injectComponentStyle } from "@bysages/core";
|
|
2
|
+
import { createComponent, mergeProps } from "@solidjs/web";
|
|
3
|
+
//#region src/components/card/index.tsx
|
|
4
|
+
/** A vessel: round, resting at the first elevation, one hairline for its
|
|
5
|
+
* edge. Root, Header, Title, Description, Content, Footer — sections
|
|
6
|
+
* carry their own whitespace, so any subset composes. */
|
|
7
|
+
function part(name, tag) {
|
|
8
|
+
return ((props) => {
|
|
9
|
+
return createComponent(tag, mergeProps(props, {
|
|
10
|
+
"data-scope": "card",
|
|
11
|
+
get "data-part"() {
|
|
12
|
+
return name.toLowerCase();
|
|
13
|
+
}
|
|
14
|
+
}));
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
const Root = part("Root", "section");
|
|
18
|
+
const Header = part("Header", "header");
|
|
19
|
+
const Title = part("Title", "h3");
|
|
20
|
+
const Description = part("Description", "p");
|
|
21
|
+
const Content = part("Content", "div");
|
|
22
|
+
const Footer = part("Footer", "footer");
|
|
23
|
+
const Card = Object.assign(Root, {
|
|
24
|
+
Root,
|
|
25
|
+
Header,
|
|
26
|
+
Title,
|
|
27
|
+
Description,
|
|
28
|
+
Content,
|
|
29
|
+
Footer
|
|
30
|
+
});
|
|
31
|
+
injectComponentStyle("card");
|
|
32
|
+
//#endregion
|
|
33
|
+
export { Card };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Carousel as Carousel$1 } from "@ark-ui/solid/carousel";
|
|
2
|
+
//#region src/components/carousel/index.d.ts
|
|
3
|
+
/** Ark's Carousel, dressed in the paper-and-ink system: slides ride in one
|
|
4
|
+
* hairline-clipped lane, the triggers are quiet outline controls, and the
|
|
5
|
+
* current indicator alone carries the ink. The API is Ark's own — Root,
|
|
6
|
+
* Control, PrevTrigger, NextTrigger, ItemGroup, Item, IndicatorGroup,
|
|
7
|
+
* Indicator, AutoplayTrigger, ProgressText. */
|
|
8
|
+
export declare const Carousel: typeof Carousel$1;
|
|
9
|
+
//#endregion
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { injectComponentStyle } from "@bysages/core";
|
|
2
|
+
import { Carousel as Carousel$1 } from "@ark-ui/solid/carousel";
|
|
3
|
+
//#region src/components/carousel/index.ts
|
|
4
|
+
/** Ark's Carousel, dressed in the paper-and-ink system: slides ride in one
|
|
5
|
+
* hairline-clipped lane, the triggers are quiet outline controls, and the
|
|
6
|
+
* current indicator alone carries the ink. The API is Ark's own — Root,
|
|
7
|
+
* Control, PrevTrigger, NextTrigger, ItemGroup, Item, IndicatorGroup,
|
|
8
|
+
* Indicator, AutoplayTrigger, ProgressText. */
|
|
9
|
+
const Carousel = Carousel$1;
|
|
10
|
+
injectComponentStyle("carousel");
|
|
11
|
+
//#endregion
|
|
12
|
+
export { Carousel };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { JSX } from "solid-js";
|
|
2
|
+
//#region src/components/cascade-select/index.d.ts
|
|
3
|
+
export interface CascadeSelectNode {
|
|
4
|
+
label: string;
|
|
5
|
+
value: string;
|
|
6
|
+
children?: CascadeSelectNode[];
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export interface CascadeSelectProps extends JSX.HTMLAttributes<HTMLDivElement> {
|
|
10
|
+
value?: string[][];
|
|
11
|
+
data: CascadeSelectNode[];
|
|
12
|
+
placeholder?: string;
|
|
13
|
+
highlightTrigger?: "click" | "hover";
|
|
14
|
+
filterable?: boolean;
|
|
15
|
+
multiple?: boolean;
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
/** One rung of the control-height ladder for the trigger. */
|
|
18
|
+
size?: "sm" | "md" | "lg";
|
|
19
|
+
onValueChange?: (value: string[][]) => void;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* A corridor of linked columns: pick a branch and the next column
|
|
23
|
+
* dissolves open beside it, until a leaf click settles the whole path.
|
|
24
|
+
* `value` is the selected path (or paths, when `multiple`) — the
|
|
25
|
+
* joined labels ride the trigger. `highlightTrigger: "hover"` turns the
|
|
26
|
+
* classic cascading menu: pointing is enough to unfold. `filterable`
|
|
27
|
+
* swaps the corridor for a flat list of matching paths while a query
|
|
28
|
+
* runs — each hit still reads as its full route.
|
|
29
|
+
*/
|
|
30
|
+
export declare function CascadeSelect(props: CascadeSelectProps): JSX.Element;
|
|
31
|
+
//#endregion
|