tgui-core 1.5.5 → 1.5.7
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/common/color.d.ts +0 -52
- package/dist/common/color.js +31 -169
- package/dist/common/hotkeys.js +72 -72
- package/dist/components/AnimatedNumber.d.ts +2 -2
- package/dist/components/Button.d.ts +29 -12
- package/dist/components/Button.js +95 -97
- package/dist/components/DmIcon.d.ts +1 -1
- package/dist/components/DmIcon.js +19 -17
- package/dist/components/Icon.d.ts +17 -5
- package/dist/components/Icon.js +24 -22
- package/dist/components/ImageButton.d.ts +14 -5
- package/dist/components/ImageButton.js +97 -81
- package/dist/components/LabeledList.d.ts +34 -31
- package/dist/components/LabeledList.js +19 -18
- package/dist/components/Table.d.ts +28 -20
- package/dist/components/Table.js +7 -6
- package/dist/components/Tabs.d.ts +22 -16
- package/dist/components/Tabs.js +33 -30
- package/dist/components/index.d.ts +0 -2
- package/dist/components/index.js +56 -60
- package/package.json +1 -1
- package/dist/components/Interactive.d.ts +0 -23
- package/dist/components/Interactive.js +0 -75
- package/dist/components/Pointer.d.ts +0 -9
- package/dist/components/Pointer.js +0 -23
|
@@ -1,135 +1,151 @@
|
|
|
1
|
-
import { jsxs as
|
|
1
|
+
import { jsxs as I, jsx as t } from "react/jsx-runtime";
|
|
2
2
|
import { classes as l } from "../common/react.js";
|
|
3
|
-
import { computeBoxProps as
|
|
4
|
-
import { DmIcon as
|
|
5
|
-
import { Icon as
|
|
6
|
-
import { Image as
|
|
7
|
-
import { Stack as
|
|
8
|
-
import { Tooltip as
|
|
9
|
-
function
|
|
3
|
+
import { computeBoxProps as S } from "../common/ui.js";
|
|
4
|
+
import { DmIcon as z } from "./DmIcon.js";
|
|
5
|
+
import { Icon as A } from "./Icon.js";
|
|
6
|
+
import { Image as D } from "./Image.js";
|
|
7
|
+
import { Stack as $ } from "./Stack.js";
|
|
8
|
+
import { Tooltip as E } from "./Tooltip.js";
|
|
9
|
+
function W(d) {
|
|
10
10
|
const {
|
|
11
|
-
asset:
|
|
12
|
-
base64:
|
|
13
|
-
buttons:
|
|
14
|
-
buttonsAlt:
|
|
15
|
-
children:
|
|
16
|
-
className:
|
|
17
|
-
color:
|
|
18
|
-
disabled:
|
|
19
|
-
dmFallback:
|
|
11
|
+
asset: u,
|
|
12
|
+
base64: c,
|
|
13
|
+
buttons: i,
|
|
14
|
+
buttonsAlt: p,
|
|
15
|
+
children: a,
|
|
16
|
+
className: N,
|
|
17
|
+
color: o,
|
|
18
|
+
disabled: r,
|
|
19
|
+
dmFallback: k,
|
|
20
20
|
dmIcon: b,
|
|
21
21
|
dmIconState: x,
|
|
22
|
-
fluid:
|
|
23
|
-
imageSize:
|
|
24
|
-
imageSrc:
|
|
25
|
-
onClick:
|
|
26
|
-
onRightClick:
|
|
27
|
-
selected:
|
|
28
|
-
title:
|
|
22
|
+
fluid: e,
|
|
23
|
+
imageSize: n = 64,
|
|
24
|
+
imageSrc: g,
|
|
25
|
+
onClick: m,
|
|
26
|
+
onRightClick: f,
|
|
27
|
+
selected: C,
|
|
28
|
+
title: B,
|
|
29
29
|
tooltip: _,
|
|
30
30
|
tooltipPosition: w,
|
|
31
31
|
...v
|
|
32
|
-
} =
|
|
33
|
-
|
|
34
|
-
return /* @__PURE__ */ t(y, { height: `${o}px`, width: `${o}px`, children: /* @__PURE__ */ t(y.Item, { grow: !0, textAlign: "center", align: "center", children: /* @__PURE__ */ t(
|
|
35
|
-
F,
|
|
36
|
-
{
|
|
37
|
-
spin: S,
|
|
38
|
-
name: n,
|
|
39
|
-
color: "gray",
|
|
40
|
-
style: { fontSize: `calc(${o}px * 0.75)` }
|
|
41
|
-
}
|
|
42
|
-
) }) });
|
|
43
|
-
}
|
|
44
|
-
let p = /* @__PURE__ */ g(
|
|
32
|
+
} = d;
|
|
33
|
+
let h = /* @__PURE__ */ I(
|
|
45
34
|
"div",
|
|
46
35
|
{
|
|
47
36
|
className: l([
|
|
48
37
|
"container",
|
|
49
|
-
|
|
50
|
-
!
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
38
|
+
i || e && p && "hasButtons",
|
|
39
|
+
!m && !f && "noAction",
|
|
40
|
+
C && "ImageButton--selected",
|
|
41
|
+
r && "ImageButton--disabled",
|
|
42
|
+
o && typeof o == "string" ? `ImageButton--color__${o}` : "ImageButton--color__default"
|
|
54
43
|
]),
|
|
55
|
-
tabIndex:
|
|
56
|
-
onClick: (
|
|
57
|
-
!
|
|
44
|
+
tabIndex: r ? void 0 : 0,
|
|
45
|
+
onClick: (s) => {
|
|
46
|
+
!r && m && m(s);
|
|
58
47
|
},
|
|
59
|
-
onKeyDown: (
|
|
60
|
-
|
|
48
|
+
onKeyDown: (s) => {
|
|
49
|
+
s.key === "Enter" && !r && m && m(s);
|
|
61
50
|
},
|
|
62
|
-
onContextMenu: (
|
|
63
|
-
|
|
51
|
+
onContextMenu: (s) => {
|
|
52
|
+
s.preventDefault(), !r && f && f(s);
|
|
64
53
|
},
|
|
65
|
-
style: { width:
|
|
54
|
+
style: { width: e ? "auto" : `calc(${n}px + 0.5em + 2px)` },
|
|
66
55
|
children: [
|
|
67
|
-
/* @__PURE__ */ t("div", { className: "image", children:
|
|
68
|
-
|
|
56
|
+
/* @__PURE__ */ t("div", { className: "image", children: c || u || g ? /* @__PURE__ */ t(
|
|
57
|
+
D,
|
|
69
58
|
{
|
|
70
|
-
className: l(!
|
|
71
|
-
src:
|
|
72
|
-
height: `${
|
|
73
|
-
width: `${
|
|
59
|
+
className: l(!c && !g && u || []),
|
|
60
|
+
src: c ? `data:image/png;base64,${c}` : g,
|
|
61
|
+
height: `${n}px`,
|
|
62
|
+
width: `${n}px`
|
|
74
63
|
}
|
|
75
64
|
) : b && x ? /* @__PURE__ */ t(
|
|
76
|
-
|
|
65
|
+
z,
|
|
77
66
|
{
|
|
78
67
|
icon: b,
|
|
79
68
|
icon_state: x,
|
|
80
|
-
fallback:
|
|
81
|
-
height: `${
|
|
82
|
-
width: `${
|
|
69
|
+
fallback: k || /* @__PURE__ */ t(y, { icon: "spinner", spin: !0, size: n }),
|
|
70
|
+
height: `${n}px`,
|
|
71
|
+
width: `${n}px`
|
|
83
72
|
}
|
|
84
|
-
) :
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
] }) :
|
|
73
|
+
) : /* @__PURE__ */ t(y, { icon: "question" }) }),
|
|
74
|
+
e ? /* @__PURE__ */ I("div", { className: "info", children: [
|
|
75
|
+
B && /* @__PURE__ */ t("span", { className: l(["title", a && "divider"]), children: B }),
|
|
76
|
+
a && /* @__PURE__ */ t("span", { className: "contentFluid", children: a })
|
|
77
|
+
] }) : a && /* @__PURE__ */ t(
|
|
89
78
|
"span",
|
|
90
79
|
{
|
|
91
80
|
className: l([
|
|
92
81
|
"content",
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
82
|
+
C && "ImageButton--contentSelected",
|
|
83
|
+
r && "ImageButton--contentDisabled",
|
|
84
|
+
o && typeof o == "string" ? `ImageButton--contentColor__${o}` : "ImageButton--contentColor__default"
|
|
96
85
|
]),
|
|
97
|
-
children:
|
|
86
|
+
children: a
|
|
98
87
|
}
|
|
99
88
|
)
|
|
100
89
|
]
|
|
101
90
|
}
|
|
102
91
|
);
|
|
103
|
-
return _ && (
|
|
92
|
+
return _ && (h = /* @__PURE__ */ t(E, { content: _, position: w, children: h })), /* @__PURE__ */ I(
|
|
104
93
|
"div",
|
|
105
94
|
{
|
|
106
95
|
className: l([
|
|
107
96
|
"ImageButton",
|
|
108
|
-
|
|
109
|
-
|
|
97
|
+
e && "ImageButton--fluid",
|
|
98
|
+
N
|
|
110
99
|
]),
|
|
111
|
-
...
|
|
100
|
+
...S(v),
|
|
112
101
|
children: [
|
|
113
|
-
|
|
114
|
-
|
|
102
|
+
h,
|
|
103
|
+
i && /* @__PURE__ */ t(
|
|
115
104
|
"div",
|
|
116
105
|
{
|
|
117
106
|
className: l([
|
|
118
107
|
"buttonsContainer",
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
c && e && typeof e == "string" ? `ImageButton--buttonsContainerColor__${e}` : c && "ImageButton--buttonsContainerColor__default"
|
|
108
|
+
!a && "buttonsEmpty",
|
|
109
|
+
e && o && typeof o == "string" ? `ImageButton--buttonsContainerColor__${o}` : e && "ImageButton--buttonsContainerColor__default"
|
|
122
110
|
]),
|
|
123
111
|
style: {
|
|
124
|
-
width:
|
|
112
|
+
width: "auto"
|
|
125
113
|
},
|
|
126
|
-
children:
|
|
114
|
+
children: i
|
|
115
|
+
}
|
|
116
|
+
),
|
|
117
|
+
p && /* @__PURE__ */ t(
|
|
118
|
+
"div",
|
|
119
|
+
{
|
|
120
|
+
className: l([
|
|
121
|
+
"buttonsContainer",
|
|
122
|
+
"buttonsAltContainer",
|
|
123
|
+
!a && "buttonsEmpty",
|
|
124
|
+
e && o && typeof o == "string" ? `ImageButton--buttonsContainerColor__${o}` : e && "ImageButton--buttonsContainerColor__default"
|
|
125
|
+
]),
|
|
126
|
+
style: {
|
|
127
|
+
width: `calc(${n}px + ${e ? 0 : 0.5}em)`,
|
|
128
|
+
maxWidth: e ? "auto" : `calc(${n}px + 0.5em)`
|
|
129
|
+
},
|
|
130
|
+
children: p
|
|
127
131
|
}
|
|
128
132
|
)
|
|
129
133
|
]
|
|
130
134
|
}
|
|
131
135
|
);
|
|
132
136
|
}
|
|
137
|
+
function y(d) {
|
|
138
|
+
const { icon: u, spin: c = !1, size: i = 64 } = d;
|
|
139
|
+
return /* @__PURE__ */ t($, { height: `${i}px`, width: `${i}px`, children: /* @__PURE__ */ t($.Item, { grow: !0, textAlign: "center", align: "center", children: /* @__PURE__ */ t(
|
|
140
|
+
A,
|
|
141
|
+
{
|
|
142
|
+
spin: c,
|
|
143
|
+
name: u,
|
|
144
|
+
color: "gray",
|
|
145
|
+
style: { fontSize: `calc(${i}px * 0.75)` }
|
|
146
|
+
}
|
|
147
|
+
) }) });
|
|
148
|
+
}
|
|
133
149
|
export {
|
|
134
|
-
|
|
150
|
+
W as ImageButton
|
|
135
151
|
};
|
|
@@ -1,37 +1,6 @@
|
|
|
1
1
|
import { PropsWithChildren, ReactNode } from 'react';
|
|
2
2
|
import { BooleanLike } from '../common/react';
|
|
3
|
-
/**
|
|
4
|
-
* ## LabeledList
|
|
5
|
-
* LabeledList is a continuous, vertical list of text and other content, where
|
|
6
|
-
* every item is labeled.
|
|
7
|
-
*
|
|
8
|
-
* It works just like a two column table, where first column is labels, and
|
|
9
|
-
* second column is content.
|
|
10
|
-
*
|
|
11
|
-
* @example
|
|
12
|
-
* ```tsx
|
|
13
|
-
* <LabeledList>
|
|
14
|
-
* <LabeledList.Item label="Item">Content</LabeledList.Item>
|
|
15
|
-
* </LabeledList>
|
|
16
|
-
* ```
|
|
17
|
-
*
|
|
18
|
-
* If you want to have a button on the right side of an item (for example,
|
|
19
|
-
* to perform some sort of action), there is a way to do that:
|
|
20
|
-
*
|
|
21
|
-
* @example
|
|
22
|
-
* ```tsx
|
|
23
|
-
* <LabeledList>
|
|
24
|
-
* <LabeledList.Item label="Item" buttons={<Button>Click me!</Button>}>
|
|
25
|
-
* Content
|
|
26
|
-
* </LabeledList.Item>
|
|
27
|
-
* </LabeledList>
|
|
28
|
-
* ```
|
|
29
|
-
*/
|
|
30
3
|
export declare function LabeledList(props: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
|
|
31
|
-
export declare namespace LabeledList {
|
|
32
|
-
var Item: typeof LabeledListItem;
|
|
33
|
-
var Divider: typeof LabeledListDivider;
|
|
34
|
-
}
|
|
35
4
|
type LabeledListItemProps = Partial<{
|
|
36
5
|
/** Buttons to render aside the content. */
|
|
37
6
|
buttons: ReactNode;
|
|
@@ -80,4 +49,38 @@ type LabeledListDividerProps = {
|
|
|
80
49
|
size?: number;
|
|
81
50
|
};
|
|
82
51
|
declare function LabeledListDivider(props: LabeledListDividerProps): import("react/jsx-runtime").JSX.Element;
|
|
52
|
+
/**
|
|
53
|
+
* ## LabeledList
|
|
54
|
+
* LabeledList is a continuous, vertical list of text and other content, where
|
|
55
|
+
* every item is labeled.
|
|
56
|
+
*
|
|
57
|
+
* It works just like a two column table, where first column is labels, and
|
|
58
|
+
* second column is content.
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* ```tsx
|
|
62
|
+
* <LabeledList>
|
|
63
|
+
* <LabeledList.Item label="Item">Content</LabeledList.Item>
|
|
64
|
+
* </LabeledList>
|
|
65
|
+
* ```
|
|
66
|
+
*
|
|
67
|
+
* If you want to have a button on the right side of an item (for example,
|
|
68
|
+
* to perform some sort of action), there is a way to do that:
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* ```tsx
|
|
72
|
+
* <LabeledList>
|
|
73
|
+
* <LabeledList.Item label="Item" buttons={<Button>Click me!</Button>}>
|
|
74
|
+
* Content
|
|
75
|
+
* </LabeledList.Item>
|
|
76
|
+
* </LabeledList>
|
|
77
|
+
* ```
|
|
78
|
+
*/
|
|
79
|
+
export declare namespace LabeledList {
|
|
80
|
+
/**
|
|
81
|
+
* Adds some empty space between LabeledList items.
|
|
82
|
+
*/
|
|
83
|
+
const Divider: typeof LabeledListDivider;
|
|
84
|
+
const Item: typeof LabeledListItem;
|
|
85
|
+
}
|
|
83
86
|
export {};
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
import { jsx as
|
|
1
|
+
import { jsx as l, jsxs as d } from "react/jsx-runtime";
|
|
2
2
|
import { classes as c } from "../common/react.js";
|
|
3
3
|
import { unit as g } from "../common/ui.js";
|
|
4
4
|
import { Box as r } from "./Box.js";
|
|
5
5
|
import { Divider as x } from "./Divider.js";
|
|
6
6
|
import { Tooltip as N } from "./Tooltip.js";
|
|
7
|
-
function b(
|
|
8
|
-
const { children: t } =
|
|
9
|
-
return /* @__PURE__ */
|
|
7
|
+
function b(e) {
|
|
8
|
+
const { children: t } = e;
|
|
9
|
+
return /* @__PURE__ */ l("table", { className: "LabeledList", children: /* @__PURE__ */ l("tbody", { children: t }) });
|
|
10
10
|
}
|
|
11
|
-
function v(
|
|
11
|
+
function v(e) {
|
|
12
12
|
const {
|
|
13
13
|
className: t,
|
|
14
|
-
label:
|
|
14
|
+
label: o,
|
|
15
15
|
labelColor: m = "label",
|
|
16
16
|
labelWrap: L,
|
|
17
17
|
color: p,
|
|
18
18
|
textAlign: _,
|
|
19
|
-
buttons:
|
|
19
|
+
buttons: a,
|
|
20
20
|
content: f,
|
|
21
21
|
children: h,
|
|
22
22
|
verticalAlign: s = "baseline",
|
|
23
23
|
tooltip: n
|
|
24
|
-
} =
|
|
24
|
+
} = e;
|
|
25
25
|
let i;
|
|
26
|
-
|
|
26
|
+
o && (i = o, typeof o == "string" && (i += ":")), n !== void 0 && (i = /* @__PURE__ */ l(N, { content: n, children: /* @__PURE__ */ l(
|
|
27
27
|
r,
|
|
28
28
|
{
|
|
29
29
|
as: "span",
|
|
@@ -33,7 +33,7 @@ function v(l) {
|
|
|
33
33
|
children: i
|
|
34
34
|
}
|
|
35
35
|
) }));
|
|
36
|
-
const u = /* @__PURE__ */
|
|
36
|
+
const u = /* @__PURE__ */ l(
|
|
37
37
|
r,
|
|
38
38
|
{
|
|
39
39
|
as: "td",
|
|
@@ -56,7 +56,7 @@ function v(l) {
|
|
|
56
56
|
color: p,
|
|
57
57
|
textAlign: _,
|
|
58
58
|
className: "LabeledList__cell",
|
|
59
|
-
colSpan:
|
|
59
|
+
colSpan: a ? void 0 : 2,
|
|
60
60
|
verticalAlign: s,
|
|
61
61
|
children: [
|
|
62
62
|
f,
|
|
@@ -64,13 +64,12 @@ function v(l) {
|
|
|
64
64
|
]
|
|
65
65
|
}
|
|
66
66
|
),
|
|
67
|
-
|
|
67
|
+
a && /* @__PURE__ */ l("td", { className: "LabeledList__cell LabeledList__buttons", children: a })
|
|
68
68
|
] });
|
|
69
69
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
return /* @__PURE__ */ e("tr", { className: "LabeledList__row", children: /* @__PURE__ */ e(
|
|
70
|
+
function y(e) {
|
|
71
|
+
const t = e.size ? g(Math.max(0, e.size - 1)) : 0;
|
|
72
|
+
return /* @__PURE__ */ l("tr", { className: "LabeledList__row", children: /* @__PURE__ */ l(
|
|
74
73
|
"td",
|
|
75
74
|
{
|
|
76
75
|
colSpan: 3,
|
|
@@ -78,11 +77,13 @@ function y(l) {
|
|
|
78
77
|
paddingTop: t,
|
|
79
78
|
paddingBottom: t
|
|
80
79
|
},
|
|
81
|
-
children: /* @__PURE__ */
|
|
80
|
+
children: /* @__PURE__ */ l(x, {})
|
|
82
81
|
}
|
|
83
82
|
) });
|
|
84
83
|
}
|
|
85
|
-
|
|
84
|
+
((e) => {
|
|
85
|
+
e.Divider = y, e.Item = v;
|
|
86
|
+
})(b || (b = {}));
|
|
86
87
|
export {
|
|
87
88
|
b as LabeledList
|
|
88
89
|
};
|
|
@@ -3,6 +3,24 @@ type Props = Partial<{
|
|
|
3
3
|
/** Collapses table to the smallest possible size. */
|
|
4
4
|
collapsing: boolean;
|
|
5
5
|
}> & BoxProps;
|
|
6
|
+
export declare function Table(props: Props): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
type RowProps = Partial<{
|
|
8
|
+
/** Whether this is a header cell. */
|
|
9
|
+
header: boolean;
|
|
10
|
+
}> & BoxProps;
|
|
11
|
+
declare function TableRow(props: RowProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
type CellProps = Partial<{
|
|
13
|
+
/** Additional columns for this cell to expand, assuming there is room. */
|
|
14
|
+
colSpan: number;
|
|
15
|
+
/** Collapses table cell to the smallest possible size,
|
|
16
|
+
and stops any text inside from wrapping. */
|
|
17
|
+
collapsing: boolean;
|
|
18
|
+
/** Whether this is a header cell. */
|
|
19
|
+
header: boolean;
|
|
20
|
+
/** Rows for this cell to expand, assuming there is room. */
|
|
21
|
+
rowSpan: number;
|
|
22
|
+
}> & BoxProps;
|
|
23
|
+
declare function TableCell(props: CellProps): import("react/jsx-runtime").JSX.Element;
|
|
6
24
|
/**
|
|
7
25
|
* ## Table
|
|
8
26
|
* A straight forward mapping to a standard html table, which is slightly
|
|
@@ -21,26 +39,16 @@ type Props = Partial<{
|
|
|
21
39
|
* </Table>
|
|
22
40
|
* ```
|
|
23
41
|
*/
|
|
24
|
-
export declare function Table(props: Props): import("react/jsx-runtime").JSX.Element;
|
|
25
42
|
export declare namespace Table {
|
|
26
|
-
|
|
27
|
-
|
|
43
|
+
/**
|
|
44
|
+
* ## Table.Cell
|
|
45
|
+
* A straight forward mapping to `<td>` element.
|
|
46
|
+
*/
|
|
47
|
+
const Cell: typeof TableCell;
|
|
48
|
+
/**
|
|
49
|
+
* ## Table.Row
|
|
50
|
+
* A straight forward mapping to `<tr>` element.
|
|
51
|
+
*/
|
|
52
|
+
const Row: typeof TableRow;
|
|
28
53
|
}
|
|
29
|
-
type RowProps = Partial<{
|
|
30
|
-
/** Whether this is a header cell. */
|
|
31
|
-
header: boolean;
|
|
32
|
-
}> & BoxProps;
|
|
33
|
-
declare function TableRow(props: RowProps): import("react/jsx-runtime").JSX.Element;
|
|
34
|
-
type CellProps = Partial<{
|
|
35
|
-
/** Additional columns for this cell to expand, assuming there is room. */
|
|
36
|
-
colSpan: number;
|
|
37
|
-
/** Collapses table cell to the smallest possible size,
|
|
38
|
-
and stops any text inside from wrapping. */
|
|
39
|
-
collapsing: boolean;
|
|
40
|
-
/** Whether this is a header cell. */
|
|
41
|
-
header: boolean;
|
|
42
|
-
/** Rows for this cell to expand, assuming there is room. */
|
|
43
|
-
rowSpan: number;
|
|
44
|
-
}> & BoxProps;
|
|
45
|
-
declare function TableCell(props: CellProps): import("react/jsx-runtime").JSX.Element;
|
|
46
54
|
export {};
|
package/dist/components/Table.js
CHANGED
|
@@ -17,7 +17,7 @@ function m(e) {
|
|
|
17
17
|
}
|
|
18
18
|
);
|
|
19
19
|
}
|
|
20
|
-
function
|
|
20
|
+
function b(e) {
|
|
21
21
|
const { className: l, header: a, ...s } = e;
|
|
22
22
|
return /* @__PURE__ */ c(
|
|
23
23
|
"tr",
|
|
@@ -32,9 +32,8 @@ function i(e) {
|
|
|
32
32
|
}
|
|
33
33
|
);
|
|
34
34
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
const { className: l, collapsing: a, colSpan: s, header: o, ...b } = e;
|
|
35
|
+
function _(e) {
|
|
36
|
+
const { className: l, collapsing: a, colSpan: s, header: o, ...i } = e;
|
|
38
37
|
return /* @__PURE__ */ c(
|
|
39
38
|
"td",
|
|
40
39
|
{
|
|
@@ -46,11 +45,13 @@ function T(e) {
|
|
|
46
45
|
t(e)
|
|
47
46
|
]),
|
|
48
47
|
colSpan: s,
|
|
49
|
-
...n(
|
|
48
|
+
...n(i)
|
|
50
49
|
}
|
|
51
50
|
);
|
|
52
51
|
}
|
|
53
|
-
|
|
52
|
+
((e) => {
|
|
53
|
+
e.Cell = _, e.Row = b;
|
|
54
|
+
})(m || (m = {}));
|
|
54
55
|
export {
|
|
55
56
|
m as Table
|
|
56
57
|
};
|
|
@@ -13,6 +13,22 @@ type Props = Partial<{
|
|
|
13
13
|
/** Use a vertical configuration, where tabs will be stacked vertically. */
|
|
14
14
|
vertical: boolean;
|
|
15
15
|
}> & BoxProps;
|
|
16
|
+
export declare function Tabs(props: Props): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
type TabProps = Partial<{
|
|
18
|
+
/** Font awesome icon. @see https://fontawesome.com/v6/search?o=r&m=free */
|
|
19
|
+
icon: string;
|
|
20
|
+
/** Causes the icon to spin */
|
|
21
|
+
iconSpin: boolean;
|
|
22
|
+
/** Left slot content */
|
|
23
|
+
leftSlot: ReactNode;
|
|
24
|
+
/** Called when element is clicked */
|
|
25
|
+
onClick: (e?: any) => void;
|
|
26
|
+
/** Right slot content */
|
|
27
|
+
rightSlot: ReactNode;
|
|
28
|
+
/** Whether the tab is selected */
|
|
29
|
+
selected: boolean;
|
|
30
|
+
}> & BoxProps;
|
|
31
|
+
declare function TabItem(props: TabProps): import("react/jsx-runtime").JSX.Element;
|
|
16
32
|
/**
|
|
17
33
|
* ## Tabs
|
|
18
34
|
* Tabs make it easy to explore and switch between different views.
|
|
@@ -71,22 +87,12 @@ type Props = Partial<{
|
|
|
71
87
|
* </Section>
|
|
72
88
|
* ```
|
|
73
89
|
*/
|
|
74
|
-
export declare function Tabs(props: Props): import("react/jsx-runtime").JSX.Element;
|
|
75
90
|
export declare namespace Tabs {
|
|
76
|
-
|
|
91
|
+
/**
|
|
92
|
+
* ## Tabs.Tab
|
|
93
|
+
* An individual tab element. Tabs function like buttons, so they inherit
|
|
94
|
+
* a lot of `Button` props.
|
|
95
|
+
*/
|
|
96
|
+
const Tab: typeof TabItem;
|
|
77
97
|
}
|
|
78
|
-
type TabProps = Partial<{
|
|
79
|
-
/** Font awesome icon. */
|
|
80
|
-
icon: string;
|
|
81
|
-
/** Causes the icon to spin */
|
|
82
|
-
iconSpin: boolean;
|
|
83
|
-
/** Left slot content */
|
|
84
|
-
leftSlot: ReactNode;
|
|
85
|
-
/** Called when element is clicked */
|
|
86
|
-
onClick: (e?: any) => void;
|
|
87
|
-
/** Right slot content */
|
|
88
|
-
rightSlot: ReactNode;
|
|
89
|
-
/** Whether the tab is selected */
|
|
90
|
-
selected: boolean;
|
|
91
|
-
}> & BoxProps;
|
|
92
98
|
export {};
|
package/dist/components/Tabs.js
CHANGED
|
@@ -1,62 +1,65 @@
|
|
|
1
|
-
import { jsx as a, jsxs as
|
|
2
|
-
import { classes as
|
|
3
|
-
import { computeBoxClassName as
|
|
4
|
-
import { Icon as
|
|
5
|
-
function
|
|
6
|
-
const { className:
|
|
1
|
+
import { jsx as a, jsxs as N } from "react/jsx-runtime";
|
|
2
|
+
import { classes as f, canRender as d } from "../common/react.js";
|
|
3
|
+
import { computeBoxClassName as h, computeBoxProps as p } from "../common/ui.js";
|
|
4
|
+
import { Icon as v } from "./Icon.js";
|
|
5
|
+
function T(e) {
|
|
6
|
+
const { className: i, vertical: c, fill: o, fluid: s, children: r, ...l } = e;
|
|
7
7
|
return /* @__PURE__ */ a(
|
|
8
8
|
"div",
|
|
9
9
|
{
|
|
10
|
-
className:
|
|
10
|
+
className: f([
|
|
11
11
|
"Tabs",
|
|
12
|
-
|
|
12
|
+
c ? "Tabs--vertical" : "Tabs--horizontal",
|
|
13
13
|
o && "Tabs--fill",
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
s && "Tabs--fluid",
|
|
15
|
+
i,
|
|
16
|
+
h(l)
|
|
17
17
|
]),
|
|
18
|
-
...
|
|
18
|
+
...p(l),
|
|
19
19
|
children: r
|
|
20
20
|
}
|
|
21
21
|
);
|
|
22
22
|
}
|
|
23
|
-
function x(
|
|
23
|
+
function x(e) {
|
|
24
24
|
const {
|
|
25
|
-
className:
|
|
26
|
-
selected:
|
|
25
|
+
className: i,
|
|
26
|
+
selected: c,
|
|
27
27
|
color: o,
|
|
28
|
-
icon:
|
|
28
|
+
icon: s,
|
|
29
29
|
iconSpin: r,
|
|
30
|
-
leftSlot:
|
|
30
|
+
leftSlot: l,
|
|
31
31
|
rightSlot: t,
|
|
32
|
-
children:
|
|
32
|
+
children: u,
|
|
33
33
|
onClick: n,
|
|
34
34
|
...m
|
|
35
|
-
} =
|
|
35
|
+
} = e;
|
|
36
|
+
function _(b) {
|
|
36
37
|
n && (n(b), b.target.blur());
|
|
37
|
-
}
|
|
38
|
-
return /* @__PURE__ */
|
|
38
|
+
}
|
|
39
|
+
return /* @__PURE__ */ N(
|
|
39
40
|
"div",
|
|
40
41
|
{
|
|
41
|
-
className:
|
|
42
|
+
className: f([
|
|
42
43
|
"Tab",
|
|
43
44
|
"Tabs__Tab",
|
|
44
45
|
`Tab--color--${o}`,
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
c && "Tab--selected",
|
|
47
|
+
i,
|
|
48
|
+
h(m)
|
|
48
49
|
]),
|
|
49
50
|
onClick: _,
|
|
50
|
-
...
|
|
51
|
+
...p(m),
|
|
51
52
|
children: [
|
|
52
|
-
d(
|
|
53
|
-
/* @__PURE__ */ a("div", { className: "Tab__text", children:
|
|
53
|
+
d(l) && /* @__PURE__ */ a("div", { className: "Tab__left", children: l }) || !!s && /* @__PURE__ */ a("div", { className: "Tab__left", children: /* @__PURE__ */ a(v, { name: s, spin: r }) }),
|
|
54
|
+
/* @__PURE__ */ a("div", { className: "Tab__text", children: u }),
|
|
54
55
|
d(t) && /* @__PURE__ */ a("div", { className: "Tab__right", children: t })
|
|
55
56
|
]
|
|
56
57
|
}
|
|
57
58
|
);
|
|
58
59
|
}
|
|
59
|
-
|
|
60
|
+
((e) => {
|
|
61
|
+
e.Tab = x;
|
|
62
|
+
})(T || (T = {}));
|
|
60
63
|
export {
|
|
61
|
-
|
|
64
|
+
T as Tabs
|
|
62
65
|
};
|
|
@@ -21,7 +21,6 @@ export { Image } from './Image';
|
|
|
21
21
|
export { ImageButton } from './ImageButton';
|
|
22
22
|
export { InfinitePlane } from './InfinitePlane';
|
|
23
23
|
export { Input } from './Input';
|
|
24
|
-
export { Interactive, type Interaction } from './Interactive';
|
|
25
24
|
export { KeyListener } from './KeyListener';
|
|
26
25
|
export { Knob } from './Knob';
|
|
27
26
|
export { LabeledControls } from './LabeledControls';
|
|
@@ -30,7 +29,6 @@ export { MenuBar } from './MenuBar';
|
|
|
30
29
|
export { Modal } from './Modal';
|
|
31
30
|
export { NoticeBox } from './NoticeBox';
|
|
32
31
|
export { NumberInput } from './NumberInput';
|
|
33
|
-
export { Pointer } from './Pointer';
|
|
34
32
|
export { Popper } from './Popper';
|
|
35
33
|
export { ProgressBar } from './ProgressBar';
|
|
36
34
|
export { RestrictedInput } from './RestrictedInput';
|