@club-employes/utopia 4.42.0 → 4.43.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 +9 -8
  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/dist/index.d.ts CHANGED
@@ -1,522 +1,35 @@
1
- // Type definitions for @club-employes/utopia
2
- import { ComputedRef, DefineComponent } from 'vue'
3
-
4
- // Component prop types
5
- export interface BadgeProps {
6
- variant?: 'default' | 'success' | 'warning' | 'danger'
7
- size?: 'small' | 'medium'
8
- }
9
-
10
- export interface ButtonProps {
11
- variant?: 'primary' | 'secondary' | 'tertiary'
12
- size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl'
13
- disabled?: boolean
14
- loading?: boolean
15
- icon?: string
16
- iconPosition?: 'left' | 'right'
17
- }
18
-
19
- export interface IconProps {
20
- name: string
21
- size?: 'extra-small' | 'small' | 'medium' | 'large'
22
- color?: 'primary' | 'secondary' | 'success' | 'warning' | 'danger' | 'neutral' | 'current'
23
- }
24
-
25
- export interface LogoProps {
26
- variant?: 'auto' | 'default' | 'white' | 'small' | 'small-white'
27
- size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'
28
- brand?: 'club-employes' | 'gifteo'
29
- alt?: string
30
- class?: string
31
- }
32
-
33
- export interface CardProps {
34
- variant?: 'default' | 'elevated' | 'outlined'
35
- size?: 'small' | 'medium' | 'large'
36
- disabled?: boolean
37
- interactive?: boolean
38
- active?: boolean
39
- }
40
-
41
- export interface SearchBoxProps {
42
- modelValue?: string
43
- placeholder?: string
44
- size?: 'small' | 'medium' | 'large'
45
- clearable?: boolean
46
- disabled?: boolean
47
- }
48
-
49
- export interface InputProps {
50
- variant?: 'default' | 'primary' | 'secondary'
51
- size?: 'small' | 'medium' | 'large'
52
- disabled?: boolean
53
- }
54
-
55
- export interface InputSelectProps {
56
- variant?: 'default' | 'primary' | 'secondary'
57
- size?: 'small' | 'medium' | 'large'
58
- disabled?: boolean
59
- }
60
-
61
- export interface CheckboxProps {
62
- modelValue?: boolean
63
- disabled?: boolean
64
- size?: 'small' | 'medium' | 'large'
65
- }
66
-
67
- export interface SwitchProps {
68
- modelValue?: boolean
69
- disabled?: boolean
70
- size?: 'small' | 'medium' | 'large'
71
- label?: string
72
- }
73
-
74
- export interface TextProps {
75
- as?: TextTag;
76
- family?: "sans" | "mono" | string;
77
- weight?: TextWeight;
78
- align?: TextAlign;
79
- transform?: TextTransform;
80
- truncate?: boolean;
81
- noWrap?: boolean;
82
- variant?: "h1Modal | h2Modal";
83
- size?: TextSize;
84
- color?: string;
85
- underline?: boolean;
86
- italic?: boolean;
87
- strike?: boolean;
88
- }
89
-
90
- export interface ChipProps {
91
- variant?: 'default' | 'primary' | 'secondary' | 'success' | 'warning' | 'danger'
92
- size?: 'extra-small' | 'small' | 'medium' | 'large'
93
- disabled?: boolean
94
- removable?: boolean
95
- leftIcon?: string
96
- actionable?: boolean
97
- ghost?: boolean
98
- customColor?: string
99
- customTextColor?: string
100
- }
101
-
102
- export interface InputTextProps {
103
- modelValue?: string
104
- label?: string
105
- placeholder?: string
106
- type?: 'text' | 'email' | 'password' | 'number' | 'tel' | 'url'
107
- inputmode?: 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url'
108
- state?: 'default' | 'error' | 'valid' | 'incomplete' | 'completed'
109
- size?: 'extra-small' | 'small' | 'medium' | 'large'
110
- disabled?: boolean
111
- readonly?: boolean
112
- icon?: string
113
- iconPosition?: 'left' | 'right'
114
- iconClickable?: boolean
115
- message?: string
116
- required?: boolean
117
- min?: number
118
- max?: number
119
- step?: number
120
- maxlength?: number
121
- isCode?: boolean
122
- forceModelValueOnBlur?: boolean
123
- }
124
-
125
- export interface DropDownOption {
126
- value: string | number
127
- label: string
128
- disabled?: boolean
129
- }
130
-
131
- export interface DropDownProps {
132
- modelValue?: string | number | (string | number)[]
133
- label?: string
134
- placeholder?: string
135
- options?: DropDownOption[]
136
- state?: 'default' | 'error' | 'valid' | 'incomplete' | 'completed'
137
- size?: 'small' | 'medium' | 'large'
138
- disabled?: boolean
139
- readonly?: boolean
140
- multiple?: boolean
141
- searchable?: boolean
142
- clearable?: boolean
143
- message?: string
144
- required?: boolean
145
- maxHeight?: string
146
- }
147
-
148
- export interface InputCodeProps {
149
- modelValue?: string
150
- label?: string
151
- length?: number
152
- type?: 'text' | 'number'
153
- size?: 'small' | 'medium' | 'large'
154
- state?: 'default' | 'error' | 'valid'
155
- disabled?: boolean
156
- message?: string
157
- required?: boolean
158
- autoFocus?: boolean
159
- }
160
-
161
- export interface DataTableProps {
162
- columns: Array<{
163
- key: string
164
- label: string
165
- sortable?: boolean
166
- width?: string
167
- align?: 'left' | 'center' | 'right'
168
- formatter?: (value: any) => string
169
- }>
170
- data: any[]
171
- title?: string
172
- loading?: boolean
173
- selectable?: boolean
174
- striped?: boolean
175
- hoverable?: boolean
176
- rowKey?: string | ((row: any) => string)
177
- }
178
-
179
- export interface FilterChipProps {
180
- filters: Record<string, any>
181
- disabled?: boolean
182
- removable?: boolean
183
- variant?: 'default' | 'primary' | 'secondary' | 'success' | 'warning' | 'danger'
184
- size?: 'extra-small' | 'small' | 'medium' | 'large'
185
- }
186
-
187
- export interface BalanceCardProps {
188
- campaignName: string
189
- category: 'culture' | 'noel' | 'voyages' | 'rentree' | 'retraite' | 'naissance' | 'mariage' | 'sport'
190
- totalAmount: number
191
- spentAmount: number
192
- expirationDate: string | Date
193
- variant?: 'default' | 'primary' | 'secondary'
194
- size?: 'small' | 'medium' | 'large'
195
- disabled?: boolean
196
- actionable?: () => void
197
- language?: 'fr' | 'en'
198
- currency?: string
199
- }
200
-
201
- export interface BalanceCardGroupProps {
202
- cards: BalanceCardData[]
203
- language?: 'fr' | 'en'
204
- currency?: string
205
- }
206
-
207
- export interface BalanceCardData {
208
- campaignName: string
209
- category: 'culture' | 'noel' | 'voyages' | 'rentree' | 'retraite' | 'naissance' | 'mariage' | 'sport'
210
- totalAmount: number
211
- amount: number // Montant restant
212
- campaignCount: number
213
- actionable?: () => void
214
- disabled?: boolean
215
- }
216
-
217
- export interface SkeletonProps {
218
- width?: string | number
219
- height?: string | number
220
- variant?: 'text' | 'rectangular' | 'circular'
221
- animation?: 'pulse' | 'wave' | 'none'
222
- radius?: number
223
- bg?: boolean
224
- }
225
-
226
- export interface SkeletonAvatarProps {
227
- size?: 'small' | 'medium' | 'large' | number
228
- variant?: 'circular' | 'rounded' | 'square'
229
- animation?: 'pulse' | 'wave' | 'none'
230
- rounded?: boolean
231
- }
232
-
233
- export interface SkeletonTextProps {
234
- lines?: number
235
- width?: string | string[] | number
236
- animation?: 'pulse' | 'wave' | 'none'
237
- }
238
-
239
- export interface ThemeConfig {
240
- name: string
241
- mode: 'light' | 'dark'
242
- cssFile: string
243
- }
244
-
245
- export interface BreadcrumbsItem {
246
- label: string;
247
- to?: string;
248
- iconLeft?: string;
249
- iconRight?: string;
250
- }
251
-
252
- export interface BreadcrumbsProps {
253
- items: BreadcrumbsItem[]
254
- }
255
-
256
- export interface ThemeProviderProps {
257
- theme: ThemeConfig
258
- }
259
-
260
- export interface LinkProps {
261
- label: string
262
- to: string
263
- iconLeft?: string
264
- iconRight?: string
265
- size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl'
266
- variant?: 'primary' | 'secondary'
267
- active?: boolean
268
- disabled?: boolean
269
- }
270
-
271
- export interface PriceTagProps {
272
- variantCount?: number;
273
- price: number;
274
- oldPrice?: number;
275
- currency?: string;
276
- isSubventioned?: boolean;
277
- isDiscounted?: boolean;
278
- language?: 'fr' | 'en';
279
- }
280
-
281
- export interface ProductCardProps {
282
- id: string;
283
- title: string;
284
- description?: string;
285
- imageUrl: string;
286
- logoUrl?: string;
287
- isFavorite: boolean;
288
- tags?: string[];
289
- available?: boolean;
290
- variantCount?: number;
291
- price?: number;
292
- oldPrice?: number;
293
- discount?: string;
294
- discountTooltip?: string;
295
- currency?: string;
296
- subventionName?: string;
297
- subventionTooltip?: string;
298
- language?: 'fr' | 'en';
299
- }
300
-
301
- export interface ErrorStateProps {
302
- title?: string
303
- description?: string
304
- actionLabel?: string
305
- retryAction?: () => void
306
- spinning?: boolean
307
- imageSrc?: string
308
- imageAlt?: string
309
- preset?: 'gears' | 'search'
310
- }
311
-
312
- export interface RangeSliderProps {
313
- min?: number;
314
- max: number;
315
- currentValue: number | [number, number];
316
- unit?: string;
317
- showLabels?: boolean;
318
- size?: 'medium' | 'large';
319
- }
320
-
321
- export interface FilterPriceProps {
322
- currentValue: [number, number];
323
- min?: number;
324
- max: number;
325
- unit?: string;
326
- }
327
-
328
- export interface ModalProps {
329
- open?: boolean
330
- title?: string
331
- size?: 'sm' | 'md' | 'lg' | 'full'
332
- position?: 'center' | 'top' | 'bottom' | 'left' | 'right' | 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight'
333
- closeOnOverlayClick?: boolean
334
- showCloseButton?: boolean
335
- disableScrollLock?: boolean
336
- focusTrap?: boolean
337
- blurBackdrop?: boolean
338
- animation?: 'slide-top' | 'slide-horizontal' | 'slide-horizontal-left' | 'slide-bottom'
339
- onOpenChange?: (open: boolean, reason: 'open' | 'close' | 'overlay' | 'escape' | 'close-button') => void
340
- }
341
-
342
- export type BottomSheetChangeReason = 'open' | 'close' | 'escape' | 'overlay'
343
-
344
- export interface BottomSheetProps {
345
- title?: string
346
- open?: boolean
347
- defaultOpen?: boolean
348
- closeOnOverlayClick?: boolean
349
- focusTrap?: boolean
350
- disableScrollLock?: boolean
351
- onOpenChange?: (open: boolean, reason: BottomSheetChangeReason) => void
352
- }
353
-
354
- export interface PageNavigationProps {
355
- currentPage: number
356
- totalPages: number
357
- compact?: boolean
358
- showSize?: boolean
359
- sizeLabel?: string
360
- size?: number
361
- sizeOptions?: number[]
362
- showGoToPage?: boolean
363
- goToPageLabel?: string
364
- }
365
-
366
- // Component exports
367
- export declare const Badge: DefineComponent<BadgeProps>
368
- export declare const Button: DefineComponent<ButtonProps>
369
- export declare const Card: DefineComponent<CardProps>
370
- export declare const Checkbox: DefineComponent<CheckboxProps>
371
- export declare const Chip: DefineComponent<ChipProps>
372
- export declare const Header: DefineComponent<{}>
373
- export declare const Icon: DefineComponent<IconProps>
374
- export declare const Input: DefineComponent<InputProps>
375
- export declare const InputSelect: DefineComponent<InputSelectProps>
376
- export declare const Logo: DefineComponent<LogoProps>
377
- export declare const Menu: DefineComponent<{}>
378
- export declare const NavItem: DefineComponent<{}>
379
- export declare const SearchBox: DefineComponent<SearchBoxProps>
380
- export declare const Switch: DefineComponent<SwitchProps>
381
- export declare const Text: DefineComponent<TextProps>
382
- export declare const InputText: DefineComponent<InputTextProps>
383
- export declare const DropDown: DefineComponent<DropDownProps>
384
- export declare const InputCode: DefineComponent<InputCodeProps>
385
- export declare const DataTable: DefineComponent<DataTableProps>
386
- export declare const BalanceCard: DefineComponent<BalanceCardProps>
387
- export declare const BalanceCardGroup: DefineComponent<BalanceCardGroupProps>
388
- export declare const Skeleton: DefineComponent<SkeletonProps>
389
- export declare const SkeletonAvatar: DefineComponent<SkeletonAvatarProps>
390
- export declare const SkeletonText: DefineComponent<SkeletonTextProps>
391
- export declare const ThemeProvider: DefineComponent<ThemeProviderProps>
392
- export declare const DefaultLayout: DefineComponent<{}>
393
- export declare const AuthLayout: DefineComponent<{}>
394
- export declare const Slider: DefineComponent<{}>
395
- export declare const Breadcrumbs: DefineComponent<BreadcrumbsProps>
396
- export declare const Link: DefineComponent<LinkProps>
397
- export declare const ErrorState: DefineComponent<ErrorStateProps>
398
- export declare const FeedbackState: DefineComponent<ErrorStateProps>
399
-
400
- export declare const PriceTag: DefineComponent<PriceTagProps>
401
- export declare const FilterChip: DefineComponent<FilterChipProps>
402
- export declare const ProductCard: DefineComponent<ProductCardProps>
403
- export declare const RangeSlider: DefineComponent<RangeSliderProps>
404
- export declare const FilterPrice: DefineComponent<FilterPriceProps>
405
- export declare const Modal: DefineComponent<ModalProps>
406
- export declare const BottomSheet: DefineComponent<BottomSheetProps>
407
- export declare const PageNavigation: DefineComponent<PageNavigationProps>
408
-
409
- // Theme exports
410
- export declare const clubEmployesLight: ThemeConfig
411
- export declare const clubEmployesDark: ThemeConfig
412
- export declare const gifteoLight: ThemeConfig
413
- export declare const gifteoDark: ThemeConfig
414
-
415
- // Composable types
416
- export type BrandTheme = 'club-employes' | 'gifteo'
417
- export type ThemeMode = 'light' | 'dark'
418
- export type ThemeName =
419
- | 'club-employes-light'
420
- | 'club-employes-dark'
421
- | 'gifteo-light'
422
- | 'gifteo-dark'
423
-
424
- export interface UseThemeReturn {
425
- currentTheme: ComputedRef<ThemeConfig>
426
- currentBrand: ComputedRef<BrandTheme>
427
- currentMode: ComputedRef<ThemeMode>
428
- currentBrandName: ComputedRef<string>
429
- availableBrands: ComputedRef<Array<{ key: BrandTheme; name: string }>>
430
- menuCollapsed: ComputedRef<boolean>
431
- isBrandLocked: ComputedRef<boolean>
432
- toggleBrand: () => void
433
- toggleMode: () => void
434
- setBrand: (brand: BrandTheme) => void
435
- setMode: (mode: ThemeMode) => void
436
- toggleMenuCollapsed: () => void
437
- setMenuCollapsed: (collapsed: boolean) => void
438
- }
439
-
440
- export interface UseFaviconReturn {
441
- faviconUrl: ComputedRef<string>
442
- refreshFavicon: () => void
443
- updateFavicon: (faviconUrl: string) => void
444
- }
445
-
446
- export interface UseCurrencyReturn {
447
- currencyIconName: ComputedRef<string>
448
- }
449
-
450
- export interface TooltipProps {
451
- placement?: 'top' | 'bottom' | 'left' | 'right' | 'auto' | 'top_left' | 'top_right' | 'top_center' | 'bottom_left' | 'bottom_right' | 'bottom_center'
452
- openDelay?: number
453
- closeDelay?: number
454
- offset?: number
455
- withArrow?: boolean
456
- active?: boolean
457
- disabled?: boolean
458
- interactive?: boolean
459
- }
460
-
461
- export declare const Tooltip: DefineComponent<TooltipProps>
462
- // Composable exports
463
- export declare function useTheme(): UseThemeReturn
464
- export declare function useFavicon(): UseFaviconReturn
465
- export declare function useCurrency(currency: Currency): UseCurrencyReturn
466
-
467
- // Theme initialization exports
468
- export declare function initializeTheme(themeName: string): Promise<void>
469
- export declare function getActiveTheme(): ThemeName | null
470
- export declare function isValidThemeName(themeName: string): themeName is ThemeName
471
- export declare function unlockBrand(): void
472
-
473
- // Type exports
474
- export type BadgeVariant = 'default' | 'success' | 'warning' | 'danger'
475
- export type BadgeSize = 'small' | 'medium'
476
- export type ButtonVariant = 'primary' | 'secondary' | 'tertiary'
477
- export type ButtonSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl'
478
- export type IconName = string
479
- export type IconSize = 'extra-small' | 'small' | 'medium' | 'large'
480
- export type IconColor = 'primary' | 'secondary' | 'success' | 'warning' | 'danger' | 'neutral' | 'current'
481
- export type LogoVariant = 'auto' | 'default' | 'white' | 'small' | 'small-white'
482
- export type LogoSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'
483
- export type LogoBrand = 'club-employes' | 'gifteo'
484
- export type ModalSize = 'sm' | 'md' | 'lg' | 'full'
485
- export type ModalPosition = 'center' | 'top' | 'bottom' | 'left' | 'right' | 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight'
486
- export type ModalAnimation = 'slide-top' | 'slide-horizontal' | 'slide-horizontal-left'
487
- export type ModalChangeReason = 'open' | 'close' | 'overlay' | 'escape' | 'close-button'
488
- export type TextTag =
489
- | "p"
490
- | "span"
491
- | "strong"
492
- | "em"
493
- | "label"
494
- | "small"
495
- | "h1"
496
- | "h2"
497
- | "h3"
498
- | "h4"
499
- | "h5"
500
- | "h6";
501
- export type TextWeight =
502
- | "thin"
503
- | "extralight"
504
- | "light"
505
- | "normal"
506
- | "medium"
507
- | "semibold"
508
- | "bold"
509
- | "extrabold"
510
- | "black";
511
- export type TextAlign = "left" | "center" | "right" | "justify";
512
- export type TextTransform = "uppercase" | "lowercase" | "capitalize";
513
- export type TextSize =
514
- | "xs"
515
- | "sm"
516
- | "base"
517
- | "lg"
518
- | "xl"
519
- | "2xl"
520
- | "3xl"
521
- | "4xl"
522
- | "5xl";
1
+ export { ThemeProvider } from './theme-provider';
2
+ export type { ThemeConfig, ThemeProviderProps } from './theme-provider';
3
+ export * from './components';
4
+ export { Skeleton, SkeletonAvatar, SkeletonText } from './components/atoms/Skeleton';
5
+ export { DefaultLayout, Header, Menu, NavItem } from './components/layouts';
6
+ export { BalanceCard, BalanceCardGroup } from './components/organisms';
7
+ export type { BalanceCardData, BalanceCardGroupProps, BalanceCardProps } from './components/organisms';
8
+ export type { ButtonProps } from './components/atoms/Button/types';
9
+ export type { CardProps } from './components/atoms/Card/types';
10
+ export type { CheckboxProps } from './components/atoms/Checkbox/types';
11
+ export type { ChipProps } from './components/atoms/Chip/types';
12
+ export type { InputTextProps } from './components/atoms/InputText/types';
13
+ export type { LinkProps } from './components/atoms/Link/types';
14
+ export type { LogoProps } from './components/atoms/Logo/types';
15
+ export type { SkeletonAvatarProps, SkeletonProps, SkeletonTextProps } from './components/atoms/Skeleton/types';
16
+ export type { SwitchProps } from './components/atoms/Switch/types';
17
+ export type { BottomSheetChangeReason, BottomSheetProps } from './components/molecules/BottomSheet/types';
18
+ export type { DropDownOption, DropDownProps } from './components/molecules/DropDown/types';
19
+ export type { ErrorStateProps, FeedbackStateProps } from './components/molecules/FeedbackState/types';
20
+ export type { FilterChipProps } from './components/molecules/FilterChip/types';
21
+ export type { InputCodeProps } from './components/molecules/InputCode/types';
22
+ export type { ModalChangeReason, ModalProps } from './components/molecules/Modal/types';
23
+ export type { PriceTagProps } from './components/molecules/PriceTag/types';
24
+ export type { TooltipProps } from './components/molecules/Tooltip/types';
25
+ export type { BreadcrumbsItem, BreadcrumbsProps } from './components/organisms/Breadcrumbs/types';
26
+ export type { FilterPriceProps } from './components/organisms/FilterPrice/types';
27
+ export type { PageNavigationProps } from './components/organisms/PageNavigation/types';
28
+ export type { ProductCardProps } from './components/organisms/ProductCard/types';
29
+ export type { AuthLayoutProps } from './components/layouts/AuthLayout/types';
30
+ export { clubEmployesDark, clubEmployesLight } from './themes/club-employes';
31
+ export { gifteoDark, gifteoLight } from './themes/gifteo';
32
+ export { getActiveTheme, initializeTheme, isValidThemeName, unlockBrand, useBreakpoints, useCurrency, useFavicon, useScrollShadows, useTheme } from './composables';
33
+ export type { ThemeName } from './composables/initializeTheme';
34
+ export type { UseScrollShadowsOptions, UseScrollShadowsReturn } from './composables/useScrollShadows';
35
+ export type { BrandTheme, ThemeMode } from './composables/useTheme';
package/dist/index.js CHANGED
@@ -331,7 +331,7 @@ const st = ["aria-label", "innerHTML"], tt = /* @__PURE__ */ U({
331
331
  !e.disabled && !e.loading && t("click", a);
332
332
  };
333
333
  return (a, u) => (f(), m("button", {
334
- class: C(["utopia-button", c.value]),
334
+ class: C(["utopia-button testpp", c.value]),
335
335
  disabled: A.disabled || A.loading,
336
336
  onClick: r,
337
337
  style: rA(i.value),
@@ -373,7 +373,7 @@ const st = ["aria-label", "innerHTML"], tt = /* @__PURE__ */ U({
373
373
  ], 64)) : y("", !0)
374
374
  ], 14, nt));
