@surgeui/ds-vue 2.0.0 → 2.2.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/dist/components/atoms/Avatar.vue.d.ts +1 -0
- package/dist/components/atoms/Avatar.vue.d.ts.map +1 -1
- package/dist/components/atoms/Button.vue.d.ts +1 -0
- package/dist/components/atoms/Button.vue.d.ts.map +1 -1
- package/dist/components/atoms/FileUpload.vue.d.ts +2 -0
- package/dist/components/atoms/FileUpload.vue.d.ts.map +1 -1
- package/dist/components/atoms/FormField.vue.d.ts +1 -0
- package/dist/components/atoms/FormField.vue.d.ts.map +1 -1
- package/dist/components/atoms/Heading.vue.d.ts.map +1 -1
- package/dist/components/atoms/Image.vue.d.ts +3 -0
- package/dist/components/atoms/Image.vue.d.ts.map +1 -1
- package/dist/components/atoms/Input.vue.d.ts +2 -2
- package/dist/components/atoms/Input.vue.d.ts.map +1 -1
- package/dist/components/atoms/Slider.vue.d.ts +2 -2
- package/dist/components/atoms/Switch.vue.d.ts +0 -1
- package/dist/components/atoms/Switch.vue.d.ts.map +1 -1
- package/dist/components/atoms/Textarea.vue.d.ts +2 -2
- package/dist/components/atoms/Toggle.vue.d.ts +19 -0
- package/dist/components/atoms/Toggle.vue.d.ts.map +1 -0
- package/dist/components/molecules/AccordionItem.vue.d.ts.map +1 -1
- package/dist/components/molecules/CheckboxGroupField.vue.d.ts.map +1 -1
- package/dist/components/molecules/Dropdown.vue.d.ts +3 -2
- package/dist/components/molecules/Dropdown.vue.d.ts.map +1 -1
- package/dist/components/molecules/FileUploadField.vue.d.ts +2 -0
- package/dist/components/molecules/FileUploadField.vue.d.ts.map +1 -1
- package/dist/components/molecules/FloatButton.vue.d.ts +8 -2
- package/dist/components/molecules/FloatButton.vue.d.ts.map +1 -1
- package/dist/components/molecules/InputField.vue.d.ts +12 -8
- package/dist/components/molecules/InputField.vue.d.ts.map +1 -1
- package/dist/components/molecules/Password.vue.d.ts +2 -2
- package/dist/components/molecules/PasswordField.vue.d.ts +2 -2
- package/dist/components/molecules/RadioGroupField.vue.d.ts.map +1 -1
- package/dist/components/molecules/SelectBoxField.vue.d.ts.map +1 -1
- package/dist/components/molecules/SliderField.vue.d.ts +2 -2
- package/dist/components/molecules/SwitchField.vue.d.ts.map +1 -1
- package/dist/components/molecules/TextareaField.vue.d.ts +5 -5
- package/dist/components/molecules/TextareaField.vue.d.ts.map +1 -1
- package/dist/components/molecules/ToggleGroup.vue.d.ts +24 -0
- package/dist/components/molecules/ToggleGroup.vue.d.ts.map +1 -0
- package/dist/components/organisms/Accordion.vue.d.ts.map +1 -1
- package/dist/components/organisms/Dialog.vue.d.ts.map +1 -1
- package/dist/components/organisms/Tabs.vue.d.ts.map +1 -1
- package/dist/composables/index.d.ts +4 -1
- package/dist/composables/index.d.ts.map +1 -1
- package/dist/composables/useBreakpoint.d.ts +83 -0
- package/dist/composables/useBreakpoint.d.ts.map +1 -0
- package/dist/composables/useCustomTheme.d.ts +65 -0
- package/dist/composables/useCustomTheme.d.ts.map +1 -0
- package/dist/composables/useTheme.d.ts +7 -3
- package/dist/composables/useTheme.d.ts.map +1 -1
- package/dist/index-B3HEnZbh.js +6194 -0
- package/dist/{index-7PaC4pth.js → index-B5DNZRyd.js} +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +34 -29
- package/dist/index.umd.js +1 -1
- package/dist/style.css +1 -1
- package/dist/theme.config.d.ts.map +1 -1
- package/dist/types/index.d.ts +63 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/theme.d.ts +21 -5
- package/dist/types/theme.d.ts.map +1 -1
- package/dist/utils/accessibility.d.ts +2 -2
- package/dist/utils/accessibility.d.ts.map +1 -1
- package/package.json +2 -1
- package/dist/index-CWUPixNs.js +0 -5852
|
@@ -1,3 +1,6 @@
|
|
|
1
1
|
import { useTheme } from './useTheme';
|
|
2
|
-
|
|
2
|
+
import { useCustomTheme } from './useCustomTheme';
|
|
3
|
+
import { useUniqueId } from './useUniqueId';
|
|
4
|
+
import { useBreakpoint } from './useBreakpoint';
|
|
5
|
+
export { useTheme, useCustomTheme, useUniqueId, useBreakpoint, };
|
|
3
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composables/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composables/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/C,OAAO,EACL,QAAQ,EACR,cAAc,EACd,WAAW,EACX,aAAa,GACd,CAAA"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
export type BreakpointKey = 'sm' | 'md' | 'lg' | 'xl' | '2xl';
|
|
2
|
+
export interface BreakpointConfig {
|
|
3
|
+
sm?: number;
|
|
4
|
+
md?: number;
|
|
5
|
+
lg?: number;
|
|
6
|
+
xl?: number;
|
|
7
|
+
'2xl'?: number;
|
|
8
|
+
}
|
|
9
|
+
export interface UseBreakpointOptions {
|
|
10
|
+
/** Surcharge des breakpoints par défaut */
|
|
11
|
+
breakpoints?: BreakpointConfig;
|
|
12
|
+
}
|
|
13
|
+
export interface BreakpointMatches {
|
|
14
|
+
sm: boolean;
|
|
15
|
+
md: boolean;
|
|
16
|
+
lg: boolean;
|
|
17
|
+
xl: boolean;
|
|
18
|
+
'2xl': boolean;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Composable pour la détection réactive des breakpoints.
|
|
22
|
+
*
|
|
23
|
+
* Utilise `window.matchMedia` pour une détection performante
|
|
24
|
+
* sans écouter l'événement `resize`. Compatible SSR (valeurs
|
|
25
|
+
* neutres côté serveur).
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```ts
|
|
29
|
+
* const { current, isUp, isDown, isBetween, matches } = useBreakpoint()
|
|
30
|
+
*
|
|
31
|
+
* // Breakpoint actif
|
|
32
|
+
* current.value // 'md'
|
|
33
|
+
*
|
|
34
|
+
* // Vérifications
|
|
35
|
+
* isUp('md') // true si largeur >= 768px
|
|
36
|
+
* isDown('lg') // true si largeur < 1024px
|
|
37
|
+
* isBetween('sm', 'lg') // true si >= 640px et < 1024px
|
|
38
|
+
*
|
|
39
|
+
* // Objet réactif complet
|
|
40
|
+
* matches.value // { sm: true, md: true, lg: false, xl: false, '2xl': false }
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
export declare function useBreakpoint(options?: UseBreakpointOptions): {
|
|
44
|
+
/** Breakpoint actif le plus large ('xs' si aucun) */
|
|
45
|
+
current: import('vue').ComputedRef<"xs" | BreakpointKey>;
|
|
46
|
+
/** Largeur du viewport en pixels (réactif) */
|
|
47
|
+
width: Readonly<import('vue').Ref<number, number>>;
|
|
48
|
+
/** Objet réactif { sm: bool, md: bool, lg: bool, xl: bool, '2xl': bool } */
|
|
49
|
+
matches: Readonly<import('vue').Ref<{
|
|
50
|
+
readonly sm: boolean;
|
|
51
|
+
readonly md: boolean;
|
|
52
|
+
readonly lg: boolean;
|
|
53
|
+
readonly xl: boolean;
|
|
54
|
+
readonly '2xl': boolean;
|
|
55
|
+
}, {
|
|
56
|
+
readonly sm: boolean;
|
|
57
|
+
readonly md: boolean;
|
|
58
|
+
readonly lg: boolean;
|
|
59
|
+
readonly xl: boolean;
|
|
60
|
+
readonly '2xl': boolean;
|
|
61
|
+
}>>;
|
|
62
|
+
/** true si largeur >= breakpoint */
|
|
63
|
+
isUp: (breakpoint: BreakpointKey) => boolean;
|
|
64
|
+
/** true si largeur < breakpoint */
|
|
65
|
+
isDown: (breakpoint: BreakpointKey) => boolean;
|
|
66
|
+
/** true si largeur >= min et < max */
|
|
67
|
+
isBetween: (min: BreakpointKey, max: BreakpointKey) => boolean;
|
|
68
|
+
/** Configuration des breakpoints utilisée */
|
|
69
|
+
breakpoints: Readonly<import('vue').Ref<{
|
|
70
|
+
readonly sm: number;
|
|
71
|
+
readonly md: number;
|
|
72
|
+
readonly lg: number;
|
|
73
|
+
readonly xl: number;
|
|
74
|
+
readonly '2xl': number;
|
|
75
|
+
}, {
|
|
76
|
+
readonly sm: number;
|
|
77
|
+
readonly md: number;
|
|
78
|
+
readonly lg: number;
|
|
79
|
+
readonly xl: number;
|
|
80
|
+
readonly '2xl': number;
|
|
81
|
+
}>>;
|
|
82
|
+
};
|
|
83
|
+
//# sourceMappingURL=useBreakpoint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useBreakpoint.d.ts","sourceRoot":"","sources":["../../src/composables/useBreakpoint.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAA;AAE7D,MAAM,WAAW,gBAAgB;IAC/B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,2CAA2C;IAC3C,WAAW,CAAC,EAAE,gBAAgB,CAAA;CAC/B;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,OAAO,CAAA;IACX,EAAE,EAAE,OAAO,CAAA;IACX,EAAE,EAAE,OAAO,CAAA;IACX,EAAE,EAAE,OAAO,CAAA;IACX,KAAK,EAAE,OAAO,CAAA;CACf;AA2BD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,aAAa,CAAC,OAAO,GAAE,oBAAyB;IAkJ5D,qDAAqD;;IAGrD,8CAA8C;;IAG9C,4EAA4E;;qBA/M1E,OAAO;qBACP,OAAO;qBACP,OAAO;qBACP,OAAO;wBACJ,OAAO;;qBAJV,OAAO;qBACP,OAAO;qBACP,OAAO;qBACP,OAAO;wBACJ,OAAO;;IA8MZ,oCAAoC;uBAhFZ,aAAa,KAAG,OAAO;IAmF/C,mCAAmC;yBA5ET,aAAa,KAAG,OAAO;IA+EjD,sCAAsC;qBAxEhB,aAAa,OAAO,aAAa,KAAG,OAAO;IA2EjE,6CAA6C;;qBAxO1C,MAAM;qBACN,MAAM;qBACN,MAAM;qBACN,MAAM;wBACH,MAAM;;qBAJT,MAAM;qBACN,MAAM;qBACN,MAAM;qBACN,MAAM;wBACH,MAAM;;EAuOf"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { SurgeuiTheme } from '../plugin/theme';
|
|
2
|
+
/**
|
|
3
|
+
* Composable pour gérer les variables CSS custom du système de thème
|
|
4
|
+
*
|
|
5
|
+
* Permet de:
|
|
6
|
+
* - Appliquer des variables CSS custom au DOM
|
|
7
|
+
* - Définir des variables individuelles
|
|
8
|
+
* - Réinitialiser les variables
|
|
9
|
+
* - Fusionner avec des thèmes existants
|
|
10
|
+
*/
|
|
11
|
+
export declare function useCustomTheme(): {
|
|
12
|
+
customTheme: import('vue').ComputedRef<{
|
|
13
|
+
textPrimary?: string | undefined;
|
|
14
|
+
textSecondary?: string | undefined;
|
|
15
|
+
textTertiary?: string | undefined;
|
|
16
|
+
textDisabled?: string | undefined;
|
|
17
|
+
textInverse?: string | undefined;
|
|
18
|
+
linkDefault?: string | undefined;
|
|
19
|
+
linkHover?: string | undefined;
|
|
20
|
+
linkVisited?: string | undefined;
|
|
21
|
+
linkMuted?: string | undefined;
|
|
22
|
+
bgCanvas?: string | undefined;
|
|
23
|
+
bgSurface?: string | undefined;
|
|
24
|
+
bgSurfaceElevated?: string | undefined;
|
|
25
|
+
bgOverlay?: string | undefined;
|
|
26
|
+
bgDisabled?: string | undefined;
|
|
27
|
+
bgHover?: string | undefined;
|
|
28
|
+
bgActive?: string | undefined;
|
|
29
|
+
bgSelected?: string | undefined;
|
|
30
|
+
borderDefault?: string | undefined;
|
|
31
|
+
borderSubtle?: string | undefined;
|
|
32
|
+
borderStrong?: string | undefined;
|
|
33
|
+
borderFocus?: string | undefined;
|
|
34
|
+
borderDisabled?: string | undefined;
|
|
35
|
+
stateSuccess?: string | undefined;
|
|
36
|
+
stateSuccessBg?: string | undefined;
|
|
37
|
+
stateWarning?: string | undefined;
|
|
38
|
+
stateWarningBg?: string | undefined;
|
|
39
|
+
stateError?: string | undefined;
|
|
40
|
+
stateErrorBg?: string | undefined;
|
|
41
|
+
stateInfo?: string | undefined;
|
|
42
|
+
stateInfoBg?: string | undefined;
|
|
43
|
+
primaryDefault?: string | undefined;
|
|
44
|
+
primaryHover?: string | undefined;
|
|
45
|
+
primaryActive?: string | undefined;
|
|
46
|
+
primaryDisabled?: string | undefined;
|
|
47
|
+
primaryText?: string | undefined;
|
|
48
|
+
secondaryDefault?: string | undefined;
|
|
49
|
+
secondaryHover?: string | undefined;
|
|
50
|
+
secondaryActive?: string | undefined;
|
|
51
|
+
secondaryDisabled?: string | undefined;
|
|
52
|
+
secondaryText?: string | undefined;
|
|
53
|
+
shadowColor?: string | undefined;
|
|
54
|
+
linkVariant?: Exclude<import('..').LinkVariant, "custom"> | undefined;
|
|
55
|
+
linkSize?: Exclude<import('..').LinkSize, "default"> | undefined;
|
|
56
|
+
linkUnderline?: Exclude<import('..').LinkUnderline, "default"> | undefined;
|
|
57
|
+
dialogDisplay?: Exclude<import('..').DialogDisplay, "center"> | undefined;
|
|
58
|
+
}>;
|
|
59
|
+
applyCustomTheme: (theme: SurgeuiTheme) => void;
|
|
60
|
+
setCustomVariable: (property: string, value: string) => void;
|
|
61
|
+
getCustomTheme: () => SurgeuiTheme;
|
|
62
|
+
resetCustomTheme: () => void;
|
|
63
|
+
mergeWithTheme: (baseTheme: SurgeuiTheme, overrideTheme: SurgeuiTheme) => SurgeuiTheme;
|
|
64
|
+
};
|
|
65
|
+
//# sourceMappingURL=useCustomTheme.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCustomTheme.d.ts","sourceRoot":"","sources":["../../src/composables/useCustomTheme.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAGlD;;;;;;;;GAQG;AACH,wBAAgB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BAcK,YAAY,KAAG,IAAI;kCAgBf,MAAM,SAAS,MAAM,KAAG,IAAI;0BAwBtC,YAAY;4BAOV,IAAI;gCA0BE,YAAY,iBAAiB,YAAY,KAAG,YAAY;EA+B5F"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import { ThemeName, ContrastMode, MotionMode, ThemeMetadata, UseThemeOptions } from '../types/theme';
|
|
1
|
+
import { ThemeName, ThemeMode, ContrastMode, MotionMode, ThemeMetadata, UseThemeOptions, DeprecatedThemeName } from '../types/theme';
|
|
2
2
|
export declare function useTheme(options?: UseThemeOptions): {
|
|
3
3
|
themeName: import('vue').Ref<ThemeName, ThemeName>;
|
|
4
|
+
themeMode: import('vue').Ref<ThemeMode, ThemeMode>;
|
|
4
5
|
contrastMode: import('vue').Ref<ContrastMode, ContrastMode>;
|
|
5
6
|
motionMode: import('vue').Ref<MotionMode, MotionMode>;
|
|
6
|
-
effectiveTheme: import('vue').ComputedRef<
|
|
7
|
+
effectiveTheme: import('vue').ComputedRef<ThemeName>;
|
|
8
|
+
effectiveThemeMode: import('vue').ComputedRef<"dark" | "light">;
|
|
7
9
|
effectiveContrast: import('vue').ComputedRef<"normal" | "high">;
|
|
8
10
|
effectiveMotion: import('vue').ComputedRef<"reduce" | "normal">;
|
|
9
11
|
systemTheme: import('vue').ComputedRef<"dark" | "light">;
|
|
@@ -14,9 +16,11 @@ export declare function useTheme(options?: UseThemeOptions): {
|
|
|
14
16
|
availableThemes: import('vue').ComputedRef<ThemeMetadata[]>;
|
|
15
17
|
systemThemes: import('vue').ComputedRef<ThemeMetadata[]>;
|
|
16
18
|
colorThemes: import('vue').ComputedRef<ThemeMetadata[]>;
|
|
17
|
-
setTheme: (
|
|
19
|
+
setTheme: (name: ThemeName | DeprecatedThemeName) => void;
|
|
20
|
+
setThemeMode: (mode: ThemeMode) => void;
|
|
18
21
|
setContrast: (contrast: ContrastMode) => void;
|
|
19
22
|
setMotion: (motion: MotionMode) => void;
|
|
23
|
+
toggleMode: () => void;
|
|
20
24
|
toggleTheme: () => void;
|
|
21
25
|
cycleTheme: () => void;
|
|
22
26
|
clearConfig: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTheme.d.ts","sourceRoot":"","sources":["../../src/composables/useTheme.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,SAAS,EACT,YAAY,EACZ,UAAU,EAEV,aAAa,EACb,eAAe,
|
|
1
|
+
{"version":3,"file":"useTheme.d.ts","sourceRoot":"","sources":["../../src/composables/useTheme.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,SAAS,EACT,SAAS,EACT,YAAY,EACZ,UAAU,EAEV,aAAa,EACb,eAAe,EACf,mBAAmB,EACpB,MAAM,eAAe,CAAC;AA2DvB,wBAAgB,QAAQ,CAAC,OAAO,GAAE,eAAoB;;;;;;;;;;;;;;;;;qBA4L5B,SAAS,GAAG,mBAAmB;yBAuC3B,SAAS;4BAMN,YAAY;wBAMhB,UAAU;;;;;EA4GtC"}
|