@owp/core 2.5.36 → 2.5.38

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 (37) hide show
  1. package/dist/_virtual/index10.js +2 -2
  2. package/dist/_virtual/index12.js +2 -2
  3. package/dist/_virtual/index13.js +2 -2
  4. package/dist/_virtual/index14.js +2 -2
  5. package/dist/_virtual/index15.js +2 -2
  6. package/dist/_virtual/index5.js +2 -2
  7. package/dist/components/OwpTable/OwpDataTable.js +187 -183
  8. package/dist/components/OwpTable/OwpDataTable.js.map +1 -1
  9. package/dist/components/OwpTreeGrid/OwpTreeGrid.js +279 -311
  10. package/dist/components/OwpTreeGrid/OwpTreeGrid.js.map +1 -1
  11. package/dist/components/OwpTreeGrid/internal/treeGridRuntime.js +567 -486
  12. package/dist/components/OwpTreeGrid/internal/treeGridRuntime.js.map +1 -1
  13. package/dist/components/OwpTreeGrid/internal/treeGridTheme.js +284 -243
  14. package/dist/components/OwpTreeGrid/internal/treeGridTheme.js.map +1 -1
  15. package/dist/configs/defaultConfig.js +7 -7
  16. package/dist/configs/defaultConfig.js.map +1 -1
  17. package/dist/constants/treeGrid.js +17 -16
  18. package/dist/constants/treeGrid.js.map +1 -1
  19. package/dist/constants.js +24 -23
  20. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE128/index.js +1 -1
  21. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE39/index.js +1 -1
  22. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE93/index.js +1 -1
  23. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/EAN_UPC/index.js +1 -1
  24. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/GenericBarcode/index.js +1 -1
  25. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/ITF/index.js +1 -1
  26. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/MSI/index.js +1 -1
  27. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/codabar/index.js +1 -1
  28. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/pharmacode/index.js +1 -1
  29. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/renderers/index.js +1 -1
  30. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js +1 -1
  31. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.js +1 -1
  32. package/dist/node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/index.js +1 -1
  33. package/dist/types/components/OwpTreeGrid/internal/treeGridTheme.d.ts +4 -1
  34. package/dist/types/configs/defaultConfig.d.ts +7 -7
  35. package/dist/types/constants/treeGrid.d.ts +1 -0
  36. package/package.json +1 -1
  37. package/treegrid/Defaults.xml +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"defaultConfig.js","sources":["../../src/configs/defaultConfig.ts"],"sourcesContent":["import themeLayoutConfigs from '@/layout/themeLayoutConfigs';\nimport { owpDark } from '@/colors/palettes';\nimport type {\n OwpSettingsConfigType,\n OwpSnackbarThemeConfigType,\n OwpThemesType,\n} from '@/types/OwpSettingsTypes';\nimport { grey, lightBlue, red } from '@mui/material/colors';\nimport { createTheme, type Theme, type ThemeOptions } from '@mui/material/styles';\nimport { merge } from 'es-toolkit/compat';\nimport qs from 'qs';\nimport { PartialDeep } from 'type-fest';\n\n/**\n * The defaultTheme object defines the default color palette for the application.\n */\nconst outlinedInputLabelFontSize = '1.6rem';\nconst outlinedInputLabelShrinkScale = 0.8;\nconst outlinedInputLabelGapPadding = 3;\nconst defaultLayoutStyle = 'layout';\n\nconst defaultTheme = {\n palette: {\n mode: 'light',\n text: {\n primary: 'rgb(17, 24, 39)',\n secondary: 'rgb(107, 114, 128)',\n disabled: 'rgb(149, 156, 169)',\n },\n common: {\n black: 'rgb(17, 24, 39)',\n white: 'rgb(255, 255, 255)',\n },\n background: {\n paper: '#FFFFFF',\n default: '#f6f7f9',\n },\n primary: {\n main: '#232a2d',\n },\n secondary: {\n main: '#039BE5',\n },\n inputFocus: {\n main: grey[900],\n },\n success: {\n main: '#2f7d31',\n },\n info: {\n main: '#9c27b0',\n contrastText: '#fff',\n },\n warning: {\n main: '#ed7d31',\n contrastText: '#fff',\n },\n error: {\n main: '#c00000',\n },\n },\n};\n\nconst defaultNavbarTheme = merge({}, defaultTheme, {\n palette: {\n background: {\n default: '#fff',\n },\n },\n});\n\nconst defaultToolbarTheme = merge({}, defaultTheme, {\n palette: {\n mode: 'dark',\n background: {\n default: defaultTheme.palette.secondary.main,\n },\n },\n});\n\nexport const defaultSnackbarTheme = {\n default: {\n backgroundColor: '#232a2d',\n color: '#f8fafc',\n },\n success: {\n backgroundColor: '#2f7d31',\n color: '#ffffff',\n },\n info: {\n backgroundColor: '#039BE5',\n color: '#ffffff',\n },\n warning: {\n backgroundColor: '#ed7d31',\n color: '#ffffff',\n },\n error: {\n backgroundColor: '#c00000',\n color: '#ffffff',\n },\n} satisfies OwpSnackbarThemeConfigType;\n\nfunction getInputFocusColor(theme: Theme) {\n return theme.palette.inputFocus?.main || grey[900];\n}\n\n/**\n * 기본 direction 값\n */\nfunction getDefaultDirection(): OwpSettingsConfigType['direction'] {\n if (typeof document !== 'undefined' && document.documentElement.dir === 'rtl') {\n return 'rtl';\n }\n\n return 'ltr';\n}\n\n/**\n * 기본 layout 설정\n * @param style layout 스타일\n */\nexport function getDefaultLayout(style?: string): OwpSettingsConfigType['layout'] {\n const resolvedStyle =\n style && themeLayoutConfigs[style] ? style : (defaultLayoutStyle as OwpSettingsConfigType['layout']['style']);\n\n return {\n style: resolvedStyle,\n config: themeLayoutConfigs[resolvedStyle].defaults,\n };\n}\n\n/**\n * 기본 theme 설정\n * @param themesConfig 앱 theme 설정\n */\nexport function getDefaultThemeSettings(\n themesConfig?: PartialDeep<OwpThemesType>,\n): OwpSettingsConfigType['theme'] {\n return {\n main: merge({}, defaultTheme, themesConfig?.default),\n navbar: merge({}, defaultNavbarTheme, themesConfig?.defaultNavbar),\n toolbar: merge({}, defaultToolbarTheme, themesConfig?.layoutSurfaceDark),\n footer: merge({}, defaultTheme, themesConfig?.defaultDark),\n };\n}\n\n/**\n * The defaultSettings object defines the default settings for the Owp application.\n */\nexport const defaultSettings: OwpSettingsConfigType = {\n layout: getDefaultLayout(),\n customScrollbars: true,\n direction: getDefaultDirection(),\n theme: getDefaultThemeSettings(),\n snackbar: defaultSnackbarTheme,\n defaultAuth: ['admin'],\n loginRedirectUrl: '/',\n};\n\n/**\n * The getParsedQuerySettings function parses the query string to retrieve the default settings for the Owp application.\n * It returns a OwpSettingsConfigType object that can be used to configure the application.\n */\nexport function getParsedQuerySettings() {\n const parsedQueryString = qs.parse(window.location.search, { ignoreQueryPrefix: true });\n\n const { defaultSettings = {} } = parsedQueryString;\n\n if (typeof defaultSettings === 'string') {\n \n return JSON.parse(defaultSettings) as OwpSettingsConfigType;\n }\n\n return {};\n\n \n \n}\n\n/**\n * 기본 settings와 신규 settings 병합\n * @param _defaultSettings 기준 settings\n * @param _newSettings 신규 settings\n */\nexport function generateSettings(\n _defaultSettings: OwpSettingsConfigType,\n _newSettings: PartialDeep<OwpSettingsConfigType>,\n) {\n const nextLayoutStyle = _newSettings?.layout?.style;\n const shouldResetLayoutConfig =\n Boolean(nextLayoutStyle) && nextLayoutStyle !== _defaultSettings?.layout?.style;\n\n return merge(\n {},\n _defaultSettings,\n shouldResetLayoutConfig ? { layout: getDefaultLayout(nextLayoutStyle) } : {},\n _newSettings,\n ) as OwpSettingsConfigType;\n}\n\n/**\n * 앱 초기 settings 생성\n * @param settingsConfig 앱 settings override\n * @param themesConfig 앱 theme 설정\n */\nexport function createInitialOwpSettings(\n settingsConfig?: PartialDeep<OwpSettingsConfigType>,\n themesConfig?: PartialDeep<OwpThemesType>,\n) {\n const baseSettings = merge({}, defaultSettings, {\n direction: settingsConfig?.direction ?? getDefaultDirection(),\n theme: getDefaultThemeSettings(themesConfig),\n }) as OwpSettingsConfigType;\n\n return generateSettings(\n baseSettings,\n merge({}, settingsConfig, getParsedQuerySettings()) as PartialDeep<OwpSettingsConfigType>,\n );\n}\n\n/**\n * The defaultThemeOptions object defines the default options for the MUI theme.\n */\nexport const defaultThemeOptions = {\n typography: {\n fontFamily: ['Pretendard', 'Roboto', '\"Helvetica\"', 'Arial', 'sans-serif'].join(','),\n fontWeightLight: 300,\n fontWeightRegular: 400,\n fontWeightMedium: 500,\n },\n components: {\n MuiSvgIcon: {\n defaultProps: {},\n styleOverrides: {\n root: {},\n sizeSmall: {\n width: 16,\n height: 16,\n },\n sizeMedium: {\n width: 20,\n height: 20,\n },\n sizeLarge: {\n width: 24,\n height: 24,\n },\n },\n },\n MuiAppBar: {\n defaultProps: {\n enableColorOnDark: true,\n },\n styleOverrides: {\n root: {\n backgroundImage: 'none',\n },\n },\n },\n MuiPickersPopper: {\n styleOverrides: {\n root: {\n zIndex: 99999,\n },\n },\n },\n MuiAutocomplete: {\n styleOverrides: {\n popper: {\n zIndex: 99999,\n },\n },\n },\n MuiButtonBase: {\n defaultProps: {\n // disableRipple: true\n },\n styleOverrides: {\n root: {},\n },\n },\n MuiIconButton: {\n styleOverrides: {\n root: {\n borderRadius: 8,\n },\n sizeMedium: {\n width: 36,\n height: 36,\n maxHeight: 36,\n },\n sizeSmall: {\n width: 32,\n height: 32,\n maxHeight: 32,\n },\n sizeLarge: {\n width: 40,\n height: 40,\n maxHeight: 40,\n },\n },\n },\n MuiBadge: {\n defaultProps: {},\n styleOverrides: {\n root: {},\n },\n },\n MuiAvatar: {\n defaultProps: {},\n styleOverrides: {\n root: {\n width: 36,\n height: 36,\n },\n },\n },\n MuiButton: {\n defaultProps: {\n variant: 'text',\n color: 'inherit',\n },\n styleOverrides: {\n root: {\n textTransform: 'none',\n // lineHeight: 1,\n },\n sizeMedium: {\n borderRadius: 8,\n height: 36,\n minHeight: 36,\n maxHeight: 36,\n },\n sizeSmall: {\n borderRadius: 8,\n height: 32,\n minHeight: 32,\n maxHeight: 32,\n },\n sizeLarge: {\n height: 40,\n minHeight: 40,\n maxHeight: 40,\n borderRadius: 8,\n },\n contained: {\n boxShadow: 'none',\n '&:hover, &:focus': {\n boxShadow: 'none',\n },\n },\n },\n },\n MuiButtonGroup: {\n defaultProps: {\n color: 'secondary',\n },\n styleOverrides: {\n contained: {\n borderRadius: 8,\n },\n },\n },\n MuiTab: {\n styleOverrides: {\n root: {\n textTransform: 'none',\n },\n },\n },\n MuiDrawer: {\n styleOverrides: {\n paper: {},\n },\n },\n MuiDialog: {\n styleOverrides: {\n paper: {\n borderRadius: 12,\n },\n },\n },\n MuiPaper: {\n styleOverrides: {\n root: {\n backgroundImage: 'none',\n },\n rounded: {\n borderRadius: 12,\n },\n },\n },\n MuiCard: {\n styleOverrides: {},\n },\n MuiPopover: {\n styleOverrides: {\n paper: {\n borderRadius: 8,\n },\n },\n },\n MuiTextField: {\n defaultProps: {\n color: 'secondary',\n },\n styleOverrides: {\n root: {\n '& > .MuiFormHelperText-root': {\n marginLeft: 11,\n },\n },\n },\n },\n MuiInputLabel: {\n defaultProps: {\n color: 'secondary',\n },\n styleOverrides: {\n shrink: {\n transform: `translate(11px, -7px) scale(${outlinedInputLabelShrinkScale})`,\n },\n root: ({ theme }) => ({\n fontSize: outlinedInputLabelFontSize,\n transform: 'translate(11px, 8px) scale(1)',\n '&.Mui-focused': {\n color: getInputFocusColor(theme),\n },\n '&.MuiInputLabel-shrink': {\n color: getInputFocusColor(theme),\n },\n '&.MuiInputLabel-outlined.MuiInputLabel-shrink': {\n lineHeight: 1.2,\n zIndex: 1,\n '&::before': {\n content: '\"\"',\n position: 'absolute',\n inset: `0 -${outlinedInputLabelGapPadding}px`,\n backgroundColor: 'var(--mui-palette-background-paper)',\n borderRadius: 4,\n zIndex: -1,\n },\n },\n }),\n },\n },\n MuiSelect: {\n defaultProps: {\n color: 'secondary',\n },\n styleOverrides: {\n select: {\n minHeight: 0,\n },\n },\n },\n MuiFormHelperText: {\n styleOverrides: {\n root: {},\n },\n },\n MuiInputAdornment: {\n styleOverrides: {\n root: {\n marginRight: 0,\n },\n },\n },\n MuiInput: {\n defaultProps: {\n color: 'secondary',\n },\n styleOverrides: {\n root: ({ theme }) => ({\n '&:before': {\n borderBottomColor: getInputFocusColor(theme),\n },\n '&:hover:not(.Mui-disabled, .Mui-error):before': {\n borderBottomColor: getInputFocusColor(theme),\n },\n '&.Mui-focused:after': {\n borderBottomColor: getInputFocusColor(theme),\n },\n }),\n },\n },\n MuiInputBase: {\n styleOverrides: {\n root: {\n // height: 36,\n minHeight: 36,\n borderRadius: 8,\n lineHeight: 1,\n },\n legend: {\n fontSize: '0.75em',\n },\n input: {\n padding: '5px 11px',\n },\n adornedStart: {\n paddingLeft: `11px!important`,\n },\n sizeSmall: {\n height: 32,\n minHeight: 32,\n borderRadius: 8,\n },\n sizeMedium: {\n height: 36,\n minHeight: 36,\n borderRadius: 8,\n },\n sizeLarge: {\n height: 40,\n minHeight: 40,\n borderRadius: 8,\n },\n },\n },\n MuiOutlinedInput: {\n defaultProps: {\n color: 'secondary',\n },\n styleOverrides: {\n root: ({ theme }) => ({\n // paddingLeft: 11\n '& .MuiOutlinedInput-notchedOutline': {\n borderColor: getInputFocusColor(theme),\n },\n '&:hover .MuiOutlinedInput-notchedOutline': {\n borderColor: getInputFocusColor(theme),\n },\n '&.Mui-focused .MuiOutlinedInput-notchedOutline': {\n borderColor: getInputFocusColor(theme),\n },\n }),\n input: {\n padding: '5px 11px',\n },\n },\n },\n MuiFilledInput: {\n styleOverrides: {\n root: {\n borderRadius: 8,\n '&:before, &:after': {\n display: 'none',\n },\n },\n\n input: {\n padding: '5px 11px',\n },\n },\n },\n MuiSlider: {\n defaultProps: {\n color: 'secondary',\n },\n },\n MuiCheckbox: {\n defaultProps: {\n color: 'secondary',\n },\n },\n MuiRadio: {\n defaultProps: {\n color: 'secondary',\n },\n },\n MuiSwitch: {\n defaultProps: {\n color: 'secondary',\n },\n },\n MuiTypography: {\n variants: [\n {\n props: { color: 'text.secondary' },\n style: {\n color: 'text.secondary',\n },\n },\n ],\n },\n MuiFormControl: {\n styleOverrides: {\n root: {\n '& .MuiInputLabel-outlined.MuiInputLabel-shrink:not(:empty) + .MuiOutlinedInput-root .MuiOutlinedInput-notchedOutline legend':\n {\n fontSize: `calc(${outlinedInputLabelFontSize} * ${outlinedInputLabelShrinkScale})`,\n maxWidth: '100%',\n },\n '& .MuiInputLabel-outlined.MuiInputLabel-shrink:not(:empty) + .MuiOutlinedInput-root .MuiOutlinedInput-notchedOutline legend > span:not(.notranslate)':\n {\n paddingLeft: `${outlinedInputLabelGapPadding}px`,\n paddingRight: `${outlinedInputLabelGapPadding}px`,\n },\n },\n },\n },\n },\n};\n\n/**\n * The mustHaveThemeOptions object defines the options that must be present in the MUI theme.\n */\nexport const mustHaveThemeOptions = {\n typography: {\n htmlFontSize: 10,\n fontSize: 13,\n body1: {\n fontSize: '1.3rem',\n },\n body2: {\n fontSize: '1.3rem',\n },\n },\n};\n\n/**\n * The defaultThemes object defines the default themes for the application.\n */\nexport const defaultThemes = {\n default: {\n palette: {\n mode: 'light',\n primary: owpDark,\n secondary: {\n light: lightBlue[400],\n main: lightBlue[600],\n dark: lightBlue[700],\n },\n error: red,\n },\n status: {\n danger: 'orange',\n },\n },\n defaultDark: {\n palette: {\n mode: 'dark',\n primary: owpDark,\n secondary: {\n light: lightBlue[400],\n main: lightBlue[600],\n dark: lightBlue[700],\n },\n error: red,\n },\n status: {\n danger: 'orange',\n },\n },\n};\n\n/**\n * The extendThemeWithMixins function extends the theme with mixins.\n */\nexport function extendThemeWithMixins(obj: ThemeOptions) {\n const theme = createTheme(obj);\n return {\n border: (width = 1) => ({\n borderWidth: width,\n borderStyle: 'solid',\n borderColor: theme.palette.divider,\n }),\n borderLeft: (width = 1) => ({\n borderLeftWidth: width,\n borderStyle: 'solid',\n borderColor: theme.palette.divider,\n }),\n borderRight: (width = 1) => ({\n borderRightWidth: width,\n borderStyle: 'solid',\n borderColor: theme.palette.divider,\n }),\n borderTop: (width = 1) => ({\n borderTopWidth: width,\n borderStyle: 'solid',\n borderColor: theme.palette.divider,\n }),\n borderBottom: (width = 1) => ({\n borderBottomWidth: width,\n borderStyle: 'solid',\n borderColor: theme.palette.divider,\n }),\n };\n}\n"],"names":["outlinedInputLabelFontSize","outlinedInputLabelShrinkScale","outlinedInputLabelGapPadding","defaultLayoutStyle","defaultTheme","grey","defaultNavbarTheme","merge","defaultToolbarTheme","defaultSnackbarTheme","getInputFocusColor","theme","_a","__name","getDefaultDirection","getDefaultLayout","style","resolvedStyle","themeLayoutConfigs","getDefaultThemeSettings","themesConfig","defaultSettings","getParsedQuerySettings","parsedQueryString","qs","generateSettings","_defaultSettings","_newSettings","nextLayoutStyle","shouldResetLayoutConfig","_b","createInitialOwpSettings","settingsConfig","baseSettings","defaultThemeOptions","mustHaveThemeOptions","defaultThemes","owpDark","lightBlue","red","extendThemeWithMixins","obj","createTheme","width"],"mappings":"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"}