375
375
  }
376
- }), mA = /* @__PURE__ */ $(ct, [["__scopeId", "data-v-961dfdef"]]), it = /* @__PURE__ */ U({
376
+ }), mA = /* @__PURE__ */ $(ct, [["__scopeId", "data-v-d3c25e29"]]), it = /* @__PURE__ */ U({
377
377
  __name: "Card",
378
378
  props: {
379
379
  variant: { default: "default" },
@@ -396,7 +396,7 @@ const st = ["aria-label", "innerHTML"], tt = /* @__PURE__ */ U({
396
396
  AA(t.$slots, "default", {}, void 0, !0)
397
397
  ], 2));
398
398
  }
399
- }), rt = /* @__PURE__ */ $(it, [["__scopeId", "data-v-4b0ecb9f"]]), at = ["checked", "disabled"], ft = { class: "utopia-checkbox__box" }, dt = {
399
+ }), rt = /* @__PURE__ */ $(it, [["__scopeId", "data-v-45641abc"]]), at = ["checked", "disabled"], ft = { class: "utopia-checkbox__box" }, dt = {
400
400
  key: 0,
401
401
  class: "utopia-checkbox__label"
402
402
  }, lt = /* @__PURE__ */ U({
@@ -439,7 +439,7 @@ const st = ["aria-label", "innerHTML"], tt = /* @__PURE__ */ U({
439
439
  ])) : y("", !0)
440
440
  ], 2));
