fansunited-frontend-core 0.0.23 → 0.0.24
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/functions/functions.d.ts +3 -3
- package/functions/functions.d.ts.map +1 -1
- package/functions/functions.js +4 -0
- package/functions/functions.js.map +1 -0
- package/functions/theme.d.ts +6 -6
- package/functions/theme.d.ts.map +1 -1
- package/functions/theme.js +361 -0
- package/functions/theme.js.map +1 -0
- package/hooks/useImageUrl.d.ts.map +1 -1
- package/hooks/useImageUrl.js +17 -0
- package/hooks/useImageUrl.js.map +1 -0
- package/index.es.js +950 -941
- package/locales/bg.json +251 -0
- package/locales/bg.json.d.ts +2 -2
- package/locales/de.json +251 -0
- package/locales/de.json.d.ts +2 -2
- package/locales/el.json +252 -0
- package/locales/el.json.d.ts +2 -2
- package/locales/en.json +252 -0
- package/locales/en.json.d.ts +2 -2
- package/locales/es.json +251 -0
- package/locales/es.json.d.ts +2 -2
- package/locales/fr-be.json +251 -0
- package/locales/fr-be.json.d.ts +2 -2
- package/locales/fr.json +251 -0
- package/locales/fr.json.d.ts +2 -2
- package/locales/it.json +251 -0
- package/locales/it.json.d.ts +2 -2
- package/locales/pl.json +251 -0
- package/locales/pl.json.d.ts +2 -2
- package/locales/pt-br.json +251 -0
- package/locales/pt-br.json.d.ts +2 -2
- package/locales/pt.json +251 -0
- package/locales/pt.json.d.ts +2 -2
- package/locales/ro.json +251 -0
- package/locales/ro.json.d.ts +2 -2
- package/locales/sk.json +251 -0
- package/locales/sk.json.d.ts +2 -2
- package/locales/sr.json +251 -0
- package/locales/sr.json.d.ts +2 -2
- package/package.json +1 -1
package/functions/functions.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { useSpacingScale, getSpacing, isMobile, isExtraSmall, isTablet, isDesktop, useFontFamily, useCornerRadius, useColors, useBorderSize, useInternalTheme, useImageBackgroundGradient, } from
|
|
2
|
-
export { stripHtmlTags, hexToRgb, isAndroid, getDefaultCountryByCode, getDefaultCountryByLanguage, extractBrandingProperties, sanitizeBackgroundUrl, mapContentTypeToConsentEntityType, } from
|
|
3
|
-
export { initializeI18n } from
|
|
1
|
+
export { useSpacingScale, getSpacing, isMobile, isExtraSmall, isTablet, isDesktop, useFontFamily, useCornerRadius, useColors, useBorderSize, useInternalTheme, useImageBackgroundGradient, isLarge, } from "./theme";
|
|
2
|
+
export { stripHtmlTags, hexToRgb, isAndroid, getDefaultCountryByCode, getDefaultCountryByLanguage, extractBrandingProperties, sanitizeBackgroundUrl, mapContentTypeToConsentEntityType, } from "./helpers";
|
|
3
|
+
export { initializeI18n } from "./i18n";
|
|
4
4
|
//# sourceMappingURL=functions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../../src/functions/functions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,aAAa,EACb,eAAe,EACf,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,0BAA0B,
|
|
1
|
+
{"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../../src/functions/functions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,aAAa,EACb,eAAe,EACf,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,0BAA0B,EAC1B,OAAO,GACR,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,aAAa,EACb,QAAQ,EACR,SAAS,EACT,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,EACzB,qBAAqB,EACrB,iCAAiC,GAClC,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { useSpacingScale, getSpacing, isMobile, isExtraSmall, isTablet, isDesktop, useFontFamily, useCornerRadius, useColors, useBorderSize, useInternalTheme, useImageBackgroundGradient, isLarge, } from "./theme";
|
|
2
|
+
export { stripHtmlTags, hexToRgb, isAndroid, getDefaultCountryByCode, getDefaultCountryByLanguage, extractBrandingProperties, sanitizeBackgroundUrl, mapContentTypeToConsentEntityType, } from "./helpers";
|
|
3
|
+
export { initializeI18n } from "./i18n";
|
|
4
|
+
//# sourceMappingURL=functions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"functions.js","sourceRoot":"","sources":["../../src/functions/functions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,aAAa,EACb,eAAe,EACf,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,0BAA0B,EAC1B,OAAO,GACR,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,aAAa,EACb,QAAQ,EACR,SAAS,EACT,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,EACzB,qBAAqB,EACrB,iCAAiC,GAClC,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC"}
|
package/functions/theme.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { Theme } from
|
|
2
|
-
import { CustomSpacingScale, CustomThemeOptions, EnhancedCustomThemeOptions, InternalCustomThemeOptions, ThemeMode } from
|
|
3
|
-
import { WidgetTemplate } from
|
|
4
|
-
|
|
1
|
+
import { Theme } from "@mui/joy/styles";
|
|
2
|
+
import { CustomSpacingScale, CustomThemeOptions, EnhancedCustomThemeOptions, InternalCustomThemeOptions, ThemeMode } from "../interfaces/interfaces";
|
|
3
|
+
import { WidgetTemplate } from "../enums/enums";
|
|
5
4
|
export declare const createCustomTheme: (customOptions?: CustomThemeOptions) => Theme;
|
|
6
5
|
export declare const createEnhancedTheme: (customOptions?: EnhancedCustomThemeOptions) => Theme;
|
|
7
6
|
/**
|
|
@@ -15,6 +14,7 @@ export declare const useSpacingScale: () => CustomSpacingScale;
|
|
|
15
14
|
export declare const getSpacing: (size: keyof CustomSpacingScale) => string;
|
|
16
15
|
export declare const isExtraSmall: () => boolean;
|
|
17
16
|
export declare const isMobile: () => boolean;
|
|
17
|
+
export declare const isLarge: () => boolean;
|
|
18
18
|
export declare const isTablet: () => boolean;
|
|
19
19
|
export declare const isDesktop: () => boolean;
|
|
20
20
|
export declare const useInternalTheme: () => InternalCustomThemeOptions;
|
|
@@ -26,8 +26,8 @@ export declare const useFontFamily: () => {
|
|
|
26
26
|
primary: string;
|
|
27
27
|
secondary: string;
|
|
28
28
|
};
|
|
29
|
-
export declare const useCornerRadius: () => import(
|
|
30
|
-
export declare const useColors: () => import(
|
|
29
|
+
export declare const useCornerRadius: () => import("..").CustomBorderRadius;
|
|
30
|
+
export declare const useColors: () => import("..").InternalCustomColors;
|
|
31
31
|
export declare const useBorderSize: () => {
|
|
32
32
|
size: string;
|
|
33
33
|
} | {
|
package/functions/theme.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../src/functions/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAIN,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,0BAA0B,EAE1B,0BAA0B,EAC1B,SAAS,EACV,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAkKhD,eAAO,MAAM,iBAAiB,mBACZ,kBAAkB,KACjC,KAiFF,CAAC;AAEF,eAAO,MAAM,mBAAmB,mBACd,0BAA0B,KACzC,KAeF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,QAEG,kBAC9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,SAAU,MAAM,kBAAkB,KAAG,MAK3D,CAAC;AAGF,eAAO,MAAM,YAAY,eAcxB,CAAC;AAGF,eAAO,MAAM,QAAQ,eAcpB,CAAC;AAEF,eAAO,MAAM,QAAQ,eAkBpB,CAAC;AAEF,eAAO,MAAM,SAAS,eAcrB,CAAC;AAGF,eAAO,MAAM,gBAAgB,kCAI5B,CAAC;AAGF,eAAO,MAAM,gBAAgB;;;CAQ5B,CAAC;AAEF,eAAO,MAAM,aAAa;;;CAOzB,CAAC;AAEF,eAAO,MAAM,eAAe,uCAG3B,CAAC;AAEF,eAAO,MAAM,SAAS,yCAGrB,CAAC;AAEF,eAAO,MAAM,aAAa;;;;CAGzB,CAAC;AAEF,eAAO,MAAM,0BAA0B,YAAa,cAAc,WAcjE,CAAC"}
|
|
1
|
+
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../src/functions/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAIN,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,0BAA0B,EAE1B,0BAA0B,EAC1B,SAAS,EACV,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAkKhD,eAAO,MAAM,iBAAiB,mBACZ,kBAAkB,KACjC,KAiFF,CAAC;AAEF,eAAO,MAAM,mBAAmB,mBACd,0BAA0B,KACzC,KAeF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,QAEG,kBAC9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,SAAU,MAAM,kBAAkB,KAAG,MAK3D,CAAC;AAGF,eAAO,MAAM,YAAY,eAcxB,CAAC;AAGF,eAAO,MAAM,QAAQ,eAcpB,CAAC;AAGF,eAAO,MAAM,OAAO,eAcnB,CAAC;AAEF,eAAO,MAAM,QAAQ,eAkBpB,CAAC;AAEF,eAAO,MAAM,SAAS,eAcrB,CAAC;AAGF,eAAO,MAAM,gBAAgB,kCAI5B,CAAC;AAGF,eAAO,MAAM,gBAAgB;;;CAQ5B,CAAC;AAEF,eAAO,MAAM,aAAa;;;CAOzB,CAAC;AAEF,eAAO,MAAM,eAAe,uCAG3B,CAAC;AAEF,eAAO,MAAM,SAAS,yCAGrB,CAAC;AAEF,eAAO,MAAM,aAAa;;;;CAGzB,CAAC;AAEF,eAAO,MAAM,0BAA0B,YAAa,cAAc,WAcjE,CAAC"}
|
|
@@ -0,0 +1,361 @@
|
|
|
1
|
+
import { extendTheme, useTheme, } from "@mui/joy/styles";
|
|
2
|
+
import useMediaQuery from "@mui/material/useMediaQuery";
|
|
3
|
+
import { useThemeMode } from "../hooks/useThemeMode";
|
|
4
|
+
import { WidgetTemplate } from "../enums/enums";
|
|
5
|
+
import { useContainerContext } from "../providers/ContainerProvider";
|
|
6
|
+
const defaultBreakpoints = {
|
|
7
|
+
values: {
|
|
8
|
+
xs: 0,
|
|
9
|
+
sm: 444,
|
|
10
|
+
md: 600,
|
|
11
|
+
lg: 900,
|
|
12
|
+
xl: 1200,
|
|
13
|
+
xxl: 1536,
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
const defaultSpacing = {
|
|
17
|
+
"3xs": "2px",
|
|
18
|
+
"2xs": "4px",
|
|
19
|
+
xs: "8px",
|
|
20
|
+
sm: "12px",
|
|
21
|
+
md: "16px",
|
|
22
|
+
lg: "24px",
|
|
23
|
+
xl: "32px",
|
|
24
|
+
"2xl": "40px",
|
|
25
|
+
"3xl": "48px",
|
|
26
|
+
};
|
|
27
|
+
const customColorSchemes = {
|
|
28
|
+
light: {
|
|
29
|
+
palette: {
|
|
30
|
+
success: {
|
|
31
|
+
plainColor: "#4CAF50",
|
|
32
|
+
outlinedBorder: "#4CAF50",
|
|
33
|
+
softBg: "#E3FBE3",
|
|
34
|
+
},
|
|
35
|
+
danger: {
|
|
36
|
+
softBg: "#FEE4E2",
|
|
37
|
+
plainColor: "#F44336",
|
|
38
|
+
outlinedBorder: "#F44336",
|
|
39
|
+
},
|
|
40
|
+
primary: {
|
|
41
|
+
plainColor: "#1A77D2",
|
|
42
|
+
outlinedBorder: "#1A77D2",
|
|
43
|
+
onPrimary: "#FAFAFA",
|
|
44
|
+
primaryContainer: "#2397F3",
|
|
45
|
+
},
|
|
46
|
+
warning: {
|
|
47
|
+
softBg: "#FEF0C7",
|
|
48
|
+
plainColor: "#DC6803",
|
|
49
|
+
},
|
|
50
|
+
},
|
|
51
|
+
textPrimary: "#212121",
|
|
52
|
+
textSecondary: "#212121",
|
|
53
|
+
textColor: "#212121",
|
|
54
|
+
textDisabled: "#212121",
|
|
55
|
+
surface: "#FFFFFF",
|
|
56
|
+
onSurface: "#F5F5F5",
|
|
57
|
+
surfaceVariant: "#EEEEEE",
|
|
58
|
+
surfaceTintDim: "#212121",
|
|
59
|
+
surfaceInverse: "#F5F5F5",
|
|
60
|
+
outlineEnabledBorder: "#E0E0E0",
|
|
61
|
+
secondaryContainer: "#BDBDBD",
|
|
62
|
+
},
|
|
63
|
+
dark: {
|
|
64
|
+
palette: {
|
|
65
|
+
primary: {
|
|
66
|
+
plainColor: "#1A77D2",
|
|
67
|
+
outlinedBorder: "#1A77D2",
|
|
68
|
+
onPrimary: "#FAFAFA",
|
|
69
|
+
primaryContainer: "#2397F3",
|
|
70
|
+
},
|
|
71
|
+
success: {
|
|
72
|
+
plainColor: "#4CAF50",
|
|
73
|
+
outlinedBorder: "#4CAF50",
|
|
74
|
+
softBg: "#042F04",
|
|
75
|
+
},
|
|
76
|
+
danger: {
|
|
77
|
+
softBg: "#430A0A",
|
|
78
|
+
plainColor: "#F44336",
|
|
79
|
+
outlinedBorder: "#F44336",
|
|
80
|
+
},
|
|
81
|
+
warning: {
|
|
82
|
+
softBg: "#FEF0C7",
|
|
83
|
+
plainColor: "#DC6803",
|
|
84
|
+
},
|
|
85
|
+
},
|
|
86
|
+
textPrimary: "#FAFAFA",
|
|
87
|
+
textSecondary: "#FAFAFA",
|
|
88
|
+
textColor: "#FAFAFA",
|
|
89
|
+
textDisabled: "#FAFAFA",
|
|
90
|
+
surface: "#424242",
|
|
91
|
+
onSurface: "#212121",
|
|
92
|
+
surfaceVariant: "#616161",
|
|
93
|
+
surfaceTintDim: "#FAFAFA",
|
|
94
|
+
surfaceInverse: "#FAFAFA",
|
|
95
|
+
outlineEnabledBorder: "#757575",
|
|
96
|
+
secondaryContainer: "#757575",
|
|
97
|
+
},
|
|
98
|
+
};
|
|
99
|
+
const defaultCustomFontFamily = {
|
|
100
|
+
light: {
|
|
101
|
+
primary: "Ubuntu, sans-serif",
|
|
102
|
+
secondary: "Roboto, sans-serif",
|
|
103
|
+
},
|
|
104
|
+
dark: {
|
|
105
|
+
primary: "Ubuntu, sans-serif",
|
|
106
|
+
secondary: "Roboto, sans-serif",
|
|
107
|
+
},
|
|
108
|
+
};
|
|
109
|
+
const defaultCornerRadius = {
|
|
110
|
+
light: {
|
|
111
|
+
none: "0px",
|
|
112
|
+
"2xs": "2px",
|
|
113
|
+
xs: "4px",
|
|
114
|
+
sm: "8px",
|
|
115
|
+
md: "12px",
|
|
116
|
+
lg: "16px",
|
|
117
|
+
xl: "24px",
|
|
118
|
+
"2xl": "232px",
|
|
119
|
+
full: "1000px",
|
|
120
|
+
},
|
|
121
|
+
dark: {
|
|
122
|
+
none: "0px",
|
|
123
|
+
"2xs": "2px",
|
|
124
|
+
xs: "4px",
|
|
125
|
+
sm: "8px",
|
|
126
|
+
md: "12px",
|
|
127
|
+
lg: "16px",
|
|
128
|
+
xl: "24px",
|
|
129
|
+
"2xl": "232px",
|
|
130
|
+
full: "1000px",
|
|
131
|
+
},
|
|
132
|
+
};
|
|
133
|
+
const defaultBorder = {
|
|
134
|
+
light: {
|
|
135
|
+
size: "1px",
|
|
136
|
+
},
|
|
137
|
+
dark: {
|
|
138
|
+
size: "2px",
|
|
139
|
+
},
|
|
140
|
+
};
|
|
141
|
+
const defaultCustomGradient = {
|
|
142
|
+
light: {
|
|
143
|
+
standard: "linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(18, 18, 18, 0.8) 100%)",
|
|
144
|
+
split: "linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(18, 18, 18, 0.8) 100%)",
|
|
145
|
+
},
|
|
146
|
+
dark: {
|
|
147
|
+
standard: "linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(18, 18, 18, 0.8) 100%)",
|
|
148
|
+
split: "linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(18, 18, 18, 0.8) 100%)",
|
|
149
|
+
overlay: "linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(18, 18, 18, 0.8) 100%)",
|
|
150
|
+
},
|
|
151
|
+
};
|
|
152
|
+
// Create the theme with default Joy UI theme as base
|
|
153
|
+
export const createCustomTheme = (customOptions) => {
|
|
154
|
+
const baseTheme = extendTheme();
|
|
155
|
+
const customThemeOptions = {
|
|
156
|
+
// Only add custom properties, don't override the entire palette
|
|
157
|
+
colorSchemes: {
|
|
158
|
+
light: {
|
|
159
|
+
palette: {
|
|
160
|
+
// Merge with existing palette
|
|
161
|
+
success: {
|
|
162
|
+
...baseTheme.colorSchemes.light.palette.success,
|
|
163
|
+
...(customOptions?.colorSchemes?.light?.palette?.success ||
|
|
164
|
+
customColorSchemes.light.palette.success),
|
|
165
|
+
},
|
|
166
|
+
danger: {
|
|
167
|
+
...baseTheme.colorSchemes.light.palette.danger,
|
|
168
|
+
...(customOptions?.colorSchemes?.light?.palette?.danger ||
|
|
169
|
+
customColorSchemes.light.palette.danger),
|
|
170
|
+
},
|
|
171
|
+
primary: {
|
|
172
|
+
...baseTheme.colorSchemes.light.palette.primary,
|
|
173
|
+
...(customOptions?.colorSchemes?.light?.palette?.primary ||
|
|
174
|
+
customColorSchemes.light.palette.primary),
|
|
175
|
+
},
|
|
176
|
+
warning: {
|
|
177
|
+
...baseTheme.colorSchemes.light.palette.warning,
|
|
178
|
+
...(customOptions?.colorSchemes?.light?.palette?.warning ||
|
|
179
|
+
customColorSchemes.light.palette.warning),
|
|
180
|
+
},
|
|
181
|
+
},
|
|
182
|
+
// Add custom properties
|
|
183
|
+
...(customOptions?.colorSchemes?.light || customColorSchemes.light),
|
|
184
|
+
},
|
|
185
|
+
dark: {
|
|
186
|
+
palette: {
|
|
187
|
+
primary: {
|
|
188
|
+
...baseTheme.colorSchemes.dark.palette.primary,
|
|
189
|
+
...(customOptions?.colorSchemes?.dark?.palette?.primary ||
|
|
190
|
+
customColorSchemes.dark.palette.primary),
|
|
191
|
+
},
|
|
192
|
+
success: {
|
|
193
|
+
...baseTheme.colorSchemes.dark.palette.success,
|
|
194
|
+
...(customOptions?.colorSchemes?.dark?.palette?.success ||
|
|
195
|
+
customColorSchemes.dark.palette.success),
|
|
196
|
+
},
|
|
197
|
+
danger: {
|
|
198
|
+
...baseTheme.colorSchemes.dark.palette.danger,
|
|
199
|
+
...(customOptions?.colorSchemes?.dark?.palette?.danger ||
|
|
200
|
+
customColorSchemes.dark.palette.danger),
|
|
201
|
+
},
|
|
202
|
+
warning: {
|
|
203
|
+
...baseTheme.colorSchemes.dark.palette.warning,
|
|
204
|
+
...(customOptions?.colorSchemes?.dark?.palette?.warning ||
|
|
205
|
+
customColorSchemes.dark.palette.warning),
|
|
206
|
+
},
|
|
207
|
+
},
|
|
208
|
+
// Add custom properties
|
|
209
|
+
...(customOptions?.colorSchemes?.dark || customColorSchemes.dark),
|
|
210
|
+
},
|
|
211
|
+
},
|
|
212
|
+
breakpoints: {
|
|
213
|
+
values: {
|
|
214
|
+
...baseTheme.breakpoints.values,
|
|
215
|
+
...(customOptions?.customBreakpoints?.values ||
|
|
216
|
+
defaultBreakpoints.values),
|
|
217
|
+
},
|
|
218
|
+
},
|
|
219
|
+
// Add other custom properties as needed
|
|
220
|
+
...(customOptions && {
|
|
221
|
+
spacingScale: customOptions.spacingScale || defaultSpacing,
|
|
222
|
+
customFontFamily: customOptions.customFontFamily || defaultCustomFontFamily,
|
|
223
|
+
customRadius: customOptions.customRadius || defaultCornerRadius,
|
|
224
|
+
border: customOptions.border || defaultBorder,
|
|
225
|
+
imageBackgroundGradient: customOptions.imageBackgroundGradient || defaultCustomGradient,
|
|
226
|
+
customBreakpoints: customOptions.customBreakpoints || defaultBreakpoints,
|
|
227
|
+
}),
|
|
228
|
+
};
|
|
229
|
+
return extendTheme(customThemeOptions);
|
|
230
|
+
};
|
|
231
|
+
export const createEnhancedTheme = (customOptions) => {
|
|
232
|
+
const mode = customOptions?.mode || "light";
|
|
233
|
+
const modeStorageKey = customOptions?.modeStorageKey || "theme-mode";
|
|
234
|
+
const theme = createCustomTheme(customOptions);
|
|
235
|
+
// Add mode and storage key
|
|
236
|
+
return extendTheme({
|
|
237
|
+
...theme,
|
|
238
|
+
mode,
|
|
239
|
+
modeStorageKey,
|
|
240
|
+
// Ensure Joy UI respects the provided mode
|
|
241
|
+
cssVarPrefix: "joy",
|
|
242
|
+
colorSchemeSelector: 'data-joy-color-scheme="%s"',
|
|
243
|
+
});
|
|
244
|
+
};
|
|
245
|
+
/**
|
|
246
|
+
* Custom hook to access spacing scale values from the theme
|
|
247
|
+
* @returns Spacing scale object or undefined if not available in the theme
|
|
248
|
+
*/
|
|
249
|
+
export const useSpacingScale = () => {
|
|
250
|
+
const theme = useTheme();
|
|
251
|
+
return theme.spacingScale;
|
|
252
|
+
};
|
|
253
|
+
/**
|
|
254
|
+
* Function to get a spacing value from the spacing scale
|
|
255
|
+
*/
|
|
256
|
+
export const getSpacing = (size) => {
|
|
257
|
+
const spacingScale = useSpacingScale();
|
|
258
|
+
return spacingScale
|
|
259
|
+
? spacingScale[size]
|
|
260
|
+
: "16px";
|
|
261
|
+
};
|
|
262
|
+
// Enhanced function for very small screens/containers - now container-aware!
|
|
263
|
+
export const isExtraSmall = () => {
|
|
264
|
+
const joyTheme = useTheme();
|
|
265
|
+
const { theme } = useThemeWithMode();
|
|
266
|
+
const { containerWidth, isContainerDetected } = useContainerContext();
|
|
267
|
+
// If container is detected and has width, use container-based detection
|
|
268
|
+
if (isContainerDetected && containerWidth > 0) {
|
|
269
|
+
return containerWidth < theme.customBreakpoints.values.sm;
|
|
270
|
+
}
|
|
271
|
+
// Fall back to viewport-based detection
|
|
272
|
+
return useMediaQuery(joyTheme.breakpoints.down(theme.customBreakpoints.values.sm));
|
|
273
|
+
};
|
|
274
|
+
// Enhanced isMobile function - now container-aware!
|
|
275
|
+
export const isMobile = () => {
|
|
276
|
+
const joyTheme = useTheme();
|
|
277
|
+
const { theme } = useThemeWithMode();
|
|
278
|
+
const { containerWidth, isContainerDetected } = useContainerContext();
|
|
279
|
+
// If container is detected and has width, use container-based detection
|
|
280
|
+
if (isContainerDetected && containerWidth > 0) {
|
|
281
|
+
return containerWidth < theme.customBreakpoints.values.md;
|
|
282
|
+
}
|
|
283
|
+
// Fall back to viewport-based detection
|
|
284
|
+
return useMediaQuery(joyTheme.breakpoints.down(theme.customBreakpoints.values.md));
|
|
285
|
+
};
|
|
286
|
+
// Enhanced isMobile function - now container-aware!
|
|
287
|
+
export const isLarge = () => {
|
|
288
|
+
const joyTheme = useTheme();
|
|
289
|
+
const { theme } = useThemeWithMode();
|
|
290
|
+
const { containerWidth, isContainerDetected } = useContainerContext();
|
|
291
|
+
// If container is detected and has width, use container-based detection
|
|
292
|
+
if (isContainerDetected && containerWidth > 0) {
|
|
293
|
+
return containerWidth < theme.customBreakpoints.values.lg;
|
|
294
|
+
}
|
|
295
|
+
// Fall back to viewport-based detection
|
|
296
|
+
return useMediaQuery(joyTheme.breakpoints.down(theme.customBreakpoints.values.lg));
|
|
297
|
+
};
|
|
298
|
+
export const isTablet = () => {
|
|
299
|
+
const joyTheme = useTheme();
|
|
300
|
+
const { theme } = useThemeWithMode();
|
|
301
|
+
const { containerWidth, isContainerDetected } = useContainerContext();
|
|
302
|
+
// If container is detected and has width, use container-based detection
|
|
303
|
+
if (isContainerDetected && containerWidth > 0) {
|
|
304
|
+
return containerWidth >= theme.customBreakpoints.values.md &&
|
|
305
|
+
containerWidth < theme.customBreakpoints.values.lg;
|
|
306
|
+
}
|
|
307
|
+
// Fall back to viewport-based detection
|
|
308
|
+
return useMediaQuery(joyTheme.breakpoints.between(theme.customBreakpoints.values.md, theme.customBreakpoints.values.lg));
|
|
309
|
+
};
|
|
310
|
+
export const isDesktop = () => {
|
|
311
|
+
const joyTheme = useTheme();
|
|
312
|
+
const { theme } = useThemeWithMode();
|
|
313
|
+
const { containerWidth, isContainerDetected } = useContainerContext();
|
|
314
|
+
// If container is detected and has width, use container-based detection
|
|
315
|
+
if (isContainerDetected && containerWidth > 0) {
|
|
316
|
+
return containerWidth >= theme.customBreakpoints.values.lg;
|
|
317
|
+
}
|
|
318
|
+
// Fall back to viewport-based detection
|
|
319
|
+
return useMediaQuery(joyTheme.breakpoints.up(theme.customBreakpoints.values.lg));
|
|
320
|
+
};
|
|
321
|
+
// The hook will be used in components to access the internal theme
|
|
322
|
+
export const useInternalTheme = () => {
|
|
323
|
+
const theme = useTheme();
|
|
324
|
+
return theme;
|
|
325
|
+
};
|
|
326
|
+
// Enhanced hooks for accessing theme values with mode awareness
|
|
327
|
+
export const useThemeWithMode = () => {
|
|
328
|
+
const theme = useTheme();
|
|
329
|
+
const { mode } = useThemeMode(theme.mode || "light", theme.modeStorageKey || "theme-mode");
|
|
330
|
+
const internalTheme = theme;
|
|
331
|
+
return { theme: internalTheme, mode };
|
|
332
|
+
};
|
|
333
|
+
export const useFontFamily = () => {
|
|
334
|
+
const { theme, mode } = useThemeWithMode();
|
|
335
|
+
return {
|
|
336
|
+
primary: theme.customFontFamily?.[mode]?.primary || "Ubuntu, sans-serif",
|
|
337
|
+
secondary: theme.customFontFamily?.[mode]?.secondary || "Roboto, sans-serif",
|
|
338
|
+
};
|
|
339
|
+
};
|
|
340
|
+
export const useCornerRadius = () => {
|
|
341
|
+
const { theme, mode } = useThemeWithMode();
|
|
342
|
+
return theme.customRadius?.[mode] || defaultCornerRadius[mode];
|
|
343
|
+
};
|
|
344
|
+
export const useColors = () => {
|
|
345
|
+
const { theme, mode } = useThemeWithMode();
|
|
346
|
+
return theme.colorSchemes?.[mode] || customColorSchemes[mode];
|
|
347
|
+
};
|
|
348
|
+
export const useBorderSize = () => {
|
|
349
|
+
const { theme, mode } = useThemeWithMode();
|
|
350
|
+
return theme.border?.[mode] || defaultBorder[mode];
|
|
351
|
+
};
|
|
352
|
+
export const useImageBackgroundGradient = (variant) => {
|
|
353
|
+
const { theme, mode } = useThemeWithMode();
|
|
354
|
+
if (variant === WidgetTemplate.STANDARD || variant === WidgetTemplate.SPLIT) {
|
|
355
|
+
return (theme.imageBackgroundGradient[mode][variant] ||
|
|
356
|
+
defaultCustomGradient[mode][variant]);
|
|
357
|
+
}
|
|
358
|
+
return (theme.imageBackgroundGradient.dark.overlay ||
|
|
359
|
+
defaultCustomGradient.dark.overlay);
|
|
360
|
+
};
|
|
361
|
+
//# sourceMappingURL=theme.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/functions/theme.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useImageUrl.d.ts","sourceRoot":"","sources":["../../src/hooks/useImageUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGjE;;;;;GAKG;AACH,eAAO,MAAM,WAAW,WACd,WAAW,GAAG,cAAc,GAAG,IAAI,KAC1C,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"useImageUrl.d.ts","sourceRoot":"","sources":["../../src/hooks/useImageUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGjE;;;;;GAKG;AACH,eAAO,MAAM,WAAW,WACd,WAAW,GAAG,cAAc,GAAG,IAAI,KAC1C,MAAM,GAAG,IAUX,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { isMobile } from "../functions/theme";
|
|
2
|
+
/**
|
|
3
|
+
* Custom hook to determine the appropriate image URL based on position and device type
|
|
4
|
+
* @param images The images model containing various image URLs
|
|
5
|
+
* @param imagePosition The desired position for the image
|
|
6
|
+
* @returns The appropriate image URL or null
|
|
7
|
+
*/
|
|
8
|
+
export const useImageUrl = (images) => {
|
|
9
|
+
const mobile = isMobile();
|
|
10
|
+
if (!images)
|
|
11
|
+
return null;
|
|
12
|
+
if (mobile) {
|
|
13
|
+
return images.mobile || images.main || null;
|
|
14
|
+
}
|
|
15
|
+
return images.main || null;
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=useImageUrl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useImageUrl.js","sourceRoot":"","sources":["../../src/hooks/useImageUrl.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,MAA2C,EAC5B,EAAE;IACjB,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAC;IAE1B,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC;IAC9C,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC;AAC7B,CAAC,CAAC"}
|