@erpsquad/common 1.10.73 → 1.10.75

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.
Files changed (143) hide show
  1. package/dist/chunks/{ERPUIProvider-BPpcQgND.js → ERPUIProvider-Ce7EhOa_.js} +15 -10
  2. package/dist/chunks/ERPUIProvider-Ce7EhOa_.js.map +1 -0
  3. package/dist/chunks/{ERPUIProvider-DZbxFsRb.esm.js → ERPUIProvider-CmmabhgQ.esm.js} +15 -10
  4. package/dist/chunks/{ERPUIProvider-DZbxFsRb.esm.js.map → ERPUIProvider-CmmabhgQ.esm.js.map} +1 -1
  5. package/dist/chunks/{actionCreator-B1XDiSfb.esm.js → actionCreator-Cy_J6Xfp.esm.js} +2 -2
  6. package/dist/chunks/{actionCreator-B1XDiSfb.esm.js.map → actionCreator-Cy_J6Xfp.esm.js.map} +1 -1
  7. package/dist/chunks/{actionCreator-DlbJbrTk.js → actionCreator-DqVmiGzl.js} +2 -2
  8. package/dist/chunks/{actionCreator-DlbJbrTk.js.map → actionCreator-DqVmiGzl.js.map} +1 -1
  9. package/dist/chunks/{android-12-switch-DcPr9cvn.js → android-12-switch-Cruc3J1J.js} +13 -13
  10. package/dist/chunks/{android-12-switch-DcPr9cvn.js.map → android-12-switch-Cruc3J1J.js.map} +1 -1
  11. package/dist/chunks/{android-12-switch-DSM1b9TA.esm.js → android-12-switch-DPP00xjJ.esm.js} +12 -12
  12. package/dist/chunks/{android-12-switch-DSM1b9TA.esm.js.map → android-12-switch-DPP00xjJ.esm.js.map} +1 -1
  13. package/dist/chunks/{appbar-DDijzrAm.esm.js → appbar-7puZelDZ.esm.js} +105 -6
  14. package/dist/chunks/appbar-7puZelDZ.esm.js.map +1 -0
  15. package/dist/chunks/{appbar-Bf_GaMVY.js → appbar-DbazXkez.js} +105 -6
  16. package/dist/chunks/appbar-DbazXkez.js.map +1 -0
  17. package/dist/chunks/{checkbox-Jgx2gkFF.js → checkbox-DNW1SYc0.js} +3 -3
  18. package/dist/chunks/{checkbox-Jgx2gkFF.js.map → checkbox-DNW1SYc0.js.map} +1 -1
  19. package/dist/chunks/{checkbox-C5oERyEy.esm.js → checkbox-Vd4h25n2.esm.js} +3 -3
  20. package/dist/chunks/{checkbox-C5oERyEy.esm.js.map → checkbox-Vd4h25n2.esm.js.map} +1 -1
  21. package/dist/chunks/{common-BtIKVrzA.js → common-B1hGK8kQ.js} +23 -7
  22. package/dist/chunks/{common-BtIKVrzA.js.map → common-B1hGK8kQ.js.map} +1 -1
  23. package/dist/chunks/{common-D8YIf-p0.esm.js → common-BVfS06ca.esm.js} +23 -7
  24. package/dist/chunks/{common-D8YIf-p0.esm.js.map → common-BVfS06ca.esm.js.map} +1 -1
  25. package/dist/chunks/{custom-editor-DxM6_6Mt.esm.js → custom-editor-e50eHmKt.esm.js} +2 -2
  26. package/dist/chunks/{custom-editor-DxM6_6Mt.esm.js.map → custom-editor-e50eHmKt.esm.js.map} +1 -1
  27. package/dist/chunks/{custom-editor-5dpZZW_j.js → custom-editor-iUZb8s2v.js} +2 -2
  28. package/dist/chunks/{custom-editor-5dpZZW_j.js.map → custom-editor-iUZb8s2v.js.map} +1 -1
  29. package/dist/chunks/{default-data-CmARVEBW.js → default-data-B0Y8TU26.js} +14 -14
  30. package/dist/chunks/{default-data-CmARVEBW.js.map → default-data-B0Y8TU26.js.map} +1 -1
  31. package/dist/chunks/{default-data-DSbmaVFY.esm.js → default-data-DlPr1rYe.esm.js} +14 -14
  32. package/dist/chunks/{default-data-DSbmaVFY.esm.js.map → default-data-DlPr1rYe.esm.js.map} +1 -1
  33. package/dist/chunks/{form-builder-conversion-D9q6WTmq.js → form-builder-conversion-BcJXOpRp.js} +2 -2
  34. package/dist/chunks/{form-builder-conversion-D9q6WTmq.js.map → form-builder-conversion-BcJXOpRp.js.map} +1 -1
  35. package/dist/chunks/{form-builder-conversion-C2frmPH6.esm.js → form-builder-conversion-DrA9C0NQ.esm.js} +2 -2
  36. package/dist/chunks/{form-builder-conversion-C2frmPH6.esm.js.map → form-builder-conversion-DrA9C0NQ.esm.js.map} +1 -1
  37. package/dist/chunks/{form-builder-deconversion-pKIkZ_95.esm.js → form-builder-deconversion-1hYI2jWw.esm.js} +3 -3
  38. package/dist/chunks/{form-builder-deconversion-pKIkZ_95.esm.js.map → form-builder-deconversion-1hYI2jWw.esm.js.map} +1 -1
  39. package/dist/chunks/{form-builder-deconversion-x7TevuHU.js → form-builder-deconversion-BmHlW07j.js} +3 -3
  40. package/dist/chunks/{form-builder-deconversion-x7TevuHU.js.map → form-builder-deconversion-BmHlW07j.js.map} +1 -1
  41. package/dist/chunks/{fullScreen-B73ASpXc.esm.js → fullScreen-B4ZPj9dr.esm.js} +2 -2
  42. package/dist/chunks/{fullScreen-B73ASpXc.esm.js.map → fullScreen-B4ZPj9dr.esm.js.map} +1 -1
  43. package/dist/chunks/{fullScreen-GATqKdsG.js → fullScreen-BrdRBi-K.js} +2 -2
  44. package/dist/chunks/{fullScreen-GATqKdsG.js.map → fullScreen-BrdRBi-K.js.map} +1 -1
  45. package/dist/chunks/{languageContext-CsSLzEaN.js → languageContext-CANlRoA0.js} +3 -3
  46. package/dist/chunks/{languageContext-CsSLzEaN.js.map → languageContext-CANlRoA0.js.map} +1 -1
  47. package/dist/chunks/{languageContext-9Nob_HWV.esm.js → languageContext-DfIURMbF.esm.js} +3 -3
  48. package/dist/chunks/{languageContext-9Nob_HWV.esm.js.map → languageContext-DfIURMbF.esm.js.map} +1 -1
  49. package/dist/chunks/{migration-utils-2n9_gMx1.esm.js → migration-utils-D4OMb4fL.esm.js} +2 -2
  50. package/dist/chunks/{migration-utils-2n9_gMx1.esm.js.map → migration-utils-D4OMb4fL.esm.js.map} +1 -1
  51. package/dist/chunks/{migration-utils-hBeA2Gxt.js → migration-utils-Dc_6VdeJ.js} +2 -2
  52. package/dist/chunks/{migration-utils-hBeA2Gxt.js.map → migration-utils-Dc_6VdeJ.js.map} +1 -1
  53. package/dist/chunks/{page-context-_AMJB_ty.js → page-context-Cg2MyCmD.js} +3 -3
  54. package/dist/chunks/{page-context-_AMJB_ty.js.map → page-context-Cg2MyCmD.js.map} +1 -1
  55. package/dist/chunks/{page-context-C_YWMVhh.esm.js → page-context-DfmpUWuf.esm.js} +3 -3
  56. package/dist/chunks/{page-context-C_YWMVhh.esm.js.map → page-context-DfmpUWuf.esm.js.map} +1 -1
  57. package/dist/chunks/{radio-button-BYtmY0l-.js → radio-button-Bxl9UISl.js} +1 -18
  58. package/dist/chunks/radio-button-Bxl9UISl.js.map +1 -0
  59. package/dist/chunks/{radio-button-wgwiOmaZ.esm.js → radio-button-mbPNQ3rc.esm.js} +16 -33
  60. package/dist/chunks/radio-button-mbPNQ3rc.esm.js.map +1 -0
  61. package/dist/chunks/{reducer-BMzMjtRW.js → reducer-BuEwR2fM.js} +2 -2
  62. package/dist/chunks/{reducer-BMzMjtRW.js.map → reducer-BuEwR2fM.js.map} +1 -1
  63. package/dist/chunks/{reducer-CUnOsvvx.esm.js → reducer-C0cHDjmv.esm.js} +2 -2
  64. package/dist/chunks/{reducer-CUnOsvvx.esm.js.map → reducer-C0cHDjmv.esm.js.map} +1 -1
  65. package/dist/chunks/{shareSlice-D8QQItpw.js → shareSlice-BHlSQRKw.js} +2 -2
  66. package/dist/chunks/{shareSlice-D8QQItpw.js.map → shareSlice-BHlSQRKw.js.map} +1 -1
  67. package/dist/chunks/{shareSlice-DtNEq6Sr.esm.js → shareSlice-DvnaG9GO.esm.js} +2 -2
  68. package/dist/chunks/{shareSlice-DtNEq6Sr.esm.js.map → shareSlice-DvnaG9GO.esm.js.map} +1 -1
  69. package/dist/chunks/{sidebar-CGU3tdez.esm.js → sidebar-B6-JNM4K.esm.js} +5 -5
  70. package/dist/chunks/{sidebar-CGU3tdez.esm.js.map → sidebar-B6-JNM4K.esm.js.map} +1 -1
  71. package/dist/chunks/{sidebar-CobitAdp.js → sidebar-CBzmUNFw.js} +5 -5
  72. package/dist/chunks/{sidebar-CobitAdp.js.map → sidebar-CBzmUNFw.js.map} +1 -1
  73. package/dist/chunks/{sidebarScreen-R_SLQJpq.esm.js → sidebarScreen-C7gUqSYZ.esm.js} +5 -5
  74. package/dist/chunks/{sidebarScreen-R_SLQJpq.esm.js.map → sidebarScreen-C7gUqSYZ.esm.js.map} +1 -1
  75. package/dist/chunks/{sidebarScreen-Kh58mSpF.js → sidebarScreen-vIzHgQxd.js} +5 -5
  76. package/dist/chunks/{sidebarScreen-Kh58mSpF.js.map → sidebarScreen-vIzHgQxd.js.map} +1 -1
  77. package/dist/chunks/{store-BlAfdMng.js → store-6mckWhh4.js} +3 -3
  78. package/dist/chunks/{store-BlAfdMng.js.map → store-6mckWhh4.js.map} +1 -1
  79. package/dist/chunks/{store-CKCweEtz.esm.js → store-giqheYvw.esm.js} +3 -3
  80. package/dist/chunks/{store-CKCweEtz.esm.js.map → store-giqheYvw.esm.js.map} +1 -1
  81. package/dist/chunks/{tick-B4IAsV4W.js → tick-COMAwRR1.js} +18 -1
  82. package/dist/chunks/tick-COMAwRR1.js.map +1 -0
  83. package/dist/chunks/{tick-DUuDXLjB.esm.js → tick-DaxkNl7E.esm.js} +18 -1
  84. package/dist/chunks/tick-DaxkNl7E.esm.js.map +1 -0
  85. package/dist/chunks/{translations-CURTcJu7.esm.js → translations-DiE6kTBI.esm.js} +2 -2
  86. package/dist/chunks/{translations-CURTcJu7.esm.js.map → translations-DiE6kTBI.esm.js.map} +1 -1
  87. package/dist/chunks/{translations-B5xv1gxS.js → translations-vAZ7RIc7.js} +2 -2
  88. package/dist/chunks/{translations-B5xv1gxS.js.map → translations-vAZ7RIc7.js.map} +1 -1
  89. package/dist/chunks/{uom-field-wrapper-Dke2cTpR.esm.js → uom-field-wrapper-BnjRsGw2.esm.js} +16 -16
  90. package/dist/chunks/{uom-field-wrapper-Dke2cTpR.esm.js.map → uom-field-wrapper-BnjRsGw2.esm.js.map} +1 -1
  91. package/dist/chunks/{uom-field-wrapper-BAFOTp35.js → uom-field-wrapper-aR0Kqbm9.js} +17 -17
  92. package/dist/chunks/{uom-field-wrapper-BAFOTp35.js.map → uom-field-wrapper-aR0Kqbm9.js.map} +1 -1
  93. package/dist/chunks/{useAddressContact-DRv6rxkI.js → useAddressContact-3jZsdmGS.js} +6 -6
  94. package/dist/chunks/{useAddressContact-DRv6rxkI.js.map → useAddressContact-3jZsdmGS.js.map} +1 -1
  95. package/dist/chunks/{useAddressContact-jJ8XlmC_.esm.js → useAddressContact-VUXo0xxq.esm.js} +6 -6
  96. package/dist/chunks/{useAddressContact-jJ8XlmC_.esm.js.map → useAddressContact-VUXo0xxq.esm.js.map} +1 -1
  97. package/dist/chunks/{useAuth-DtiC6c_b.js → useAuth-BNR7N60-.js} +2 -2
  98. package/dist/chunks/useAuth-BNR7N60-.js.map +1 -0
  99. package/dist/chunks/{useAuth-DnwuL4k3.esm.js → useAuth-b1FMAFmO.esm.js} +2 -2
  100. package/dist/chunks/useAuth-b1FMAFmO.esm.js.map +1 -0
  101. package/dist/chunks/{useLangauge-C_Z9sEw7.js → useLangauge-DsEM05Ll.js} +2 -2
  102. package/dist/chunks/{useLangauge-C_Z9sEw7.js.map → useLangauge-DsEM05Ll.js.map} +1 -1
  103. package/dist/chunks/{useLangauge-P-Sc0U-O.esm.js → useLangauge-dxTIlPe-.esm.js} +2 -2
  104. package/dist/chunks/{useLangauge-P-Sc0U-O.esm.js.map → useLangauge-dxTIlPe-.esm.js.map} +1 -1
  105. package/dist/components/header/components/index.d.ts +1 -0
  106. package/dist/components/header/components/language-switch/index.d.ts +2 -0
  107. package/dist/components/header/components/language-switch/language-switch.d.ts +2 -0
  108. package/dist/components/index.esm.js +34 -34
  109. package/dist/components/index.js +18 -18
  110. package/dist/components/providers/ERPUIProvider.d.ts +1 -0
  111. package/dist/contexts/AuthContext.d.ts +1 -0
  112. package/dist/contexts/index.esm.js +3 -3
  113. package/dist/contexts/index.js +3 -3
  114. package/dist/hooks/index.esm.js +5 -5
  115. package/dist/hooks/index.js +5 -5
  116. package/dist/icons/index.esm.js +26 -26
  117. package/dist/icons/index.js +8 -8
  118. package/dist/index.esm.js +58 -58
  119. package/dist/index.js +32 -32
  120. package/dist/layout/index.esm.js +2 -2
  121. package/dist/layout/index.js +2 -2
  122. package/dist/redux/index.esm.js +4 -4
  123. package/dist/redux/index.js +4 -4
  124. package/dist/src/components/header/components/index.d.ts +1 -0
  125. package/dist/src/components/header/components/language-switch/index.d.ts +2 -0
  126. package/dist/src/components/header/components/language-switch/language-switch.d.ts +2 -0
  127. package/dist/src/components/providers/ERPUIProvider.d.ts +1 -0
  128. package/dist/src/contexts/AuthContext.d.ts +1 -0
  129. package/dist/style.css +43 -0
  130. package/dist/utils/index.esm.js +7 -7
  131. package/dist/utils/index.js +6 -6
  132. package/dist/views/index.esm.js +8 -8
  133. package/dist/views/index.js +7 -7
  134. package/package.json +4 -3
  135. package/dist/chunks/ERPUIProvider-BPpcQgND.js.map +0 -1
  136. package/dist/chunks/appbar-Bf_GaMVY.js.map +0 -1
  137. package/dist/chunks/appbar-DDijzrAm.esm.js.map +0 -1
  138. package/dist/chunks/radio-button-BYtmY0l-.js.map +0 -1
  139. package/dist/chunks/radio-button-wgwiOmaZ.esm.js.map +0 -1
  140. package/dist/chunks/tick-B4IAsV4W.js.map +0 -1
  141. package/dist/chunks/tick-DUuDXLjB.esm.js.map +0 -1
  142. package/dist/chunks/useAuth-DnwuL4k3.esm.js.map +0 -1
  143. package/dist/chunks/useAuth-DtiC6c_b.js.map +0 -1