441
441
  }
442
- }), vt = /* @__PURE__ */ $(lt, [["__scopeId", "data-v-f6bb3059"]]), ut = { class: "utopia-chip__label" }, gt = ["disabled", "aria-label"], mt = /* @__PURE__ */ U({
442
+ }), vt = /* @__PURE__ */ $(lt, [["__scopeId", "data-v-982afd0c"]]), ut = { class: "utopia-chip__label" }, gt = ["disabled", "aria-label"], mt = /* @__PURE__ */ U({
443
443
  __name: "Chip",
444
444
  props: {
445
445
  variant: { default: "default" },
@@ -493,7 +493,7 @@ const st = ["aria-label", "innerHTML"], tt = /* @__PURE__ */ U({
493
493
  class: "utopia-chip__close-button",
494
494
  disabled: A.disabled,
495
495
  onClick: r,
496
- "aria-label": `Supprimer ${a.$slots.default ? a.$slots.default() : "chip"}`
496
+ "aria-label": `Supprimer ${a.$slots.default?.() || "chip"}`
497
497
  }, [
498
498
  J(N, {
499
499
  name: "X",
@@ -504,7 +504,7 @@ const st = ["aria-label", "innerHTML"], tt = /* @__PURE__ */ U({
504
504
  ], 8, gt)) : y("", !0)
505
505
  ], 6));
506
506
  }
507
- }), HA = /* @__PURE__ */ $(mt, [["__scopeId", "data-v-38f49559"]]), zt = ["for"], pt = { class: "utopia-inputtext__container_in" }, xt = ["id", "type", "inputmode", "placeholder", "disabled", "readonly", "maxlength", "min", "max", "step"], Pt = {
507
+ }), HA = /* @__PURE__ */ $(mt, [["__scopeId", "data-v-0b7d4b82"]]), zt = ["for"], pt = { class: "utopia-inputtext__container_in" }, xt = ["id", "type", "inputmode", "placeholder", "disabled", "readonly", "maxlength", "min", "max", "step"], Pt = {
508
508
  key: 2,
509
509
  class: "utopia-inputtext__stepper",
510
510
  "aria-hidden": "true"
@@ -893,7 +893,7 @@ const st = ["aria-label", "innerHTML"], tt = /* @__PURE__ */ U({
893
893
  ])) : y("", !0)
