@owp/core 2.5.4 → 2.5.5

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 (149) hide show
  1. package/dist/_virtual/index10.js +2 -2
  2. package/dist/_virtual/index11.js +2 -2
  3. package/dist/_virtual/index12.js +2 -2
  4. package/dist/_virtual/index13.js +2 -2
  5. package/dist/_virtual/index15.js +2 -2
  6. package/dist/_virtual/index16.js +4 -4
  7. package/dist/_virtual/index17.js +4 -4
  8. package/dist/_virtual/index18.js +4 -4
  9. package/dist/_virtual/index19.js +4 -4
  10. package/dist/_virtual/index5.js +2 -2
  11. package/dist/components/OwpPageSkeleton/OwpPageSkeleton.js +4 -4
  12. package/dist/components/OwpTable/OwpDataTable.js +293 -327
  13. package/dist/components/OwpTable/OwpDataTable.js.map +1 -1
  14. package/dist/components/OwpTable/OwpTable.js +102 -117
  15. package/dist/components/OwpTable/OwpTable.js.map +1 -1
  16. package/dist/components/OwpTable/internal/defaultTableStyle.js +50 -0
  17. package/dist/components/OwpTable/internal/defaultTableStyle.js.map +1 -0
  18. package/dist/components/OwpTreeGrid/OwpTreeGrid.js +47 -45
  19. package/dist/components/OwpTreeGrid/OwpTreeGrid.js.map +1 -1
  20. package/dist/components/OwpTreeGrid/internal/treeGridRuntime.js +179 -161
  21. package/dist/components/OwpTreeGrid/internal/treeGridRuntime.js.map +1 -1
  22. package/dist/contexts/OwpAppProvider.js.map +1 -1
  23. package/dist/features/themePreview/components/ThemePreviewCanvas.js +492 -0
  24. package/dist/features/themePreview/components/ThemePreviewCanvas.js.map +1 -0
  25. package/dist/features/themePreview/components/ThemePreviewCanvasSections.js +678 -0
  26. package/dist/features/themePreview/components/ThemePreviewCanvasSections.js.map +1 -0
  27. package/dist/features/themePreview/components/ThemePreviewColorField.js +301 -0
  28. package/dist/features/themePreview/components/ThemePreviewColorField.js.map +1 -0
  29. package/dist/features/themePreview/components/ThemePreviewControls.js +306 -0
  30. package/dist/features/themePreview/components/ThemePreviewControls.js.map +1 -0
  31. package/dist/features/themePreview/components/themePreviewCanvas.icons.js +17 -0
  32. package/dist/features/themePreview/components/themePreviewCanvas.icons.js.map +1 -0
  33. package/dist/features/themePreview/components/themePreviewCanvas.shared.js +296 -0
  34. package/dist/features/themePreview/components/themePreviewCanvas.shared.js.map +1 -0
  35. package/dist/features/themePreview/configs/grid.js +45 -0
  36. package/dist/features/themePreview/configs/grid.js.map +1 -0
  37. package/dist/features/themePreview/configs/presets.js +1106 -0
  38. package/dist/features/themePreview/configs/presets.js.map +1 -0
  39. package/dist/features/themePreview/configs/previewStorage.js +93 -0
  40. package/dist/features/themePreview/configs/previewStorage.js.map +1 -0
  41. package/dist/features/themePreview/configs/settings.js +148 -0
  42. package/dist/features/themePreview/configs/settings.js.map +1 -0
  43. package/dist/features/themePreview/configs/snackbar.js +39 -0
  44. package/dist/features/themePreview/configs/snackbar.js.map +1 -0
  45. package/dist/features/themePreview/configs/surface.js +10 -0
  46. package/dist/features/themePreview/configs/surface.js.map +1 -0
  47. package/dist/features/themePreview/configs/table.js +30 -0
  48. package/dist/features/themePreview/configs/table.js.map +1 -0
  49. package/dist/features/themePreview/defs/ThemePreviewGridDef.xml.js +43 -0
  50. package/dist/features/themePreview/defs/ThemePreviewGridDef.xml.js.map +1 -0
  51. package/dist/features/themePreview/defs/ThemePreviewReadonlyGridDef.xml.js +43 -0
  52. package/dist/features/themePreview/defs/ThemePreviewReadonlyGridDef.xml.js.map +1 -0
  53. package/dist/features/themePreview/dialogs/ThemePreviewDialog.js +429 -0
  54. package/dist/features/themePreview/dialogs/ThemePreviewDialog.js.map +1 -0
  55. package/dist/features/themePreview/hooks/useThemePreview.js +235 -0
  56. package/dist/features/themePreview/hooks/useThemePreview.js.map +1 -0
  57. package/dist/features/themePreview/utils/color.js +79 -0
  58. package/dist/features/themePreview/utils/color.js.map +1 -0
  59. package/dist/features/themePreview/utils/themePreviewDefinitions.js +526 -0
  60. package/dist/features/themePreview/utils/themePreviewDefinitions.js.map +1 -0
  61. package/dist/features/themePreview/utils/themePreviewExport.js +111 -0
  62. package/dist/features/themePreview/utils/themePreviewExport.js.map +1 -0
  63. package/dist/features/themePreview/utils/themePreviewSettings.js +211 -0
  64. package/dist/features/themePreview/utils/themePreviewSettings.js.map +1 -0
  65. package/dist/features/themePreview.js +75 -0
  66. package/dist/features/themePreview.js.map +1 -0
  67. package/dist/layout/components/logo/Logo.js +49 -45
  68. package/dist/layout/components/logo/Logo.js.map +1 -1
  69. package/dist/layout/components/toggles/NavigationSearchToggle.js +3 -3
  70. package/dist/layout/components/toggles/ThemePreviewToggle.js +51 -0
  71. package/dist/layout/components/toggles/ThemePreviewToggle.js.map +1 -0
  72. package/dist/layout/components/toolbar/ToolbarLayout.js +8 -6
  73. package/dist/layout/components/toolbar/ToolbarLayout.js.map +1 -1
  74. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/CheckCircleOutline.js +9 -0
  75. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/CheckCircleOutline.js.map +1 -0
  76. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/DownloadOutlined.js +9 -0
  77. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/DownloadOutlined.js.map +1 -0
  78. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/ErrorOutline.js +9 -0
  79. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/ErrorOutline.js.map +1 -0
  80. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/InfoOutlined.js +9 -0
  81. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/InfoOutlined.js.map +1 -0
  82. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/KeyboardArrowUpRounded.js +9 -0
  83. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/KeyboardArrowUpRounded.js.map +1 -0
  84. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/MenuRounded.js +9 -0
  85. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/MenuRounded.js.map +1 -0
  86. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/NotificationsNoneOutlined.js +9 -0
  87. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/NotificationsNoneOutlined.js.map +1 -0
  88. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/PaletteOutlined.js +25 -0
  89. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/PaletteOutlined.js.map +1 -0
  90. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/RestoreOutlined.js +9 -0
  91. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/RestoreOutlined.js.map +1 -0
  92. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/SaveOutlined.js +9 -0
  93. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/SaveOutlined.js.map +1 -0
  94. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/SpaceDashboardOutlined.js +9 -0
  95. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/SpaceDashboardOutlined.js.map +1 -0
  96. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/UploadFileOutlined.js +9 -0
  97. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/UploadFileOutlined.js.map +1 -0
  98. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/WarningAmberRounded.js +9 -0
  99. package/dist/node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/WarningAmberRounded.js.map +1 -0
  100. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE128/constants.js +1 -1
  101. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE128/index.js +1 -1
  102. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE39/index.js +1 -1
  103. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE93/index.js +1 -1
  104. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/EAN_UPC/index.js +1 -1
  105. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/GenericBarcode/index.js +1 -1
  106. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/ITF/constants.js +1 -1
  107. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/ITF/index.js +1 -1
  108. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/MSI/index.js +1 -1
  109. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/codabar/index.js +1 -1
  110. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/pharmacode/index.js +1 -1
  111. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/renderers/index.js +1 -1
  112. package/dist/node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/index.js +1 -1
  113. package/dist/node_modules/.pnpm/react-overlays@5.2.1_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/react-overlays/esm/Portal.js +1 -1
  114. package/dist/owp-app.css +1 -1
  115. package/dist/types/components/OwpTable/internal/defaultTableStyle.d.ts +49 -0
  116. package/dist/types/components/OwpTreeGrid/OwpTreeGrid.d.ts +2 -1
  117. package/dist/types/components/OwpTreeGrid/internal/treeGridRuntime.d.ts +6 -1
  118. package/dist/types/contexts/OwpAppProvider.d.ts +2 -0
  119. package/dist/types/features/themePreview/components/ThemePreviewCanvas.d.ts +8 -0
  120. package/dist/types/features/themePreview/components/ThemePreviewCanvasSections.d.ts +82 -0
  121. package/dist/types/features/themePreview/components/ThemePreviewColorField.d.ts +10 -0
  122. package/dist/types/features/themePreview/components/ThemePreviewControls.d.ts +18 -0
  123. package/dist/types/features/themePreview/components/index.d.ts +3 -0
  124. package/dist/types/features/themePreview/components/themePreviewCanvas.icons.d.ts +3 -0
  125. package/dist/types/features/themePreview/components/themePreviewCanvas.shared.d.ts +121 -0
  126. package/dist/types/features/themePreview/configs/grid.d.ts +41 -0
  127. package/dist/types/features/themePreview/configs/index.d.ts +7 -0
  128. package/dist/types/features/themePreview/configs/presets.d.ts +1153 -0
  129. package/dist/types/features/themePreview/configs/previewStorage.d.ts +34 -0
  130. package/dist/types/features/themePreview/configs/settings.d.ts +271 -0
  131. package/dist/types/features/themePreview/configs/snackbar.d.ts +43 -0
  132. package/dist/types/features/themePreview/configs/surface.d.ts +6 -0
  133. package/dist/types/features/themePreview/configs/table.d.ts +47 -0
  134. package/dist/types/features/themePreview/dialogs/ThemePreviewDialog.d.ts +3 -0
  135. package/dist/types/features/themePreview/dialogs/index.d.ts +1 -0
  136. package/dist/types/features/themePreview/hooks/index.d.ts +1 -0
  137. package/dist/types/features/themePreview/hooks/useThemePreview.d.ts +60 -0
  138. package/dist/types/features/themePreview/index.d.ts +6 -0
  139. package/dist/types/features/themePreview/types/index.d.ts +1 -0
  140. package/dist/types/features/themePreview/types/themePreview.d.ts +44 -0
  141. package/dist/types/features/themePreview/utils/color.d.ts +14 -0
  142. package/dist/types/features/themePreview/utils/index.d.ts +4 -0
  143. package/dist/types/features/themePreview/utils/themePreviewDefinitions.d.ts +10 -0
  144. package/dist/types/features/themePreview/utils/themePreviewExport.d.ts +1091 -0
  145. package/dist/types/features/themePreview/utils/themePreviewSettings.d.ts +54 -0
  146. package/dist/types/layout/components/toggles/ThemePreviewToggle.d.ts +5 -0
  147. package/features/themePreview.d.ts +3 -0
  148. package/features/themePreview.js +1 -0
  149. package/package.json +2 -1