1
+ {"version":3,"file":"defaultConfig.js","sources":["../../src/configs/defaultConfig.ts"],"sourcesContent":["import themeLayoutConfigs from '@/layout/themeLayoutConfigs';\nimport { owpDark } from '@/colors/palettes';\nimport type {\n OwpSettingsConfigType,\n OwpSnackbarThemeConfigType,\n OwpThemesType,\n} from '@/types/OwpSettingsTypes';\nimport { grey, lightBlue, red } from '@mui/material/colors';\nimport { createTheme, type Theme, type ThemeOptions } from '@mui/material/styles';\nimport { merge } from 'es-toolkit/compat';\nimport qs from 'qs';\nimport { PartialDeep } from 'type-fest';\n\n/**\n * The defaultTheme object defines the default color palette for the application.\n */\nconst outlinedInputLabelFontSize = '1.6rem';\nconst outlinedInputLabelShrinkScale = 0.8;\nconst outlinedInputLabelGapPadding = 3;\nconst defaultLayoutStyle = 'layout';\n\nconst defaultTheme = {\n palette: {\n mode: 'light',\n text: {\n primary: 'rgb(17, 24, 39)',\n secondary: 'rgb(107, 114, 128)',\n disabled: 'rgb(149, 156, 169)',\n },\n common: {\n black: 'rgb(17, 24, 39)',\n white: 'rgb(255, 255, 255)',\n },\n background: {\n paper: '#FFFFFF',\n default: '#f6f7f9',\n },\n primary: {\n main: '#232a2d',\n },\n secondary: {\n main: '#039BE5',\n },\n inputFocus: {\n main: grey[900],\n },\n success: {\n main: '#2f7d31',\n },\n info: {\n main: '#9c27b0',\n contrastText: '#fff',\n },\n warning: {\n main: '#ed7d31',\n contrastText: '#fff',\n },\n error: {\n main: '#c00000',\n },\n },\n};\n\nconst defaultNavbarTheme = merge({}, defaultTheme, {\n palette: {\n background: {\n default: '#fff',\n },\n },\n});\n\nconst defaultToolbarTheme = merge({}, defaultTheme, {\n palette: {\n mode: 'dark',\n background: {\n default: defaultTheme.palette.secondary.main,\n },\n },\n});\n\nexport const defaultSnackbarTheme = {\n default: {\n backgroundColor: '#232a2d',\n color: '#f8fafc',\n },\n success: {\n backgroundColor: '#2f7d31',\n color: '#ffffff',\n },\n info: {\n backgroundColor: '#039BE5',\n color: '#ffffff',\n },\n warning: {\n backgroundColor: '#ed7d31',\n color: '#ffffff',\n },\n error: {\n backgroundColor: '#c00000',\n color: '#ffffff',\n },\n} satisfies OwpSnackbarThemeConfigType;\n\nfunction getInputFocusColor(theme: Theme) {\n return theme.palette.inputFocus?.main || grey[900];\n}\n\n/**\n * 기본 direction 값\n */\nfunction getDefaultDirection(): OwpSettingsConfigType['direction'] {\n if (typeof document !== 'undefined' && document.documentElement.dir === 'rtl') {\n return 'rtl';\n }\n\n return 'ltr';\n}\n\n/**\n * 기본 layout 설정\n * @param style layout 스타일\n */\nexport function getDefaultLayout(style?: string): OwpSettingsConfigType['layout'] {\n const resolvedStyle =\n style && themeLayoutConfigs[style] ? style : (defaultLayoutStyle as OwpSettingsConfigType['layout']['style']);\n\n return {\n style: resolvedStyle,\n config: themeLayoutConfigs[resolvedStyle].defaults,\n };\n}\n\n/**\n * 기본 theme 설정\n * @param themesConfig 앱 theme 설정\n */\nexport function getDefaultThemeSettings(\n themesConfig?: PartialDeep<OwpThemesType>,\n): OwpSettingsConfigType['theme'] {\n return {\n main: merge({}, defaultTheme, themesConfig?.default),\n navbar: merge({}, defaultNavbarTheme, themesConfig?.defaultNavbar),\n toolbar: merge({}, defaultToolbarTheme, themesConfig?.layoutSurfaceDark),\n footer: merge({}, defaultTheme, themesConfig?.defaultDark),\n };\n}\n\n/**\n * The defaultSettings object defines the default settings for the Owp application.\n */\nexport const defaultSettings: OwpSettingsConfigType = {\n layout: getDefaultLayout(),\n customScrollbars: true,\n direction: getDefaultDirection(),\n theme: getDefaultThemeSettings(),\n snackbar: defaultSnackbarTheme,\n defaultAuth: ['admin'],\n loginRedirectUrl: '/',\n};\n\n/**\n * The getParsedQuerySettings function parses the query string to retrieve the default settings for the Owp application.\n * It returns a OwpSettingsConfigType object that can be used to configure the application.\n */\nexport function getParsedQuerySettings() {\n const parsedQueryString = qs.parse(window.location.search, { ignoreQueryPrefix: true });\n\n const { defaultSettings = {} } = parsedQueryString;\n\n if (typeof defaultSettings === 'string') {\n \n return JSON.parse(defaultSettings) as OwpSettingsConfigType;\n }\n\n return {};\n\n \n \n}\n\n/**\n * 기본 settings와 신규 settings 병합\n * @param _defaultSettings 기준 settings\n * @param _newSettings 신규 settings\n */\nexport function generateSettings(\n _defaultSettings: OwpSettingsConfigType,\n _newSettings: PartialDeep<OwpSettingsConfigType>,\n) {\n const nextLayoutStyle = _newSettings?.layout?.style;\n const shouldResetLayoutConfig =\n Boolean(nextLayoutStyle) && nextLayoutStyle !== _defaultSettings?.layout?.style;\n\n return merge(\n {},\n _defaultSettings,\n shouldResetLayoutConfig ? { layout: getDefaultLayout(nextLayoutStyle) } : {},\n _newSettings,\n ) as OwpSettingsConfigType;\n}\n\n/**\n * 앱 초기 settings 생성\n * @param settingsConfig 앱 settings override\n * @param themesConfig 앱 theme 설정\n */\nexport function createInitialOwpSettings(\n settingsConfig?: PartialDeep<OwpSettingsConfigType>,\n themesConfig?: PartialDeep<OwpThemesType>,\n) {\n const baseSettings = merge({}, defaultSettings, {\n direction: settingsConfig?.direction ?? getDefaultDirection(),\n theme: getDefaultThemeSettings(themesConfig),\n }) as OwpSettingsConfigType;\n\n return generateSettings(\n baseSettings,\n merge({}, settingsConfig, getParsedQuerySettings()) as PartialDeep<OwpSettingsConfigType>,\n );\n}\n\n/**\n * The defaultThemeOptions object defines the default options for the MUI theme.\n */\nexport const defaultThemeOptions = {\n typography: {\n fontFamily: ['Pretendard', 'Roboto', '\"Helvetica\"', 'Arial', 'sans-serif'].join(','),\n fontWeightLight: 300,\n fontWeightRegular: 400,\n fontWeightMedium: 500,\n },\n components: {\n MuiSvgIcon: {\n defaultProps: {},\n styleOverrides: {\n root: {},\n sizeSmall: {\n width: 16,\n height: 16,\n },\n sizeMedium: {\n width: 20,\n height: 20,\n },\n sizeLarge: {\n width: 24,\n height: 24,\n },\n },\n },\n MuiAppBar: {\n defaultProps: {\n enableColorOnDark: true,\n },\n styleOverrides: {\n root: {\n backgroundImage: 'none',\n },\n },\n },\n MuiPickersPopper: {\n styleOverrides: {\n root: {\n zIndex: 99999,\n },\n },\n },\n MuiAutocomplete: {\n styleOverrides: {\n popper: {\n zIndex: 99999,\n },\n },\n },\n MuiButtonBase: {\n defaultProps: {\n // disableRipple: true\n },\n styleOverrides: {\n root: {},\n },\n },\n MuiIconButton: {\n styleOverrides: {\n root: {\n borderRadius: 8,\n },\n sizeMedium: {\n width: 36,\n height: 36,\n maxHeight: 36,\n },\n sizeSmall: {\n width: 32,\n height: 32,\n maxHeight: 32,\n },\n sizeLarge: {\n width: 40,\n height: 40,\n maxHeight: 40,\n },\n },\n },\n MuiBadge: {\n defaultProps: {},\n styleOverrides: {\n root: {},\n },\n },\n MuiAvatar: {\n defaultProps: {},\n styleOverrides: {\n root: {\n width: 36,\n height: 36,\n },\n },\n },\n MuiButton: {\n defaultProps: {\n variant: 'text',\n color: 'inherit',\n },\n styleOverrides: {\n root: {\n textTransform: 'none',\n // lineHeight: 1,\n },\n sizeMedium: {\n borderRadius: 8,\n height: 36,\n minHeight: 36,\n maxHeight: 36,\n },\n sizeSmall: {\n borderRadius: 8,\n height: 32,\n minHeight: 32,\n maxHeight: 32,\n },\n sizeLarge: {\n height: 40,\n minHeight: 40,\n maxHeight: 40,\n borderRadius: 8,\n },\n contained: {\n boxShadow: 'none',\n '&:hover, &:focus': {\n boxShadow: 'none',\n },\n },\n },\n },\n MuiButtonGroup: {\n defaultProps: {\n color: 'secondary',\n },\n styleOverrides: {\n contained: {\n borderRadius: 8,\n },\n },\n },\n MuiTab: {\n styleOverrides: {\n root: {\n textTransform: 'none',\n },\n },\n },\n MuiDrawer: {\n styleOverrides: {\n paper: {},\n },\n },\n MuiDialog: {\n styleOverrides: {\n paper: {\n borderRadius: 12,\n },\n },\n },\n MuiPaper: {\n styleOverrides: {\n root: {\n backgroundImage: 'none',\n },\n rounded: {\n borderRadius: 12,\n },\n },\n },\n MuiCard: {\n styleOverrides: {},\n },\n MuiPopover: {\n styleOverrides: {\n paper: {\n borderRadius: 8,\n },\n },\n },\n MuiTextField: {\n defaultProps: {\n color: 'secondary',\n },\n styleOverrides: {\n root: {\n '& > .MuiFormHelperText-root': {\n marginLeft: 11,\n },\n },\n },\n },\n MuiInputLabel: {\n defaultProps: {\n color: 'secondary',\n },\n styleOverrides: {\n shrink: {\n transform: `translate(11px, -7px) scale(${outlinedInputLabelShrinkScale})`,\n },\n root: ({ theme }) => ({\n fontSize: outlinedInputLabelFontSize,\n transform: 'translate(11px, 8px) scale(1)',\n '&.Mui-focused:not(.Mui-error)': {\n color: getInputFocusColor(theme),\n },\n '&.MuiInputLabel-shrink:not(.Mui-error)': {\n color: getInputFocusColor(theme),\n },\n '&.MuiInputLabel-outlined.MuiInputLabel-shrink': {\n lineHeight: 1.2,\n zIndex: 1,\n '&::before': {\n content: '\"\"',\n position: 'absolute',\n inset: `0 -${outlinedInputLabelGapPadding}px`,\n backgroundColor: 'var(--mui-palette-background-paper)',\n borderRadius: 4,\n zIndex: -1,\n },\n },\n }),\n },\n },\n MuiSelect: {\n defaultProps: {\n color: 'secondary',\n },\n styleOverrides: {\n select: {\n minHeight: 0,\n },\n },\n },\n MuiFormHelperText: {\n styleOverrides: {\n root: {},\n },\n },\n MuiInputAdornment: {\n styleOverrides: {\n root: {\n marginRight: 0,\n },\n },\n },\n MuiInput: {\n defaultProps: {\n color: 'secondary',\n },\n styleOverrides: {\n root: ({ theme }) => ({\n '&:not(.Mui-error):before': {\n borderBottomColor: getInputFocusColor(theme),\n },\n '&:hover:not(.Mui-disabled, .Mui-error):before': {\n borderBottomColor: getInputFocusColor(theme),\n },\n '&.Mui-focused:not(.Mui-error):after': {\n borderBottomColor: getInputFocusColor(theme),\n },\n }),\n },\n },\n MuiInputBase: {\n styleOverrides: {\n root: {\n // height: 36,\n minHeight: 36,\n borderRadius: 8,\n lineHeight: 1,\n },\n legend: {\n fontSize: '0.75em',\n },\n input: {\n padding: '5px 11px',\n },\n adornedStart: {\n paddingLeft: `11px!important`,\n },\n sizeSmall: {\n height: 32,\n minHeight: 32,\n borderRadius: 8,\n },\n sizeMedium: {\n height: 36,\n minHeight: 36,\n borderRadius: 8,\n },\n sizeLarge: {\n height: 40,\n minHeight: 40,\n borderRadius: 8,\n },\n },\n },\n MuiOutlinedInput: {\n defaultProps: {\n color: 'secondary',\n },\n styleOverrides: {\n root: ({ theme }) => ({\n // paddingLeft: 11\n '&:not(.Mui-error) .MuiOutlinedInput-notchedOutline': {\n borderColor: getInputFocusColor(theme),\n },\n '&:hover:not(.Mui-disabled, .Mui-error) .MuiOutlinedInput-notchedOutline': {\n borderColor: getInputFocusColor(theme),\n },\n '&.Mui-focused:not(.Mui-error) .MuiOutlinedInput-notchedOutline': {\n borderColor: getInputFocusColor(theme),\n },\n }),\n input: {\n padding: '5px 11px',\n },\n },\n },\n MuiFilledInput: {\n styleOverrides: {\n root: {\n borderRadius: 8,\n '&:before, &:after': {\n display: 'none',\n },\n },\n\n input: {\n padding: '5px 11px',\n },\n },\n },\n MuiSlider: {\n defaultProps: {\n color: 'secondary',\n },\n },\n MuiCheckbox: {\n defaultProps: {\n color: 'secondary',\n },\n },\n MuiRadio: {\n defaultProps: {\n color: 'secondary',\n },\n },\n MuiSwitch: {\n defaultProps: {\n color: 'secondary',\n },\n },\n MuiTypography: {\n variants: [\n {\n props: { color: 'text.secondary' },\n style: {\n color: 'text.secondary',\n },\n },\n ],\n },\n MuiFormControl: {\n styleOverrides: {\n root: {\n '& .MuiInputLabel-outlined.MuiInputLabel-shrink:not(:empty) + .MuiOutlinedInput-root .MuiOutlinedInput-notchedOutline legend':\n {\n fontSize: `calc(${outlinedInputLabelFontSize} * ${outlinedInputLabelShrinkScale})`,\n maxWidth: '100%',\n },\n '& .MuiInputLabel-outlined.MuiInputLabel-shrink:not(:empty) + .MuiOutlinedInput-root .MuiOutlinedInput-notchedOutline legend > span:not(.notranslate)':\n {\n paddingLeft: `${outlinedInputLabelGapPadding}px`,\n paddingRight: `${outlinedInputLabelGapPadding}px`,\n },\n },\n },\n },\n },\n};\n\n/**\n * The mustHaveThemeOptions object defines the options that must be present in the MUI theme.\n */\nexport const mustHaveThemeOptions = {\n typography: {\n htmlFontSize: 10,\n fontSize: 13,\n body1: {\n fontSize: '1.3rem',\n },\n body2: {\n fontSize: '1.3rem',\n },\n },\n};\n\n/**\n * The defaultThemes object defines the default themes for the application.\n */\nexport const defaultThemes = {\n default: {\n palette: {\n mode: 'light',\n primary: owpDark,\n secondary: {\n light: lightBlue[400],\n main: lightBlue[600],\n dark: lightBlue[700],\n },\n error: red,\n },\n status: {\n danger: 'orange',\n },\n },\n defaultDark: {\n palette: {\n mode: 'dark',\n primary: owpDark,\n secondary: {\n light: lightBlue[400],\n main: lightBlue[600],\n dark: lightBlue[700],\n },\n error: red,\n },\n status: {\n danger: 'orange',\n },\n },\n};\n\n/**\n * The extendThemeWithMixins function extends the theme with mixins.\n */\nexport function extendThemeWithMixins(obj: ThemeOptions) {\n const theme = createTheme(obj);\n return {\n border: (width = 1) => ({\n borderWidth: width,\n borderStyle: 'solid',\n borderColor: theme.palette.divider,\n }),\n borderLeft: (width = 1) => ({\n borderLeftWidth: width,\n borderStyle: 'solid',\n borderColor: theme.palette.divider,\n }),\n borderRight: (width = 1) => ({\n borderRightWidth: width,\n borderStyle: 'solid',\n borderColor: theme.palette.divider,\n }),\n borderTop: (width = 1) => ({\n borderTopWidth: width,\n borderStyle: 'solid',\n borderColor: theme.palette.divider,\n }),\n borderBottom: (width = 1) => ({\n borderBottomWidth: width,\n borderStyle: 'solid',\n borderColor: theme.palette.divider,\n }),\n };\n}\n"],"names":["outlinedInputLabelFontSize","outlinedInputLabelShrinkScale","outlinedInputLabelGapPadding","defaultLayoutStyle","defaultTheme","grey","defaultNavbarTheme","merge","defaultToolbarTheme","defaultSnackbarTheme","getInputFocusColor","theme","_a","__name","getDefaultDirection","getDefaultLayout","style","resolvedStyle","themeLayoutConfigs","getDefaultThemeSettings","themesConfig","defaultSettings","getParsedQuerySettings","parsedQueryString","qs","generateSettings","_defaultSettings","_newSettings","nextLayoutStyle","shouldResetLayoutConfig","_b","createInitialOwpSettings","settingsConfig","baseSettings","defaultThemeOptions","mustHaveThemeOptions","defaultThemes","owpDark","lightBlue","red","extendThemeWithMixins","obj","createTheme","width"],"mappings":"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"}
@@ -2,24 +2,24 @@ var a = Object.defineProperty;
2
2
  var o = (t, e) => a(t, "name", { value: e, configurable: !0 });
