ferns-ui 0.25.3 → 0.26.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/dist/ActionSheet.d.ts +1 -1
- package/dist/ActionSheet.js +1 -2
- package/dist/ActionSheet.js.map +1 -1
- package/dist/Box.js +1 -1
- package/dist/Box.js.map +1 -1
- package/dist/CheckBox.d.ts +1 -4
- package/dist/CheckBox.js +33 -20
- package/dist/CheckBox.js.map +1 -1
- package/dist/Common.d.ts +44 -10
- package/dist/Common.js.map +1 -1
- package/dist/DateTimeField.android.d.ts +1 -1
- package/dist/DateTimeField.android.js +58 -16
- package/dist/DateTimeField.android.js.map +1 -1
- package/dist/DateTimeField.d.ts +2 -2
- package/dist/DateTimeField.ios.d.ts +1 -1
- package/dist/DateTimeField.ios.js +43 -12
- package/dist/DateTimeField.ios.js.map +1 -1
- package/dist/DateTimeField.js.map +1 -1
- package/dist/Field.js +2 -2
- package/dist/Field.js.map +1 -1
- package/dist/Mask.d.ts +2 -3
- package/dist/MediaQuery.d.ts +1 -0
- package/dist/MediaQuery.js +16 -0
- package/dist/MediaQuery.js.map +1 -1
- package/dist/Page.js.map +1 -1
- package/dist/SegmentedControl.js +6 -2
- package/dist/SegmentedControl.js.map +1 -1
- package/dist/SelectList.d.ts +1 -1
- package/dist/SelectList.js +9 -8
- package/dist/SelectList.js.map +1 -1
- package/dist/SplitPage.d.ts +3 -21
- package/dist/SplitPage.js +78 -23
- package/dist/SplitPage.js.map +1 -1
- package/dist/SplitPage.native.d.ts +3 -0
- package/dist/SplitPage.native.js +75 -0
- package/dist/SplitPage.native.js.map +1 -0
- package/dist/Table.d.ts +21 -0
- package/dist/Table.js +31 -0
- package/dist/Table.js.map +1 -0
- package/dist/TableHeader.d.ts +20 -0
- package/dist/TableHeader.js +11 -0
- package/dist/TableHeader.js.map +1 -0
- package/dist/TableHeaderCell.d.ts +15 -0
- package/dist/TableHeaderCell.js +36 -0
- package/dist/TableHeaderCell.js.map +1 -0
- package/dist/TableRow.d.ts +24 -0
- package/dist/TableRow.js +30 -0
- package/dist/TableRow.js.map +1 -0
- package/dist/TapToEdit.js +21 -16
- package/dist/TapToEdit.js.map +1 -1
- package/dist/TextField.js +11 -6
- package/dist/TextField.js.map +1 -1
- package/dist/Utilities.d.ts +1 -0
- package/dist/Utilities.js +18 -2
- package/dist/Utilities.js.map +1 -1
- package/dist/WithLabel.d.ts +3 -3
- package/dist/WithLabel.js +3 -0
- package/dist/WithLabel.js.map +1 -1
- package/dist/index.d.ts +9 -4
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/tableContext.d.ts +18 -0
- package/dist/tableContext.js +16 -0
- package/dist/tableContext.js.map +1 -0
- package/package.json +2 -1
- package/src/ActionSheet.tsx +2 -3
- package/src/Box.tsx +1 -0
- package/src/CheckBox.tsx +85 -60
- package/src/Common.ts +49 -10
- package/src/DateTimeField.android.tsx +71 -26
- package/src/DateTimeField.ios.tsx +55 -13
- package/src/DateTimeField.tsx +2 -2
- package/src/Field.tsx +4 -4
- package/src/Mask.tsx +2 -2
- package/src/MediaQuery.ts +14 -0
- package/src/Page.tsx +0 -1
- package/src/SegmentedControl.tsx +3 -3
- package/src/SelectList.tsx +9 -2
- package/src/SplitPage.native.tsx +156 -0
- package/src/SplitPage.tsx +136 -47
- package/src/Table.tsx +69 -0
- package/src/TableHeader.tsx +33 -0
- package/src/TableHeaderCell.tsx +76 -0
- package/src/TableRow.tsx +87 -0
- package/src/TapToEdit.tsx +21 -22
- package/src/TextField.tsx +26 -17
- package/src/Utilities.tsx +24 -3
- package/src/WithLabel.tsx +6 -3
- package/src/index.tsx +10 -5
- package/src/tableContext.tsx +43 -0
package/dist/Field.js
CHANGED
|
@@ -20,14 +20,14 @@ export const Field = ({ name, label, labelColor, height, type, rows, value, onCh
|
|
|
20
20
|
if (type === "select") {
|
|
21
21
|
if (!options) {
|
|
22
22
|
console.error("Field with type=select require options");
|
|
23
|
-
return
|
|
23
|
+
return undefined;
|
|
24
24
|
}
|
|
25
25
|
return (React.createElement(SelectList, { disabled: disabled, id: name, options: options, placeholder: placeholder, value: value, onChange: onChange }));
|
|
26
26
|
}
|
|
27
27
|
else if (type === "multiselect") {
|
|
28
28
|
if (!options) {
|
|
29
29
|
console.error("Field with type=multiselect require options");
|
|
30
|
-
return
|
|
30
|
+
return undefined;
|
|
31
31
|
}
|
|
32
32
|
return (React.createElement(Box, { width: "100%" }, options.map((o) => (React.createElement(Box, { key: o.label + o.value, alignItems: "center", direction: "row", justifyContent: "between", width: "100%" },
|
|
33
33
|
React.createElement(Box, { flex: "shrink", marginRight: 2 },
|
package/dist/Field.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Field.js","sourceRoot":"","sources":["../src/Field.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AACzC,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAC,UAAU,EAAoB,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAC,MAAM,EAAC,MAAM,UAAU,CAAC;AAChC,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AA+BtC,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,EACpB,IAAI,EACJ,KAAK,EACL,UAAU,EACV,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,OAAO,EACP,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,eAAe,GACJ,EAAE,EAAE;IACf,MAAM,mBAAmB,GAAG,CAAC,KAAa,EAAE,QAAgB,EAAE,EAAE;QAC9D,QAAQ,iCAAK,KAAK,KAAE,CAAC,KAAK,CAAC,EAAE,QAAQ,IAAE,CAAC;IAC1C,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,CAAC,WAAoB,EAAE,EAAE;QAClD,QAAQ,CAAC,WAAW,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"Field.js","sourceRoot":"","sources":["../src/Field.tsx"],"names":[],"mappings":"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"}
|
package/dist/Mask.d.ts
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
export declare function Mask(props: MaskProps): React.ReactElement | null;
|
|
1
|
+
import { MaskProps, ReactChildren } from "./Common";
|
|
2
|
+
export declare function Mask(props: MaskProps): ReactChildren;
|
package/dist/MediaQuery.d.ts
CHANGED
package/dist/MediaQuery.js
CHANGED
|
@@ -30,4 +30,20 @@ export function mediaQueryLargerThan(size) {
|
|
|
30
30
|
}
|
|
31
31
|
return false;
|
|
32
32
|
}
|
|
33
|
+
export function mediaQuerySmallerThan(size) {
|
|
34
|
+
const media = mediaQuery();
|
|
35
|
+
if (size === "lg") {
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
else if (size === "md") {
|
|
39
|
+
return ["xs", "sm", "md"].includes(media);
|
|
40
|
+
}
|
|
41
|
+
else if (size === "sm") {
|
|
42
|
+
return ["xs", "sm"].includes(media);
|
|
43
|
+
}
|
|
44
|
+
else if (size === "xs") {
|
|
45
|
+
return ["xs"].includes(media);
|
|
46
|
+
}
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
33
49
|
//# sourceMappingURL=MediaQuery.js.map
|
package/dist/MediaQuery.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MediaQuery.js","sourceRoot":"","sources":["../src/MediaQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,UAAU,UAAU;IACxB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;IAC7C,IAAI,KAAK,GAAG,GAAG,EAAE;QACf,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,KAAK,GAAG,GAAG,EAAE;QACtB,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,KAAK,GAAG,IAAI,EAAE;QACvB,OAAO,IAAI,CAAC;KACb;SAAM;QACL,OAAO,IAAI,CAAC;KACb;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAA+B;IAClE,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAC3B,IAAI,IAAI,KAAK,IAAI,EAAE;QACjB,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KAC3C;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KACrC;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KAC/B;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
1
|
+
{"version":3,"file":"MediaQuery.js","sourceRoot":"","sources":["../src/MediaQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,UAAU,UAAU;IACxB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;IAC7C,IAAI,KAAK,GAAG,GAAG,EAAE;QACf,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,KAAK,GAAG,GAAG,EAAE;QACtB,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,KAAK,GAAG,IAAI,EAAE;QACvB,OAAO,IAAI,CAAC;KACb;SAAM;QACL,OAAO,IAAI,CAAC;KACb;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAA+B;IAClE,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAC3B,IAAI,IAAI,KAAK,IAAI,EAAE;QACjB,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KAC3C;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KACrC;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KAC/B;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAA+B;IACnE,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAC3B,IAAI,IAAI,KAAK,IAAI,EAAE;QACjB,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KAC3C;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KACrC;SAAM,IAAI,IAAI,KAAK,IAAI,EAAE;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KAC/B;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/dist/Page.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Page.js","sourceRoot":"","sources":["../src/Page.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,MAAM,EAAC,MAAM,UAAU,CAAC;AAEhC,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,+EAA+E;AAC/E,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAsBlC,MAAM,OAAO,IAAK,SAAQ,KAAK,CAAC,SAAwB;IAAxD;;QACE,mBAAc,GAAyB,KAAK,CAAC,SAAS,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"Page.js","sourceRoot":"","sources":["../src/Page.tsx"],"names":[],"mappings":"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"}
|
package/dist/SegmentedControl.js
CHANGED
|
@@ -15,7 +15,7 @@ export const SegmentedControl = ({ items, onChange = () => { }, selectedItemInde
|
|
|
15
15
|
return null;
|
|
16
16
|
}
|
|
17
17
|
if (!multiselect && (selectedItemIndexes === null || selectedItemIndexes === void 0 ? void 0 : selectedItemIndexes.length) && (selectedItemIndexes === null || selectedItemIndexes === void 0 ? void 0 : selectedItemIndexes.length) > 1) {
|
|
18
|
-
console.warn("
|
|
18
|
+
console.warn("Multiple selections not allowed without multiselect flag");
|
|
19
19
|
return null;
|
|
20
20
|
}
|
|
21
21
|
if ((selectedItemIndexes === null || selectedItemIndexes === void 0 ? void 0 : selectedItemIndexes.length) && (selectedItemIndexes === null || selectedItemIndexes === void 0 ? void 0 : selectedItemIndexes.length) > selectLimit) {
|
|
@@ -27,7 +27,11 @@ export const SegmentedControl = ({ items, onChange = () => { }, selectedItemInde
|
|
|
27
27
|
? "white"
|
|
28
28
|
: "lightGray";
|
|
29
29
|
};
|
|
30
|
-
return (React.createElement(Box, { color: "lightGray", direction: "row", display: "flex", height: 40, justifyContent: "between",
|
|
30
|
+
return (React.createElement(Box, { color: "lightGray", direction: "row", display: "flex", height: 40, justifyContent: "between",
|
|
31
|
+
// padding={1}
|
|
32
|
+
rounding: 3, width: "100%" }, items.map((item, index) => (React.createElement(Box, { key: index, color: isTabActive(index), height: "100%",
|
|
33
|
+
// paddingX={2}
|
|
34
|
+
rounding: 3, width: `${100 / items.length}%` },
|
|
31
35
|
React.createElement(Box, { alignItems: "center", display: "flex", height: "100%", justifyContent: "center", width: "100%", onClick: () => {
|
|
32
36
|
if ((selectedItemIndexes === null || selectedItemIndexes === void 0 ? void 0 : selectedItemIndexes.length) === selectLimit &&
|
|
33
37
|
!(selectedItemIndexes === null || selectedItemIndexes === void 0 ? void 0 : selectedItemIndexes.includes(index))) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SegmentedControl.js","sourceRoot":"","sources":["../src/SegmentedControl.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAC;AAE5B,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAC/B,KAAK,EACL,QAAQ,GAAG,GAAG,EAAE,GAAE,CAAC,EACnB,mBAAmB,GAAG,SAAS,EAC/B,iBAAiB,GAAG,SAAS,EAC7B,WAAW,GAAG,KAAK,EACnB,WAAW,GAAG,CAAC,GACO,EAAE,EAAE;IAC1B,MAAM,UAAU,GAAG,CAAC,IAA8B,EAAE,EAAE;QACpD,OAAO,oBAAC,IAAI,IAAC,MAAM,EAAC,MAAM,IAAE,IAAI,CAAQ,CAAC;QACzC,kCAAkC;QAClC,8CAA8C;QAC9C,WAAW;QACX,iBAAiB;QACjB,IAAI;IACN,CAAC,CAAC;IAEF,IAAI,iBAAiB,KAAK,SAAS,IAAI,mBAAmB,KAAK,SAAS,EAAE;QACxE,OAAO,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;QAC7F,OAAO,IAAI,CAAC;KACb;IAED,IAAI,CAAC,WAAW,KAAI,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,MAAM,CAAA,IAAI,CAAA,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,MAAM,IAAG,CAAC,EAAE;QAClF,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"SegmentedControl.js","sourceRoot":"","sources":["../src/SegmentedControl.tsx"],"names":[],"mappings":"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"}
|
package/dist/SelectList.d.ts
CHANGED
|
@@ -15,4 +15,4 @@ export interface SelectListProps extends FieldWithLabelsProps {
|
|
|
15
15
|
placeholder?: string;
|
|
16
16
|
style?: StyleProp;
|
|
17
17
|
}
|
|
18
|
-
export declare function SelectList({ options, value, onChange, label, labelColor, style, placeholder, }: SelectListProps): JSX.Element;
|
|
18
|
+
export declare function SelectList({ options, value, onChange, label, labelColor, style, placeholder, disabled, }: SelectListProps): JSX.Element;
|
package/dist/SelectList.js
CHANGED
|
@@ -4,16 +4,17 @@ import { Icon } from "./Icon";
|
|
|
4
4
|
import { RNPickerSelect } from "./PickerSelect";
|
|
5
5
|
import { Unifier } from "./Unifier";
|
|
6
6
|
import { WithLabel } from "./WithLabel";
|
|
7
|
-
export function SelectList({ options, value, onChange, label, labelColor, style, placeholder, }) {
|
|
7
|
+
export function SelectList({ options, value, onChange, label, labelColor, style, placeholder, disabled, }) {
|
|
8
8
|
const withLabelProps = { label, labelColor };
|
|
9
|
+
let backgroundColor = (style === null || style === void 0 ? void 0 : style.backgroundColor) || Unifier.theme.white;
|
|
10
|
+
if (disabled) {
|
|
11
|
+
backgroundColor = Unifier.theme.lightGray;
|
|
12
|
+
}
|
|
9
13
|
return (React.createElement(WithLabel, Object.assign({}, withLabelProps),
|
|
10
|
-
React.createElement(RNPickerSelect
|
|
11
|
-
|
|
12
|
-
, {
|
|
13
|
-
// Icon only needed for iOs, web and android use default icons
|
|
14
|
-
Icon: () => {
|
|
14
|
+
React.createElement(RNPickerSelect, { Icon: () => {
|
|
15
|
+
// Icon only needed for iOS, web and android use default icons
|
|
15
16
|
return Platform.OS === "ios" ? (React.createElement(Icon, { color: "darkGray", name: "angle-down", size: "md" })) : null;
|
|
16
|
-
}, items: options, placeholder: placeholder ? { label: placeholder, value: "" } : {}, style: {
|
|
17
|
+
}, disabled: disabled, items: options, placeholder: placeholder ? { label: placeholder, value: "" } : {}, style: {
|
|
17
18
|
viewContainer: {
|
|
18
19
|
flexDirection: (style === null || style === void 0 ? void 0 : style.flexDirection) || "row",
|
|
19
20
|
justifyContent: (style === null || style === void 0 ? void 0 : style.justifyContent) || "center",
|
|
@@ -23,7 +24,7 @@ export function SelectList({ options, value, onChange, label, labelColor, style,
|
|
|
23
24
|
borderColor: (style === null || style === void 0 ? void 0 : style.borderColor) || Unifier.theme.gray,
|
|
24
25
|
borderWidth: (style === null || style === void 0 ? void 0 : style.borderWidth) || 1,
|
|
25
26
|
borderRadius: (style === null || style === void 0 ? void 0 : style.borderRadius) || 5,
|
|
26
|
-
backgroundColor
|
|
27
|
+
backgroundColor,
|
|
27
28
|
},
|
|
28
29
|
inputIOS: {
|
|
29
30
|
paddingVertical: 12,
|
package/dist/SelectList.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectList.js","sourceRoot":"","sources":["../src/SelectList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,QAAQ,EAAC,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAC,cAAc,EAAC,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AAiBtC,MAAM,UAAU,UAAU,CAAC,EACzB,OAAO,EACP,KAAK,EACL,QAAQ,EACR,KAAK,EACL,UAAU,EACV,KAAK,EACL,WAAW,
|
|
1
|
+
{"version":3,"file":"SelectList.js","sourceRoot":"","sources":["../src/SelectList.tsx"],"names":[],"mappings":"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"}
|
package/dist/SplitPage.d.ts
CHANGED
|
@@ -1,21 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
interface SplitPageProps {
|
|
5
|
-
children?: ReactChild | ReactChild[] | null;
|
|
6
|
-
tabs?: string[];
|
|
7
|
-
navigation?: any;
|
|
8
|
-
loading?: boolean;
|
|
9
|
-
color?: Color;
|
|
10
|
-
keyboardOffset?: number;
|
|
11
|
-
renderListViewItem: (itemInfo: ListRenderItemInfo<any>) => ReactElement | null;
|
|
12
|
-
renderListViewHeader?: () => ReactElement | null;
|
|
13
|
-
renderContent?: (index?: number) => ReactElement | ReactElement[] | null;
|
|
14
|
-
listViewData: any[];
|
|
15
|
-
listViewExtraData?: any;
|
|
16
|
-
listViewWidth?: number;
|
|
17
|
-
renderChild?: () => ReactChild;
|
|
18
|
-
selectLimit?: number;
|
|
19
|
-
}
|
|
20
|
-
export declare const SplitPage: ({ children, tabs, loading, color, keyboardOffset, renderListViewItem, renderListViewHeader, renderContent, listViewData, listViewExtraData, listViewWidth, selectLimit, }: SplitPageProps) => JSX.Element | null;
|
|
21
|
-
export {};
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { SplitPageProps } from "./Common";
|
|
3
|
+
export declare const SplitPage: ({ children, tabs, loading, color, keyboardOffset, renderListViewItem, renderListViewHeader, renderContent, onSelectionChange, listViewData, listViewExtraData, listViewWidth, bottomNavBarHeight, showItemList, selectLimit, }: SplitPageProps) => JSX.Element | null;
|
package/dist/SplitPage.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import React, { Children, useState } from "react";
|
|
2
|
-
import { ScrollView, View } from "react-native";
|
|
1
|
+
import React, { Children, useCallback, useEffect, useState } from "react";
|
|
2
|
+
import { Dimensions, ScrollView, View } from "react-native";
|
|
3
|
+
import { SwiperFlatList } from "react-native-swiper-flatlist";
|
|
3
4
|
import { Box } from "./Box";
|
|
4
|
-
import { SPACING } from "./Common";
|
|
5
5
|
import { FlatList } from "./FlatList";
|
|
6
6
|
import { IconButton } from "./IconButton";
|
|
7
7
|
import { mediaQueryLargerThan } from "./MediaQuery";
|
|
@@ -10,10 +10,25 @@ import { Spinner } from "./Spinner";
|
|
|
10
10
|
import { Unifier } from "./Unifier";
|
|
11
11
|
// A component for rendering a list on one side and a details view on the right for large screens,
|
|
12
12
|
// and a scrollable list where clicking an item takes you the details view.
|
|
13
|
-
export const SplitPage = ({ children, tabs = [], loading = false, color, keyboardOffset, renderListViewItem, renderListViewHeader, renderContent, listViewData, listViewExtraData, listViewWidth, selectLimit, }) => {
|
|
13
|
+
export const SplitPage = ({ children, tabs = [], loading = false, color, keyboardOffset, renderListViewItem, renderListViewHeader, renderContent, onSelectionChange = () => { }, listViewData, listViewExtraData, listViewWidth, bottomNavBarHeight, showItemList, selectLimit, }) => {
|
|
14
14
|
const [selectedId, setSelectedId] = useState(undefined);
|
|
15
15
|
const [activeTabs, setActiveTabs] = useState(tabs.length > 2 ? [0, 1] : []);
|
|
16
|
+
const { width } = Dimensions.get("window");
|
|
17
|
+
const isMobileDevice = !mediaQueryLargerThan("sm");
|
|
16
18
|
const elementArray = Children.toArray(children);
|
|
19
|
+
const onItemSelect = useCallback((item) => {
|
|
20
|
+
setSelectedId(item.index);
|
|
21
|
+
onSelectionChange(item);
|
|
22
|
+
}, [onSelectionChange]);
|
|
23
|
+
const onItemDeselect = useCallback(() => {
|
|
24
|
+
setSelectedId(undefined);
|
|
25
|
+
onSelectionChange(undefined);
|
|
26
|
+
}, [onSelectionChange]);
|
|
27
|
+
useEffect(() => {
|
|
28
|
+
if (showItemList) {
|
|
29
|
+
onItemDeselect();
|
|
30
|
+
}
|
|
31
|
+
}, [showItemList, onItemDeselect]);
|
|
17
32
|
if (!children && !renderContent) {
|
|
18
33
|
console.warn("A child node is required");
|
|
19
34
|
return null;
|
|
@@ -24,31 +39,23 @@ export const SplitPage = ({ children, tabs = [], loading = false, color, keyboar
|
|
|
24
39
|
}
|
|
25
40
|
const renderItem = (itemInfo) => {
|
|
26
41
|
return (React.createElement(Box, { onClick: () => {
|
|
27
|
-
|
|
42
|
+
onItemSelect(itemInfo);
|
|
28
43
|
} }, renderListViewItem(itemInfo)));
|
|
29
44
|
};
|
|
30
45
|
const renderList = () => {
|
|
31
|
-
if (!mediaQueryLargerThan("sm") && selectedId) {
|
|
32
|
-
return null;
|
|
33
|
-
}
|
|
34
46
|
return (React.createElement(View, { style: {
|
|
35
|
-
width:
|
|
36
|
-
maxWidth:
|
|
47
|
+
width: listViewWidth !== null && listViewWidth !== void 0 ? listViewWidth : 300,
|
|
48
|
+
maxWidth: listViewWidth !== null && listViewWidth !== void 0 ? listViewWidth : 300,
|
|
37
49
|
flexGrow: 1,
|
|
38
50
|
flexShrink: 0,
|
|
39
51
|
display: "flex",
|
|
40
|
-
paddingTop: "12px",
|
|
41
|
-
paddingBottom: "12px",
|
|
42
52
|
flexDirection: "column",
|
|
43
53
|
} },
|
|
44
54
|
renderListViewHeader && renderListViewHeader(),
|
|
45
55
|
React.createElement(FlatList, { data: listViewData, extraData: listViewExtraData, keyExtractor: (item) => item.id, renderItem: renderItem })));
|
|
46
56
|
};
|
|
47
57
|
const renderListContent = () => {
|
|
48
|
-
return (React.createElement(Box, { flex: "grow", padding: 2 },
|
|
49
|
-
!mediaQueryLargerThan("sm") && (React.createElement(Box, { width: "100%" },
|
|
50
|
-
React.createElement(IconButton, { accessibilityLabel: "close", icon: "times", iconColor: "darkGray", onClick: () => setSelectedId(undefined) }))),
|
|
51
|
-
renderContent && renderContent(selectedId)));
|
|
58
|
+
return (React.createElement(Box, { flex: "grow", padding: 2 }, renderContent && renderContent(selectedId)));
|
|
52
59
|
};
|
|
53
60
|
const renderChildrenContent = () => {
|
|
54
61
|
if (Array.isArray(children) && children.length > 2) {
|
|
@@ -58,18 +65,19 @@ export const SplitPage = ({ children, tabs = [], loading = false, color, keyboar
|
|
|
58
65
|
height: "100%",
|
|
59
66
|
alignItems: "center",
|
|
60
67
|
} },
|
|
61
|
-
React.createElement(Box, {
|
|
68
|
+
React.createElement(Box, { marginBottom: 4, paddingX: 4, width: "100%" },
|
|
62
69
|
React.createElement(SegmentedControl, { items: tabs, multiselect: true, selectLimit: selectLimit || tabs.length, selectedItemIndexes: activeTabs, onChange: (index) => {
|
|
63
70
|
setActiveTabs([...index.activeIndex]);
|
|
64
71
|
} })),
|
|
65
|
-
React.createElement(Box, { direction: "row", flex: "grow", height: "100%", paddingX:
|
|
72
|
+
React.createElement(Box, { direction: "row", flex: "grow", height: "100%", paddingX: 4, width: activeTabs.length > 1 ? "100%" : "60%" }, activeTabs.map((tabIndex, i) => {
|
|
66
73
|
return (React.createElement(ScrollView, { key: tabIndex, contentContainerStyle: {
|
|
67
74
|
flex: 1,
|
|
68
75
|
}, style: {
|
|
69
76
|
flex: 1,
|
|
70
77
|
width: "60%",
|
|
71
|
-
padding: 3 * SPACING,
|
|
72
78
|
height: "100%",
|
|
79
|
+
paddingRight: i ? 0 : 16,
|
|
80
|
+
paddingLeft: i ? 16 : 0,
|
|
73
81
|
} }, elementArray[tabIndex]));
|
|
74
82
|
}))));
|
|
75
83
|
}
|
|
@@ -80,15 +88,62 @@ export const SplitPage = ({ children, tabs = [], loading = false, color, keyboar
|
|
|
80
88
|
}, style: {
|
|
81
89
|
flex: 1,
|
|
82
90
|
width: "60%",
|
|
83
|
-
padding: 3 * SPACING,
|
|
84
91
|
height: "100%",
|
|
85
92
|
} }, element));
|
|
86
93
|
})));
|
|
87
94
|
}
|
|
88
95
|
};
|
|
89
|
-
|
|
96
|
+
const renderMobileList = () => {
|
|
97
|
+
if (isMobileDevice && selectedId !== undefined) {
|
|
98
|
+
return null;
|
|
99
|
+
}
|
|
100
|
+
return (React.createElement(View, { style: {
|
|
101
|
+
width: "100%",
|
|
102
|
+
maxWidth: "100%",
|
|
103
|
+
height: "100%",
|
|
104
|
+
flexGrow: 1,
|
|
105
|
+
flexShrink: 0,
|
|
106
|
+
display: "flex",
|
|
107
|
+
flexDirection: "column",
|
|
108
|
+
} },
|
|
109
|
+
renderListViewHeader && renderListViewHeader(),
|
|
110
|
+
React.createElement(FlatList, { data: listViewData, extraData: listViewExtraData, keyExtractor: (item) => item.id, nestedScrollEnabled: true, renderItem: renderItem })));
|
|
111
|
+
};
|
|
112
|
+
const renderMobileListContent = () => {
|
|
113
|
+
if (isMobileDevice && selectedId === undefined) {
|
|
114
|
+
return null;
|
|
115
|
+
}
|
|
116
|
+
return (React.createElement(Box, { flex: "grow", padding: 2 },
|
|
117
|
+
isMobileDevice && (React.createElement(Box, { width: "100%" },
|
|
118
|
+
React.createElement(IconButton, { accessibilityLabel: "close", icon: "times", iconColor: "darkGray", onClick: () => onItemDeselect() }))),
|
|
119
|
+
renderContent && renderContent(selectedId)));
|
|
120
|
+
};
|
|
121
|
+
const renderMobileChildrenContent = () => {
|
|
122
|
+
if (selectedId === undefined) {
|
|
123
|
+
return null;
|
|
124
|
+
}
|
|
125
|
+
return (React.createElement(SwiperFlatList, { nestedScrollEnabled: true, paginationStyle: { justifyContent: "center", width: "95%" }, renderAll: true, showPagination: true, style: { width: "100%" } }, elementArray.map((element, i) => {
|
|
126
|
+
return (React.createElement(View, { key: i, style: {
|
|
127
|
+
width: width - 8,
|
|
128
|
+
padding: 4,
|
|
129
|
+
height: elementArray.length > 1 ? "90vh" : "100vh",
|
|
130
|
+
paddingBottom: bottomNavBarHeight,
|
|
131
|
+
} }, element));
|
|
132
|
+
})));
|
|
133
|
+
};
|
|
134
|
+
const renderSplitPage = () => {
|
|
135
|
+
return (React.createElement(React.Fragment, null,
|
|
136
|
+
renderList(),
|
|
137
|
+
renderContent ? renderListContent() : renderChildrenContent()));
|
|
138
|
+
};
|
|
139
|
+
const renderMobileSplitPage = () => {
|
|
140
|
+
const renderMainContent = renderContent
|
|
141
|
+
? renderMobileListContent()
|
|
142
|
+
: renderMobileChildrenContent();
|
|
143
|
+
return selectedId === undefined ? renderMobileList() : renderMainContent;
|
|
144
|
+
};
|
|
145
|
+
return (React.createElement(Box, { avoidKeyboard: true, color: color || "lightGray", direction: "row", display: "flex", height: "100%", keyboardOffset: keyboardOffset, padding: 2, width: "100%" },
|
|
90
146
|
loading === true && React.createElement(Spinner, { color: Unifier.theme.darkGray, size: "md" }),
|
|
91
|
-
|
|
92
|
-
renderContent ? renderListContent() : renderChildrenContent()));
|
|
147
|
+
Boolean(isMobileDevice) ? renderMobileSplitPage() : renderSplitPage()));
|
|
93
148
|
};
|
|
94
149
|
//# sourceMappingURL=SplitPage.js.map
|
package/dist/SplitPage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SplitPage.js","sourceRoot":"","sources":["../src/SplitPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,QAAQ,
|
|
1
|
+
{"version":3,"file":"SplitPage.js","sourceRoot":"","sources":["../src/SplitPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { SplitPageProps } from "./Common";
|
|
3
|
+
export declare const SplitPage: ({ children, loading, color, keyboardOffset, renderListViewItem, renderListViewHeader, renderContent, onSelectionChange, listViewData, listViewExtraData, bottomNavBarHeight, showItemList, }: SplitPageProps) => JSX.Element | null;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
// TODO: Update SplitPage native to have desktop UX for tablet sized screens
|
|
2
|
+
import React, { Children, useCallback, useEffect, useState } from "react";
|
|
3
|
+
import { Dimensions, View } from "react-native";
|
|
4
|
+
import { SwiperFlatList } from "react-native-swiper-flatlist";
|
|
5
|
+
import { Box } from "./Box";
|
|
6
|
+
import { FlatList } from "./FlatList";
|
|
7
|
+
import { IconButton } from "./IconButton";
|
|
8
|
+
import { Spinner } from "./Spinner";
|
|
9
|
+
import { Unifier } from "./Unifier";
|
|
10
|
+
export const SplitPage = ({ children, loading = false, color, keyboardOffset, renderListViewItem, renderListViewHeader, renderContent, onSelectionChange = () => { }, listViewData, listViewExtraData, bottomNavBarHeight, showItemList, }) => {
|
|
11
|
+
const [selectedId, setSelectedId] = useState(undefined);
|
|
12
|
+
const elementArray = Children.toArray(children);
|
|
13
|
+
const { width } = Dimensions.get("window");
|
|
14
|
+
const onItemSelect = useCallback((item) => {
|
|
15
|
+
setSelectedId(item.index);
|
|
16
|
+
onSelectionChange(item);
|
|
17
|
+
}, [onSelectionChange]);
|
|
18
|
+
const onItemDeselect = useCallback(() => {
|
|
19
|
+
setSelectedId(undefined);
|
|
20
|
+
onSelectionChange(undefined);
|
|
21
|
+
}, [onSelectionChange]);
|
|
22
|
+
useEffect(() => {
|
|
23
|
+
if (showItemList) {
|
|
24
|
+
onItemDeselect();
|
|
25
|
+
}
|
|
26
|
+
}, [showItemList, onItemDeselect]);
|
|
27
|
+
if (!children && !renderContent) {
|
|
28
|
+
console.warn("A child node is required");
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
const renderItem = (itemInfo) => {
|
|
32
|
+
return (React.createElement(Box, { onClick: () => {
|
|
33
|
+
Unifier.utils.haptic();
|
|
34
|
+
onItemSelect(itemInfo);
|
|
35
|
+
} }, renderListViewItem(itemInfo)));
|
|
36
|
+
};
|
|
37
|
+
const renderList = () => {
|
|
38
|
+
if (selectedId !== undefined) {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
return (React.createElement(View, { style: {
|
|
42
|
+
width: "100%",
|
|
43
|
+
maxWidth: "100%",
|
|
44
|
+
flexGrow: 1,
|
|
45
|
+
flexShrink: 0,
|
|
46
|
+
display: "flex",
|
|
47
|
+
flexDirection: "column",
|
|
48
|
+
paddingBottom: bottomNavBarHeight,
|
|
49
|
+
} },
|
|
50
|
+
renderListViewHeader && renderListViewHeader(),
|
|
51
|
+
React.createElement(FlatList, { data: listViewData, extraData: listViewExtraData, keyExtractor: (item) => item.id, renderItem: renderItem })));
|
|
52
|
+
};
|
|
53
|
+
const renderListContent = () => {
|
|
54
|
+
if (selectedId === undefined) {
|
|
55
|
+
return null;
|
|
56
|
+
}
|
|
57
|
+
return (React.createElement(Box, { flex: "grow", padding: 2 },
|
|
58
|
+
React.createElement(Box, { width: "100%" },
|
|
59
|
+
React.createElement(IconButton, { accessibilityLabel: "close", icon: "times", iconColor: "darkGray", onClick: () => onItemDeselect() })),
|
|
60
|
+
renderContent && renderContent(selectedId)));
|
|
61
|
+
};
|
|
62
|
+
const renderChildrenContent = () => {
|
|
63
|
+
if (selectedId === undefined) {
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
return (React.createElement(SwiperFlatList, { nestedScrollEnabled: true, renderAll: true, showPagination: elementArray.length > 1, style: { width: "100%" } }, elementArray.map((element, i) => {
|
|
67
|
+
return (React.createElement(View, { key: i, style: { width, height: elementArray.length > 1 ? "95%" : "100%", padding: 4 } }, element));
|
|
68
|
+
})));
|
|
69
|
+
};
|
|
70
|
+
const renderMainContent = renderContent ? renderListContent() : renderChildrenContent();
|
|
71
|
+
return (React.createElement(Box, { avoidKeyboard: true, color: color || "lightGray", flex: "grow", height: "100%", keyboardOffset: keyboardOffset, width: "100%" },
|
|
72
|
+
loading === true && React.createElement(Spinner, { color: Unifier.theme.darkGray, size: "md" }),
|
|
73
|
+
selectedId === undefined ? renderList() : renderMainContent));
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=SplitPage.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SplitPage.native.js","sourceRoot":"","sources":["../src/SplitPage.native.tsx"],"names":[],"mappings":"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"}
|
package/dist/Table.d.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface TableProps {
|
|
3
|
+
/**
|
|
4
|
+
* Must be instances of TableHeader, TableRow, and/or TableFooter components.
|
|
5
|
+
*/
|
|
6
|
+
children: React.ReactNode | React.ReactNode[];
|
|
7
|
+
/**
|
|
8
|
+
* Width of columns in the table. This is used to calculate the width of each column. Can be numbers for pixels or strings for percentages.
|
|
9
|
+
*/
|
|
10
|
+
columns: Array<number | string>;
|
|
11
|
+
/**
|
|
12
|
+
* Specify a border width for Table: "sm" is 1px.
|
|
13
|
+
*/
|
|
14
|
+
borderStyle?: "sm" | "none";
|
|
15
|
+
/**
|
|
16
|
+
* Use numbers for pixels: `maxHeight={100}` and strings for percentages: `maxHeight="100%"`.
|
|
17
|
+
*/
|
|
18
|
+
maxHeight?: number | string;
|
|
19
|
+
}
|
|
20
|
+
export declare function Table({ children, columns, borderStyle, maxHeight }: TableProps): React.ReactElement;
|
|
21
|
+
export {};
|
package/dist/Table.js
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React, { Children, useRef } from "react";
|
|
2
|
+
import { Box } from "./Box";
|
|
3
|
+
import { ScrollView } from "./ScrollView";
|
|
4
|
+
import { TableContextProvider } from "./tableContext";
|
|
5
|
+
export function Table({ children, columns, borderStyle, maxHeight }) {
|
|
6
|
+
const tableRef = useRef(null);
|
|
7
|
+
const arrayChildren = Children.toArray(children);
|
|
8
|
+
const [sortColumn, setSortColumn] = React.useState(undefined);
|
|
9
|
+
// Check if any of the rows below have a drawerContents prop to see if we need to render space for the caret.
|
|
10
|
+
const hasDrawerContents = arrayChildren.some((child) => {
|
|
11
|
+
var _a;
|
|
12
|
+
return (_a = child.props) === null || _a === void 0 ? void 0 : _a.drawerContents;
|
|
13
|
+
});
|
|
14
|
+
// Calculate the total width of the table. If the table has only number widths, calculate a width. Otherwise use 100%.
|
|
15
|
+
let width;
|
|
16
|
+
if (columns.every((column) => typeof column === "number")) {
|
|
17
|
+
width = columns.reduce((acc, curr) => {
|
|
18
|
+
return acc + curr;
|
|
19
|
+
}, 0);
|
|
20
|
+
if (hasDrawerContents) {
|
|
21
|
+
width = width + 30;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
width = "100%";
|
|
26
|
+
}
|
|
27
|
+
return (React.createElement(TableContextProvider, { columns: columns, hasDrawerContents: hasDrawerContents, setSortColumn: setSortColumn, sortColumn: sortColumn },
|
|
28
|
+
React.createElement(ScrollView, { horizontal: true, style: { width, maxWidth: "100%" } },
|
|
29
|
+
React.createElement(Box, Object.assign({ width: width }, (borderStyle === "sm" ? { borderStyle: "sm", rounding: 1 } : {}), { ref: tableRef, flex: "grow", maxHeight: maxHeight }), children))));
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=Table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../src/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,QAAQ,EAAgB,MAAM,EAAC,MAAM,OAAO,CAAC;AAE5D,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAsB,oBAAoB,EAAC,MAAM,gBAAgB,CAAC;AAqBzE,MAAM,UAAU,KAAK,CAAC,EAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAa;IAC3E,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC9B,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAkC,SAAS,CAAC,CAAC;IAE/F,6GAA6G;IAC7G,MAAM,iBAAiB,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;;QACrD,OAAO,MAAC,KAAsB,CAAC,KAAK,0CAAE,cAAc,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,sHAAsH;IACtH,IAAI,KAAsB,CAAC;IAC3B,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,EAAE;QACzD,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACnC,OAAQ,GAAc,GAAI,IAAe,CAAC;QAC5C,CAAC,EAAE,CAAC,CAAC,CAAC;QACN,IAAI,iBAAiB,EAAE;YACrB,KAAK,GAAI,KAAgB,GAAG,EAAE,CAAC;SAChC;KACF;SAAM;QACL,KAAK,GAAG,MAAM,CAAC;KAChB;IAED,OAAO,CACL,oBAAC,oBAAoB,IACnB,OAAO,EAAE,OAAO,EAChB,iBAAiB,EAAE,iBAAiB,EACpC,aAAa,EAAE,aAAa,EAC5B,UAAU,EAAE,UAAU;QAEtB,oBAAC,UAAU,IAAC,UAAU,QAAC,KAAK,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAC;YACrD,oBAAC,GAAG,kBACF,KAAK,EAAE,KAAK,IACR,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAClE,GAAG,EAAE,QAAQ,EACb,IAAI,EAAC,MAAM,EACX,SAAS,EAAE,SAAS,KAEnB,QAAQ,CACL,CACK,CACQ,CACxB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface TableHeaderProps {
|
|
3
|
+
/**
|
|
4
|
+
* Must be an instance of TableRow.
|
|
5
|
+
*/
|
|
6
|
+
children: React.ReactNode | React.ReactNode[];
|
|
7
|
+
/**
|
|
8
|
+
* Display `visuallyHidden` ensures the component is visually hidden but still is read by screen readers.
|
|
9
|
+
*/
|
|
10
|
+
display?: "tableHeaderGroup" | "visuallyHidden";
|
|
11
|
+
/**
|
|
12
|
+
* If true, the table header will be sticky and the table body will be scrollable. Not yet implemented.
|
|
13
|
+
*/
|
|
14
|
+
sticky?: boolean;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Use TableHeader to group the header content in Table.
|
|
18
|
+
*/
|
|
19
|
+
export declare function TableHeader({ children, display, }: TableHeaderProps): React.ReactElement;
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { Box } from "./Box";
|
|
3
|
+
import { TableRow } from "./TableRow";
|
|
4
|
+
/**
|
|
5
|
+
* Use TableHeader to group the header content in Table.
|
|
6
|
+
*/
|
|
7
|
+
export function TableHeader({ children, display = "tableHeaderGroup", }) {
|
|
8
|
+
return (React.createElement(Box, { display: display === "visuallyHidden" ? "none" : "flex" },
|
|
9
|
+
React.createElement(TableRow, { headerRow: true }, children)));
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=TableHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableHeader.js","sourceRoot":"","sources":["../src/TableHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAiBpC;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,EAC1B,QAAQ,EACR,OAAO,GAAG,kBAAkB,GACX;IACjB,OAAO,CACL,oBAAC,GAAG,IAAC,OAAO,EAAE,OAAO,KAAK,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;QAC1D,oBAAC,QAAQ,IAAC,SAAS,UAAE,QAAQ,CAAY,CACrC,CACP,CAAC;AACJ,CAAC"}
|