@idealyst/mcp-server 1.2.24 → 1.2.26
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/index.cjs +22366 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +1 -0
- package/dist/index.d.ts +0 -2
- package/dist/index.js +22186 -1034
- package/dist/index.js.map +1 -1
- package/package.json +17 -7
- package/dist/data/cli-commands.d.ts +0 -2
- package/dist/data/cli-commands.d.ts.map +0 -1
- package/dist/data/cli-commands.js +0 -100
- package/dist/data/cli-commands.js.map +0 -1
- package/dist/data/components/Accordion.d.ts +0 -15
- package/dist/data/components/Accordion.d.ts.map +0 -1
- package/dist/data/components/Accordion.js +0 -113
- package/dist/data/components/Accordion.js.map +0 -1
- package/dist/data/components/ActivityIndicator.d.ts +0 -15
- package/dist/data/components/ActivityIndicator.d.ts.map +0 -1
- package/dist/data/components/ActivityIndicator.js +0 -80
- package/dist/data/components/ActivityIndicator.js.map +0 -1
- package/dist/data/components/Alert.d.ts +0 -15
- package/dist/data/components/Alert.d.ts.map +0 -1
- package/dist/data/components/Alert.js +0 -130
- package/dist/data/components/Alert.js.map +0 -1
- package/dist/data/components/Avatar.d.ts +0 -15
- package/dist/data/components/Avatar.d.ts.map +0 -1
- package/dist/data/components/Avatar.js +0 -91
- package/dist/data/components/Avatar.js.map +0 -1
- package/dist/data/components/Badge.d.ts +0 -15
- package/dist/data/components/Badge.d.ts.map +0 -1
- package/dist/data/components/Badge.js +0 -64
- package/dist/data/components/Badge.js.map +0 -1
- package/dist/data/components/Breadcrumb.d.ts +0 -15
- package/dist/data/components/Breadcrumb.d.ts.map +0 -1
- package/dist/data/components/Breadcrumb.js +0 -92
- package/dist/data/components/Breadcrumb.js.map +0 -1
- package/dist/data/components/Button.d.ts +0 -16
- package/dist/data/components/Button.d.ts.map +0 -1
- package/dist/data/components/Button.js +0 -118
- package/dist/data/components/Button.js.map +0 -1
- package/dist/data/components/Card.d.ts +0 -15
- package/dist/data/components/Card.d.ts.map +0 -1
- package/dist/data/components/Card.js +0 -75
- package/dist/data/components/Card.js.map +0 -1
- package/dist/data/components/Checkbox.d.ts +0 -15
- package/dist/data/components/Checkbox.d.ts.map +0 -1
- package/dist/data/components/Checkbox.js +0 -118
- package/dist/data/components/Checkbox.js.map +0 -1
- package/dist/data/components/Chip.d.ts +0 -15
- package/dist/data/components/Chip.d.ts.map +0 -1
- package/dist/data/components/Chip.js +0 -94
- package/dist/data/components/Chip.js.map +0 -1
- package/dist/data/components/Dialog.d.ts +0 -15
- package/dist/data/components/Dialog.d.ts.map +0 -1
- package/dist/data/components/Dialog.js +0 -137
- package/dist/data/components/Dialog.js.map +0 -1
- package/dist/data/components/Divider.d.ts +0 -15
- package/dist/data/components/Divider.d.ts.map +0 -1
- package/dist/data/components/Divider.js +0 -68
- package/dist/data/components/Divider.js.map +0 -1
- package/dist/data/components/Icon.d.ts +0 -15
- package/dist/data/components/Icon.d.ts.map +0 -1
- package/dist/data/components/Icon.js +0 -68
- package/dist/data/components/Icon.js.map +0 -1
- package/dist/data/components/Image.d.ts +0 -15
- package/dist/data/components/Image.d.ts.map +0 -1
- package/dist/data/components/Image.js +0 -119
- package/dist/data/components/Image.js.map +0 -1
- package/dist/data/components/Input.d.ts +0 -15
- package/dist/data/components/Input.d.ts.map +0 -1
- package/dist/data/components/Input.js +0 -155
- package/dist/data/components/Input.js.map +0 -1
- package/dist/data/components/Link.d.ts +0 -15
- package/dist/data/components/Link.d.ts.map +0 -1
- package/dist/data/components/Link.js +0 -142
- package/dist/data/components/Link.js.map +0 -1
- package/dist/data/components/List.d.ts +0 -15
- package/dist/data/components/List.d.ts.map +0 -1
- package/dist/data/components/List.js +0 -113
- package/dist/data/components/List.js.map +0 -1
- package/dist/data/components/Menu.d.ts +0 -15
- package/dist/data/components/Menu.d.ts.map +0 -1
- package/dist/data/components/Menu.js +0 -123
- package/dist/data/components/Menu.js.map +0 -1
- package/dist/data/components/Popover.d.ts +0 -15
- package/dist/data/components/Popover.d.ts.map +0 -1
- package/dist/data/components/Popover.js +0 -157
- package/dist/data/components/Popover.js.map +0 -1
- package/dist/data/components/Pressable.d.ts +0 -15
- package/dist/data/components/Pressable.d.ts.map +0 -1
- package/dist/data/components/Pressable.js +0 -125
- package/dist/data/components/Pressable.js.map +0 -1
- package/dist/data/components/Progress.d.ts +0 -15
- package/dist/data/components/Progress.d.ts.map +0 -1
- package/dist/data/components/Progress.js +0 -93
- package/dist/data/components/Progress.js.map +0 -1
- package/dist/data/components/RadioButton.d.ts +0 -15
- package/dist/data/components/RadioButton.d.ts.map +0 -1
- package/dist/data/components/RadioButton.js +0 -131
- package/dist/data/components/RadioButton.js.map +0 -1
- package/dist/data/components/SVGImage.d.ts +0 -15
- package/dist/data/components/SVGImage.d.ts.map +0 -1
- package/dist/data/components/SVGImage.js +0 -112
- package/dist/data/components/SVGImage.js.map +0 -1
- package/dist/data/components/Screen.d.ts +0 -15
- package/dist/data/components/Screen.d.ts.map +0 -1
- package/dist/data/components/Screen.js +0 -109
- package/dist/data/components/Screen.js.map +0 -1
- package/dist/data/components/Select.d.ts +0 -15
- package/dist/data/components/Select.d.ts.map +0 -1
- package/dist/data/components/Select.js +0 -141
- package/dist/data/components/Select.js.map +0 -1
- package/dist/data/components/Skeleton.d.ts +0 -15
- package/dist/data/components/Skeleton.d.ts.map +0 -1
- package/dist/data/components/Skeleton.js +0 -100
- package/dist/data/components/Skeleton.js.map +0 -1
- package/dist/data/components/Slider.d.ts +0 -15
- package/dist/data/components/Slider.d.ts.map +0 -1
- package/dist/data/components/Slider.js +0 -151
- package/dist/data/components/Slider.js.map +0 -1
- package/dist/data/components/Switch.d.ts +0 -15
- package/dist/data/components/Switch.d.ts.map +0 -1
- package/dist/data/components/Switch.js +0 -128
- package/dist/data/components/Switch.js.map +0 -1
- package/dist/data/components/TabBar.d.ts +0 -17
- package/dist/data/components/TabBar.d.ts.map +0 -1
- package/dist/data/components/TabBar.js +0 -244
- package/dist/data/components/TabBar.js.map +0 -1
- package/dist/data/components/Table.d.ts +0 -15
- package/dist/data/components/Table.d.ts.map +0 -1
- package/dist/data/components/Table.js +0 -159
- package/dist/data/components/Table.js.map +0 -1
- package/dist/data/components/Tabs.d.ts +0 -15
- package/dist/data/components/Tabs.d.ts.map +0 -1
- package/dist/data/components/Tabs.js +0 -150
- package/dist/data/components/Tabs.js.map +0 -1
- package/dist/data/components/Text.d.ts +0 -15
- package/dist/data/components/Text.d.ts.map +0 -1
- package/dist/data/components/Text.js +0 -97
- package/dist/data/components/Text.js.map +0 -1
- package/dist/data/components/TextArea.d.ts +0 -15
- package/dist/data/components/TextArea.d.ts.map +0 -1
- package/dist/data/components/TextArea.js +0 -156
- package/dist/data/components/TextArea.js.map +0 -1
- package/dist/data/components/Tooltip.d.ts +0 -15
- package/dist/data/components/Tooltip.d.ts.map +0 -1
- package/dist/data/components/Tooltip.js +0 -103
- package/dist/data/components/Tooltip.js.map +0 -1
- package/dist/data/components/Video.d.ts +0 -15
- package/dist/data/components/Video.d.ts.map +0 -1
- package/dist/data/components/Video.js +0 -166
- package/dist/data/components/Video.js.map +0 -1
- package/dist/data/components/View.d.ts +0 -15
- package/dist/data/components/View.d.ts.map +0 -1
- package/dist/data/components/View.js +0 -127
- package/dist/data/components/View.js.map +0 -1
- package/dist/data/components/index.d.ts +0 -38
- package/dist/data/components/index.d.ts.map +0 -1
- package/dist/data/components/index.js +0 -113
- package/dist/data/components/index.js.map +0 -1
- package/dist/data/framework-guides.d.ts +0 -2
- package/dist/data/framework-guides.d.ts.map +0 -1
- package/dist/data/framework-guides.js +0 -1730
- package/dist/data/framework-guides.js.map +0 -1
- package/dist/data/icon-guide.d.ts +0 -2
- package/dist/data/icon-guide.d.ts.map +0 -1
- package/dist/data/icon-guide.js +0 -285
- package/dist/data/icon-guide.js.map +0 -1
- package/dist/data/icons.json +0 -7452
- package/dist/data/navigation-guides.d.ts +0 -2
- package/dist/data/navigation-guides.d.ts.map +0 -1
- package/dist/data/navigation-guides.js +0 -2144
- package/dist/data/navigation-guides.js.map +0 -1
- package/dist/data/packages.d.ts +0 -39
- package/dist/data/packages.d.ts.map +0 -1
- package/dist/data/packages.js +0 -550
- package/dist/data/packages.js.map +0 -1
- package/dist/data/recipes.d.ts +0 -36
- package/dist/data/recipes.d.ts.map +0 -1
- package/dist/data/recipes.js +0 -2945
- package/dist/data/recipes.js.map +0 -1
- package/dist/data/storage-guides.d.ts +0 -2
- package/dist/data/storage-guides.d.ts.map +0 -1
- package/dist/data/storage-guides.js +0 -418
- package/dist/data/storage-guides.js.map +0 -1
- package/dist/data/translate-guides.d.ts +0 -2
- package/dist/data/translate-guides.d.ts.map +0 -1
- package/dist/data/translate-guides.js +0 -1030
- package/dist/data/translate-guides.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/tools/get-types.d.ts +0 -37
- package/dist/tools/get-types.d.ts.map +0 -1
- package/dist/tools/get-types.js +0 -148
- package/dist/tools/get-types.js.map +0 -1
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
export const SVGImage = {
|
|
2
|
-
category: "media",
|
|
3
|
-
description: "SVG image component with color, size, and intent support",
|
|
4
|
-
props: `
|
|
5
|
-
- \`source\`: string | { uri: string } | React.FC<SvgProps> - SVG source (local file, URL, or component)
|
|
6
|
-
- \`width\`: number | string - Image width
|
|
7
|
-
- \`height\`: number | string - Image height
|
|
8
|
-
- \`size\`: number | string - Sets both width and height
|
|
9
|
-
- \`color\`: string - Custom color override
|
|
10
|
-
- \`intent\`: IntentNames - Theme intent color
|
|
11
|
-
- \`resizeMode\`: 'contain' | 'cover' | 'stretch' - How SVG fits container
|
|
12
|
-
- \`style\`: ViewProps - Additional styles
|
|
13
|
-
`,
|
|
14
|
-
features: [
|
|
15
|
-
"Multiple source types (file, URL, component)",
|
|
16
|
-
"Size and dimension control",
|
|
17
|
-
"Color customization",
|
|
18
|
-
"Theme intent colors",
|
|
19
|
-
"Resize modes",
|
|
20
|
-
"Cross-platform support",
|
|
21
|
-
],
|
|
22
|
-
bestPractices: [
|
|
23
|
-
"Use local SVG files for icons and logos",
|
|
24
|
-
"Use remote URLs for dynamic SVGs",
|
|
25
|
-
"Set explicit size for consistent rendering",
|
|
26
|
-
"Use intent colors for theme consistency",
|
|
27
|
-
"Prefer 'contain' resizeMode to preserve aspect ratio",
|
|
28
|
-
"Optimize SVG files for web performance",
|
|
29
|
-
],
|
|
30
|
-
usage: `
|
|
31
|
-
import { SVGImage } from '@idealyst/components';
|
|
32
|
-
import LogoIcon from './assets/logo.svg';
|
|
33
|
-
|
|
34
|
-
// Local SVG file
|
|
35
|
-
<SVGImage source={LogoIcon} size={48} intent="primary" />
|
|
36
|
-
|
|
37
|
-
// Remote SVG
|
|
38
|
-
<SVGImage
|
|
39
|
-
source={{ uri: 'https://cdn.example.com/icon.svg' }}
|
|
40
|
-
width={32}
|
|
41
|
-
height={32}
|
|
42
|
-
color="#FF0000"
|
|
43
|
-
/>
|
|
44
|
-
`,
|
|
45
|
-
examples: {
|
|
46
|
-
basic: `import { SVGImage } from '@idealyst/components';
|
|
47
|
-
import Icon from './icon.svg';
|
|
48
|
-
|
|
49
|
-
<SVGImage source={Icon} size={24} />`,
|
|
50
|
-
variants: `import { SVGImage, View } from '@idealyst/components';
|
|
51
|
-
import Logo from './logo.svg';
|
|
52
|
-
|
|
53
|
-
<View style={{ flexDirection: 'row', gap: 16, alignItems: 'center' }}>
|
|
54
|
-
<SVGImage source={Logo} size={24} />
|
|
55
|
-
<SVGImage source={Logo} size={32} />
|
|
56
|
-
<SVGImage source={Logo} size={48} />
|
|
57
|
-
<SVGImage source={Logo} size={64} />
|
|
58
|
-
</View>`,
|
|
59
|
-
"with-icons": `import { SVGImage, View, Text } from '@idealyst/components';
|
|
60
|
-
import ReactLogo from './react-logo.svg';
|
|
61
|
-
|
|
62
|
-
<View style={{ flexDirection: 'row', alignItems: 'center', gap: 12 }}>
|
|
63
|
-
<SVGImage source={ReactLogo} size={32} color="#61dafb" />
|
|
64
|
-
<View spacing="xs">
|
|
65
|
-
<Text weight="bold">React Application</Text>
|
|
66
|
-
<Text size="sm">Built with React & React Native</Text>
|
|
67
|
-
</View>
|
|
68
|
-
</View>`,
|
|
69
|
-
interactive: `import { SVGImage, View, Button, Text } from '@idealyst/components';
|
|
70
|
-
import { useState } from 'react';
|
|
71
|
-
import AppIcon from './app-icon.svg';
|
|
72
|
-
|
|
73
|
-
function Example() {
|
|
74
|
-
const [size, setSize] = useState(48);
|
|
75
|
-
const [intent, setIntent] = useState('primary');
|
|
76
|
-
|
|
77
|
-
const intents = ['primary', 'neutral', 'success', 'error', 'warning'];
|
|
78
|
-
|
|
79
|
-
return (
|
|
80
|
-
<View spacing="md" style={{ alignItems: 'center' }}>
|
|
81
|
-
<SVGImage source={AppIcon} size={size} intent={intent} />
|
|
82
|
-
|
|
83
|
-
<View style={{ flexDirection: 'row', gap: 8 }}>
|
|
84
|
-
<Button size="sm" onPress={() => setSize(Math.max(24, size - 12))}>
|
|
85
|
-
Smaller
|
|
86
|
-
</Button>
|
|
87
|
-
<Button size="sm" onPress={() => setSize(Math.min(96, size + 12))}>
|
|
88
|
-
Larger
|
|
89
|
-
</Button>
|
|
90
|
-
</View>
|
|
91
|
-
|
|
92
|
-
<View spacing="xs">
|
|
93
|
-
<Text size="sm">Intent:</Text>
|
|
94
|
-
<View style={{ flexDirection: 'row', gap: 8, flexWrap: 'wrap' }}>
|
|
95
|
-
{intents.map((i) => (
|
|
96
|
-
<Button
|
|
97
|
-
key={i}
|
|
98
|
-
size="sm"
|
|
99
|
-
variant={intent === i ? 'contained' : 'outlined'}
|
|
100
|
-
onPress={() => setIntent(i)}
|
|
101
|
-
>
|
|
102
|
-
{i}
|
|
103
|
-
</Button>
|
|
104
|
-
))}
|
|
105
|
-
</View>
|
|
106
|
-
</View>
|
|
107
|
-
</View>
|
|
108
|
-
);
|
|
109
|
-
}`,
|
|
110
|
-
},
|
|
111
|
-
};
|
|
112
|
-
//# sourceMappingURL=SVGImage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SVGImage.js","sourceRoot":"","sources":["../../../src/data/components/SVGImage.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,QAAQ,EAAE,OAAO;IACjB,WAAW,EAAE,0DAA0D;IACvE,KAAK,EAAE;;;;;;;;;CASR;IACC,QAAQ,EAAE;QACR,8CAA8C;QAC9C,4BAA4B;QAC5B,qBAAqB;QACrB,qBAAqB;QACrB,cAAc;QACd,wBAAwB;KACzB;IACD,aAAa,EAAE;QACb,yCAAyC;QACzC,kCAAkC;QAClC,4CAA4C;QAC5C,yCAAyC;QACzC,sDAAsD;QACtD,wCAAwC;KACzC;IACD,KAAK,EAAE;;;;;;;;;;;;;;CAcR;IACC,QAAQ,EAAE;QACR,KAAK,EAAE;;;qCAG0B;QAEjC,QAAQ,EAAE;;;;;;;;QAQN;QAEJ,YAAY,EAAE;;;;;;;;;QASV;QAEJ,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwCf;KACC;CACF,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export declare const Screen: {
|
|
2
|
-
category: string;
|
|
3
|
-
description: string;
|
|
4
|
-
props: string;
|
|
5
|
-
features: string[];
|
|
6
|
-
bestPractices: string[];
|
|
7
|
-
usage: string;
|
|
8
|
-
examples: {
|
|
9
|
-
basic: string;
|
|
10
|
-
variants: string;
|
|
11
|
-
"with-icons": string;
|
|
12
|
-
interactive: string;
|
|
13
|
-
};
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=Screen.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Screen.d.ts","sourceRoot":"","sources":["../../../src/data/components/Screen.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;;;;;;;;;;;CA8GlB,CAAC"}
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
export const Screen = {
|
|
2
|
-
category: "layout",
|
|
3
|
-
description: "Full-screen container component with spacing variants, background variants, and safe area support",
|
|
4
|
-
props: `
|
|
5
|
-
- \`children\`: React.ReactNode - The content to display inside the screen
|
|
6
|
-
- \`gap\`: Size - Space between children ('xs' | 'sm' | 'md' | 'lg' | 'xl')
|
|
7
|
-
- \`padding\`: Size - Padding on all sides
|
|
8
|
-
- \`paddingVertical\`: Size - Top and bottom padding
|
|
9
|
-
- \`paddingHorizontal\`: Size - Left and right padding
|
|
10
|
-
- \`margin\`: Size - Margin on all sides
|
|
11
|
-
- \`marginVertical\`: Size - Top and bottom margin
|
|
12
|
-
- \`marginHorizontal\`: Size - Left and right margin
|
|
13
|
-
- \`background\`: Surface | 'transparent' - Background variant - controls the background color
|
|
14
|
-
- \`safeArea\`: boolean - Safe area padding for mobile devices
|
|
15
|
-
- \`top\`: number - Content inset padding for scrollable content (mobile only)
|
|
16
|
-
- \`bottom\`: number - Bottom content inset padding for scrollable content
|
|
17
|
-
- \`left\`: number - Left content inset padding for scrollable content
|
|
18
|
-
- \`right\`: number - Right content inset padding for scrollable content
|
|
19
|
-
- \`scrollable\`: boolean - Whether the screen content is scrollable
|
|
20
|
-
`,
|
|
21
|
-
features: [
|
|
22
|
-
"Four background color variants",
|
|
23
|
-
"Gap variant for spacing between children",
|
|
24
|
-
"Padding variants (uniform and directional)",
|
|
25
|
-
"Margin variants (uniform and directional)",
|
|
26
|
-
"Safe area support for notches/home indicators",
|
|
27
|
-
"Optional scrollable content",
|
|
28
|
-
"Full-screen container",
|
|
29
|
-
"Cross-platform support",
|
|
30
|
-
],
|
|
31
|
-
bestPractices: [
|
|
32
|
-
"Use as root container for app screens",
|
|
33
|
-
"Enable safeArea for mobile apps",
|
|
34
|
-
"Use 'primary' background for main content",
|
|
35
|
-
"Use 'inverse' background for dark mode or special screens",
|
|
36
|
-
"Combine with View for internal spacing",
|
|
37
|
-
"Enable scrollable for long content",
|
|
38
|
-
],
|
|
39
|
-
usage: `
|
|
40
|
-
import { Screen, View, Text } from '@idealyst/components';
|
|
41
|
-
|
|
42
|
-
<Screen background="primary" padding="md" safeArea>
|
|
43
|
-
<View spacing="lg">
|
|
44
|
-
<Text size="xl" weight="bold">Screen Title</Text>
|
|
45
|
-
<Text>Screen content goes here</Text>
|
|
46
|
-
</View>
|
|
47
|
-
</Screen>
|
|
48
|
-
`,
|
|
49
|
-
examples: {
|
|
50
|
-
basic: `import { Screen, Text } from '@idealyst/components';
|
|
51
|
-
|
|
52
|
-
<Screen background="primary" padding="md">
|
|
53
|
-
<Text>Basic screen content</Text>
|
|
54
|
-
</Screen>`,
|
|
55
|
-
variants: `import { Screen, Text } from '@idealyst/components';
|
|
56
|
-
|
|
57
|
-
// Different backgrounds
|
|
58
|
-
<Screen background="primary"><Text>Primary</Text></Screen>
|
|
59
|
-
<Screen background="secondary"><Text>Secondary</Text></Screen>
|
|
60
|
-
<Screen background="tertiary"><Text>Tertiary</Text></Screen>
|
|
61
|
-
<Screen background="inverse"><Text>Inverse</Text></Screen>`,
|
|
62
|
-
"with-icons": `import { Screen, View, Icon, Text } from '@idealyst/components';
|
|
63
|
-
|
|
64
|
-
<Screen background="primary" padding="lg" safeArea>
|
|
65
|
-
<View spacing="md">
|
|
66
|
-
<View style={{ alignItems: 'center' }}>
|
|
67
|
-
<Icon name="check-circle" size="xl" color="success" />
|
|
68
|
-
</View>
|
|
69
|
-
<Text align="center" size="xl" weight="bold">
|
|
70
|
-
Success!
|
|
71
|
-
</Text>
|
|
72
|
-
<Text align="center">
|
|
73
|
-
Your action was completed successfully
|
|
74
|
-
</Text>
|
|
75
|
-
</View>
|
|
76
|
-
</Screen>`,
|
|
77
|
-
interactive: `import { Screen, View, Text, Button } from '@idealyst/components';
|
|
78
|
-
import { useState } from 'react';
|
|
79
|
-
|
|
80
|
-
function Example() {
|
|
81
|
-
const [darkMode, setDarkMode] = useState(false);
|
|
82
|
-
|
|
83
|
-
return (
|
|
84
|
-
<Screen
|
|
85
|
-
background={darkMode ? 'inverse' : 'primary'}
|
|
86
|
-
padding="md"
|
|
87
|
-
safeArea
|
|
88
|
-
scrollable
|
|
89
|
-
>
|
|
90
|
-
<View spacing="lg">
|
|
91
|
-
<Text size="xl" weight="bold">
|
|
92
|
-
Settings
|
|
93
|
-
</Text>
|
|
94
|
-
<Button
|
|
95
|
-
onPress={() => setDarkMode(!darkMode)}
|
|
96
|
-
type="outlined"
|
|
97
|
-
>
|
|
98
|
-
Toggle {darkMode ? 'Light' : 'Dark'} Mode
|
|
99
|
-
</Button>
|
|
100
|
-
<Text>
|
|
101
|
-
Current theme: {darkMode ? 'Dark' : 'Light'}
|
|
102
|
-
</Text>
|
|
103
|
-
</View>
|
|
104
|
-
</Screen>
|
|
105
|
-
);
|
|
106
|
-
}`,
|
|
107
|
-
},
|
|
108
|
-
};
|
|
109
|
-
//# sourceMappingURL=Screen.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Screen.js","sourceRoot":"","sources":["../../../src/data/components/Screen.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,QAAQ;IAClB,WAAW,EAAE,mGAAmG;IAC5G,KAAK,EAAE;;;;;;;;;;;;;;;;CAgBZ;IACC,QAAQ,EAAE;QACR,gCAAgC;QAChC,0CAA0C;QAC1C,4CAA4C;QAC5C,2CAA2C;QAC3C,+CAA+C;QAC/C,6BAA6B;QAC7B,uBAAuB;QACvB,wBAAwB;KACzB;IACD,aAAa,EAAE;QACb,uCAAuC;QACvC,iCAAiC;QACjC,2CAA2C;QAC3C,2DAA2D;QAC3D,wCAAwC;QACxC,oCAAoC;KACrC;IACD,KAAK,EAAE;;;;;;;;;CASR;IACC,QAAQ,EAAE;QACR,KAAK,EAAE;;;;UAID;QAEN,QAAQ,EAAE;;;;;;2DAM6C;QAEvD,YAAY,EAAE;;;;;;;;;;;;;;UAcR;QAEN,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6Bf;KACC;CACF,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export declare const Select: {
|
|
2
|
-
category: string;
|
|
3
|
-
description: string;
|
|
4
|
-
props: string;
|
|
5
|
-
features: string[];
|
|
6
|
-
bestPractices: string[];
|
|
7
|
-
usage: string;
|
|
8
|
-
examples: {
|
|
9
|
-
basic: string;
|
|
10
|
-
variants: string;
|
|
11
|
-
"with-icons": string;
|
|
12
|
-
interactive: string;
|
|
13
|
-
};
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=Select.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/data/components/Select.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;;;;;;;;;;;CA8IlB,CAAC"}
|
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
export const Select = {
|
|
2
|
-
category: "form",
|
|
3
|
-
description: "Dropdown select component with margin variants for choosing from a list of options",
|
|
4
|
-
props: `
|
|
5
|
-
- \`options\`: SelectOption[] - Array of options to display in the select
|
|
6
|
-
- \`value\`: string - The currently selected value
|
|
7
|
-
- \`onValueChange\`: function - Called when the selected value changes
|
|
8
|
-
- \`placeholder\`: string - Placeholder text when no value is selected
|
|
9
|
-
- \`disabled\`: boolean - Whether the select is disabled
|
|
10
|
-
- \`error\`: boolean - Whether the select shows an error state
|
|
11
|
-
- \`helperText\`: string - Helper text to display below the select
|
|
12
|
-
- \`label\`: string - Label text to display above the select
|
|
13
|
-
- \`intent\`: SelectIntentVariant - The intent/color scheme of the select
|
|
14
|
-
- \`size\`: SelectSizeVariant - The size of the select
|
|
15
|
-
- \`margin\`: Size - Margin on all sides ('xs' | 'sm' | 'md' | 'lg' | 'xl')
|
|
16
|
-
- \`marginVertical\`: Size - Top and bottom margin
|
|
17
|
-
- \`marginHorizontal\`: Size - Left and right margin
|
|
18
|
-
- \`searchable\`: boolean - Whether to show a search/filter input (web only)
|
|
19
|
-
- \`filterOption\`: (option: SelectOption, searchTerm: string) => boolean - Custom search filter function (used with searchable)
|
|
20
|
-
- \`presentationMode\`: 'dropdown' | 'actionSheet' - Native iOS presentation mode (native only)
|
|
21
|
-
- \`maxHeight\`: number - Maximum height for the dropdown content
|
|
22
|
-
`,
|
|
23
|
-
features: [
|
|
24
|
-
"Single selection from options",
|
|
25
|
-
"Searchable dropdown (web)",
|
|
26
|
-
"Icon support for options",
|
|
27
|
-
"Two visual variants",
|
|
28
|
-
"Label and helper text",
|
|
29
|
-
"Error state",
|
|
30
|
-
"Disabled options",
|
|
31
|
-
"Custom filtering",
|
|
32
|
-
"Platform-specific presentation modes",
|
|
33
|
-
],
|
|
34
|
-
bestPractices: [
|
|
35
|
-
"Use for 5+ options (use RadioGroup for fewer)",
|
|
36
|
-
"Enable searchable for long option lists",
|
|
37
|
-
"Provide clear placeholder text",
|
|
38
|
-
"Group related options visually",
|
|
39
|
-
"Show error states inline with helperText",
|
|
40
|
-
"Consider icons for visual categorization",
|
|
41
|
-
],
|
|
42
|
-
usage: `
|
|
43
|
-
import { Select } from '@idealyst/components';
|
|
44
|
-
import { useState } from 'react';
|
|
45
|
-
|
|
46
|
-
function Example() {
|
|
47
|
-
const [value, setValue] = useState('');
|
|
48
|
-
|
|
49
|
-
const options = [
|
|
50
|
-
{ value: 'us', label: 'United States' },
|
|
51
|
-
{ value: 'ca', label: 'Canada' },
|
|
52
|
-
{ value: 'uk', label: 'United Kingdom' },
|
|
53
|
-
];
|
|
54
|
-
|
|
55
|
-
return (
|
|
56
|
-
<Select
|
|
57
|
-
label="Country"
|
|
58
|
-
options={options}
|
|
59
|
-
value={value}
|
|
60
|
-
onValueChange={setValue}
|
|
61
|
-
placeholder="Select a country"
|
|
62
|
-
/>
|
|
63
|
-
);
|
|
64
|
-
}
|
|
65
|
-
`,
|
|
66
|
-
examples: {
|
|
67
|
-
basic: `import { Select } from '@idealyst/components';
|
|
68
|
-
|
|
69
|
-
const options = [
|
|
70
|
-
{ value: '1', label: 'Option 1' },
|
|
71
|
-
{ value: '2', label: 'Option 2' },
|
|
72
|
-
];
|
|
73
|
-
|
|
74
|
-
<Select options={options} placeholder="Choose..." />`,
|
|
75
|
-
variants: `import { Select, View } from '@idealyst/components';
|
|
76
|
-
|
|
77
|
-
const options = [{ value: '1', label: 'Option' }];
|
|
78
|
-
|
|
79
|
-
<View spacing="md">
|
|
80
|
-
<Select options={options} type="outlined" size="sm" />
|
|
81
|
-
<Select options={options} type="filled" size="md" />
|
|
82
|
-
<Select options={options} type="outlined" size="lg" />
|
|
83
|
-
</View>`,
|
|
84
|
-
"with-icons": `import { Select } from '@idealyst/components';
|
|
85
|
-
|
|
86
|
-
const options = [
|
|
87
|
-
{ value: 'light', label: 'Light Mode', icon: <Icon name="white-balance-sunny" /> },
|
|
88
|
-
{ value: 'dark', label: 'Dark Mode', icon: <Icon name="weather-night" /> },
|
|
89
|
-
{ value: 'auto', label: 'Auto', icon: <Icon name="brightness-auto" /> },
|
|
90
|
-
];
|
|
91
|
-
|
|
92
|
-
<Select
|
|
93
|
-
label="Theme"
|
|
94
|
-
options={options}
|
|
95
|
-
value={theme}
|
|
96
|
-
onValueChange={setTheme}
|
|
97
|
-
/>`,
|
|
98
|
-
interactive: `import { Select, View, Text } from '@idealyst/components';
|
|
99
|
-
import { useState } from 'react';
|
|
100
|
-
|
|
101
|
-
function Example() {
|
|
102
|
-
const [country, setCountry] = useState('');
|
|
103
|
-
const [error, setError] = useState('');
|
|
104
|
-
|
|
105
|
-
const countries = [
|
|
106
|
-
{ value: 'us', label: 'United States' },
|
|
107
|
-
{ value: 'ca', label: 'Canada' },
|
|
108
|
-
{ value: 'uk', label: 'United Kingdom' },
|
|
109
|
-
{ value: 'au', label: 'Australia' },
|
|
110
|
-
];
|
|
111
|
-
|
|
112
|
-
const handleChange = (value: string) => {
|
|
113
|
-
setCountry(value);
|
|
114
|
-
setError('');
|
|
115
|
-
};
|
|
116
|
-
|
|
117
|
-
const handleSubmit = () => {
|
|
118
|
-
if (!country) {
|
|
119
|
-
setError('Please select a country');
|
|
120
|
-
}
|
|
121
|
-
};
|
|
122
|
-
|
|
123
|
-
return (
|
|
124
|
-
<View spacing="md">
|
|
125
|
-
<Select
|
|
126
|
-
label="Country"
|
|
127
|
-
options={countries}
|
|
128
|
-
value={country}
|
|
129
|
-
onValueChange={handleChange}
|
|
130
|
-
placeholder="Select your country"
|
|
131
|
-
error={!!error}
|
|
132
|
-
helperText={error || 'Choose your country of residence'}
|
|
133
|
-
searchable
|
|
134
|
-
/>
|
|
135
|
-
<Button onPress={handleSubmit}>Submit</Button>
|
|
136
|
-
</View>
|
|
137
|
-
);
|
|
138
|
-
}`,
|
|
139
|
-
},
|
|
140
|
-
};
|
|
141
|
-
//# sourceMappingURL=Select.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Select.js","sourceRoot":"","sources":["../../../src/data/components/Select.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,MAAM;IAChB,WAAW,EAAE,oFAAoF;IAC7F,KAAK,EAAE;;;;;;;;;;;;;;;;;;CAkBZ;IACC,QAAQ,EAAE;QACR,+BAA+B;QAC/B,2BAA2B;QAC3B,0BAA0B;QAC1B,qBAAqB;QACrB,uBAAuB;QACvB,aAAa;QACb,kBAAkB;QAClB,kBAAkB;QAClB,sCAAsC;KACvC;IACD,aAAa,EAAE;QACb,+CAA+C;QAC/C,yCAAyC;QACzC,gCAAgC;QAChC,gCAAgC;QAChC,0CAA0C;QAC1C,0CAA0C;KAC3C;IACD,KAAK,EAAE;;;;;;;;;;;;;;;;;;;;;;;CAuBR;IACC,QAAQ,EAAE;QACR,KAAK,EAAE;;;;;;;qDAO0C;QAEjD,QAAQ,EAAE;;;;;;;;QAQN;QAEJ,YAAY,EAAE;;;;;;;;;;;;;GAaf;QAEC,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwCf;KACC;CACF,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export declare const Skeleton: {
|
|
2
|
-
category: string;
|
|
3
|
-
description: string;
|
|
4
|
-
props: string;
|
|
5
|
-
features: string[];
|
|
6
|
-
bestPractices: string[];
|
|
7
|
-
usage: string;
|
|
8
|
-
examples: {
|
|
9
|
-
basic: string;
|
|
10
|
-
variants: string;
|
|
11
|
-
"with-icons": string;
|
|
12
|
-
interactive: string;
|
|
13
|
-
};
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=Skeleton.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Skeleton.d.ts","sourceRoot":"","sources":["../../../src/data/components/Skeleton.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;CAqGpB,CAAC"}
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
export const Skeleton = {
|
|
2
|
-
category: "feedback",
|
|
3
|
-
description: "Loading placeholder that mimics content structure while data loads",
|
|
4
|
-
props: `
|
|
5
|
-
- \`width\`: number | string - Width of the skeleton (number in pixels or string with units)
|
|
6
|
-
- \`height\`: number | string - Height of the skeleton (number in pixels or string with units)
|
|
7
|
-
- \`shape\`: SkeletonShape - Shape of the skeleton
|
|
8
|
-
- \`borderRadius\`: number - Border radius for 'rounded' shape (in pixels)
|
|
9
|
-
- \`animation\`: SkeletonAnimation - Animation type
|
|
10
|
-
`,
|
|
11
|
-
features: [
|
|
12
|
-
"Three shapes: rectangle, circle, rounded",
|
|
13
|
-
"Three animation types",
|
|
14
|
-
"Configurable dimensions",
|
|
15
|
-
"Group component for multiple skeletons",
|
|
16
|
-
"Customizable spacing",
|
|
17
|
-
"Mimics content structure",
|
|
18
|
-
],
|
|
19
|
-
bestPractices: [
|
|
20
|
-
"Match skeleton shape to actual content",
|
|
21
|
-
"Use pulse animation for general loading",
|
|
22
|
-
"Use wave animation for feed-like content",
|
|
23
|
-
"Show skeleton while data is loading",
|
|
24
|
-
"Replace skeleton with actual content smoothly",
|
|
25
|
-
"Use SkeletonGroup for consistent layouts",
|
|
26
|
-
],
|
|
27
|
-
usage: `
|
|
28
|
-
import { Skeleton, SkeletonGroup } from '@idealyst/components';
|
|
29
|
-
|
|
30
|
-
// Single skeleton
|
|
31
|
-
<Skeleton width={200} height={20} shape="rounded" />
|
|
32
|
-
|
|
33
|
-
// Multiple skeletons
|
|
34
|
-
<SkeletonGroup
|
|
35
|
-
count={3}
|
|
36
|
-
spacing={16}
|
|
37
|
-
skeletonProps={{ width: '100%', height: 60, shape: 'rounded' }}
|
|
38
|
-
/>
|
|
39
|
-
`,
|
|
40
|
-
examples: {
|
|
41
|
-
basic: `import { Skeleton } from '@idealyst/components';
|
|
42
|
-
|
|
43
|
-
<Skeleton width={150} height={20} />`,
|
|
44
|
-
variants: `import { Skeleton, View } from '@idealyst/components';
|
|
45
|
-
|
|
46
|
-
<View spacing="md">
|
|
47
|
-
<Skeleton width="100%" height={20} shape="rectangle" />
|
|
48
|
-
<Skeleton width={100} height={100} shape="circle" />
|
|
49
|
-
<Skeleton width={200} height={40} shape="rounded" />
|
|
50
|
-
</View>`,
|
|
51
|
-
"with-icons": `import { Skeleton, View } from '@idealyst/components';
|
|
52
|
-
|
|
53
|
-
// Mimicking a user card
|
|
54
|
-
<View style={{ flexDirection: 'row', gap: 12, alignItems: 'center' }}>
|
|
55
|
-
<Skeleton width={48} height={48} shape="circle" />
|
|
56
|
-
<View spacing="sm" style={{ flex: 1 }}>
|
|
57
|
-
<Skeleton width="60%" height={16} />
|
|
58
|
-
<Skeleton width="40%" height={14} />
|
|
59
|
-
</View>
|
|
60
|
-
</View>`,
|
|
61
|
-
interactive: `import { Skeleton, SkeletonGroup, View, Card, Text, Button } from '@idealyst/components';
|
|
62
|
-
import { useState, useEffect } from 'react';
|
|
63
|
-
|
|
64
|
-
function Example() {
|
|
65
|
-
const [loading, setLoading] = useState(true);
|
|
66
|
-
const [data, setData] = useState(null);
|
|
67
|
-
|
|
68
|
-
useEffect(() => {
|
|
69
|
-
setTimeout(() => {
|
|
70
|
-
setData({ title: 'Article Title', content: 'Article content...' });
|
|
71
|
-
setLoading(false);
|
|
72
|
-
}, 2000);
|
|
73
|
-
}, []);
|
|
74
|
-
|
|
75
|
-
if (loading) {
|
|
76
|
-
return (
|
|
77
|
-
<Card padding="md">
|
|
78
|
-
<View spacing="md">
|
|
79
|
-
<Skeleton width="80%" height={24} shape="rounded" />
|
|
80
|
-
<SkeletonGroup
|
|
81
|
-
count={3}
|
|
82
|
-
skeletonProps={{ width: '100%', height: 16 }}
|
|
83
|
-
/>
|
|
84
|
-
</View>
|
|
85
|
-
</Card>
|
|
86
|
-
);
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
return (
|
|
90
|
-
<Card padding="md">
|
|
91
|
-
<View spacing="md">
|
|
92
|
-
<Text size="lg" weight="bold">{data.title}</Text>
|
|
93
|
-
<Text>{data.content}</Text>
|
|
94
|
-
</View>
|
|
95
|
-
</Card>
|
|
96
|
-
);
|
|
97
|
-
}`,
|
|
98
|
-
},
|
|
99
|
-
};
|
|
100
|
-
//# sourceMappingURL=Skeleton.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Skeleton.js","sourceRoot":"","sources":["../../../src/data/components/Skeleton.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,QAAQ,EAAE,UAAU;IACpB,WAAW,EAAE,oEAAoE;IAC7E,KAAK,EAAE;;;;;;CAMZ;IACC,QAAQ,EAAE;QACR,0CAA0C;QAC1C,uBAAuB;QACvB,yBAAyB;QACzB,wCAAwC;QACxC,sBAAsB;QACtB,0BAA0B;KAC3B;IACD,aAAa,EAAE;QACb,wCAAwC;QACxC,yCAAyC;QACzC,0CAA0C;QAC1C,qCAAqC;QACrC,+CAA+C;QAC/C,0CAA0C;KAC3C;IACD,KAAK,EAAE;;;;;;;;;;;;CAYR;IACC,QAAQ,EAAE;QACR,KAAK,EAAE;;qCAE0B;QAEjC,QAAQ,EAAE;;;;;;QAMN;QAEJ,YAAY,EAAE;;;;;;;;;QASV;QAEJ,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoCf;KACC;CACF,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export declare const Slider: {
|
|
2
|
-
category: string;
|
|
3
|
-
description: string;
|
|
4
|
-
props: string;
|
|
5
|
-
features: string[];
|
|
6
|
-
bestPractices: string[];
|
|
7
|
-
usage: string;
|
|
8
|
-
examples: {
|
|
9
|
-
basic: string;
|
|
10
|
-
variants: string;
|
|
11
|
-
"with-icons": string;
|
|
12
|
-
interactive: string;
|
|
13
|
-
};
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=Slider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../../src/data/components/Slider.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;;;;;;;;;;;CAwJlB,CAAC"}
|