@affinda/react 0.0.12 → 0.0.14
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 +326 -8
- package/dist/components/PaperclipDecoration.d.ts +8 -0
- package/dist/components/PaperclipDecoration.js +10 -0
- package/dist/generated/components.d.ts +21 -0
- package/dist/generated/components.js +63 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.js +3 -1
- package/package.json +7 -4
package/README.md
CHANGED
|
@@ -80,18 +80,336 @@ import { Button, Heading, TypographyLockup } from '@affinda/react';
|
|
|
80
80
|
|
|
81
81
|
### Available Components
|
|
82
82
|
|
|
83
|
-
|
|
84
|
-
- **
|
|
85
|
-
- **
|
|
86
|
-
- **Heading** / AfHeading - Typography headings (H1-H6)
|
|
87
|
-
- **Text** / AfText - Body text components
|
|
88
|
-
- **TypographyLockup** / AfTypographyLockup - Composite heading + text + button layouts
|
|
83
|
+
**Layout & Structure:**
|
|
84
|
+
- **HeroSection** / AfHeroSection - Hero sections for marketing pages
|
|
85
|
+
- **Section** / AfSection - Page sections with consistent spacing
|
|
89
86
|
- **Container** / AfContainer - Layout containers with max-width
|
|
90
87
|
- **AspectRatio** / AfAspectRatio - Maintain aspect ratios for media
|
|
88
|
+
|
|
89
|
+
**Navigation:**
|
|
90
|
+
- **Navbar** / AfNavbar - Navigation bar with mobile hamburger menu
|
|
91
|
+
- **NavItem** / AfNavItem - Navigation items
|
|
92
|
+
|
|
93
|
+
**Typography:**
|
|
94
|
+
- **Heading** / AfHeading - Typography headings (H1-H6) with theme support
|
|
95
|
+
- **Text** / AfText - Body text components with theme support
|
|
96
|
+
- **TypographyLockup** / AfTypographyLockup - Composite heading + text + button layouts
|
|
97
|
+
|
|
98
|
+
**Buttons:**
|
|
99
|
+
- **Button** / AfButton - Primary buttons with variants, icons, and dark background support
|
|
100
|
+
- **ButtonGroup** / AfButtonGroup - Group multiple buttons together
|
|
101
|
+
- **IconButton** / AfIconButton - Icon-only buttons
|
|
102
|
+
|
|
103
|
+
**Cards & Content:**
|
|
104
|
+
- **Card** / AfCard - Content cards with optional backgrounds and photo variants
|
|
91
105
|
- **ColorSwatch** / AfColorSwatch - Display color swatches
|
|
106
|
+
|
|
107
|
+
**Social Proof:**
|
|
108
|
+
- **ClientCarousel** / AfClientCarousel - Infinite scrolling carousel for client logos
|
|
109
|
+
- **LogoWell** / AfLogoWell - Rounded container for client logos
|
|
110
|
+
- **Testimonial** / AfTestimonial - Customer testimonials with background images, stats, and quotes
|
|
111
|
+
- **TestimonialCarousel** / AfTestimonialCarousel - Carousel for sliding between multiple testimonials
|
|
112
|
+
- **TestimonialStat** / AfTestimonialStat - Individual statistics within testimonials
|
|
113
|
+
|
|
114
|
+
**Brand:**
|
|
92
115
|
- **Logo** / AfLogo - Affinda logo component
|
|
93
|
-
|
|
94
|
-
|
|
116
|
+
|
|
117
|
+
**Decorative:**
|
|
118
|
+
- **PaperclipDecoration** - Decorative paperclip vector for hero sections
|
|
119
|
+
|
|
120
|
+
## Quick Start Components
|
|
121
|
+
|
|
122
|
+
### HeroSection
|
|
123
|
+
|
|
124
|
+
The hero section component makes it easy to create marketing page heroes with consistent styling.
|
|
125
|
+
|
|
126
|
+
```tsx
|
|
127
|
+
import { HeroSection, Heading, Text, Button, PaperclipDecoration } from '@affinda/react';
|
|
128
|
+
|
|
129
|
+
<HeroSection variant="dark" withDecoration={true} minHeight="60vh">
|
|
130
|
+
<PaperclipDecoration slot="decoration" />
|
|
131
|
+
<Heading level="1" theme="dark" align="center">
|
|
132
|
+
Harness AI to transform business processes
|
|
133
|
+
</Heading>
|
|
134
|
+
<Text variant="large" theme="dark" align="center">
|
|
135
|
+
Around the world, leading enterprises use Affinda's AI agents...
|
|
136
|
+
</Text>
|
|
137
|
+
<div style={{ display: 'flex', gap: '12px', justifyContent: 'center', marginTop: '2rem' }}>
|
|
138
|
+
<Button variant="primary">Discover the platform</Button>
|
|
139
|
+
<Button variant="secondary">Explore solutions</Button>
|
|
140
|
+
</div>
|
|
141
|
+
</HeroSection>
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
**Props:**
|
|
145
|
+
- `variant`: `"light"` | `"dark"` (default: `"dark"`)
|
|
146
|
+
- `withDecoration`: boolean - Shows decoration slot
|
|
147
|
+
- `minHeight`: string - CSS min-height value
|
|
148
|
+
|
|
149
|
+
**Features:**
|
|
150
|
+
- Automatically applies correct text colors for dark backgrounds
|
|
151
|
+
- Built-in padding that accounts for floating navbar
|
|
152
|
+
- Responsive on mobile
|
|
153
|
+
|
|
154
|
+
### Section
|
|
155
|
+
|
|
156
|
+
The section component provides consistent spacing and backgrounds for page sections.
|
|
157
|
+
|
|
158
|
+
```tsx
|
|
159
|
+
import { Section, Heading, Text } from '@affinda/react';
|
|
160
|
+
|
|
161
|
+
<Section padding="default" background="level1" container={true}>
|
|
162
|
+
<Heading level="2" align="center">Work smarter, grow faster</Heading>
|
|
163
|
+
<Text variant="large" align="center">Feature content here...</Text>
|
|
164
|
+
</Section>
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
**Props:**
|
|
168
|
+
- `padding`: `"tight"` (48px) | `"default"` (96px) | `"loose"` (120px)
|
|
169
|
+
- `background`: `"white"` | `"level1"` | `"dark"` | `"inkwell"`
|
|
170
|
+
- `container`: boolean - Auto-wraps content in Container
|
|
171
|
+
|
|
172
|
+
### Card with Photo Background
|
|
173
|
+
|
|
174
|
+
Cards now support photo backgrounds with gradient overlays.
|
|
175
|
+
|
|
176
|
+
```tsx
|
|
177
|
+
import { Card, Heading, Text } from '@affinda/react';
|
|
178
|
+
|
|
179
|
+
// Light background card
|
|
180
|
+
<Card backgroundColor="var(--colour-background-level1)">
|
|
181
|
+
<Heading level="3">Automate any document with 99%+ accuracy</Heading>
|
|
182
|
+
<Text variant="large">Extract any information...</Text>
|
|
183
|
+
<img src="screenshot.webp" alt="Feature" />
|
|
184
|
+
</Card>
|
|
185
|
+
|
|
186
|
+
// Photo background card with dark overlay
|
|
187
|
+
<Card backgroundImage="photo.jpg" darkOverlay={true}>
|
|
188
|
+
<Heading level="3">Build models in minutes</Heading>
|
|
189
|
+
<Text variant="large">Affinda is the only AI platform...</Text>
|
|
190
|
+
</Card>
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
**Props:**
|
|
194
|
+
- `backgroundColor`: CSS color or variable
|
|
195
|
+
- `backgroundImage`: URL to background image
|
|
196
|
+
- `darkOverlay`: boolean - Applies gradient overlay with white text
|
|
197
|
+
|
|
198
|
+
## Component Guide
|
|
199
|
+
|
|
200
|
+
### When to Use Each Component
|
|
201
|
+
|
|
202
|
+
#### Layout & Structure
|
|
203
|
+
|
|
204
|
+
**Container**
|
|
205
|
+
- Use for all page sections to maintain consistent max-width and horizontal padding
|
|
206
|
+
- Creates responsive layouts that don't span the full viewport on large screens
|
|
207
|
+
- Best practice: Wrap each major section of your page in a Container
|
|
208
|
+
|
|
209
|
+
```tsx
|
|
210
|
+
<Container>
|
|
211
|
+
<Heading level="2">Section Title</Heading>
|
|
212
|
+
<Text>Section content goes here...</Text>
|
|
213
|
+
</Container>
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
**AspectRatio**
|
|
217
|
+
- Maintain consistent dimensions for images, videos, or media
|
|
218
|
+
- Prevents layout shift during content loading
|
|
219
|
+
- Common ratios: `16/9` (video), `1/1` (square), `4/3` (legacy video)
|
|
220
|
+
|
|
221
|
+
```tsx
|
|
222
|
+
<AspectRatio ratio="16/9">
|
|
223
|
+
<img src="video-thumbnail.jpg" alt="Preview" />
|
|
224
|
+
</AspectRatio>
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
**Card**
|
|
228
|
+
- Group related content with visual separation
|
|
229
|
+
- Use for feature highlights, product listings, or content previews
|
|
230
|
+
- Supports borders and elevation for depth
|
|
231
|
+
|
|
232
|
+
```tsx
|
|
233
|
+
<Card>
|
|
234
|
+
<Heading level="3">Feature Title</Heading>
|
|
235
|
+
<Text>Feature description...</Text>
|
|
236
|
+
</Card>
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
#### Typography
|
|
240
|
+
|
|
241
|
+
**Heading**
|
|
242
|
+
- Use semantic heading levels (1-6) for SEO and accessibility
|
|
243
|
+
- Level 1: Page title (use once per page)
|
|
244
|
+
- Level 2: Major sections
|
|
245
|
+
- Level 3-4: Subsections
|
|
246
|
+
- Never skip heading levels
|
|
247
|
+
|
|
248
|
+
```tsx
|
|
249
|
+
<Heading level="1">Page Title</Heading>
|
|
250
|
+
<Heading level="2">Section Title</Heading>
|
|
251
|
+
<Heading level="3">Subsection</Heading>
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
**Text**
|
|
255
|
+
- Use for all body text, descriptions, and paragraphs
|
|
256
|
+
- Variants: `default`, `small`, `large`
|
|
257
|
+
- Automatically uses NeuSans font
|
|
258
|
+
|
|
259
|
+
```tsx
|
|
260
|
+
<Text variant="large">Introductory paragraph with emphasis</Text>
|
|
261
|
+
<Text>Standard body text</Text>
|
|
262
|
+
<Text variant="small">Fine print or captions</Text>
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
**TypographyLockup**
|
|
266
|
+
- Composite component for hero sections and major content blocks
|
|
267
|
+
- Automatically handles heading + description + buttons layout
|
|
268
|
+
- Supports different breakpoints and alignments
|
|
269
|
+
- Use for: Hero sections, feature highlights, CTAs
|
|
270
|
+
|
|
271
|
+
```tsx
|
|
272
|
+
<TypographyLockup
|
|
273
|
+
headingSize={1}
|
|
274
|
+
textAlignment="center"
|
|
275
|
+
buttonAlignment="horizontal"
|
|
276
|
+
>
|
|
277
|
+
<Heading level="1">Automate Your Workflow</Heading>
|
|
278
|
+
<Text slot="description">Extract data from documents in seconds</Text>
|
|
279
|
+
<div slot="buttons">
|
|
280
|
+
<Button variant="primary">Get Started</Button>
|
|
281
|
+
<Button variant="secondary">Learn More</Button>
|
|
282
|
+
</div>
|
|
283
|
+
</TypographyLockup>
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
#### Buttons & Actions
|
|
287
|
+
|
|
288
|
+
**Button**
|
|
289
|
+
- Primary actions: Use `variant="primary"` (sparingly, 1-2 per screen)
|
|
290
|
+
- Secondary actions: Use `variant="secondary"`
|
|
291
|
+
- Sizes: `small`, `default`, `large`
|
|
292
|
+
- Can include icons in left or right slots
|
|
293
|
+
|
|
294
|
+
```tsx
|
|
295
|
+
<Button variant="primary" size="large">Sign Up Now</Button>
|
|
296
|
+
<Button variant="secondary">Learn More</Button>
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
**ButtonGroup**
|
|
300
|
+
- Group related buttons with consistent spacing
|
|
301
|
+
- Maintains visual hierarchy and alignment
|
|
302
|
+
|
|
303
|
+
```tsx
|
|
304
|
+
<ButtonGroup>
|
|
305
|
+
<Button variant="primary">Save</Button>
|
|
306
|
+
<Button variant="secondary">Cancel</Button>
|
|
307
|
+
</ButtonGroup>
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
**IconButton**
|
|
311
|
+
- Use for toolbar actions, navigation controls, or when space is limited
|
|
312
|
+
- Always include aria-label for accessibility
|
|
313
|
+
- Common uses: Close buttons, navigation arrows, menu toggles
|
|
314
|
+
|
|
315
|
+
```tsx
|
|
316
|
+
<IconButton variant="secondary" aria-label="Close dialog">
|
|
317
|
+
<svg>...</svg>
|
|
318
|
+
</IconButton>
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
#### Navigation
|
|
322
|
+
|
|
323
|
+
**Navbar**
|
|
324
|
+
- Site-wide navigation header
|
|
325
|
+
- Responsive design with mobile menu support
|
|
326
|
+
- Include Logo in the `logo` slot
|
|
327
|
+
|
|
328
|
+
```tsx
|
|
329
|
+
<Navbar>
|
|
330
|
+
<Logo slot="logo" />
|
|
331
|
+
<NavItem hierarchy="primary" href="/">Home</NavItem>
|
|
332
|
+
<NavItem hierarchy="primary" href="/about">About</NavItem>
|
|
333
|
+
<NavItem hierarchy="secondary" href="/login">Log In</NavItem>
|
|
334
|
+
</Navbar>
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
**NavItem**
|
|
338
|
+
- Individual navigation links
|
|
339
|
+
- Hierarchy: `primary` (main nav), `secondary` (utility nav)
|
|
340
|
+
- Variant: Controls visual style
|
|
341
|
+
|
|
342
|
+
#### Social Proof & Testimonials
|
|
343
|
+
|
|
344
|
+
**Testimonial**
|
|
345
|
+
- Showcase customer success stories with rich media
|
|
346
|
+
- Include: background image, logo, quote, attribution, and statistics
|
|
347
|
+
- Use within TestimonialCarousel for multiple testimonials
|
|
348
|
+
|
|
349
|
+
```tsx
|
|
350
|
+
<Testimonial
|
|
351
|
+
backgroundImage="https://example.com/background.jpg"
|
|
352
|
+
logoImage="https://example.com/company-logo.png"
|
|
353
|
+
quote="Affinda transformed our document processing workflow."
|
|
354
|
+
attribution="– Jane Doe, CEO, Company Name"
|
|
355
|
+
readMoreLink="https://example.com/case-study"
|
|
356
|
+
>
|
|
357
|
+
<div slot="stats">
|
|
358
|
+
<TestimonialStat value="95%" description="reduction in processing time" />
|
|
359
|
+
<TestimonialStat value="10×" description="increase in throughput" />
|
|
360
|
+
</div>
|
|
361
|
+
</Testimonial>
|
|
362
|
+
```
|
|
363
|
+
|
|
364
|
+
**TestimonialCarousel**
|
|
365
|
+
- Automatically handles navigation between multiple testimonials
|
|
366
|
+
- Includes slide animations and progress indicators
|
|
367
|
+
- Navigation buttons positioned for optimal UX
|
|
368
|
+
- Just wrap multiple Testimonial components
|
|
369
|
+
|
|
370
|
+
```tsx
|
|
371
|
+
<TestimonialCarousel>
|
|
372
|
+
<Testimonial {...testimonial1Props}>
|
|
373
|
+
<div slot="stats">...</div>
|
|
374
|
+
</Testimonial>
|
|
375
|
+
<Testimonial {...testimonial2Props}>
|
|
376
|
+
<div slot="stats">...</div>
|
|
377
|
+
</Testimonial>
|
|
378
|
+
</TestimonialCarousel>
|
|
379
|
+
```
|
|
380
|
+
|
|
381
|
+
**TestimonialStat**
|
|
382
|
+
- Display key metrics within testimonials
|
|
383
|
+
- Use 2-4 stats per testimonial for best impact
|
|
384
|
+
- Optional accent border for qualitative statements
|
|
385
|
+
|
|
386
|
+
```tsx
|
|
387
|
+
<TestimonialStat value="99%" description="accuracy rate" />
|
|
388
|
+
<TestimonialStat
|
|
389
|
+
value=""
|
|
390
|
+
description="Reduced manual errors significantly"
|
|
391
|
+
accentBorder={true}
|
|
392
|
+
/>
|
|
393
|
+
```
|
|
394
|
+
|
|
395
|
+
#### Branding
|
|
396
|
+
|
|
397
|
+
**Logo**
|
|
398
|
+
- Affinda logo component with consistent sizing
|
|
399
|
+
- Use in Navbar and footer
|
|
400
|
+
- Automatically handles light/dark variants
|
|
401
|
+
|
|
402
|
+
```tsx
|
|
403
|
+
<Logo />
|
|
404
|
+
```
|
|
405
|
+
|
|
406
|
+
**ColorSwatch**
|
|
407
|
+
- Display color palettes or design tokens
|
|
408
|
+
- Useful for style guides and documentation
|
|
409
|
+
|
|
410
|
+
```tsx
|
|
411
|
+
<ColorSwatch color="#C6D5D1" label="Mist Green" />
|
|
412
|
+
```
|
|
95
413
|
|
|
96
414
|
### Icons
|
|
97
415
|
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface PaperclipDecorationProps {
|
|
2
|
+
className?: string;
|
|
3
|
+
style?: Record<string, any>;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Decorative paperclip vector graphic for hero sections
|
|
7
|
+
*/
|
|
8
|
+
export declare function PaperclipDecoration({ className, style }: PaperclipDecorationProps): any;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// @ts-nocheck
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
/**
|
|
5
|
+
* Decorative paperclip vector graphic for hero sections
|
|
6
|
+
*/
|
|
7
|
+
export function PaperclipDecoration({ className, style }) {
|
|
8
|
+
const svgStyle = Object.assign({ display: 'block' }, style || {});
|
|
9
|
+
return (_jsx("svg", { preserveAspectRatio: "none", width: "100%", height: "100%", style: svgStyle, viewBox: "0 0 1212 753", fill: "none", xmlns: "http://www.w3.org/2000/svg", className: className, "aria-hidden": true, children: _jsx("path", { d: "M1102.14 107.875C1031.8 37.1138 939.128 -1.47247 840.61 0.0430067H358.674L262.104 156.72H841.87C842.558 156.72 843.36 156.72 844.047 156.72C900.638 156.72 953.791 178.869 994 219.32C1035.24 260.821 1058.04 316.311 1058.04 375.647C1058.04 497.468 960.665 596.44 841.068 596.44H251.335C197.609 596.44 153.848 551.908 153.848 497.235C153.848 442.561 197.723 397.33 251.221 395.698H779.208L878.872 239.021H248.586C111.577 242.519 0 358.277 0 497.235C0 636.192 112.723 753 251.335 753H841.068C1045.55 753 1212 583.617 1212 375.531C1212 273.994 1173.05 178.985 1102.26 107.758L1102.14 107.875Z", fill: "white", fillOpacity: 0.06 }) }));
|
|
10
|
+
}
|
|
@@ -6,13 +6,20 @@ import { AfAspectRatio as AfAspectRatioElement } from "@affinda/wc/dist/componen
|
|
|
6
6
|
import { AfButtonGroup as AfButtonGroupElement } from "@affinda/wc/dist/components/af-button-group.js";
|
|
7
7
|
import { AfButton as AfButtonElement } from "@affinda/wc/dist/components/af-button.js";
|
|
8
8
|
import { AfCard as AfCardElement } from "@affinda/wc/dist/components/af-card.js";
|
|
9
|
+
import { AfClientCarousel as AfClientCarouselElement } from "@affinda/wc/dist/components/af-client-carousel.js";
|
|
9
10
|
import { AfColorSwatch as AfColorSwatchElement } from "@affinda/wc/dist/components/af-color-swatch.js";
|
|
10
11
|
import { AfContainer as AfContainerElement } from "@affinda/wc/dist/components/af-container.js";
|
|
11
12
|
import { AfHeading as AfHeadingElement } from "@affinda/wc/dist/components/af-heading.js";
|
|
13
|
+
import { AfHeroSection as AfHeroSectionElement } from "@affinda/wc/dist/components/af-hero-section.js";
|
|
12
14
|
import { AfIconButton as AfIconButtonElement } from "@affinda/wc/dist/components/af-icon-button.js";
|
|
15
|
+
import { AfLogoWell as AfLogoWellElement } from "@affinda/wc/dist/components/af-logo-well.js";
|
|
13
16
|
import { AfLogo as AfLogoElement } from "@affinda/wc/dist/components/af-logo.js";
|
|
14
17
|
import { AfNavItem as AfNavItemElement } from "@affinda/wc/dist/components/af-nav-item.js";
|
|
15
18
|
import { AfNavbar as AfNavbarElement } from "@affinda/wc/dist/components/af-navbar.js";
|
|
19
|
+
import { AfSection as AfSectionElement } from "@affinda/wc/dist/components/af-section.js";
|
|
20
|
+
import { AfTestimonialCarousel as AfTestimonialCarouselElement } from "@affinda/wc/dist/components/af-testimonial-carousel.js";
|
|
21
|
+
import { AfTestimonialStat as AfTestimonialStatElement } from "@affinda/wc/dist/components/af-testimonial-stat.js";
|
|
22
|
+
import { AfTestimonial as AfTestimonialElement } from "@affinda/wc/dist/components/af-testimonial.js";
|
|
16
23
|
import { AfText as AfTextElement } from "@affinda/wc/dist/components/af-text.js";
|
|
17
24
|
import { AfTypographyLockup as AfTypographyLockupElement } from "@affinda/wc/dist/components/af-typography-lockup.js";
|
|
18
25
|
import type { StencilReactComponent } from '@stencil/react-output-target/runtime';
|
|
@@ -24,20 +31,34 @@ export type AfButtonGroupEvents = NonNullable<unknown>;
|
|
|
24
31
|
export declare const AfButtonGroup: StencilReactComponent<AfButtonGroupElement, AfButtonGroupEvents>;
|
|
25
32
|
export type AfCardEvents = NonNullable<unknown>;
|
|
26
33
|
export declare const AfCard: StencilReactComponent<AfCardElement, AfCardEvents>;
|
|
34
|
+
export type AfClientCarouselEvents = NonNullable<unknown>;
|
|
35
|
+
export declare const AfClientCarousel: StencilReactComponent<AfClientCarouselElement, AfClientCarouselEvents>;
|
|
27
36
|
export type AfColorSwatchEvents = NonNullable<unknown>;
|
|
28
37
|
export declare const AfColorSwatch: StencilReactComponent<AfColorSwatchElement, AfColorSwatchEvents>;
|
|
29
38
|
export type AfContainerEvents = NonNullable<unknown>;
|
|
30
39
|
export declare const AfContainer: StencilReactComponent<AfContainerElement, AfContainerEvents>;
|
|
31
40
|
export type AfHeadingEvents = NonNullable<unknown>;
|
|
32
41
|
export declare const AfHeading: StencilReactComponent<AfHeadingElement, AfHeadingEvents>;
|
|
42
|
+
export type AfHeroSectionEvents = NonNullable<unknown>;
|
|
43
|
+
export declare const AfHeroSection: StencilReactComponent<AfHeroSectionElement, AfHeroSectionEvents>;
|
|
33
44
|
export type AfIconButtonEvents = NonNullable<unknown>;
|
|
34
45
|
export declare const AfIconButton: StencilReactComponent<AfIconButtonElement, AfIconButtonEvents>;
|
|
35
46
|
export type AfLogoEvents = NonNullable<unknown>;
|
|
36
47
|
export declare const AfLogo: StencilReactComponent<AfLogoElement, AfLogoEvents>;
|
|
48
|
+
export type AfLogoWellEvents = NonNullable<unknown>;
|
|
49
|
+
export declare const AfLogoWell: StencilReactComponent<AfLogoWellElement, AfLogoWellEvents>;
|
|
37
50
|
export type AfNavItemEvents = NonNullable<unknown>;
|
|
38
51
|
export declare const AfNavItem: StencilReactComponent<AfNavItemElement, AfNavItemEvents>;
|
|
39
52
|
export type AfNavbarEvents = NonNullable<unknown>;
|
|
40
53
|
export declare const AfNavbar: StencilReactComponent<AfNavbarElement, AfNavbarEvents>;
|
|
54
|
+
export type AfSectionEvents = NonNullable<unknown>;
|
|
55
|
+
export declare const AfSection: StencilReactComponent<AfSectionElement, AfSectionEvents>;
|
|
56
|
+
export type AfTestimonialEvents = NonNullable<unknown>;
|
|
57
|
+
export declare const AfTestimonial: StencilReactComponent<AfTestimonialElement, AfTestimonialEvents>;
|
|
58
|
+
export type AfTestimonialCarouselEvents = NonNullable<unknown>;
|
|
59
|
+
export declare const AfTestimonialCarousel: StencilReactComponent<AfTestimonialCarouselElement, AfTestimonialCarouselEvents>;
|
|
60
|
+
export type AfTestimonialStatEvents = NonNullable<unknown>;
|
|
61
|
+
export declare const AfTestimonialStat: StencilReactComponent<AfTestimonialStatElement, AfTestimonialStatEvents>;
|
|
41
62
|
export type AfTextEvents = NonNullable<unknown>;
|
|
42
63
|
export declare const AfText: StencilReactComponent<AfTextElement, AfTextEvents>;
|
|
43
64
|
export type AfTypographyLockupEvents = NonNullable<unknown>;
|
|
@@ -8,13 +8,20 @@ import { AfAspectRatio as AfAspectRatioElement, defineCustomElement as defineAfA
|
|
|
8
8
|
import { AfButtonGroup as AfButtonGroupElement, defineCustomElement as defineAfButtonGroup } from "@affinda/wc/dist/components/af-button-group.js";
|
|
9
9
|
import { AfButton as AfButtonElement, defineCustomElement as defineAfButton } from "@affinda/wc/dist/components/af-button.js";
|
|
10
10
|
import { AfCard as AfCardElement, defineCustomElement as defineAfCard } from "@affinda/wc/dist/components/af-card.js";
|
|
11
|
+
import { AfClientCarousel as AfClientCarouselElement, defineCustomElement as defineAfClientCarousel } from "@affinda/wc/dist/components/af-client-carousel.js";
|
|
11
12
|
import { AfColorSwatch as AfColorSwatchElement, defineCustomElement as defineAfColorSwatch } from "@affinda/wc/dist/components/af-color-swatch.js";
|
|
12
13
|
import { AfContainer as AfContainerElement, defineCustomElement as defineAfContainer } from "@affinda/wc/dist/components/af-container.js";
|
|
13
14
|
import { AfHeading as AfHeadingElement, defineCustomElement as defineAfHeading } from "@affinda/wc/dist/components/af-heading.js";
|
|
15
|
+
import { AfHeroSection as AfHeroSectionElement, defineCustomElement as defineAfHeroSection } from "@affinda/wc/dist/components/af-hero-section.js";
|
|
14
16
|
import { AfIconButton as AfIconButtonElement, defineCustomElement as defineAfIconButton } from "@affinda/wc/dist/components/af-icon-button.js";
|
|
17
|
+
import { AfLogoWell as AfLogoWellElement, defineCustomElement as defineAfLogoWell } from "@affinda/wc/dist/components/af-logo-well.js";
|
|
15
18
|
import { AfLogo as AfLogoElement, defineCustomElement as defineAfLogo } from "@affinda/wc/dist/components/af-logo.js";
|
|
16
19
|
import { AfNavItem as AfNavItemElement, defineCustomElement as defineAfNavItem } from "@affinda/wc/dist/components/af-nav-item.js";
|
|
17
20
|
import { AfNavbar as AfNavbarElement, defineCustomElement as defineAfNavbar } from "@affinda/wc/dist/components/af-navbar.js";
|
|
21
|
+
import { AfSection as AfSectionElement, defineCustomElement as defineAfSection } from "@affinda/wc/dist/components/af-section.js";
|
|
22
|
+
import { AfTestimonialCarousel as AfTestimonialCarouselElement, defineCustomElement as defineAfTestimonialCarousel } from "@affinda/wc/dist/components/af-testimonial-carousel.js";
|
|
23
|
+
import { AfTestimonialStat as AfTestimonialStatElement, defineCustomElement as defineAfTestimonialStat } from "@affinda/wc/dist/components/af-testimonial-stat.js";
|
|
24
|
+
import { AfTestimonial as AfTestimonialElement, defineCustomElement as defineAfTestimonial } from "@affinda/wc/dist/components/af-testimonial.js";
|
|
18
25
|
import { AfText as AfTextElement, defineCustomElement as defineAfText } from "@affinda/wc/dist/components/af-text.js";
|
|
19
26
|
import { AfTypographyLockup as AfTypographyLockupElement, defineCustomElement as defineAfTypographyLockup } from "@affinda/wc/dist/components/af-typography-lockup.js";
|
|
20
27
|
import { createComponent } from '@stencil/react-output-target/runtime';
|
|
@@ -51,6 +58,14 @@ export const AfCard = /*@__PURE__*/ createComponent({
|
|
|
51
58
|
events: {},
|
|
52
59
|
defineCustomElement: defineAfCard
|
|
53
60
|
});
|
|
61
|
+
export const AfClientCarousel = /*@__PURE__*/ createComponent({
|
|
62
|
+
tagName: 'af-client-carousel',
|
|
63
|
+
elementClass: AfClientCarouselElement,
|
|
64
|
+
// @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
|
|
65
|
+
react: React,
|
|
66
|
+
events: {},
|
|
67
|
+
defineCustomElement: defineAfClientCarousel
|
|
68
|
+
});
|
|
54
69
|
export const AfColorSwatch = /*@__PURE__*/ createComponent({
|
|
55
70
|
tagName: 'af-color-swatch',
|
|
56
71
|
elementClass: AfColorSwatchElement,
|
|
@@ -75,6 +90,14 @@ export const AfHeading = /*@__PURE__*/ createComponent({
|
|
|
75
90
|
events: {},
|
|
76
91
|
defineCustomElement: defineAfHeading
|
|
77
92
|
});
|
|
93
|
+
export const AfHeroSection = /*@__PURE__*/ createComponent({
|
|
94
|
+
tagName: 'af-hero-section',
|
|
95
|
+
elementClass: AfHeroSectionElement,
|
|
96
|
+
// @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
|
|
97
|
+
react: React,
|
|
98
|
+
events: {},
|
|
99
|
+
defineCustomElement: defineAfHeroSection
|
|
100
|
+
});
|
|
78
101
|
export const AfIconButton = /*@__PURE__*/ createComponent({
|
|
79
102
|
tagName: 'af-icon-button',
|
|
80
103
|
elementClass: AfIconButtonElement,
|
|
@@ -91,6 +114,14 @@ export const AfLogo = /*@__PURE__*/ createComponent({
|
|
|
91
114
|
events: {},
|
|
92
115
|
defineCustomElement: defineAfLogo
|
|
93
116
|
});
|
|
117
|
+
export const AfLogoWell = /*@__PURE__*/ createComponent({
|
|
118
|
+
tagName: 'af-logo-well',
|
|
119
|
+
elementClass: AfLogoWellElement,
|
|
120
|
+
// @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
|
|
121
|
+
react: React,
|
|
122
|
+
events: {},
|
|
123
|
+
defineCustomElement: defineAfLogoWell
|
|
124
|
+
});
|
|
94
125
|
export const AfNavItem = /*@__PURE__*/ createComponent({
|
|
95
126
|
tagName: 'af-nav-item',
|
|
96
127
|
elementClass: AfNavItemElement,
|
|
@@ -107,6 +138,38 @@ export const AfNavbar = /*@__PURE__*/ createComponent({
|
|
|
107
138
|
events: {},
|
|
108
139
|
defineCustomElement: defineAfNavbar
|
|
109
140
|
});
|
|
141
|
+
export const AfSection = /*@__PURE__*/ createComponent({
|
|
142
|
+
tagName: 'af-section',
|
|
143
|
+
elementClass: AfSectionElement,
|
|
144
|
+
// @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
|
|
145
|
+
react: React,
|
|
146
|
+
events: {},
|
|
147
|
+
defineCustomElement: defineAfSection
|
|
148
|
+
});
|
|
149
|
+
export const AfTestimonial = /*@__PURE__*/ createComponent({
|
|
150
|
+
tagName: 'af-testimonial',
|
|
151
|
+
elementClass: AfTestimonialElement,
|
|
152
|
+
// @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
|
|
153
|
+
react: React,
|
|
154
|
+
events: {},
|
|
155
|
+
defineCustomElement: defineAfTestimonial
|
|
156
|
+
});
|
|
157
|
+
export const AfTestimonialCarousel = /*@__PURE__*/ createComponent({
|
|
158
|
+
tagName: 'af-testimonial-carousel',
|
|
159
|
+
elementClass: AfTestimonialCarouselElement,
|
|
160
|
+
// @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
|
|
161
|
+
react: React,
|
|
162
|
+
events: {},
|
|
163
|
+
defineCustomElement: defineAfTestimonialCarousel
|
|
164
|
+
});
|
|
165
|
+
export const AfTestimonialStat = /*@__PURE__*/ createComponent({
|
|
166
|
+
tagName: 'af-testimonial-stat',
|
|
167
|
+
elementClass: AfTestimonialStatElement,
|
|
168
|
+
// @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
|
|
169
|
+
react: React,
|
|
170
|
+
events: {},
|
|
171
|
+
defineCustomElement: defineAfTestimonialStat
|
|
172
|
+
});
|
|
110
173
|
export const AfText = /*@__PURE__*/ createComponent({
|
|
111
174
|
tagName: 'af-text',
|
|
112
175
|
elementClass: AfTextElement,
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export * from './generated/components.js';
|
|
2
|
-
export { AfAspectRatio as AspectRatio, AfButton as Button, AfButtonGroup as ButtonGroup, AfCard as Card, AfColorSwatch as ColorSwatch, AfContainer as Container, AfHeading as Heading, AfIconButton as IconButton, AfLogo as Logo, AfNavItem as NavItem, AfNavbar as Navbar, AfText as Text, AfTypographyLockup as TypographyLockup } from './generated/components.js';
|
|
2
|
+
export { AfAspectRatio as AspectRatio, AfButton as Button, AfButtonGroup as ButtonGroup, AfCard as Card, AfClientCarousel as ClientCarousel, AfColorSwatch as ColorSwatch, AfContainer as Container, AfHeading as Heading, AfHeroSection as HeroSection, AfIconButton as IconButton, AfLogo as Logo, AfLogoWell as LogoWell, AfNavItem as NavItem, AfNavbar as Navbar, AfSection as Section, AfText as Text, AfTestimonial as Testimonial, AfTestimonialCarousel as TestimonialCarousel, AfTestimonialStat as TestimonialStat, AfTypographyLockup as TypographyLockup } from './generated/components.js';
|
|
3
3
|
export * from '@affinda/icons/react';
|
|
4
|
+
export { PaperclipDecoration } from './components/PaperclipDecoration';
|
package/dist/index.js
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
export * from './generated/components.js';
|
|
3
3
|
// Note: defineCustomElements should be imported directly from @affinda/wc/loader/index.js in your app
|
|
4
4
|
// Re-export components without the 'Af' prefix for cleaner React usage
|
|
5
|
-
export { AfAspectRatio as AspectRatio, AfButton as Button, AfButtonGroup as ButtonGroup, AfCard as Card, AfColorSwatch as ColorSwatch, AfContainer as Container, AfHeading as Heading, AfIconButton as IconButton, AfLogo as Logo, AfNavItem as NavItem, AfNavbar as Navbar, AfText as Text, AfTypographyLockup as TypographyLockup } from './generated/components.js';
|
|
5
|
+
export { AfAspectRatio as AspectRatio, AfButton as Button, AfButtonGroup as ButtonGroup, AfCard as Card, AfClientCarousel as ClientCarousel, AfColorSwatch as ColorSwatch, AfContainer as Container, AfHeading as Heading, AfHeroSection as HeroSection, AfIconButton as IconButton, AfLogo as Logo, AfLogoWell as LogoWell, AfNavItem as NavItem, AfNavbar as Navbar, AfSection as Section, AfText as Text, AfTestimonial as Testimonial, AfTestimonialCarousel as TestimonialCarousel, AfTestimonialStat as TestimonialStat, AfTypographyLockup as TypographyLockup } from './generated/components.js';
|
|
6
6
|
// Re-export React icon components from icons package
|
|
7
7
|
export * from '@affinda/icons/react';
|
|
8
|
+
// Export custom React components
|
|
9
|
+
export { PaperclipDecoration } from './components/PaperclipDecoration';
|
package/package.json
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@affinda/react",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.14",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
|
-
"files": [
|
|
6
|
+
"files": [
|
|
7
|
+
"dist",
|
|
8
|
+
"README.md"
|
|
9
|
+
],
|
|
7
10
|
"main": "dist/index.js",
|
|
8
11
|
"module": "dist/index.js",
|
|
9
12
|
"types": "dist/index.d.ts",
|
|
@@ -13,11 +16,11 @@
|
|
|
13
16
|
},
|
|
14
17
|
"dependencies": {
|
|
15
18
|
"@affinda/icons": "^0.0.3",
|
|
16
|
-
"@affinda/wc": "^0.0.
|
|
19
|
+
"@affinda/wc": "^0.0.7",
|
|
17
20
|
"@stencil/react-output-target": "^1.2.0"
|
|
18
21
|
},
|
|
19
22
|
"scripts": {
|
|
20
23
|
"build": "pnpm run clean && tsc -p tsconfig.json",
|
|
21
24
|
"clean": "rm -rf dist"
|
|
22
25
|
}
|
|
23
|
-
}
|
|
26
|
+
}
|