tenara-ui-components 0.2.10 → 0.3.0
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 +48 -18
- package/dist/components/atoms/Breadcrumb/Breadcrumb.d.ts +14 -0
- package/dist/components/atoms/Breadcrumb/Breadcrumb.d.ts.map +1 -0
- package/dist/components/atoms/Breadcrumb/index.d.ts +3 -0
- package/dist/components/atoms/Breadcrumb/index.d.ts.map +1 -0
- package/dist/components/atoms/BulletList/BulletList.d.ts +22 -0
- package/dist/components/atoms/BulletList/BulletList.d.ts.map +1 -0
- package/dist/components/atoms/BulletList/index.d.ts +3 -0
- package/dist/components/atoms/BulletList/index.d.ts.map +1 -0
- package/dist/components/atoms/Button/Button.d.ts +8 -3
- package/dist/components/atoms/Button/Button.d.ts.map +1 -1
- package/dist/components/atoms/Button/buttonIcons.d.ts +5 -1
- package/dist/components/atoms/Button/buttonIcons.d.ts.map +1 -1
- package/dist/components/atoms/Button/index.d.ts +3 -0
- package/dist/components/atoms/Button/index.d.ts.map +1 -0
- package/dist/components/atoms/ButtonLink/ButtonLink.d.ts +5 -1
- package/dist/components/atoms/ButtonLink/ButtonLink.d.ts.map +1 -1
- package/dist/components/atoms/ColorTable/ColorTable.d.ts +3 -3
- package/dist/components/atoms/ColorTable/ColorTable.d.ts.map +1 -1
- package/dist/components/atoms/Container/Container.d.ts +15 -0
- package/dist/components/atoms/Container/Container.d.ts.map +1 -0
- package/dist/components/atoms/Container/index.d.ts +3 -0
- package/dist/components/atoms/Container/index.d.ts.map +1 -0
- package/dist/components/atoms/Divider/Divider.d.ts +20 -0
- package/dist/components/atoms/Divider/Divider.d.ts.map +1 -0
- package/dist/components/atoms/Divider/index.d.ts +3 -0
- package/dist/components/atoms/Divider/index.d.ts.map +1 -0
- package/dist/components/atoms/Grid/Grid.d.ts +41 -18
- package/dist/components/atoms/Grid/Grid.d.ts.map +1 -1
- package/dist/components/atoms/Heading/Heading.d.ts +8 -0
- package/dist/components/atoms/Heading/Heading.d.ts.map +1 -1
- package/dist/components/atoms/Icon/Icon.d.ts +42 -0
- package/dist/components/atoms/Icon/Icon.d.ts.map +1 -0
- package/dist/components/atoms/Icon/index.d.ts +3 -0
- package/dist/components/atoms/Icon/index.d.ts.map +1 -0
- package/dist/components/atoms/Media/Media.d.ts +63 -0
- package/dist/components/atoms/Media/Media.d.ts.map +1 -0
- package/dist/components/atoms/Media/index.d.ts +3 -0
- package/dist/components/atoms/Media/index.d.ts.map +1 -0
- package/dist/components/atoms/Modal/Modal.d.ts +24 -0
- package/dist/components/atoms/Modal/Modal.d.ts.map +1 -0
- package/dist/components/atoms/Modal/index.d.ts +3 -0
- package/dist/components/atoms/Modal/index.d.ts.map +1 -0
- package/dist/components/atoms/Paragraph/Paragraph.d.ts +41 -0
- package/dist/components/atoms/Paragraph/Paragraph.d.ts.map +1 -0
- package/dist/components/atoms/Paragraph/index.d.ts +3 -0
- package/dist/components/atoms/Paragraph/index.d.ts.map +1 -0
- package/dist/components/atoms/PlayButton/PlayButton.d.ts +26 -0
- package/dist/components/atoms/PlayButton/PlayButton.d.ts.map +1 -0
- package/dist/components/atoms/PlayButton/index.d.ts +3 -0
- package/dist/components/atoms/PlayButton/index.d.ts.map +1 -0
- package/dist/components/atoms/RichText/RichText.d.ts +21 -0
- package/dist/components/atoms/RichText/RichText.d.ts.map +1 -0
- package/dist/components/atoms/RichText/index.d.ts +3 -0
- package/dist/components/atoms/RichText/index.d.ts.map +1 -0
- package/dist/components/atoms/TestTierVariables/TestTierVariables.d.ts +11 -0
- package/dist/components/atoms/TestTierVariables/TestTierVariables.d.ts.map +1 -0
- package/dist/components/atoms/TestTierVariables/index.d.ts +3 -0
- package/dist/components/atoms/TestTierVariables/index.d.ts.map +1 -0
- package/dist/components/atoms/TextInput/TextInput.d.ts +44 -0
- package/dist/components/atoms/TextInput/TextInput.d.ts.map +1 -0
- package/dist/components/atoms/TextInput/index.d.ts +3 -0
- package/dist/components/atoms/TextInput/index.d.ts.map +1 -0
- package/dist/components/atoms/TextLink/TextLink.d.ts +1 -0
- package/dist/components/atoms/TextLink/TextLink.d.ts.map +1 -1
- package/dist/components/atoms/TextLink/index.d.ts +3 -0
- package/dist/components/atoms/TextLink/index.d.ts.map +1 -0
- package/dist/components/index.d.ts +36 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/molecules/Card/Card.d.ts +2 -0
- package/dist/components/molecules/Card/Card.d.ts.map +1 -1
- package/dist/components/molecules/Card/index.d.ts +3 -0
- package/dist/components/molecules/Card/index.d.ts.map +1 -0
- package/dist/components/molecules/Header/Header.d.ts +1 -0
- package/dist/components/molecules/Header/Header.d.ts.map +1 -1
- package/dist/components/molecules/Header/index.d.ts +3 -0
- package/dist/components/molecules/Header/index.d.ts.map +1 -0
- package/dist/components/molecules/Modal/Modal.d.ts +24 -0
- package/dist/components/molecules/Modal/Modal.d.ts.map +1 -0
- package/dist/components/molecules/Modal/index.d.ts +3 -0
- package/dist/components/molecules/Modal/index.d.ts.map +1 -0
- package/dist/components/molecules/VideoPlayer/VideoPlayer.d.ts +29 -0
- package/dist/components/molecules/VideoPlayer/VideoPlayer.d.ts.map +1 -0
- package/dist/components/molecules/VideoPlayer/index.d.ts +3 -0
- package/dist/components/molecules/VideoPlayer/index.d.ts.map +1 -0
- package/dist/components/molecules/primax/Banner/Banner.d.ts +42 -0
- package/dist/components/molecules/primax/Banner/Banner.d.ts.map +1 -0
- package/dist/components/molecules/primax/Banner/index.d.ts +3 -0
- package/dist/components/molecules/primax/Banner/index.d.ts.map +1 -0
- package/dist/components/molecules/primax/CTA/CTA.d.ts +28 -0
- package/dist/components/molecules/primax/CTA/CTA.d.ts.map +1 -0
- package/dist/components/molecules/primax/CTA/index.d.ts +3 -0
- package/dist/components/molecules/primax/CTA/index.d.ts.map +1 -0
- package/dist/components/molecules/primax/Card/Card.d.ts +46 -0
- package/dist/components/molecules/primax/Card/Card.d.ts.map +1 -0
- package/dist/components/molecules/primax/Card/index.d.ts +3 -0
- package/dist/components/molecules/primax/Card/index.d.ts.map +1 -0
- package/dist/components/molecules/primax/HalfColumn/HalfColumn.d.ts +60 -0
- package/dist/components/molecules/primax/HalfColumn/HalfColumn.d.ts.map +1 -0
- package/dist/components/molecules/primax/HalfColumn/index.d.ts +3 -0
- package/dist/components/molecules/primax/HalfColumn/index.d.ts.map +1 -0
- package/dist/components/molecules/primax/MediaBlock/MediaBlock.d.ts +45 -0
- package/dist/components/molecules/primax/MediaBlock/MediaBlock.d.ts.map +1 -0
- package/dist/components/molecules/primax/MediaBlock/index.d.ts +3 -0
- package/dist/components/molecules/primax/MediaBlock/index.d.ts.map +1 -0
- package/dist/components/molecules/primax/MediaPresentation/MediaPresentation.d.ts +8 -0
- package/dist/components/molecules/primax/MediaPresentation/MediaPresentation.d.ts.map +1 -0
- package/dist/components/molecules/primax/MediaPresentation/index.d.ts +2 -0
- package/dist/components/molecules/primax/MediaPresentation/index.d.ts.map +1 -0
- package/dist/components/molecules/primax/PlayIcon/PlayIcon.d.ts +11 -0
- package/dist/components/molecules/primax/PlayIcon/PlayIcon.d.ts.map +1 -0
- package/dist/components/molecules/primax/PlayIcon/index.d.ts +2 -0
- package/dist/components/molecules/primax/PlayIcon/index.d.ts.map +1 -0
- package/dist/components/molecules/primax/Subscribe/Subscribe.d.ts +42 -0
- package/dist/components/molecules/primax/Subscribe/Subscribe.d.ts.map +1 -0
- package/dist/components/molecules/primax/Subscribe/index.d.ts +3 -0
- package/dist/components/molecules/primax/Subscribe/index.d.ts.map +1 -0
- package/dist/components/molecules/primax/TwoColumn/TwoColumn.d.ts +37 -0
- package/dist/components/molecules/primax/TwoColumn/TwoColumn.d.ts.map +1 -0
- package/dist/components/molecules/primax/TwoColumn/index.d.ts +3 -0
- package/dist/components/molecules/primax/TwoColumn/index.d.ts.map +1 -0
- package/dist/components/molecules/primax/VideoSection/VideoSection.d.ts +31 -0
- package/dist/components/molecules/primax/VideoSection/VideoSection.d.ts.map +1 -0
- package/dist/components/molecules/primax/VideoSection/index.d.ts +3 -0
- package/dist/components/molecules/primax/VideoSection/index.d.ts.map +1 -0
- package/dist/components/pages/Page.d.ts +1 -0
- package/dist/components/pages/Page.d.ts.map +1 -1
- package/dist/components/pages/index.d.ts +2 -0
- package/dist/components/pages/index.d.ts.map +1 -0
- package/dist/components/utilities/ThemeInitializer.d.ts +2 -0
- package/dist/components/utilities/ThemeInitializer.d.ts.map +1 -0
- package/dist/components/utilities/index.d.ts +2 -0
- package/dist/components/utilities/index.d.ts.map +1 -0
- package/dist/index.css +1 -1
- package/dist/index.esm.css +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/themes/core/client-provider.d.ts +2 -2
- package/dist/themes/core/client-provider.d.ts.map +1 -1
- package/dist/themes/core/color-system.d.ts +58 -57
- package/dist/themes/core/color-system.d.ts.map +1 -1
- package/dist/themes/core/design-system-types.d.ts +42 -0
- package/dist/themes/core/design-system-types.d.ts.map +1 -0
- package/dist/themes/core/dynamic-types.d.ts +80 -0
- package/dist/themes/core/dynamic-types.d.ts.map +1 -0
- package/dist/themes/core/new-color-system.d.ts +17 -0
- package/dist/themes/core/new-color-system.d.ts.map +1 -0
- package/dist/themes/core/new-typography-system.d.ts +17 -0
- package/dist/themes/core/new-typography-system.d.ts.map +1 -0
- package/dist/themes/core/style-variable-schema.d.ts +107 -0
- package/dist/themes/core/style-variable-schema.d.ts.map +1 -0
- package/dist/themes/core/types.d.ts +74 -38
- package/dist/themes/core/types.d.ts.map +1 -1
- package/dist/themes/index.d.ts +1 -1
- package/dist/themes/index.d.ts.map +1 -1
- package/dist/themes/presets/advisors-plus.d.ts.map +1 -1
- package/dist/themes/presets/builders/color-builder.d.ts +109 -0
- package/dist/themes/presets/builders/color-builder.d.ts.map +1 -0
- package/dist/themes/presets/builders/component-builder.d.ts +154 -0
- package/dist/themes/presets/builders/component-builder.d.ts.map +1 -0
- package/dist/themes/presets/builders/index.d.ts +13 -0
- package/dist/themes/presets/builders/index.d.ts.map +1 -0
- package/dist/themes/presets/builders/typography-builder.d.ts +149 -0
- package/dist/themes/presets/builders/typography-builder.d.ts.map +1 -0
- package/dist/themes/presets/color-systems/advisors-plus-colors.d.ts.map +1 -1
- package/dist/themes/presets/color-systems/default-colors.d.ts +1 -1
- package/dist/themes/presets/color-systems/default-colors.d.ts.map +1 -1
- package/dist/themes/presets/color-systems/primax-colors.d.ts.map +1 -1
- package/dist/themes/presets/default.d.ts.map +1 -1
- package/dist/themes/presets/dynamic-advisors-plus.d.ts +40 -0
- package/dist/themes/presets/dynamic-advisors-plus.d.ts.map +1 -0
- package/dist/themes/presets/dynamic-default.d.ts +41 -0
- package/dist/themes/presets/dynamic-default.d.ts.map +1 -0
- package/dist/themes/presets/dynamic-primax.d.ts +38 -0
- package/dist/themes/presets/dynamic-primax.d.ts.map +1 -0
- package/dist/themes/presets/new-default.d.ts +7 -0
- package/dist/themes/presets/new-default.d.ts.map +1 -0
- package/dist/themes/presets/primax.d.ts.map +1 -1
- package/dist/themes/theme-loader.d.ts +15 -0
- package/dist/themes/theme-loader.d.ts.map +1 -0
- package/dist/themes/utils/generator.d.ts +2 -1
- package/dist/themes/utils/generator.d.ts.map +1 -1
- package/dist/themes/utils/helpers.d.ts +4 -2
- package/dist/themes/utils/helpers.d.ts.map +1 -1
- package/dist/themes/utils/migration.d.ts +94 -0
- package/dist/themes/utils/migration.d.ts.map +1 -0
- package/dist/themes/utils/new-generator.d.ts +27 -0
- package/dist/themes/utils/new-generator.d.ts.map +1 -0
- package/package.json +32 -37
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Tenara UI Components
|
|
2
2
|
|
|
3
|
-
A React component library with built-in theming system for multi-tenant applications.
|
|
3
|
+
A React component library with built-in theming system for multi-tenant applications. Framework-agnostic design that works with any React 18+ application.
|
|
4
4
|
|
|
5
5
|
## Installation
|
|
6
6
|
|
|
@@ -27,21 +27,17 @@ function App() {
|
|
|
27
27
|
}
|
|
28
28
|
```
|
|
29
29
|
|
|
30
|
-
**
|
|
30
|
+
**Any React Application:**
|
|
31
31
|
```tsx
|
|
32
|
-
//
|
|
32
|
+
// App.tsx or your root component
|
|
33
33
|
import { ThemeProvider, defaultTheme } from 'tenara-ui-components';
|
|
34
34
|
import 'tenara-ui-components/dist/index.css';
|
|
35
35
|
|
|
36
|
-
export default function
|
|
36
|
+
export default function App() {
|
|
37
37
|
return (
|
|
38
|
-
<
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
{children}
|
|
42
|
-
</ThemeProvider>
|
|
43
|
-
</body>
|
|
44
|
-
</html>
|
|
38
|
+
<ThemeProvider initialTheme={defaultTheme} initialThemeName="default">
|
|
39
|
+
{/* Your app content */}
|
|
40
|
+
</ThemeProvider>
|
|
45
41
|
);
|
|
46
42
|
}
|
|
47
43
|
```
|
|
@@ -81,19 +77,52 @@ import { ThemeProvider, defaultTheme } from 'tenara-ui-components';
|
|
|
81
77
|
- **Colors:** Cobalt Blue & Gold
|
|
82
78
|
- **Style:** Professional, modern
|
|
83
79
|
|
|
80
|
+
### Primax Theme
|
|
81
|
+
```tsx
|
|
82
|
+
import { ThemeProvider, primaxTheme } from 'tenara-ui-components';
|
|
83
|
+
|
|
84
|
+
<ThemeProvider initialTheme={primaxTheme}>
|
|
85
|
+
<App />
|
|
86
|
+
</ThemeProvider>
|
|
87
|
+
```
|
|
88
|
+
- **Colors:** Brilliant Blue (#0061FF), Neon Mint (#00FFD2), Electric Berry (#FE0066)
|
|
89
|
+
- **Typography:** Inter font family
|
|
90
|
+
- **Style:** Bold, energetic with decorative sparkle elements and L-shaped accent borders
|
|
84
91
|
|
|
85
92
|
## Components
|
|
86
93
|
|
|
87
94
|
### Atoms
|
|
88
|
-
- **Button** - Multi-variant button
|
|
89
|
-
- **
|
|
90
|
-
- **
|
|
95
|
+
- **Button** - Multi-variant button (general, secondary, link, danger) with size variants and dark mode
|
|
96
|
+
- **ButtonLink** - Button rendered as an anchor tag
|
|
97
|
+
- **TextLink** - Styled inline link component
|
|
98
|
+
- **Heading** - Typography component with semantic levels (h1-h6) and named variants (title, subtitle, componentTitle, etc.)
|
|
99
|
+
- **Paragraph** - Body text component with dark mode support
|
|
100
|
+
- **RichText** - Styled HTML content renderer for CMS-driven content
|
|
101
|
+
- **BulletList** - Styled list with custom icon support (e.g. FontAwesome sparkle)
|
|
102
|
+
- **Icon** - SVG icon wrapper with size (xs-xl) and color variants (primary, secondary, accent, etc.)
|
|
103
|
+
- **Breadcrumb** - Navigation breadcrumb with separator and dark mode support
|
|
104
|
+
- **Container** - Layout container with optional fluid (full-width) mode
|
|
105
|
+
- **Divider** - Section wrapper with background colors, patterns (dots/grid/sparks), and shape dividers
|
|
106
|
+
- **Grid** - Responsive layout grid system (Grid + GridItem)
|
|
107
|
+
- **Media** - Image and video rendering (native + Wistia embeds)
|
|
108
|
+
- **PlayButton** - Themeable play button wrapper with CSS custom property-driven state colors
|
|
91
109
|
- **BackgroundMedia** - Media background component
|
|
92
110
|
|
|
93
111
|
### Molecules
|
|
94
112
|
- **Header** - Navigation header with authentication
|
|
95
113
|
- **Card** - Content card with flexible styling
|
|
96
114
|
- **CTA** - Call-to-action component
|
|
115
|
+
- **VideoPlayer** - Video player with thumbnail and playback modes
|
|
116
|
+
|
|
117
|
+
#### Primax Tenant Components
|
|
118
|
+
- **Banner** - Multi-variant banner (hero, level2, level3, gated) with breadcrumbs, media, and background video support
|
|
119
|
+
- **BannerCTA** - Call-to-action section with small (heading + button) and large (heading + form slot) variants
|
|
120
|
+
- **VideoSection** - Two-column section with media block, bullet points, and description text
|
|
121
|
+
- **HalfColumn** - Pre-configured two-column layout with built-in media variants (sparkle, video, media) and multi-row support
|
|
122
|
+
- **TwoColumn** - Flexible two-column grid layout with multi-row support and vertical alignment
|
|
123
|
+
- **MediaBlock** - Media display with L-shaped accent border, sparkle overlay, Wistia popover, and mirror support (default + croppedSpark variants)
|
|
124
|
+
- **PrimaxCard** - Content card with icon, image (insights), and profile (team member) variants
|
|
125
|
+
- **PlayIcon** - Primax-branded SVG play button icon
|
|
97
126
|
|
|
98
127
|
### Pages
|
|
99
128
|
- **Page** - Complete page layout template
|
|
@@ -125,7 +154,8 @@ Each site gets:
|
|
|
125
154
|
|
|
126
155
|
## Framework Support
|
|
127
156
|
|
|
128
|
-
- ✅ **
|
|
129
|
-
- ✅ Vite + React
|
|
130
|
-
- ✅ Create React App
|
|
131
|
-
- ✅
|
|
157
|
+
- ✅ **React 18+** - Full compatibility with modern React
|
|
158
|
+
- ✅ **Vite + React** - Optimized for Vite-based projects
|
|
159
|
+
- ✅ **Create React App** - Works with CRA setups
|
|
160
|
+
- ✅ **Next.js 14/15** - Compatible with App Router & Pages Router
|
|
161
|
+
- ✅ **Any React framework** - Framework-agnostic design
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './Breadcrumb.scss';
|
|
3
|
+
export interface BreadcrumbItem {
|
|
4
|
+
label: string;
|
|
5
|
+
href?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface BreadcrumbProps {
|
|
8
|
+
items: BreadcrumbItem[];
|
|
9
|
+
separator?: string;
|
|
10
|
+
darkMode?: boolean;
|
|
11
|
+
className?: string;
|
|
12
|
+
}
|
|
13
|
+
export declare const Breadcrumb: React.FC<BreadcrumbProps>;
|
|
14
|
+
//# sourceMappingURL=Breadcrumb.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Breadcrumb.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Breadcrumb/Breadcrumb.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,mBAAmB,CAAC;AAE3B,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAkChD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Breadcrumb/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './BulletList.scss';
|
|
3
|
+
export interface BulletItem {
|
|
4
|
+
/** Bullet point text content */
|
|
5
|
+
text: React.ReactNode;
|
|
6
|
+
/** Custom icon override for this specific item */
|
|
7
|
+
icon?: React.ReactNode;
|
|
8
|
+
}
|
|
9
|
+
export interface BulletListProps {
|
|
10
|
+
/** Array of bullet items */
|
|
11
|
+
items: BulletItem[];
|
|
12
|
+
/** Custom icon for all bullet points (overridden by per-item icon) */
|
|
13
|
+
icon?: React.ReactNode;
|
|
14
|
+
/** Dark mode styling */
|
|
15
|
+
darkMode?: boolean;
|
|
16
|
+
/** Additional CSS class */
|
|
17
|
+
className?: string;
|
|
18
|
+
/** Inline styles */
|
|
19
|
+
style?: React.CSSProperties;
|
|
20
|
+
}
|
|
21
|
+
export declare const BulletList: React.FC<BulletListProps>;
|
|
22
|
+
//# sourceMappingURL=BulletList.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BulletList.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/BulletList/BulletList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,mBAAmB,CAAC;AAE3B,MAAM,WAAW,UAAU;IACzB,gCAAgC;IAChC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,kDAAkD;IAClD,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,4BAA4B;IAC5B,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,sEAAsE;IACtE,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,wBAAwB;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB;IACpB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAcD,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAgChD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/BulletList/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import './Button.scss';
|
|
3
|
-
|
|
3
|
+
import { ButtonVariantType } from '@/themes/core/types';
|
|
4
|
+
export type ButtonType = ButtonVariantType;
|
|
4
5
|
export type ColorPalette = 'primary' | 'secondary' | 'accent' | 'tertiary';
|
|
5
6
|
export interface ButtonProps {
|
|
6
7
|
/** Button variant type */
|
|
@@ -21,11 +22,15 @@ export interface ButtonProps {
|
|
|
21
22
|
children?: React.ReactNode;
|
|
22
23
|
/** Disabled state */
|
|
23
24
|
disabled?: boolean;
|
|
24
|
-
/** Dark mode - applies
|
|
25
|
+
/** Dark mode - applies dark mode styling for use on dark backgrounds */
|
|
25
26
|
darkMode?: boolean;
|
|
27
|
+
/** Size variant - controls button dimensions and spacing */
|
|
28
|
+
size?: 'sm' | 'md' | 'lg';
|
|
29
|
+
/** Enable/disable hover animation - overrides theme default */
|
|
30
|
+
animated?: boolean;
|
|
26
31
|
/** Click handler */
|
|
27
32
|
onClick?: () => void;
|
|
28
33
|
}
|
|
29
34
|
/** Primary UI component for user interaction */
|
|
30
|
-
export declare const Button: ({ buttonType, palette, label, icon, hoverIcon, className, children, style, disabled, darkMode, onClick, ...props }: ButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
35
|
+
export declare const Button: ({ buttonType, palette, label, icon, hoverIcon, className, children, style, disabled, darkMode, size, animated, onClick, ...props }: ButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
31
36
|
//# sourceMappingURL=Button.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,eAAe,CAAC;AAEvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAKxD,MAAM,MAAM,UAAU,GAAG,iBAAiB,CAAC;AAE3C,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAC;AAE3E,MAAM,WAAW,WAAW;IAC1B,0BAA0B;IAC1B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,6BAA6B;IAC7B,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mBAAmB;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,uCAAuC;IACvC,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB;IACpB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,qBAAqB;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oBAAoB;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAID,gDAAgD;AAEhD,eAAO,MAAM,MAAM,GAAI,oIAepB,WAAW,4CAqCb,CAAC"}
|
|
@@ -14,7 +14,11 @@ interface ButtonIconConfig {
|
|
|
14
14
|
export declare const defaultButtonIcons: Partial<Record<ButtonType, ButtonIconConfig>>;
|
|
15
15
|
/**
|
|
16
16
|
* Get icon configuration for a button type
|
|
17
|
+
* @param buttonType - The button variant type
|
|
18
|
+
* @param customIcon - Custom icon override
|
|
19
|
+
* @param customHoverIcon - Custom hover icon override
|
|
20
|
+
* @param themeName - Current theme name for theme-specific icons
|
|
17
21
|
*/
|
|
18
|
-
export declare function getButtonIcon(buttonType: ButtonType, customIcon?: React.ReactNode, customHoverIcon?: React.ReactNode): ButtonIconConfig | null;
|
|
22
|
+
export declare function getButtonIcon(buttonType: ButtonType, customIcon?: React.ReactNode, customHoverIcon?: React.ReactNode, themeName?: string): ButtonIconConfig | null;
|
|
19
23
|
export {};
|
|
20
24
|
//# sourceMappingURL=buttonIcons.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buttonIcons.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Button/buttonIcons.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"buttonIcons.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Button/buttonIcons.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAkB1B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,UAAU,gBAAgB;IACxB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACzB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAqB5E,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,UAAU,EAAE,UAAU,EACtB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,EAC5B,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,EACjC,SAAS,CAAC,EAAE,MAAM,GACjB,gBAAgB,GAAG,IAAI,CAqBzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -20,11 +20,15 @@ export interface ButtonLinkProps {
|
|
|
20
20
|
children?: React.ReactNode;
|
|
21
21
|
/** Disabled state */
|
|
22
22
|
disabled?: boolean;
|
|
23
|
+
/** Size variant */
|
|
24
|
+
size?: 'sm' | 'md' | 'lg';
|
|
25
|
+
/** Dark mode styling */
|
|
26
|
+
darkMode?: boolean;
|
|
23
27
|
/** ARIA label */
|
|
24
28
|
'aria-label'?: string;
|
|
25
29
|
/** Test ID */
|
|
26
30
|
'data-testid'?: string;
|
|
27
31
|
}
|
|
28
32
|
/** Button-styled link component for navigation */
|
|
29
|
-
export declare const ButtonLink: ({ buttonType, label, icon, href, target, className, children, style, disabled, ...props }: ButtonLinkProps) => import("react/jsx-runtime").JSX.Element;
|
|
33
|
+
export declare const ButtonLink: ({ buttonType, label, icon, href, target, className, children, style, disabled, size, darkMode, ...props }: ButtonLinkProps) => import("react/jsx-runtime").JSX.Element;
|
|
30
34
|
//# sourceMappingURL=ButtonLink.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonLink.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/ButtonLink/ButtonLink.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,uBAAuB,CAAC;AAE/B,MAAM,WAAW,eAAe;IAC9B,0BAA0B;IAC1B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mBAAmB;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB;IAClB,MAAM,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC5B,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB;IACpB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,qBAAqB;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iBAAiB;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,kDAAkD;AAClD,eAAO,MAAM,UAAU,GAAI,
|
|
1
|
+
{"version":3,"file":"ButtonLink.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/ButtonLink/ButtonLink.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,uBAAuB,CAAC;AAE/B,MAAM,WAAW,eAAe;IAC9B,0BAA0B;IAC1B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mBAAmB;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB;IAClB,MAAM,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC5B,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB;IACpB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,qBAAqB;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB;IACnB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,wBAAwB;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iBAAiB;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,kDAAkD;AAClD,eAAO,MAAM,UAAU,GAAI,2GAaxB,eAAe,4CAiCjB,CAAC"}
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
import { ThemeConfig } from '../../../themes';
|
|
6
6
|
import './ColorTable.scss';
|
|
7
7
|
export interface ColorTableProps {
|
|
8
|
-
/**
|
|
9
|
-
theme
|
|
8
|
+
/** Optional theme configuration to display colors from. If not provided, uses active theme from context. */
|
|
9
|
+
theme?: ThemeConfig;
|
|
10
10
|
}
|
|
11
|
-
export declare const ColorTable: ({ theme }: ColorTableProps) => import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export declare const ColorTable: ({ theme: themeProp }: ColorTableProps) => import("react/jsx-runtime").JSX.Element;
|
|
12
12
|
//# sourceMappingURL=ColorTable.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColorTable.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/ColorTable/ColorTable.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"ColorTable.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/ColorTable/ColorTable.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAI9C,OAAO,mBAAmB,CAAC;AAE3B,MAAM,WAAW,eAAe;IAC9B,4GAA4G;IAC5G,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,eAAO,MAAM,UAAU,GAAI,sBAAsB,eAAe,4CAqI/D,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './Container.scss';
|
|
3
|
+
export interface ContainerProps {
|
|
4
|
+
children?: React.ReactNode;
|
|
5
|
+
/** Full-width container with no max-width constraint */
|
|
6
|
+
fluid?: boolean;
|
|
7
|
+
/** Additional CSS class name */
|
|
8
|
+
className?: string;
|
|
9
|
+
/** HTML element to render — defaults to div */
|
|
10
|
+
as?: React.ElementType;
|
|
11
|
+
/** Inline styles */
|
|
12
|
+
style?: React.CSSProperties;
|
|
13
|
+
}
|
|
14
|
+
export declare const Container: React.FC<ContainerProps>;
|
|
15
|
+
//# sourceMappingURL=Container.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Container/Container.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,kBAAkB,CAAC;AAE1B,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,wDAAwD;IACxD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,EAAE,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC;IACvB,oBAAoB;IACpB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAe9C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Container/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import "./Divider.scss";
|
|
3
|
+
export type ShapeDivider = "top" | "bottom" | "both" | "none";
|
|
4
|
+
export interface DividerProps {
|
|
5
|
+
children?: React.ReactNode;
|
|
6
|
+
backgroundColor?: string;
|
|
7
|
+
backgroundImage?: string;
|
|
8
|
+
backgroundPattern?: "dots" | "grid" | "sparks" | "none";
|
|
9
|
+
shapeDivider?: ShapeDivider;
|
|
10
|
+
shapeColor?: string;
|
|
11
|
+
className?: string;
|
|
12
|
+
padding?: string;
|
|
13
|
+
height?: string;
|
|
14
|
+
verticalAlign?: "top" | "center" | "bottom";
|
|
15
|
+
darkMode?: boolean;
|
|
16
|
+
/** Control overflow behavior — defaults to 'hidden' */
|
|
17
|
+
overflow?: "hidden" | "visible";
|
|
18
|
+
}
|
|
19
|
+
export declare const Divider: React.FC<DividerProps>;
|
|
20
|
+
//# sourceMappingURL=Divider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Divider.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Divider/Divider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,gBAAgB,CAAC;AAExB,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAE9D,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IACxD,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uDAAuD;IACvD,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CACjC;AAED,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAqD1C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Divider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import "./Grid.scss";
|
|
3
3
|
export interface GridProps {
|
|
4
|
-
/** Number of columns (default: 12) */
|
|
5
|
-
columns?: number | {
|
|
6
|
-
sm?: number;
|
|
7
|
-
md?: number;
|
|
8
|
-
lg?: number;
|
|
4
|
+
/** Number of columns (default: 12). Use a string for custom grid-template-columns (e.g. "1fr auto") */
|
|
5
|
+
columns?: number | string | {
|
|
6
|
+
sm?: number | string;
|
|
7
|
+
md?: number | string;
|
|
8
|
+
lg?: number | string;
|
|
9
9
|
};
|
|
10
10
|
/** Gap between grid items */
|
|
11
11
|
gap?: string | {
|
|
12
|
+
xs?: string;
|
|
12
13
|
sm?: string;
|
|
13
14
|
md?: string;
|
|
14
15
|
lg?: string;
|
|
@@ -31,8 +32,12 @@ export interface GridProps {
|
|
|
31
32
|
maxColumnWidth?: string;
|
|
32
33
|
/** Align items vertically */
|
|
33
34
|
alignItems?: "start" | "center" | "end" | "stretch";
|
|
34
|
-
/** Justify items horizontally */
|
|
35
|
+
/** Justify items horizontally (aligns content inside each grid cell) */
|
|
35
36
|
justifyItems?: "start" | "center" | "end" | "stretch";
|
|
37
|
+
/** Justify content (aligns the entire grid within the container) */
|
|
38
|
+
justifyContent?: "start" | "center" | "end" | "space-between" | "space-around" | "space-evenly";
|
|
39
|
+
/** Column alignment (left, center, right) - controls entire grid position */
|
|
40
|
+
columnAlign?: "left" | "center" | "right";
|
|
36
41
|
/** Custom className */
|
|
37
42
|
className?: string;
|
|
38
43
|
/** Custom styles */
|
|
@@ -43,17 +48,17 @@ export interface GridProps {
|
|
|
43
48
|
fullWidth?: boolean;
|
|
44
49
|
}
|
|
45
50
|
export interface GridItemProps {
|
|
46
|
-
/** Column span */
|
|
47
|
-
colSpan?: number | {
|
|
48
|
-
sm?: number;
|
|
49
|
-
md?: number;
|
|
50
|
-
lg?: number;
|
|
51
|
+
/** Column span - use "auto" to fit content width */
|
|
52
|
+
colSpan?: number | "auto" | {
|
|
53
|
+
sm?: number | "auto";
|
|
54
|
+
md?: number | "auto";
|
|
55
|
+
lg?: number | "auto";
|
|
51
56
|
};
|
|
52
|
-
/** Row span */
|
|
53
|
-
rowSpan?: number | {
|
|
54
|
-
sm?: number;
|
|
55
|
-
md?: number;
|
|
56
|
-
lg?: number;
|
|
57
|
+
/** Row span - use "auto" to fit content height */
|
|
58
|
+
rowSpan?: number | "auto" | {
|
|
59
|
+
sm?: number | "auto";
|
|
60
|
+
md?: number | "auto";
|
|
61
|
+
lg?: number | "auto";
|
|
57
62
|
};
|
|
58
63
|
/** Column start position */
|
|
59
64
|
colStart?: number | {
|
|
@@ -67,6 +72,24 @@ export interface GridItemProps {
|
|
|
67
72
|
md?: number;
|
|
68
73
|
lg?: number;
|
|
69
74
|
};
|
|
75
|
+
/** Gap between grid items */
|
|
76
|
+
gap?: string | {
|
|
77
|
+
sm?: string;
|
|
78
|
+
md?: string;
|
|
79
|
+
lg?: string;
|
|
80
|
+
};
|
|
81
|
+
/** Row gap (if different from column gap) */
|
|
82
|
+
rowGap?: string | {
|
|
83
|
+
sm?: string;
|
|
84
|
+
md?: string;
|
|
85
|
+
lg?: string;
|
|
86
|
+
};
|
|
87
|
+
/** Column gap (if different from row gap) */
|
|
88
|
+
columnGap?: string | {
|
|
89
|
+
sm?: string;
|
|
90
|
+
md?: string;
|
|
91
|
+
lg?: string;
|
|
92
|
+
};
|
|
70
93
|
/** Custom className */
|
|
71
94
|
className?: string;
|
|
72
95
|
/** Custom styles */
|
|
@@ -74,6 +97,6 @@ export interface GridItemProps {
|
|
|
74
97
|
/** Children elements */
|
|
75
98
|
children: React.ReactNode;
|
|
76
99
|
}
|
|
77
|
-
export declare const Grid: ({ columns, gap, rowGap, columnGap, minColumnWidth, maxColumnWidth, alignItems, justifyItems, className, style, children, fullWidth, }: GridProps) => import("react/jsx-runtime").JSX.Element;
|
|
78
|
-
export declare const GridItem: ({ colSpan, rowSpan, colStart, rowStart, className, style, children, }: GridItemProps) => import("react/jsx-runtime").JSX.Element;
|
|
100
|
+
export declare const Grid: ({ columns, gap, rowGap, columnGap, minColumnWidth, maxColumnWidth, alignItems, justifyItems, justifyContent, columnAlign, className, style, children, fullWidth, }: GridProps) => import("react/jsx-runtime").JSX.Element;
|
|
101
|
+
export declare const GridItem: ({ colSpan, rowSpan, colStart, rowStart, gap, rowGap, columnGap, className, style, children, }: GridItemProps) => import("react/jsx-runtime").JSX.Element;
|
|
79
102
|
//# sourceMappingURL=Grid.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Grid.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Grid/Grid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,aAAa,CAAC;AAErB,MAAM,WAAW,SAAS;IACxB,
|
|
1
|
+
{"version":3,"file":"Grid.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Grid/Grid.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,8 @@ import type { SemanticColorTokens } from '@/themes/core/color-system';
|
|
|
3
3
|
import './Heading.scss';
|
|
4
4
|
export type HeadingLevel = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
|
|
5
5
|
export type ColorPalette = 'primary' | 'secondary' | 'accent' | 'tertiary';
|
|
6
|
+
export type HeadingWeight = 'light' | 'regular' | 'semibold' | 'bold' | 'black';
|
|
7
|
+
export type HeadingSize = '2xl' | 'xl' | 'lg' | 'md' | 'sm' | 'xs';
|
|
6
8
|
export type HeadingVariant = string;
|
|
7
9
|
export type HeadingColor = keyof SemanticColorTokens;
|
|
8
10
|
export interface HeadingProps {
|
|
@@ -10,10 +12,16 @@ export interface HeadingProps {
|
|
|
10
12
|
level?: HeadingLevel;
|
|
11
13
|
/** Visual style variant (independent of semantic level) - defined by theme */
|
|
12
14
|
variant?: HeadingVariant;
|
|
15
|
+
/** Font weight (maps to --tier1-theme-typography-font-weight-*) */
|
|
16
|
+
weight?: HeadingWeight;
|
|
17
|
+
/** Font size (maps to --tier1-theme-typography-font-size-*) */
|
|
18
|
+
size?: HeadingSize;
|
|
13
19
|
/** Color from theme semantic tokens */
|
|
14
20
|
color?: HeadingColor;
|
|
15
21
|
/** Color palette to apply (background + text) */
|
|
16
22
|
palette?: ColorPalette;
|
|
23
|
+
/** Dark mode - applies dark mode styling for use on dark backgrounds */
|
|
24
|
+
darkMode?: boolean;
|
|
17
25
|
/** Heading text */
|
|
18
26
|
children: React.ReactNode;
|
|
19
27
|
/** Custom CSS class */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Heading.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Heading/Heading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,gBAAgB,CAAC;AAExB,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AACnE,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"Heading.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Heading/Heading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,gBAAgB,CAAC;AAExB,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AACnE,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAC;AAC3E,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC;AAChF,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAInE,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAIpC,MAAM,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC;AAErD,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,mEAAmE;IACnE,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,+DAA+D;IAC/D,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,uCAAuC;IACvC,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,iDAAiD;IACjD,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,uBAAuB;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB;IACpB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA+D1C,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './Icon.scss';
|
|
3
|
+
export interface IconProps {
|
|
4
|
+
/**
|
|
5
|
+
* SVG content or path to SVG
|
|
6
|
+
*/
|
|
7
|
+
svg: React.ReactNode;
|
|
8
|
+
/**
|
|
9
|
+
* Icon size variant
|
|
10
|
+
*/
|
|
11
|
+
size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
12
|
+
/**
|
|
13
|
+
* Icon color variant
|
|
14
|
+
*/
|
|
15
|
+
color?: 'primary' | 'secondary' | 'accent' | 'success' | 'warning' | 'error' | 'inherit';
|
|
16
|
+
/**
|
|
17
|
+
* Custom fill color (overrides color variant)
|
|
18
|
+
*/
|
|
19
|
+
fill?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Custom stroke color (overrides color variant)
|
|
22
|
+
*/
|
|
23
|
+
stroke?: string;
|
|
24
|
+
/**
|
|
25
|
+
* Custom stroke width (overrides color variant)
|
|
26
|
+
*/
|
|
27
|
+
strokeWidth?: string | number;
|
|
28
|
+
/**
|
|
29
|
+
* Additional CSS class
|
|
30
|
+
*/
|
|
31
|
+
className?: string;
|
|
32
|
+
/**
|
|
33
|
+
* Accessible label for screen readers
|
|
34
|
+
*/
|
|
35
|
+
ariaLabel?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Whether icon is decorative (hidden from screen readers)
|
|
38
|
+
*/
|
|
39
|
+
decorative?: boolean;
|
|
40
|
+
}
|
|
41
|
+
export declare const Icon: React.FC<IconProps>;
|
|
42
|
+
//# sourceMappingURL=Icon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Icon/Icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,aAAa,CAAC;AAErB,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC;IACrB;;OAEG;IACH,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IACxC;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IACzF;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAwCpC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Icon/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import "./Media.scss";
|
|
3
|
+
export interface VideoProviderConfig {
|
|
4
|
+
/** Unique provider key */
|
|
5
|
+
name: string;
|
|
6
|
+
/** Test if a URL belongs to this provider */
|
|
7
|
+
match: (url: string) => boolean;
|
|
8
|
+
/** Build the embed URL for the iframe */
|
|
9
|
+
buildEmbedUrl: (url: string, options?: VideoProviderOptions) => string;
|
|
10
|
+
}
|
|
11
|
+
export interface VideoProviderOptions {
|
|
12
|
+
autoplay?: boolean;
|
|
13
|
+
controls?: boolean;
|
|
14
|
+
muted?: boolean;
|
|
15
|
+
loop?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export type MediaType = "image" | "video";
|
|
18
|
+
export type ObjectFit = "cover" | "contain" | "fill" | "none" | "scale-down";
|
|
19
|
+
export interface MediaProps {
|
|
20
|
+
/** Media source URL (image path, video file, or embed URL like Wistia) */
|
|
21
|
+
src: string;
|
|
22
|
+
/** Force media type. Auto-detected if omitted. */
|
|
23
|
+
type?: MediaType;
|
|
24
|
+
/** Alt text for images, title for video iframes */
|
|
25
|
+
alt?: string;
|
|
26
|
+
/** How the media fills its container */
|
|
27
|
+
objectFit?: ObjectFit;
|
|
28
|
+
/** Object position (e.g. "center top") */
|
|
29
|
+
objectPosition?: string;
|
|
30
|
+
/** Aspect ratio (e.g. "16/9", "4/3", "1/1"). If omitted, media fills container height. */
|
|
31
|
+
aspectRatio?: string;
|
|
32
|
+
/** Autoplay video (muted by default for browser compliance) */
|
|
33
|
+
autoplay?: boolean;
|
|
34
|
+
/** Show video controls */
|
|
35
|
+
controls?: boolean;
|
|
36
|
+
/** Loop video playback */
|
|
37
|
+
loop?: boolean;
|
|
38
|
+
/** Mute video. Defaults to true when autoplay is enabled. */
|
|
39
|
+
muted?: boolean;
|
|
40
|
+
/** Lazy load media */
|
|
41
|
+
loading?: "lazy" | "eager";
|
|
42
|
+
/** Image srcSet for responsive images */
|
|
43
|
+
srcSet?: string;
|
|
44
|
+
/** Image sizes attribute */
|
|
45
|
+
sizes?: string;
|
|
46
|
+
/** Additional video providers (YouTube, Vimeo, etc.) */
|
|
47
|
+
providers?: VideoProviderConfig[];
|
|
48
|
+
/** Dark mode styling */
|
|
49
|
+
darkMode?: boolean;
|
|
50
|
+
/** Additional CSS class */
|
|
51
|
+
className?: string;
|
|
52
|
+
/** Inline styles */
|
|
53
|
+
style?: React.CSSProperties;
|
|
54
|
+
/** Callback when media loads / Wistia is ready */
|
|
55
|
+
onLoad?: () => void;
|
|
56
|
+
/** Callback on load error */
|
|
57
|
+
onError?: () => void;
|
|
58
|
+
/** Callback when Wistia video is ready — receives the Wistia video handle for programmatic control */
|
|
59
|
+
onReady?: (videoHandle: any) => void;
|
|
60
|
+
}
|
|
61
|
+
/** Atom component for rendering images or videos (native, Wistia async embed, or custom providers) */
|
|
62
|
+
export declare const Media: React.FC<MediaProps>;
|
|
63
|
+
//# sourceMappingURL=Media.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Media.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Media/Media.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAC3D,OAAO,cAAc,CAAC;AAkBtB,MAAM,WAAW,mBAAmB;IAClC,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAChC,yCAAyC;IACzC,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,MAAM,CAAC;CACxE;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAyBD,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;AAC1C,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,YAAY,CAAC;AAE7E,MAAM,WAAW,UAAU;IACzB,0EAA0E;IAC1E,GAAG,EAAE,MAAM,CAAC;IACZ,kDAAkD;IAClD,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,mDAAmD;IACnD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,wCAAwC;IACxC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,0CAA0C;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0FAA0F;IAC1F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0BAA0B;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,6DAA6D;IAC7D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B,yCAAyC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAClC,wBAAwB;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB;IACpB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,6BAA6B;IAC7B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,sGAAsG;IACtG,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,KAAK,IAAI,CAAC;CACtC;AASD,sGAAsG;AACtG,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAmMtC,CAAC"}
|