@@ -2,13 +2,13 @@ import { j as jsxRuntimeExports } from "./jsx-runtime-ClFauRgV.esm.js";
2
2
  import * as React from "react";
3
3
  import React__default, { useState, useRef, useCallback, useEffect, useMemo, memo, isValidElement, cloneElement, Children } from "react";
4
4
  import { marked } from "marked";
5
- import { e as useForkRef, u as useAuth, r as requireCreateSvgIcon, T as Typography$1, f as useTimeout, j as useIsFocusVisible, k as useEventCallback, l as ownerDocument, o as ownerWindow, d as useEnhancedEffect, s as setRef, m as createChainedFunction, p as isMuiElement, h as debounce$1, i as default_1$6, g as generateRouteWithId } from "./useAuth-DnwuL4k3.esm.js";
5
+ import { e as useForkRef, u as useAuth, r as requireCreateSvgIcon, T as Typography$1, f as useTimeout, j as useIsFocusVisible, k as useEventCallback, l as ownerDocument, o as ownerWindow, d as useEnhancedEffect, s as setRef, m as createChainedFunction, p as isMuiElement, h as debounce$1, i as default_1$6, g as generateRouteWithId } from "./useAuth-b1FMAFmO.esm.js";
6
6
  import { b as getApiConfigSafe, g as getApiConfig } from "./api-config-GOys-syK.esm.js";