894
894
  ], 2));
895
895
  }
896
- }), pa = /* @__PURE__ */ $(Gt, [["__scopeId", "data-v-e7890292"]]);
896
+ }), pa = /* @__PURE__ */ $(Gt, [["__scopeId", "data-v-590ea41c"]]);
897
897
  function As(A) {
898
898
  return [
899
899
  "club-employes-light",
@@ -1440,7 +1440,7 @@ const Et = /* @__PURE__ */ U({
1440
1440
  })
1441
1441
  ]));
1442
1442
  }
1443
- }), ba = /* @__PURE__ */ $($t, [["__scopeId", "data-v-a8cdcb4e"]]), An = ["for"], en = { class: "utopia-dropdown__container" }, sn = ["id", "disabled", "aria-expanded"], tn = { key: 0 }, nn = {
1443
+ }), ba = /* @__PURE__ */ $($t, [["__scopeId", "data-v-7df648fa"]]), An = ["for"], en = { class: "utopia-dropdown__container" }, sn = ["id", "disabled", "aria-expanded"], tn = { key: 0 }, nn = {
1444
1444
  key: 0,
1445
1445
  class: "utopia-dropdown__chips-shadow utopia-dropdown__chips-shadow--left"
1446
1446
  }, on = {
@@ -6091,6 +6091,7 @@ export {
6091
6091
  xa as initializeTheme,
6092
6092
  As as isValidThemeName,
6093
6093
  Ma as unlockBrand,
6094
+ Jt as useBreakpoints,
6094
6095
  Lt as useCurrency,
6095
6096
  Oa as useFavicon,
6096
6097
  es as useScrollShadows,
@@ -0,0 +1,28 @@
1
+ import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
2
+ interface ThemeConfig {
3
+ name: string;
4
+ mode?: 'light' | 'dark';
5
+ cssFile?: string;
6
+ cssContent?: string;
7
+ logo?: string;
8
+ }
9
+ interface Props {
10
+ theme: ThemeConfig;
11
+ }
12
+ declare function __VLS_template(): {
13
+ attrs: Partial<{}>;
14
+ slots: {
15
+ default?(_: {}): any;
16
+ };
17
+ refs: {};
18
+ rootEl: HTMLDivElement;
19
+ };
20
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
21
+ declare const __VLS_component: DefineComponent<Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
22
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
23
+ export default _default;
24
+ type __VLS_WithTemplateSlots<T, S> = T & {
25
+ new (): {
26
+ $slots: S;
27
+ };
28
+ };
@@ -0,0 +1,11 @@
1
+ export { default as ThemeProvider } from './ThemeProvider';
2
+ export interface ThemeConfig {
3
+ name: string;
4
+ mode?: 'light' | 'dark';
5
+ cssFile?: string;
6
+ logo?: string;
7
+ }
8
+ export interface ThemeProviderProps {
9
+ theme: ThemeConfig;
10
+ }
11
+ export type ThemeMode = 'light' | 'dark';
@@ -0,0 +1,4 @@
1
+ import { ThemeConfig } from '../../theme-provider';
2
+ export declare const clubEmployesLight: ThemeConfig;
3
+ export declare const clubEmployesDark: ThemeConfig;
4
+ export default clubEmployesLight;