analytica-frontend-lib 1.1.49 → 1.1.50
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/ThemeToggle/index.d.mts +51 -0
- package/dist/ThemeToggle/index.d.ts +51 -0
- package/dist/ThemeToggle/index.js +236 -0
- package/dist/ThemeToggle/index.js.map +1 -0
- package/dist/ThemeToggle/index.mjs +211 -0
- package/dist/ThemeToggle/index.mjs.map +1 -0
- package/dist/hooks/useTheme/index.d.mts +9 -4
- package/dist/hooks/useTheme/index.d.ts +9 -4
- package/dist/hooks/useTheme/index.js +73 -11
- package/dist/hooks/useTheme/index.js.map +1 -1
- package/dist/hooks/useTheme/index.mjs +74 -12
- package/dist/hooks/useTheme/index.mjs.map +1 -1
- package/dist/index.css +39 -0
- package/dist/index.css.map +1 -1
- package/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +698 -521
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +667 -491
- package/dist/index.mjs.map +1 -1
- package/dist/styles.css +39 -0
- package/dist/styles.css.map +1 -1
- package/package.json +2 -1
|
@@ -25,25 +25,87 @@ __export(useTheme_exports, {
|
|
|
25
25
|
module.exports = __toCommonJS(useTheme_exports);
|
|
26
26
|
var import_react = require("react");
|
|
27
27
|
var useTheme = () => {
|
|
28
|
-
(0, import_react.
|
|
28
|
+
const [themeMode, setThemeMode] = (0, import_react.useState)("system");
|
|
29
|
+
const [isDark, setIsDark] = (0, import_react.useState)(false);
|
|
30
|
+
const themeModeRef = (0, import_react.useRef)("system");
|
|
31
|
+
const applyTheme = (0, import_react.useCallback)((mode) => {
|
|
29
32
|
const htmlElement = document.documentElement;
|
|
30
|
-
const
|
|
31
|
-
if (
|
|
32
|
-
htmlElement.setAttribute("data-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
const originalTheme = htmlElement.getAttribute("data-original-theme");
|
|
34
|
+
if (mode === "dark") {
|
|
35
|
+
htmlElement.setAttribute("data-theme", "dark");
|
|
36
|
+
setIsDark(true);
|
|
37
|
+
} else if (mode === "light") {
|
|
38
|
+
if (originalTheme) {
|
|
39
|
+
htmlElement.setAttribute("data-theme", originalTheme);
|
|
40
|
+
}
|
|
41
|
+
setIsDark(false);
|
|
42
|
+
} else if (mode === "system") {
|
|
43
|
+
const isSystemDark = window.matchMedia(
|
|
36
44
|
"(prefers-color-scheme: dark)"
|
|
37
45
|
).matches;
|
|
38
|
-
|
|
39
|
-
if (isDarkMode) {
|
|
46
|
+
if (isSystemDark) {
|
|
40
47
|
htmlElement.setAttribute("data-theme", "dark");
|
|
48
|
+
setIsDark(true);
|
|
41
49
|
} else if (originalTheme) {
|
|
42
50
|
htmlElement.setAttribute("data-theme", originalTheme);
|
|
51
|
+
setIsDark(false);
|
|
43
52
|
}
|
|
44
|
-
}
|
|
45
|
-
applyTheme();
|
|
53
|
+
}
|
|
46
54
|
}, []);
|
|
55
|
+
const toggleTheme = (0, import_react.useCallback)(() => {
|
|
56
|
+
let newMode;
|
|
57
|
+
if (themeMode === "light") {
|
|
58
|
+
newMode = "dark";
|
|
59
|
+
} else if (themeMode === "dark") {
|
|
60
|
+
newMode = "light";
|
|
61
|
+
} else {
|
|
62
|
+
newMode = "dark";
|
|
63
|
+
}
|
|
64
|
+
setThemeMode(newMode);
|
|
65
|
+
themeModeRef.current = newMode;
|
|
66
|
+
applyTheme(newMode);
|
|
67
|
+
localStorage.setItem("theme-mode", newMode);
|
|
68
|
+
}, [themeMode, applyTheme]);
|
|
69
|
+
const setTheme = (0, import_react.useCallback)(
|
|
70
|
+
(mode) => {
|
|
71
|
+
setThemeMode(mode);
|
|
72
|
+
themeModeRef.current = mode;
|
|
73
|
+
applyTheme(mode);
|
|
74
|
+
localStorage.setItem("theme-mode", mode);
|
|
75
|
+
},
|
|
76
|
+
[applyTheme]
|
|
77
|
+
);
|
|
78
|
+
(0, import_react.useEffect)(() => {
|
|
79
|
+
const htmlElement = document.documentElement;
|
|
80
|
+
const currentTheme = htmlElement.getAttribute("data-theme");
|
|
81
|
+
if (currentTheme && !htmlElement.getAttribute("data-original-theme")) {
|
|
82
|
+
htmlElement.setAttribute("data-original-theme", currentTheme);
|
|
83
|
+
}
|
|
84
|
+
const savedThemeMode = localStorage.getItem("theme-mode");
|
|
85
|
+
const initialMode = savedThemeMode || "system";
|
|
86
|
+
if (!savedThemeMode) {
|
|
87
|
+
localStorage.setItem("theme-mode", "system");
|
|
88
|
+
}
|
|
89
|
+
setThemeMode(initialMode);
|
|
90
|
+
themeModeRef.current = initialMode;
|
|
91
|
+
applyTheme(initialMode);
|
|
92
|
+
const mediaQuery = window.matchMedia("(prefers-color-scheme: dark)");
|
|
93
|
+
const handleSystemThemeChange = () => {
|
|
94
|
+
if (themeModeRef.current === "system") {
|
|
95
|
+
applyTheme("system");
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
mediaQuery.addEventListener("change", handleSystemThemeChange);
|
|
99
|
+
return () => {
|
|
100
|
+
mediaQuery.removeEventListener("change", handleSystemThemeChange);
|
|
101
|
+
};
|
|
102
|
+
}, [applyTheme]);
|
|
103
|
+
return {
|
|
104
|
+
themeMode,
|
|
105
|
+
isDark,
|
|
106
|
+
toggleTheme,
|
|
107
|
+
setTheme
|
|
108
|
+
};
|
|
47
109
|
};
|
|
48
110
|
// Annotate the CommonJS export names for ESM import in node:
|
|
49
111
|
0 && (module.exports = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/hooks/useTheme.ts"],"sourcesContent":["import { useEffect } from 'react';\n\n/**\n * Hook para
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/useTheme.ts"],"sourcesContent":["import { useEffect, useState, useCallback, useRef } from 'react';\n\ntype ThemeMode = 'light' | 'dark' | 'system';\n\n/**\n * Hook para gerenciar temas com suporte a alternância manual e detecção automática do sistema\n * Este hook permite alternar entre temas light, dark e automático baseado nas preferências do sistema\n */\nexport const useTheme = () => {\n const [themeMode, setThemeMode] = useState<ThemeMode>('system');\n const [isDark, setIsDark] = useState(false);\n\n // Ref para manter o estado atual do tema de forma síncrona\n const themeModeRef = useRef<ThemeMode>('system');\n\n // Função para aplicar o tema baseado no modo selecionado\n const applyTheme = useCallback((mode: ThemeMode) => {\n const htmlElement = document.documentElement;\n const originalTheme = htmlElement.getAttribute('data-original-theme');\n\n if (mode === 'dark') {\n htmlElement.setAttribute('data-theme', 'dark');\n setIsDark(true);\n } else if (mode === 'light') {\n if (originalTheme) {\n htmlElement.setAttribute('data-theme', originalTheme);\n }\n setIsDark(false);\n } else if (mode === 'system') {\n const isSystemDark = window.matchMedia(\n '(prefers-color-scheme: dark)'\n ).matches;\n if (isSystemDark) {\n htmlElement.setAttribute('data-theme', 'dark');\n setIsDark(true);\n } else if (originalTheme) {\n htmlElement.setAttribute('data-theme', originalTheme);\n setIsDark(false);\n }\n }\n }, []);\n\n // Função para alternar entre os temas\n const toggleTheme = useCallback(() => {\n let newMode: ThemeMode;\n if (themeMode === 'light') {\n newMode = 'dark';\n } else if (themeMode === 'dark') {\n newMode = 'light';\n } else {\n // Se estiver em 'system', vai para 'dark'\n newMode = 'dark';\n }\n setThemeMode(newMode);\n themeModeRef.current = newMode;\n applyTheme(newMode);\n localStorage.setItem('theme-mode', newMode);\n }, [themeMode, applyTheme]);\n\n // Função para definir um tema específico\n const setTheme = useCallback(\n (mode: ThemeMode) => {\n setThemeMode(mode);\n themeModeRef.current = mode;\n applyTheme(mode);\n localStorage.setItem('theme-mode', mode);\n },\n [applyTheme]\n );\n\n useEffect(() => {\n const htmlElement = document.documentElement;\n\n // Salva o theme original do white label na primeira execução\n const currentTheme = htmlElement.getAttribute('data-theme');\n if (currentTheme && !htmlElement.getAttribute('data-original-theme')) {\n htmlElement.setAttribute('data-original-theme', currentTheme);\n }\n\n // Carrega o tema salvo no localStorage ou usa 'system' como padrão\n const savedThemeMode = localStorage.getItem('theme-mode') as ThemeMode;\n const initialMode = savedThemeMode || 'system';\n\n // Se não há tema salvo, persiste 'system' como padrão\n if (!savedThemeMode) {\n localStorage.setItem('theme-mode', 'system');\n }\n\n setThemeMode(initialMode);\n themeModeRef.current = initialMode;\n applyTheme(initialMode);\n\n // Listener para mudanças nas preferências do sistema (apenas quando mode é 'system')\n const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');\n const handleSystemThemeChange = () => {\n // Usa o ref para ter acesso ao estado atual de forma síncrona\n if (themeModeRef.current === 'system') {\n applyTheme('system');\n }\n };\n\n mediaQuery.addEventListener('change', handleSystemThemeChange);\n\n return () => {\n mediaQuery.removeEventListener('change', handleSystemThemeChange);\n };\n }, [applyTheme]);\n\n return {\n themeMode,\n isDark,\n toggleTheme,\n setTheme,\n };\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyD;AAQlD,IAAM,WAAW,MAAM;AAC5B,QAAM,CAAC,WAAW,YAAY,QAAI,uBAAoB,QAAQ;AAC9D,QAAM,CAAC,QAAQ,SAAS,QAAI,uBAAS,KAAK;AAG1C,QAAM,mBAAe,qBAAkB,QAAQ;AAG/C,QAAM,iBAAa,0BAAY,CAAC,SAAoB;AAClD,UAAM,cAAc,SAAS;AAC7B,UAAM,gBAAgB,YAAY,aAAa,qBAAqB;AAEpE,QAAI,SAAS,QAAQ;AACnB,kBAAY,aAAa,cAAc,MAAM;AAC7C,gBAAU,IAAI;AAAA,IAChB,WAAW,SAAS,SAAS;AAC3B,UAAI,eAAe;AACjB,oBAAY,aAAa,cAAc,aAAa;AAAA,MACtD;AACA,gBAAU,KAAK;AAAA,IACjB,WAAW,SAAS,UAAU;AAC5B,YAAM,eAAe,OAAO;AAAA,QAC1B;AAAA,MACF,EAAE;AACF,UAAI,cAAc;AAChB,oBAAY,aAAa,cAAc,MAAM;AAC7C,kBAAU,IAAI;AAAA,MAChB,WAAW,eAAe;AACxB,oBAAY,aAAa,cAAc,aAAa;AACpD,kBAAU,KAAK;AAAA,MACjB;AAAA,IACF;AAAA,EACF,GAAG,CAAC,CAAC;AAGL,QAAM,kBAAc,0BAAY,MAAM;AACpC,QAAI;AACJ,QAAI,cAAc,SAAS;AACzB,gBAAU;AAAA,IACZ,WAAW,cAAc,QAAQ;AAC/B,gBAAU;AAAA,IACZ,OAAO;AAEL,gBAAU;AAAA,IACZ;AACA,iBAAa,OAAO;AACpB,iBAAa,UAAU;AACvB,eAAW,OAAO;AAClB,iBAAa,QAAQ,cAAc,OAAO;AAAA,EAC5C,GAAG,CAAC,WAAW,UAAU,CAAC;AAG1B,QAAM,eAAW;AAAA,IACf,CAAC,SAAoB;AACnB,mBAAa,IAAI;AACjB,mBAAa,UAAU;AACvB,iBAAW,IAAI;AACf,mBAAa,QAAQ,cAAc,IAAI;AAAA,IACzC;AAAA,IACA,CAAC,UAAU;AAAA,EACb;AAEA,8BAAU,MAAM;AACd,UAAM,cAAc,SAAS;AAG7B,UAAM,eAAe,YAAY,aAAa,YAAY;AAC1D,QAAI,gBAAgB,CAAC,YAAY,aAAa,qBAAqB,GAAG;AACpE,kBAAY,aAAa,uBAAuB,YAAY;AAAA,IAC9D;AAGA,UAAM,iBAAiB,aAAa,QAAQ,YAAY;AACxD,UAAM,cAAc,kBAAkB;AAGtC,QAAI,CAAC,gBAAgB;AACnB,mBAAa,QAAQ,cAAc,QAAQ;AAAA,IAC7C;AAEA,iBAAa,WAAW;AACxB,iBAAa,UAAU;AACvB,eAAW,WAAW;AAGtB,UAAM,aAAa,OAAO,WAAW,8BAA8B;AACnE,UAAM,0BAA0B,MAAM;AAEpC,UAAI,aAAa,YAAY,UAAU;AACrC,mBAAW,QAAQ;AAAA,MACrB;AAAA,IACF;AAEA,eAAW,iBAAiB,UAAU,uBAAuB;AAE7D,WAAO,MAAM;AACX,iBAAW,oBAAoB,UAAU,uBAAuB;AAAA,IAClE;AAAA,EACF,GAAG,CAAC,UAAU,CAAC;AAEf,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
|
|
@@ -1,25 +1,87 @@
|
|
|
1
1
|
// src/hooks/useTheme.ts
|
|
2
|
-
import { useEffect } from "react";
|
|
2
|
+
import { useEffect, useState, useCallback, useRef } from "react";
|
|
3
3
|
var useTheme = () => {
|
|
4
|
-
|
|
4
|
+
const [themeMode, setThemeMode] = useState("system");
|
|
5
|
+
const [isDark, setIsDark] = useState(false);
|
|
6
|
+
const themeModeRef = useRef("system");
|
|
7
|
+
const applyTheme = useCallback((mode) => {
|
|
5
8
|
const htmlElement = document.documentElement;
|
|
6
|
-
const
|
|
7
|
-
if (
|
|
8
|
-
htmlElement.setAttribute("data-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
const originalTheme = htmlElement.getAttribute("data-original-theme");
|
|
10
|
+
if (mode === "dark") {
|
|
11
|
+
htmlElement.setAttribute("data-theme", "dark");
|
|
12
|
+
setIsDark(true);
|
|
13
|
+
} else if (mode === "light") {
|
|
14
|
+
if (originalTheme) {
|
|
15
|
+
htmlElement.setAttribute("data-theme", originalTheme);
|
|
16
|
+
}
|
|
17
|
+
setIsDark(false);
|
|
18
|
+
} else if (mode === "system") {
|
|
19
|
+
const isSystemDark = window.matchMedia(
|
|
12
20
|
"(prefers-color-scheme: dark)"
|
|
13
21
|
).matches;
|
|
14
|
-
|
|
15
|
-
if (isDarkMode) {
|
|
22
|
+
if (isSystemDark) {
|
|
16
23
|
htmlElement.setAttribute("data-theme", "dark");
|
|
24
|
+
setIsDark(true);
|
|
17
25
|
} else if (originalTheme) {
|
|
18
26
|
htmlElement.setAttribute("data-theme", originalTheme);
|
|
27
|
+
setIsDark(false);
|
|
19
28
|
}
|
|
20
|
-
}
|
|
21
|
-
applyTheme();
|
|
29
|
+
}
|
|
22
30
|
}, []);
|
|
31
|
+
const toggleTheme = useCallback(() => {
|
|
32
|
+
let newMode;
|
|
33
|
+
if (themeMode === "light") {
|
|
34
|
+
newMode = "dark";
|
|
35
|
+
} else if (themeMode === "dark") {
|
|
36
|
+
newMode = "light";
|
|
37
|
+
} else {
|
|
38
|
+
newMode = "dark";
|
|
39
|
+
}
|
|
40
|
+
setThemeMode(newMode);
|
|
41
|
+
themeModeRef.current = newMode;
|
|
42
|
+
applyTheme(newMode);
|
|
43
|
+
localStorage.setItem("theme-mode", newMode);
|
|
44
|
+
}, [themeMode, applyTheme]);
|
|
45
|
+
const setTheme = useCallback(
|
|
46
|
+
(mode) => {
|
|
47
|
+
setThemeMode(mode);
|
|
48
|
+
themeModeRef.current = mode;
|
|
49
|
+
applyTheme(mode);
|
|
50
|
+
localStorage.setItem("theme-mode", mode);
|
|
51
|
+
},
|
|
52
|
+
[applyTheme]
|
|
53
|
+
);
|
|
54
|
+
useEffect(() => {
|
|
55
|
+
const htmlElement = document.documentElement;
|
|
56
|
+
const currentTheme = htmlElement.getAttribute("data-theme");
|
|
57
|
+
if (currentTheme && !htmlElement.getAttribute("data-original-theme")) {
|
|
58
|
+
htmlElement.setAttribute("data-original-theme", currentTheme);
|
|
59
|
+
}
|
|
60
|
+
const savedThemeMode = localStorage.getItem("theme-mode");
|
|
61
|
+
const initialMode = savedThemeMode || "system";
|
|
62
|
+
if (!savedThemeMode) {
|
|
63
|
+
localStorage.setItem("theme-mode", "system");
|
|
64
|
+
}
|
|
65
|
+
setThemeMode(initialMode);
|
|
66
|
+
themeModeRef.current = initialMode;
|
|
67
|
+
applyTheme(initialMode);
|
|
68
|
+
const mediaQuery = window.matchMedia("(prefers-color-scheme: dark)");
|
|
69
|
+
const handleSystemThemeChange = () => {
|
|
70
|
+
if (themeModeRef.current === "system") {
|
|
71
|
+
applyTheme("system");
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
mediaQuery.addEventListener("change", handleSystemThemeChange);
|
|
75
|
+
return () => {
|
|
76
|
+
mediaQuery.removeEventListener("change", handleSystemThemeChange);
|
|
77
|
+
};
|
|
78
|
+
}, [applyTheme]);
|
|
79
|
+
return {
|
|
80
|
+
themeMode,
|
|
81
|
+
isDark,
|
|
82
|
+
toggleTheme,
|
|
83
|
+
setTheme
|
|
84
|
+
};
|
|
23
85
|
};
|
|
24
86
|
export {
|
|
25
87
|
useTheme
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/hooks/useTheme.ts"],"sourcesContent":["import { useEffect } from 'react';\n\n/**\n * Hook para
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/useTheme.ts"],"sourcesContent":["import { useEffect, useState, useCallback, useRef } from 'react';\n\ntype ThemeMode = 'light' | 'dark' | 'system';\n\n/**\n * Hook para gerenciar temas com suporte a alternância manual e detecção automática do sistema\n * Este hook permite alternar entre temas light, dark e automático baseado nas preferências do sistema\n */\nexport const useTheme = () => {\n const [themeMode, setThemeMode] = useState<ThemeMode>('system');\n const [isDark, setIsDark] = useState(false);\n\n // Ref para manter o estado atual do tema de forma síncrona\n const themeModeRef = useRef<ThemeMode>('system');\n\n // Função para aplicar o tema baseado no modo selecionado\n const applyTheme = useCallback((mode: ThemeMode) => {\n const htmlElement = document.documentElement;\n const originalTheme = htmlElement.getAttribute('data-original-theme');\n\n if (mode === 'dark') {\n htmlElement.setAttribute('data-theme', 'dark');\n setIsDark(true);\n } else if (mode === 'light') {\n if (originalTheme) {\n htmlElement.setAttribute('data-theme', originalTheme);\n }\n setIsDark(false);\n } else if (mode === 'system') {\n const isSystemDark = window.matchMedia(\n '(prefers-color-scheme: dark)'\n ).matches;\n if (isSystemDark) {\n htmlElement.setAttribute('data-theme', 'dark');\n setIsDark(true);\n } else if (originalTheme) {\n htmlElement.setAttribute('data-theme', originalTheme);\n setIsDark(false);\n }\n }\n }, []);\n\n // Função para alternar entre os temas\n const toggleTheme = useCallback(() => {\n let newMode: ThemeMode;\n if (themeMode === 'light') {\n newMode = 'dark';\n } else if (themeMode === 'dark') {\n newMode = 'light';\n } else {\n // Se estiver em 'system', vai para 'dark'\n newMode = 'dark';\n }\n setThemeMode(newMode);\n themeModeRef.current = newMode;\n applyTheme(newMode);\n localStorage.setItem('theme-mode', newMode);\n }, [themeMode, applyTheme]);\n\n // Função para definir um tema específico\n const setTheme = useCallback(\n (mode: ThemeMode) => {\n setThemeMode(mode);\n themeModeRef.current = mode;\n applyTheme(mode);\n localStorage.setItem('theme-mode', mode);\n },\n [applyTheme]\n );\n\n useEffect(() => {\n const htmlElement = document.documentElement;\n\n // Salva o theme original do white label na primeira execução\n const currentTheme = htmlElement.getAttribute('data-theme');\n if (currentTheme && !htmlElement.getAttribute('data-original-theme')) {\n htmlElement.setAttribute('data-original-theme', currentTheme);\n }\n\n // Carrega o tema salvo no localStorage ou usa 'system' como padrão\n const savedThemeMode = localStorage.getItem('theme-mode') as ThemeMode;\n const initialMode = savedThemeMode || 'system';\n\n // Se não há tema salvo, persiste 'system' como padrão\n if (!savedThemeMode) {\n localStorage.setItem('theme-mode', 'system');\n }\n\n setThemeMode(initialMode);\n themeModeRef.current = initialMode;\n applyTheme(initialMode);\n\n // Listener para mudanças nas preferências do sistema (apenas quando mode é 'system')\n const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');\n const handleSystemThemeChange = () => {\n // Usa o ref para ter acesso ao estado atual de forma síncrona\n if (themeModeRef.current === 'system') {\n applyTheme('system');\n }\n };\n\n mediaQuery.addEventListener('change', handleSystemThemeChange);\n\n return () => {\n mediaQuery.removeEventListener('change', handleSystemThemeChange);\n };\n }, [applyTheme]);\n\n return {\n themeMode,\n isDark,\n toggleTheme,\n setTheme,\n };\n};\n"],"mappings":";AAAA,SAAS,WAAW,UAAU,aAAa,cAAc;AAQlD,IAAM,WAAW,MAAM;AAC5B,QAAM,CAAC,WAAW,YAAY,IAAI,SAAoB,QAAQ;AAC9D,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,KAAK;AAG1C,QAAM,eAAe,OAAkB,QAAQ;AAG/C,QAAM,aAAa,YAAY,CAAC,SAAoB;AAClD,UAAM,cAAc,SAAS;AAC7B,UAAM,gBAAgB,YAAY,aAAa,qBAAqB;AAEpE,QAAI,SAAS,QAAQ;AACnB,kBAAY,aAAa,cAAc,MAAM;AAC7C,gBAAU,IAAI;AAAA,IAChB,WAAW,SAAS,SAAS;AAC3B,UAAI,eAAe;AACjB,oBAAY,aAAa,cAAc,aAAa;AAAA,MACtD;AACA,gBAAU,KAAK;AAAA,IACjB,WAAW,SAAS,UAAU;AAC5B,YAAM,eAAe,OAAO;AAAA,QAC1B;AAAA,MACF,EAAE;AACF,UAAI,cAAc;AAChB,oBAAY,aAAa,cAAc,MAAM;AAC7C,kBAAU,IAAI;AAAA,MAChB,WAAW,eAAe;AACxB,oBAAY,aAAa,cAAc,aAAa;AACpD,kBAAU,KAAK;AAAA,MACjB;AAAA,IACF;AAAA,EACF,GAAG,CAAC,CAAC;AAGL,QAAM,cAAc,YAAY,MAAM;AACpC,QAAI;AACJ,QAAI,cAAc,SAAS;AACzB,gBAAU;AAAA,IACZ,WAAW,cAAc,QAAQ;AAC/B,gBAAU;AAAA,IACZ,OAAO;AAEL,gBAAU;AAAA,IACZ;AACA,iBAAa,OAAO;AACpB,iBAAa,UAAU;AACvB,eAAW,OAAO;AAClB,iBAAa,QAAQ,cAAc,OAAO;AAAA,EAC5C,GAAG,CAAC,WAAW,UAAU,CAAC;AAG1B,QAAM,WAAW;AAAA,IACf,CAAC,SAAoB;AACnB,mBAAa,IAAI;AACjB,mBAAa,UAAU;AACvB,iBAAW,IAAI;AACf,mBAAa,QAAQ,cAAc,IAAI;AAAA,IACzC;AAAA,IACA,CAAC,UAAU;AAAA,EACb;AAEA,YAAU,MAAM;AACd,UAAM,cAAc,SAAS;AAG7B,UAAM,eAAe,YAAY,aAAa,YAAY;AAC1D,QAAI,gBAAgB,CAAC,YAAY,aAAa,qBAAqB,GAAG;AACpE,kBAAY,aAAa,uBAAuB,YAAY;AAAA,IAC9D;AAGA,UAAM,iBAAiB,aAAa,QAAQ,YAAY;AACxD,UAAM,cAAc,kBAAkB;AAGtC,QAAI,CAAC,gBAAgB;AACnB,mBAAa,QAAQ,cAAc,QAAQ;AAAA,IAC7C;AAEA,iBAAa,WAAW;AACxB,iBAAa,UAAU;AACvB,eAAW,WAAW;AAGtB,UAAM,aAAa,OAAO,WAAW,8BAA8B;AACnE,UAAM,0BAA0B,MAAM;AAEpC,UAAI,aAAa,YAAY,UAAU;AACrC,mBAAW,QAAQ;AAAA,MACrB;AAAA,IACF;AAEA,eAAW,iBAAiB,UAAU,uBAAuB;AAE7D,WAAO,MAAM;AACX,iBAAW,oBAAoB,UAAU,uBAAuB;AAAA,IAClE;AAAA,EACF,GAAG,CAAC,UAAU,CAAC;AAEf,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
|
package/dist/index.css
CHANGED
|
@@ -2767,6 +2767,9 @@
|
|
|
2767
2767
|
.py-1 {
|
|
2768
2768
|
padding-block: calc(var(--spacing) * 1);
|
|
2769
2769
|
}
|
|
2770
|
+
.py-1\.5 {
|
|
2771
|
+
padding-block: calc(var(--spacing) * 1.5);
|
|
2772
|
+
}
|
|
2770
2773
|
.py-2 {
|
|
2771
2774
|
padding-block: calc(var(--spacing) * 2);
|
|
2772
2775
|
}
|
|
@@ -4916,6 +4919,13 @@
|
|
|
4916
4919
|
}
|
|
4917
4920
|
}
|
|
4918
4921
|
}
|
|
4922
|
+
.hover\:bg-gray-300 {
|
|
4923
|
+
&:hover {
|
|
4924
|
+
@media (hover: hover) {
|
|
4925
|
+
background-color: var(--color-gray-300);
|
|
4926
|
+
}
|
|
4927
|
+
}
|
|
4928
|
+
}
|
|
4919
4929
|
.hover\:bg-green-600 {
|
|
4920
4930
|
&:hover {
|
|
4921
4931
|
@media (hover: hover) {
|
|
@@ -8117,6 +8127,11 @@
|
|
|
8117
8127
|
--tw-ring-color: var(--color-indicator-info);
|
|
8118
8128
|
}
|
|
8119
8129
|
}
|
|
8130
|
+
.focus-visible\:ring-primary-500 {
|
|
8131
|
+
&:focus-visible {
|
|
8132
|
+
--tw-ring-color: var(--color-primary-500);
|
|
8133
|
+
}
|
|
8134
|
+
}
|
|
8120
8135
|
.focus-visible\:ring-primary-600 {
|
|
8121
8136
|
&:focus-visible {
|
|
8122
8137
|
--tw-ring-color: var(--color-primary-600);
|
|
@@ -18253,6 +18268,30 @@
|
|
|
18253
18268
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
18254
18269
|
}
|
|
18255
18270
|
}
|
|
18271
|
+
.dark\:border-gray-600 {
|
|
18272
|
+
@media (prefers-color-scheme: dark) {
|
|
18273
|
+
border-color: var(--color-gray-600);
|
|
18274
|
+
}
|
|
18275
|
+
}
|
|
18276
|
+
.dark\:bg-gray-700 {
|
|
18277
|
+
@media (prefers-color-scheme: dark) {
|
|
18278
|
+
background-color: var(--color-gray-700);
|
|
18279
|
+
}
|
|
18280
|
+
}
|
|
18281
|
+
.dark\:text-gray-300 {
|
|
18282
|
+
@media (prefers-color-scheme: dark) {
|
|
18283
|
+
color: var(--color-gray-300);
|
|
18284
|
+
}
|
|
18285
|
+
}
|
|
18286
|
+
.dark\:hover\:bg-gray-600 {
|
|
18287
|
+
@media (prefers-color-scheme: dark) {
|
|
18288
|
+
&:hover {
|
|
18289
|
+
@media (hover: hover) {
|
|
18290
|
+
background-color: var(--color-gray-600);
|
|
18291
|
+
}
|
|
18292
|
+
}
|
|
18293
|
+
}
|
|
18294
|
+
}
|
|
18256
18295
|
.\[\&_tr\:first-child\]\:border-0 {
|
|
18257
18296
|
& tr:first-child {
|
|
18258
18297
|
border-style: var(--tw-border-style);
|