@oondemand/oon-core-front 0.7.34 → 0.7.35
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/{chunk-ALZCHGGI.js → chunk-H4RCPPT3.js} +2 -2
- package/dist/chunk-H4RCPPT3.js.map +1 -0
- package/dist/{chunk-32GGDIWB.js → chunk-HS3Q4SCM.js} +2 -2
- package/dist/{chunk-GIDNQRK6.js → chunk-INIAEP7H.js} +2 -2
- package/dist/{chunk-VC6NTMZS.js → chunk-O4M3YJRY.js} +23 -20
- package/dist/chunk-O4M3YJRY.js.map +1 -0
- package/dist/{chunk-WZD4ACMX.js → chunk-PAKV3SCB.js} +2 -2
- package/dist/{chunk-B4QFRGOK.js → chunk-X6QNHP3Y.js} +24 -24
- package/dist/chunk-X6QNHP3Y.js.map +1 -0
- package/dist/hooks.js +1 -1
- package/dist/index.js +6 -6
- package/dist/routing.js +2 -2
- package/dist/testing.js +5 -5
- package/dist/theme.js +1 -1
- package/dist/ui.js +3 -3
- package/package.json +1 -1
- package/dist/chunk-ALZCHGGI.js.map +0 -1
- package/dist/chunk-B4QFRGOK.js.map +0 -1
- package/dist/chunk-VC6NTMZS.js.map +0 -1
- /package/dist/{chunk-32GGDIWB.js.map → chunk-HS3Q4SCM.js.map} +0 -0
- /package/dist/{chunk-GIDNQRK6.js.map → chunk-INIAEP7H.js.map} +0 -0
- /package/dist/{chunk-WZD4ACMX.js.map → chunk-PAKV3SCB.js.map} +0 -0
|
@@ -8,7 +8,7 @@ function LoadingScreen({
|
|
|
8
8
|
}) {
|
|
9
9
|
return /* @__PURE__ */ jsxs(Flex, { direction: "column", align: "center", justify: "center", minH: "60vh", gap: 4, children: [
|
|
10
10
|
/* @__PURE__ */ jsx(Spinner, { size: "lg" }),
|
|
11
|
-
message ? /* @__PURE__ */ jsx(Text, { color: "
|
|
11
|
+
message ? /* @__PURE__ */ jsx(Text, { color: "text.muted", fontSize: "sm", textAlign: "center", children: message }) : null,
|
|
12
12
|
actionLabel && onAction ? /* @__PURE__ */ jsx(Button, { size: "sm", variant: "outline", onClick: onAction, children: actionLabel }) : null
|
|
13
13
|
] });
|
|
14
14
|
}
|
|
@@ -16,4 +16,4 @@ function LoadingScreen({
|
|
|
16
16
|
export {
|
|
17
17
|
LoadingScreen
|
|
18
18
|
};
|
|
19
|
-
//# sourceMappingURL=chunk-
|
|
19
|
+
//# sourceMappingURL=chunk-H4RCPPT3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/shell/LoadingScreen.tsx"],"sourcesContent":["import { Button, Flex, Spinner, Text } from \"@chakra-ui/react\";\n\ninterface LoadingScreenProps {\n message?: string;\n actionLabel?: string;\n onAction?: () => void;\n}\n\n/** Tela de carregamento/estado neutro reutilizada por guards e Suspense. */\nexport function LoadingScreen({\n message,\n actionLabel,\n onAction,\n}: LoadingScreenProps) {\n return (\n <Flex direction=\"column\" align=\"center\" justify=\"center\" minH=\"60vh\" gap={4}>\n <Spinner size=\"lg\" />\n {message ? (\n <Text color=\"text.muted\" fontSize=\"sm\" textAlign=\"center\">\n {message}\n </Text>\n ) : null}\n {actionLabel && onAction ? (\n <Button size=\"sm\" variant=\"outline\" onClick={onAction}>\n {actionLabel}\n </Button>\n ) : null}\n </Flex>\n );\n}\n"],"mappings":";AAAA,SAAS,QAAQ,MAAM,SAAS,YAAY;AAexC,SACE,KADF;AANG,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AACF,GAAuB;AACrB,SACE,qBAAC,QAAK,WAAU,UAAS,OAAM,UAAS,SAAQ,UAAS,MAAK,QAAO,KAAK,GACxE;AAAA,wBAAC,WAAQ,MAAK,MAAK;AAAA,IAClB,UACC,oBAAC,QAAK,OAAM,cAAa,UAAS,MAAK,WAAU,UAC9C,mBACH,IACE;AAAA,IACH,eAAe,WACd,oBAAC,UAAO,MAAK,MAAK,SAAQ,WAAU,SAAS,UAC1C,uBACH,IACE;AAAA,KACN;AAEJ;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
LoadingScreen
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-H4RCPPT3.js";
|
|
4
4
|
|
|
5
5
|
// src/routing.tsx
|
|
6
6
|
import { lazy, Suspense } from "react";
|
|
@@ -68,4 +68,4 @@ export {
|
|
|
68
68
|
routeElement,
|
|
69
69
|
navigation
|
|
70
70
|
};
|
|
71
|
-
//# sourceMappingURL=chunk-
|
|
71
|
+
//# sourceMappingURL=chunk-HS3Q4SCM.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
LoadingScreen
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-H4RCPPT3.js";
|
|
4
4
|
import {
|
|
5
5
|
useModelSchema,
|
|
6
6
|
useOonApi,
|
|
@@ -5744,4 +5744,4 @@ export {
|
|
|
5744
5744
|
CoreOrganizationSwitcher,
|
|
5745
5745
|
coreInitials
|
|
5746
5746
|
};
|
|
5747
|
-
//# sourceMappingURL=chunk-
|
|
5747
|
+
//# sourceMappingURL=chunk-INIAEP7H.js.map
|
|
@@ -62,35 +62,38 @@ var oonThemeConfig = defineConfig({
|
|
|
62
62
|
}
|
|
63
63
|
},
|
|
64
64
|
semanticTokens: {
|
|
65
|
+
// Cada token tem o valor do tema claro (base) e do escuro (_dark, classe `dark` no <html>).
|
|
66
|
+
// O shell usa só estes tokens, para o menu e o cabeçalho acompanharem o tema escolhido pelo App.
|
|
65
67
|
colors: {
|
|
66
68
|
brand: {
|
|
67
|
-
solid: { value: "{colors.brand.500}" },
|
|
68
|
-
contrast: { value: "white" },
|
|
69
|
-
fg: { value: "{colors.brand.700}" },
|
|
70
|
-
muted: { value: "{colors.brand.50}" },
|
|
71
|
-
subtle: { value: "{colors.brand.75}" },
|
|
72
|
-
emphasized: { value: "{colors.brand.600}" },
|
|
73
|
-
focusRing: { value: "{colors.brand.500}" }
|
|
69
|
+
solid: { value: { base: "{colors.brand.500}", _dark: "{colors.brand.300}" } },
|
|
70
|
+
contrast: { value: { base: "white", _dark: "{colors.brand.900}" } },
|
|
71
|
+
fg: { value: { base: "{colors.brand.700}", _dark: "{colors.brand.200}" } },
|
|
72
|
+
muted: { value: { base: "{colors.brand.50}", _dark: "{colors.brand.850}" } },
|
|
73
|
+
subtle: { value: { base: "{colors.brand.75}", _dark: "{colors.brand.800}" } },
|
|
74
|
+
emphasized: { value: { base: "{colors.brand.600}", _dark: "{colors.brand.200}" } },
|
|
75
|
+
focusRing: { value: { base: "{colors.brand.500}", _dark: "{colors.brand.300}" } }
|
|
74
76
|
},
|
|
75
77
|
surface: {
|
|
76
|
-
canvas: { value: "{colors.gray.50}" },
|
|
77
|
-
panel: { value: "white" },
|
|
78
|
-
elevated: { value: "white" }
|
|
78
|
+
canvas: { value: { base: "{colors.gray.50}", _dark: "{colors.gray.950}" } },
|
|
79
|
+
panel: { value: { base: "white", _dark: "{colors.gray.900}" } },
|
|
80
|
+
elevated: { value: { base: "white", _dark: "{colors.gray.800}" } },
|
|
81
|
+
hover: { value: { base: "#F8F9FA", _dark: "{colors.gray.800}" } }
|
|
79
82
|
},
|
|
80
83
|
text: {
|
|
81
|
-
primary: { value: "{colors.gray.800}" },
|
|
82
|
-
muted: { value: "{colors.gray.600}" },
|
|
83
|
-
inverse: { value: "white" }
|
|
84
|
+
primary: { value: { base: "{colors.gray.800}", _dark: "{colors.gray.100}" } },
|
|
85
|
+
muted: { value: { base: "{colors.gray.600}", _dark: "{colors.gray.400}" } },
|
|
86
|
+
inverse: { value: { base: "white", _dark: "{colors.gray.900}" } }
|
|
84
87
|
},
|
|
85
88
|
border: {
|
|
86
|
-
default: { value: "{colors.gray.200}" },
|
|
87
|
-
strong: { value: "{colors.gray.300}" }
|
|
89
|
+
default: { value: { base: "{colors.gray.200}", _dark: "{colors.gray.700}" } },
|
|
90
|
+
strong: { value: { base: "{colors.gray.300}", _dark: "{colors.gray.600}" } }
|
|
88
91
|
},
|
|
89
92
|
status: {
|
|
90
|
-
success: { value: "{colors.green.600}" },
|
|
91
|
-
warning: { value: "{colors.orange.600}" },
|
|
92
|
-
danger: { value: "{colors.red.600}" },
|
|
93
|
-
info: { value: "{colors.blue.600}" }
|
|
93
|
+
success: { value: { base: "{colors.green.600}", _dark: "{colors.green.400}" } },
|
|
94
|
+
warning: { value: { base: "{colors.orange.600}", _dark: "{colors.orange.400}" } },
|
|
95
|
+
danger: { value: { base: "{colors.red.600}", _dark: "{colors.red.400}" } },
|
|
96
|
+
info: { value: { base: "{colors.blue.600}", _dark: "{colors.blue.400}" } }
|
|
94
97
|
}
|
|
95
98
|
}
|
|
96
99
|
}
|
|
@@ -184,4 +187,4 @@ export {
|
|
|
184
187
|
OonThemeProvider,
|
|
185
188
|
useOonTheme
|
|
186
189
|
};
|
|
187
|
-
//# sourceMappingURL=chunk-
|
|
190
|
+
//# sourceMappingURL=chunk-O4M3YJRY.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/config/theme.ts","../src/config/ThemeProvider.tsx"],"sourcesContent":["import { createSystem, defaultConfig, defineConfig, mergeConfigs } from \"@chakra-ui/react\";\nimport type { SystemConfig } from \"@chakra-ui/react\";\n\nexport type OonThemeDensity = \"compact\" | \"comfortable\";\nexport type OonThemeContrast = \"standard\" | \"high\";\n\nexport interface OonThemeDefinition {\n id: string;\n label?: string;\n extends?: OonThemeDefinition;\n density?: OonThemeDensity;\n contrast?: OonThemeContrast;\n /** Configuração pública do Chakra baseada em tokens, sem CSS remoto. */\n config?: Record<string, unknown>;\n}\n\nexport function createOonTheme<const T extends OonThemeDefinition>(definition: T): T {\n if (!/^[a-z][a-z0-9-]*$/.test(definition?.id || \"\")) {\n throw new Error(\"createOonTheme: id deve usar letras minúsculas, números e hífen.\");\n }\n if (definition.extends?.id === definition.id) {\n throw new Error(`createOonTheme: o tema ${definition.id} não pode estender a si mesmo.`);\n }\n return Object.freeze({ ...definition });\n}\n\n/**\n * Identidade visual padrão das Centrais Oon, consolidada a partir da Central\n * Minexco/CST: azul operacional, superfícies claras, tipografia Poppins e alta\n * densidade de informação.\n */\nexport const brandColors = {\n brand: {\n 25: { value: \"#F8FCFF\" },\n 50: { value: \"#EEF8FD\" },\n 75: { value: \"#E2F3FB\" },\n 100: { value: \"#C7E8F7\" },\n 200: { value: \"#82C8E8\" },\n 300: { value: \"#3FA6E0\" },\n 350: { value: \"#0F8DD0\" },\n 400: { value: \"#0580B9\" },\n 500: { value: \"#0474AF\" },\n 600: { value: \"#036491\" },\n 700: { value: \"#014364\" },\n 800: { value: \"#073A52\" },\n 850: { value: \"#082F3F\" },\n 900: { value: \"#07262E\" },\n },\n} as const;\n\nconst oonThemeConfig = defineConfig({\n globalCss: {\n \"html, body, #root\": {\n minHeight: \"100%\",\n },\n body: {\n margin: 0,\n bg: \"#F8F9FA\",\n color: \"#24323A\",\n fontFamily: \"Poppins, Inter, system-ui, sans-serif\",\n fontSize: \"14px\",\n },\n \"button, input, select, textarea\": {\n fontFamily: \"inherit\",\n },\n \"::selection\": {\n bg: \"#C7E8F7\",\n color: \"#07262E\",\n },\n },\n theme: {\n tokens: {\n colors: brandColors,\n fonts: {\n body: { value: \"Poppins, Inter, system-ui, sans-serif\" },\n heading: { value: \"Poppins, Inter, system-ui, sans-serif\" },\n },\n radii: {\n oon: { value: \"10px\" },\n },\n shadows: {\n oon: { value: \"0 8px 24px rgba(7, 38, 46, 0.08)\" },\n },\n },\n semanticTokens: {\n // Cada token tem o valor do tema claro (base) e do escuro (_dark, classe `dark` no <html>).\n // O shell usa só estes tokens, para o menu e o cabeçalho acompanharem o tema escolhido pelo App.\n colors: {\n brand: {\n solid: { value: { base: \"{colors.brand.500}\", _dark: \"{colors.brand.300}\" } },\n contrast: { value: { base: \"white\", _dark: \"{colors.brand.900}\" } },\n fg: { value: { base: \"{colors.brand.700}\", _dark: \"{colors.brand.200}\" } },\n muted: { value: { base: \"{colors.brand.50}\", _dark: \"{colors.brand.850}\" } },\n subtle: { value: { base: \"{colors.brand.75}\", _dark: \"{colors.brand.800}\" } },\n emphasized: { value: { base: \"{colors.brand.600}\", _dark: \"{colors.brand.200}\" } },\n focusRing: { value: { base: \"{colors.brand.500}\", _dark: \"{colors.brand.300}\" } },\n },\n surface: {\n canvas: { value: { base: \"{colors.gray.50}\", _dark: \"{colors.gray.950}\" } },\n panel: { value: { base: \"white\", _dark: \"{colors.gray.900}\" } },\n elevated: { value: { base: \"white\", _dark: \"{colors.gray.800}\" } },\n hover: { value: { base: \"#F8F9FA\", _dark: \"{colors.gray.800}\" } },\n },\n text: {\n primary: { value: { base: \"{colors.gray.800}\", _dark: \"{colors.gray.100}\" } },\n muted: { value: { base: \"{colors.gray.600}\", _dark: \"{colors.gray.400}\" } },\n inverse: { value: { base: \"white\", _dark: \"{colors.gray.900}\" } },\n },\n border: {\n default: { value: { base: \"{colors.gray.200}\", _dark: \"{colors.gray.700}\" } },\n strong: { value: { base: \"{colors.gray.300}\", _dark: \"{colors.gray.600}\" } },\n },\n status: {\n success: { value: { base: \"{colors.green.600}\", _dark: \"{colors.green.400}\" } },\n warning: { value: { base: \"{colors.orange.600}\", _dark: \"{colors.orange.400}\" } },\n danger: { value: { base: \"{colors.red.600}\", _dark: \"{colors.red.400}\" } },\n info: { value: { base: \"{colors.blue.600}\", _dark: \"{colors.blue.400}\" } },\n },\n },\n },\n },\n});\n\nexport const oonDefaultTheme = createOonTheme({\n id: \"oon-default\",\n label: \"Oon\",\n density: \"comfortable\",\n contrast: \"standard\",\n config: oonThemeConfig as unknown as Record<string, unknown>,\n});\n\nfunction isThemeDefinition(value: unknown): value is OonThemeDefinition {\n return Boolean(value) && typeof value === \"object\" && typeof (value as { id?: unknown }).id === \"string\";\n}\n\nfunction densityConfig(density?: OonThemeDensity): SystemConfig {\n if (density !== \"compact\") return defineConfig({});\n return defineConfig({ globalCss: { body: { fontSize: \"13px\" }, \"button, input, select, textarea\": { minH: \"32px\" } } });\n}\n\nfunction contrastConfig(contrast?: OonThemeContrast): SystemConfig {\n if (contrast !== \"high\") return defineConfig({});\n return defineConfig({\n theme: {\n semanticTokens: {\n colors: {\n text: { primary: { value: \"{colors.black}\" }, muted: { value: \"{colors.gray.800}\" } },\n border: { default: { value: \"{colors.gray.500}\" }, strong: { value: \"{colors.black}\" } },\n },\n },\n },\n });\n}\n\nfunction definitionConfig(theme: OonThemeDefinition): SystemConfig {\n const inherited = theme.extends ? definitionConfig(theme.extends) : defineConfig({});\n const own = defineConfig((theme.config ?? {}) as SystemConfig);\n return mergeConfigs(inherited, own, densityConfig(theme.density), contrastConfig(theme.contrast));\n}\n\n/**\n * Constrói o system do Chakra. O padrão Minexco é aplicado primeiro e pode ser\n * sobrescrito por uma identidade específica da Central sem reescrever o shell.\n */\nexport function createOonSystem(themeOverride?: OonThemeDefinition | Record<string, unknown>) {\n const base = mergeConfigs(defaultConfig, oonThemeConfig);\n const config = themeOverride\n ? mergeConfigs(base, isThemeDefinition(themeOverride)\n ? definitionConfig(themeOverride)\n : defineConfig(themeOverride as SystemConfig))\n : base;\n return createSystem(config);\n}\n\nexport const oonSystem = createOonSystem();\n","import { ChakraProvider } from \"@chakra-ui/react\";\nimport { createContext, type ReactNode, useContext, useMemo, useState } from \"react\";\nimport type { OonCoreFrontConfig } from \"../types\";\nimport type { OonThemeDefinition } from \"./theme\";\nimport { createOonSystem } from \"./theme\";\n\nexport interface OonThemeContextValue {\n themes: readonly OonThemeDefinition[];\n currentThemeId?: string;\n setTheme(themeId: string): void;\n}\n\nconst OonThemeContext = createContext<OonThemeContextValue | null>(null);\n\nfunction isThemeDefinition(value: unknown): value is OonThemeDefinition {\n return Boolean(value) && typeof value === \"object\" && typeof (value as { id?: unknown }).id === \"string\";\n}\n\nexport function OonThemeProvider({ config, children }: { config: OonCoreFrontConfig; children: ReactNode }) {\n const themes = useMemo(() => {\n const items = [...(config.themes ?? [])];\n const primaryTheme = config.theme;\n if (isThemeDefinition(primaryTheme) && !items.some((item) => item.id === primaryTheme.id)) items.unshift(primaryTheme);\n return items;\n }, [config.theme, config.themes]);\n const storageKey = `oon:theme:${config.app.id}`;\n const initial = (() => {\n const stored = typeof window !== \"undefined\" ? window.localStorage.getItem(storageKey) : null;\n if (stored && themes.some((item) => item.id === stored)) return stored;\n if (config.defaultThemeId && themes.some((item) => item.id === config.defaultThemeId)) return config.defaultThemeId;\n return themes[0]?.id;\n })();\n const [currentThemeId, setCurrentThemeId] = useState<string | undefined>(initial);\n const selected = themes.find((item) => item.id === currentThemeId);\n const system = useMemo(() => createOonSystem(selected ?? config.theme), [selected, config.theme]);\n const value = useMemo<OonThemeContextValue>(() => ({\n themes,\n currentThemeId,\n setTheme(themeId) {\n if (!themes.some((item) => item.id === themeId)) throw new Error(`Tema Oon desconhecido: ${themeId}.`);\n setCurrentThemeId(themeId);\n if (typeof window !== \"undefined\") window.localStorage.setItem(storageKey, themeId);\n },\n }), [themes, currentThemeId, storageKey]);\n\n return <OonThemeContext.Provider value={value}><ChakraProvider value={system}>{children}</ChakraProvider></OonThemeContext.Provider>;\n}\n\nexport function useOonTheme(): OonThemeContextValue {\n const value = useContext(OonThemeContext);\n if (!value) throw new Error(\"useOonTheme deve ser usado dentro do OonCore.\");\n return value;\n}\n"],"mappings":"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","names":["isThemeDefinition"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CoreCollection
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-INIAEP7H.js";
|
|
4
4
|
import {
|
|
5
5
|
useOonApi
|
|
6
6
|
} from "./chunk-PQOP5CQP.js";
|
|
@@ -100,4 +100,4 @@ export {
|
|
|
100
100
|
CoreCurrency,
|
|
101
101
|
CoreAssistant
|
|
102
102
|
};
|
|
103
|
-
//# sourceMappingURL=chunk-
|
|
103
|
+
//# sourceMappingURL=chunk-PAKV3SCB.js.map
|
|
@@ -9,16 +9,16 @@ import {
|
|
|
9
9
|
MissingRenderer,
|
|
10
10
|
coreInitials,
|
|
11
11
|
resolveComponent
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-INIAEP7H.js";
|
|
13
13
|
import {
|
|
14
14
|
OON_RESERVED_ROUTES,
|
|
15
15
|
defineOonNavigation,
|
|
16
16
|
defineOonRoutes,
|
|
17
17
|
routeElement
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-HS3Q4SCM.js";
|
|
19
19
|
import {
|
|
20
20
|
LoadingScreen
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-H4RCPPT3.js";
|
|
22
22
|
import {
|
|
23
23
|
ActivationProvider,
|
|
24
24
|
ApiProvider,
|
|
@@ -33,7 +33,7 @@ import {
|
|
|
33
33
|
} from "./chunk-PQOP5CQP.js";
|
|
34
34
|
import {
|
|
35
35
|
OonThemeProvider
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-O4M3YJRY.js";
|
|
37
37
|
|
|
38
38
|
// src/security/tenantStorage.ts
|
|
39
39
|
function normalize(value2) {
|
|
@@ -715,16 +715,16 @@ function PlatformAppMenuItem({ item, appCode }) {
|
|
|
715
715
|
borderRadius: "9px",
|
|
716
716
|
fontSize: "13px",
|
|
717
717
|
fontWeight: "500",
|
|
718
|
-
color: "
|
|
718
|
+
color: "text.primary",
|
|
719
719
|
cursor: opening ? "wait" : "pointer",
|
|
720
720
|
"aria-disabled": opening,
|
|
721
721
|
pointerEvents: opening ? "none" : "auto",
|
|
722
722
|
title: item.label,
|
|
723
723
|
"aria-label": `Abrir ${item.label} em uma nova aba`,
|
|
724
724
|
onClick: () => void launch(),
|
|
725
|
-
_hover: { bg: "
|
|
725
|
+
_hover: { bg: "surface.hover", color: "brand.fg" },
|
|
726
726
|
children: [
|
|
727
|
-
opening ? /* @__PURE__ */ jsx7(Spinner, { size: "xs" }) : /* @__PURE__ */ jsx7(Box4, { w: "7px", h: "7px", borderRadius: "full", bg: "
|
|
727
|
+
opening ? /* @__PURE__ */ jsx7(Spinner, { size: "xs" }) : /* @__PURE__ */ jsx7(Box4, { w: "7px", h: "7px", borderRadius: "full", bg: "border.strong" }),
|
|
728
728
|
/* @__PURE__ */ jsx7(Text4, { display: { base: "none", lg: "block" }, lineClamp: 1, children: item.label })
|
|
729
729
|
]
|
|
730
730
|
}
|
|
@@ -752,7 +752,7 @@ function SidebarNav({ menu, registry, onNavigate, compact = false }) {
|
|
|
752
752
|
display: compact ? { base: "none", lg: "block" } : "block",
|
|
753
753
|
fontSize: "10px",
|
|
754
754
|
fontWeight: "600",
|
|
755
|
-
color: "
|
|
755
|
+
color: "text.muted",
|
|
756
756
|
textTransform: "uppercase",
|
|
757
757
|
letterSpacing: "0.08em",
|
|
758
758
|
px: 3,
|
|
@@ -775,17 +775,17 @@ function SidebarNav({ menu, registry, onNavigate, compact = false }) {
|
|
|
775
775
|
borderRadius: "9px",
|
|
776
776
|
fontSize: "14px",
|
|
777
777
|
fontWeight: isActive ? "600" : "500",
|
|
778
|
-
bg: isActive ? "brand.
|
|
779
|
-
color: isActive ? "brand.
|
|
778
|
+
bg: isActive ? "brand.muted" : "transparent",
|
|
779
|
+
color: isActive ? "brand.fg" : "text.primary",
|
|
780
780
|
borderLeftWidth: "3px",
|
|
781
|
-
borderLeftColor: isActive ? "brand.
|
|
781
|
+
borderLeftColor: isActive ? "brand.solid" : "transparent",
|
|
782
782
|
transition: "all 0.15s ease",
|
|
783
|
-
_hover: { bg: isActive ? "brand.
|
|
783
|
+
_hover: { bg: isActive ? "brand.muted" : "surface.hover", color: "brand.fg" },
|
|
784
784
|
"aria-current": isActive ? "page" : void 0,
|
|
785
785
|
children: [
|
|
786
786
|
item.icon ? /* @__PURE__ */ jsx7(Box4, { flex: "0 0 auto", children: item.icon }) : null,
|
|
787
787
|
/* @__PURE__ */ jsx7(Text4, { lineClamp: 1, children: item.label }),
|
|
788
|
-
item.badge !== void 0 ? /* @__PURE__ */ jsx7(Box4, { ml: "auto", fontSize: "xs", fontWeight: "700", color: "brand.
|
|
788
|
+
item.badge !== void 0 ? /* @__PURE__ */ jsx7(Box4, { ml: "auto", fontSize: "xs", fontWeight: "700", color: "brand.fg", children: item.badge }) : null
|
|
789
789
|
]
|
|
790
790
|
}
|
|
791
791
|
) }, item.href);
|
|
@@ -802,10 +802,10 @@ function Sidebar({ app, menu, registry }) {
|
|
|
802
802
|
display: { base: "none", lg: "block" },
|
|
803
803
|
minH: "100vh",
|
|
804
804
|
borderRightWidth: "1px",
|
|
805
|
-
borderColor: "
|
|
805
|
+
borderColor: "border.default",
|
|
806
806
|
px: { base: 2, lg: 3 },
|
|
807
807
|
py: 4,
|
|
808
|
-
bg: "
|
|
808
|
+
bg: "surface.panel",
|
|
809
809
|
position: "sticky",
|
|
810
810
|
top: 0,
|
|
811
811
|
alignSelf: "flex-start",
|
|
@@ -821,16 +821,16 @@ function Sidebar({ app, menu, registry }) {
|
|
|
821
821
|
borderRadius: "12px",
|
|
822
822
|
align: "center",
|
|
823
823
|
justify: "center",
|
|
824
|
-
bg: "brand.
|
|
825
|
-
color: "
|
|
824
|
+
bg: "brand.solid",
|
|
825
|
+
color: "brand.contrast",
|
|
826
826
|
fontWeight: "700",
|
|
827
827
|
fontSize: "lg",
|
|
828
828
|
children: "O"
|
|
829
829
|
}
|
|
830
830
|
),
|
|
831
831
|
/* @__PURE__ */ jsxs5(Box4, { minW: 0, children: [
|
|
832
|
-
/* @__PURE__ */ jsx7(Text4, { fontWeight: "700", fontSize: "sm", color: "
|
|
833
|
-
/* @__PURE__ */ jsx7(Text4, { fontSize: "10px", color: "
|
|
832
|
+
/* @__PURE__ */ jsx7(Text4, { fontWeight: "700", fontSize: "sm", color: "text.primary", lineClamp: 1, children: app.name }),
|
|
833
|
+
/* @__PURE__ */ jsx7(Text4, { fontSize: "10px", color: "text.muted", textTransform: "uppercase", letterSpacing: "0.08em", children: "Opera\xE7\xE3o digital" })
|
|
834
834
|
] })
|
|
835
835
|
] }),
|
|
836
836
|
/* @__PURE__ */ jsx7(SidebarNav, { menu, registry })
|
|
@@ -842,7 +842,7 @@ function Sidebar({ app, menu, registry }) {
|
|
|
842
842
|
// package.json
|
|
843
843
|
var package_default = {
|
|
844
844
|
name: "@oondemand/oon-core-front",
|
|
845
|
-
version: "0.7.
|
|
845
|
+
version: "0.7.35",
|
|
846
846
|
repository: {
|
|
847
847
|
type: "git",
|
|
848
848
|
url: "git+https://github.com/oondemand/oon-platform.git",
|
|
@@ -1099,7 +1099,7 @@ ${details}`, children: [
|
|
|
1099
1099
|
{
|
|
1100
1100
|
fontSize: "xs",
|
|
1101
1101
|
fontWeight: "600",
|
|
1102
|
-
color: "brand.
|
|
1102
|
+
color: "brand.solid",
|
|
1103
1103
|
textTransform: "uppercase",
|
|
1104
1104
|
letterSpacing: "0.08em",
|
|
1105
1105
|
children: "Central Oon"
|
|
@@ -1134,7 +1134,7 @@ ${details}`, children: [
|
|
|
1134
1134
|
}
|
|
1135
1135
|
) : null,
|
|
1136
1136
|
/* @__PURE__ */ jsxs6(Menu.Root, { positioning: { placement: "bottom-end" }, children: [
|
|
1137
|
-
/* @__PURE__ */ jsx8(Menu.Trigger, { asChild: true, children: /* @__PURE__ */ jsx8(Button3, { size: "sm", variant: "ghost", borderRadius: "full", px: 1, "aria-label": "Abrir menu do usu\xE1rio", children: avatar ? /* @__PURE__ */ jsx8(Image2, { src: avatar, alt: "", boxSize: "32px", borderRadius: "full", objectFit: "cover" }) : /* @__PURE__ */ jsx8(Flex4, { boxSize: "32px", borderRadius: "full", bg: "brand.
|
|
1137
|
+
/* @__PURE__ */ jsx8(Menu.Trigger, { asChild: true, children: /* @__PURE__ */ jsx8(Button3, { size: "sm", variant: "ghost", borderRadius: "full", px: 1, "aria-label": "Abrir menu do usu\xE1rio", children: avatar ? /* @__PURE__ */ jsx8(Image2, { src: avatar, alt: "", boxSize: "32px", borderRadius: "full", objectFit: "cover" }) : /* @__PURE__ */ jsx8(Flex4, { boxSize: "32px", borderRadius: "full", bg: "brand.muted", color: "brand.fg", align: "center", justify: "center", fontWeight: "700", fontSize: "xs", children: coreInitials(user.nome) }) }) }),
|
|
1138
1138
|
/* @__PURE__ */ jsx8(Portal, { children: /* @__PURE__ */ jsx8(Menu.Positioner, { children: /* @__PURE__ */ jsxs6(Menu.Content, { children: [
|
|
1139
1139
|
profileHref ? /* @__PURE__ */ jsx8(Menu.Item, { value: "perfil", onClick: () => navigate(profileHref), children: "Meu perfil" }) : null,
|
|
1140
1140
|
userMenu.map((item) => /* @__PURE__ */ jsxs6(
|
|
@@ -1173,7 +1173,7 @@ function Slot({
|
|
|
1173
1173
|
if (name === "sidebar") return /* @__PURE__ */ jsx8(Sidebar, { app, menu, registry });
|
|
1174
1174
|
if (name === "topbar") return /* @__PURE__ */ jsx8(CoreTopbar, { app, menu, registry });
|
|
1175
1175
|
if (name === "footer" && slot === "core") {
|
|
1176
|
-
return /* @__PURE__ */ jsx8(Box5, { as: "footer", px: 6, py: 4, color: "
|
|
1176
|
+
return /* @__PURE__ */ jsx8(Box5, { as: "footer", px: 6, py: 4, color: "text.muted", fontSize: "xs", borderTopWidth: "1px", children: "OonCore" });
|
|
1177
1177
|
}
|
|
1178
1178
|
return null;
|
|
1179
1179
|
}
|
|
@@ -2267,4 +2267,4 @@ export {
|
|
|
2267
2267
|
appDefinitionToConfig,
|
|
2268
2268
|
startOonApp
|
|
2269
2269
|
};
|
|
2270
|
-
//# sourceMappingURL=chunk-
|
|
2270
|
+
//# sourceMappingURL=chunk-X6QNHP3Y.js.map
|