@vertesia/ui 1.5.0-dev.20260826.064249Z → 1.5.0-dev.20260901.033115Z
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/lib/core/components/FormItem.d.ts.map +1 -1
- package/lib/core/components/FormItem.js +2 -3
- package/lib/core/components/FormItem.js.map +1 -1
- package/lib/core/components/InfoTip.d.ts +20 -0
- package/lib/core/components/InfoTip.d.ts.map +1 -0
- package/lib/core/components/InfoTip.js +18 -0
- package/lib/core/components/InfoTip.js.map +1 -0
- package/lib/core/components/index.d.ts +1 -0
- package/lib/core/components/index.d.ts.map +1 -1
- package/lib/core/components/index.js +1 -0
- package/lib/core/components/index.js.map +1 -1
- package/lib/core/components/shadcn/Panel.d.ts.map +1 -1
- package/lib/core/components/shadcn/Panel.js +3 -3
- package/lib/core/components/shadcn/Panel.js.map +1 -1
- package/lib/features/store/objects/search/DocumentSearchContext.d.ts +15 -0
- package/lib/features/store/objects/search/DocumentSearchContext.d.ts.map +1 -1
- package/lib/features/store/objects/search/DocumentSearchContext.js +45 -2
- package/lib/features/store/objects/search/DocumentSearchContext.js.map +1 -1
- package/lib/features/store/objects/selection/actions/DeleteObjectsAction.d.ts.map +1 -1
- package/lib/features/store/objects/selection/actions/DeleteObjectsAction.js +5 -0
- package/lib/features/store/objects/selection/actions/DeleteObjectsAction.js.map +1 -1
- package/lib/features/store/types/IntakePolicyEditor.d.ts.map +1 -1
- package/lib/features/store/types/IntakePolicyEditor.js +1 -1
- package/lib/features/store/types/IntakePolicyEditor.js.map +1 -1
- package/lib/features/store/types/IntakePolicyForm.d.ts.map +1 -1
- package/lib/features/store/types/IntakePolicyForm.js +15 -15
- package/lib/features/store/types/IntakePolicyForm.js.map +1 -1
- package/lib/features/store/types/TypeRegistry.d.ts +10 -0
- package/lib/features/store/types/TypeRegistry.d.ts.map +1 -1
- package/lib/features/store/types/search/ObjectTypeSearchContext.d.ts +10 -0
- package/lib/features/store/types/search/ObjectTypeSearchContext.d.ts.map +1 -1
- package/lib/i18n/locales/ar.json +35 -0
- package/lib/i18n/locales/de.json +35 -0
- package/lib/i18n/locales/en.json +35 -0
- package/lib/i18n/locales/es.json +35 -0
- package/lib/i18n/locales/fr.json +35 -0
- package/lib/i18n/locales/it.json +35 -0
- package/lib/i18n/locales/ja.json +35 -0
- package/lib/i18n/locales/ko.json +35 -0
- package/lib/i18n/locales/pt.json +35 -0
- package/lib/i18n/locales/ru.json +35 -0
- package/lib/i18n/locales/tr.json +35 -0
- package/lib/i18n/locales/zh-TW.json +35 -0
- package/lib/i18n/locales/zh.json +35 -0
- package/lib/router/RouteComponent.d.ts +8 -0
- package/lib/router/RouteComponent.d.ts.map +1 -1
- package/lib/router/RouteComponent.js +41 -9
- package/lib/router/RouteComponent.js.map +1 -1
- package/lib/session/UserSessionProvider.d.ts.map +1 -1
- package/lib/session/UserSessionProvider.js +12 -13
- package/lib/session/UserSessionProvider.js.map +1 -1
- package/lib/session/auth/domainRouting.d.ts +11 -0
- package/lib/session/auth/domainRouting.d.ts.map +1 -1
- package/lib/session/auth/domainRouting.js +13 -0
- package/lib/session/auth/domainRouting.js.map +1 -1
- package/lib/session/useUXTracking.d.ts.map +1 -1
- package/lib/session/useUXTracking.js +6 -1
- package/lib/session/useUXTracking.js.map +1 -1
- package/lib/vertesia-ui-core.js +199 -4
- package/lib/vertesia-ui-core.js.map +1 -1
- package/lib/vertesia-ui-features.js +975 -33
- package/lib/vertesia-ui-features.js.map +1 -1
- package/lib/vertesia-ui-i18n.BJBGsq-8.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.BJBGsq-8.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.BY5YG5cX.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.BY5YG5cX.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.Bd5_1BXO.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.Bd5_1BXO.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.Bvwej2HH.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.Bvwej2HH.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.CMT3f4gf.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.CMT3f4gf.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.D56DNPJW.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.D56DNPJW.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.DDzKLNx6.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.DDzKLNx6.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.D_Am1LpF.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.D_Am1LpF.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.DrZizgGV.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.DrZizgGV.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.DwHsq86z.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.DwHsq86z.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.PLpo0Bbz.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.PLpo0Bbz.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.js +2 -38
- package/lib/vertesia-ui-i18n.js.map +1 -1
- package/lib/vertesia-ui-i18n.xVbXALqz.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.xVbXALqz.chunk.js.map +1 -0
- package/lib/vertesia-ui-layout.js +80 -1
- package/lib/vertesia-ui-layout.js.map +1 -1
- package/lib/vertesia-ui-rich-text.js +278 -4
- package/lib/vertesia-ui-rich-text.js.map +1 -1
- package/lib/vertesia-ui-router.js +1 -1
- package/lib/vertesia-ui-router.js.map +1 -1
- package/lib/vertesia-ui-session.js +1 -1
- package/lib/vertesia-ui-session.js.map +1 -1
- package/lib/vertesia-ui-shell.js +118 -1
- package/lib/vertesia-ui-shell.js.map +1 -1
- package/lib/vertesia-ui-widgets.js +336 -20
- package/lib/vertesia-ui-widgets.js.map +1 -1
- package/package.json +7 -7
- package/src/core/components/FormItem.tsx +2 -5
- package/src/core/components/InfoTip.test.tsx +33 -0
- package/src/core/components/InfoTip.tsx +32 -0
- package/src/core/components/index.ts +1 -0
- package/src/core/components/shadcn/Panel.tsx +3 -7
- package/src/features/store/objects/search/DocumentSearchContext.test.ts +45 -0
- package/src/features/store/objects/search/DocumentSearchContext.ts +50 -2
- package/src/features/store/objects/selection/actions/DeleteObjectsAction.tsx +5 -0
- package/src/features/store/types/IntakePolicyEditor.tsx +3 -4
- package/src/features/store/types/IntakePolicyForm.tsx +120 -20
- package/src/i18n/locales/ar.json +35 -0
- package/src/i18n/locales/de.json +35 -0
- package/src/i18n/locales/en.json +35 -0
- package/src/i18n/locales/es.json +35 -0
- package/src/i18n/locales/fr.json +35 -0
- package/src/i18n/locales/it.json +35 -0
- package/src/i18n/locales/ja.json +35 -0
- package/src/i18n/locales/ko.json +35 -0
- package/src/i18n/locales/pt.json +35 -0
- package/src/i18n/locales/ru.json +35 -0
- package/src/i18n/locales/tr.json +35 -0
- package/src/i18n/locales/zh-TW.json +35 -0
- package/src/i18n/locales/zh.json +35 -0
- package/src/router/RouteComponent.test.tsx +139 -0
- package/src/router/RouteComponent.tsx +54 -9
- package/src/session/UserSessionProvider.tsx +12 -11
- package/src/session/auth/domainRouting.test.ts +24 -1
- package/src/session/auth/domainRouting.ts +29 -0
- package/src/session/useUXTracking.tsx +6 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vertesia-ui-layout.js","names":["_jsx","_jsxs","_jsx","_jsxs","_jsx","_Fragment","_jsx","_jsxs","_jsx","_jsxs","_jsx","_jsx"],"sources":["layout/SidebarContext.js","layout/TitleBar.js","layout/Navbar.js","layout/Sidebar.js","layout/AppLayout.js","layout/ErrorPage.js","layout/FullHeightLayout.js","layout/RegionTag.js"],"sourcesContent":["import { createContext, useContext } from 'react';\nexport const SidebarContext = createContext({\n isOpen: false,\n toggleMobile: () => void 0,\n toggleDesktop: () => void 0,\n});\nexport function useSidebarToggle() {\n return useContext(SidebarContext);\n}\n//# sourceMappingURL=SidebarContext.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nexport function TitleBar({ title }) {\n return _jsx(\"div\", { className: \"self-center text-lg font-semibold\", children: title });\n}\n//# sourceMappingURL=TitleBar.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Button } from '@vertesia/ui/core';\nimport { useUITranslation } from '@vertesia/ui/i18n';\nimport { Menu, Search } from 'lucide-react';\nimport { useSidebarToggle } from './SidebarContext.js';\nimport { TitleBar } from './TitleBar.js';\nexport function Navbar({ children, logo, onSearch, title }) {\n return (_jsxs(\"div\", { className: \"sticky top-0 z-40 flex h-16 shrink-0 items-center gap-x-4 border-b px-4 shadow-2xs sm:gap-x-6 sm:px-6 lg:px-8\", children: [_jsx(HamburgerButton, {}), _jsx(\"div\", { className: \"lg:hidden\", children: logo }), onSearch && _jsx(NavbarSeparator, { visible: \"mobile\" }), _jsxs(\"div\", { className: \"flex flex-1 gap-x-4 self-stretch lg:gap-x-6\", children: [_jsx(TitleBar, { title: title }), onSearch && _jsx(SearchBox, { onSearch: onSearch }), _jsx(\"div\", { className: \"flex items-center gap-x-4 lg:gap-x-6 ms-auto\", children: children })] })] }));\n}\nfunction SearchBox(_props) {\n const { t } = useUITranslation();\n return (_jsxs(\"form\", { className: \"relative flex flex-1\", action: \"#\", method: \"GET\", children: [_jsx(\"label\", { htmlFor: \"search-field\", className: \"sr-only\", children: t('layout.search') }), _jsx(Search, { className: \"pointer-events-none absolute inset-y-0 start-0 h-full w-5 text-gray-400\", \"aria-hidden\": \"true\" }), _jsx(\"input\", { id: \"search-field\", className: \"block h-full w-full border-0 py-0 ps-8 pe-0 text-gray-900 placeholder:text-gray-400 focus:ring-0 sm:text-sm\", placeholder: t('layout.searchPlaceholder'), type: \"search\", name: \"search\" })] }));\n}\nexport function HamburgerButton() {\n const { toggleDesktop, toggleMobile } = useSidebarToggle();\n const toggle = () => {\n if (window.innerWidth < 1024) {\n toggleMobile();\n }\n else {\n toggleDesktop();\n }\n };\n return (_jsx(Button, { variant: \"ghost\", size: \"icon\", onClick: () => toggle(), className: \"p-2 rounded-full transition-colors w-full text-center \", children: _jsx(Menu, { \"aria-hidden\": \"true\", size: 24 }) }));\n}\nexport function NavbarSeparator({ visible }) {\n let visibility = '';\n if (visible) {\n visibility = visible === 'mobile' ? 'lg:hidden' : 'hidden lg:block';\n }\n return _jsx(\"div\", { className: `h-6 w-px bg-gray-900/10 dark:bg-slate-900/0.1 ${visibility}`, \"aria-hidden\": \"true\" });\n}\nexport function NavbarIconButton({ title, icon: Icon, onClick }) {\n return (_jsxs(\"button\", { type: \"button\", className: \"-m-2.5 p-2.5 text-gray-400 dark:text-slate-50 hover:text-gray-500\", onClick: onClick, children: [_jsx(\"span\", { className: \"sr-only\", children: title }), _jsx(Icon, { className: \"size-6\", \"aria-hidden\": \"true\", title: title })] }));\n}\nexport function NavbarButton({ children, onClick }) {\n return _jsx(Button, { onClick: onClick, children: children });\n}\nexport function NavbarLink({ href, onClick, children }) {\n return (_jsx(\"a\", { className: \"dark:text-slate-50\", href: href, onClick: onClick, children: children }));\n}\n//# sourceMappingURL=Navbar.js.map","import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@vertesia/ui/core';\nimport { Nav, useRouterContext } from '@vertesia/ui/router';\nimport clsx from 'clsx';\nimport { Dot } from 'lucide-react';\nimport { useSidebarToggle } from './SidebarContext';\nexport function Sidebar({ children, logo, className }) {\n return (_jsxs(\"div\", { className: clsx(className || 'bg-indigo-600 dark:bg-indigo-950', 'flex flex-col h-full'), children: [logo && _jsx(\"div\", { className: \"-mx-2 flex h-auto my-4 shrink-0 self-start\", children: logo }), _jsx(\"div\", { className: \"flex-1 min-h-0 overflow-hidden px-0 lg:px-2\", children: _jsx(\"nav\", { className: \"h-full flex flex-col\", children: _jsx(\"ul\", { className: \"flex flex-col gap-y-2 overflow-y-auto h-full\", children: children }) }) })] }));\n}\nexport function SidebarSection({ children, title, action, isFooter = false, className }) {\n const { isOpen } = useSidebarToggle();\n const header = isOpen ? (_jsxs(_Fragment, { children: [title || '', action] })) : (_jsx(Dot, { className: \"size-6\" }));\n return (_jsxs(\"li\", { className: isFooter ? 'mt-auto' : '', children: [title && (_jsx(\"div\", { className: \"text-xs font-medium h-8 flex items-center gap-x-2 px-2 text-sidebar-foreground/70\", children: header })), _jsx(\"ul\", { \"data-sidebar\": \"menu\", className: clsx('flex w-full min-w-0 flex-col gap-1', className), children: children })] }));\n}\nexport function SidebarTooltip({ children, text }) {\n const { isOpen } = useSidebarToggle();\n return isOpen ? (children) : (_jsx(TooltipProvider, { children: _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: children }), _jsx(TooltipContent, { side: \"right\", children: text })] }) }));\n}\nexport function SidebarItem({ external, className, tools, children, icon: Icon, href, to, current, onClick, replace, skipStickyParams, }) {\n const { toggleMobile } = useSidebarToggle();\n const { router } = useRouterContext();\n // Append the active tenant sticky params (account `a` + project `p`) the router holds to internal\n // hrefs, so opening a nav item in a new tab or copying its address preserves the current\n // account/project.\n const resolvedHref = !skipStickyParams && href.startsWith('/') ? router.getTopRouter().navigator.addStickyParams(href) : href;\n const _closeSideBar = () => {\n setTimeout(() => {\n toggleMobile(false);\n }, 100);\n };\n const onClickWrapper = (event) => {\n if (external) {\n window.open(resolvedHref, '_blank');\n event.preventDefault(); // Prevent default link behavior\n event.stopPropagation(); // Stop the event from propagating\n }\n else if (onClick) {\n onClick(event);\n }\n };\n return (_jsx(\"li\", { children: _jsx(Nav, { to: to, onClick: _closeSideBar, replace: replace, children: _jsx(SidebarTooltip, { text: children, children: _jsxs(\"a\", { href: resolvedHref, onClick: onClickWrapper, className: clsx(current\n ? 'bg-sidebar-accent text-sidebar-accent-foreground'\n : 'text-sidebar-foreground hover:text-sidebar-accent-foreground hover:bg-sidebar-accent', 'group flex gap-x-3 rounded-md px-2 py-1.5 text-sm items-center h-8', className), children: [Icon && (_jsx(Icon, { className: clsx(current\n ? 'bg-sidebar-accent text-sidebar-accent-foreground'\n : 'text-sidebar-foreground hover:text-sidebar-accent-foreground hover:bg-sidebar-accent', 'size-4 shrink-0'), \"aria-hidden\": \"true\" })), children, tools && _jsx(\"div\", { className: \"flex items-center ms-auto\", children: tools })] }) }) }) }));\n}\n//# sourceMappingURL=Sidebar.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { SidePanel } from '@vertesia/ui/core';\nimport { useLanguage } from '@vertesia/ui/i18n';\nimport clsx from 'clsx';\nimport { useEffect, useState } from 'react';\n// import { FullHeightLayout } from './FullHeightLayout.js'\nimport { Navbar } from './Navbar.js';\nimport { Sidebar } from './Sidebar.js';\nimport { SidebarContext } from './SidebarContext.js';\nexport function AppLayout({ sidebarClassName, className, title, children, logo, navbar, sidebar, mainNav, }) {\n if (localStorage.getItem('desktopSidebarOpen') === null) {\n localStorage.setItem('desktopSidebarOpen', 'true');\n }\n const { isRTL } = useLanguage();\n const [sidebarOpen, setSidebarOpen] = useState(false);\n const [desktopSidebarOpen, setDesktopSidebarOpen] = useState(localStorage.getItem('desktopSidebarOpen') === 'true');\n const [isLargeScreen, setIsLargeScreen] = useState(window.innerWidth >= 1024);\n useEffect(() => {\n const handleResize = () => {\n setIsLargeScreen(window.innerWidth >= 1024);\n };\n window.addEventListener('resize', handleResize);\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n const sidebarContextValue = {\n isOpen: isLargeScreen ? desktopSidebarOpen : sidebarOpen,\n toggleDesktop: (value) => {\n if (value === undefined) {\n setDesktopSidebarOpen(!desktopSidebarOpen);\n }\n else {\n setDesktopSidebarOpen(value);\n }\n localStorage.setItem('desktopSidebarOpen', JSON.stringify(!desktopSidebarOpen));\n },\n toggleMobile: (value) => {\n if (value === undefined) {\n setSidebarOpen(!sidebarOpen);\n }\n else {\n setSidebarOpen(value);\n }\n },\n };\n return (_jsx(\"div\", { className: \"flex flex-col h-screen overflow-y-hidden\", children: _jsxs(SidebarContext.Provider, { value: sidebarContextValue, children: [_jsx(\"div\", { className: \"w-full\", children: mainNav }), _jsxs(\"div\", { className: \"flex h-full overflow-y-auto w-full\", children: [_jsx(\"div\", { className: \"lg:hidden\", children: _jsx(SidePanel, { className: \"bg-sidebar\", isOpen: sidebarOpen, onClose: () => setSidebarOpen(false), side: isRTL ? 'right' : 'left', panelWidth: 288, resizable: false, backdrop: true, children: _jsx(Sidebar, { logo: logo, className: sidebarClassName, children: sidebar }) }) }), _jsx(\"div\", { className: `hidden lg:block relative transition-all duration-300 ${desktopSidebarOpen ? 'w-72' : 'w-12'}`, children: _jsx(Sidebar, { logo: logo, className: sidebarClassName, children: sidebar }) }), _jsxs(\"div\", { className: \"w-full h-full overflow-y-hidden\", children: [navbar ? (_jsx(Navbar, { title: title, logo: logo, children: navbar })) : null, _jsx(\"main\", { className: clsx('flex-1 h-full w-full relative flex flex-col', className), children: children })] })] })] }) }));\n}\n//# sourceMappingURL=AppLayout.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Button } from '@vertesia/ui/core';\nexport function ErrorPage({ title = 'Something went wrong', message = 'An unexpected error occurred. Please try again.', actionLabel = 'Try again', onAction, }) {\n return (_jsx(\"div\", { className: \"flex min-h-screen items-center justify-center bg-white px-6 py-12 text-center\", children: _jsxs(\"div\", { className: \"max-w-md space-y-6\", children: [_jsx(\"div\", { className: \"mx-auto flex h-16 w-16 items-center justify-center rounded-full bg-destructive text-3xl font-semibold text-destructive\", children: \"!\" }), _jsxs(\"div\", { className: \"space-y-2\", children: [_jsx(\"h1\", { className: \"text-2xl font-semibold tracking-tight\", children: title }), _jsx(\"p\", { className: \"text-sm leading-6 text-muted\", children: message })] }), onAction ? _jsx(Button, { onClick: onAction, children: actionLabel }) : null] }) }));\n}\n//# sourceMappingURL=ErrorPage.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport clsx from 'clsx';\nexport function FullHeightLayout({ className, children }) {\n return _jsx(\"div\", { className: clsx('flex flex-col', 'h-full', 'overflow-y-auto', 'px-2', className), children: children });\n}\nFullHeightLayout.Fixed = function Fixed({ heightClass, className, children }) {\n return _jsx(\"div\", { className: clsx('w-full', heightClass, className), children: children });\n};\nFullHeightLayout.Body = function Body({ className, children }) {\n return _jsx(\"div\", { className: clsx('grow overflow-auto', 'min-h-0', 'p-2', className), children: children });\n};\nFullHeightLayout.VR = function VDivider() {\n return _jsx(\"div\", { className: \"w-[1px] border border-red-200\" });\n};\nFullHeightLayout.HR = function HDivider() {\n return _jsx(\"div\", { className: \"w-full h-1 border-b border-red-200\" });\n};\nFullHeightLayout.Flex = function Flex({ className, children }) {\n return _jsx(\"div\", { className: clsx('grow flex flex-col', 'overflow-hidden min-h-0', 'p-2', className), children: children });\n};\nFullHeightLayout.Tab = function Tab({ children }) {\n return _jsx(\"div\", { className: \"flex flex-col h-full\", children: children });\n};\n//# sourceMappingURL=FullHeightLayout.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { cn } from '@vertesia/ui/core';\nimport { Env } from '@vertesia/ui/env';\nconst regionLabels = {\n eu: 'EU',\n jp: 'JP',\n};\nexport function RegionTag({ className }) {\n const region = Env.region;\n // Only show for non-US regions (US is default, no need to display)\n if (!region || region === 'us')\n return null;\n return (_jsx(\"div\", { className: cn('text-[0.6rem] font-semibold px-1.5 rounded-3xl leading-4', 'bg-info text-white', className), children: regionLabels[region] ?? region.toUpperCase() }));\n}\n//# sourceMappingURL=RegionTag.js.map"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vertesia-ui-layout.js","names":["__iconNode","__iconNode","_jsx","_jsxs","_jsx","_jsxs","_jsx","_Fragment","_jsx","_jsxs","_jsx","_jsxs","_jsx","_jsx"],"sources":["../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/mergeClasses.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/toKebabCase.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/toCamelCase.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/toPascalCase.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/defaultAttributes.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/shared/src/utils/hasA11yProp.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/context.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/Icon.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/createLucideIcon.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/icons/dot.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/icons/menu.mjs","../../../node_modules/.pnpm/lucide-react@1.31.0_react@19.2.7/node_modules/lucide-react/dist/esm/icons/search.mjs","layout/SidebarContext.js","layout/TitleBar.js","layout/Navbar.js","layout/Sidebar.js","layout/AppLayout.js","layout/ErrorPage.js","layout/FullHeightLayout.js","layout/RegionTag.js"],"sourcesContent":["/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst mergeClasses = (...classes) => classes.filter((className, index, array) => {\n return Boolean(className) && className.trim() !== \"\" && array.indexOf(className) === index;\n}).join(\" \").trim();\n\nexport { mergeClasses };\n//# sourceMappingURL=mergeClasses.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, \"$1-$2\").toLowerCase();\n\nexport { toKebabCase };\n//# sourceMappingURL=toKebabCase.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst toCamelCase = (string) => string.replace(\n /^([A-Z])|[\\s-_]+(\\w)/g,\n (match, p1, p2) => p2 ? p2.toUpperCase() : p1.toLowerCase()\n);\n\nexport { toCamelCase };\n//# sourceMappingURL=toCamelCase.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { toCamelCase } from './toCamelCase.mjs';\n\nconst toPascalCase = (string) => {\n const camelCase = toCamelCase(string);\n return camelCase.charAt(0).toUpperCase() + camelCase.slice(1);\n};\n\nexport { toPascalCase };\n//# sourceMappingURL=toPascalCase.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nvar defaultAttributes = {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n};\n\nexport { defaultAttributes as default };\n//# sourceMappingURL=defaultAttributes.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst hasA11yProp = (props) => {\n for (const prop in props) {\n if (prop.startsWith(\"aria-\") || prop === \"role\" || prop === \"title\") {\n return true;\n }\n }\n return false;\n};\n\nexport { hasA11yProp };\n//# sourceMappingURL=hasA11yProp.mjs.map\n","\"use strict\";\n\"use client\";\n/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { createContext, useContext, useMemo, createElement } from 'react';\n\nconst LucideContext = createContext({});\nfunction LucideProvider({\n children,\n size,\n color,\n strokeWidth,\n absoluteStrokeWidth,\n className\n}) {\n const value = useMemo(\n () => ({\n size,\n color,\n strokeWidth,\n absoluteStrokeWidth,\n className\n }),\n [size, color, strokeWidth, absoluteStrokeWidth, className]\n );\n return createElement(LucideContext.Provider, { value }, children);\n}\nconst useLucideContext = () => useContext(LucideContext);\n\nexport { LucideProvider, useLucideContext };\n//# sourceMappingURL=context.mjs.map\n","\"use strict\";\n\"use client\";\n/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport defaultAttributes from './defaultAttributes.mjs';\nimport { hasA11yProp } from './shared/src/utils/hasA11yProp.mjs';\nimport { mergeClasses } from './shared/src/utils/mergeClasses.mjs';\nimport { useLucideContext } from './context.mjs';\n\nconst Icon = forwardRef(\n ({ color, size, strokeWidth, absoluteStrokeWidth, className = \"\", children, iconNode, ...rest }, ref) => {\n const {\n size: contextSize = 24,\n strokeWidth: contextStrokeWidth = 2,\n absoluteStrokeWidth: contextAbsoluteStrokeWidth = false,\n color: contextColor = \"currentColor\",\n className: contextClass = \"\"\n } = useLucideContext() ?? {};\n const calculatedStrokeWidth = absoluteStrokeWidth ?? contextAbsoluteStrokeWidth ? Number(strokeWidth ?? contextStrokeWidth) * 24 / Number(size ?? contextSize) : strokeWidth ?? contextStrokeWidth;\n return createElement(\n \"svg\",\n {\n ref,\n ...defaultAttributes,\n width: size ?? contextSize ?? defaultAttributes.width,\n height: size ?? contextSize ?? defaultAttributes.height,\n stroke: color ?? contextColor,\n strokeWidth: calculatedStrokeWidth,\n className: mergeClasses(\"lucide\", contextClass, className),\n ...!children && !hasA11yProp(rest) && { \"aria-hidden\": \"true\" },\n ...rest\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...Array.isArray(children) ? children : [children]\n ]\n );\n }\n);\n\nexport { Icon as default };\n//# sourceMappingURL=Icon.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport { mergeClasses } from './shared/src/utils/mergeClasses.mjs';\nimport { toKebabCase } from './shared/src/utils/toKebabCase.mjs';\nimport { toPascalCase } from './shared/src/utils/toPascalCase.mjs';\nimport Icon from './Icon.mjs';\n\nconst createLucideIcon = (iconName, iconNode) => {\n const Component = forwardRef(\n ({ className, ...props }, ref) => createElement(Icon, {\n ref,\n iconNode,\n className: mergeClasses(\n `lucide-${toKebabCase(toPascalCase(iconName))}`,\n `lucide-${iconName}`,\n className\n ),\n ...props\n })\n );\n Component.displayName = toPascalCase(iconName);\n return Component;\n};\n\nexport { createLucideIcon as default };\n//# sourceMappingURL=createLucideIcon.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [[\"circle\", { cx: \"12\", cy: \"12\", r: \"1\", key: \"41hilf\" }]];\nconst Dot = createLucideIcon(\"dot\", __iconNode);\n\nexport { __iconNode, Dot as default };\n//# sourceMappingURL=dot.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M4 5h16\", key: \"1tepv9\" }],\n [\"path\", { d: \"M4 12h16\", key: \"1lakjw\" }],\n [\"path\", { d: \"M4 19h16\", key: \"1djgab\" }]\n];\nconst Menu = createLucideIcon(\"menu\", __iconNode);\n\nexport { __iconNode, Menu as default };\n//# sourceMappingURL=menu.mjs.map\n","/**\n * @license lucide-react v1.31.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"m21 21-4.34-4.34\", key: \"14j7rj\" }],\n [\"circle\", { cx: \"11\", cy: \"11\", r: \"8\", key: \"4ej97u\" }]\n];\nconst Search = createLucideIcon(\"search\", __iconNode);\n\nexport { __iconNode, Search as default };\n//# sourceMappingURL=search.mjs.map\n","import { createContext, useContext } from 'react';\nexport const SidebarContext = createContext({\n isOpen: false,\n toggleMobile: () => void 0,\n toggleDesktop: () => void 0,\n});\nexport function useSidebarToggle() {\n return useContext(SidebarContext);\n}\n//# sourceMappingURL=SidebarContext.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nexport function TitleBar({ title }) {\n return _jsx(\"div\", { className: \"self-center text-lg font-semibold\", children: title });\n}\n//# sourceMappingURL=TitleBar.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Button } from '@vertesia/ui/core';\nimport { useUITranslation } from '@vertesia/ui/i18n';\nimport { Menu, Search } from 'lucide-react';\nimport { useSidebarToggle } from './SidebarContext.js';\nimport { TitleBar } from './TitleBar.js';\nexport function Navbar({ children, logo, onSearch, title }) {\n return (_jsxs(\"div\", { className: \"sticky top-0 z-40 flex h-16 shrink-0 items-center gap-x-4 border-b px-4 shadow-2xs sm:gap-x-6 sm:px-6 lg:px-8\", children: [_jsx(HamburgerButton, {}), _jsx(\"div\", { className: \"lg:hidden\", children: logo }), onSearch && _jsx(NavbarSeparator, { visible: \"mobile\" }), _jsxs(\"div\", { className: \"flex flex-1 gap-x-4 self-stretch lg:gap-x-6\", children: [_jsx(TitleBar, { title: title }), onSearch && _jsx(SearchBox, { onSearch: onSearch }), _jsx(\"div\", { className: \"flex items-center gap-x-4 lg:gap-x-6 ms-auto\", children: children })] })] }));\n}\nfunction SearchBox(_props) {\n const { t } = useUITranslation();\n return (_jsxs(\"form\", { className: \"relative flex flex-1\", action: \"#\", method: \"GET\", children: [_jsx(\"label\", { htmlFor: \"search-field\", className: \"sr-only\", children: t('layout.search') }), _jsx(Search, { className: \"pointer-events-none absolute inset-y-0 start-0 h-full w-5 text-gray-400\", \"aria-hidden\": \"true\" }), _jsx(\"input\", { id: \"search-field\", className: \"block h-full w-full border-0 py-0 ps-8 pe-0 text-gray-900 placeholder:text-gray-400 focus:ring-0 sm:text-sm\", placeholder: t('layout.searchPlaceholder'), type: \"search\", name: \"search\" })] }));\n}\nexport function HamburgerButton() {\n const { toggleDesktop, toggleMobile } = useSidebarToggle();\n const toggle = () => {\n if (window.innerWidth < 1024) {\n toggleMobile();\n }\n else {\n toggleDesktop();\n }\n };\n return (_jsx(Button, { variant: \"ghost\", size: \"icon\", onClick: () => toggle(), className: \"p-2 rounded-full transition-colors w-full text-center \", children: _jsx(Menu, { \"aria-hidden\": \"true\", size: 24 }) }));\n}\nexport function NavbarSeparator({ visible }) {\n let visibility = '';\n if (visible) {\n visibility = visible === 'mobile' ? 'lg:hidden' : 'hidden lg:block';\n }\n return _jsx(\"div\", { className: `h-6 w-px bg-gray-900/10 dark:bg-slate-900/0.1 ${visibility}`, \"aria-hidden\": \"true\" });\n}\nexport function NavbarIconButton({ title, icon: Icon, onClick }) {\n return (_jsxs(\"button\", { type: \"button\", className: \"-m-2.5 p-2.5 text-gray-400 dark:text-slate-50 hover:text-gray-500\", onClick: onClick, children: [_jsx(\"span\", { className: \"sr-only\", children: title }), _jsx(Icon, { className: \"size-6\", \"aria-hidden\": \"true\", title: title })] }));\n}\nexport function NavbarButton({ children, onClick }) {\n return _jsx(Button, { onClick: onClick, children: children });\n}\nexport function NavbarLink({ href, onClick, children }) {\n return (_jsx(\"a\", { className: \"dark:text-slate-50\", href: href, onClick: onClick, children: children }));\n}\n//# sourceMappingURL=Navbar.js.map","import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@vertesia/ui/core';\nimport { Nav, useRouterContext } from '@vertesia/ui/router';\nimport clsx from 'clsx';\nimport { Dot } from 'lucide-react';\nimport { useSidebarToggle } from './SidebarContext';\nexport function Sidebar({ children, logo, className }) {\n return (_jsxs(\"div\", { className: clsx(className || 'bg-indigo-600 dark:bg-indigo-950', 'flex flex-col h-full'), children: [logo && _jsx(\"div\", { className: \"-mx-2 flex h-auto my-4 shrink-0 self-start\", children: logo }), _jsx(\"div\", { className: \"flex-1 min-h-0 overflow-hidden px-0 lg:px-2\", children: _jsx(\"nav\", { className: \"h-full flex flex-col\", children: _jsx(\"ul\", { className: \"flex flex-col gap-y-2 overflow-y-auto h-full\", children: children }) }) })] }));\n}\nexport function SidebarSection({ children, title, action, isFooter = false, className }) {\n const { isOpen } = useSidebarToggle();\n const header = isOpen ? (_jsxs(_Fragment, { children: [title || '', action] })) : (_jsx(Dot, { className: \"size-6\" }));\n return (_jsxs(\"li\", { className: isFooter ? 'mt-auto' : '', children: [title && (_jsx(\"div\", { className: \"text-xs font-medium h-8 flex items-center gap-x-2 px-2 text-sidebar-foreground/70\", children: header })), _jsx(\"ul\", { \"data-sidebar\": \"menu\", className: clsx('flex w-full min-w-0 flex-col gap-1', className), children: children })] }));\n}\nexport function SidebarTooltip({ children, text }) {\n const { isOpen } = useSidebarToggle();\n return isOpen ? (children) : (_jsx(TooltipProvider, { children: _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: children }), _jsx(TooltipContent, { side: \"right\", children: text })] }) }));\n}\nexport function SidebarItem({ external, className, tools, children, icon: Icon, href, to, current, onClick, replace, skipStickyParams, }) {\n const { toggleMobile } = useSidebarToggle();\n const { router } = useRouterContext();\n // Append the active tenant sticky params (account `a` + project `p`) the router holds to internal\n // hrefs, so opening a nav item in a new tab or copying its address preserves the current\n // account/project.\n const resolvedHref = !skipStickyParams && href.startsWith('/') ? router.getTopRouter().navigator.addStickyParams(href) : href;\n const _closeSideBar = () => {\n setTimeout(() => {\n toggleMobile(false);\n }, 100);\n };\n const onClickWrapper = (event) => {\n if (external) {\n window.open(resolvedHref, '_blank');\n event.preventDefault(); // Prevent default link behavior\n event.stopPropagation(); // Stop the event from propagating\n }\n else if (onClick) {\n onClick(event);\n }\n };\n return (_jsx(\"li\", { children: _jsx(Nav, { to: to, onClick: _closeSideBar, replace: replace, children: _jsx(SidebarTooltip, { text: children, children: _jsxs(\"a\", { href: resolvedHref, onClick: onClickWrapper, className: clsx(current\n ? 'bg-sidebar-accent text-sidebar-accent-foreground'\n : 'text-sidebar-foreground hover:text-sidebar-accent-foreground hover:bg-sidebar-accent', 'group flex gap-x-3 rounded-md px-2 py-1.5 text-sm items-center h-8', className), children: [Icon && (_jsx(Icon, { className: clsx(current\n ? 'bg-sidebar-accent text-sidebar-accent-foreground'\n : 'text-sidebar-foreground hover:text-sidebar-accent-foreground hover:bg-sidebar-accent', 'size-4 shrink-0'), \"aria-hidden\": \"true\" })), children, tools && _jsx(\"div\", { className: \"flex items-center ms-auto\", children: tools })] }) }) }) }));\n}\n//# sourceMappingURL=Sidebar.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { SidePanel } from '@vertesia/ui/core';\nimport { useLanguage } from '@vertesia/ui/i18n';\nimport clsx from 'clsx';\nimport { useEffect, useState } from 'react';\n// import { FullHeightLayout } from './FullHeightLayout.js'\nimport { Navbar } from './Navbar.js';\nimport { Sidebar } from './Sidebar.js';\nimport { SidebarContext } from './SidebarContext.js';\nexport function AppLayout({ sidebarClassName, className, title, children, logo, navbar, sidebar, mainNav, }) {\n if (localStorage.getItem('desktopSidebarOpen') === null) {\n localStorage.setItem('desktopSidebarOpen', 'true');\n }\n const { isRTL } = useLanguage();\n const [sidebarOpen, setSidebarOpen] = useState(false);\n const [desktopSidebarOpen, setDesktopSidebarOpen] = useState(localStorage.getItem('desktopSidebarOpen') === 'true');\n const [isLargeScreen, setIsLargeScreen] = useState(window.innerWidth >= 1024);\n useEffect(() => {\n const handleResize = () => {\n setIsLargeScreen(window.innerWidth >= 1024);\n };\n window.addEventListener('resize', handleResize);\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n const sidebarContextValue = {\n isOpen: isLargeScreen ? desktopSidebarOpen : sidebarOpen,\n toggleDesktop: (value) => {\n if (value === undefined) {\n setDesktopSidebarOpen(!desktopSidebarOpen);\n }\n else {\n setDesktopSidebarOpen(value);\n }\n localStorage.setItem('desktopSidebarOpen', JSON.stringify(!desktopSidebarOpen));\n },\n toggleMobile: (value) => {\n if (value === undefined) {\n setSidebarOpen(!sidebarOpen);\n }\n else {\n setSidebarOpen(value);\n }\n },\n };\n return (_jsx(\"div\", { className: \"flex flex-col h-screen overflow-y-hidden\", children: _jsxs(SidebarContext.Provider, { value: sidebarContextValue, children: [_jsx(\"div\", { className: \"w-full\", children: mainNav }), _jsxs(\"div\", { className: \"flex h-full overflow-y-auto w-full\", children: [_jsx(\"div\", { className: \"lg:hidden\", children: _jsx(SidePanel, { className: \"bg-sidebar\", isOpen: sidebarOpen, onClose: () => setSidebarOpen(false), side: isRTL ? 'right' : 'left', panelWidth: 288, resizable: false, backdrop: true, children: _jsx(Sidebar, { logo: logo, className: sidebarClassName, children: sidebar }) }) }), _jsx(\"div\", { className: `hidden lg:block relative transition-all duration-300 ${desktopSidebarOpen ? 'w-72' : 'w-12'}`, children: _jsx(Sidebar, { logo: logo, className: sidebarClassName, children: sidebar }) }), _jsxs(\"div\", { className: \"w-full h-full overflow-y-hidden\", children: [navbar ? (_jsx(Navbar, { title: title, logo: logo, children: navbar })) : null, _jsx(\"main\", { className: clsx('flex-1 h-full w-full relative flex flex-col', className), children: children })] })] })] }) }));\n}\n//# sourceMappingURL=AppLayout.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Button } from '@vertesia/ui/core';\nexport function ErrorPage({ title = 'Something went wrong', message = 'An unexpected error occurred. Please try again.', actionLabel = 'Try again', onAction, }) {\n return (_jsx(\"div\", { className: \"flex min-h-screen items-center justify-center bg-white px-6 py-12 text-center\", children: _jsxs(\"div\", { className: \"max-w-md space-y-6\", children: [_jsx(\"div\", { className: \"mx-auto flex h-16 w-16 items-center justify-center rounded-full bg-destructive text-3xl font-semibold text-destructive\", children: \"!\" }), _jsxs(\"div\", { className: \"space-y-2\", children: [_jsx(\"h1\", { className: \"text-2xl font-semibold tracking-tight\", children: title }), _jsx(\"p\", { className: \"text-sm leading-6 text-muted\", children: message })] }), onAction ? _jsx(Button, { onClick: onAction, children: actionLabel }) : null] }) }));\n}\n//# sourceMappingURL=ErrorPage.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport clsx from 'clsx';\nexport function FullHeightLayout({ className, children }) {\n return _jsx(\"div\", { className: clsx('flex flex-col', 'h-full', 'overflow-y-auto', 'px-2', className), children: children });\n}\nFullHeightLayout.Fixed = function Fixed({ heightClass, className, children }) {\n return _jsx(\"div\", { className: clsx('w-full', heightClass, className), children: children });\n};\nFullHeightLayout.Body = function Body({ className, children }) {\n return _jsx(\"div\", { className: clsx('grow overflow-auto', 'min-h-0', 'p-2', className), children: children });\n};\nFullHeightLayout.VR = function VDivider() {\n return _jsx(\"div\", { className: \"w-[1px] border border-red-200\" });\n};\nFullHeightLayout.HR = function HDivider() {\n return _jsx(\"div\", { className: \"w-full h-1 border-b border-red-200\" });\n};\nFullHeightLayout.Flex = function Flex({ className, children }) {\n return _jsx(\"div\", { className: clsx('grow flex flex-col', 'overflow-hidden min-h-0', 'p-2', className), children: children });\n};\nFullHeightLayout.Tab = function Tab({ children }) {\n return _jsx(\"div\", { className: \"flex flex-col h-full\", children: children });\n};\n//# sourceMappingURL=FullHeightLayout.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { cn } from '@vertesia/ui/core';\nimport { Env } from '@vertesia/ui/env';\nconst regionLabels = {\n eu: 'EU',\n jp: 'JP',\n};\nexport function RegionTag({ className }) {\n const region = Env.region;\n // Only show for non-US regions (US is default, no need to display)\n if (!region || region === 'us')\n return null;\n return (_jsx(\"div\", { className: cn('text-[0.6rem] font-semibold px-1.5 rounded-3xl leading-4', 'bg-info text-white', className), children: regionLabels[region] ?? region.toUpperCase() }));\n}\n//# sourceMappingURL=RegionTag.js.map"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11],"mappings":"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"}
|