@app-studio/web 0.8.76 → 0.8.78
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +171 -0
- package/dist/components/Chart/Chart/ChartColors.d.ts +20 -0
- package/dist/components/Form/Label/Label/Label.type.d.ts +1 -1
- package/dist/components/Form/TextArea/TextArea/TextArea.type.d.ts +4 -2
- package/dist/components/Input/Input.type.d.ts +2 -1
- package/dist/components/OTPInput/OTPInput/OTPInput.type.d.ts +1 -2
- package/dist/components/Separator/Separator.d.ts +1 -0
- package/dist/web.cjs.development.js +78 -168
- package/dist/web.cjs.development.js.map +1 -1
- package/dist/web.cjs.production.min.js +1 -1
- package/dist/web.cjs.production.min.js.map +1 -1
- package/dist/web.esm.js +79 -170
- package/dist/web.esm.js.map +1 -1
- package/dist/web.umd.development.js +82 -171
- package/dist/web.umd.development.js.map +1 -1
- package/dist/web.umd.production.min.js +1 -1
- package/dist/web.umd.production.min.js.map +1 -1
- package/package.json +1 -1
package/README.md
ADDED
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
# App Studio Web Component Library
|
|
2
|
+
|
|
3
|
+

|
|
4
|
+

|
|
5
|
+

|
|
6
|
+