@@ -0,0 +1,492 @@
1
+ var qe = Object.defineProperty;
2
+ var F = (p, I) => qe(p, "name", { value: I, configurable: !0 });
3
+ import { jsx as r, jsxs as c } from "../../../node_modules/.pnpm/@emotion_react@11.14.0_@types_react@19.2.14_react@19.2.4/node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js";
4
+ import { defaultSnackbarTheme as Je, defaultSnackbarProviderProps as H, snackbarVariantKeys as Qe } from "../configs/snackbar.js";
5
+ import { defaultTableTheme as Xe } from "../configs/table.js";
6
+ import er from "../../../node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/KeyboardArrowUpRounded.js";
7
+ import rr from "../../../node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/MenuRounded.js";
8
+ import we from "../../../node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/NavigateNext.js";
9
+ import or from "../../../node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/Search.js";
10
+ import ar from "../../../node_modules/.pnpm/@mui_icons-material@7.3.9_@mui_material@7.3.9_@emotion_react@11.14.0_@types_react@19.2._dc2be6bc014bebdac88a574e3e02c144/node_modules/@mui/icons-material/esm/SpaceDashboardOutlined.js";
11
+ import { Typography as i, CircularProgress as nr } from "@mui/material";
12
+ import { alpha as n, darken as tr } from "@mui/material/styles";
13
+ import cr from "dayjs";
14
+ import { closeSnackbar as ir } from "notistack";
15
+ import { useRef as lr, useMemo as t, useEffect as dr, Fragment as sr } from "react";
16
+ import { getPaletteValue as o, previewChromeBorder as $, getPreviewContrastColor as Pe, createThemePreviewVersionKey as h, gridPreviewBodyBackground as mr, gridPreviewBodyText as br, getThemePreviewStyleValue as ge, snackbarPreviewMessageByVariant as vr, getPreviewSectionOrder as hr, navbarPreviewItems as ur, themePreviewReadonlyTreeGridId as fr, themePreviewEditableTreeGridId as pr } from "./themePreviewCanvas.shared.js";
17
+ import { ThemePreviewTablesSection as xr, ThemePreviewGridSection as kr, ThemePreviewSearchHeaderSection as yr, ThemePreviewSnackbarsSection as wr, ThemePreviewButtonsSection as Pr, ThemePreviewGridPreviewTable as gr } from "./ThemePreviewCanvasSections.js";
18
+ import { snackbarPreviewIconByVariant as Sr } from "./themePreviewCanvas.icons.js";
19
+ import { merge as Se } from "../../../node_modules/.pnpm/es-toolkit@1.39.10/node_modules/es-toolkit/dist/compat/object/merge.js";
20
+ function Fr({
21
+ activeSection: p,
22
+ isLoading: I = !1,
23
+ settings: e
24
+ }) {
25
+ var fe, pe, xe, ke, ye;
26
+ const z = lr([]), K = !1, Y = t(
27
+ () => Se(
28
+ {},
29
+ Xe,
30
+ e.theme.main.table
31
+ ),
32
+ [e.theme.main.table]
33
+ ), d = e.theme.toolbar.palette.mode, U = o(e, "toolbar", "background.default"), Ce = o(e, "toolbar", "background.paper"), x = o(e, "toolbar", "text.primary"), Te = o(e, "toolbar", "divider"), k = o(e, "toolbar", "common.white"), Be = o(e, "toolbar", "common.black"), _ = n(k, d === "dark" ? 0.06 : 0.78), L = n(k, d === "dark" ? 0.1 : 0.62), Z = n(k, d === "dark" ? 0.05 : 0.54), s = e.theme.navbar.palette.mode, W = o(e, "navbar", "background.default"), j = o(e, "navbar", "divider") || $, m = o(e, "navbar", "text.primary"), q = o(e, "navbar", "text.secondary"), A = o(e, "navbar", "primary.main"), J = o(e, "navbar", "secondary.main"), Q = Pe(
34
+ W,
35
+ m || "#111827"
36
+ ), Ne = n(Q, s === "dark" ? 0.72 : 0.64), X = n(
37
+ A,
38
+ s === "dark" ? 0.2 : 0.12
39
+ ), ee = n(A, s === "dark" ? 0.42 : 0.28), He = A, re = q || n(m, s === "dark" ? 0.78 : 0.72), $e = n(J, s === "dark" ? 0.22 : 0.12), Ie = tr(W, s === "dark" ? 0.08 : 0.05), ze = q || n(m, s === "dark" ? 0.78 : 0.62), O = o(e, "main", "background.default"), y = o(e, "main", "background.paper"), oe = o(e, "main", "text.primary"), We = o(e, "main", "text.secondary"), w = o(e, "main", "primary.main"), ae = o(e, "main", "primary.contrastText"), P = o(e, "main", "secondary.main"), ne = o(e, "main", "secondary.contrastText"), g = o(e, "main", "success.main"), te = o(e, "main", "success.contrastText"), S = o(e, "main", "info.main"), ce = o(e, "main", "info.contrastText"), C = o(e, "main", "warning.main"), ie = o(e, "main", "warning.contrastText"), T = o(e, "main", "error.main"), le = o(e, "main", "error.contrastText"), b = e.theme.main.grid, B = h(b), N = h(e.theme.main.table), V = h({
40
+ palette: e.theme.main.palette ?? {},
41
+ table: e.theme.main.table ?? {}
42
+ }), je = `${pr}-${B}`, Ae = `${fr}-${B}`, de = "#586980", G = "#ffffff", se = "14px", me = "13px", be = ((fe = b == null ? void 0 : b.body) == null ? void 0 : fe.backgroundColor) ?? mr, ve = n(G, 0.22), he = n(br, 0.14), u = t(
43
+ () => ({
44
+ ...e,
45
+ theme: {
46
+ ...e.theme,
47
+ navbar: e.theme.main,
48
+ toolbar: e.theme.main
49
+ }
50
+ }),
51
+ [e]
52
+ ), D = h(
53
+ u.theme.main
54
+ ), M = t(
55
+ () => ({
56
+ owpSettings: {
57
+ current: u,
58
+ defaults: u,
59
+ initial: u
60
+ }
61
+ }),
62
+ [u]
63
+ ), R = cr().format("YYYY-MM-DD"), Oe = t(
64
+ () => `OWP-${R.replace(/-/g, "")}-001`,
65
+ [R]
66
+ ), f = t(
67
+ () => ({
68
+ backgroundColor: y,
69
+ border: `1px solid ${$}`
70
+ }),
71
+ [y]
72
+ ), Ve = t(
73
+ () => ({
74
+ backgroundColor: _,
75
+ borderColor: L,
76
+ boxShadow: `inset 0 1px 0 ${Z}`
77
+ }),
78
+ [_, L, Z]
79
+ ), Ge = t(
80
+ () => ({
81
+ backgroundColor: X,
82
+ borderColor: ee
83
+ }),
84
+ [X, ee]
85
+ ), De = t(
86
+ () => [
87
+ { label: "primary", color: w, contrastColor: ae },
88
+ { label: "secondary", color: P, contrastColor: ne },
89
+ { label: "info", color: S, contrastColor: ce },
90
+ { label: "warning", color: C, contrastColor: ie },
91
+ { label: "error", color: T, contrastColor: le },
92
+ { label: "success", color: g, contrastColor: te }
93
+ ].map((a) => ({
94
+ ...a,
95
+ previewContrastColor: a.label === "error" || a.label === "success" ? Pe(a.color, a.contrastColor) : a.contrastColor
96
+ })),
97
+ [
98
+ T,
99
+ le,
100
+ S,
101
+ ce,
102
+ w,
103
+ ae,
104
+ P,
105
+ ne,
106
+ g,
107
+ te,
108
+ C,
109
+ ie
110
+ ]
111
+ ), ue = e.snackbar ?? Je, v = t(
112
+ () => Se({}, H, e.snackbarProviderProps),
113
+ [e.snackbarProviderProps]
114
+ ), Me = ((pe = v.anchorOrigin) == null ? void 0 : pe.horizontal) ?? H.anchorOrigin.horizontal, Re = ((xe = v.anchorOrigin) == null ? void 0 : xe.vertical) ?? H.anchorOrigin.vertical, Ee = v.maxSnack ?? H.maxSnack, Fe = ge((ke = v.style) == null ? void 0 : ke.fontSize), Ke = ge(
115
+ (ye = v.style) == null ? void 0 : ye.lineHeight
116
+ ), Ye = t(
117
+ () => Qe.map((a) => {
118
+ const l = ue[a];
119
+ return {
120
+ actionHoverColor: n(
121
+ l.color,
122
+ a === "default" ? 0.18 : 0.16
123
+ ),
124
+ backgroundColor: l.backgroundColor,
125
+ color: l.color,
126
+ icon: Sr[a],
127
+ key: a,
128
+ message: vr[a]
129
+ };
130
+ }),
131
+ [ue]
132
+ ), Ue = t(
133
+ () => hr(p),
134
+ [p]
135
+ ), _e = t(
136
+ () => ({
137
+ buttons: h({
138
+ error: T,
139
+ info: S,
140
+ primary: w,
141
+ secondary: P,
142
+ success: g,
143
+ warning: C
144
+ }),
145
+ grid: `${D}-${B}`,
146
+ searchHeader: V,
147
+ snackbars: h({
148
+ provider: e.snackbarProviderProps,
149
+ snackbar: e.snackbar
150
+ }),
151
+ tables: N
152
+ }),
153
+ [
154
+ B,
155
+ T,
156
+ S,
157
+ w,
158
+ P,
159
+ g,
160
+ D,
161
+ C,
162
+ V,
163
+ e.snackbar,
164
+ e.snackbarProviderProps,
165
+ N
166
+ ]
167
+ ), Le = t(
168
+ () => /* @__PURE__ */ r(
169
+ gr,
170
+ {
171
+ gridBodyBorder: he,
172
+ layoutPreviewGridCellBackground: be,
173
+ layoutPreviewGridCellFontSize: me,
174
+ layoutPreviewGridHeaderBackground: de,
175
+ layoutPreviewGridHeaderBorder: ve,
176
+ layoutPreviewGridHeaderColor: G,
177
+ layoutPreviewGridHeaderFontSize: se
178
+ }
179
+ ),
180
+ [
181
+ he,
182
+ be,
183
+ me,
184
+ de,
185
+ ve,
186
+ G,
187
+ se
188
+ ]
189
+ );
190
+ dr(() => () => {
191
+ z.current.forEach((a) => {
192
+ ir(a);
193
+ }), z.current = [];
194
+ }, []);
195
+ const Ze = /* @__PURE__ */ F((a) => {
196
+ var l;
197
+ switch (a) {
198
+ case "buttons":
199
+ return /* @__PURE__ */ r(
200
+ Pr,
201
+ {
202
+ buttonPreviewItems: De,
203
+ mainTextSecondary: We,
204
+ previewSectionCardSx: f
205
+ }
206
+ );
207
+ case "snackbars":
208
+ return /* @__PURE__ */ r(
209
+ wr,
210
+ {
211
+ previewSectionCardSx: f,
212
+ previewSnackbarKeysRef: z,
213
+ snackbarAnchorOrigin: v.anchorOrigin,
214
+ snackbarAutoHideDuration: v.autoHideDuration,
215
+ snackbarPreviewAnchorHorizontal: Me,
216
+ snackbarPreviewAnchorVertical: Re,
217
+ snackbarPreviewFontSize: Fe,
218
+ snackbarPreviewItems: Ye,
219
+ snackbarPreviewLineHeight: Ke,
220
+ snackbarPreviewMaxSnack: Ee
221
+ }
222
+ );
223
+ case "searchHeader":
224
+ return /* @__PURE__ */ r(
225
+ yr,
226
+ {
227
+ gridPreviewTable: Le,
228
+ mainBackground: O,
229
+ mainPaper: y,
230
+ mainText: oe,
231
+ mainThemePreviewStoreState: M,
232
+ previewSectionCardSx: f,
233
+ searchHeaderPreviewDate: R,
234
+ searchHeaderPreviewNumber: Oe,
235
+ searchHeaderPreviewVersionKey: V,
236
+ tablePreviewCanTableRadiusZero: K,
237
+ tableTheme: Y,
238
+ tableThemePreviewVersionKey: N
239
+ }
240
+ );
241
+ case "grid":
242
+ return /* @__PURE__ */ r(
243
+ kr,
244
+ {
245
+ editableThemePreviewGridId: je,
246
+ mainGridChangedBackgroundColor: (l = b == null ? void 0 : b.changed) == null ? void 0 : l.backgroundColor,
247
+ mainThemePreviewStoreKey: D,
248
+ mainThemePreviewStoreState: M,
249
+ previewSectionCardSx: f,
250
+ readonlyThemePreviewGridId: Ae
251
+ }
252
+ );
253
+ case "tables":
254
+ return /* @__PURE__ */ r(
255
+ xr,
256
+ {
257
+ mainThemePreviewStoreState: M,
258
+ previewSectionCardSx: f,
259
+ tablePreviewCanTableRadiusZero: K,
260
+ tableTheme: Y,
261
+ tableThemePreviewVersionKey: N
262
+ }
263
+ );
264
+ default:
265
+ return null;
266
+ }
267
+ }, "renderPreviewSection");
268
+ return /* @__PURE__ */ r("div", { className: "flex h-full min-h-0 flex-col", children: /* @__PURE__ */ c(
269
+ "div",
270
+ {
271
+ className: "grid min-h-0 flex-1 grid-cols-[224px_minmax(0,1fr)] grid-rows-[76px_minmax(0,1fr)] overflow-hidden rounded-lg border border-solid",
272
+ style: {
273
+ backgroundColor: O,
274
+ borderColor: $
275
+ },
276
+ children: [
277
+ /* @__PURE__ */ c(
278
+ "div",
279
+ {
280
+ className: "col-span-2 relative flex items-center justify-between px-20",
281
+ style: {
282
+ backgroundColor: U,
283
+ backgroundImage: `linear-gradient(180deg, ${U} 0%, ${Ce} 100%)`,
284
+ borderBottom: `1px solid ${Te}`,
285
+ boxShadow: `inset 0 1px 0 ${n(k, d === "dark" ? 0.06 : 0.82)}, 0 4px 16px ${n(Be, d === "dark" ? 0.18 : 0.05)}`,
286
+ color: x
287
+ },
288
+ children: [
289
+ /* @__PURE__ */ r("div", { className: "flex items-center gap-12", children: /* @__PURE__ */ c("div", { className: "flex flex-col gap-2", children: [
290
+ /* @__PURE__ */ c(
291
+ "div",
292
+ {
293
+ className: "flex items-center gap-2",
294
+ style: {
295
+ color: n(x, d === "dark" ? 0.72 : 0.64)
296
+ },
297
+ children: [
298
+ /* @__PURE__ */ r(i, { variant: "caption", children: "OWP" }),
299
+ /* @__PURE__ */ r(we, { sx: { fontSize: 18 } }),
300
+ /* @__PURE__ */ r(i, { variant: "caption", children: "Theme Preview" })
301
+ ]
302
+ }
303
+ ),
304
+ /* @__PURE__ */ r(i, { variant: "subtitle1", fontWeight: 700, children: "Toolbar" })
305
+ ] }) }),
306
+ /* @__PURE__ */ r("div", { className: "pointer-events-none absolute left-1/2 top-1/2 flex w-full max-w-[520px] -translate-x-1/2 -translate-y-1/2 justify-center px-12 text-center", children: /* @__PURE__ */ c(
307
+ i,
308
+ {
309
+ variant: "body2",
310
+ sx: {
311
+ color: n(x, d === "dark" ? 0.92 : 0.84),
312
+ fontSize: 13,
313
+ fontWeight: 700
314
+ },
315
+ children: [
316
+ "로그인 화면 배경색은 Toolbar",
317
+ " ",
318
+ /* @__PURE__ */ r(we, { sx: { mx: 0.25, fontSize: 18, verticalAlign: "middle" } }),
319
+ " ",
320
+ "Background Default 색상을 따라갑니다."
321
+ ]
322
+ }
323
+ ) }),
324
+ /* @__PURE__ */ r("div", { className: "flex items-center gap-8", children: [or, ar].map((a, l) => /* @__PURE__ */ r(
325
+ "div",
326
+ {
327
+ className: "flex h-32 w-32 items-center justify-center rounded-[10px] border border-solid",
328
+ style: Ve,
329
+ children: /* @__PURE__ */ r(a, { sx: { color: x, fontSize: 18 } })
330
+ },
331
+ `${l}`
332
+ )) })
333
+ ]
334
+ }
335
+ ),
336
+ /* @__PURE__ */ c(
337
+ "div",
338
+ {
339
+ className: "flex min-h-0 flex-col",
340
+ style: {
341
+ backgroundColor: W,
342
+ borderRight: `1px solid ${j}`,
343
+ color: m
344
+ },
345
+ children: [
346
+ /* @__PURE__ */ c(
347
+ "div",
348
+ {
349
+ className: "flex items-center justify-between gap-8 px-16 py-14",
350
+ style: {
351
+ borderBottom: `1px solid ${j}`
352
+ },
353
+ children: [
354
+ /* @__PURE__ */ r("div", { className: "flex items-center gap-10", children: /* @__PURE__ */ c("div", { className: "flex flex-col gap-2", children: [
355
+ /* @__PURE__ */ r(
356
+ i,
357
+ {
358
+ variant: "subtitle2",
359
+ fontWeight: 700,
360
+ sx: {
361
+ color: Q
362
+ },
363
+ children: "Navbar"
364
+ }
365
+ ),
366
+ /* @__PURE__ */ r(i, { variant: "caption", sx: { color: Ne }, children: "Navigation" })
367
+ ] }) }),
368
+ /* @__PURE__ */ r(
369
+ "div",
370
+ {
371
+ className: "flex h-28 w-28 items-center justify-center rounded-[10px] border border-solid",
372
+ style: Ge,
373
+ children: /* @__PURE__ */ r(rr, { sx: { color: He, fontSize: 16 } })
374
+ }
375
+ )
376
+ ]
377
+ }
378
+ ),
379
+ /* @__PURE__ */ r("div", { className: "flex flex-1 flex-col gap-4 px-10 py-10", children: ur.map((a, l) => {
380
+ const E = l === 1;
381
+ return /* @__PURE__ */ r(
382
+ "div",
383
+ {
384
+ className: "rounded-lg px-12 py-10",
385
+ style: {
386
+ backgroundColor: E ? $e : "transparent",
387
+ color: E ? J : re
388
+ },
389
+ children: /* @__PURE__ */ r(i, { variant: "body2", fontWeight: E ? 700 : 500, children: a })
390
+ },
391
+ a
392
+ );
393
+ }) }),
394
+ /* @__PURE__ */ r(
395
+ "div",
396
+ {
397
+ className: "px-12 py-12",
398
+ style: {
399
+ borderTop: `1px solid ${j}`
400
+ },
401
+ children: /* @__PURE__ */ c(
402
+ "div",
403
+ {
404
+ className: "flex min-h-[56px] items-center gap-12 rounded-lg px-8 py-8",
405
+ style: { color: m },
406
+ children: [
407
+ /* @__PURE__ */ r(
408
+ "div",
409
+ {
410
+ className: "flex h-36 w-36 shrink-0 items-center justify-center rounded-full",
411
+ style: {
412
+ backgroundColor: Ie,
413
+ color: ze
414
+ },
415
+ children: /* @__PURE__ */ r(i, { sx: { fontSize: 18, fontWeight: 700, lineHeight: 1 }, children: "관" })
416
+ }
417
+ ),
418
+ /* @__PURE__ */ c("div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
419
+ /* @__PURE__ */ r(
420
+ i,
421
+ {
422
+ className: "truncate",
423
+ sx: {
424
+ color: m,
425
+ fontSize: 16,
426
+ fontWeight: 600,
427
+ letterSpacing: "-0.01em",
428
+ lineHeight: 1
429
+ },
430
+ children: "Impix"
431
+ }
432
+ ),
433
+ /* @__PURE__ */ r(
434
+ i,
435
+ {
436
+ className: "truncate",
437
+ sx: {
438
+ color: re,
439
+ fontSize: 14,
440
+ fontWeight: 500,
441
+ letterSpacing: "-0.02em",
442
+ lineHeight: 1.05
443
+ },
444
+ children: "Owp/Admin"
445
+ }
446
+ )
447
+ ] }),
448
+ /* @__PURE__ */ r("div", { className: "flex shrink-0 items-center justify-center", style: { color: m }, children: /* @__PURE__ */ r(er, { sx: { fontSize: 16 } }) })
449
+ ]
450
+ }
451
+ )
452
+ }
453
+ )
454
+ ]
455
+ }
456
+ ),
457
+ /* @__PURE__ */ c(
458
+ "div",
459
+ {
460
+ className: "relative flex min-h-0 flex-col gap-14 overflow-auto p-14",
461
+ style: {
462
+ backgroundColor: O,
463
+ color: oe
464
+ },
465
+ children: [
466
+ I ? /* @__PURE__ */ r(
467
+ "div",
468
+ {
469
+ className: "absolute inset-14 z-10 flex items-center justify-center rounded-lg",
470
+ style: {
471
+ backgroundColor: n(y, 0.88),
472
+ border: `1px solid ${$}`
473
+ },
474
+ children: /* @__PURE__ */ c("div", { className: "flex flex-col items-center gap-10", children: [
475
+ /* @__PURE__ */ r(nr, { color: "secondary", size: 34, thickness: 4.5 }),
476
+ /* @__PURE__ */ r(i, { variant: "body2", color: "text.secondary", fontWeight: 700, children: "로딩 중..." })
477
+ ] })
478
+ }
479
+ ) : null,
480
+ Ue.map((a) => /* @__PURE__ */ r(sr, { children: Ze(a) }, `${a}-${_e[a]}`))
481
+ ]
482
+ }
483
+ )
484
+ ]
485
+ }
486
+ ) });
487
+ }
488
+ F(Fr, "ThemePreviewCanvas");
489
+ export {
490
+ Fr as ThemePreviewCanvas
491
+ };
492
+ //# sourceMappingURL=ThemePreviewCanvas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemePreviewCanvas.js","sources":["../../../../src/features/themePreview/components/ThemePreviewCanvas.tsx"],"sourcesContent":["import {\n defaultSnackbarProviderProps,\n defaultSnackbarTheme,\n snackbarVariantKeys,\n} from '@/features/themePreview/configs/snackbar';\nimport {\n defaultTableTheme,\n type ThemePreviewTableConfigType,\n} from '@/features/themePreview/configs/table';\nimport KeyboardArrowUpRoundedIcon from '@mui/icons-material/KeyboardArrowUpRounded';\nimport MenuRoundedIcon from '@mui/icons-material/MenuRounded';\nimport NavigateNextIcon from '@mui/icons-material/NavigateNext';\nimport SearchIcon from '@mui/icons-material/Search';\nimport SpaceDashboardOutlinedIcon from '@mui/icons-material/SpaceDashboardOutlined';\nimport { CircularProgress, Typography } from '@mui/material';\nimport { alpha, darken } from '@mui/material/styles';\nimport dayjs from 'dayjs';\nimport { merge } from 'es-toolkit/compat';\nimport { closeSnackbar, type SnackbarKey } from 'notistack';\nimport { Fragment, useEffect, useMemo, useRef } from 'react';\nimport type {\n ThemePreviewSectionKey,\n ThemePreviewSettings,\n} from '../types';\nimport {\n createThemePreviewVersionKey,\n getPaletteValue,\n getPreviewContrastColor,\n getPreviewSectionOrder,\n getThemePreviewStyleValue,\n gridPreviewBodyBackground,\n gridPreviewBodyText,\n navbarPreviewItems,\n previewChromeBorder,\n snackbarPreviewMessageByVariant,\n themePreviewEditableTreeGridId,\n themePreviewReadonlyTreeGridId,\n} from './themePreviewCanvas.shared';\nimport {\n ThemePreviewButtonsSection,\n ThemePreviewGridPreviewTable,\n ThemePreviewGridSection,\n ThemePreviewSearchHeaderSection,\n ThemePreviewSnackbarsSection,\n ThemePreviewTablesSection,\n} from './ThemePreviewCanvasSections';\nimport { snackbarPreviewIconByVariant } from './themePreviewCanvas.icons';\n\ninterface ThemePreviewCanvasProps {\n activeSection: ThemePreviewSectionKey;\n isLoading?: boolean;\n settings: ThemePreviewSettings;\n}\n\nexport function ThemePreviewCanvas({\n activeSection,\n isLoading = false,\n settings,\n}: ThemePreviewCanvasProps) {\n const previewSnackbarKeysRef = useRef<SnackbarKey[]>([]);\n const tablePreviewCanTableRadiusZero = false;\n const tableTheme = useMemo(\n () =>\n merge(\n {},\n defaultTableTheme,\n settings.theme.main.table as ThemePreviewTableConfigType | undefined,\n ) as ThemePreviewTableConfigType,\n [settings.theme.main.table],\n );\n\n const toolbarMode = settings.theme.toolbar.palette.mode;\n const toolbarBackground = getPaletteValue(settings, 'toolbar', 'background.default');\n const toolbarPaper = getPaletteValue(settings, 'toolbar', 'background.paper');\n const toolbarText = getPaletteValue(settings, 'toolbar', 'text.primary');\n const toolbarDivider = getPaletteValue(settings, 'toolbar', 'divider');\n const toolbarWhite = getPaletteValue(settings, 'toolbar', 'common.white');\n const toolbarBlack = getPaletteValue(settings, 'toolbar', 'common.black');\n const toolbarButtonBackground = alpha(toolbarWhite, toolbarMode === 'dark' ? 0.06 : 0.78);\n const toolbarButtonBorder = alpha(toolbarWhite, toolbarMode === 'dark' ? 0.1 : 0.62);\n const toolbarButtonHighlight = alpha(toolbarWhite, toolbarMode === 'dark' ? 0.05 : 0.54);\n\n const navbarMode = settings.theme.navbar.palette.mode;\n const navbarBackground = getPaletteValue(settings, 'navbar', 'background.default');\n const navbarDivider = getPaletteValue(settings, 'navbar', 'divider') || previewChromeBorder;\n const navbarText = getPaletteValue(settings, 'navbar', 'text.primary');\n const navbarTextSecondary = getPaletteValue(settings, 'navbar', 'text.secondary');\n const navbarPrimary = getPaletteValue(settings, 'navbar', 'primary.main');\n const navbarSecondary = getPaletteValue(settings, 'navbar', 'secondary.main');\n const navbarHeaderForeground = getPreviewContrastColor(\n navbarBackground,\n navbarText || '#111827',\n );\n const navbarHeaderSecondary = alpha(navbarHeaderForeground, navbarMode === 'dark' ? 0.72 : 0.64);\n const navbarSurfaceButtonBackground = alpha(\n navbarPrimary,\n navbarMode === 'dark' ? 0.2 : 0.12,\n );\n const navbarSurfaceButtonBorder = alpha(navbarPrimary, navbarMode === 'dark' ? 0.42 : 0.28);\n const navbarHeaderIconColor = navbarPrimary;\n const navbarInactiveText =\n navbarTextSecondary || alpha(navbarText, navbarMode === 'dark' ? 0.78 : 0.72);\n const navbarActiveBackground = alpha(navbarSecondary, navbarMode === 'dark' ? 0.22 : 0.12);\n const navbarUserAvatarBackground = darken(navbarBackground, navbarMode === 'dark' ? 0.08 : 0.05);\n const navbarUserAvatarText =\n navbarTextSecondary || alpha(navbarText, navbarMode === 'dark' ? 0.78 : 0.62);\n\n const mainBackground = getPaletteValue(settings, 'main', 'background.default');\n const mainPaper = getPaletteValue(settings, 'main', 'background.paper');\n const mainText = getPaletteValue(settings, 'main', 'text.primary');\n const mainTextSecondary = getPaletteValue(settings, 'main', 'text.secondary');\n const mainPrimary = getPaletteValue(settings, 'main', 'primary.main');\n const mainPrimaryContrast = getPaletteValue(settings, 'main', 'primary.contrastText');\n const mainSecondary = getPaletteValue(settings, 'main', 'secondary.main');\n const mainSecondaryContrast = getPaletteValue(settings, 'main', 'secondary.contrastText');\n const mainSuccess = getPaletteValue(settings, 'main', 'success.main');\n const mainSuccessContrast = getPaletteValue(settings, 'main', 'success.contrastText');\n const mainInfo = getPaletteValue(settings, 'main', 'info.main');\n const mainInfoContrast = getPaletteValue(settings, 'main', 'info.contrastText');\n const mainWarning = getPaletteValue(settings, 'main', 'warning.main');\n const mainWarningContrast = getPaletteValue(settings, 'main', 'warning.contrastText');\n const mainError = getPaletteValue(settings, 'main', 'error.main');\n const mainErrorContrast = getPaletteValue(settings, 'main', 'error.contrastText');\n const mainGrid = settings.theme.main.grid;\n\n const gridThemePreviewVersionKey = createThemePreviewVersionKey(mainGrid);\n const tableThemePreviewVersionKey = createThemePreviewVersionKey(settings.theme.main.table);\n const searchHeaderPreviewVersionKey = createThemePreviewVersionKey({\n palette: settings.theme.main.palette ?? {},\n table: settings.theme.main.table ?? {},\n });\n\n const editableThemePreviewGridId = `${themePreviewEditableTreeGridId}-${gridThemePreviewVersionKey}`;\n const readonlyThemePreviewGridId = `${themePreviewReadonlyTreeGridId}-${gridThemePreviewVersionKey}`;\n const layoutPreviewGridHeaderBackground = '#586980';\n const layoutPreviewGridHeaderColor = '#ffffff';\n const layoutPreviewGridHeaderFontSize = '14px';\n const layoutPreviewGridCellFontSize = '13px';\n const layoutPreviewGridCellBackground =\n mainGrid?.body?.backgroundColor ?? gridPreviewBodyBackground;\n const layoutPreviewGridHeaderBorder = alpha(layoutPreviewGridHeaderColor, 0.22);\n const gridBodyBorder = alpha(gridPreviewBodyText, 0.14);\n\n const mainThemePreviewSettings = useMemo(\n () => ({\n ...settings,\n theme: {\n ...settings.theme,\n navbar: settings.theme.main,\n toolbar: settings.theme.main,\n },\n }),\n [settings],\n );\n const mainThemePreviewStoreKey = createThemePreviewVersionKey(\n mainThemePreviewSettings.theme.main,\n );\n const mainThemePreviewStoreState = useMemo(\n () =>\n ({\n owpSettings: {\n current: mainThemePreviewSettings,\n defaults: mainThemePreviewSettings,\n initial: mainThemePreviewSettings,\n },\n }) as const,\n [mainThemePreviewSettings],\n );\n\n const searchHeaderPreviewDate = dayjs().format('YYYY-MM-DD');\n const searchHeaderPreviewNumber = useMemo(\n () => `OWP-${searchHeaderPreviewDate.replace(/-/g, '')}-001`,\n [searchHeaderPreviewDate],\n );\n\n const previewSectionCardSx = useMemo(\n () => ({\n backgroundColor: mainPaper,\n border: `1px solid ${previewChromeBorder}`,\n }),\n [mainPaper],\n );\n const toolbarPreviewButtonStyle = useMemo(\n () => ({\n backgroundColor: toolbarButtonBackground,\n borderColor: toolbarButtonBorder,\n boxShadow: `inset 0 1px 0 ${toolbarButtonHighlight}`,\n }),\n [toolbarButtonBackground, toolbarButtonBorder, toolbarButtonHighlight],\n );\n const navbarPreviewButtonStyle = useMemo(\n () => ({\n backgroundColor: navbarSurfaceButtonBackground,\n borderColor: navbarSurfaceButtonBorder,\n }),\n [navbarSurfaceButtonBackground, navbarSurfaceButtonBorder],\n );\n const buttonPreviewItems = useMemo(\n () =>\n [\n { label: 'primary', color: mainPrimary, contrastColor: mainPrimaryContrast },\n { label: 'secondary', color: mainSecondary, contrastColor: mainSecondaryContrast },\n { label: 'info', color: mainInfo, contrastColor: mainInfoContrast },\n { label: 'warning', color: mainWarning, contrastColor: mainWarningContrast },\n { label: 'error', color: mainError, contrastColor: mainErrorContrast },\n { label: 'success', color: mainSuccess, contrastColor: mainSuccessContrast },\n ].map((item) => ({\n ...item,\n previewContrastColor:\n item.label === 'error' || item.label === 'success'\n ? getPreviewContrastColor(item.color, item.contrastColor)\n : item.contrastColor,\n })),\n [\n mainError,\n mainErrorContrast,\n mainInfo,\n mainInfoContrast,\n mainPrimary,\n mainPrimaryContrast,\n mainSecondary,\n mainSecondaryContrast,\n mainSuccess,\n mainSuccessContrast,\n mainWarning,\n mainWarningContrast,\n ],\n );\n\n const snackbarTheme = settings.snackbar ?? defaultSnackbarTheme;\n const snackbarProviderProps = useMemo(\n () => merge({}, defaultSnackbarProviderProps, settings.snackbarProviderProps),\n [settings.snackbarProviderProps],\n );\n const snackbarPreviewAnchorHorizontal =\n snackbarProviderProps.anchorOrigin?.horizontal ??\n defaultSnackbarProviderProps.anchorOrigin.horizontal;\n const snackbarPreviewAnchorVertical =\n snackbarProviderProps.anchorOrigin?.vertical ??\n defaultSnackbarProviderProps.anchorOrigin.vertical;\n const snackbarPreviewMaxSnack =\n snackbarProviderProps.maxSnack ?? defaultSnackbarProviderProps.maxSnack;\n const snackbarPreviewFontSize = getThemePreviewStyleValue(snackbarProviderProps.style?.fontSize);\n const snackbarPreviewLineHeight = getThemePreviewStyleValue(\n snackbarProviderProps.style?.lineHeight,\n );\n const snackbarPreviewItems = useMemo(\n () =>\n snackbarVariantKeys.map((variantKey) => {\n const snackbarVariantTheme = snackbarTheme[variantKey];\n\n return {\n actionHoverColor: alpha(\n snackbarVariantTheme.color,\n variantKey === 'default' ? 0.18 : 0.16,\n ),\n backgroundColor: snackbarVariantTheme.backgroundColor,\n color: snackbarVariantTheme.color,\n icon: snackbarPreviewIconByVariant[variantKey],\n key: variantKey,\n message: snackbarPreviewMessageByVariant[variantKey],\n };\n }),\n [snackbarTheme],\n );\n\n const orderedPreviewSectionKeys = useMemo(\n () => getPreviewSectionOrder(activeSection),\n [activeSection],\n );\n const previewSectionMountKeyBySection = useMemo(\n () =>\n ({\n buttons: createThemePreviewVersionKey({\n error: mainError,\n info: mainInfo,\n primary: mainPrimary,\n secondary: mainSecondary,\n success: mainSuccess,\n warning: mainWarning,\n }),\n grid: `${mainThemePreviewStoreKey}-${gridThemePreviewVersionKey}`,\n searchHeader: searchHeaderPreviewVersionKey,\n snackbars: createThemePreviewVersionKey({\n provider: settings.snackbarProviderProps,\n snackbar: settings.snackbar,\n }),\n tables: tableThemePreviewVersionKey,\n }) as const,\n [\n gridThemePreviewVersionKey,\n mainError,\n mainInfo,\n mainPrimary,\n mainSecondary,\n mainSuccess,\n mainThemePreviewStoreKey,\n mainWarning,\n searchHeaderPreviewVersionKey,\n settings.snackbar,\n settings.snackbarProviderProps,\n tableThemePreviewVersionKey,\n ],\n );\n const gridPreviewTable = useMemo(\n () => (\n <ThemePreviewGridPreviewTable\n gridBodyBorder={gridBodyBorder}\n layoutPreviewGridCellBackground={layoutPreviewGridCellBackground}\n layoutPreviewGridCellFontSize={layoutPreviewGridCellFontSize}\n layoutPreviewGridHeaderBackground={layoutPreviewGridHeaderBackground}\n layoutPreviewGridHeaderBorder={layoutPreviewGridHeaderBorder}\n layoutPreviewGridHeaderColor={layoutPreviewGridHeaderColor}\n layoutPreviewGridHeaderFontSize={layoutPreviewGridHeaderFontSize}\n />\n ),\n [\n gridBodyBorder,\n layoutPreviewGridCellBackground,\n layoutPreviewGridCellFontSize,\n layoutPreviewGridHeaderBackground,\n layoutPreviewGridHeaderBorder,\n layoutPreviewGridHeaderColor,\n layoutPreviewGridHeaderFontSize,\n ],\n );\n\n useEffect(() => {\n return () => {\n previewSnackbarKeysRef.current.forEach((snackbarKey) => {\n closeSnackbar(snackbarKey);\n });\n previewSnackbarKeysRef.current = [];\n };\n }, []);\n\n const renderPreviewSection = (sectionKey: keyof typeof previewSectionMountKeyBySection) => {\n switch (sectionKey) {\n case 'buttons':\n return (\n <ThemePreviewButtonsSection\n buttonPreviewItems={buttonPreviewItems}\n mainTextSecondary={mainTextSecondary}\n previewSectionCardSx={previewSectionCardSx}\n />\n );\n case 'snackbars':\n return (\n <ThemePreviewSnackbarsSection\n previewSectionCardSx={previewSectionCardSx}\n previewSnackbarKeysRef={previewSnackbarKeysRef}\n snackbarAnchorOrigin={snackbarProviderProps.anchorOrigin}\n snackbarAutoHideDuration={snackbarProviderProps.autoHideDuration}\n snackbarPreviewAnchorHorizontal={snackbarPreviewAnchorHorizontal}\n snackbarPreviewAnchorVertical={snackbarPreviewAnchorVertical}\n snackbarPreviewFontSize={snackbarPreviewFontSize}\n snackbarPreviewItems={snackbarPreviewItems}\n snackbarPreviewLineHeight={snackbarPreviewLineHeight}\n snackbarPreviewMaxSnack={snackbarPreviewMaxSnack}\n />\n );\n case 'searchHeader':\n return (\n <ThemePreviewSearchHeaderSection\n gridPreviewTable={gridPreviewTable}\n mainBackground={mainBackground}\n mainPaper={mainPaper}\n mainText={mainText}\n mainThemePreviewStoreState={mainThemePreviewStoreState}\n previewSectionCardSx={previewSectionCardSx}\n searchHeaderPreviewDate={searchHeaderPreviewDate}\n searchHeaderPreviewNumber={searchHeaderPreviewNumber}\n searchHeaderPreviewVersionKey={searchHeaderPreviewVersionKey}\n tablePreviewCanTableRadiusZero={tablePreviewCanTableRadiusZero}\n tableTheme={tableTheme}\n tableThemePreviewVersionKey={tableThemePreviewVersionKey}\n />\n );\n case 'grid':\n return (\n <ThemePreviewGridSection\n editableThemePreviewGridId={editableThemePreviewGridId}\n mainGridChangedBackgroundColor={mainGrid?.changed?.backgroundColor}\n mainThemePreviewStoreKey={mainThemePreviewStoreKey}\n mainThemePreviewStoreState={mainThemePreviewStoreState}\n previewSectionCardSx={previewSectionCardSx}\n readonlyThemePreviewGridId={readonlyThemePreviewGridId}\n />\n );\n case 'tables':\n return (\n <ThemePreviewTablesSection\n mainThemePreviewStoreState={mainThemePreviewStoreState}\n previewSectionCardSx={previewSectionCardSx}\n tablePreviewCanTableRadiusZero={tablePreviewCanTableRadiusZero}\n tableTheme={tableTheme}\n tableThemePreviewVersionKey={tableThemePreviewVersionKey}\n />\n );\n default:\n return null;\n }\n };\n\n return (\n <div className=\"flex h-full min-h-0 flex-col\">\n <div\n className=\"grid min-h-0 flex-1 grid-cols-[224px_minmax(0,1fr)] grid-rows-[76px_minmax(0,1fr)] overflow-hidden rounded-lg border border-solid\"\n style={{\n backgroundColor: mainBackground,\n borderColor: previewChromeBorder,\n }}\n >\n <div\n className=\"col-span-2 relative flex items-center justify-between px-20\"\n style={{\n backgroundColor: toolbarBackground,\n backgroundImage: `linear-gradient(180deg, ${toolbarBackground} 0%, ${toolbarPaper} 100%)`,\n borderBottom: `1px solid ${toolbarDivider}`,\n boxShadow: `inset 0 1px 0 ${alpha(toolbarWhite, toolbarMode === 'dark' ? 0.06 : 0.82)}, 0 4px 16px ${alpha(toolbarBlack, toolbarMode === 'dark' ? 0.18 : 0.05)}`,\n color: toolbarText,\n }}\n >\n <div className=\"flex items-center gap-12\">\n <div className=\"flex flex-col gap-2\">\n <div\n className=\"flex items-center gap-2\"\n style={{\n color: alpha(toolbarText, toolbarMode === 'dark' ? 0.72 : 0.64),\n }}\n >\n <Typography variant=\"caption\">OWP</Typography>\n <NavigateNextIcon sx={{ fontSize: 18 }} />\n <Typography variant=\"caption\">Theme Preview</Typography>\n </div>\n <Typography variant=\"subtitle1\" fontWeight={700}>\n Toolbar\n </Typography>\n </div>\n </div>\n <div className=\"pointer-events-none absolute left-1/2 top-1/2 flex w-full max-w-[520px] -translate-x-1/2 -translate-y-1/2 justify-center px-12 text-center\">\n <Typography\n variant=\"body2\"\n sx={{\n color: alpha(toolbarText, toolbarMode === 'dark' ? 0.92 : 0.84),\n fontSize: 13,\n fontWeight: 700,\n }}\n >\n 로그인 화면 배경색은 Toolbar{' '}\n <NavigateNextIcon sx={{ mx: 0.25, fontSize: 18, verticalAlign: 'middle' }} />{' '}\n Background Default 색상을 따라갑니다.\n </Typography>\n </div>\n <div className=\"flex items-center gap-8\">\n {[SearchIcon, SpaceDashboardOutlinedIcon].map((IconComponent, index) => (\n <div\n key={`${index}`}\n className=\"flex h-32 w-32 items-center justify-center rounded-[10px] border border-solid\"\n style={toolbarPreviewButtonStyle}\n >\n <IconComponent sx={{ color: toolbarText, fontSize: 18 }} />\n </div>\n ))}\n </div>\n </div>\n\n <div\n className=\"flex min-h-0 flex-col\"\n style={{\n backgroundColor: navbarBackground,\n borderRight: `1px solid ${navbarDivider}`,\n color: navbarText,\n }}\n >\n <div\n className=\"flex items-center justify-between gap-8 px-16 py-14\"\n style={{\n borderBottom: `1px solid ${navbarDivider}`,\n }}\n >\n <div className=\"flex items-center gap-10\">\n <div className=\"flex flex-col gap-2\">\n <Typography\n variant=\"subtitle2\"\n fontWeight={700}\n sx={{\n color: navbarHeaderForeground,\n }}\n >\n Navbar\n </Typography>\n <Typography variant=\"caption\" sx={{ color: navbarHeaderSecondary }}>\n Navigation\n </Typography>\n </div>\n </div>\n <div\n className=\"flex h-28 w-28 items-center justify-center rounded-[10px] border border-solid\"\n style={navbarPreviewButtonStyle}\n >\n <MenuRoundedIcon sx={{ color: navbarHeaderIconColor, fontSize: 16 }} />\n </div>\n </div>\n\n <div className=\"flex flex-1 flex-col gap-4 px-10 py-10\">\n {navbarPreviewItems.map((label, index) => {\n const isActive = index === 1;\n\n return (\n <div\n key={label}\n className=\"rounded-lg px-12 py-10\"\n style={{\n backgroundColor: isActive ? navbarActiveBackground : 'transparent',\n color: isActive ? navbarSecondary : navbarInactiveText,\n }}\n >\n <Typography variant=\"body2\" fontWeight={isActive ? 700 : 500}>\n {label}\n </Typography>\n </div>\n );\n })}\n </div>\n\n <div\n className=\"px-12 py-12\"\n style={{\n borderTop: `1px solid ${navbarDivider}`,\n }}\n >\n <div\n className=\"flex min-h-[56px] items-center gap-12 rounded-lg px-8 py-8\"\n style={{ color: navbarText }}\n >\n <div\n className=\"flex h-36 w-36 shrink-0 items-center justify-center rounded-full\"\n style={{\n backgroundColor: navbarUserAvatarBackground,\n color: navbarUserAvatarText,\n }}\n >\n <Typography sx={{ fontSize: 18, fontWeight: 700, lineHeight: 1 }}>관</Typography>\n </div>\n <div className=\"flex min-w-0 flex-1 flex-col gap-1\">\n <Typography\n className=\"truncate\"\n sx={{\n color: navbarText,\n fontSize: 16,\n fontWeight: 600,\n letterSpacing: '-0.01em',\n lineHeight: 1,\n }}\n >\n Impix\n </Typography>\n <Typography\n className=\"truncate\"\n sx={{\n color: navbarInactiveText,\n fontSize: 14,\n fontWeight: 500,\n letterSpacing: '-0.02em',\n lineHeight: 1.05,\n }}\n >\n Owp/Admin\n </Typography>\n </div>\n <div className=\"flex shrink-0 items-center justify-center\" style={{ color: navbarText }}>\n <KeyboardArrowUpRoundedIcon sx={{ fontSize: 16 }} />\n </div>\n </div>\n </div>\n </div>\n\n <div\n className=\"relative flex min-h-0 flex-col gap-14 overflow-auto p-14\"\n style={{\n backgroundColor: mainBackground,\n color: mainText,\n }}\n >\n {isLoading ? (\n <div\n className=\"absolute inset-14 z-10 flex items-center justify-center rounded-lg\"\n style={{\n backgroundColor: alpha(mainPaper, 0.88),\n border: `1px solid ${previewChromeBorder}`,\n }}\n >\n <div className=\"flex flex-col items-center gap-10\">\n <CircularProgress color=\"secondary\" size={34} thickness={4.5} />\n <Typography variant=\"body2\" color=\"text.secondary\" fontWeight={700}>\n 로딩 중...\n </Typography>\n </div>\n </div>\n ) : null}\n {orderedPreviewSectionKeys.map((sectionKey) => (\n <Fragment key={`${sectionKey}-${previewSectionMountKeyBySection[sectionKey]}`}>\n {renderPreviewSection(sectionKey)}\n </Fragment>\n ))}\n </div>\n </div>\n </div>\n );\n}\n"],"names":["ThemePreviewCanvas","activeSection","isLoading","settings","previewSnackbarKeysRef","useRef","tablePreviewCanTableRadiusZero","tableTheme","useMemo","merge","defaultTableTheme","toolbarMode","toolbarBackground","getPaletteValue","toolbarPaper","toolbarText","toolbarDivider","toolbarWhite","toolbarBlack","toolbarButtonBackground","alpha","toolbarButtonBorder","toolbarButtonHighlight","navbarMode","navbarBackground","navbarDivider","previewChromeBorder","navbarText","navbarTextSecondary","navbarPrimary","navbarSecondary","navbarHeaderForeground","getPreviewContrastColor","navbarHeaderSecondary","navbarSurfaceButtonBackground","navbarSurfaceButtonBorder","navbarHeaderIconColor","navbarInactiveText","navbarActiveBackground","navbarUserAvatarBackground","darken","navbarUserAvatarText","mainBackground","mainPaper","mainText","mainTextSecondary","mainPrimary","mainPrimaryContrast","mainSecondary","mainSecondaryContrast","mainSuccess","mainSuccessContrast","mainInfo","mainInfoContrast","mainWarning","mainWarningContrast","mainError","mainErrorContrast","mainGrid","gridThemePreviewVersionKey","createThemePreviewVersionKey","tableThemePreviewVersionKey","searchHeaderPreviewVersionKey","editableThemePreviewGridId","themePreviewEditableTreeGridId","readonlyThemePreviewGridId","themePreviewReadonlyTreeGridId","layoutPreviewGridHeaderBackground","layoutPreviewGridHeaderColor","layoutPreviewGridHeaderFontSize","layoutPreviewGridCellFontSize","layoutPreviewGridCellBackground","_a","gridPreviewBodyBackground","layoutPreviewGridHeaderBorder","gridBodyBorder","gridPreviewBodyText","mainThemePreviewSettings","mainThemePreviewStoreKey","mainThemePreviewStoreState","searchHeaderPreviewDate","dayjs","searchHeaderPreviewNumber","previewSectionCardSx","toolbarPreviewButtonStyle","navbarPreviewButtonStyle","buttonPreviewItems","item","snackbarTheme","defaultSnackbarTheme","snackbarProviderProps","defaultSnackbarProviderProps","snackbarPreviewAnchorHorizontal","_b","snackbarPreviewAnchorVertical","_c","snackbarPreviewMaxSnack","snackbarPreviewFontSize","getThemePreviewStyleValue","_d","snackbarPreviewLineHeight","_e","snackbarPreviewItems","snackbarVariantKeys","variantKey","snackbarVariantTheme","snackbarPreviewIconByVariant","snackbarPreviewMessageByVariant","orderedPreviewSectionKeys","getPreviewSectionOrder","previewSectionMountKeyBySection","gridPreviewTable","jsx","ThemePreviewGridPreviewTable","useEffect","snackbarKey","closeSnackbar","renderPreviewSection","__name","sectionKey","ThemePreviewButtonsSection","ThemePreviewSnackbarsSection","ThemePreviewSearchHeaderSection","ThemePreviewGridSection","ThemePreviewTablesSection","jsxs","Typography","NavigateNextIcon","SearchIcon","SpaceDashboardOutlinedIcon","IconComponent","index","MenuRoundedIcon","label","isActive","KeyboardArrowUpRoundedIcon","CircularProgress","Fragment"],"mappings":"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"}