rn-feav-ui 1.0.4 → 1.0.6
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/components/AlertDialog/index.d.ts +11 -0
- package/dist/components/AlertDialog/index.js +54 -0
- package/dist/components/AspectRatio/index.d.ts +7 -0
- package/dist/components/AspectRatio/index.js +43 -0
- package/dist/components/Badge/index.d.ts +9 -2
- package/dist/components/Badge/index.js +24 -9
- package/dist/components/Breadcrumb/index.d.ts +11 -0
- package/dist/components/Breadcrumb/index.js +60 -0
- package/dist/components/Button/index.d.ts +10 -3
- package/dist/components/Button/index.js +63 -42
- package/dist/components/Calendar/index.d.ts +7 -0
- package/dist/components/Calendar/index.js +105 -0
- package/dist/components/Card/index.d.ts +7 -3
- package/dist/components/Card/index.js +16 -9
- package/dist/components/Carousel/index.d.ts +7 -0
- package/dist/components/Carousel/index.js +47 -0
- package/dist/components/Chart/index.d.ts +12 -0
- package/dist/components/Chart/index.js +75 -0
- package/dist/components/Checkbox/index.d.ts +9 -1
- package/dist/components/Checkbox/index.js +13 -9
- package/dist/components/Collapsible/index.d.ts +15 -0
- package/dist/components/Collapsible/index.js +73 -0
- package/dist/components/Combobox/index.d.ts +13 -0
- package/dist/components/Combobox/index.js +107 -0
- package/dist/components/Command/index.d.ts +16 -0
- package/dist/components/Command/index.js +87 -0
- package/dist/components/ContextMenu/index.d.ts +6 -0
- package/dist/components/ContextMenu/index.js +45 -0
- package/dist/components/DataTable/index.d.ts +16 -0
- package/dist/components/DataTable/index.js +72 -0
- package/dist/components/DatePicker/index.d.ts +9 -0
- package/dist/components/DatePicker/index.js +83 -0
- package/dist/components/Drawer/index.d.ts +9 -0
- package/dist/components/Drawer/index.js +70 -0
- package/dist/components/DropdownMenu/index.d.ts +15 -0
- package/dist/components/DropdownMenu/index.js +80 -0
- package/dist/components/Empty/index.d.ts +7 -0
- package/dist/components/Empty/index.js +63 -0
- package/dist/components/Field/index.d.ts +9 -0
- package/dist/components/Field/index.js +54 -0
- package/dist/components/Input/index.d.ts +5 -6
- package/dist/components/Input/index.js +26 -3
- package/dist/components/InputGroup/index.d.ts +6 -0
- package/dist/components/InputGroup/index.js +59 -0
- package/dist/components/InputOTP/index.d.ts +8 -0
- package/dist/components/InputOTP/index.js +79 -0
- package/dist/components/Kbd/index.d.ts +6 -0
- package/dist/components/Kbd/index.js +62 -0
- package/dist/components/Label/index.d.ts +8 -1
- package/dist/components/Label/index.js +8 -2
- package/dist/components/Menubar/index.d.ts +11 -0
- package/dist/components/Menubar/index.js +69 -0
- package/dist/components/NativeSelect/index.d.ts +21 -0
- package/dist/components/NativeSelect/index.js +76 -0
- package/dist/components/NavigationMenu/index.d.ts +13 -0
- package/dist/components/NavigationMenu/index.js +81 -0
- package/dist/components/Pagination/index.d.ts +9 -0
- package/dist/components/Pagination/index.js +101 -0
- package/dist/components/Popover/index.d.ts +9 -0
- package/dist/components/Popover/index.js +69 -0
- package/dist/components/RadioGroup/index.d.ts +13 -0
- package/dist/components/RadioGroup/index.js +66 -0
- package/dist/components/Resizable/index.d.ts +8 -0
- package/dist/components/Resizable/index.js +45 -0
- package/dist/components/ScrollArea/index.d.ts +6 -0
- package/dist/components/ScrollArea/index.js +65 -0
- package/dist/components/Sheet/index.d.ts +8 -0
- package/dist/components/Sheet/index.js +65 -0
- package/dist/components/Sidebar/index.d.ts +17 -0
- package/dist/components/Sidebar/index.js +81 -0
- package/dist/components/Slider/index.d.ts +10 -0
- package/dist/components/Slider/index.js +104 -0
- package/dist/components/Sonner/index.d.ts +16 -0
- package/dist/components/Sonner/index.js +97 -0
- package/dist/components/Spinner/index.d.ts +6 -0
- package/dist/components/Spinner/index.js +46 -0
- package/dist/components/Switch/index.d.ts +9 -2
- package/dist/components/Switch/index.js +10 -4
- package/dist/components/Table/index.d.ts +20 -0
- package/dist/components/Table/index.js +91 -0
- package/dist/components/Textarea/index.d.ts +5 -5
- package/dist/components/Textarea/index.js +26 -3
- package/dist/components/Toggle/index.d.ts +9 -0
- package/dist/components/Toggle/index.js +68 -0
- package/dist/components/ToggleGroup/index.d.ts +13 -0
- package/dist/components/ToggleGroup/index.js +68 -0
- package/dist/components/Tooltip/index.d.ts +9 -0
- package/dist/components/Tooltip/index.js +77 -0
- package/dist/components/Typography/index.d.ts +8 -1
- package/dist/components/Typography/index.js +2 -2
- package/dist/components/index.d.ts +36 -0
- package/dist/components/index.js +36 -0
- package/dist/examples/Showcase.js +197 -58
- package/dist/index.d.ts +2 -0
- package/dist/index.js +5 -0
- package/package.json +1 -1
- package/readme.md +615 -29
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.CarouselFEA = void 0;
|
|
37
|
+
var React = __importStar(require("react"));
|
|
38
|
+
var react_native_1 = require("react-native");
|
|
39
|
+
var CarouselFEA = function (_a) {
|
|
40
|
+
var children = _a.children, style = _a.style, pageWidth = _a.pageWidth;
|
|
41
|
+
return (React.createElement(react_native_1.ScrollView, { horizontal: true, pagingEnabled: true, showsHorizontalScrollIndicator: false, style: style, contentContainerStyle: styles.row }, React.Children.map(children, function (child, idx) { return (React.createElement(react_native_1.View, { key: idx, style: [styles.page, pageWidth ? { width: pageWidth } : undefined] }, child)); })));
|
|
42
|
+
};
|
|
43
|
+
exports.CarouselFEA = CarouselFEA;
|
|
44
|
+
var styles = react_native_1.StyleSheet.create({
|
|
45
|
+
row: { alignItems: "stretch" },
|
|
46
|
+
page: { width: 320, paddingRight: 12 },
|
|
47
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { StyleProp, ViewStyle } from "react-native";
|
|
3
|
+
export type ChartSeriesPointFEA = {
|
|
4
|
+
label: string;
|
|
5
|
+
value: number;
|
|
6
|
+
};
|
|
7
|
+
export declare const ChartFEA: ({ data, height, style, title, }: {
|
|
8
|
+
data: ChartSeriesPointFEA[];
|
|
9
|
+
height?: number;
|
|
10
|
+
style?: StyleProp<ViewStyle>;
|
|
11
|
+
title?: string;
|
|
12
|
+
}) => React.JSX.Element;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
36
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
37
|
+
if (ar || !(i in from)) {
|
|
38
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
39
|
+
ar[i] = from[i];
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
43
|
+
};
|
|
44
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
45
|
+
exports.ChartFEA = void 0;
|
|
46
|
+
var React = __importStar(require("react"));
|
|
47
|
+
var react_native_1 = require("react-native");
|
|
48
|
+
var ThemeFEAVUiProvider_1 = require("../../theme/ThemeFEAVUiProvider");
|
|
49
|
+
var ChartFEA = function (_a) {
|
|
50
|
+
var data = _a.data, _b = _a.height, height = _b === void 0 ? 140 : _b, style = _a.style, title = _a.title;
|
|
51
|
+
var theme = (0, ThemeFEAVUiProvider_1.useTheme)().theme;
|
|
52
|
+
var max = Math.max.apply(Math, __spreadArray([1], data.map(function (d) { return d.value; }), false));
|
|
53
|
+
return (React.createElement(react_native_1.View, { style: [styles.wrap, { borderColor: theme.colors.border, backgroundColor: theme.colors.card }, style] },
|
|
54
|
+
title ? React.createElement(react_native_1.Text, { style: { color: theme.colors.foreground, fontWeight: "700", marginBottom: 10 } }, title) : null,
|
|
55
|
+
React.createElement(react_native_1.View, { style: [styles.chart, { height: height }] }, data.map(function (d) {
|
|
56
|
+
var h = Math.max(2, (d.value / max) * height);
|
|
57
|
+
return (React.createElement(react_native_1.View, { key: d.label, style: styles.col },
|
|
58
|
+
React.createElement(react_native_1.View, { style: [
|
|
59
|
+
styles.bar,
|
|
60
|
+
{
|
|
61
|
+
height: h,
|
|
62
|
+
backgroundColor: theme.colors.primary,
|
|
63
|
+
},
|
|
64
|
+
] }),
|
|
65
|
+
React.createElement(react_native_1.Text, { numberOfLines: 1, style: [styles.xlab, { color: theme.colors.mutedForeground }] }, d.label)));
|
|
66
|
+
}))));
|
|
67
|
+
};
|
|
68
|
+
exports.ChartFEA = ChartFEA;
|
|
69
|
+
var styles = react_native_1.StyleSheet.create({
|
|
70
|
+
wrap: { borderWidth: 1, borderRadius: 12, padding: 12 },
|
|
71
|
+
chart: { flexDirection: "row", alignItems: "flex-end", gap: 10 },
|
|
72
|
+
col: { flex: 1, alignItems: "center", gap: 6 },
|
|
73
|
+
bar: { width: "100%", borderRadius: 10 },
|
|
74
|
+
xlab: { fontSize: 10 },
|
|
75
|
+
});
|
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
|
|
2
|
+
import { StyleProp, TextStyle, ViewStyle } from "react-native";
|
|
3
|
+
export declare const CheckboxFEA: ({ checked, onChange, label, disabled, size, style, testID, accessibilityLabel, accessibilityHint, labelStyle, }: {
|
|
3
4
|
checked: boolean;
|
|
4
5
|
onChange: (next: boolean) => void;
|
|
5
6
|
label?: string;
|
|
6
7
|
disabled?: boolean;
|
|
8
|
+
/** Box width/height in dp. */
|
|
9
|
+
size?: number;
|
|
10
|
+
style?: StyleProp<ViewStyle>;
|
|
11
|
+
testID?: string;
|
|
12
|
+
accessibilityLabel?: string;
|
|
13
|
+
accessibilityHint?: string;
|
|
14
|
+
labelStyle?: StyleProp<TextStyle>;
|
|
7
15
|
}) => React.JSX.Element;
|
|
@@ -38,18 +38,27 @@ var React = __importStar(require("react"));
|
|
|
38
38
|
var react_native_1 = require("react-native");
|
|
39
39
|
var ThemeFEAVUiProvider_1 = require("../../theme/ThemeFEAVUiProvider");
|
|
40
40
|
var CheckboxFEA = function (_a) {
|
|
41
|
-
var checked = _a.checked, onChange = _a.onChange, label = _a.label, _b = _a.disabled, disabled = _b === void 0 ? false : _b;
|
|
41
|
+
var checked = _a.checked, onChange = _a.onChange, label = _a.label, _b = _a.disabled, disabled = _b === void 0 ? false : _b, _c = _a.size, size = _c === void 0 ? 18 : _c, style = _a.style, testID = _a.testID, accessibilityLabel = _a.accessibilityLabel, accessibilityHint = _a.accessibilityHint, labelStyle = _a.labelStyle;
|
|
42
42
|
var theme = (0, ThemeFEAVUiProvider_1.useTheme)().theme;
|
|
43
|
-
return (React.createElement(react_native_1.Pressable, { onPress: function () { return !disabled && onChange(!checked); }, style: styles.row, disabled: disabled },
|
|
43
|
+
return (React.createElement(react_native_1.Pressable, { testID: testID, accessibilityLabel: accessibilityLabel !== null && accessibilityLabel !== void 0 ? accessibilityLabel : label, accessibilityHint: accessibilityHint, accessibilityRole: "checkbox", accessibilityState: { checked: checked, disabled: disabled }, onPress: function () { return !disabled && onChange(!checked); }, style: [styles.row, style], disabled: disabled },
|
|
44
44
|
React.createElement(react_native_1.View, { style: [
|
|
45
45
|
styles.box,
|
|
46
46
|
{
|
|
47
|
+
width: size,
|
|
48
|
+
height: size,
|
|
49
|
+
borderRadius: Math.max(4, size / 5),
|
|
47
50
|
borderColor: checked ? theme.colors.primary : theme.colors.input,
|
|
48
51
|
backgroundColor: checked ? theme.colors.primary : "transparent",
|
|
49
52
|
opacity: disabled ? 0.5 : 1,
|
|
50
53
|
},
|
|
51
|
-
] }, checked ? React.createElement(react_native_1.Text, { style:
|
|
52
|
-
|
|
54
|
+
] }, checked ? (React.createElement(react_native_1.Text, { style: [
|
|
55
|
+
styles.tick,
|
|
56
|
+
{ fontSize: Math.max(10, size * 0.65), lineHeight: Math.max(12, size * 0.72) },
|
|
57
|
+
] }, "\u2713")) : null),
|
|
58
|
+
label ? (React.createElement(react_native_1.Text, { style: [
|
|
59
|
+
{ color: theme.colors.foreground, opacity: disabled ? 0.6 : 1, flexShrink: 1 },
|
|
60
|
+
labelStyle,
|
|
61
|
+
] }, label)) : null));
|
|
53
62
|
};
|
|
54
63
|
exports.CheckboxFEA = CheckboxFEA;
|
|
55
64
|
var styles = react_native_1.StyleSheet.create({
|
|
@@ -59,17 +68,12 @@ var styles = react_native_1.StyleSheet.create({
|
|
|
59
68
|
gap: 8,
|
|
60
69
|
},
|
|
61
70
|
box: {
|
|
62
|
-
width: 18,
|
|
63
|
-
height: 18,
|
|
64
|
-
borderRadius: 4,
|
|
65
71
|
borderWidth: 1.5,
|
|
66
72
|
alignItems: "center",
|
|
67
73
|
justifyContent: "center",
|
|
68
74
|
},
|
|
69
75
|
tick: {
|
|
70
76
|
color: "#ffffff",
|
|
71
|
-
fontSize: 12,
|
|
72
|
-
lineHeight: 13,
|
|
73
77
|
fontWeight: "700",
|
|
74
78
|
},
|
|
75
79
|
});
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { StyleProp, ViewStyle } from "react-native";
|
|
3
|
+
export declare const CollapsibleFEA: ({ open, onOpenChange, trigger, children, style, }: {
|
|
4
|
+
open: boolean;
|
|
5
|
+
onOpenChange: (next: boolean) => void;
|
|
6
|
+
trigger?: React.ReactNode;
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
style?: StyleProp<ViewStyle>;
|
|
9
|
+
}) => React.JSX.Element;
|
|
10
|
+
export declare const CollapsibleTriggerFEA: ({ title, open, onPress, style, }: {
|
|
11
|
+
title: string;
|
|
12
|
+
open: boolean;
|
|
13
|
+
onPress: () => void;
|
|
14
|
+
style?: StyleProp<ViewStyle>;
|
|
15
|
+
}) => React.JSX.Element;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.CollapsibleTriggerFEA = exports.CollapsibleFEA = void 0;
|
|
37
|
+
var React = __importStar(require("react"));
|
|
38
|
+
var react_native_1 = require("react-native");
|
|
39
|
+
var ThemeFEAVUiProvider_1 = require("../../theme/ThemeFEAVUiProvider");
|
|
40
|
+
var CollapsibleFEA = function (_a) {
|
|
41
|
+
var open = _a.open, onOpenChange = _a.onOpenChange, trigger = _a.trigger, children = _a.children, style = _a.style;
|
|
42
|
+
return (React.createElement(react_native_1.View, { style: style },
|
|
43
|
+
trigger ? (React.createElement(react_native_1.Pressable, { onPress: function () { return onOpenChange(!open); } }, trigger)) : null,
|
|
44
|
+
open ? React.createElement(react_native_1.View, { style: styles.content }, children) : null));
|
|
45
|
+
};
|
|
46
|
+
exports.CollapsibleFEA = CollapsibleFEA;
|
|
47
|
+
var CollapsibleTriggerFEA = function (_a) {
|
|
48
|
+
var title = _a.title, open = _a.open, onPress = _a.onPress, style = _a.style;
|
|
49
|
+
var theme = (0, ThemeFEAVUiProvider_1.useTheme)().theme;
|
|
50
|
+
return (React.createElement(react_native_1.Pressable, { onPress: onPress, style: function (_a) {
|
|
51
|
+
var pressed = _a.pressed;
|
|
52
|
+
return [
|
|
53
|
+
styles.trigger,
|
|
54
|
+
{ borderColor: theme.colors.border, backgroundColor: pressed ? theme.colors.muted : "transparent" },
|
|
55
|
+
style,
|
|
56
|
+
];
|
|
57
|
+
} },
|
|
58
|
+
React.createElement(react_native_1.Text, { style: { color: theme.colors.foreground, fontWeight: "700" } }, title),
|
|
59
|
+
React.createElement(react_native_1.Text, { style: { color: theme.colors.mutedForeground, fontWeight: "700" } }, open ? "−" : "+")));
|
|
60
|
+
};
|
|
61
|
+
exports.CollapsibleTriggerFEA = CollapsibleTriggerFEA;
|
|
62
|
+
var styles = react_native_1.StyleSheet.create({
|
|
63
|
+
trigger: {
|
|
64
|
+
flexDirection: "row",
|
|
65
|
+
justifyContent: "space-between",
|
|
66
|
+
alignItems: "center",
|
|
67
|
+
borderWidth: 1,
|
|
68
|
+
borderRadius: 12,
|
|
69
|
+
paddingVertical: 10,
|
|
70
|
+
paddingHorizontal: 12,
|
|
71
|
+
},
|
|
72
|
+
content: { paddingTop: 10 },
|
|
73
|
+
});
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { StyleProp, ViewStyle } from "react-native";
|
|
3
|
+
export type ComboboxOptionFEA = {
|
|
4
|
+
label: string;
|
|
5
|
+
value: string;
|
|
6
|
+
};
|
|
7
|
+
export declare const ComboboxFEA: ({ value, onValueChange, options, placeholder, style, }: {
|
|
8
|
+
value?: string;
|
|
9
|
+
onValueChange: (next: string) => void;
|
|
10
|
+
options: ComboboxOptionFEA[];
|
|
11
|
+
placeholder?: string;
|
|
12
|
+
style?: StyleProp<ViewStyle>;
|
|
13
|
+
}) => React.JSX.Element;
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.ComboboxFEA = void 0;
|
|
37
|
+
var React = __importStar(require("react"));
|
|
38
|
+
var react_native_1 = require("react-native");
|
|
39
|
+
var ThemeFEAVUiProvider_1 = require("../../theme/ThemeFEAVUiProvider");
|
|
40
|
+
var Popover_1 = require("../Popover");
|
|
41
|
+
var Separator_1 = require("../Separator");
|
|
42
|
+
var ComboboxFEA = function (_a) {
|
|
43
|
+
var _b;
|
|
44
|
+
var value = _a.value, onValueChange = _a.onValueChange, options = _a.options, _c = _a.placeholder, placeholder = _c === void 0 ? "Select..." : _c, style = _a.style;
|
|
45
|
+
var theme = (0, ThemeFEAVUiProvider_1.useTheme)().theme;
|
|
46
|
+
var _d = React.useState(false), open = _d[0], setOpen = _d[1];
|
|
47
|
+
var _e = React.useState(""), q = _e[0], setQ = _e[1];
|
|
48
|
+
var selected = options.find(function (o) { return o.value === value; });
|
|
49
|
+
var filtered = options.filter(function (o) { return o.label.toLowerCase().includes(q.trim().toLowerCase()); });
|
|
50
|
+
return (React.createElement(Popover_1.PopoverFEA, { open: open, onOpenChange: function (next) {
|
|
51
|
+
setOpen(next);
|
|
52
|
+
if (!next)
|
|
53
|
+
setQ("");
|
|
54
|
+
}, trigger: React.createElement(react_native_1.Pressable, { style: [
|
|
55
|
+
styles.trigger,
|
|
56
|
+
{ borderColor: theme.colors.input, backgroundColor: theme.colors.background },
|
|
57
|
+
style,
|
|
58
|
+
] },
|
|
59
|
+
React.createElement(react_native_1.Text, { style: { color: selected ? theme.colors.foreground : theme.colors.mutedForeground, fontWeight: "500" } }, (_b = selected === null || selected === void 0 ? void 0 : selected.label) !== null && _b !== void 0 ? _b : placeholder),
|
|
60
|
+
React.createElement(react_native_1.Text, { style: { color: theme.colors.mutedForeground } }, "\u2315")), contentStyle: { padding: 0 } },
|
|
61
|
+
React.createElement(react_native_1.View, { style: { padding: 12 } },
|
|
62
|
+
React.createElement(react_native_1.TextInput, { value: q, onChangeText: setQ, placeholder: "Search...", placeholderTextColor: theme.colors.mutedForeground, style: [
|
|
63
|
+
styles.search,
|
|
64
|
+
{
|
|
65
|
+
borderColor: theme.colors.input,
|
|
66
|
+
color: theme.colors.foreground,
|
|
67
|
+
backgroundColor: theme.colors.background,
|
|
68
|
+
},
|
|
69
|
+
] })),
|
|
70
|
+
React.createElement(Separator_1.SeparatorFEA, null),
|
|
71
|
+
React.createElement(react_native_1.View, { style: { maxHeight: 320 } }, filtered.length === 0 ? (React.createElement(react_native_1.View, { style: { padding: 12 } },
|
|
72
|
+
React.createElement(react_native_1.Text, { style: { color: theme.colors.mutedForeground } }, "No results"))) : (filtered.map(function (o, idx) { return (React.createElement(React.Fragment, { key: o.value },
|
|
73
|
+
React.createElement(react_native_1.Pressable, { onPress: function () {
|
|
74
|
+
onValueChange(o.value);
|
|
75
|
+
setOpen(false);
|
|
76
|
+
}, style: function (_a) {
|
|
77
|
+
var pressed = _a.pressed;
|
|
78
|
+
return [
|
|
79
|
+
styles.item,
|
|
80
|
+
{ backgroundColor: pressed ? theme.colors.muted : "transparent" },
|
|
81
|
+
];
|
|
82
|
+
} },
|
|
83
|
+
React.createElement(react_native_1.Text, { style: { color: theme.colors.foreground, fontWeight: "500" } }, o.label)),
|
|
84
|
+
idx < filtered.length - 1 ? React.createElement(Separator_1.SeparatorFEA, { style: { opacity: 0.6 } }) : null)); })))));
|
|
85
|
+
};
|
|
86
|
+
exports.ComboboxFEA = ComboboxFEA;
|
|
87
|
+
var styles = react_native_1.StyleSheet.create({
|
|
88
|
+
trigger: {
|
|
89
|
+
borderWidth: 1,
|
|
90
|
+
borderRadius: 10,
|
|
91
|
+
paddingVertical: 10,
|
|
92
|
+
paddingHorizontal: 12,
|
|
93
|
+
flexDirection: "row",
|
|
94
|
+
alignItems: "center",
|
|
95
|
+
justifyContent: "space-between",
|
|
96
|
+
},
|
|
97
|
+
search: {
|
|
98
|
+
borderWidth: 1,
|
|
99
|
+
borderRadius: 10,
|
|
100
|
+
paddingHorizontal: 12,
|
|
101
|
+
paddingVertical: 10,
|
|
102
|
+
},
|
|
103
|
+
item: {
|
|
104
|
+
paddingHorizontal: 12,
|
|
105
|
+
paddingVertical: 10,
|
|
106
|
+
},
|
|
107
|
+
});
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { StyleProp, ViewStyle } from "react-native";
|
|
3
|
+
export type CommandItemFEA = {
|
|
4
|
+
label: string;
|
|
5
|
+
value: string;
|
|
6
|
+
keywords?: string[];
|
|
7
|
+
onSelect?: () => void;
|
|
8
|
+
};
|
|
9
|
+
export declare const CommandFEA: ({ open, onOpenChange, trigger, items, placeholder, style, }: {
|
|
10
|
+
open: boolean;
|
|
11
|
+
onOpenChange: (next: boolean) => void;
|
|
12
|
+
trigger: React.ReactNode;
|
|
13
|
+
items: CommandItemFEA[];
|
|
14
|
+
placeholder?: string;
|
|
15
|
+
style?: StyleProp<ViewStyle>;
|
|
16
|
+
}) => React.JSX.Element;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.CommandFEA = void 0;
|
|
37
|
+
var React = __importStar(require("react"));
|
|
38
|
+
var react_native_1 = require("react-native");
|
|
39
|
+
var Popover_1 = require("../Popover");
|
|
40
|
+
var Separator_1 = require("../Separator");
|
|
41
|
+
var ThemeFEAVUiProvider_1 = require("../../theme/ThemeFEAVUiProvider");
|
|
42
|
+
var CommandFEA = function (_a) {
|
|
43
|
+
var open = _a.open, onOpenChange = _a.onOpenChange, trigger = _a.trigger, items = _a.items, _b = _a.placeholder, placeholder = _b === void 0 ? "Type a command or search..." : _b, style = _a.style;
|
|
44
|
+
var theme = (0, ThemeFEAVUiProvider_1.useTheme)().theme;
|
|
45
|
+
var _c = React.useState(""), q = _c[0], setQ = _c[1];
|
|
46
|
+
var filtered = items.filter(function (it) {
|
|
47
|
+
var _a;
|
|
48
|
+
var hay = "".concat(it.label, " ").concat(((_a = it.keywords) !== null && _a !== void 0 ? _a : []).join(" ")).toLowerCase();
|
|
49
|
+
return hay.includes(q.trim().toLowerCase());
|
|
50
|
+
});
|
|
51
|
+
return (React.createElement(Popover_1.PopoverFEA, { open: open, onOpenChange: function (next) {
|
|
52
|
+
onOpenChange(next);
|
|
53
|
+
if (!next)
|
|
54
|
+
setQ("");
|
|
55
|
+
}, trigger: trigger, contentStyle: [{ padding: 0 }, style] },
|
|
56
|
+
React.createElement(react_native_1.View, { style: { padding: 12 } },
|
|
57
|
+
React.createElement(react_native_1.TextInput, { value: q, onChangeText: setQ, placeholder: placeholder, placeholderTextColor: theme.colors.mutedForeground, style: [
|
|
58
|
+
styles.input,
|
|
59
|
+
{ borderColor: theme.colors.input, color: theme.colors.foreground, backgroundColor: theme.colors.background },
|
|
60
|
+
] })),
|
|
61
|
+
React.createElement(Separator_1.SeparatorFEA, null),
|
|
62
|
+
React.createElement(react_native_1.View, { style: { maxHeight: 320 } }, filtered.length === 0 ? (React.createElement(react_native_1.View, { style: { padding: 12 } },
|
|
63
|
+
React.createElement(react_native_1.Text, { style: { color: theme.colors.mutedForeground } }, "No results"))) : (filtered.map(function (it, idx) { return (React.createElement(React.Fragment, { key: it.value },
|
|
64
|
+
React.createElement(react_native_1.Pressable, { onPress: function () {
|
|
65
|
+
var _a;
|
|
66
|
+
(_a = it.onSelect) === null || _a === void 0 ? void 0 : _a.call(it);
|
|
67
|
+
onOpenChange(false);
|
|
68
|
+
}, style: function (_a) {
|
|
69
|
+
var pressed = _a.pressed;
|
|
70
|
+
return [
|
|
71
|
+
styles.item,
|
|
72
|
+
{ backgroundColor: pressed ? theme.colors.muted : "transparent" },
|
|
73
|
+
];
|
|
74
|
+
} },
|
|
75
|
+
React.createElement(react_native_1.Text, { style: { color: theme.colors.foreground, fontWeight: "600" } }, it.label)),
|
|
76
|
+
idx < filtered.length - 1 ? React.createElement(Separator_1.SeparatorFEA, { style: { opacity: 0.6 } }) : null)); })))));
|
|
77
|
+
};
|
|
78
|
+
exports.CommandFEA = CommandFEA;
|
|
79
|
+
var styles = react_native_1.StyleSheet.create({
|
|
80
|
+
input: {
|
|
81
|
+
borderWidth: 1,
|
|
82
|
+
borderRadius: 10,
|
|
83
|
+
paddingHorizontal: 12,
|
|
84
|
+
paddingVertical: 10,
|
|
85
|
+
},
|
|
86
|
+
item: { paddingHorizontal: 12, paddingVertical: 10 },
|
|
87
|
+
});
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.ContextMenuFEA = void 0;
|
|
37
|
+
var React = __importStar(require("react"));
|
|
38
|
+
var react_native_1 = require("react-native");
|
|
39
|
+
var DropdownMenu_1 = require("../DropdownMenu");
|
|
40
|
+
var ContextMenuFEA = function (_a) {
|
|
41
|
+
var items = _a.items, children = _a.children;
|
|
42
|
+
var _b = React.useState(false), open = _b[0], setOpen = _b[1];
|
|
43
|
+
return (React.createElement(DropdownMenu_1.DropdownMenuFEA, { open: open, onOpenChange: setOpen, items: items, trigger: React.createElement(react_native_1.Pressable, { onLongPress: function () { return setOpen(true); }, delayLongPress: 250 }, children), style: { maxWidth: 360 } }));
|
|
44
|
+
};
|
|
45
|
+
exports.ContextMenuFEA = ContextMenuFEA;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { StyleProp, ViewStyle } from "react-native";
|
|
3
|
+
export type DataTableColumnFEA<Row> = {
|
|
4
|
+
key: string;
|
|
5
|
+
header: string;
|
|
6
|
+
flex?: number;
|
|
7
|
+
align?: "left" | "center" | "right";
|
|
8
|
+
render?: (row: Row) => React.ReactNode;
|
|
9
|
+
};
|
|
10
|
+
export declare const DataTableFEA: <Row>({ columns, data, style, headerStyle, rowKey, }: {
|
|
11
|
+
columns: DataTableColumnFEA<Row>[];
|
|
12
|
+
data: Row[];
|
|
13
|
+
style?: StyleProp<ViewStyle>;
|
|
14
|
+
headerStyle?: StyleProp<ViewStyle>;
|
|
15
|
+
rowKey?: (row: Row, index: number) => string;
|
|
16
|
+
}) => React.JSX.Element;
|