@ekoru/ui 0.1.4 โ†’ 0.1.6

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/CHANGELOG.md ADDED
@@ -0,0 +1,14 @@
1
+ # @ekoru/ui
2
+
3
+ ## 0.1.6
4
+
5
+ ### Patch Changes
6
+
7
+ - cb6bfc9: refactor for informational website
8
+
9
+ ## 0.1.5
10
+
11
+ ### Patch Changes
12
+
13
+ - 9e37850: links type fixed and navbar class directly in component
14
+ - cd5705a: button classname moved from global to component directly
package/README.md CHANGED
@@ -1,32 +1,41 @@
1
1
  # @ekoru/ui
2
2
 
3
- > Professional React component library for the Ekoru sustainable marketplace ecosystem.
3
+ > Internal design system and React component library for the Ekoru ecosystem.
4
4
 
5
5
  [![npm version](https://img.shields.io/npm/v/@ekoru/ui.svg)](https://www.npmjs.com/package/@ekoru/ui)
6
6
  [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)
7
+ [![codecov](https://codecov.io/gh/Ignaciofabian93/ekoru-ui/branch/main/graph/badge.svg)](https://codecov.io/gh/Ignaciofabian93/ekoru-ui)
7
8
 
8
9
  ## ๐ŸŒฑ About
9
10
 
10
- Ekoru UI is a comprehensive design system built with sustainability and user experience in mind. It provides a set of accessible, customizable, and beautiful React components for building modern web applications.
11
+ Ekoru UI is an internal design system built specifically for Ekoru's product ecosystem. It ensures consistent branding, user experience, and maintainability across all Ekoru platforms with sustainability-focused components and design patterns.
12
+
13
+ ### Used In
14
+
15
+ - **[www.ekoru.cl](https://www.ekoru.cl)** - Marketing and informational website
16
+ - **[app.ekoru.cl](https://app.ekoru.cl)** - E-commerce platform (in development)
17
+ - **[admin.ekoru.cl](https://admin.ekoru.cl)** - Admin dashboard (in development)
18
+ - Future Ekoru products
11
19
 
12
20
  ## โœจ Features
13
21
 
14
- - ๐ŸŽจ **Beautiful Design** - Carefully crafted components with a sustainable aesthetic
15
- - โ™ฟ **Accessible** - WCAG 2.1 compliant components
16
- - ๐ŸŽฏ **TypeScript** - Full type safety out of the box
17
- - ๐ŸŽญ **Customizable** - Easy theming with Tailwind CSS
18
- - ๐Ÿ“ฆ **Tree-shakeable** - Only bundle what you use
22
+ - ๐ŸŽจ **Ekoru Branding** - Custom design system with Ekoru's sustainable aesthetic
23
+ - ๐ŸŒ **Sustainability-focused** - Components like Environmental Impact Modal, Product Impact Cards
24
+ - โ™ฟ **Accessible** - WCAG 2.1 compliant
25
+ - ๐ŸŽฏ **TypeScript** - Full type safety
26
+ - ๐ŸŽญ **Customizable** - Built on Tailwind CSS
27
+ - ๐Ÿ“ฆ **Tree-shakeable** - Optimized bundle size
19
28
  - ๐Ÿงช **Well tested** - Comprehensive test coverage
20
- - ๐Ÿ“š **Documented** - Storybook documentation for all components
29
+ - ๐Ÿ“š **Documented** - Storybook for all components
30
+
31
+ ## ๐Ÿšจ Note for External Developers
32
+
33
+ This library is **internal to Ekoru** and contains branding-specific components and styling. While it's published as open source, it's designed specifically for Ekoru products and may not be suitable for external projects.
21
34
 
22
35
  ## ๐Ÿ“ฆ Installation
23
36
 
24
37
  ```bash
25
- npm install @ekoru/ui
26
- # or
27
38
  pnpm add @ekoru/ui
28
- # or
29
- yarn add @ekoru/ui
30
39
  ```
31
40
 
32
41
  ## ๐Ÿš€ Quick Start
@@ -38,7 +47,7 @@ import '@ekoru/ui/styles';
38
47
  export default function App() {
39
48
  return (
40
49
  <Button variant="primary" onClick={() => console.log('clicked')}>
41
- Click me
50
+ Shop Sustainable
42
51
  </Button>
43
52
  );
44
53
  }
@@ -48,34 +57,60 @@ export default function App() {
48
57
 
49
58
  ### Importing Styles
50
59
 
51
- Make sure to import the styles in your main app file:
60
+ Import styles in your root file:
52
61
 
53
62
  ```tsx
54
- // app.tsx or main.tsx
63
+ // app.tsx or layout.tsx
55
64
  import '@ekoru/ui/styles';
56
65
  ```
57
66
 
58
- ### Using Components
67
+ ### Basic Example
59
68
 
60
69
  ```tsx
61
- import { Button, Card, Input } from '@ekoru/ui';
70
+ import { Button, Card, Input, ProductCard } from '@ekoru/ui';
62
71
 
63
- function MyComponent() {
72
+ function CheckoutPage() {
64
73
  return (
65
- <Card>
66
- <h2>Welcome to Ekoru</h2>
67
- <Input placeholder="Enter your email" />
68
- <Button variant="primary" size="lg">
69
- Get Started
70
- </Button>
71
- </Card>
74
+ <div>
75
+ <ProductCard
76
+ name="Eco Water Bottle"
77
+ price={25000}
78
+ image="/products/bottle.jpg"
79
+ environmentalImpact={{
80
+ co2Saved: 2.5,
81
+ waterSaved: 150,
82
+ treesPlanted: 1,
83
+ }}
84
+ />
85
+ <Card>
86
+ <Input label="Email" placeholder="your@email.com" />
87
+ <Button variant="primary" size="lg" fullWidth>
88
+ Complete Purchase
89
+ </Button>
90
+ </Card>
91
+ </div>
92
+ );
93
+ }
94
+ ```
95
+
96
+ ### Using with Next.js
97
+
98
+ ```tsx
99
+ // Next.js App Router (app/layout.tsx)
100
+ import '@ekoru/ui/styles';
101
+
102
+ export default function RootLayout({ children }) {
103
+ return (
104
+ <html lang="es">
105
+ <body>{children}</body>
106
+ </html>
72
107
  );
73
108
  }
74
109
  ```
75
110
 
76
111
  ### Customizing Theme
77
112
 
78
- You can customize the theme by extending your Tailwind config:
113
+ Extend the Ekoru theme in your Tailwind config:
79
114
 
80
115
  ```js
81
116
  // tailwind.config.js
@@ -87,54 +122,53 @@ module.exports = {
87
122
  theme: {
88
123
  extend: {
89
124
  colors: {
90
- primary: {
91
- // Your custom colors
92
- },
125
+ // Ekoru brand colors are already included
126
+ // Add custom extensions if needed
93
127
  },
94
128
  },
95
129
  },
96
130
  };
97
131
  ```
98
132
 
99
- ## ๐ŸŽจ Components
133
+ ## ๐ŸŽจ Component Categories
100
134
 
101
- ### Button
135
+ ### Core Components
102
136
 
103
- A versatile button component with multiple variants and sizes.
137
+ General-purpose UI components used across all platforms.
104
138
 
105
- ```tsx
106
- <Button variant="primary" size="md" isLoading={false}>
107
- Click me
108
- </Button>
109
- ```
139
+ - **Button** - Primary actions with variants
140
+ - **Input** - Form inputs with validation
141
+ - **Card** - Content containers
142
+ - **Modal** - Dialogs and overlays
143
+ - **Select** - Dropdown selections
144
+ - **Textarea** - Multi-line text inputs
145
+ - **Checkbox** - Boolean inputs
110
146
 
111
- **Variants:** `primary` | `secondary` | `outline` | `ghost` | `success` | `warning` | `error`
147
+ ### Ekoru-Specific Components
112
148
 
113
- **Sizes:** `sm` | `md` | `lg`
149
+ Custom components for Ekoru's unique features.
114
150
 
115
- ### More components coming soon!
151
+ - **ProductCard** - E-commerce product display with impact metrics
152
+ - **EnvironmentalImpactModal** - Sustainability impact visualization
153
+ - **HeroCarousel** - Homepage banner carousel
116
154
 
117
- - Input
118
- - Card
119
- - Modal
120
- - Select
121
- - Checkbox
122
- - Radio
123
- - Toast
124
- - And many more...
155
+ ### Layout Components
156
+
157
+ - **Navbar** - Navigation headers
158
+ - **Footer** - Page footers
125
159
 
126
160
  ## ๐Ÿ› ๏ธ Development
127
161
 
128
162
  ### Prerequisites
129
163
 
130
- - Node.js >= 18
131
- - pnpm >= 8
164
+ - Node.js >= 20
165
+ - pnpm >= 9
132
166
 
133
167
  ### Setup
134
168
 
135
169
  ```bash
136
170
  # Clone the repository
137
- git clone https://github.com/ekoru/ekoru-ui.git
171
+ git clone https://github.com/Ignaciofabian93/ekoru-ui.git
138
172
  cd ekoru-ui
139
173
 
140
174
  # Install dependencies
@@ -146,10 +180,7 @@ pnpm storybook
146
180
  # Run tests
147
181
  pnpm test
148
182
 
149
- # Run tests in watch mode
150
- pnpm test:watch
151
-
152
- # Build the library
183
+ # Build
153
184
  pnpm build
154
185
  ```
155
186
 
@@ -158,94 +189,117 @@ pnpm build
158
189
  ```
159
190
  ekoru-ui/
160
191
  โ”œโ”€โ”€ src/
161
- โ”‚ โ”œโ”€โ”€ components/ # React components
162
- โ”‚ โ”œโ”€โ”€ utils/ # Utility functions
163
- โ”‚ โ”œโ”€โ”€ styles/ # Global styles
164
- โ”‚ โ””โ”€โ”€ index.ts # Main entry point
165
- โ”œโ”€โ”€ test/ # Test utilities
166
- โ”œโ”€โ”€ .storybook/ # Storybook configuration
167
- โ””โ”€โ”€ dist/ # Build output (generated)
192
+ โ”‚ โ”œโ”€โ”€ components/ # React components
193
+ โ”‚ โ”‚ โ”œโ”€โ”€ Button/
194
+ โ”‚ โ”‚ โ”œโ”€โ”€ ProductCard/
195
+ โ”‚ โ”‚ โ””โ”€โ”€ ...
196
+ โ”‚ โ”œโ”€โ”€ utils/ # Utilities
197
+ โ”‚ โ”œโ”€โ”€ styles/ # Global styles
198
+ โ”‚ โ””โ”€โ”€ index.ts # Main export
199
+ โ”œโ”€โ”€ test/ # Test setup
200
+ โ”œโ”€โ”€ .storybook/ # Storybook config
201
+ โ””โ”€โ”€ .changeset/ # Changesets
168
202
  ```
169
203
 
170
- ### Creating a New Component
204
+ ### Scripts
171
205
 
172
- 1. Create component folder in `src/components/`
173
- 2. Create component file: `ComponentName.tsx`
174
- 3. Create test file: `ComponentName.test.tsx`
175
- 4. Create stories file: `ComponentName.stories.tsx`
176
- 5. Export from `index.ts`
206
+ | Command | Description |
207
+ | -------------------- | ------------------------ |
208
+ | `pnpm dev` | Start development mode |
209
+ | `pnpm build` | Build for production |
210
+ | `pnpm test` | Run tests |
211
+ | `pnpm test:watch` | Run tests in watch mode |
212
+ | `pnpm test:coverage` | Generate coverage report |
213
+ | `pnpm storybook` | Start Storybook |
214
+ | `pnpm lint` | Lint code |
215
+ | `pnpm type-check` | Check TypeScript types |
216
+ | `pnpm changeset` | Create a changeset |
177
217
 
178
- Example:
218
+ ## ๐Ÿ”„ Release Workflow
179
219
 
180
- ```tsx
181
- // src/components/MyComponent/MyComponent.tsx
182
- import { cn } from '@/utils/cn';
183
-
184
- export interface MyComponentProps {
185
- className?: string;
186
- children: React.ReactNode;
187
- }
220
+ We use [Changesets](https://github.com/changesets/changesets) for automated versioning and publishing.
188
221
 
189
- export const MyComponent = ({ className, children }: MyComponentProps) => {
190
- return <div className={cn('my-component', className)}>{children}</div>;
191
- };
192
- ```
222
+ ### Making Changes
193
223
 
194
- ### Running Tests
224
+ 1. Create a feature branch
195
225
 
196
226
  ```bash
197
- # Run all tests
198
- pnpm test
227
+ git checkout -b feature/new-component
228
+ ```
199
229
 
200
- # Run tests in watch mode
201
- pnpm test:watch
230
+ 2. Make your changes
202
231
 
203
- # Generate coverage report
204
- pnpm test:coverage
232
+ 3. Create a changeset
205
233
 
206
- # Run tests with UI
207
- pnpm test:ui
234
+ ```bash
235
+ pnpm changeset
208
236
  ```
209
237
 
210
- ### Building
238
+ - Select change type: `patch` / `minor` / `major`
239
+ - Write a clear description
240
+
241
+ 4. Commit and push
211
242
 
212
243
  ```bash
213
- # Build for production
214
- pnpm build
244
+ git add .
245
+ git commit -m "feat: add ProductCard component"
246
+ git push
247
+ ```
215
248
 
216
- # Build CSS
217
- pnpm build:css
249
+ 5. GitHub Actions will:
250
+ - Run tests and builds
251
+ - Create a Version PR when merged to `main`
252
+ - Auto-publish to npm when Version PR is merged
218
253
 
219
- # Type check
220
- pnpm type-check
221
- ```
254
+ ๐Ÿ“– **See [CHANGESETS.md](./docs/CHANGESETS.md) for detailed workflow guide**
222
255
 
223
256
  ## ๐Ÿค Contributing
224
257
 
225
- We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.
226
-
227
- ### Development Workflow
258
+ This is an internal project for Ekoru team members. If you're part of the team:
228
259
 
229
260
  1. Fork the repository
230
- 2. Create a feature branch: `git checkout -b feature/my-feature`
261
+ 2. Create a feature branch
231
262
  3. Make your changes
232
263
  4. Run tests: `pnpm test`
233
264
  5. Create a changeset: `pnpm changeset`
234
- 6. Commit your changes: `git commit -m "feat: add new feature"`
235
- 7. Push to your fork: `git push origin feature/my-feature`
236
- 8. Open a Pull Request
265
+ 6. Open a Pull Request
237
266
 
238
- ## ๐Ÿ“ Versioning
267
+ ### Contribution Guidelines
239
268
 
240
- We use [Changesets](https://github.com/changesets/changesets) for version management.
269
+ - Write tests for new components
270
+ - Update Storybook stories
271
+ - Follow the existing code style
272
+ - Keep components accessible (WCAG 2.1)
273
+ - Use TypeScript strictly
274
+ - Document props and usage
241
275
 
242
- To create a changeset:
276
+ ## ๐Ÿ“š Documentation
277
+
278
+ - **Storybook**: Component documentation and playground
279
+ - **Changesets**: [CHANGESETS.md](./CHANGESETS.md) - Release workflow guide
280
+ - **TypeScript**: Full type definitions included
281
+
282
+ ## ๐Ÿงช Testing
243
283
 
244
284
  ```bash
245
- pnpm changeset
285
+ # Run all tests
286
+ pnpm test
287
+
288
+ # Watch mode
289
+ pnpm test:watch
290
+
291
+ # Coverage report
292
+ pnpm test:coverage
293
+
294
+ # UI mode
295
+ pnpm test:ui
246
296
  ```
247
297
 
248
- Follow the prompts to describe your changes.
298
+ We use:
299
+
300
+ - **Vitest** for unit testing
301
+ - **React Testing Library** for component testing
302
+ - **Codecov** for coverage tracking
249
303
 
250
304
  ## ๐Ÿ“„ License
251
305
 
@@ -253,20 +307,19 @@ MIT ยฉ [Ekoru](https://ekoru.cl)
253
307
 
254
308
  ## ๐ŸŒ Links
255
309
 
256
- - [Documentation](https://ui.ekoru.cl)
257
- - [Storybook](https://storybook.ekoru.cl)
258
- - [GitHub](https://github.com/ekoru/ekoru-ui)
259
- - [npm](https://www.npmjs.com/package/@ekoru/ui)
310
+ - [GitHub Repository](https://github.com/Ignaciofabian93/ekoru-ui)
311
+ - [npm Package](https://www.npmjs.com/package/@ekoru/ui)
312
+ - [Ekoru Website](https://www.ekoru.cl)
313
+ - [Ekoru Platform](https://app.ekoru.cl)
260
314
 
261
- ## ๐Ÿ’š Support
315
+ ## ๐Ÿ“ž Internal Support
262
316
 
263
- If you like this project, please consider:
317
+ For Ekoru team members:
264
318
 
265
- - โญ Starring the repository
266
- - ๐Ÿ› Reporting bugs
267
- - ๐Ÿ’ก Suggesting new features
268
- - ๐Ÿค Contributing to the codebase
319
+ - Slack: `#ekoru-ui` channel
320
+ - Issues: [GitHub Issues](https://github.com/Ignaciofabian93/ekoru-ui/issues)
321
+ - Lead: Ignacio Rodriguez (ignaciorodriguez@ekoru.cl)
269
322
 
270
323
  ---
271
324
 
272
- Made with ๐Ÿ’š by the Ekoru team for a more sustainable future.
325
+ Built with ๐Ÿ’š by the Ekoru team for a sustainable future.
package/dist/index.d.mts CHANGED
@@ -193,15 +193,26 @@ interface ModalProps extends VariantProps<typeof modalVariants> {
193
193
  }
194
194
  declare function Modal({ isOpen, onClose, children, title, size, showCloseButton, closeOnOverlayClick, closeOnEscape, className, }: ModalProps): React$1.ReactPortal | null;
195
195
 
196
+ interface NavigationLinkProps {
197
+ id: string;
198
+ label: string;
199
+ isAnchor?: boolean;
200
+ href?: string;
201
+ }
202
+ interface MobileNavigationLinkProps {
203
+ title: string;
204
+ links: NavigationLinkProps[];
205
+ }
196
206
  interface NavbarProps {
197
207
  brand?: React__default.ReactNode;
198
- navigationIcons?: Array<React__default.ReactNode>;
199
- navigationLinks?: Array<React__default.ReactNode>;
208
+ navigationLinks?: NavigationLinkProps[];
209
+ mobileMenuNavigationLinks?: MobileNavigationLinkProps[];
210
+ appNavigationItems?: React__default.ReactNode;
211
+ mobileMenuAppNavigationItems?: React__default.ReactNode;
200
212
  searchPlaceholder?: string;
201
213
  onSearch?: (query: string) => void;
202
- mobileMenuContent?: React__default.ReactNode;
203
- className?: string;
204
214
  searchEnabled?: boolean;
215
+ className?: string;
205
216
  sideMenuTitle?: string;
206
217
  navbarAriaLabel?: string;
207
218
  userActionsAriaLabel?: string;
@@ -209,7 +220,7 @@ interface NavbarProps {
209
220
  closeMobileMenuAriaLabel?: string;
210
221
  mobileMenuTitleAriaLabel?: string;
211
222
  }
212
- declare function Navbar({ navigationIcons, navigationLinks, brand, searchPlaceholder, onSearch, mobileMenuContent, className, searchEnabled, sideMenuTitle, navbarAriaLabel, userActionsAriaLabel, toggleMobileMenuAriaLabel, closeMobileMenuAriaLabel, mobileMenuTitleAriaLabel, }: NavbarProps): react_jsx_runtime.JSX.Element;
223
+ declare function Navbar({ brand, navigationLinks, mobileMenuNavigationLinks, appNavigationItems, mobileMenuAppNavigationItems, searchPlaceholder, onSearch, className, searchEnabled, sideMenuTitle, navbarAriaLabel, userActionsAriaLabel, toggleMobileMenuAriaLabel, closeMobileMenuAriaLabel, mobileMenuTitleAriaLabel, }: NavbarProps): react_jsx_runtime.JSX.Element;
213
224
 
214
225
  declare const paginationButtonVariants: (props?: ({
215
226
  variant?: "primary" | "outline" | "default" | null | undefined;
@@ -871,4 +882,4 @@ declare const Title: React$1.ForwardRefExoticComponent<TitleProps & React$1.RefA
871
882
  */
872
883
  declare function cn(...inputs: ClassValue[]): string;
873
884
 
874
- export { AdBanner, type AdBannerProps, type BackSideProps, Banner, type BannerProps, Button, type ButtonProps, Card, CardBackSide, CardFrontSide, type CardProps, Carousel, type CarouselProps, Checkbox, type CheckboxProps, type Column, EnvironmentalImpactModal, type EnvironmentalImpactModalProps, Footer, type FooterProps, type FrontSideProps, HeroCarousel, type HeroCarouselProps, Modal, type ModalProps, Navbar, type NavbarProps, type Option, Pagination, type PaginationProps, ProductCard, type ProductCardProps, Select, type SelectProps, StatsCard, type StatsCardProps, Table, type TableProps, Text, TextInput, type TextInputProps, type TextProps, Textarea, type TextareaProps, Title, type TitleProps, bannerVariants, buttonVariants, checkboxVariants, cn, inputVariants, paginationButtonVariants, selectVariants, tableVariants, textVariants, textareaVariants, titleVariants };
885
+ export { AdBanner, type AdBannerProps, type BackSideProps, Banner, type BannerProps, Button, type ButtonProps, Card, CardBackSide, CardFrontSide, type CardProps, Carousel, type CarouselProps, Checkbox, type CheckboxProps, type Column, EnvironmentalImpactModal, type EnvironmentalImpactModalProps, Footer, type FooterProps, type FrontSideProps, HeroCarousel, type HeroCarouselProps, type MobileNavigationLinkProps, Modal, type ModalProps, Navbar, type NavbarProps, type NavigationLinkProps, type Option, Pagination, type PaginationProps, ProductCard, type ProductCardProps, Select, type SelectProps, StatsCard, type StatsCardProps, Table, type TableProps, Text, TextInput, type TextInputProps, type TextProps, Textarea, type TextareaProps, Title, type TitleProps, bannerVariants, buttonVariants, checkboxVariants, cn, inputVariants, paginationButtonVariants, selectVariants, tableVariants, textVariants, textareaVariants, titleVariants };
package/dist/index.d.ts CHANGED
@@ -193,15 +193,26 @@ interface ModalProps extends VariantProps<typeof modalVariants> {
193
193
  }
194
194
  declare function Modal({ isOpen, onClose, children, title, size, showCloseButton, closeOnOverlayClick, closeOnEscape, className, }: ModalProps): React$1.ReactPortal | null;
195
195
 
196
+ interface NavigationLinkProps {
197
+ id: string;
198
+ label: string;
199
+ isAnchor?: boolean;
200
+ href?: string;
201
+ }
202
+ interface MobileNavigationLinkProps {
203
+ title: string;
204
+ links: NavigationLinkProps[];
205
+ }
196
206
  interface NavbarProps {
197
207
  brand?: React__default.ReactNode;
198
- navigationIcons?: Array<React__default.ReactNode>;
199
- navigationLinks?: Array<React__default.ReactNode>;
208
+ navigationLinks?: NavigationLinkProps[];
209
+ mobileMenuNavigationLinks?: MobileNavigationLinkProps[];
210
+ appNavigationItems?: React__default.ReactNode;
211
+ mobileMenuAppNavigationItems?: React__default.ReactNode;
200
212
  searchPlaceholder?: string;
201
213
  onSearch?: (query: string) => void;
202
- mobileMenuContent?: React__default.ReactNode;
203
- className?: string;
204
214
  searchEnabled?: boolean;
215
+ className?: string;
205
216
  sideMenuTitle?: string;
206
217
  navbarAriaLabel?: string;
207
218
  userActionsAriaLabel?: string;
@@ -209,7 +220,7 @@ interface NavbarProps {
209
220
  closeMobileMenuAriaLabel?: string;
210
221
  mobileMenuTitleAriaLabel?: string;
211
222
  }
212
- declare function Navbar({ navigationIcons, navigationLinks, brand, searchPlaceholder, onSearch, mobileMenuContent, className, searchEnabled, sideMenuTitle, navbarAriaLabel, userActionsAriaLabel, toggleMobileMenuAriaLabel, closeMobileMenuAriaLabel, mobileMenuTitleAriaLabel, }: NavbarProps): react_jsx_runtime.JSX.Element;
223
+ declare function Navbar({ brand, navigationLinks, mobileMenuNavigationLinks, appNavigationItems, mobileMenuAppNavigationItems, searchPlaceholder, onSearch, className, searchEnabled, sideMenuTitle, navbarAriaLabel, userActionsAriaLabel, toggleMobileMenuAriaLabel, closeMobileMenuAriaLabel, mobileMenuTitleAriaLabel, }: NavbarProps): react_jsx_runtime.JSX.Element;
213
224
 
214
225
  declare const paginationButtonVariants: (props?: ({
215
226
  variant?: "primary" | "outline" | "default" | null | undefined;
@@ -871,4 +882,4 @@ declare const Title: React$1.ForwardRefExoticComponent<TitleProps & React$1.RefA
871
882
  */
872
883
  declare function cn(...inputs: ClassValue[]): string;
873
884
 
874
- export { AdBanner, type AdBannerProps, type BackSideProps, Banner, type BannerProps, Button, type ButtonProps, Card, CardBackSide, CardFrontSide, type CardProps, Carousel, type CarouselProps, Checkbox, type CheckboxProps, type Column, EnvironmentalImpactModal, type EnvironmentalImpactModalProps, Footer, type FooterProps, type FrontSideProps, HeroCarousel, type HeroCarouselProps, Modal, type ModalProps, Navbar, type NavbarProps, type Option, Pagination, type PaginationProps, ProductCard, type ProductCardProps, Select, type SelectProps, StatsCard, type StatsCardProps, Table, type TableProps, Text, TextInput, type TextInputProps, type TextProps, Textarea, type TextareaProps, Title, type TitleProps, bannerVariants, buttonVariants, checkboxVariants, cn, inputVariants, paginationButtonVariants, selectVariants, tableVariants, textVariants, textareaVariants, titleVariants };
885
+ export { AdBanner, type AdBannerProps, type BackSideProps, Banner, type BannerProps, Button, type ButtonProps, Card, CardBackSide, CardFrontSide, type CardProps, Carousel, type CarouselProps, Checkbox, type CheckboxProps, type Column, EnvironmentalImpactModal, type EnvironmentalImpactModalProps, Footer, type FooterProps, type FrontSideProps, HeroCarousel, type HeroCarouselProps, type MobileNavigationLinkProps, Modal, type ModalProps, Navbar, type NavbarProps, type NavigationLinkProps, type Option, Pagination, type PaginationProps, ProductCard, type ProductCardProps, Select, type SelectProps, StatsCard, type StatsCardProps, Table, type TableProps, Text, TextInput, type TextInputProps, type TextProps, Textarea, type TextareaProps, Title, type TitleProps, bannerVariants, buttonVariants, checkboxVariants, cn, inputVariants, paginationButtonVariants, selectVariants, tableVariants, textVariants, textareaVariants, titleVariants };