7
- import { at as getToken, b0 as getV1DepartmentsId, aK as removeSeriesFromTitle, aa as getErrorMessage, aX as formatText, q as convertToUnderscore } from "./common-D8YIf-p0.esm.js";
7
+ import { at as getToken, b0 as getV1DepartmentsId, aK as removeSeriesFromTitle, aa as getErrorMessage, aX as formatText, q as convertToUnderscore } from "./common-BVfS06ca.esm.js";
8
8
  import { aN as setAiFeatureBaseUrl, bh as uploadDocument, bi as getDocumentStatus, bj as streamV1CopilotChat, bk as startV1CopilotAgent, bl as formAssistV1Copilot, bm as resetV1CopilotSession, bn as getV1ChartOfAccountId, bo as getV1TaxCodeId, bp as getV1InventoryItemsId, aC as getV1Uom, aV as getV1PartiesId, bq as getV1PaymentTermsId, br as getV1CompanyId, bs as getV1CurrencyId, aa as getV1LocationsStates, bt as getV1WarehouseLocationId, bu as postV1AiFeatureSearchQuery, bv as getV1Notification, bw as getV1NotificationMarkAllAsRead, bx as patchV1NotificationMarkAsReadId } from "./api-z4kM0HGD.esm.js";
9
9
  import { Add, OpenInFullRounded, Close, UploadFileRounded, DeleteOutlineRounded, ArrowUpwardRounded, PictureAsPdfRounded, CloudUploadRounded, CheckCircleRounded, ErrorRounded, HourglassBottomRounded, Person, CheckCircle, Warning, Email, Assignment, HourglassEmpty, Cancel, AccountBalance } from "@mui/icons-material";
