@club-employes/utopia 4.42.0 → 4.44.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.
Files changed (122) hide show
  1. package/README.md +7 -1
  2. package/dist/components/atoms/Button/Button.d.ts +30 -0
  3. package/dist/components/atoms/Button/index.d.ts +1 -0
  4. package/dist/components/atoms/Button/types.d.ts +9 -0
  5. package/dist/components/atoms/Card/Card.d.ts +25 -0
  6. package/dist/components/atoms/Card/index.d.ts +2 -0
  7. package/dist/components/atoms/Card/types.d.ts +7 -0
  8. package/dist/components/atoms/Checkbox/Checkbox.d.ts +27 -0
  9. package/dist/components/atoms/Checkbox/index.d.ts +1 -0
  10. package/dist/components/atoms/Checkbox/types.d.ts +5 -0
  11. package/dist/components/atoms/Chip/Chip.d.ts +30 -0
  12. package/dist/components/atoms/Chip/index.d.ts +2 -0
  13. package/dist/components/atoms/Chip/types.d.ts +11 -0
  14. package/dist/components/atoms/Icon/Icon.d.ts +23 -0
  15. package/dist/components/atoms/Icon/index.d.ts +2 -0
  16. package/dist/components/atoms/InputText/InputText.d.ts +41 -0
  17. package/dist/components/atoms/InputText/index.d.ts +1 -0
  18. package/dist/components/atoms/InputText/types.d.ts +22 -0
  19. package/dist/components/atoms/Link/Link.d.ts +22 -0
  20. package/dist/components/atoms/Link/LinkContent.d.ts +12 -0
  21. package/dist/components/atoms/Link/index.d.ts +1 -0
  22. package/dist/components/atoms/Link/types.d.ts +11 -0
  23. package/dist/components/atoms/Logo/Logo.d.ts +20 -0
  24. package/dist/components/atoms/Logo/index.d.ts +2 -0
  25. package/dist/components/atoms/Logo/types.d.ts +10 -0
  26. package/dist/components/atoms/RangeSlider/RangeSlider.d.ts +18 -0
  27. package/dist/components/atoms/RangeSlider/index.d.ts +1 -0
  28. package/dist/components/atoms/RangeSlider/types.d.ts +8 -0
  29. package/dist/components/atoms/Skeleton/Skeleton.d.ts +35 -0
  30. package/dist/components/atoms/Skeleton/SkeletonAvatar.d.ts +12 -0
  31. package/dist/components/atoms/Skeleton/SkeletonText.d.ts +16 -0
  32. package/dist/components/atoms/Skeleton/index.d.ts +3 -0
  33. package/dist/components/atoms/Skeleton/types.d.ts +21 -0
  34. package/dist/components/atoms/Switch/Switch.d.ts +27 -0
  35. package/dist/components/atoms/Switch/index.d.ts +1 -0
  36. package/dist/components/atoms/Switch/types.d.ts +6 -0
  37. package/dist/components/atoms/Text/Text.d.ts +24 -0
  38. package/dist/components/atoms/Text/index.d.ts +1 -0
  39. package/dist/components/atoms/Text/types.d.ts +16 -0
  40. package/dist/components/atoms/index.d.ts +23 -0
  41. package/dist/components/index.d.ts +4 -0
  42. package/dist/components/layouts/AuthLayout/AuthLayout.d.ts +56 -0
  43. package/dist/components/layouts/AuthLayout/index.d.ts +1 -0
  44. package/dist/components/layouts/AuthLayout/types.d.ts +5 -0
  45. package/dist/components/layouts/DefaultLayout/DefaultLayout.d.ts +48 -0
  46. package/dist/components/layouts/DefaultLayout/components/Header.d.ts +27 -0
  47. package/dist/components/layouts/DefaultLayout/components/Menu.d.ts +44 -0
  48. package/dist/components/layouts/DefaultLayout/components/MenuSection.d.ts +11 -0
  49. package/dist/components/layouts/DefaultLayout/components/MobileMenu.d.ts +34 -0
  50. package/dist/components/layouts/DefaultLayout/components/MobileMenuButton.d.ts +8 -0
  51. package/dist/components/layouts/DefaultLayout/components/NavItem.d.ts +43 -0
  52. package/dist/components/layouts/DefaultLayout/components/index.d.ts +6 -0
  53. package/dist/components/layouts/DefaultLayout/index.d.ts +1 -0
  54. package/dist/components/layouts/index.d.ts +7 -0
  55. package/dist/components/molecules/BottomSheet/BottomSheet.d.ts +31 -0
  56. package/dist/components/molecules/BottomSheet/index.d.ts +2 -0
  57. package/dist/components/molecules/BottomSheet/types.d.ts +10 -0
  58. package/dist/components/molecules/DropDown/DropDown.d.ts +109 -0
  59. package/dist/components/molecules/DropDown/index.d.ts +1 -0
  60. package/dist/components/molecules/DropDown/types.d.ts +21 -0
  61. package/dist/components/molecules/FeedbackState/FeedbackState.d.ts +14 -0
  62. package/dist/components/molecules/FeedbackState/index.d.ts +1 -0
  63. package/dist/components/molecules/FeedbackState/types.d.ts +11 -0
  64. package/dist/components/molecules/FilterChip/FilterChip.d.ts +14 -0
  65. package/dist/components/molecules/FilterChip/index.d.ts +1 -0
  66. package/dist/components/molecules/FilterChip/types.d.ts +7 -0
  67. package/dist/components/molecules/InputCode/InputCode.d.ts +43 -0
  68. package/dist/components/molecules/InputCode/index.d.ts +2 -0
  69. package/dist/components/molecules/InputCode/types.d.ts +13 -0
  70. package/dist/components/molecules/Modal/Modal.d.ts +187 -0
  71. package/dist/components/molecules/Modal/index.d.ts +1 -0
  72. package/dist/components/molecules/Modal/types.d.ts +22 -0
  73. package/dist/components/molecules/PriceTag/PriceTag.d.ts +9 -0
  74. package/dist/components/molecules/PriceTag/index.d.ts +1 -0
  75. package/dist/components/molecules/PriceTag/types.d.ts +9 -0
  76. package/dist/components/molecules/SearchBox/SearchBox.d.ts +26 -0
  77. package/dist/components/molecules/SearchBox/index.d.ts +1 -0
  78. package/dist/components/molecules/SearchBox/types.d.ts +7 -0
  79. package/dist/components/molecules/Slider/Slider.d.ts +38 -0
  80. package/dist/components/molecules/Slider/SliderProps.d.ts +17 -0
  81. package/dist/components/molecules/Slider/index.d.ts +2 -0
  82. package/dist/components/molecules/Tooltip/Tooltip.d.ts +37 -0
  83. package/dist/components/molecules/Tooltip/index.d.ts +1 -0
  84. package/dist/components/molecules/Tooltip/types.d.ts +10 -0
  85. package/dist/components/molecules/index.d.ts +13 -0
  86. package/dist/components/organisms/BalanceCard/BalanceCard.d.ts +26 -0
  87. package/dist/components/organisms/BalanceCard/index.d.ts +2 -0
  88. package/dist/components/organisms/BalanceCard/types.d.ts +13 -0
  89. package/dist/components/organisms/BalanceCardGroup/BalanceCardGroup.d.ts +20 -0
  90. package/dist/components/organisms/BalanceCardGroup/index.d.ts +2 -0
  91. package/dist/components/organisms/BalanceCardGroup/types.d.ts +14 -0
  92. package/dist/components/organisms/Breadcrumbs/Breadcrumbs.d.ts +4 -0
  93. package/dist/components/organisms/Breadcrumbs/index.d.ts +1 -0
  94. package/dist/components/organisms/Breadcrumbs/types.d.ts +9 -0
  95. package/dist/components/organisms/DataTable/DataTable.d.ts +54 -0
  96. package/dist/components/organisms/DataTable/index.d.ts +1 -0
  97. package/dist/components/organisms/FilterPrice/FilterPrice.d.ts +14 -0
  98. package/dist/components/organisms/FilterPrice/index.d.ts +1 -0
  99. package/dist/components/organisms/FilterPrice/types.d.ts +9 -0
  100. package/dist/components/organisms/PageNavigation/PageNavigation.d.ts +18 -0
  101. package/dist/components/organisms/PageNavigation/index.d.ts +1 -0
  102. package/dist/components/organisms/PageNavigation/types.d.ts +11 -0
  103. package/dist/components/organisms/ProductCard/ProductCard.d.ts +28 -0
  104. package/dist/components/organisms/ProductCard/index.d.ts +1 -0
  105. package/dist/components/organisms/ProductCard/types.d.ts +19 -0
  106. package/dist/components/organisms/index.d.ts +9 -0
  107. package/dist/composables/index.d.ts +6 -0
  108. package/dist/composables/initializeTheme.d.ts +49 -0
  109. package/dist/composables/useBreakpoints.d.ts +11 -0
  110. package/dist/composables/useCurrency.d.ts +6 -0
  111. package/dist/composables/useFavicon.d.ts +10 -0
  112. package/dist/composables/useScrollShadows.d.ts +46 -0
  113. package/dist/composables/useTheme.d.ts +22 -0
  114. package/dist/icons-list.json +1 -1
  115. package/dist/index.d.ts +35 -522
  116. package/dist/index.js +765 -761
  117. package/dist/theme-provider/ThemeProvider.d.ts +28 -0
  118. package/dist/theme-provider/index.d.ts +11 -0
  119. package/dist/themes/club-employes/index.d.ts +4 -0
  120. package/dist/themes/gifteo/index.d.ts +4 -0
  121. package/dist/utopia.css +1 -1
  122. package/package.json +2 -2