3
3
  const G = "/assets/vendors/Grid", d = "__OWP_TREE_GRID_ASSET_BASE_PATH__", L = "Styles/Roboto-Light.ttf";
4
4
  let E, c;
5
- const O = "#f44336", C = "#ffe0b2", h = "#c00000", p = "OwpTreeGridChangedCell", g = "#ffa726", D = "#ffffff", H = 600, l = "RobotoLight", N = [
5
+ const D = "#f44336", u = "#ffe0b2", C = "#D7FFD7", h = "#c00000", p = "OwpTreeGridChangedCell", g = "#ffa726", H = "#ffffff", N = 600, l = "RobotoLight", P = [
6
6
  "Pretendard",
7
7
  "Roboto",
8
8
  '"Helvetica"',
9
9
  "Arial",
10
10
  "sans-serif"
11
- ].join(", "), f = /^#?(?<hex>[0-9a-f]{3}|[0-9a-f]{6})$/i, I = /^rgba?\(\s*(?<r>\d{1,3})\s*,\s*(?<g>\d{1,3})\s*,\s*(?<b>\d{1,3})(?:\s*,\s*(?<a>[\d.]+))?\s*\)$/i, m = /* @__PURE__ */ o((t) => {
11
+ ].join(", "), f = /^#?(?<hex>[0-9a-f]{3}|[0-9a-f]{6})$/i, I = /^rgba?\(\s*(?<r>\d{1,3})\s*,\s*(?<g>\d{1,3})\s*,\s*(?<b>\d{1,3})(?:\s*,\s*(?<a>[\d.]+))?\s*\)$/i, A = /* @__PURE__ */ o((t) => {
12
12
  const e = t.trim();