10
10
  import { B as Button } from "./button-CiFUSruA.esm.js";
11
- import { S as Save, b as SearchStatus, a as Search, T as Tick, E as EyeOff } from "./tick-DUuDXLjB.esm.js";
11
+ import { S as Save, b as SearchStatus, a as Search, A as ArrowDown, T as Tick, E as EyeOff } from "./tick-DaxkNl7E.esm.js";
12
12
  import { P as PropTypes, _ as _extends, e as _objectWithoutPropertiesLoose, x as styled, v as styleFunctionSx, T as THEME_ID, d as defaultTheme$1, k as interopRequireDefaultExports, g as generateUtilityClass, u as useDefaultProps, j as capitalize, f as alpha_1, C as ClassNameGenerator, a as createTheme } from "./identifier-0SZUhw_A.esm.js";
13
13
  import { debounce } from "lodash";
14
14
  import { styled as styled$1, Dialog, TextField as TextField$1, InputAdornment, IconButton, Tooltip as Tooltip$1, DialogTitle, Box as Box$1, Divider as Divider$1, DialogContent, DialogActions, CircularProgress, Snackbar, Alert, Avatar as Avatar$1, SvgIcon, Badge, Menu as Menu$1, Skeleton, MenuItem as MenuItem$1, ListItemAvatar, ListItemText as ListItemText$1 } from "@mui/material";