package/README.md CHANGED
@@ -295,7 +295,7 @@ All components follow WCAG 2.1 AA guidelines:
295
295
 
296
296
  ## 🔧 TypeScript Support
297
297
 
298
- Full TypeScript definitions included:
298
+ Full TypeScript definitions are **automatically generated** from source code via `vite-plugin-dts`:
299
299
 
300
300
  ```typescript
301
301
  import type { ButtonProps, IconProps, ThemeConfig } from '@club-employes/utopia'
@@ -307,6 +307,12 @@ const buttonProps: ButtonProps = {
307
307
  }
308
308
  ```
309
309
 
310
+ **How it works:**
311
+ - ✅ Component props are defined in local `types.ts` files (source of truth)
312
+ - ✅ Types are automatically compiled to `dist/index.d.ts` during build
313
+ - ✅ Full IntelliSense and autocompletion support
314
+ - ✅ No manual type definitions needed
315
+
310
316
  ## 📊 Bundle Size
311
317
 
312
318
  - **Full package**: ~150KB (minified + gzipped)
@@ -0,0 +1,30 @@
1
+ import { ButtonProps } from './types';
2
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
3
+ declare function __VLS_template(): {
4
+ attrs: Partial<{}>;
5
+ slots: {
6
+ default?(_: {}): any;
7
+ };
8
+ refs: {};
9
+ rootEl: HTMLButtonElement;
10
+ };
11
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
12
+ declare const __VLS_component: DefineComponent<ButtonProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
13
+ click: (event: MouseEvent) => any;
14
+ }, string, PublicProps, Readonly<ButtonProps> & Readonly<{
15
+ onClick?: ((event: MouseEvent) => any) | undefined;
16
+ }>, {
17
+ size: "xs" | "sm" | "md" | "lg" | "xl";
18
+ variant: "primary" | "secondary" | "tertiary";
19
+ disabled: boolean;
20
+ loading: boolean;
21
+ iconPosition: "left" | "right";
22
+ ariaLabel: string;
23
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLButtonElement>;
24
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
25
+ export default _default;
26
+ type __VLS_WithTemplateSlots<T, S> = T & {
27
+ new (): {
28
+ $slots: S;
29
+ };
30
+ };
@@ -0,0 +1 @@
1
+ export { default as Button } from './Button';
@@ -0,0 +1,9 @@
1
+ export interface ButtonProps {
2
+ variant?: 'primary' | 'secondary' | 'tertiary';
3
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
4
+ disabled?: boolean;
5
+ loading?: boolean;
6
+ icon?: string;
7
+ iconPosition?: 'left' | 'right';
8
+ ariaLabel?: string;
9
+ }
@@ -0,0 +1,25 @@
1
+ import { CardProps } from './types';
2
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
3
+ declare function __VLS_template(): {
4
+ attrs: Partial<{}>;
5
+ slots: {
6
+ default?(_: {}): any;
7
+ };
8
+ refs: {};
9
+ rootEl: HTMLDivElement;
10
+ };
11
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
12
+ declare const __VLS_component: DefineComponent<CardProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<CardProps> & Readonly<{}>, {
13
+ size: "small" | "medium" | "large";
14
+ variant: "default" | "elevated" | "outlined";
15
+ disabled: boolean;
16
+ interactive: boolean;
17
+ active: boolean;
18
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
19
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
20
+ export default _default;
21
+ type __VLS_WithTemplateSlots<T, S> = T & {
22
+ new (): {
23
+ $slots: S;
24
+ };
25
+ };
@@ -0,0 +1,2 @@
1
+ export { default as Card } from './Card';
2
+ export type { CardProps } from './types';
@@ -0,0 +1,7 @@
1
+ export interface CardProps {
2
+ variant?: 'default' | 'elevated' | 'outlined';
3
+ size?: 'small' | 'medium' | 'large';
4
+ disabled?: boolean;
5
+ interactive?: boolean;
6
+ active?: boolean;
7
+ }
@@ -0,0 +1,27 @@
1
+ import { CheckboxProps } from './types';
2
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
3
+ declare function __VLS_template(): {
4
+ attrs: Partial<{}>;
5
+ slots: {
6
+ default?(_: {}): any;
7
+ };
8
+ refs: {};
9
+ rootEl: HTMLLabelElement;
10
+ };
11
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
12
+ declare const __VLS_component: DefineComponent<CheckboxProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
13
+ "update:modelValue": (value: boolean) => any;
14
+ }, string, PublicProps, Readonly<CheckboxProps> & Readonly<{
15
+ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
16
+ }>, {
17
+ size: "small" | "medium" | "large";
18
+ disabled: boolean;
19
+ modelValue: boolean;
20
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLLabelElement>;
21
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
22
+ export default _default;
23
+ type __VLS_WithTemplateSlots<T, S> = T & {
24
+ new (): {
25
+ $slots: S;
26
+ };
27
+ };
@@ -0,0 +1 @@
1
+ export { default as Checkbox } from './Checkbox';
@@ -0,0 +1,5 @@
1
+ export interface CheckboxProps {
2
+ modelValue?: boolean;
3
+ disabled?: boolean;
4
+ size?: 'small' | 'medium' | 'large';
5
+ }
@@ -0,0 +1,30 @@
1
+ import { ChipProps } from './types';
2
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
3
+ declare function __VLS_template(): {
4
+ attrs: Partial<{}>;
5
+ slots: {
6
+ default?(_: {}): any;
7
+ };
8
+ refs: {};
9
+ rootEl: HTMLDivElement;
10
+ };
11
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
12
+ declare const __VLS_component: DefineComponent<ChipProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
13
+ remove: () => any;
14
+ }, string, PublicProps, Readonly<ChipProps> & Readonly<{
15
+ onRemove?: (() => any) | undefined;
16
+ }>, {
17
+ size: "extra-small" | "small" | "medium" | "large";
18
+ variant: "default" | "primary" | "secondary" | "success" | "warning" | "danger";
19
+ disabled: boolean;
20
+ removable: boolean;
21
+ actionable: boolean;
22
+ ghost: boolean;
23
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
24
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
25
+ export default _default;
26
+ type __VLS_WithTemplateSlots<T, S> = T & {
27
+ new (): {
28
+ $slots: S;
29
+ };
30
+ };
@@ -0,0 +1,2 @@
1
+ export { default as Chip } from './Chip';
2
+ export type { ChipProps } from './types';
@@ -0,0 +1,11 @@
1
+ export interface ChipProps {
2
+ variant?: 'default' | 'primary' | 'secondary' | 'success' | 'warning' | 'danger';
3
+ size?: 'extra-small' | 'small' | 'medium' | 'large';
4
+ disabled?: boolean;
5
+ removable?: boolean;
6
+ leftIcon?: string;
7
+ actionable?: boolean;
8
+ ghost?: boolean;
9
+ customColor?: string;
10
+ customTextColor?: string;
11
+ }
@@ -0,0 +1,23 @@
1
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
2
+ export type IconName = string;
3
+ export type IconSize = 'extra-small' | 'small' | 'medium' | 'large';
4
+ export type IconColor = 'primary' | 'secondary' | 'success' | 'warning' | 'danger' | 'neutral' | 'current';
5
+ interface Props {
6
+ /** Nom de l'icône (catégorie/nom ou juste nom) */
7
+ name: IconName;
8
+ /** Taille de l'icône */
9
+ size?: IconSize;
10
+ /** Couleur de l'icône */
11
+ color?: IconColor;
12
+ /** Épaisseur du trait (stroke-width) */
13
+ strokeWidth?: number | string;
14
+ /** Texte alternatif pour l'accessibilité */
15
+ alt?: string;
16
+ /** Classes CSS personnalisées */
17
+ class?: string;
18
+ }
19
+ declare const _default: DefineComponent<Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props> & Readonly<{}>, {
20
+ size: IconSize;
21
+ color: IconColor;
22
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLSpanElement>;
23
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export { default as Icon } from './Icon';
2
+ export type { IconName, IconSize, IconColor } from './Icon';
@@ -0,0 +1,41 @@
1
+ import { InputTextProps } from './types';
2
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
3
+ declare const _default: DefineComponent<InputTextProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
4
+ input: (event: Event) => any;
5
+ blur: (event: FocusEvent) => any;
6
+ change: (event: Event) => any;
7
+ focus: (event: FocusEvent) => any;
8
+ keydown: (event: KeyboardEvent) => any;
9
+ paste: (event: ClipboardEvent) => any;
10
+ "update:modelValue": (value: string) => any;
11
+ "icon-click": (event: MouseEvent) => any;
12
+ }, string, PublicProps, Readonly<InputTextProps> & Readonly<{
13
+ onInput?: ((event: Event) => any) | undefined;
14
+ onBlur?: ((event: FocusEvent) => any) | undefined;
15
+ onChange?: ((event: Event) => any) | undefined;
16
+ onFocus?: ((event: FocusEvent) => any) | undefined;
17
+ onKeydown?: ((event: KeyboardEvent) => any) | undefined;
18
+ onPaste?: ((event: ClipboardEvent) => any) | undefined;
19
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
20
+ "onIcon-click"?: ((event: MouseEvent) => any) | undefined;
21
+ }>, {
22
+ label: string;
23
+ message: string;
24
+ size: "extra-small" | "small" | "medium" | "large";
25
+ icon: string;
26
+ type: "text" | "email" | "password" | "number" | "tel" | "url";
27
+ required: boolean;
28
+ disabled: boolean;
29
+ iconPosition: "left" | "right";
30
+ modelValue: string;
31
+ placeholder: string;
32
+ state: "default" | "error" | "valid" | "incomplete" | "completed";
33
+ readonly: boolean;
34
+ iconClickable: boolean;
35
+ step: number;
36
+ isCode: boolean;
37
+ forceModelValueOnBlur: boolean;
38
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {
39
+ inputRef: HTMLInputElement;
40
+ }, any>;
41
+ export default _default;
@@ -0,0 +1 @@
1
+ export { default as InputText } from './InputText';
@@ -0,0 +1,22 @@
1
+ export interface InputTextProps {
2
+ modelValue?: string;
3
+ label?: string;
4
+ placeholder?: string;
5
+ type?: 'text' | 'email' | 'password' | 'number' | 'tel' | 'url';
6
+ inputmode?: 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url';
7
+ state?: 'default' | 'error' | 'valid' | 'incomplete' | 'completed';
8
+ size?: 'extra-small' | 'small' | 'medium' | 'large';
9
+ disabled?: boolean;
10
+ readonly?: boolean;
11
+ icon?: string;
12
+ iconPosition?: 'left' | 'right';
13
+ iconClickable?: boolean;
14
+ message?: string;
15
+ required?: boolean;
16
+ min?: number;
17
+ max?: number;
18
+ step?: number;
19
+ maxlength?: number;
20
+ isCode?: boolean;
21
+ forceModelValueOnBlur?: boolean;
22
+ }
@@ -0,0 +1,22 @@
1
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
2
+ interface Props {
3
+ label: string;
4
+ to: string;
5
+ target?: '_blank' | '_self';
6
+ iconLeft?: string;
7
+ iconRight?: string;
8
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
9
+ variant?: 'primary' | 'secondary';
10
+ active?: boolean;
11
+ disabled?: boolean;
12
+ }
13
+ declare const _default: DefineComponent<Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props> & Readonly<{}>, {
14
+ label: string;
15
+ size: "xs" | "sm" | "md" | "lg" | "xl";
16
+ variant: "primary" | "secondary";
17
+ disabled: boolean;
18
+ active: boolean;
19
+ to: string;
20
+ target: "_blank" | "_self";
21
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
22
+ export default _default;
@@ -0,0 +1,12 @@
1
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
2
+ interface Props {
3
+ label: string;
4
+ iconLeft?: string;
5
+ iconRight?: string;
6
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
7
+ }
8
+ declare const _default: DefineComponent<Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props> & Readonly<{}>, {
9
+ label: string;
10
+ size: "xs" | "sm" | "md" | "lg" | "xl";
11
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
12
+ export default _default;
@@ -0,0 +1 @@
1
+ export { default as Link } from './Link';
@@ -0,0 +1,11 @@
1
+ export interface LinkProps {
2
+ label: string;
3
+ to: string;
4
+ target?: '_self' | '_blank';
5
+ iconLeft?: string;
6
+ iconRight?: string;
7
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
8
+ variant?: 'primary' | 'secondary';
9
+ active?: boolean;
10
+ disabled?: boolean;
11
+ }
@@ -0,0 +1,20 @@
1
+ import { LogoBrand, LogoSize, LogoVariant } from './types';
2
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
3
+ interface Props {
4
+ /** Marque du logo (auto-détectée depuis le thème CSS si non spécifiée) */
5
+ brand?: LogoBrand;
6
+ /** Variante du logo (auto = adaptatif selon le thème) */
7
+ variant?: LogoVariant;
8
+ /** Taille du logo */
9
+ size?: LogoSize;
10
+ /** Texte alternatif pour l'accessibilité */
11
+ alt?: string;
12
+ /** Classes CSS personnalisées */
13
+ class?: string;
14
+ test?: string;
15
+ }
16
+ declare const _default: DefineComponent<Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props> & Readonly<{}>, {
17
+ size: LogoSize;
18
+ variant: LogoVariant;
19
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
20
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export { default as Logo } from './Logo';
2
+ export type { LogoBrand, LogoSize, LogoVariant } from './types';
@@ -0,0 +1,10 @@
1
+ export type LogoVariant = 'auto' | 'default' | 'white' | 'small' | 'small-white';
2
+ export type LogoSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';
3
+ export type LogoBrand = 'club-employes' | 'gifteo';
4
+ export interface LogoProps {
5
+ variant?: LogoVariant;
6
+ size?: LogoSize;
7
+ brand?: LogoBrand;
8
+ alt?: string;
9
+ class?: string;
10
+ }
@@ -0,0 +1,18 @@
1
+ import { RangeSliderProps } from './types';
2
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
3
+ declare const _default: DefineComponent<RangeSliderProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
4
+ "update-value": (value: number | [number, number]) => any;
5
+ }, string, PublicProps, Readonly<RangeSliderProps> & Readonly<{
6
+ "onUpdate-value"?: ((value: number | [number, number]) => any) | undefined;
7
+ }>, {
8
+ size: "medium" | "large";
9
+ min: number;
10
+ currentValue: number | [number, number];
11
+ showLabels: boolean;
12
+ unit: string;
13
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {
14
+ sliderRef: HTMLDivElement;
15
+ fromValueRef: HTMLDivElement;
16
+ toValueRef: HTMLDivElement;
17
+ }, HTMLDivElement>;
18
+ export default _default;
@@ -0,0 +1 @@
1
+ export { default as RangeSlider } from './RangeSlider';
@@ -0,0 +1,8 @@
1
+ export interface RangeSliderProps {
2
+ min?: number;
3
+ max: number;
4
+ currentValue: number | [number, number];
5
+ showLabels?: boolean;
6
+ unit?: string;
7
+ size?: 'medium' | 'large';
8
+ }
@@ -0,0 +1,35 @@
1
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
2
+ interface Props {
3
+ width?: string | number;
4
+ height?: string | number;
5
+ radius?: string | number;
6
+ animated?: boolean;
7
+ block?: boolean;
8
+ as?: string;
9
+ bg?: boolean;
10
+ }
11
+ declare function __VLS_template(): {
12
+ attrs: Partial<{}>;
13
+ slots: {
14
+ default?(_: {}): any;
15
+ };
16
+ refs: {};
17
+ rootEl: any;
18
+ };
19
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
20
+ declare const __VLS_component: DefineComponent<Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props> & Readonly<{}>, {
21
+ width: string | number;
22
+ height: string | number;
23
+ radius: string | number;
24
+ animated: boolean;
25
+ block: boolean;
26
+ as: string;
27
+ bg: boolean;
28
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
29
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
30
+ export default _default;
31
+ type __VLS_WithTemplateSlots<T, S> = T & {
32
+ new (): {
33
+ $slots: S;
34
+ };
35
+ };
@@ -0,0 +1,12 @@
1
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
2
+ interface Props {
3
+ size?: string | number;
4
+ rounded?: boolean;
5
+ animated?: boolean;
6
+ }
7
+ declare const _default: DefineComponent<Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props> & Readonly<{}>, {
8
+ size: string | number;
9
+ animated: boolean;
10
+ rounded: boolean;
11
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
12
+ export default _default;
@@ -0,0 +1,16 @@
1
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
2
+ interface Props {
3
+ lines?: number;
4
+ lineHeight?: string | number;
5
+ gap?: string | number;
6
+ lastLineWidth?: string | number;
7
+ animated?: boolean;
8
+ }
9
+ declare const _default: DefineComponent<Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props> & Readonly<{}>, {
10
+ animated: boolean;
11
+ lines: number;
12
+ lineHeight: string | number;
13
+ gap: string | number;
14
+ lastLineWidth: string | number;
15
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
16
+ export default _default;
@@ -0,0 +1,3 @@
1
+ export { default as Skeleton } from './Skeleton';
2
+ export { default as SkeletonAvatar } from './SkeletonAvatar';
3
+ export { default as SkeletonText } from './SkeletonText';
@@ -0,0 +1,21 @@
1
+ export interface SkeletonProps {
2
+ width?: string | number;
3
+ height?: string | number;
4
+ radius?: string | number;
5
+ animated?: boolean;
6
+ block?: boolean;
7
+ as?: string;
8
+ bg?: boolean;
9
+ }
10
+ export interface SkeletonAvatarProps {
11
+ size?: string | number;
12
+ rounded?: boolean;
13
+ animated?: boolean;
14
+ }
15
+ export interface SkeletonTextProps {
16
+ lines?: number;
17
+ lineHeight?: string | number;
18
+ gap?: string | number;
19
+ lastLineWidth?: string | number;
20
+ animated?: boolean;
21
+ }
@@ -0,0 +1,27 @@
1
+ import { SwitchProps } from './types';
2
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
3
+ declare function __VLS_template(): {
4
+ attrs: Partial<{}>;
5
+ slots: {
6
+ default?(_: {}): any;
7
+ };
8
+ refs: {};
9
+ rootEl: HTMLLabelElement;
10
+ };
11
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
12
+ declare const __VLS_component: DefineComponent<SwitchProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
13
+ "update:modelValue": (value: boolean) => any;
14
+ }, string, PublicProps, Readonly<SwitchProps> & Readonly<{
15
+ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
16
+ }>, {
17
+ size: "small" | "medium" | "large";
18
+ disabled: boolean;
19
+ modelValue: boolean;
20
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLLabelElement>;
21
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
22
+ export default _default;
23
+ type __VLS_WithTemplateSlots<T, S> = T & {
24
+ new (): {
25
+ $slots: S;
26
+ };
27
+ };
@@ -0,0 +1 @@
1
+ export { default as Switch } from './Switch';
@@ -0,0 +1,6 @@
1
+ export interface SwitchProps {
2
+ modelValue?: boolean;
3
+ disabled?: boolean;
4
+ size?: 'small' | 'medium' | 'large';
5
+ label?: string;
6
+ }
@@ -0,0 +1,24 @@
1
+ import { TextProps } from './types';
2
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
3
+ declare function __VLS_template(): {
4
+ attrs: Partial<{}>;
5
+ slots: {
6
+ default?(_: {}): any;
7
+ };
8
+ refs: {};
9
+ rootEl: any;
10
+ };
11
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
12
+ declare const __VLS_component: DefineComponent<TextProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<TextProps> & Readonly<{}>, {
13
+ as: TextTag;
14
+ family: "sans" | "mono" | string;
15
+ weight: TextWeight;
16
+ align: TextAlign;
17
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
18
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
19
+ export default _default;
20
+ type __VLS_WithTemplateSlots<T, S> = T & {
21
+ new (): {
22
+ $slots: S;
23
+ };
24
+ };
@@ -0,0 +1 @@
1
+ export { default as Text } from './Text';
@@ -0,0 +1,16 @@
1
+ import { TextTag, TextWeight, TextAlign, TextTransform, TextSize } from '../../../index.d';
2
+ export interface TextProps {
3
+ as?: TextTag;
4
+ family?: "sans" | "mono" | string;
5
+ weight?: TextWeight;
6
+ align?: TextAlign;
7
+ transform?: TextTransform;
8
+ truncate?: boolean;
9
+ noWrap?: boolean;
10
+ variant?: "h1Modal | h2Modal";
11
+ size?: TextSize;
12
+ color?: string;
13
+ underline?: boolean;
14
+ italic?: boolean;
15
+ strike?: boolean;
16
+ }
@@ -0,0 +1,23 @@
1
+ export { Button } from './Button';
2
+ export { Card } from './Card';
3
+ export type { CardProps } from './Card';
4
+ export { Checkbox } from './Checkbox';
5
+ export { Chip } from './Chip';
6
+ export type { ChipProps } from './Chip';
7
+ export { Icon } from './Icon';
8
+ export { InputText } from './InputText';
9
+ export { Logo } from './Logo';
10
+ export type { LogoBrand, LogoSize, LogoVariant } from './Logo';
11
+ export { Skeleton, SkeletonAvatar, SkeletonText } from './Skeleton';
12
+ export { Switch } from './Switch';
13
+ export { Link } from './Link';
14
+ export { Text } from './Text';
15
+ export { RangeSlider } from './RangeSlider';
16
+ export type BadgeVariant = 'default' | 'success' | 'warning' | 'danger';
17
+ export type BadgeSize = 'small' | 'medium';
18
+ export type ButtonVariant = 'primary' | 'secondary' | 'outline' | 'ghost' | 'danger';
19
+ export type ButtonSize = 'small' | 'medium' | 'large';
20
+ export type IconName = string;
21
+ export type IconSize = 'extra-small' | 'small' | 'medium' | 'large';
22
+ export type IconColor = 'primary' | 'secondary' | 'success' | 'warning' | 'danger' | 'neutral' | 'current';
23
+ export type Currency = '€' | '£';
@@ -0,0 +1,4 @@
1
+ export * from './atoms';
2
+ export * from './molecules';
3
+ export * from './organisms';
4
+ export * from './layouts';