@shopito/design-system-fe 0.1.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 +99 -0
- package/dist/BannerCarousel/BannerCarousel.d.ts +31 -0
- package/dist/BannerCarousel/BannerCarousel.d.ts.map +1 -0
- package/dist/BannerCarousel/index.d.ts +3 -0
- package/dist/BannerCarousel/index.d.ts.map +1 -0
- package/dist/CallToAction/CallToAction.d.ts +34 -0
- package/dist/CallToAction/CallToAction.d.ts.map +1 -0
- package/dist/CallToAction/index.d.ts +3 -0
- package/dist/CallToAction/index.d.ts.map +1 -0
- package/dist/CategoryTree/CategoryTree.d.ts +19 -0
- package/dist/CategoryTree/CategoryTree.d.ts.map +1 -0
- package/dist/CategoryTree/index.d.ts +3 -0
- package/dist/CategoryTree/index.d.ts.map +1 -0
- package/dist/Footer/Footer.d.ts +34 -0
- package/dist/Footer/Footer.d.ts.map +1 -0
- package/dist/Footer/index.d.ts +3 -0
- package/dist/Footer/index.d.ts.map +1 -0
- package/dist/Header/Header.d.ts +37 -0
- package/dist/Header/Header.d.ts.map +1 -0
- package/dist/Header/index.d.ts +3 -0
- package/dist/Header/index.d.ts.map +1 -0
- package/dist/MegaMenu/MegaMenu.d.ts +34 -0
- package/dist/MegaMenu/MegaMenu.d.ts.map +1 -0
- package/dist/MegaMenu/index.d.ts +3 -0
- package/dist/MegaMenu/index.d.ts.map +1 -0
- package/dist/ProductCard/ProductCard.d.ts +36 -0
- package/dist/ProductCard/ProductCard.d.ts.map +1 -0
- package/dist/ProductCard/index.d.ts +3 -0
- package/dist/ProductCard/index.d.ts.map +1 -0
- package/dist/ProductGrid/ProductGrid.d.ts +39 -0
- package/dist/ProductGrid/ProductGrid.d.ts.map +1 -0
- package/dist/ProductGrid/index.d.ts +3 -0
- package/dist/ProductGrid/index.d.ts.map +1 -0
- package/dist/common/Alert/Alert.d.ts +11 -0
- package/dist/common/Alert/Alert.d.ts.map +1 -0
- package/dist/common/Alert/index.d.ts +2 -0
- package/dist/common/Alert/index.d.ts.map +1 -0
- package/dist/common/Avatar/Avatar.d.ts +16 -0
- package/dist/common/Avatar/Avatar.d.ts.map +1 -0
- package/dist/common/Avatar/index.d.ts +2 -0
- package/dist/common/Avatar/index.d.ts.map +1 -0
- package/dist/common/Badge/Badge.d.ts +12 -0
- package/dist/common/Badge/Badge.d.ts.map +1 -0
- package/dist/common/Badge/index.d.ts +2 -0
- package/dist/common/Badge/index.d.ts.map +1 -0
- package/dist/common/Button/Button.d.ts +12 -0
- package/dist/common/Button/Button.d.ts.map +1 -0
- package/dist/common/Button/index.d.ts +2 -0
- package/dist/common/Button/index.d.ts.map +1 -0
- package/dist/common/Card/Card.d.ts +21 -0
- package/dist/common/Card/Card.d.ts.map +1 -0
- package/dist/common/Card/index.d.ts +2 -0
- package/dist/common/Card/index.d.ts.map +1 -0
- package/dist/common/Checkbox/Checkbox.d.ts +9 -0
- package/dist/common/Checkbox/Checkbox.d.ts.map +1 -0
- package/dist/common/Checkbox/index.d.ts +2 -0
- package/dist/common/Checkbox/index.d.ts.map +1 -0
- package/dist/common/Input/Input.d.ts +11 -0
- package/dist/common/Input/Input.d.ts.map +1 -0
- package/dist/common/Input/index.d.ts +2 -0
- package/dist/common/Input/index.d.ts.map +1 -0
- package/dist/common/Modal/Modal.d.ts +14 -0
- package/dist/common/Modal/Modal.d.ts.map +1 -0
- package/dist/common/Modal/index.d.ts +2 -0
- package/dist/common/Modal/index.d.ts.map +1 -0
- package/dist/common/Pagination/Pagination.d.ts +8 -0
- package/dist/common/Pagination/Pagination.d.ts.map +1 -0
- package/dist/common/Pagination/index.d.ts +2 -0
- package/dist/common/Pagination/index.d.ts.map +1 -0
- package/dist/common/Select/Select.d.ts +16 -0
- package/dist/common/Select/Select.d.ts.map +1 -0
- package/dist/common/Select/index.d.ts +2 -0
- package/dist/common/Select/index.d.ts.map +1 -0
- package/dist/common/Spinner/Spinner.d.ts +11 -0
- package/dist/common/Spinner/Spinner.d.ts.map +1 -0
- package/dist/common/Spinner/index.d.ts +2 -0
- package/dist/common/Spinner/index.d.ts.map +1 -0
- package/dist/common/Tabs/Tabs.d.ts +24 -0
- package/dist/common/Tabs/Tabs.d.ts.map +1 -0
- package/dist/common/Tabs/index.d.ts +2 -0
- package/dist/common/Tabs/index.d.ts.map +1 -0
- package/dist/common/Toggle/Toggle.d.ts +10 -0
- package/dist/common/Toggle/Toggle.d.ts.map +1 -0
- package/dist/common/Toggle/index.d.ts +2 -0
- package/dist/common/Toggle/index.d.ts.map +1 -0
- package/dist/common/Typography/Typography.d.ts +20 -0
- package/dist/common/Typography/Typography.d.ts.map +1 -0
- package/dist/common/Typography/index.d.ts +2 -0
- package/dist/common/Typography/index.d.ts.map +1 -0
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +44 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2089 -0
- package/dist/index.js.map +1 -0
- package/dist/style.cjs +0 -0
- package/dist/style.css +3 -0
- package/dist/style.js +0 -0
- package/package.json +78 -0
package/README.md
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
# React + TypeScript + Vite
|
|
2
|
+
|
|
3
|
+
This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
|
|
4
|
+
|
|
5
|
+
Currently, two official plugins are available:
|
|
6
|
+
|
|
7
|
+
- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react) uses [Oxc](https://oxc.rs)
|
|
8
|
+
- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc) uses [SWC](https://swc.rs/)
|
|
9
|
+
|
|
10
|
+
## React Compiler
|
|
11
|
+
|
|
12
|
+
The React Compiler is not enabled on this template because of its impact on dev & build performances. To add it, see [this documentation](https://react.dev/learn/react-compiler/installation).
|
|
13
|
+
|
|
14
|
+
## Expanding the ESLint configuration
|
|
15
|
+
|
|
16
|
+
If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules:
|
|
17
|
+
|
|
18
|
+
```js
|
|
19
|
+
export default defineConfig([
|
|
20
|
+
globalIgnores(['dist']),
|
|
21
|
+
{
|
|
22
|
+
files: ['**/*.{ts,tsx}'],
|
|
23
|
+
extends: [
|
|
24
|
+
// Other configs...
|
|
25
|
+
|
|
26
|
+
// Remove tseslint.configs.recommended and replace with this
|
|
27
|
+
tseslint.configs.recommendedTypeChecked,
|
|
28
|
+
// Alternatively, use this for stricter rules
|
|
29
|
+
tseslint.configs.strictTypeChecked,
|
|
30
|
+
// Optionally, add this for stylistic rules
|
|
31
|
+
tseslint.configs.stylisticTypeChecked,
|
|
32
|
+
|
|
33
|
+
// Other configs...
|
|
34
|
+
],
|
|
35
|
+
languageOptions: {
|
|
36
|
+
parserOptions: {
|
|
37
|
+
project: ['./tsconfig.node.json', './tsconfig.app.json'],
|
|
38
|
+
tsconfigRootDir: import.meta.dirname,
|
|
39
|
+
},
|
|
40
|
+
// other options...
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
])
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
You can also install [eslint-plugin-react-x](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-x) and [eslint-plugin-react-dom](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-dom) for React-specific lint rules:
|
|
47
|
+
|
|
48
|
+
```js
|
|
49
|
+
// eslint.config.js
|
|
50
|
+
import reactX from 'eslint-plugin-react-x'
|
|
51
|
+
import reactDom from 'eslint-plugin-react-dom'
|
|
52
|
+
|
|
53
|
+
export default defineConfig([
|
|
54
|
+
globalIgnores(['dist']),
|
|
55
|
+
{
|
|
56
|
+
files: ['**/*.{ts,tsx}'],
|
|
57
|
+
extends: [
|
|
58
|
+
// Other configs...
|
|
59
|
+
// Enable lint rules for React
|
|
60
|
+
reactX.configs['recommended-typescript'],
|
|
61
|
+
// Enable lint rules for React DOM
|
|
62
|
+
reactDom.configs.recommended,
|
|
63
|
+
],
|
|
64
|
+
languageOptions: {
|
|
65
|
+
parserOptions: {
|
|
66
|
+
project: ['./tsconfig.node.json', './tsconfig.app.json'],
|
|
67
|
+
tsconfigRootDir: import.meta.dirname,
|
|
68
|
+
},
|
|
69
|
+
// other options...
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
])
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
# Workflow pro publish
|
|
77
|
+
|
|
78
|
+
### Přihlásit se (jednou)
|
|
79
|
+
```
|
|
80
|
+
npm login
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### Publikovat (spustí prepublishOnly → build:lib automaticky)
|
|
84
|
+
```
|
|
85
|
+
npm publish --access public
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
### Nebo manuálně:
|
|
89
|
+
```
|
|
90
|
+
npm run build:lib
|
|
91
|
+
npm publish --access public
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Použití v jiné aplikaci
|
|
95
|
+
|
|
96
|
+
```
|
|
97
|
+
import { Button, Header, ProductGrid } from '@shopito/design-system'
|
|
98
|
+
import '@shopito/design-system/style.css'
|
|
99
|
+
```
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export interface Banner {
|
|
2
|
+
id: string;
|
|
3
|
+
/** Background image URL or gradient CSS value */
|
|
4
|
+
backgroundImage?: string;
|
|
5
|
+
backgroundColor?: string;
|
|
6
|
+
/** Overlaid text content */
|
|
7
|
+
eyebrow?: string;
|
|
8
|
+
title: string;
|
|
9
|
+
subtitle?: string;
|
|
10
|
+
ctaLabel?: string;
|
|
11
|
+
ctaHref?: string;
|
|
12
|
+
onCtaClick?: () => void;
|
|
13
|
+
/** Image on the right side of the banner */
|
|
14
|
+
sideImage?: string;
|
|
15
|
+
/** Text colors — default to white for dark backgrounds */
|
|
16
|
+
textColor?: 'light' | 'dark';
|
|
17
|
+
}
|
|
18
|
+
export interface BannerCarouselProps {
|
|
19
|
+
banners: Banner[];
|
|
20
|
+
autoPlay?: boolean;
|
|
21
|
+
autoPlayInterval?: number;
|
|
22
|
+
/** Show arrow navigation */
|
|
23
|
+
arrows?: boolean;
|
|
24
|
+
/** Show dot indicators */
|
|
25
|
+
dots?: boolean;
|
|
26
|
+
className?: string;
|
|
27
|
+
/** Aspect ratio of the banner — default 3/1 */
|
|
28
|
+
aspectRatio?: string;
|
|
29
|
+
}
|
|
30
|
+
export declare function BannerCarousel({ banners, autoPlay, autoPlayInterval, arrows, dots, className, aspectRatio, }: BannerCarouselProps): import("react/jsx-runtime").JSX.Element | null;
|
|
31
|
+
//# sourceMappingURL=BannerCarousel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BannerCarousel.d.ts","sourceRoot":"","sources":["../../src/components/BannerCarousel/BannerCarousel.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,iDAAiD;IACjD,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,4BAA4B;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAA;IACvB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;CAC7B;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,0BAA0B;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,+CAA+C;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,QAAe,EACf,gBAAuB,EACvB,MAAa,EACb,IAAW,EACX,SAAc,EACd,WAAqB,GACtB,EAAE,mBAAmB,kDAuMrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/BannerCarousel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,YAAY,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { ReactNode, CSSProperties } from 'react';
|
|
2
|
+
import type { ButtonProps } from '../common/Button/Button';
|
|
3
|
+
type CtaAlign = 'left' | 'center' | 'right';
|
|
4
|
+
type CtaSize = 'sm' | 'md' | 'lg' | 'xl';
|
|
5
|
+
type CtaVariant = 'default' | 'primary' | 'dark' | 'gradient' | 'outline' | 'image';
|
|
6
|
+
type CtaLayout = 'stacked' | 'inline';
|
|
7
|
+
export interface CtaAction {
|
|
8
|
+
label: string;
|
|
9
|
+
onClick?: () => void;
|
|
10
|
+
href?: string;
|
|
11
|
+
variant?: ButtonProps['variant'];
|
|
12
|
+
size?: ButtonProps['size'];
|
|
13
|
+
}
|
|
14
|
+
export interface CallToActionProps {
|
|
15
|
+
eyebrow?: string;
|
|
16
|
+
title: string;
|
|
17
|
+
description?: string;
|
|
18
|
+
actions?: CtaAction[];
|
|
19
|
+
align?: CtaAlign;
|
|
20
|
+
layout?: CtaLayout;
|
|
21
|
+
size?: CtaSize;
|
|
22
|
+
variant?: CtaVariant;
|
|
23
|
+
/** Custom background colour or gradient CSS value (overrides variant background) */
|
|
24
|
+
background?: string;
|
|
25
|
+
/** For variant="image": URL of background image */
|
|
26
|
+
backgroundImage?: string;
|
|
27
|
+
/** Extra decorative slot — e.g. an illustration, icon or badge */
|
|
28
|
+
media?: ReactNode;
|
|
29
|
+
className?: string;
|
|
30
|
+
style?: CSSProperties;
|
|
31
|
+
}
|
|
32
|
+
export declare function CallToAction({ eyebrow, title, description, actions, align, layout, size, variant, background, backgroundImage, media, className, style, }: CallToActionProps): import("react/jsx-runtime").JSX.Element;
|
|
33
|
+
export {};
|
|
34
|
+
//# sourceMappingURL=CallToAction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CallToAction.d.ts","sourceRoot":"","sources":["../../src/components/CallToAction/CallToAction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAI1D,KAAK,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;AAC3C,KAAK,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AACxC,KAAK,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,CAAA;AACnF,KAAK,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAA;AAErC,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;IAChC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAEhC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,SAAS,EAAE,CAAA;IAGrB,KAAK,CAAC,EAAE,QAAQ,CAAA;IAChB,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,CAAA;IAGd,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,oFAAoF;IACpF,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mDAAmD;IACnD,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,kEAAkE;IAClE,KAAK,CAAC,EAAE,SAAS,CAAA;IAGjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB;AAqCD,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,KAAK,EACL,WAAW,EACX,OAAY,EACZ,KAAgB,EAChB,MAAkB,EAClB,IAAW,EACX,OAAmB,EACnB,UAAU,EACV,eAAe,EACf,KAAK,EACL,SAAc,EACd,KAAK,GACN,EAAE,iBAAiB,2CA0EnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/CallToAction/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,YAAY,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export interface Category {
|
|
2
|
+
id: string;
|
|
3
|
+
label: string;
|
|
4
|
+
icon?: string;
|
|
5
|
+
count?: number;
|
|
6
|
+
children?: Category[];
|
|
7
|
+
}
|
|
8
|
+
export interface CategoryTreeProps {
|
|
9
|
+
categories: Category[];
|
|
10
|
+
activeId?: string;
|
|
11
|
+
onSelect?: (category: Category) => void;
|
|
12
|
+
/** Show product counts */
|
|
13
|
+
showCounts?: boolean;
|
|
14
|
+
/** All nodes expanded by default */
|
|
15
|
+
defaultExpandAll?: boolean;
|
|
16
|
+
className?: string;
|
|
17
|
+
}
|
|
18
|
+
export declare function CategoryTree({ categories, activeId, onSelect, showCounts, defaultExpandAll, className, ...props }: CategoryTreeProps): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
//# sourceMappingURL=CategoryTree.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CategoryTree.d.ts","sourceRoot":"","sources":["../../src/components/CategoryTree/CategoryTree.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAA;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,QAAQ,EAAE,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAA;IACvC,0BAA0B;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,oCAAoC;IACpC,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAsHD,wBAAgB,YAAY,CAAC,EAC3B,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,UAAiB,EACjB,gBAAwB,EACxB,SAAc,EACd,GAAG,KAAK,EACT,EAAE,iBAAiB,2CAwBnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/CategoryTree/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
export interface FooterContact {
|
|
3
|
+
icon?: 'phone' | 'email' | 'address' | 'hours' | ReactNode;
|
|
4
|
+
label: string;
|
|
5
|
+
value: string;
|
|
6
|
+
href?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface FooterLink {
|
|
9
|
+
label: string;
|
|
10
|
+
href?: string;
|
|
11
|
+
onClick?: () => void;
|
|
12
|
+
}
|
|
13
|
+
export interface FooterLinkGroup {
|
|
14
|
+
heading: string;
|
|
15
|
+
links: FooterLink[];
|
|
16
|
+
}
|
|
17
|
+
export interface FooterSocialLink {
|
|
18
|
+
label: string;
|
|
19
|
+
href?: string;
|
|
20
|
+
icon: 'facebook' | 'instagram' | 'twitter' | 'youtube' | 'tiktok' | ReactNode;
|
|
21
|
+
}
|
|
22
|
+
export interface FooterProps {
|
|
23
|
+
logo?: ReactNode;
|
|
24
|
+
tagline?: string;
|
|
25
|
+
contactHeading?: string;
|
|
26
|
+
contacts?: FooterContact[];
|
|
27
|
+
linkGroups?: FooterLinkGroup[];
|
|
28
|
+
socialLinks?: FooterSocialLink[];
|
|
29
|
+
copyright?: string;
|
|
30
|
+
bottomLinks?: FooterLink[];
|
|
31
|
+
className?: string;
|
|
32
|
+
}
|
|
33
|
+
export declare function Footer({ logo, tagline, contactHeading, contacts, linkGroups, socialLinks, copyright, bottomLinks, className, }: FooterProps): import("react/jsx-runtime").JSX.Element;
|
|
34
|
+
//# sourceMappingURL=Footer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Footer.d.ts","sourceRoot":"","sources":["../../src/components/Footer/Footer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAItC,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;IAC1D,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;CAC9E;AAED,MAAM,WAAW,WAAW;IAE1B,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAGhB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAA;IAG1B,UAAU,CAAC,EAAE,eAAe,EAAE,CAAA;IAG9B,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAGhC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAA;IAE1B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAmGD,wBAAgB,MAAM,CAAC,EACrB,IAAI,EACJ,OAAO,EACP,cAA2B,EAC3B,QAAa,EACb,UAAe,EACf,WAAgB,EAChB,SAAS,EACT,WAAgB,EAChB,SAAc,GACf,EAAE,WAAW,2CA4Ib"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/Footer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
export interface CurrencyOption {
|
|
3
|
+
code: string;
|
|
4
|
+
symbol: string;
|
|
5
|
+
label: string;
|
|
6
|
+
}
|
|
7
|
+
export interface LocaleOption {
|
|
8
|
+
code: string;
|
|
9
|
+
label: string;
|
|
10
|
+
flag?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface HeaderProps {
|
|
13
|
+
/** Logo — ReactNode (image, SVG, text) */
|
|
14
|
+
logo?: ReactNode;
|
|
15
|
+
/** Search placeholder */
|
|
16
|
+
searchPlaceholder?: string;
|
|
17
|
+
onSearch?: (query: string) => void;
|
|
18
|
+
/** Cart */
|
|
19
|
+
cartItemCount?: number;
|
|
20
|
+
onCartClick?: () => void;
|
|
21
|
+
/** Customer */
|
|
22
|
+
isLoggedIn?: boolean;
|
|
23
|
+
customerName?: string;
|
|
24
|
+
onCustomerClick?: () => void;
|
|
25
|
+
/** Currency */
|
|
26
|
+
currencies?: CurrencyOption[];
|
|
27
|
+
selectedCurrency?: string;
|
|
28
|
+
onCurrencyChange?: (code: string) => void;
|
|
29
|
+
/** Locale / eshop */
|
|
30
|
+
locales?: LocaleOption[];
|
|
31
|
+
selectedLocale?: string;
|
|
32
|
+
onLocaleChange?: (code: string) => void;
|
|
33
|
+
/** Extra right slot */
|
|
34
|
+
rightSlot?: ReactNode;
|
|
35
|
+
}
|
|
36
|
+
export declare function Header({ logo, searchPlaceholder, onSearch, cartItemCount, onCartClick, isLoggedIn, customerName, onCustomerClick, currencies, selectedCurrency, onCurrencyChange, locales, selectedLocale, onLocaleChange, rightSlot, }: HeaderProps): import("react/jsx-runtime").JSX.Element;
|
|
37
|
+
//# sourceMappingURL=Header.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../src/components/Header/Header.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,OAAO,CAAA;AAGrD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,0CAA0C;IAC1C,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,yBAAyB;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,WAAW;IACX,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAA;IACxB,eAAe;IACf,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,eAAe;IACf,UAAU,CAAC,EAAE,cAAc,EAAE,CAAA;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,qBAAqB;IACrB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAA;IACxB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,uBAAuB;IACvB,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB;AAiGD,wBAAgB,MAAM,CAAC,EACrB,IAAI,EACJ,iBAAsC,EACtC,QAAQ,EACR,aAAiB,EACjB,WAAW,EACX,UAAkB,EAClB,YAAY,EACZ,eAAe,EACf,UAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,OAAY,EACZ,cAAc,EACd,cAAc,EACd,SAAS,GACV,EAAE,WAAW,2CAgKb"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/Header/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export interface MegaMenuSubItem {
|
|
2
|
+
id: string;
|
|
3
|
+
label: string;
|
|
4
|
+
href?: string;
|
|
5
|
+
badge?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface MegaMenuColumn {
|
|
8
|
+
heading?: string;
|
|
9
|
+
items: MegaMenuSubItem[];
|
|
10
|
+
}
|
|
11
|
+
export interface MegaMenuFeatured {
|
|
12
|
+
image?: string;
|
|
13
|
+
eyebrow?: string;
|
|
14
|
+
title: string;
|
|
15
|
+
description?: string;
|
|
16
|
+
cta?: string;
|
|
17
|
+
href?: string;
|
|
18
|
+
}
|
|
19
|
+
export interface MegaMenuItem {
|
|
20
|
+
id: string;
|
|
21
|
+
label: string;
|
|
22
|
+
icon?: string;
|
|
23
|
+
href?: string;
|
|
24
|
+
/** If columns are present, hovering opens the mega panel */
|
|
25
|
+
columns?: MegaMenuColumn[];
|
|
26
|
+
featured?: MegaMenuFeatured;
|
|
27
|
+
}
|
|
28
|
+
export interface MegaMenuProps {
|
|
29
|
+
items: MegaMenuItem[];
|
|
30
|
+
activeId?: string;
|
|
31
|
+
onNavigate?: (item: MegaMenuSubItem | MegaMenuItem) => void;
|
|
32
|
+
}
|
|
33
|
+
export declare function MegaMenu({ items, activeId, onNavigate, }: MegaMenuProps): import("react/jsx-runtime").JSX.Element;
|
|
34
|
+
//# sourceMappingURL=MegaMenu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MegaMenu.d.ts","sourceRoot":"","sources":["../../src/components/MegaMenu/MegaMenu.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,eAAe,EAAE,CAAA;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,4DAA4D;IAC5D,OAAO,CAAC,EAAE,cAAc,EAAE,CAAA;IAC1B,QAAQ,CAAC,EAAE,gBAAgB,CAAA;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,YAAY,EAAE,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,GAAG,YAAY,KAAK,IAAI,CAAA;CAC5D;AAoGD,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,QAAQ,EACR,UAAU,GACX,EAAE,aAAa,2CAmGf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/MegaMenu/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export interface ProductCardProduct {
|
|
2
|
+
id: string;
|
|
3
|
+
name: string;
|
|
4
|
+
slug?: string;
|
|
5
|
+
/** Primary image URL */
|
|
6
|
+
image?: string;
|
|
7
|
+
/** Secondary image on hover */
|
|
8
|
+
imageHover?: string;
|
|
9
|
+
price: number;
|
|
10
|
+
originalPrice?: number;
|
|
11
|
+
currency?: string;
|
|
12
|
+
/** 'new' | 'sale' | 'hot' | custom string */
|
|
13
|
+
badge?: string;
|
|
14
|
+
/** 0–5 */
|
|
15
|
+
rating?: number;
|
|
16
|
+
reviewCount?: number;
|
|
17
|
+
inStock?: boolean;
|
|
18
|
+
/** Variants available (e.g. colors) */
|
|
19
|
+
variants?: {
|
|
20
|
+
id: string;
|
|
21
|
+
color?: string;
|
|
22
|
+
label: string;
|
|
23
|
+
}[];
|
|
24
|
+
}
|
|
25
|
+
export interface ProductCardProps {
|
|
26
|
+
product: ProductCardProduct;
|
|
27
|
+
onAddToCart?: (product: ProductCardProduct) => void;
|
|
28
|
+
onWishlistToggle?: (product: ProductCardProduct) => void;
|
|
29
|
+
isWishlisted?: boolean;
|
|
30
|
+
onProductClick?: (product: ProductCardProduct) => void;
|
|
31
|
+
/** compact — narrower, used in grids with 4+ columns */
|
|
32
|
+
size?: 'default' | 'compact';
|
|
33
|
+
className?: string;
|
|
34
|
+
}
|
|
35
|
+
export declare function ProductCard({ product, onAddToCart, onWishlistToggle, isWishlisted, onProductClick, size, className, }: ProductCardProps): import("react/jsx-runtime").JSX.Element;
|
|
36
|
+
//# sourceMappingURL=ProductCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProductCard.d.ts","sourceRoot":"","sources":["../../src/components/ProductCard/ProductCard.tsx"],"names":[],"mappings":"AAIA,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,+BAA+B;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU;IACV,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,uCAAuC;IACvC,QAAQ,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAC3D;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,kBAAkB,CAAA;IAC3B,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACnD,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACxD,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,IAAI,CAAA;IACtD,wDAAwD;IACxD,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,CAAA;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAkDD,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,YAAoB,EACpB,cAAc,EACd,IAAgB,EAChB,SAAc,GACf,EAAE,gBAAgB,2CA2KlB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/ProductCard/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { ProductCardProduct, ProductCardProps } from '../ProductCard/ProductCard';
|
|
3
|
+
export type GridColumns = 2 | 3 | 4 | 5;
|
|
4
|
+
export interface SortOption {
|
|
5
|
+
value: string;
|
|
6
|
+
label: string;
|
|
7
|
+
}
|
|
8
|
+
export interface ProductGridProps {
|
|
9
|
+
products: ProductCardProduct[];
|
|
10
|
+
/** Total products (for pagination) */
|
|
11
|
+
totalCount?: number;
|
|
12
|
+
/** Current page */
|
|
13
|
+
page?: number;
|
|
14
|
+
onPageChange?: (page: number) => void;
|
|
15
|
+
/** Products per page */
|
|
16
|
+
perPage?: number;
|
|
17
|
+
/** Column count */
|
|
18
|
+
columns?: GridColumns;
|
|
19
|
+
/** Sort options */
|
|
20
|
+
sortOptions?: SortOption[];
|
|
21
|
+
selectedSort?: string;
|
|
22
|
+
onSortChange?: (value: string) => void;
|
|
23
|
+
/** Active filters summary */
|
|
24
|
+
activeFilters?: string[];
|
|
25
|
+
onRemoveFilter?: (filter: string) => void;
|
|
26
|
+
onClearFilters?: () => void;
|
|
27
|
+
/** Loading skeleton */
|
|
28
|
+
loading?: boolean;
|
|
29
|
+
/** Empty state slot */
|
|
30
|
+
emptyState?: ReactNode;
|
|
31
|
+
/** ProductCard passthrough props */
|
|
32
|
+
onAddToCart?: ProductCardProps['onAddToCart'];
|
|
33
|
+
onWishlistToggle?: ProductCardProps['onWishlistToggle'];
|
|
34
|
+
onProductClick?: ProductCardProps['onProductClick'];
|
|
35
|
+
wishlisted?: string[];
|
|
36
|
+
className?: string;
|
|
37
|
+
}
|
|
38
|
+
export declare function ProductGrid({ products, totalCount, page, onPageChange, perPage, columns, sortOptions, selectedSort, onSortChange, activeFilters, onRemoveFilter, onClearFilters, loading, emptyState, onAddToCart, onWishlistToggle, onProductClick, wishlisted, className, }: ProductGridProps): import("react/jsx-runtime").JSX.Element;
|
|
39
|
+
//# sourceMappingURL=ProductGrid.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProductGrid.d.ts","sourceRoot":"","sources":["../../src/components/ProductGrid/ProductGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAItF,MAAM,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAEvC,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,kBAAkB,EAAE,CAAA;IAC9B,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mBAAmB;IACnB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACrC,wBAAwB;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,mBAAmB;IACnB,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB,mBAAmB;IACnB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAA;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACtC,6BAA6B;IAC7B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;IAC3B,uBAAuB;IACvB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,uBAAuB;IACvB,UAAU,CAAC,EAAE,SAAS,CAAA;IACtB,oCAAoC;IACpC,WAAW,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAA;IAC7C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;IACvD,cAAc,CAAC,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAA;IACnD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AA8BD,wBAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,UAAU,EACV,IAAQ,EACR,YAAY,EACZ,OAAY,EACZ,OAAW,EACX,WAAkC,EAClC,YAAY,EACZ,YAAY,EACZ,aAAkB,EAClB,cAAc,EACd,cAAc,EACd,OAAe,EACf,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,UAAe,EACf,SAAc,GACf,EAAE,gBAAgB,2CAyGlB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/ProductGrid/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
type AlertVariant = 'info' | 'success' | 'warning' | 'danger';
|
|
3
|
+
export interface AlertProps extends HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
variant?: AlertVariant;
|
|
5
|
+
title?: string;
|
|
6
|
+
children: ReactNode;
|
|
7
|
+
onClose?: () => void;
|
|
8
|
+
}
|
|
9
|
+
export declare function Alert({ variant, title, children, onClose, className, ...props }: AlertProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=Alert.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Alert.d.ts","sourceRoot":"","sources":["../../../src/components/common/Alert/Alert.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtD,KAAK,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAA;AAE7D,MAAM,WAAW,UAAW,SAAQ,cAAc,CAAC,cAAc,CAAC;IAChE,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,SAAS,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB;AAoDD,wBAAgB,KAAK,CAAC,EACpB,OAAgB,EAChB,KAAK,EACL,QAAQ,EACR,OAAO,EACP,SAAc,EACd,GAAG,KAAK,EACT,EAAE,UAAU,2CAqDZ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/common/Alert/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
type AvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
3
|
+
export interface AvatarProps extends HTMLAttributes<HTMLSpanElement> {
|
|
4
|
+
src?: string;
|
|
5
|
+
alt?: string;
|
|
6
|
+
name?: string;
|
|
7
|
+
size?: AvatarSize;
|
|
8
|
+
}
|
|
9
|
+
export interface AvatarGroupProps extends HTMLAttributes<HTMLDivElement> {
|
|
10
|
+
max?: number;
|
|
11
|
+
size?: AvatarSize;
|
|
12
|
+
children: ReactNode;
|
|
13
|
+
}
|
|
14
|
+
export declare function Avatar({ src, alt, name, size, className, ...props }: AvatarProps): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=Avatar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../src/components/common/Avatar/Avatar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtD,KAAK,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAElD,MAAM,WAAW,WAAY,SAAQ,cAAc,CAAC,eAAe,CAAC;IAClE,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,UAAU,CAAA;CAClB;AAED,MAAM,WAAW,gBAAiB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACtE,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,QAAQ,EAAE,SAAS,CAAA;CACpB;AAsCD,wBAAgB,MAAM,CAAC,EACrB,GAAG,EACH,GAAG,EACH,IAAI,EACJ,IAAW,EACX,SAAc,EACd,GAAG,KAAK,EACT,EAAE,WAAW,2CA0Cb"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/common/Avatar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
type BadgeVariant = 'default' | 'primary' | 'success' | 'warning' | 'danger' | 'outline';
|
|
3
|
+
type BadgeSize = 'sm' | 'md';
|
|
4
|
+
export interface BadgeProps extends HTMLAttributes<HTMLSpanElement> {
|
|
5
|
+
variant?: BadgeVariant;
|
|
6
|
+
size?: BadgeSize;
|
|
7
|
+
dot?: boolean;
|
|
8
|
+
children: ReactNode;
|
|
9
|
+
}
|
|
10
|
+
export declare function Badge({ variant, size, dot, className, children, ...props }: BadgeProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=Badge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../src/components/common/Badge/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtD,KAAK,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;AACxF,KAAK,SAAS,GAAG,IAAI,GAAG,IAAI,CAAA;AAE5B,MAAM,WAAW,UAAW,SAAQ,cAAc,CAAC,eAAe,CAAC;IACjE,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,QAAQ,EAAE,SAAS,CAAA;CACpB;AAyBD,wBAAgB,KAAK,CAAC,EACpB,OAAmB,EACnB,IAAW,EACX,GAAW,EACX,SAAc,EACd,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,UAAU,2CAqBZ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/common/Badge/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ButtonHTMLAttributes } from 'react';
|
|
2
|
+
type Variant = 'primary' | 'secondary' | 'outline' | 'ghost' | 'danger';
|
|
3
|
+
type Size = 'xs' | 'sm' | 'md' | 'lg';
|
|
4
|
+
export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
5
|
+
variant?: Variant;
|
|
6
|
+
size?: Size;
|
|
7
|
+
loading?: boolean;
|
|
8
|
+
fullWidth?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare const Button: import("react").ForwardRefExoticComponent<ButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=Button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/common/Button/Button.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAA;AAEjD,KAAK,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAA;AACvE,KAAK,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAErC,MAAM,WAAW,WAAY,SAAQ,oBAAoB,CAAC,iBAAiB,CAAC;IAC1E,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAsBD,eAAO,MAAM,MAAM,2GA2DlB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/common/Button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
export interface CardProps extends HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
padding?: 'none' | 'sm' | 'md' | 'lg';
|
|
5
|
+
shadow?: boolean;
|
|
6
|
+
border?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface CardHeaderProps extends HTMLAttributes<HTMLDivElement> {
|
|
9
|
+
children: ReactNode;
|
|
10
|
+
}
|
|
11
|
+
export interface CardBodyProps extends HTMLAttributes<HTMLDivElement> {
|
|
12
|
+
children: ReactNode;
|
|
13
|
+
}
|
|
14
|
+
export interface CardFooterProps extends HTMLAttributes<HTMLDivElement> {
|
|
15
|
+
children: ReactNode;
|
|
16
|
+
}
|
|
17
|
+
export declare function Card({ children, padding, shadow, border, className, ...props }: CardProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export declare function CardHeader({ children, className, ...props }: CardHeaderProps): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
export declare function CardBody({ children, className, ...props }: CardBodyProps): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export declare function CardFooter({ children, className, ...props }: CardFooterProps): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
//# sourceMappingURL=Card.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../src/components/common/Card/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtD,MAAM,WAAW,SAAU,SAAQ,cAAc,CAAC,cAAc,CAAC;IAC/D,QAAQ,EAAE,SAAS,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACrC,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,WAAW,eAAgB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACrE,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,cAAc,CAAC;IACnE,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,MAAM,WAAW,eAAgB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACrE,QAAQ,EAAE,SAAS,CAAA;CACpB;AASD,wBAAgB,IAAI,CAAC,EACnB,QAAQ,EACR,OAAc,EACd,MAAa,EACb,MAAa,EACb,SAAc,EACd,GAAG,KAAK,EACT,EAAE,SAAS,2CAiBX;AAED,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAc,EAAE,GAAG,KAAK,EAAE,EAAE,eAAe,2CASjF;AAED,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,SAAc,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,2CAM7E;AAED,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAc,EAAE,GAAG,KAAK,EAAE,EAAE,eAAe,2CAcjF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/common/Card/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA"}
|