@@ -24,12 +24,12 @@ import { u as useTheme$1 } from "./CssBaseline-DD305XvW.esm.js";
24
24
  import * as ReactDOM from "react-dom";
25
25
  import ReactDOM__default from "react-dom";
26
26
  import { enqueueSnackbar } from "notistack";
27
- import { u as useLanguage } from "./useLangauge-P-Sc0U-O.esm.js";
27
+ import { u as useLanguage } from "./useLangauge-dxTIlPe-.esm.js";
28
+ import { keyframes } from "@emotion/react";
28
29
  import { Controller, appendErrors, useForm } from "react-hook-form";
29
30
  import { validateFieldsNatively, toNestErrors } from "@hookform/resolvers";
30
31
  import * as Yup from "yup";
31
32
  import { E as Eye } from "./eye-PU88lR34.esm.js";
32
- import { keyframes } from "@emotion/react";
33
33
  function chainPropTypes(propType1, propType2) {
34
34
  if (process.env.NODE_ENV === "production") {
35
35
  return () => null;
@@ -8848,6 +8848,104 @@ function GlobalSearch() {
8848
8848
  ] })
8849
8849
  ] });
8850
8850
  }
8851
+ const createEnglishFallback = () => ({
8852
+ code: "en",
8853
+ label: "English",
8854
+ direction: "ltr"
8855
+ });
8856
+ function LanguageSwitch() {
8857
+ const { t } = useTranslation();
8858
+ const {
8859
+ languages,
8860
+ currentLanguage,
8861
+ changeLanguage,
8862
+ isLoading,
8863
+ error: languageContextError,
8864
+ isFallbackActive,
8865
+ fetchLanguages
8866
+ } = useLanguage();
8867
+ const [localLanguageError, setLocalLanguageError] = useState(null);
8868
+ const [anchorEl, setAnchorEl] = useState(null);
8869
+ const isMenuOpen = Boolean(anchorEl);
8870
+ const handleMenuOpen = (event) => setAnchorEl(event.currentTarget);
8871
+ const handleMenuClose = () => setAnchorEl(null);
8872
+ const getLanguagesForDropdown = () => {
8873
+ if (!languages || languages.length === 0) {
8874
+ return [createEnglishFallback()];
8875
+ }
8876
+ const hasEnglish = languages.some((lang) => lang.code === "en");
8877
+ if (!hasEnglish) {
8878
+ return [createEnglishFallback(), ...languages];
8879
+ }
8880
+ return languages;
8881
+ };
8882
+ const getCurrentLanguageDisplay = () => {
8883
+ if (!currentLanguage) return "EN";
8884
+ return currentLanguage.code.toUpperCase();
8885
+ };
8886
+ const onChangeLang = (lang_code) => {
8887
+ setLocalLanguageError(null);
8888
+ handleMenuClose();
8889
+ if (!languages || languages.length === 0) {
8890
+ const errorMsg = t("header.language_not_available") || "Languages not available";
8891
+ setLocalLanguageError(errorMsg);
8892
+ return;
8893
+ }
8894
+ const languageExists = languages.some((lang) => lang.code === lang_code);
8895
+ if (languageExists) {
8896
+ try {
8897
+ changeLanguage(lang_code);
8898
+ } catch (error) {
8899
+ setLocalLanguageError(error instanceof Error ? error.message : "Failed to change language");
8900
+ }
8901
+ } else {
8902
+ const errorMsg = t("header.language_not_found", { language: lang_code }) || `Selected language "${lang_code}" is not available`;
8903
+ setLocalLanguageError(errorMsg);
8904
+ }
8905
+ };
8906
+ const handleRetryLanguages = async () => {
8907
+ setLocalLanguageError(null);
8908
+ try {
8909
+ await fetchLanguages();
8910
+ } catch (error) {
8911
+ setLocalLanguageError("Failed to reload languages");
8912
+ }
8913
+ };
8914
+ const availableLanguages = getLanguagesForDropdown();
8915
+ if (isLoading) {
8916
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Box, { className: "language-chip language-chip-loading", children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: t("header.language_loading") || "Loading..." }) });
8917
+ }
8918
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(Box, { className: "language-selector-wrapper", children: [
8919
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(
8920
+ "button",
8921
+ {
8922
+ className: `hdr-lang-btn ${isFallbackActive || languageContextError ? "language-fallback-active" : ""}`,
8923
+ type: "button",
8924
+ onClick: handleMenuOpen,
8925
+ children: [
8926
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "lang-text", children: getCurrentLanguageDisplay() }),
8927
+ /* @__PURE__ */ jsxRuntimeExports.jsx(ArrowDown, { width: 14, height: 14 })
8928
+ ]
8929
+ }
8930
+ ),
8931
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(
8932
+ Menu,
8933
+ {
8934
+ className: "main-profile-menu",
8935
+ anchorEl,
8936
+ open: isMenuOpen,
8937
+ onClose: handleMenuClose,
8938
+ anchorOrigin: { vertical: "bottom", horizontal: "right" },
8939
+ transformOrigin: { vertical: "top", horizontal: "right" },
8940
+ children: [
8941
+ availableLanguages.map(({ code, label }) => /* @__PURE__ */ jsxRuntimeExports.jsx(MenuItem, { onClick: () => onChangeLang(code), children: /* @__PURE__ */ jsxRuntimeExports.jsx(Typography$1, { type: "s4", weight: "medium", color: (currentLanguage == null ? void 0 : currentLanguage.code) === code ? "theme.primary.1000" : "theme.secondary.1000", children: label }) }, code)),
8942
+ languageContextError && /* @__PURE__ */ jsxRuntimeExports.jsx(MenuItem, { onClick: handleRetryLanguages, style: { fontStyle: "italic" }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Typography$1, { type: "s4", weight: "medium", color: "theme.secondary.500", children: t("header.retry_languages") || "Retry loading languages" }) })
8943
+ ]
8944
+ }
8945
+ ),
8946
+ localLanguageError && /* @__PURE__ */ jsxRuntimeExports.jsx(Typography$1, { type: "s5", color: "theme.error.600", style: { position: "absolute", bottom: "-15px", whiteSpace: "nowrap" }, children: localLanguageError })
8947
+ ] });
8948
+ }
8851
8949
  const getNotificationUrl = (data) => {
8852
8950
  var _a;
8853
8951
  const { moduleName = "", moduleId = "", notificationData = {} } = data;
@@ -9709,6 +9807,7 @@ function Header(props) {
9709
9807
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { flex: 1 } }),
9710
9808
  /* @__PURE__ */ jsxRuntimeExports.jsx(GlobalSearch, {}),
9711
9809
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "notif-wrap", children: /* @__PURE__ */ jsxRuntimeExports.jsx(NotificationMenu, {}) }),
9810
+ /* @__PURE__ */ jsxRuntimeExports.jsx(LanguageSwitch, {}),
9712
9811
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "v-divider" }),
9713
9812
  /* @__PURE__ */ jsxRuntimeExports.jsx(UserMenu, {})
9714
9813
  ] });
@@ -9824,4 +9923,4 @@ export {
9824
9923
  List as y,
9825
9924
  Typography as z
9826
9925
  };
9827
- //# sourceMappingURL=appbar-DDijzrAm.esm.js.map
9926
+ //# sourceMappingURL=appbar-7puZelDZ.esm.js.map