@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 ADDED
@@ -0,0 +1,171 @@
1
+ # App Studio Web Component Library
2
+
3
+ ![App Studio Web](https://img.shields.io/badge/App%20Studio-Web-blue)
4
+ ![React](https://img.shields.io/badge/React-18.x-61DAFB)
5
+ ![TypeScript](https://img.shields.io/badge/TypeScript-4.9.x-3178C6)
6
+ ![License](https://img.shields.io/badge/License-MIT-green)
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' | '2xl' | '3xl' | '4xl' | '5xl' | '6xl';
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
- box?: ViewProps;
7
- text?: ViewProps;
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
- box?: ViewProps;
11
+ container?: ViewProps;
13
12
  text?: ViewProps;
14
13
  label?: ViewProps;
15
14
  helperText?: ViewProps;
@@ -1,3 +1,4 @@
1
1
  import React from 'react';
2
2
  import { SeparatorProps } from './Separator/Separator.props';
3
3
  export declare const Separator: React.FC<SeparatorProps>;
4
+ export declare const Divider: React.FC<SeparatorProps>;