@app-studio/web 0.9.35 → 0.9.37
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/Calendar/Calendar/Calendar.props.d.ts +8 -0
- package/dist/components/KanbanBoard/KanbanBoard/KanbanBoard.props.d.ts +5 -0
- package/dist/components/KanbanBoard/KanbanBoard/KanbanBoard.state.d.ts +7 -3
- package/dist/components/OKR/OKR/OKR.props.d.ts +72 -0
- package/dist/components/OKR/OKR/OKR.style.d.ts +19 -0
- package/dist/components/OKR/OKR/OKR.view.d.ts +4 -0
- package/dist/components/OKR/OKR.d.ts +4 -0
- package/dist/components/index.d.ts +4 -0
- package/dist/pages/okr.page.d.ts +3 -0
- package/dist/web.cjs.development.js +774 -199
- 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 +774 -200
- package/dist/web.esm.js.map +1 -1
- package/dist/web.umd.development.js +774 -199
- 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/docs/README.md +2 -1
- package/docs/components/Calendar.mdx +3 -0
- package/docs/components/Flow.mdx +1 -0
- package/docs/components/KanbanBoard.mdx +4 -0
- package/docs/components/OKR.mdx +475 -0
- package/docs/components/Title.mdx +1 -0
- package/docs/components/Tree.mdx +1 -0
- package/docs/components.md +178 -0
- package/package.json +1 -1
- package/docs/api-reference/README.md +0 -103
- package/docs/api-reference/data-display/flow.md +0 -220
- package/docs/api-reference/data-display/tree.md +0 -210
- package/docs/api-reference/form/chat-input.md +0 -206
- package/docs/api-reference/utility/button.md +0 -145
- package/docs/api-reference/utility/title.md +0 -301
|
@@ -1,301 +0,0 @@
|
|
|
1
|
-
# Title
|
|
2
|
-
|
|
3
|
-
The Title component is used for rendering animated and highlighted titles in hero sections and other prominent areas of the UI.
|
|
4
|
-
|
|
5
|
-
## Import
|
|
6
|
-
|
|
7
|
-
```jsx
|
|
8
|
-
import { Title } from '@app-studio/web';
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
## Props
|
|
12
|
-
|
|
13
|
-
| Prop | Type | Default | Description |
|
|
14
|
-
| ---- | ---- | ------- | ----------- |
|
|
15
|
-
| children | React.ReactNode | - | The main text content of the title |
|
|
16
|
-
| highlightText | string \| string[] | - | Text to be highlighted within the title. If not provided, no highlighting will be applied |
|
|
17
|
-
| highlightStyle | 'background' \| 'underline' \| 'gradient' \| 'outline' \| 'glow' | 'background' | The visual style of the highlighted text |
|
|
18
|
-
| highlightColor | string | 'theme.primary' | The color of the highlighted text or background |
|
|
19
|
-
| highlightSecondaryColor | string | - | The secondary color for gradient highlights |
|
|
20
|
-
| size | 'xs' \| 'sm' \| 'md' \| 'lg' \| 'xl' \| 'xl' \| 'xl' \| 'xl' \| 'xl' \| '6xl' | 'xl' | The size of the title |
|
|
21
|
-
| centered | boolean | false | Whether to center the title |
|
|
22
|
-
| animate | AnimationProps \| AnimationProps[] | - | Animation for the title. This should be an animation object with properties like from, to, duration, etc. |
|
|
23
|
-
| highlightAnimate | AnimationProps \| AnimationProps[] | - | Animation specifically for the highlighted text |
|
|
24
|
-
| alternateHighlightText | string[] | [] | Array of strings to cycle through, replacing the text specified in highlightText |
|
|
25
|
-
| alternateAnimation | boolean | false | Whether to animate the alternating highlight text |
|
|
26
|
-
| alternateDuration | number | 3000 | Duration in milliseconds for each alternating highlight text |
|
|
27
|
-
| highlightTypewriter | boolean | false | Whether to apply a typewriter effect to the highlighted text |
|
|
28
|
-
| highlightTypewriterDuration | number | 3000 | Duration in milliseconds for the typewriter effect |
|
|
29
|
-
| views | TitleStyles | {} | Custom styles for different parts of the title |
|
|
30
|
-
| themeMode | 'light' \| 'dark' | - | Optional theme mode override |
|
|
31
|
-
|
|
32
|
-
## Examples
|
|
33
|
-
|
|
34
|
-
### Basic Title
|
|
35
|
-
|
|
36
|
-
```jsx
|
|
37
|
-
<Title>Simple Hero Title</Title>
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
### Title Sizes
|
|
41
|
-
|
|
42
|
-
```jsx
|
|
43
|
-
<>
|
|
44
|
-
<Title size="xs">Extra Small Title (xs)</Title>
|
|
45
|
-
<Title size="sm">Small Title (sm)</Title>
|
|
46
|
-
<Title size="md">Medium Title (md)</Title>
|
|
47
|
-
<Title size="lg">Large Title (lg)</Title>
|
|
48
|
-
<Title size="xl">Extra Large Title (xl - default)</Title>
|
|
49
|
-
<Title size="xl">2XL Title</Title>
|
|
50
|
-
<Title size="xl">3XL Title</Title>
|
|
51
|
-
<Title size="xl">4XL Title</Title>
|
|
52
|
-
<Title size="xl">5XL Title</Title>
|
|
53
|
-
<Title size="6xl">6XL Title</Title>
|
|
54
|
-
</>
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
### Highlighted Title
|
|
58
|
-
|
|
59
|
-
```jsx
|
|
60
|
-
<Title
|
|
61
|
-
highlightText="highlighted"
|
|
62
|
-
highlightStyle="background"
|
|
63
|
-
highlightColor="theme.primary"
|
|
64
|
-
>
|
|
65
|
-
Text with highlighted words
|
|
66
|
-
</Title>
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
### Highlight Styles
|
|
70
|
-
|
|
71
|
-
```jsx
|
|
72
|
-
<>
|
|
73
|
-
<Title
|
|
74
|
-
highlightText="background"
|
|
75
|
-
highlightStyle="background"
|
|
76
|
-
highlightColor="theme.primary"
|
|
77
|
-
>
|
|
78
|
-
Text with background highlight
|
|
79
|
-
</Title>
|
|
80
|
-
|
|
81
|
-
<Title
|
|
82
|
-
highlightText="underlined"
|
|
83
|
-
highlightStyle="underline"
|
|
84
|
-
highlightColor="theme.secondary"
|
|
85
|
-
>
|
|
86
|
-
Text with underlined highlight
|
|
87
|
-
</Title>
|
|
88
|
-
|
|
89
|
-
<Title
|
|
90
|
-
highlightText="gradient"
|
|
91
|
-
highlightStyle="gradient"
|
|
92
|
-
highlightColor="theme.primary"
|
|
93
|
-
highlightSecondaryColor="theme.secondary"
|
|
94
|
-
>
|
|
95
|
-
Text with gradient highlight
|
|
96
|
-
</Title>
|
|
97
|
-
|
|
98
|
-
<Title
|
|
99
|
-
highlightText="outline"
|
|
100
|
-
highlightStyle="outline"
|
|
101
|
-
highlightColor="theme.primary"
|
|
102
|
-
>
|
|
103
|
-
Text with outline highlight
|
|
104
|
-
</Title>
|
|
105
|
-
|
|
106
|
-
<Title
|
|
107
|
-
highlightText="glow"
|
|
108
|
-
highlightStyle="glow"
|
|
109
|
-
highlightColor="theme.primary"
|
|
110
|
-
>
|
|
111
|
-
Text with glow highlight
|
|
112
|
-
</Title>
|
|
113
|
-
</>
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
### Multiple Highlights
|
|
117
|
-
|
|
118
|
-
```jsx
|
|
119
|
-
<Title
|
|
120
|
-
highlightText={['multiple', 'highlights']}
|
|
121
|
-
highlightStyle="background"
|
|
122
|
-
highlightColor="theme.primary"
|
|
123
|
-
>
|
|
124
|
-
Text with multiple highlights in the same sentence
|
|
125
|
-
</Title>
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
### Animated Title
|
|
129
|
-
|
|
130
|
-
```jsx
|
|
131
|
-
<Title
|
|
132
|
-
animate={{
|
|
133
|
-
from: { opacity: 0 },
|
|
134
|
-
to: { opacity: 1 },
|
|
135
|
-
duration: '1.5s',
|
|
136
|
-
iterationCount: '1',
|
|
137
|
-
}}
|
|
138
|
-
>
|
|
139
|
-
Fade In Animation
|
|
140
|
-
</Title>
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
### Animated Highlight
|
|
144
|
-
|
|
145
|
-
```jsx
|
|
146
|
-
<Title
|
|
147
|
-
highlightText="animated highlight"
|
|
148
|
-
highlightStyle="background"
|
|
149
|
-
highlightColor="theme.primary"
|
|
150
|
-
highlightAnimate={{
|
|
151
|
-
from: { opacity: 0, transform: 'scale(0.9)' },
|
|
152
|
-
to: { opacity: 1, transform: 'scale(1)' },
|
|
153
|
-
duration: '0.5s',
|
|
154
|
-
delay: '0.2s',
|
|
155
|
-
}}
|
|
156
|
-
>
|
|
157
|
-
Text with animated highlight
|
|
158
|
-
</Title>
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
### Alternating Highlight Text
|
|
162
|
-
|
|
163
|
-
```jsx
|
|
164
|
-
<Title
|
|
165
|
-
highlightText="changing"
|
|
166
|
-
alternateHighlightText={[
|
|
167
|
-
'innovative',
|
|
168
|
-
'powerful',
|
|
169
|
-
'flexible',
|
|
170
|
-
'intuitive',
|
|
171
|
-
]}
|
|
172
|
-
alternateAnimation={true}
|
|
173
|
-
alternateDuration={2000}
|
|
174
|
-
highlightStyle="background"
|
|
175
|
-
highlightColor="theme.primary"
|
|
176
|
-
>
|
|
177
|
-
Our changing solution for your business
|
|
178
|
-
</Title>
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
### Typewriter Effect
|
|
182
|
-
|
|
183
|
-
```jsx
|
|
184
|
-
<Title
|
|
185
|
-
highlightText="typewriter"
|
|
186
|
-
highlightStyle="background"
|
|
187
|
-
highlightColor="theme.primary"
|
|
188
|
-
highlightTypewriter={true}
|
|
189
|
-
highlightTypewriterDuration={1500}
|
|
190
|
-
>
|
|
191
|
-
This text has a typewriter effect on the highlighted word
|
|
192
|
-
</Title>
|
|
193
|
-
```
|
|
194
|
-
|
|
195
|
-
### Responsive Title
|
|
196
|
-
|
|
197
|
-
```jsx
|
|
198
|
-
<Title
|
|
199
|
-
media={{
|
|
200
|
-
mobile: {
|
|
201
|
-
fontSize: 32,
|
|
202
|
-
lineHeight: '40px',
|
|
203
|
-
},
|
|
204
|
-
tablet: {
|
|
205
|
-
fontSize: 48,
|
|
206
|
-
lineHeight: '56px',
|
|
207
|
-
},
|
|
208
|
-
desktop: {
|
|
209
|
-
fontSize: 64,
|
|
210
|
-
lineHeight: '72px',
|
|
211
|
-
},
|
|
212
|
-
}}
|
|
213
|
-
highlightText="Responsive"
|
|
214
|
-
highlightStyle="background"
|
|
215
|
-
highlightColor="theme.primary"
|
|
216
|
-
>
|
|
217
|
-
Responsive Title Example
|
|
218
|
-
</Title>
|
|
219
|
-
```
|
|
220
|
-
|
|
221
|
-
### Custom Styling
|
|
222
|
-
|
|
223
|
-
```jsx
|
|
224
|
-
<Title
|
|
225
|
-
views={{
|
|
226
|
-
container: {
|
|
227
|
-
fontFamily: 'Georgia, serif',
|
|
228
|
-
letterSpacing: '0.05em',
|
|
229
|
-
textTransform: 'uppercase',
|
|
230
|
-
},
|
|
231
|
-
highlight: {
|
|
232
|
-
borderRadius: '8px',
|
|
233
|
-
padding: '0 12px',
|
|
234
|
-
},
|
|
235
|
-
}}
|
|
236
|
-
highlightText="Custom"
|
|
237
|
-
highlightStyle="background"
|
|
238
|
-
highlightColor="color.purple.500"
|
|
239
|
-
>
|
|
240
|
-
Title with Custom Styling
|
|
241
|
-
</Title>
|
|
242
|
-
```
|
|
243
|
-
|
|
244
|
-
### Hero Section Example
|
|
245
|
-
|
|
246
|
-
```jsx
|
|
247
|
-
<View
|
|
248
|
-
backgroundColor="color.gray.50"
|
|
249
|
-
padding={48}
|
|
250
|
-
borderRadius={8}
|
|
251
|
-
width="100%"
|
|
252
|
-
>
|
|
253
|
-
<Vertical gap={24} maxWidth={800} marginX="auto">
|
|
254
|
-
<Title
|
|
255
|
-
size="xl"
|
|
256
|
-
animate={{
|
|
257
|
-
from: { opacity: 0 },
|
|
258
|
-
to: { opacity: 1 },
|
|
259
|
-
duration: '1s',
|
|
260
|
-
iterationCount: '1',
|
|
261
|
-
}}
|
|
262
|
-
highlightText="Platform"
|
|
263
|
-
highlightStyle="gradient"
|
|
264
|
-
highlightColor="theme.primary"
|
|
265
|
-
highlightSecondaryColor="theme.secondary"
|
|
266
|
-
centered
|
|
267
|
-
>
|
|
268
|
-
Welcome to Our Platform
|
|
269
|
-
</Title>
|
|
270
|
-
|
|
271
|
-
<Text
|
|
272
|
-
textAlign="center"
|
|
273
|
-
color="color.gray.600"
|
|
274
|
-
fontSize={20}
|
|
275
|
-
lineHeight={28}
|
|
276
|
-
>
|
|
277
|
-
Build beautiful, responsive, and interactive user interfaces with our
|
|
278
|
-
powerful component library.
|
|
279
|
-
</Text>
|
|
280
|
-
</Vertical>
|
|
281
|
-
</View>
|
|
282
|
-
```
|
|
283
|
-
|
|
284
|
-
## Accessibility
|
|
285
|
-
|
|
286
|
-
The Title component:
|
|
287
|
-
|
|
288
|
-
- Uses semantic heading elements (`<h1>`) for proper document structure
|
|
289
|
-
- Maintains proper color contrast for highlighted text
|
|
290
|
-
- Supports keyboard navigation and focus management
|
|
291
|
-
- Works with screen readers by using appropriate ARIA attributes
|
|
292
|
-
|
|
293
|
-
## Best Practices
|
|
294
|
-
|
|
295
|
-
- Use the Title component for main headings and important text that needs emphasis
|
|
296
|
-
- Choose highlight styles that maintain good contrast with the background
|
|
297
|
-
- Use animations sparingly to avoid distracting users
|
|
298
|
-
- Consider using responsive sizing for different screen sizes
|
|
299
|
-
- Limit the use of alternating text to avoid confusion
|
|
300
|
-
- Ensure that any animations respect user preferences for reduced motion
|
|
301
|
-
- Use semantic colors from the theme system rather than hardcoded values
|