13
13
  return (e.startsWith("/") ? e : `/${e}`).replace(/\/+$/, "");
14
- }, "normalizeTreeGridAssetBasePath"), A = /* @__PURE__ */ o(() => {
14
+ }, "normalizeTreeGridAssetBasePath"), O = /* @__PURE__ */ o(() => {
15
15
  const t = typeof window > "u" ? void 0 : window, e = t == null ? void 0 : t[d];
16
- return m(
16
+ return A(
17
17
  e || G
18
18
  );
19
19
  }, "getTreeGridAssetBasePath"), i = /* @__PURE__ */ o((t) => {
20
20
  const e = t.replace(/^\/+/, "");
21
- return `${A()}/${e}`;
22
- }, "resolveTreeGridAssetUrl"), P = /* @__PURE__ */ o((t) => i(t === "kr" ? "TextKR.xml" : "TextEN.xml"), "getTreeGridTextResourceUrl"), S = /* @__PURE__ */ o((t) => {
21
+ return `${O()}/${e}`;
22
+ }, "resolveTreeGridAssetUrl"), S = /* @__PURE__ */ o((t) => i(t === "kr" ? "TextKR.xml" : "TextEN.xml"), "getTreeGridTextResourceUrl"), F = /* @__PURE__ */ o((t) => {
23
23
  var R;
24
24
  if (!t)
25
25
  return;
@@ -36,7 +36,7 @@ const O = "#f44336", C = "#ffe0b2", h = "#c00000", p = "OwpTreeGridChangedCell",
36
36
  );
37
37
  if (!_.some((s) => Number.isNaN(s) || s < 0 || s > 255))
38
38
  return (_[0] << 16) + (_[1] << 8) + _[2];
39
- }, "resolveTreeGridColorNumber"), F = /* @__PURE__ */ o(() => {
39
+ }, "resolveTreeGridColorNumber"), x = /* @__PURE__ */ o(() => {
40
40
  const t = i(L);
41
41
  return E && c === t || (c = t, E = {
42
42
  "@font-face": {
@@ -48,19 +48,20 @@ const O = "#f44336", C = "#ffe0b2", h = "#c00000", p = "OwpTreeGridChangedCell",
48
48
  }), E;
49
49
  }, "getTreeGridFontFaceStyles");
50
50
  export {
51
+ C as TREEGRID_ADDED_ROW_BACKGROUND_COLOR,
51
52
  p as TREEGRID_CELL_CHANGED_CLASS,
52
53
  g as TREEGRID_CELL_HIGHLIGHT_COLOR,
53
- H as TREEGRID_CELL_HIGHLIGHT_FONT_WEIGHT,
54
- D as TREEGRID_CELL_HIGHLIGHT_TEXT_COLOR,
54
+ N as TREEGRID_CELL_HIGHLIGHT_FONT_WEIGHT,
55
+ H as TREEGRID_CELL_HIGHLIGHT_TEXT_COLOR,
55
56
  h as TREEGRID_ERROR_CELL_BORDER_COLOR,
56
57
  l as TREEGRID_FONT_FAMILY,
57
- N as TREEGRID_FONT_FAMILY_STACK,
58
- C as TREEGRID_INPUT_CELL_COLOR,
59
- O as TREEGRID_WARNING_CELL_COLOR,
60
- A as getTreeGridAssetBasePath,
61
- F as getTreeGridFontFaceStyles,
62
- P as getTreeGridTextResourceUrl,
58
+ P as TREEGRID_FONT_FAMILY_STACK,
59
+ u as TREEGRID_INPUT_CELL_COLOR,
60
+ D as TREEGRID_WARNING_CELL_COLOR,
61
+ O as getTreeGridAssetBasePath,
62
+ x as getTreeGridFontFaceStyles,
63
+ S as getTreeGridTextResourceUrl,
63
64
  i as resolveTreeGridAssetUrl,
64
- S as resolveTreeGridColorNumber
65
+ F as resolveTreeGridColorNumber
65
66
  };
66
67
  //# sourceMappingURL=treeGrid.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"treeGrid.js","sources":["../../src/constants/treeGrid.ts"],"sourcesContent":["const TREEGRID_DEFAULT_ASSET_BASE_PATH = '/assets/vendors/Grid';\nconst TREEGRID_ASSET_BASE_PATH_GLOBAL_KEY = '__OWP_TREE_GRID_ASSET_BASE_PATH__';\nconst TREEGRID_FONT_PATH = 'Styles/Roboto-Light.ttf';\nlet cachedTreeGridFontFaceStyles: { '@font-face': Record<string, string> } | undefined;\nlet cachedTreeGridFontUrl: string | undefined;\n\nexport const TREEGRID_WARNING_CELL_COLOR = '#f44336';\nexport const TREEGRID_INPUT_CELL_COLOR = '#ffe0b2';\nexport const TREEGRID_ERROR_CELL_BORDER_COLOR = '#c00000';\nexport const TREEGRID_CELL_CHANGED_CLASS = 'OwpTreeGridChangedCell';\nexport const TREEGRID_CELL_HIGHLIGHT_COLOR = '#ffa726';\nexport const TREEGRID_CELL_HIGHLIGHT_TEXT_COLOR = '#ffffff';\nexport const TREEGRID_CELL_HIGHLIGHT_FONT_WEIGHT = 600;\nexport const TREEGRID_FONT_FAMILY = 'RobotoLight';\nexport const TREEGRID_FONT_FAMILY_STACK = [\n 'Pretendard',\n 'Roboto',\n '\"Helvetica\"',\n 'Arial',\n 'sans-serif',\n].join(', ');\nconst TREEGRID_HEX_COLOR_PATTERN = /^#?(?<hex>[0-9a-f]{3}|[0-9a-f]{6})$/i;\nconst TREEGRID_RGB_COLOR_PATTERN =\n /^rgba?\\(\\s*(?<r>\\d{1,3})\\s*,\\s*(?<g>\\d{1,3})\\s*,\\s*(?<b>\\d{1,3})(?:\\s*,\\s*(?<a>[\\d.]+))?\\s*\\)$/i;\n\n/** TreeGrid 자산 base path 정규화 */\nconst normalizeTreeGridAssetBasePath = (assetBasePath: string) => {\n const trimmedPath = assetBasePath.trim();\n const normalizedPath = trimmedPath.startsWith('/') ? trimmedPath : `/${trimmedPath}`;\n\n return normalizedPath.replace(/\\/+$/, '');\n};\n\n/** TreeGrid 자산 base path 조회 */\nexport const getTreeGridAssetBasePath = () => {\n const runtimeWindow =\n typeof window === 'undefined'\n ? undefined\n : (window as Window & {\n [TREEGRID_ASSET_BASE_PATH_GLOBAL_KEY]?: string;\n });\n const runtimeAssetBasePath = runtimeWindow?.[TREEGRID_ASSET_BASE_PATH_GLOBAL_KEY];\n\n return normalizeTreeGridAssetBasePath(\n runtimeAssetBasePath || TREEGRID_DEFAULT_ASSET_BASE_PATH,\n );\n};\n\n/** TreeGrid 자산 URL 생성 */\nexport const resolveTreeGridAssetUrl = (assetPath: string) => {\n const normalizedAssetPath = assetPath.replace(/^\\/+/, '');\n\n return `${getTreeGridAssetBasePath()}/${normalizedAssetPath}`;\n};\n\n/** TreeGrid 다국어 리소스 URL 조회 */\nexport const getTreeGridTextResourceUrl = (languageId: string) => {\n return resolveTreeGridAssetUrl(languageId === 'kr' ? 'TextKR.xml' : 'TextEN.xml');\n};\n\n/**\n * TreeGrid 색상 문자열 숫자 변환\n * @param color CSS 색상 문자열\n */\nexport const resolveTreeGridColorNumber = (color?: string | null) => {\n if (!color) {\n return undefined;\n }\n\n const trimmedColor = color.trim();\n const hexMatch = trimmedColor.match(TREEGRID_HEX_COLOR_PATTERN);\n\n if (hexMatch?.groups?.hex) {\n const normalizedHex =\n hexMatch.groups.hex.length === 3\n ? hexMatch.groups.hex\n .split('')\n .map((value) => `${value}${value}`)\n .join('')\n : hexMatch.groups.hex;\n\n return Number.parseInt(normalizedHex, 16);\n }\n\n const rgbMatch = trimmedColor.match(TREEGRID_RGB_COLOR_PATTERN);\n\n if (!rgbMatch?.groups) {\n return undefined;\n }\n\n const channels = [rgbMatch.groups.r, rgbMatch.groups.g, rgbMatch.groups.b].map((value) =>\n Number.parseInt(value, 10),\n );\n\n if (channels.some((value) => Number.isNaN(value) || value < 0 || value > 255)) {\n return undefined;\n }\n\n return (channels[0] << 16) + (channels[1] << 8) + channels[2];\n};\n\n/** TreeGrid 폰트 face 스타일 조회 */\nexport const getTreeGridFontFaceStyles = () => {\n const fontUrl = resolveTreeGridAssetUrl(TREEGRID_FONT_PATH);\n\n if (cachedTreeGridFontFaceStyles && cachedTreeGridFontUrl === fontUrl) {\n return cachedTreeGridFontFaceStyles;\n }\n\n cachedTreeGridFontUrl = fontUrl;\n cachedTreeGridFontFaceStyles = {\n '@font-face': {\n fontFamily: TREEGRID_FONT_FAMILY,\n fontStyle: 'normal',\n fontWeight: 'normal',\n src: `url('${fontUrl}') format('truetype')`,\n },\n };\n\n return cachedTreeGridFontFaceStyles;\n};\n"],"names":["TREEGRID_DEFAULT_ASSET_BASE_PATH","TREEGRID_ASSET_BASE_PATH_GLOBAL_KEY","TREEGRID_FONT_PATH","cachedTreeGridFontFaceStyles","cachedTreeGridFontUrl","TREEGRID_WARNING_CELL_COLOR","TREEGRID_INPUT_CELL_COLOR","TREEGRID_ERROR_CELL_BORDER_COLOR","TREEGRID_CELL_CHANGED_CLASS","TREEGRID_CELL_HIGHLIGHT_COLOR","TREEGRID_CELL_HIGHLIGHT_TEXT_COLOR","TREEGRID_CELL_HIGHLIGHT_FONT_WEIGHT","TREEGRID_FONT_FAMILY","TREEGRID_FONT_FAMILY_STACK","TREEGRID_HEX_COLOR_PATTERN","TREEGRID_RGB_COLOR_PATTERN","normalizeTreeGridAssetBasePath","__name","assetBasePath","trimmedPath","getTreeGridAssetBasePath","runtimeWindow","runtimeAssetBasePath","resolveTreeGridAssetUrl","assetPath","normalizedAssetPath","getTreeGridTextResourceUrl","languageId","resolveTreeGridColorNumber","color","_a","trimmedColor","hexMatch","normalizedHex","value","rgbMatch","channels","getTreeGridFontFaceStyles","fontUrl"],"mappings":";;AAAA,MAAMA,IAAmC,wBACnCC,IAAsC,qCACtCC,IAAqB;AAC3B,IAAIC,GACAC;AAEG,MAAMC,IAA8B,WAC9BC,IAA4B,WAC5BC,IAAmC,WACnCC,IAA8B,0BAC9BC,IAAgC,WAChCC,IAAqC,WACrCC,IAAsC,KACtCC,IAAuB,eACvBC,IAA6B;AAAA,EACxC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,EAAE,KAAK,IAAI,GACLC,IAA6B,wCAC7BC,IACJ,mGAGIC,IAAiC,gBAAAC,EAAA,CAACC,MAA0B;AAChE,QAAMC,IAAcD,EAAc,KAAA;AAGlC,UAFuBC,EAAY,WAAW,GAAG,IAAIA,IAAc,IAAIA,CAAW,IAE5D,QAAQ,QAAQ,EAAE;AAC1C,GALuC,mCAQ1BC,IAA2B,gBAAAH,EAAA,MAAM;AAC5C,QAAMI,IACJ,OAAO,SAAW,MACd,SACC,QAGDC,IAAuBD,KAAA,gBAAAA,EAAgBpB;AAE7C,SAAOe;AAAA,IACLM,KAAwBtB;AAAA,EAAA;AAE5B,GAZwC,6BAe3BuB,IAA0B,gBAAAN,EAAA,CAACO,MAAsB;AAC5D,QAAMC,IAAsBD,EAAU,QAAQ,QAAQ,EAAE;AAExD,SAAO,GAAGJ,EAAA,CAA0B,IAAIK,CAAmB;AAC7D,GAJuC,4BAO1BC,IAA6B,gBAAAT,EAAA,CAACU,MAClCJ,EAAwBI,MAAe,OAAO,eAAe,YAAY,GADxC,+BAQ7BC,IAA6B,gBAAAX,EAAA,CAACY,MAA0B;AAhErE,MAAAC;AAiEE,MAAI,CAACD;AACH;AAGF,QAAME,IAAeF,EAAM,KAAA,GACrBG,IAAWD,EAAa,MAAMjB,CAA0B;AAE9D,OAAIgB,IAAAE,KAAA,gBAAAA,EAAU,WAAV,QAAAF,EAAkB,KAAK;AACzB,UAAMG,IACJD,EAAS,OAAO,IAAI,WAAW,IAC3BA,EAAS,OAAO,IACb,MAAM,EAAE,EACR,IAAI,CAACE,MAAU,GAAGA,CAAK,GAAGA,CAAK,EAAE,EACjC,KAAK,EAAE,IACVF,EAAS,OAAO;AAEtB,WAAO,OAAO,SAASC,GAAe,EAAE;AAAA,EAC1C;AAEA,QAAME,IAAWJ,EAAa,MAAMhB,CAA0B;AAE9D,MAAI,EAACoB,KAAA,QAAAA,EAAU;AACb;AAGF,QAAMC,IAAW,CAACD,EAAS,OAAO,GAAGA,EAAS,OAAO,GAAGA,EAAS,OAAO,CAAC,EAAE;AAAA,IAAI,CAACD,MAC9E,OAAO,SAASA,GAAO,EAAE;AAAA,EAAA;AAG3B,MAAI,CAAAE,EAAS,KAAK,CAACF,MAAU,OAAO,MAAMA,CAAK,KAAKA,IAAQ,KAAKA,IAAQ,GAAG;AAI5E,YAAQE,EAAS,CAAC,KAAK,OAAOA,EAAS,CAAC,KAAK,KAAKA,EAAS,CAAC;AAC9D,GAnC0C,+BAsC7BC,IAA4B,gBAAApB,EAAA,MAAM;AAC7C,QAAMqB,IAAUf,EAAwBrB,CAAkB;AAE1D,SAAIC,KAAgCC,MAA0BkC,MAI9DlC,IAAwBkC,GACxBnC,IAA+B;AAAA,IAC7B,cAAc;AAAA,MACZ,YAAYS;AAAA,MACZ,WAAW;AAAA,MACX,YAAY;AAAA,MACZ,KAAK,QAAQ0B,CAAO;AAAA,IAAA;AAAA,EACtB,IAGKnC;AACT,GAlByC;"}
1
+ {"version":3,"file":"treeGrid.js","sources":["../../src/constants/treeGrid.ts"],"sourcesContent":["const TREEGRID_DEFAULT_ASSET_BASE_PATH = '/assets/vendors/Grid';\nconst TREEGRID_ASSET_BASE_PATH_GLOBAL_KEY = '__OWP_TREE_GRID_ASSET_BASE_PATH__';\nconst TREEGRID_FONT_PATH = 'Styles/Roboto-Light.ttf';\nlet cachedTreeGridFontFaceStyles: { '@font-face': Record<string, string> } | undefined;\nlet cachedTreeGridFontUrl: string | undefined;\n\nexport const TREEGRID_WARNING_CELL_COLOR = '#f44336';\nexport const TREEGRID_INPUT_CELL_COLOR = '#ffe0b2';\nexport const TREEGRID_ADDED_ROW_BACKGROUND_COLOR = '#D7FFD7';\nexport const TREEGRID_ERROR_CELL_BORDER_COLOR = '#c00000';\nexport const TREEGRID_CELL_CHANGED_CLASS = 'OwpTreeGridChangedCell';\nexport const TREEGRID_CELL_HIGHLIGHT_COLOR = '#ffa726';\nexport const TREEGRID_CELL_HIGHLIGHT_TEXT_COLOR = '#ffffff';\nexport const TREEGRID_CELL_HIGHLIGHT_FONT_WEIGHT = 600;\nexport const TREEGRID_FONT_FAMILY = 'RobotoLight';\nexport const TREEGRID_FONT_FAMILY_STACK = [\n 'Pretendard',\n 'Roboto',\n '\"Helvetica\"',\n 'Arial',\n 'sans-serif',\n].join(', ');\nconst TREEGRID_HEX_COLOR_PATTERN = /^#?(?<hex>[0-9a-f]{3}|[0-9a-f]{6})$/i;\nconst TREEGRID_RGB_COLOR_PATTERN =\n /^rgba?\\(\\s*(?<r>\\d{1,3})\\s*,\\s*(?<g>\\d{1,3})\\s*,\\s*(?<b>\\d{1,3})(?:\\s*,\\s*(?<a>[\\d.]+))?\\s*\\)$/i;\n\n/** TreeGrid 자산 base path 정규화 */\nconst normalizeTreeGridAssetBasePath = (assetBasePath: string) => {\n const trimmedPath = assetBasePath.trim();\n const normalizedPath = trimmedPath.startsWith('/') ? trimmedPath : `/${trimmedPath}`;\n\n return normalizedPath.replace(/\\/+$/, '');\n};\n\n/** TreeGrid 자산 base path 조회 */\nexport const getTreeGridAssetBasePath = () => {\n const runtimeWindow =\n typeof window === 'undefined'\n ? undefined\n : (window as Window & {\n [TREEGRID_ASSET_BASE_PATH_GLOBAL_KEY]?: string;\n });\n const runtimeAssetBasePath = runtimeWindow?.[TREEGRID_ASSET_BASE_PATH_GLOBAL_KEY];\n\n return normalizeTreeGridAssetBasePath(\n runtimeAssetBasePath || TREEGRID_DEFAULT_ASSET_BASE_PATH,\n );\n};\n\n/** TreeGrid 자산 URL 생성 */\nexport const resolveTreeGridAssetUrl = (assetPath: string) => {\n const normalizedAssetPath = assetPath.replace(/^\\/+/, '');\n\n return `${getTreeGridAssetBasePath()}/${normalizedAssetPath}`;\n};\n\n/** TreeGrid 다국어 리소스 URL 조회 */\nexport const getTreeGridTextResourceUrl = (languageId: string) => {\n return resolveTreeGridAssetUrl(languageId === 'kr' ? 'TextKR.xml' : 'TextEN.xml');\n};\n\n/**\n * TreeGrid 색상 문자열 숫자 변환\n * @param color CSS 색상 문자열\n */\nexport const resolveTreeGridColorNumber = (color?: string | null) => {\n if (!color) {\n return undefined;\n }\n\n const trimmedColor = color.trim();\n const hexMatch = trimmedColor.match(TREEGRID_HEX_COLOR_PATTERN);\n\n if (hexMatch?.groups?.hex) {\n const normalizedHex =\n hexMatch.groups.hex.length === 3\n ? hexMatch.groups.hex\n .split('')\n .map((value) => `${value}${value}`)\n .join('')\n : hexMatch.groups.hex;\n\n return Number.parseInt(normalizedHex, 16);\n }\n\n const rgbMatch = trimmedColor.match(TREEGRID_RGB_COLOR_PATTERN);\n\n if (!rgbMatch?.groups) {\n return undefined;\n }\n\n const channels = [rgbMatch.groups.r, rgbMatch.groups.g, rgbMatch.groups.b].map((value) =>\n Number.parseInt(value, 10),\n );\n\n if (channels.some((value) => Number.isNaN(value) || value < 0 || value > 255)) {\n return undefined;\n }\n\n return (channels[0] << 16) + (channels[1] << 8) + channels[2];\n};\n\n/** TreeGrid 폰트 face 스타일 조회 */\nexport const getTreeGridFontFaceStyles = () => {\n const fontUrl = resolveTreeGridAssetUrl(TREEGRID_FONT_PATH);\n\n if (cachedTreeGridFontFaceStyles && cachedTreeGridFontUrl === fontUrl) {\n return cachedTreeGridFontFaceStyles;\n }\n\n cachedTreeGridFontUrl = fontUrl;\n cachedTreeGridFontFaceStyles = {\n '@font-face': {\n fontFamily: TREEGRID_FONT_FAMILY,\n fontStyle: 'normal',\n fontWeight: 'normal',\n src: `url('${fontUrl}') format('truetype')`,\n },\n };\n\n return cachedTreeGridFontFaceStyles;\n};\n"],"names":["TREEGRID_DEFAULT_ASSET_BASE_PATH","TREEGRID_ASSET_BASE_PATH_GLOBAL_KEY","TREEGRID_FONT_PATH","cachedTreeGridFontFaceStyles","cachedTreeGridFontUrl","TREEGRID_WARNING_CELL_COLOR","TREEGRID_INPUT_CELL_COLOR","TREEGRID_ADDED_ROW_BACKGROUND_COLOR","TREEGRID_ERROR_CELL_BORDER_COLOR","TREEGRID_CELL_CHANGED_CLASS","TREEGRID_CELL_HIGHLIGHT_COLOR","TREEGRID_CELL_HIGHLIGHT_TEXT_COLOR","TREEGRID_CELL_HIGHLIGHT_FONT_WEIGHT","TREEGRID_FONT_FAMILY","TREEGRID_FONT_FAMILY_STACK","TREEGRID_HEX_COLOR_PATTERN","TREEGRID_RGB_COLOR_PATTERN","normalizeTreeGridAssetBasePath","__name","assetBasePath","trimmedPath","getTreeGridAssetBasePath","runtimeWindow","runtimeAssetBasePath","resolveTreeGridAssetUrl","assetPath","normalizedAssetPath","getTreeGridTextResourceUrl","languageId","resolveTreeGridColorNumber","color","_a","trimmedColor","hexMatch","normalizedHex","value","rgbMatch","channels","getTreeGridFontFaceStyles","fontUrl"],"mappings":";;AAAA,MAAMA,IAAmC,wBACnCC,IAAsC,qCACtCC,IAAqB;AAC3B,IAAIC,GACAC;AAEG,MAAMC,IAA8B,WAC9BC,IAA4B,WAC5BC,IAAsC,WACtCC,IAAmC,WACnCC,IAA8B,0BAC9BC,IAAgC,WAChCC,IAAqC,WACrCC,IAAsC,KACtCC,IAAuB,eACvBC,IAA6B;AAAA,EACxC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,EAAE,KAAK,IAAI,GACLC,IAA6B,wCAC7BC,IACJ,mGAGIC,IAAiC,gBAAAC,EAAA,CAACC,MAA0B;AAChE,QAAMC,IAAcD,EAAc,KAAA;AAGlC,UAFuBC,EAAY,WAAW,GAAG,IAAIA,IAAc,IAAIA,CAAW,IAE5D,QAAQ,QAAQ,EAAE;AAC1C,GALuC,mCAQ1BC,IAA2B,gBAAAH,EAAA,MAAM;AAC5C,QAAMI,IACJ,OAAO,SAAW,MACd,SACC,QAGDC,IAAuBD,KAAA,gBAAAA,EAAgBrB;AAE7C,SAAOgB;AAAA,IACLM,KAAwBvB;AAAA,EAAA;AAE5B,GAZwC,6BAe3BwB,IAA0B,gBAAAN,EAAA,CAACO,MAAsB;AAC5D,QAAMC,IAAsBD,EAAU,QAAQ,QAAQ,EAAE;AAExD,SAAO,GAAGJ,EAAA,CAA0B,IAAIK,CAAmB;AAC7D,GAJuC,4BAO1BC,IAA6B,gBAAAT,EAAA,CAACU,MAClCJ,EAAwBI,MAAe,OAAO,eAAe,YAAY,GADxC,+BAQ7BC,IAA6B,gBAAAX,EAAA,CAACY,MAA0B;AAjErE,MAAAC;AAkEE,MAAI,CAACD;AACH;AAGF,QAAME,IAAeF,EAAM,KAAA,GACrBG,IAAWD,EAAa,MAAMjB,CAA0B;AAE9D,OAAIgB,IAAAE,KAAA,gBAAAA,EAAU,WAAV,QAAAF,EAAkB,KAAK;AACzB,UAAMG,IACJD,EAAS,OAAO,IAAI,WAAW,IAC3BA,EAAS,OAAO,IACb,MAAM,EAAE,EACR,IAAI,CAACE,MAAU,GAAGA,CAAK,GAAGA,CAAK,EAAE,EACjC,KAAK,EAAE,IACVF,EAAS,OAAO;AAEtB,WAAO,OAAO,SAASC,GAAe,EAAE;AAAA,EAC1C;AAEA,QAAME,IAAWJ,EAAa,MAAMhB,CAA0B;AAE9D,MAAI,EAACoB,KAAA,QAAAA,EAAU;AACb;AAGF,QAAMC,IAAW,CAACD,EAAS,OAAO,GAAGA,EAAS,OAAO,GAAGA,EAAS,OAAO,CAAC,EAAE;AAAA,IAAI,CAACD,MAC9E,OAAO,SAASA,GAAO,EAAE;AAAA,EAAA;AAG3B,MAAI,CAAAE,EAAS,KAAK,CAACF,MAAU,OAAO,MAAMA,CAAK,KAAKA,IAAQ,KAAKA,IAAQ,GAAG;AAI5E,YAAQE,EAAS,CAAC,KAAK,OAAOA,EAAS,CAAC,KAAK,KAAKA,EAAS,CAAC;AAC9D,GAnC0C,+BAsC7BC,IAA4B,gBAAApB,EAAA,MAAM;AAC7C,QAAMqB,IAAUf,EAAwBtB,CAAkB;AAE1D,SAAIC,KAAgCC,MAA0BmC,MAI9DnC,IAAwBmC,GACxBpC,IAA+B;AAAA,IAC7B,cAAc;AAAA,MACZ,YAAYU;AAAA,MACZ,WAAW;AAAA,MACX,YAAY;AAAA,MACZ,KAAK,QAAQ0B,CAAO;AAAA,IAAA;AAAA,EACtB,IAGKpC;AACT,GAlByC;"}
package/dist/constants.js CHANGED
@@ -1,38 +1,39 @@
1
- import { DEFAULT_CELL_ALIGNMENT as L, DEFAULT_HEADER_FILL as R, DEFAULT_HEADER_FONT as T, DEFAULT_THIN_BORDER as A, DEFAULT_VALUE_FONT as G, DEFAULT_WRAP_CELL_ALIGNMENT as e } from "./constants/excel.js";
2
- import { FALLBACK_LANGUAGE_LIST as O } from "./constants/language.js";
1
+ import { DEFAULT_CELL_ALIGNMENT as R, DEFAULT_HEADER_FILL as L, DEFAULT_HEADER_FONT as T, DEFAULT_THIN_BORDER as A, DEFAULT_VALUE_FONT as G, DEFAULT_WRAP_CELL_ALIGNMENT as O } from "./constants/excel.js";
2
+ import { FALLBACK_LANGUAGE_LIST as D } from "./constants/language.js";
3
3
  import { CURRENT_LANGUAGE as I, LOCAL_STORAGE_KEYS as C, STORAGE_ACCESS_TOKEN_KEY as o } from "./constants/localStorageKeys.js";
4
4
  import { STORAGE_KEYS as F } from "./constants/storageKeys.js";
5
- import { DEFAULT_TABLE_RADIUS as H } from "./constants/table.js";
6
- import { TREEGRID_CELL_CHANGED_CLASS as S, TREEGRID_CELL_HIGHLIGHT_COLOR as B, TREEGRID_CELL_HIGHLIGHT_FONT_WEIGHT as s, TREEGRID_CELL_HIGHLIGHT_TEXT_COLOR as m, TREEGRID_ERROR_CELL_BORDER_COLOR as x, TREEGRID_FONT_FAMILY as f, TREEGRID_FONT_FAMILY_STACK as p, TREEGRID_INPUT_CELL_COLOR as l, TREEGRID_WARNING_CELL_COLOR as K, getTreeGridAssetBasePath as Y, getTreeGridFontFaceStyles as d, getTreeGridTextResourceUrl as i, resolveTreeGridAssetUrl as M, resolveTreeGridColorNumber as a } from "./constants/treeGrid.js";
7
- import { TREEGRID_TABLE_BODY_BORDER_COLOR as P, TREEGRID_TABLE_HEADER_BORDER_COLOR as W } from "./components/OwpTable/internal/treeGridTableStyle.js";
5
+ import { DEFAULT_TABLE_RADIUS as U } from "./constants/table.js";
6
+ import { TREEGRID_ADDED_ROW_BACKGROUND_COLOR as S, TREEGRID_CELL_CHANGED_CLASS as B, TREEGRID_CELL_HIGHLIGHT_COLOR as s, TREEGRID_CELL_HIGHLIGHT_FONT_WEIGHT as m, TREEGRID_CELL_HIGHLIGHT_TEXT_COLOR as x, TREEGRID_ERROR_CELL_BORDER_COLOR as f, TREEGRID_FONT_FAMILY as p, TREEGRID_FONT_FAMILY_STACK as K, TREEGRID_INPUT_CELL_COLOR as l, TREEGRID_WARNING_CELL_COLOR as Y, getTreeGridAssetBasePath as d, getTreeGridFontFaceStyles as i, getTreeGridTextResourceUrl as M, resolveTreeGridAssetUrl as W, resolveTreeGridColorNumber as a } from "./constants/treeGrid.js";
7
+ import { TREEGRID_TABLE_BODY_BORDER_COLOR as P, TREEGRID_TABLE_HEADER_BORDER_COLOR as c } from "./components/OwpTable/internal/treeGridTableStyle.js";
8
8
  export {
9
9
  I as CURRENT_LANGUAGE,
10
- L as DEFAULT_CELL_ALIGNMENT,
11
- R as DEFAULT_HEADER_FILL,
10
+ R as DEFAULT_CELL_ALIGNMENT,
11
+ L as DEFAULT_HEADER_FILL,
12
12
  T as DEFAULT_HEADER_FONT,
13
- H as DEFAULT_TABLE_RADIUS,
13
+ U as DEFAULT_TABLE_RADIUS,
14
14
  A as DEFAULT_THIN_BORDER,
15
15
  G as DEFAULT_VALUE_FONT,
16
- e as DEFAULT_WRAP_CELL_ALIGNMENT,
17
- O as FALLBACK_LANGUAGE_LIST,
16
+ O as DEFAULT_WRAP_CELL_ALIGNMENT,
17
+ D as FALLBACK_LANGUAGE_LIST,
18
18
  C as LOCAL_STORAGE_KEYS,
19
19
  o as STORAGE_ACCESS_TOKEN_KEY,
20
20
  F as STORAGE_KEYS,
21
- S as TREEGRID_CELL_CHANGED_CLASS,
22
- B as TREEGRID_CELL_HIGHLIGHT_COLOR,
23
- s as TREEGRID_CELL_HIGHLIGHT_FONT_WEIGHT,
24
- m as TREEGRID_CELL_HIGHLIGHT_TEXT_COLOR,
25
- x as TREEGRID_ERROR_CELL_BORDER_COLOR,
26
- f as TREEGRID_FONT_FAMILY,
27
- p as TREEGRID_FONT_FAMILY_STACK,
21
+ S as TREEGRID_ADDED_ROW_BACKGROUND_COLOR,
22
+ B as TREEGRID_CELL_CHANGED_CLASS,
23
+ s as TREEGRID_CELL_HIGHLIGHT_COLOR,
24
+ m as TREEGRID_CELL_HIGHLIGHT_FONT_WEIGHT,
25
+ x as TREEGRID_CELL_HIGHLIGHT_TEXT_COLOR,
26
+ f as TREEGRID_ERROR_CELL_BORDER_COLOR,
27
+ p as TREEGRID_FONT_FAMILY,
28
+ K as TREEGRID_FONT_FAMILY_STACK,
28
29
  l as TREEGRID_INPUT_CELL_COLOR,
29
30
  P as TREEGRID_TABLE_BODY_BORDER_COLOR,
30
- W as TREEGRID_TABLE_HEADER_BORDER_COLOR,
31
- K as TREEGRID_WARNING_CELL_COLOR,
32
- Y as getTreeGridAssetBasePath,
33
- d as getTreeGridFontFaceStyles,
34
- i as getTreeGridTextResourceUrl,
35
- M as resolveTreeGridAssetUrl,
31
+ c as TREEGRID_TABLE_HEADER_BORDER_COLOR,
32
+ Y as TREEGRID_WARNING_CELL_COLOR,
33
+ d as getTreeGridAssetBasePath,
34
+ i as getTreeGridFontFaceStyles,
35
+ M as getTreeGridTextResourceUrl,
36
+ W as resolveTreeGridAssetUrl,
36
37
  a as resolveTreeGridColorNumber
37
38
  };
38
39
  //# sourceMappingURL=constants.js.map
@@ -1,6 +1,6 @@
1
1
  var q = Object.defineProperty;
2
2
  var O = (C, _) => q(C, "name", { value: _, configurable: !0 });
3
- import { __exports as r } from "../../../../../../../../_virtual/index6.js";
3
+ import { __exports as r } from "../../../../../../../../_virtual/index7.js";
4
4
  import { __require as d } from "./CODE128_AUTO.js";
5
5
  import { __require as n } from "./CODE128A.js";
6
6
  import { __require as m } from "./CODE128B.js";
@@ -1,6 +1,6 @@
1
1
  var w = Object.defineProperty;
2
2
  var n = (f, a) => w(f, "name", { value: a, configurable: !0 });
3
- import { __exports as i } from "../../../../../../../../_virtual/index5.js";
3
+ import { __exports as i } from "../../../../../../../../_virtual/index6.js";
4
4
  import { __require as k } from "../Barcode.js";
5
5
  var _;
6
6
  function P() {
@@ -1,6 +1,6 @@
1
1
  var D = Object.defineProperty;
2
2
  var C = (u, t) => D(u, "name", { value: t, configurable: !0 });
3
- import { __exports as e } from "../../../../../../../../_virtual/index12.js";
3
+ import { __exports as e } from "../../../../../../../../_virtual/index13.js";
4
4
  import { __require as O } from "./CODE93.js";
5
5
  import { __require as E } from "./CODE93FullASCII.js";
6
6
  var l;
@@ -1,6 +1,6 @@
1
1
  var C = Object.defineProperty;
2
2
  var i = (u, a) => C(u, "name", { value: a, configurable: !0 });
3
- import { __exports as r } from "../../../../../../../../_virtual/index7.js";
3
+ import { __exports as r } from "../../../../../../../../_virtual/index8.js";
4
4
  import { __require as U } from "./EAN13.js";
5
5
  import { __require as s } from "./EAN8.js";
6
6
  import { __require as l } from "./EAN5.js";
@@ -1,6 +1,6 @@
1
1
  var b = Object.defineProperty;
2
2
  var r = (a, f) => b(a, "name", { value: f, configurable: !0 });
3
- import { __exports as u } from "../../../../../../../../_virtual/index13.js";
3
+ import { __exports as u } from "../../../../../../../../_virtual/index14.js";
4
4
  import { __require as p } from "../Barcode.js";
5
5
  var c;
6
6
  function w() {
@@ -1,6 +1,6 @@
1
1
  var T = Object.defineProperty;
2
2
  var i = (u, t) => T(u, "name", { value: t, configurable: !0 });
3
- import { __exports as e } from "../../../../../../../../_virtual/index8.js";
3
+ import { __exports as e } from "../../../../../../../../_virtual/index9.js";
4
4
  import { __require as f } from "./ITF.js";
5
5
  import { __require as n } from "./ITF14.js";
6
6
  var a;
@@ -1,6 +1,6 @@
1
1
  var v = Object.defineProperty;
2
2
  var I = (M, _) => v(M, "name", { value: _, configurable: !0 });
3
- import { __exports as r } from "../../../../../../../../_virtual/index9.js";
3
+ import { __exports as r } from "../../../../../../../../_virtual/index10.js";
4
4
  import { __require as n } from "./MSI.js";
5
5
  import { __require as s } from "./MSI10.js";
6
6
  import { __require as l } from "./MSI11.js";
@@ -1,6 +1,6 @@
1
1
  var p = Object.defineProperty;
2
2
  var a = (f, c) => p(f, "name", { value: c, configurable: !0 });
3
- import { __exports as i } from "../../../../../../../../_virtual/index11.js";
3
+ import { __exports as i } from "../../../../../../../../_virtual/index12.js";
4
4
  import { __require as g } from "../Barcode.js";
5
5
  var h;
6
6
  function w() {
@@ -1,6 +1,6 @@
1
1
  var v = Object.defineProperty;
2
2
  var i = (u, f) => v(u, "name", { value: f, configurable: !0 });
3
- import { __exports as a } from "../../../../../../../../_virtual/index10.js";
3
+ import { __exports as a } from "../../../../../../../../_virtual/index11.js";
4
4
  import { __require as y } from "../Barcode.js";
5
5
  var c;
6
6
  function q() {
@@ -1,6 +1,6 @@
1
1
  var v = Object.defineProperty;
2
2
  var _ = (a, t) => v(a, "name", { value: t, configurable: !0 });
3
- import { __exports as r } from "../../../../../../../_virtual/index14.js";
3
+ import { __exports as r } from "../../../../../../../_virtual/index15.js";
4
4
  import { __require as f } from "./canvas.js";
5
5
  import { __require as q } from "./svg.js";
6
6
  import { __require as c } from "./object.js";
@@ -1,6 +1,6 @@
1
1
  var S = Object.defineProperty;
2
2
  var e = (r, i) => S(r, "name", { value: i, configurable: !0 });
3
- import { __exports as n } from "../../../../../../../_virtual/utils2.js";
3
+ import { __exports as n } from "../../../../../../../_virtual/utils.js";
4
4
  var u;
5
5
  function c() {
6
6
  if (u) return n;
@@ -1,6 +1,6 @@
1
1
  var M = Object.defineProperty;
2
2
  var a = (l, h) => M(l, "name", { value: h, configurable: !0 });
3
- import { __exports as s } from "../../../../../../../_virtual/utils.js";
3
+ import { __exports as s } from "../../../../../../../_virtual/utils2.js";
4
4
  var w;
5
5
  function _() {
6
6
  return w ? s : (w = 1, (function(l) {
@@ -1,6 +1,6 @@
1
1
  var i = Object.defineProperty;
2
2
  var r = (t, s) => i(t, "name", { value: s, configurable: !0 });
3
- import { __module as e } from "../../../../../_virtual/index15.js";
3
+ import { __module as e } from "../../../../../_virtual/index5.js";
4
4
  import { __require as u } from "./cjs/react-is.production.min.js";
5
5
  import { __require as p } from "./cjs/react-is.development.js";
6
6
  var o;
@@ -1,7 +1,7 @@
1
1
  import type { OwpResolvedGridThemeConfigType } from '@/constants/gridTheme';
2
2
  import type { OwpGridThemeConfigType } from '@/types/OwpGridThemeTypes';
3
3
  import type { CSSProperties } from 'react';
4
- type TreeGridThemeCssVariableName = '--owp-tree-grid-body-background-color' | '--owp-tree-grid-body-color' | '--owp-tree-grid-body-fill-background-color' | '--owp-tree-grid-row-background-color' | '--owp-tree-grid-row-solid-background-color' | '--owp-tree-grid-toolbar-row-background-color' | '--owp-tree-grid-header-background-color' | '--owp-tree-grid-header-color' | '--owp-tree-grid-header-font-size' | '--owp-tree-grid-header-font-weight' | '--owp-tree-grid-header-height' | '--owp-tree-grid-cell-font-size' | '--owp-tree-grid-hover-row-background-color' | '--owp-tree-grid-hover-row-border-color' | '--owp-tree-grid-selected-cell-background-color' | '--owp-tree-grid-selected-row-background-color' | '--owp-tree-grid-focused-row-background-color' | '--owp-tree-grid-focused-row-border-color' | '--owp-tree-grid-hover-cell-background-color' | '--owp-tree-grid-hover-cell-border-color' | '--owp-tree-grid-focused-cell-background-color' | '--owp-tree-grid-focused-cell-border-color' | '--owp-tree-grid-editing-cell-border-color' | '--owp-tree-grid-error-cell-border-color' | '--owp-tree-grid-focused-cell-rect-background-color' | '--owp-tree-grid-changed-background-color' | '--owp-tree-grid-changed-text-color' | '--owp-tree-grid-changed-font-weight' | '--owp-tree-grid-table-border-radius';
4
+ type TreeGridThemeCssVariableName = '--owp-tree-grid-body-background-color' | '--owp-tree-grid-body-color' | '--owp-tree-grid-body-fill-background-color' | '--owp-tree-grid-row-background-color' | '--owp-tree-grid-row-solid-background-color' | '--owp-tree-grid-toolbar-row-background-color' | '--owp-tree-grid-header-background-color' | '--owp-tree-grid-header-color' | '--owp-tree-grid-header-font-size' | '--owp-tree-grid-header-font-weight' | '--owp-tree-grid-header-height' | '--owp-tree-grid-cell-font-size' | '--owp-tree-grid-hover-row-background-color' | '--owp-tree-grid-hover-row-border-color' | '--owp-tree-grid-selected-cell-background-color' | '--owp-tree-grid-selected-row-background-color' | '--owp-tree-grid-focused-row-background-color' | '--owp-tree-grid-focused-row-border-color' | '--owp-tree-grid-hover-cell-background-color' | '--owp-tree-grid-hover-cell-border-color' | '--owp-tree-grid-focused-cell-background-color' | '--owp-tree-grid-focused-cell-border-color' | '--owp-tree-grid-editing-cell-border-color' | '--owp-tree-grid-error-cell-border-color' | '--owp-tree-grid-focused-cell-rect-background-color' | '--owp-tree-grid-changed-background-color' | '--owp-tree-grid-changed-text-color' | '--owp-tree-grid-changed-font-weight' | '--owp-tree-grid-added-row-box-color' | '--owp-tree-grid-table-border-radius';
5
5
  type TreeGridLayoutDimensionValue = string | number;
6
6
  export type TreeGridThemeContainerStyle = CSSProperties & Partial<Record<TreeGridThemeCssVariableName, string>>;
7
7
  export declare const TREE_GRID_THEME_WRAPPER_CLASS = "owp-tree-grid-theme";
@@ -12,6 +12,9 @@ export declare const TREE_GRID_SELECT_ALL_INDETERMINATE_CLASS = "owp-tree-grid-s
12
12
  export declare const TREE_GRID_SELECT_ALL_UNCHECKED_CLASS = "owp-tree-grid-select-all-unchecked";
13
13
  export declare const TREE_GRID_SELECTED_CHANGED_CELL_CLASS = "owp-tree-grid-selected-changed-cell";
14
14
  export declare const TREE_GRID_ERROR_CELL_CLASS = "owp-tree-grid-error-cell";
15
+ export declare const TREE_GRID_ADDED_ROW_BOX_CELL_CLASS = "owp-tree-grid-added-row-box-cell";
16
+ export declare const TREE_GRID_ADDED_ROW_BOX_START_CLASS = "owp-tree-grid-added-row-box-start";
17
+ export declare const TREE_GRID_ADDED_ROW_BOX_END_CLASS = "owp-tree-grid-added-row-box-end";
15
18
  export declare const treeGridThemeStyles: Record<string, CSSProperties>;
16
19
  /**
17
20
  * TreeGrid theme CSS 변수 컨테이너 스타일 생성
@@ -259,10 +259,10 @@ export declare const defaultThemeOptions: {
259
259
  }) => {
260
260
  fontSize: string;
261
261
  transform: string;
262
- '&.Mui-focused': {
262
+ '&.Mui-focused:not(.Mui-error)': {
263
263
  color: string;
264
264
  };
265
- '&.MuiInputLabel-shrink': {
265
+ '&.MuiInputLabel-shrink:not(.Mui-error)': {
266
266
  color: string;
267
267
  };
268
268
  '&.MuiInputLabel-outlined.MuiInputLabel-shrink': {
@@ -310,13 +310,13 @@ export declare const defaultThemeOptions: {
310
310
  root: ({ theme }: {
311
311
  theme: any;
312
312
  }) => {
313
- '&:before': {
313
+ '&:not(.Mui-error):before': {
314
314
  borderBottomColor: string;
315
315
  };
316
316
  '&:hover:not(.Mui-disabled, .Mui-error):before': {
317
317
  borderBottomColor: string;
318
318
  };
319
- '&.Mui-focused:after': {
319
+ '&.Mui-focused:not(.Mui-error):after': {
320
320
  borderBottomColor: string;
321
321
  };
322
322
  };
@@ -363,13 +363,13 @@ export declare const defaultThemeOptions: {
363
363
  root: ({ theme }: {
364
364
  theme: any;
365
365
  }) => {
366
- '& .MuiOutlinedInput-notchedOutline': {
366
+ '&:not(.Mui-error) .MuiOutlinedInput-notchedOutline': {
367
367
  borderColor: string;
368
368
  };
369
- '&:hover .MuiOutlinedInput-notchedOutline': {
369
+ '&:hover:not(.Mui-disabled, .Mui-error) .MuiOutlinedInput-notchedOutline': {
370
370
  borderColor: string;
371
371
  };
372
- '&.Mui-focused .MuiOutlinedInput-notchedOutline': {
372
+ '&.Mui-focused:not(.Mui-error) .MuiOutlinedInput-notchedOutline': {
373
373
  borderColor: string;
374
374
  };
375
375
  };
@@ -1,5 +1,6 @@
1
1
  export declare const TREEGRID_WARNING_CELL_COLOR = "#f44336";
2
2
  export declare const TREEGRID_INPUT_CELL_COLOR = "#ffe0b2";
3
+ export declare const TREEGRID_ADDED_ROW_BACKGROUND_COLOR = "#D7FFD7";
3
4
  export declare const TREEGRID_ERROR_CELL_BORDER_COLOR = "#c00000";
4
5
  export declare const TREEGRID_CELL_CHANGED_CLASS = "OwpTreeGridChangedCell";
5
6
  export declare const TREEGRID_CELL_HIGHLIGHT_COLOR = "#ffa726";
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@owp/core",
3
3
  "private": false,
4
- "version": "2.5.36",
4
+ "version": "2.5.38",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
@@ -56,7 +56,7 @@
56
56
 
57
57
  AbsoluteCursors="" BorderCursors="1"
58
58
  FocusWholeRow="0" TabStop="1"
59
- Hover="2"
59
+ Hover="2" ShiftHint="1"
60
60
  ExactSize="1" ExactWidth="2" ConstWidth="1"
61
61
  ColorState="63"
62
62