|
|
7
|
+
|
|
8
|
+
A comprehensive, accessible, and customizable React component library built with TypeScript and App Studio. This library provides a wide range of UI components designed to help you build beautiful and functional web applications quickly and efficiently.
|
|
9
|
+
|
|
10
|
+
## Features
|
|
11
|
+
|
|
12
|
+
- **40+ UI Components**: From basic elements to complex interactive components
|
|
13
|
+
- **Fully Typed**: Built with TypeScript for better developer experience
|
|
14
|
+
- **Accessible**: Follows WCAG guidelines for accessibility
|
|
15
|
+
- **Customizable**: Easily theme and style components to match your brand
|
|
16
|
+
- **Responsive**: Works across all device sizes
|
|
17
|
+
- **Form Integration**: Seamless integration with Formik for form handling
|
|
18
|
+
- **Modern Design**: Clean, consistent design following best practices
|
|
19
|
+
|
|
20
|
+
## Installation
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npm install @app-studio/web
|
|
24
|
+
# or
|
|
25
|
+
yarn add @app-studio/web
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Quick Start
|
|
29
|
+
|
|
30
|
+
```jsx
|
|
31
|
+
import React from 'react';
|
|
32
|
+
import { Button, Text } from '@app-studio/web';
|
|
33
|
+
|
|
34
|
+
function App() {
|
|
35
|
+
return (
|
|
36
|
+
<div>
|
|
37
|
+
<Text>Hello, world!</Text>
|
|
38
|
+
<Button onClick={() => alert('Clicked!')}>Click me</Button>
|
|
39
|
+
</div>
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Component Categories
|
|
45
|
+
|
|
46
|
+
### Layout Components
|
|
47
|
+
- View
|
|
48
|
+
- Center
|
|
49
|
+
- Horizontal
|
|
50
|
+
- Vertical
|
|
51
|
+
- AspectRatio
|
|
52
|
+
- Separator
|
|
53
|
+
- Resizable
|
|
54
|
+
|
|
55
|
+
### Form Components
|
|
56
|
+
- Checkbox
|
|
57
|
+
- Radio
|
|
58
|
+
- Select
|
|
59
|
+
- Switch
|
|
60
|
+
- TextArea
|
|
61
|
+
- TextField
|
|
62
|
+
- OTPInput
|
|
63
|
+
|
|
64
|
+
### Navigation Components
|
|
65
|
+
- Accordion
|
|
66
|
+
- Menubar
|
|
67
|
+
- NavigationMenu
|
|
68
|
+
- Pagination
|
|
69
|
+
- Sidebar
|
|
70
|
+
- Tabs
|
|
71
|
+
|
|
72
|
+
### Feedback Components
|
|
73
|
+
- Alert
|
|
74
|
+
- Modal
|
|
75
|
+
- Toast
|
|
76
|
+
- Tooltip
|
|
77
|
+
|
|
78
|
+
### Data Display Components
|
|
79
|
+
- Avatar
|
|
80
|
+
- Badge
|
|
81
|
+
- Card
|
|
82
|
+
- Table
|
|
83
|
+
- Chart
|
|
84
|
+
|
|
85
|
+
### Utility Components
|
|
86
|
+
- Button
|
|
87
|
+
- Gradient
|
|
88
|
+
- Loader
|
|
89
|
+
- Text
|
|
90
|
+
|
|
91
|
+
### Interactive Components
|
|
92
|
+
- Carousel
|
|
93
|
+
- ContextMenu
|
|
94
|
+
- DropdownMenu
|
|
95
|
+
- HoverCard
|
|
96
|
+
- Slider
|
|
97
|
+
- Toggle
|
|
98
|
+
- ToggleGroup
|
|
99
|
+
|
|
100
|
+
## Design System
|
|
101
|
+
|
|
102
|
+
All components follow a consistent design system with:
|
|
103
|
+
|
|
104
|
+
- **Typography**: Inter/Geist font, specific sizes/weights
|
|
105
|
+
- **Spacing**: 4px grid system
|
|
106
|
+
- **Colors**: Neutral palette with semantic colors
|
|
107
|
+
- **Rounded corners**: Consistent border radius
|
|
108
|
+
- **Transitions**: Subtle animations
|
|
109
|
+
|
|
110
|
+
## Development
|
|
111
|
+
|
|
112
|
+
### Prerequisites
|
|
113
|
+
|
|
114
|
+
- Node.js (>= 10.x)
|
|
115
|
+
- npm or yarn
|
|
116
|
+
|
|
117
|
+
### Setup
|
|
118
|
+
|
|
119
|
+
1. Clone the repository
|
|
120
|
+
```bash
|
|
121
|
+
git clone https://github.com/your-org/app-studio-web.git
|
|
122
|
+
cd app-studio-web
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
2. Install dependencies
|
|
126
|
+
```bash
|
|
127
|
+
npm install
|
|
128
|
+
# or
|
|
129
|
+
yarn
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
3. Start the development server
|
|
133
|
+
```bash
|
|
134
|
+
npm start
|
|
135
|
+
# or
|
|
136
|
+
yarn start
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
### Available Scripts
|
|
140
|
+
|
|
141
|
+
- `npm start` - Start the development server
|
|
142
|
+
- `npm run build` - Build the library for production
|
|
143
|
+
- `npm test` - Run tests
|
|
144
|
+
- `npm run storybook` - Start Storybook for component development
|
|
145
|
+
- `npm run lint` - Run ESLint
|
|
146
|
+
- `npm run lint:fix` - Fix ESLint issues
|
|
147
|
+
- `npm run prettier` - Run Prettier
|
|
148
|
+
- `npm run prettier:fix` - Fix Prettier issues
|
|
149
|
+
|
|
150
|
+
## Contributing
|
|
151
|
+
|
|
152
|
+
We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for more details.
|
|
153
|
+
|
|
154
|
+
### Creating New Components
|
|
155
|
+
|
|
156
|
+
Use our component creation script to scaffold new components:
|
|
157
|
+
|
|
158
|
+
```bash
|
|
159
|
+
npm run create-structure -- --name=YourComponentName
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
## License
|
|
163
|
+
|
|
164
|
+
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
|
|
165
|
+
|
|
166
|
+
## Acknowledgements
|
|
167
|
+
|
|
168
|
+
- Built with [React](https://reactjs.org/)
|
|
169
|
+
- Styled with [App Studio](https://app-studio.dev/)
|
|
170
|
+
- Form handling with [Formik](https://formik.org/)
|
|
171
|
+
- State management with [Zustand](https://github.com/pmndrs/zustand)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chart Colors
|
|
3
|
+
*
|
|
4
|
+
* Defines a consistent color scheme for all chart examples.
|
|
5
|
+
* These colors should be used in the same order across all chart types
|
|
6
|
+
* to ensure consistency between the charts and their legends.
|
|
7
|
+
*/
|
|
8
|
+
export declare const CHART_COLORS: {
|
|
9
|
+
blue: string;
|
|
10
|
+
green: string;
|
|
11
|
+
purple: string;
|
|
12
|
+
orange: string;
|
|
13
|
+
red: string;
|
|
14
|
+
teal: string;
|
|
15
|
+
pink: string;
|
|
16
|
+
indigo: string;
|
|
17
|
+
yellow: string;
|
|
18
|
+
cyan: string;
|
|
19
|
+
};
|
|
20
|
+
export declare const DEFAULT_CHART_COLORS: string[];
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare type TextWeights = 'hairline' | 'thin' | 'light' | 'normal' | 'medium' | 'semiBold' | 'bold' | 'extraBold' | 'black';
|
|
2
|
-
export declare type Sizes = 'xs' | 'sm' | 'md' | 'lg' | 'xl'
|
|
2
|
+
export declare type Sizes = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
3
3
|
export declare type Headings = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
|
|
@@ -3,9 +3,11 @@ export declare type Variant = 'outline' | 'default' | 'none';
|
|
|
3
3
|
export declare type Shape = 'default' | 'sharp' | 'rounded';
|
|
4
4
|
export declare type Size = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
5
5
|
export declare type TextAreaStyles = {
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
warper?: ViewProps;
|
|
7
|
+
container?: ViewProps;
|
|
8
8
|
label?: ViewProps;
|
|
9
9
|
helperText?: ViewProps;
|
|
10
10
|
field?: ViewProps;
|
|
11
|
+
content?: ViewProps;
|
|
12
|
+
textarea?: ViewProps;
|
|
11
13
|
};
|
|
@@ -3,10 +3,11 @@ export declare type Variant = 'outline' | 'default' | 'none';
|
|
|
3
3
|
export declare type Shape = 'default' | 'sharp' | 'rounded' | 'pillShaped';
|
|
4
4
|
export declare type Size = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
5
5
|
export declare type TextFieldStyles = {
|
|
6
|
-
box?: ViewProps;
|
|
7
6
|
text?: ViewProps;
|
|
8
7
|
label?: ViewProps;
|
|
8
|
+
error?: ViewProps;
|
|
9
9
|
helperText?: ViewProps;
|
|
10
|
+
container?: ViewProps;
|
|
10
11
|
};
|
|
11
12
|
export declare type Wrap = 'wrap' | 'nowrap' | 'wrap-reverse';
|
|
12
13
|
export declare type Justify = 'flex-start' | 'center' | 'flex-end' | 'space-between' | 'space-around' | 'space-evenly';
|
|
@@ -7,9 +7,8 @@ export declare type OTPInputType = 'text' | 'password' | 'number';
|
|
|
7
7
|
* Styles for different parts of the OTP input component
|
|
8
8
|
*/
|
|
9
9
|
export declare type OTPInputStyles = {
|
|
10
|
-
container?: ViewProps;
|
|
11
10
|
input?: ViewProps;
|
|
12
|
-
|
|
11
|
+
container?: ViewProps;
|
|
13
12
|
text?: ViewProps;
|
|
14
13
|
label?: ViewProps;
|
|
15
14
|
helperText?: ViewProps;
|