@owp/core 2.2.3 → 2.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/index15.js +2 -5
- package/dist/_virtual/index15.js.map +1 -1
- package/dist/_virtual/index16.js +5 -2
- package/dist/_virtual/index16.js.map +1 -1
- package/dist/_virtual/index17.js +2 -2
- package/dist/_virtual/index5.js +2 -2
- package/dist/components/OwpMrtTable/OwpMrtTable.js +186 -162
- package/dist/components/OwpMrtTable/OwpMrtTable.js.map +1 -1
- package/dist/components/OwpPageTitle/OwpPageTitle.js +74 -18
- package/dist/components/OwpPageTitle/OwpPageTitle.js.map +1 -1
- package/dist/components/OwpSearchFilter/OwpSearchFilter.js +44 -29
- package/dist/components/OwpSearchFilter/OwpSearchFilter.js.map +1 -1
- package/dist/components/OwpSection/OwpSection.js +102 -41
- package/dist/components/OwpSection/OwpSection.js.map +1 -1
- package/dist/hooks/useHeaderWrapState.js +48 -0
- package/dist/hooks/useHeaderWrapState.js.map +1 -0
- package/dist/hooks.js +40 -38
- package/dist/hooks.js.map +1 -1
- package/dist/layout/components/navigation/vertical/NavVerticalLayout.js +63 -27
- package/dist/layout/components/navigation/vertical/NavVerticalLayout.js.map +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE128/constants.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/EAN_UPC/constants.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/renderers/index.js +1 -1
- package/dist/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/index.js +1 -1
- package/dist/node_modules/.pnpm/react-imask@7.6.1_react@19.2.4/node_modules/react-imask/esm/mixin.js +1 -1
- package/dist/node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/index.js +1 -1
- 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
- package/dist/owp-app.css +1 -1
- package/dist/types/components/OwpSection/OwpSection.d.ts +3 -1
- package/dist/types/hooks/index.d.ts +1 -0
- package/dist/types/hooks/useHeaderWrapState.d.ts +14 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OwpMrtTable.js","sources":["../../../src/components/OwpMrtTable/OwpMrtTable.tsx"],"sourcesContent":["import ArrowDropDownRoundedIcon from '@mui/icons-material/ArrowDropDownRounded';\nimport UnfoldMoreRoundedIcon from '@mui/icons-material/UnfoldMoreRounded';\nimport GlobalStyles from '@mui/material/GlobalStyles';\nimport { OwpSvgIcon } from '@/components/OwpSvgIcon';\nimport { useGetCurrentLanguage } from '@/hooks/useCurrentLanguage';\nimport { useOwpTranslation } from '@/hooks/useOwpTranslation';\nimport type {\n BoxProps,\n CheckboxProps,\n PaperProps,\n RadioProps,\n SvgIconProps,\n TableCellProps,\n TableContainerProps,\n TableProps,\n TableRowProps,\n} from '@mui/material';\nimport clsx from 'clsx';\nimport type { Theme } from '@mui/material/styles';\nimport { defaults as defaultsFC, isArray, isNumber } from 'es-toolkit/compat';\nimport {\n MaterialReactTable,\n type MaterialReactTableProps,\n MRT_BottomToolbar,\n type MRT_Cell,\n type MRT_Column,\n type MRT_Icons,\n type MRT_Row,\n type MRT_RowData,\n type MRT_TableInstance,\n useMaterialReactTable,\n} from 'material-react-table';\nimport { MRT_Localization_KO } from 'material-react-table/locales/ko';\nimport { OwpTableTotalCount } from '../OwpTable/OwpTable';\nimport { OwpMrtTableNoDataOverlay } from './OwpMrtTableNoDataOverlay';\nimport OwpMrtTableTopToolbar from './OwpMrtTableTopToolbar';\n\ntype PropsWithSx = {\n className?: string;\n sx?: unknown;\n};\n\ntype HeadCellArgs<TData extends MRT_RowData> = {\n column: MRT_Column<TData>;\n table: MRT_TableInstance<TData>;\n};\n\ntype BodyCellArgs<TData extends MRT_RowData> = {\n cell: MRT_Cell<TData>;\n column: MRT_Column<TData>;\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n};\n\ntype BodyRowArgs<TData extends MRT_RowData> = {\n isDetailPanel?: boolean;\n row: MRT_Row<TData>;\n staticRowIndex: number;\n table: MRT_TableInstance<TData>;\n};\n\ntype TableInstanceArgs<TData extends MRT_RowData> = {\n table: MRT_TableInstance<TData>;\n};\n\ntype SelectAllCheckboxArgs<TData extends MRT_RowData> = {\n table: MRT_TableInstance<TData>;\n};\n\ntype SelectCheckboxArgs<TData extends MRT_RowData> = {\n row: MRT_Row<TData>;\n staticRowIndex?: number;\n table: MRT_TableInstance<TData>;\n};\n\ntype DataTableProps<TData extends MRT_RowData> = MaterialReactTableProps<TData> & {\n canHideTotalCountFooterBorder?: boolean;\n canUseNoDataOverlay?: boolean;\n canTotalCountRow?: boolean;\n canUseTreeGridStyle?: boolean;\n totalCount?: number;\n};\n\nexport type OwpMrtTableProps<TData extends MRT_RowData> = DataTableProps<TData>;\n\nconst treeGridHeaderBackgroundColor = '#586980';\nconst treeGridSortIconColor = '#cbd5e1';\n\nconst treeGridFontFaceStyles = {\n '@font-face': {\n fontFamily: 'RobotoLight',\n fontStyle: 'normal',\n fontWeight: 'normal',\n src: \"url('/assets/vendors/Grid/Styles/Roboto-Light.ttf') format('truetype')\",\n },\n} as const;\n\nconst treeGridHeaderTextSx = {\n color: '#ffffff',\n fontFamily: 'RobotoLight, sans-serif',\n fontSize: '14px',\n fontWeight: 'normal',\n lineHeight: '16px',\n} as const;\n\nconst mergeSxValues = (...styles: Array<unknown>): unknown => {\n const mergedStyles = styles.flatMap((style) => {\n if (!style) {\n return [];\n }\n\n return isArray(style) ? style : [style];\n });\n\n if (mergedStyles.length === 0) {\n return undefined;\n }\n\n return (theme: Theme) =>\n mergedStyles.reduce<Record<string, unknown>>((acc, style) => {\n const resolvedStyle =\n typeof style === 'function' ? (style as (theme: Theme) => unknown)(theme) : style;\n\n if (!resolvedStyle || isArray(resolvedStyle)) {\n return acc;\n }\n\n return {\n ...acc,\n ...(resolvedStyle as Record<string, unknown>),\n };\n }, {});\n};\n\nconst resolvePropValue = <TArgs, TProps>(\n prop: ((args: TArgs) => TProps) | TProps | undefined,\n args: TArgs,\n): TProps | undefined => {\n if (typeof prop === 'function') {\n return (prop as (args: TArgs) => TProps)(args);\n }\n\n return prop;\n};\n\nconst mergeComponentProps = <TProps extends PropsWithSx>(\n ...propsList: Array<TProps | undefined>\n): TProps => {\n const resolvedProps = propsList.filter(Boolean) as TProps[];\n const mergedProps = resolvedProps.reduce((acc, currentProps) => {\n return {\n ...acc,\n ...currentProps,\n };\n }, {} as TProps);\n\n const className = clsx(resolvedProps.map((currentProps) => currentProps.className));\n const sx = mergeSxValues(...resolvedProps.map((currentProps) => currentProps.sx));\n\n if (className) {\n mergedProps.className = className as TProps['className'];\n }\n\n if (sx) {\n mergedProps.sx = sx as TProps['sx'];\n }\n\n return mergedProps;\n};\n\nconst mergeResolvedProps = <TArgs, TProps extends PropsWithSx>(\n args: TArgs,\n ...propsList: Array<((args: TArgs) => TProps) | TProps | undefined>\n): TProps => {\n return mergeComponentProps(\n ...propsList.map((currentProps) => resolvePropValue<TArgs, TProps>(currentProps, args)),\n );\n};\n\nconst defaultTableIcons: Partial<MRT_Icons> = {\n ArrowDownwardIcon: (props) => (\n <OwpSvgIcon size={20} {...props}>\n heroicons-outline:arrow-down-circle\n </OwpSvgIcon>\n ),\n ClearAllIcon: () => <OwpSvgIcon size={20}>heroicons-outline:adjustments-horizontal</OwpSvgIcon>,\n DensityLargeIcon: () => <OwpSvgIcon size={20}>heroicons-outline:bars-3-bottom-left</OwpSvgIcon>,\n DensityMediumIcon: () => <OwpSvgIcon size={20}>heroicons-outline:bars-3</OwpSvgIcon>,\n DensitySmallIcon: () => <OwpSvgIcon size={20}>heroicons-outline:bars-2</OwpSvgIcon>,\n DragHandleIcon: () => (\n <OwpSvgIcon className=\"rotate-45\" size={14}>\n heroicons-outline:arrows-pointing-out\n </OwpSvgIcon>\n ),\n FilterListIcon: (props) => (\n <OwpSvgIcon size={16} {...props}>\n heroicons-outline:funnel\n </OwpSvgIcon>\n ),\n FilterListOffIcon: () => <OwpSvgIcon size={20}>heroicons-outline:funnel</OwpSvgIcon>,\n FullscreenExitIcon: () => <OwpSvgIcon size={20}>heroicons-outline:arrows-pointing-in</OwpSvgIcon>,\n FullscreenIcon: () => <OwpSvgIcon size={20}>heroicons-outline:arrows-pointing-out</OwpSvgIcon>,\n SearchIcon: (props) => (\n <OwpSvgIcon color=\"action\" size={20} {...props}>\n heroicons-outline:magnifying-glass\n </OwpSvgIcon>\n ),\n SearchOffIcon: () => <OwpSvgIcon size={20}>heroicons-outline:magnifying-glass</OwpSvgIcon>,\n ViewColumnIcon: () => <OwpSvgIcon size={20}>heroicons-outline:view-columns</OwpSvgIcon>,\n MoreVertIcon: () => <OwpSvgIcon size={20}>heroicons-outline:ellipsis-vertical</OwpSvgIcon>,\n MoreHorizIcon: () => <OwpSvgIcon size={20}>heroicons-outline:ellipsis-horizontal</OwpSvgIcon>,\n SortIcon: (props) => (\n <OwpSvgIcon size={20} {...props}>\n heroicons-outline:arrows-up-down\n </OwpSvgIcon>\n ),\n PushPinIcon: (props) => (\n <OwpSvgIcon size={20} {...props}>\n heroicons-outline:bookmark\n </OwpSvgIcon>\n ),\n VisibilityOffIcon: () => <OwpSvgIcon size={20}>heroicons-outline:eye-slash</OwpSvgIcon>,\n};\n\nconst TreeGridArrowDownwardIcon = (props: SvgIconProps) => {\n return <ArrowDropDownRoundedIcon fontSize=\"small\" {...props} />;\n};\n\nconst TreeGridSyncAltIcon = (props: SvgIconProps & { direction?: string }) => {\n const { direction, ...iconProps } = props;\n\n void direction;\n\n return <UnfoldMoreRoundedIcon fontSize=\"small\" {...iconProps} />;\n};\n\nconst treeGridTableIcons: Partial<MRT_Icons> = {\n ArrowDownwardIcon: TreeGridArrowDownwardIcon,\n SyncAltIcon: TreeGridSyncAltIcon,\n};\n\nconst defaultBottomToolbarProps: BoxProps = {\n className: 'flex items-center min-h-56 h-56',\n};\n\nconst defaultPaperProps: PaperProps = {\n elevation: 0,\n square: true,\n className: 'flex flex-col flex-auto h-full',\n};\n\nconst treeGridPaperProps: PaperProps = {\n sx: {\n display: 'flex',\n height: '100%',\n flexDirection: 'column',\n border: '1px solid',\n borderColor: 'divider',\n borderRadius: 0,\n boxShadow: 'none',\n },\n};\n\nconst totalCountFooterBorderlessPaperProps: PaperProps = {\n sx: {\n border: 0,\n },\n};\n\nconst totalCountFooterBorderlessContainerProps: TableContainerProps = {\n sx: {\n borderTop: '1px solid',\n borderRight: '1px solid',\n borderLeft: '1px solid',\n borderColor: 'divider',\n },\n};\n\nconst defaultContainerProps: TableContainerProps = {\n className: 'flex-auto',\n};\n\nconst treeGridContainerProps: TableContainerProps = {\n sx: {\n flex: 1,\n minHeight: 0,\n overflowX: 'hidden',\n },\n};\n\nconst treeGridHeadRowProps: TableRowProps = {\n sx: {\n backgroundColor: treeGridHeaderBackgroundColor,\n boxShadow: 'none',\n },\n};\n\nconst defaultSelectCheckboxProps: CheckboxProps = {\n className: 'w-48',\n};\n\nconst treeGridSelectCheckboxProps: CheckboxProps = {\n sx: {\n display: 'flex',\n m: 0,\n mx: 'auto',\n },\n};\n\nconst treeGridTableProps: TableProps = {\n sx: {\n borderSpacing: 0,\n width: '100%',\n tableLayout: 'fixed',\n '& .MuiTableHead-root .MuiTableCell-root': {\n ...treeGridHeaderTextSx,\n backgroundColor: treeGridHeaderBackgroundColor,\n borderTop: '1px solid',\n py: 0.75,\n borderRight: '1px solid',\n borderBottom: '1px solid',\n borderColor: 'divider',\n wordBreak: 'keep-all',\n },\n '& .MuiTableHead-root .MuiTableRow-root:first-of-type .MuiTableCell-root:first-of-type': {\n borderLeft: '1px solid',\n borderColor: 'divider',\n },\n '& .MuiTableHead-root .MuiTableRow-root:first-of-type .MuiTableCell-root:last-of-type': {\n borderRight: '1px solid',\n borderColor: 'divider',\n },\n '& .MuiTableHead-root .MuiIconButton-root': {\n display: 'none',\n },\n '& .MuiTableBody-root .MuiTableCell-root': {\n p: 0,\n verticalAlign: 'middle',\n borderRight: '1px solid',\n borderBottom: '1px solid',\n borderColor: 'divider',\n overflowWrap: 'anywhere',\n },\n '& .MuiTableBody-root .MuiTableCell-root:last-of-type': {\n borderRight: 'none',\n },\n },\n};\n\nconst getDefaultBodyRowProps = <TData extends MRT_RowData>({\n row,\n table,\n}: BodyRowArgs<TData>): TableRowProps => {\n const { density } = table.getState();\n\n if (density === 'compact') {\n return {\n sx: {\n backgroundColor: 'initial',\n opacity: 1,\n boxShadow: 'none',\n height: row.getIsPinned() ? `${37}px` : undefined,\n },\n };\n }\n\n return {\n sx: {\n backgroundColor: 'initial',\n opacity: 1,\n boxShadow: 'none',\n height: row.getIsPinned() ? `${density === 'comfortable' ? 53 : 69}px` : undefined,\n },\n };\n};\n\nconst getDefaultHeadCellProps = <TData extends MRT_RowData>({\n column,\n}: HeadCellArgs<TData>): TableCellProps => {\n return {\n sx: {\n '& .Mui-TableHeadCell-Content-Labels': {\n flex: 1,\n justifyContent: 'space-between',\n },\n '& .Mui-TableHeadCell-Content-Actions': {\n '& > button': {\n marginX: '2px',\n },\n },\n '& .MuiFormHelperText-root': {\n textAlign: 'center',\n marginX: 0,\n color: (theme: Theme) => theme.palette.text.disabled,\n fontSize: 11,\n },\n backgroundColor: (theme) => (column.getIsPinned() ? theme.palette.background.paper : 'inherit'),\n },\n };\n};\n\nconst getTreeGridHeadCellProps = <TData extends MRT_RowData>({\n column,\n}: HeadCellArgs<TData>): TableCellProps => {\n const isSelectColumn = column.id === 'mrt-row-select';\n const isFirstColumn = column.getIsFirstColumn();\n const isLastColumn = column.getIsLastColumn();\n\n return {\n align: 'center',\n sx: {\n ...treeGridHeaderTextSx,\n backgroundColor: treeGridHeaderBackgroundColor,\n borderTop: '1px solid',\n borderTopColor: 'divider',\n ...(isFirstColumn\n ? {\n borderLeft: '1px solid',\n borderLeftColor: 'divider',\n }\n : {}),\n ...(isLastColumn\n ? {\n borderRight: '1px solid',\n borderRightColor: 'divider',\n }\n : {}),\n '& .Mui-TableHeadCell-Content': {\n ...treeGridHeaderTextSx,\n backgroundColor: 'inherit',\n justifyContent: 'center',\n position: 'relative',\n width: '100%',\n },\n '& .Mui-TableHeadCell-Content-Labels': {\n alignItems: 'center',\n backgroundColor: 'inherit',\n display: 'flex',\n flex: 1,\n justifyContent: 'center',\n maxWidth: '100%',\n minWidth: 0,\n overflow: 'hidden',\n position: 'relative',\n pl: 0,\n pr: isSelectColumn ? 0 : '24px',\n width: '100%',\n },\n '& .Mui-TableHeadCell-Content-Wrapper': {\n ...treeGridHeaderTextSx,\n backgroundColor: 'inherit',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n },\n '&& .MuiBadge-root': isSelectColumn\n ? undefined\n : {\n alignItems: 'center',\n display: 'inline-flex',\n justifyContent: 'center',\n position: 'absolute',\n pointerEvents: 'none',\n right: '6px',\n top: '50%',\n transform: 'translateY(-50%)',\n width: '16px',\n },\n '&& .MuiTableSortLabel-root': {\n alignItems: 'center',\n color: treeGridSortIconColor,\n display: 'inline-flex',\n justifyContent: 'center',\n minWidth: '16px',\n opacity: '1 !important',\n overflow: 'visible',\n width: '16px',\n },\n '&& .MuiTableSortLabel-root:hover': {\n color: treeGridSortIconColor,\n },\n '&& .MuiTableSortLabel-root.Mui-active': {\n color: treeGridSortIconColor,\n },\n '&& .MuiTableSortLabel-icon': {\n color: `${treeGridSortIconColor} !important`,\n display: 'block',\n fontSize: '18px',\n margin: 0,\n opacity: '1 !important',\n overflow: 'visible',\n },\n '& .MuiButtonBase-root': isSelectColumn\n ? {\n display: 'flex',\n margin: '0 auto',\n }\n : undefined,\n },\n };\n};\n\nconst getTreeGridBodyCellProps = <TData extends MRT_RowData>({\n column,\n}: BodyCellArgs<TData>): TableCellProps => {\n if (column.id !== 'mrt-row-select') {\n return {};\n }\n\n return {\n align: 'center',\n sx: {\n '& > .MuiButtonBase-root, & .MuiButtonBase-root': {\n display: 'flex',\n margin: '0 auto',\n },\n },\n };\n};\n\n/**\n * MRT 기반 공통 테이블 렌더 함수\n * @param props Material React Table props\n */\nfunction DataTable<TData extends MRT_RowData>(props: DataTableProps<TData>) {\n const { t } = useOwpTranslation();\n const {\n canHideTotalCountFooterBorder = false,\n canUseNoDataOverlay = false,\n canTotalCountRow = false,\n canUseTreeGridStyle = false,\n columns,\n data,\n totalCount,\n ...rest\n } = props;\n\n const {\n icons: restIcons,\n initialState: restInitialState,\n muiBottomToolbarProps: restBottomToolbarProps,\n muiSelectAllCheckboxProps: restSelectAllCheckboxProps,\n muiSelectCheckboxProps: restSelectCheckboxProps,\n muiTableBodyCellProps: restTableBodyCellProps,\n muiTableBodyRowProps: restTableBodyRowProps,\n muiTableContainerProps: restTableContainerProps,\n muiTableHeadCellProps: restTableHeadCellProps,\n muiTablePaperProps: restTablePaperProps,\n muiTableProps: restTableProps,\n renderBottomToolbar: restRenderBottomToolbar,\n renderEmptyRowsFallback: restRenderEmptyRowsFallback,\n ...restOptions\n } = rest;\n\n const resolvedData = isArray(data) ? data : [];\n const isNoDataOverlayVisible = isArray(data) && data.length === 0;\n const shouldHideTotalCountFooterBorder = canUseTreeGridStyle || canHideTotalCountFooterBorder;\n const shouldApplyTotalCountFooterBorderlessLayout =\n canTotalCountRow && shouldHideTotalCountFooterBorder;\n const shouldUseNoDataOverlay = canUseTreeGridStyle || canUseNoDataOverlay;\n\n const initialState = defaultsFC(\n { ...(restInitialState ?? {}) },\n {\n density: canUseTreeGridStyle ? 'compact' : 'spacious',\n showColumnFilters: false,\n showGlobalFilter: !canUseTreeGridStyle,\n columnPinning: {\n left: ['mrt-row-expand', 'mrt-row-select'],\n right: ['mrt-row-actions'],\n },\n pagination: {\n pageSize: 15,\n },\n enableFullScreenToggle: false,\n },\n );\n\n const defaultOptions = defaultsFC(\n {\n ...restOptions,\n initialState,\n },\n {\n initialState,\n layoutMode: canUseTreeGridStyle ? 'semantic' : undefined,\n enableTopToolbar: canUseTreeGridStyle ? false : undefined,\n enableColumnActions: canUseTreeGridStyle ? false : undefined,\n enableColumnDragging: canUseTreeGridStyle ? false : undefined,\n enableColumnFilters: canUseTreeGridStyle ? false : undefined,\n enableColumnOrdering: canUseTreeGridStyle ? false : true,\n enableDensityToggle: canUseTreeGridStyle ? false : undefined,\n enableFullScreenToggle: false,\n enableGlobalFilter: canUseTreeGridStyle ? false : undefined,\n enableGrouping: canUseTreeGridStyle ? false : true,\n enableHiding: canUseTreeGridStyle ? false : undefined,\n enableColumnPinning: canUseTreeGridStyle ? false : true,\n enableFacetedValues: canUseTreeGridStyle ? false : true,\n enableRowActions: canUseTreeGridStyle ? false : true,\n enableRowSelection: true,\n enableRowDragging: canUseTreeGridStyle ? false : undefined,\n enableRowOrdering: canUseTreeGridStyle ? false : undefined,\n enableStickyHeader: true,\n enableToolbarInternalActions: canUseTreeGridStyle ? false : undefined,\n paginationDisplayMode: 'pages',\n positionToolbarAlertBanner: 'top',\n muiPaginationProps: {\n color: 'secondary',\n rowsPerPageOptions: [10, 20, 30],\n shape: 'rounded',\n variant: 'outlined',\n showRowsPerPage: false,\n },\n muiSearchTextFieldProps: {\n placeholder: 'Search',\n sx: { minWidth: '300px' },\n variant: 'outlined',\n size: 'small',\n },\n muiFilterTextFieldProps: {\n variant: 'outlined',\n size: 'small',\n sx: {\n '& .MuiInputBase-root': {\n padding: '0px 8px',\n height: '32px!important',\n minHeight: '32px!important',\n },\n },\n },\n mrtTheme: (theme: Theme) => ({\n baseBackgroundColor: theme.palette.background.paper,\n menuBackgroundColor: theme.palette.background.paper,\n pinnedRowBackgroundColor: theme.palette.background.paper,\n pinnedColumnBackgroundColor: theme.palette.background.paper,\n }),\n renderTopToolbar: (toolbarProps: { table: MRT_TableInstance<TData> }) => (\n <OwpMrtTableTopToolbar {...toolbarProps} />\n ),\n } as Partial<DataTableProps<TData>>,\n );\n\n const shouldRenderBaseBottomToolbar = defaultOptions.enableBottomToolbar !== false;\n const resolvedTotalCount = isNumber(totalCount) ? totalCount : resolvedData.length;\n\n const renderBaseBottomToolbar = (table: MRT_TableInstance<TData>) => {\n if (!shouldRenderBaseBottomToolbar) {\n return null;\n }\n\n if (typeof restRenderBottomToolbar === 'function') {\n return restRenderBottomToolbar({ table });\n }\n\n return restRenderBottomToolbar ?? <MRT_BottomToolbar table={table} />;\n };\n\n const table = useMaterialReactTable<TData>({\n ...defaultOptions,\n columns,\n data: resolvedData,\n enableBottomToolbar: canTotalCountRow ? true : defaultOptions.enableBottomToolbar,\n icons: {\n ...defaultTableIcons,\n ...(canUseTreeGridStyle ? treeGridTableIcons : {}),\n ...(restIcons ?? {}),\n },\n muiBottomToolbarProps: (args: TableInstanceArgs<TData>) =>\n mergeResolvedProps<TableInstanceArgs<TData>, BoxProps>(\n args,\n defaultBottomToolbarProps,\n restBottomToolbarProps,\n ),\n muiSelectAllCheckboxProps: (args: SelectAllCheckboxArgs<TData>) =>\n mergeResolvedProps<SelectAllCheckboxArgs<TData>, CheckboxProps>(\n args,\n defaultSelectCheckboxProps,\n canUseTreeGridStyle ? treeGridSelectCheckboxProps : undefined,\n restSelectAllCheckboxProps,\n ),\n muiSelectCheckboxProps: (args: SelectCheckboxArgs<TData>) =>\n mergeResolvedProps<SelectCheckboxArgs<TData>, CheckboxProps | RadioProps>(\n args,\n defaultSelectCheckboxProps,\n canUseTreeGridStyle ? treeGridSelectCheckboxProps : undefined,\n restSelectCheckboxProps,\n ),\n muiTableBodyCellProps: (args: BodyCellArgs<TData>) =>\n mergeResolvedProps<BodyCellArgs<TData>, TableCellProps>(\n args,\n canUseTreeGridStyle ? getTreeGridBodyCellProps : undefined,\n restTableBodyCellProps,\n ),\n muiTableBodyRowProps: (args: BodyRowArgs<TData>) =>\n mergeResolvedProps<BodyRowArgs<TData>, TableRowProps>(\n args,\n getDefaultBodyRowProps,\n restTableBodyRowProps,\n ),\n muiTableContainerProps: (args: TableInstanceArgs<TData>) =>\n mergeResolvedProps<TableInstanceArgs<TData>, TableContainerProps>(\n args,\n defaultContainerProps,\n canUseTreeGridStyle ? treeGridContainerProps : undefined,\n restTableContainerProps,\n shouldApplyTotalCountFooterBorderlessLayout\n ? totalCountFooterBorderlessContainerProps\n : undefined,\n ),\n muiTableHeadRowProps: (args) =>\n mergeResolvedProps(\n args,\n canUseTreeGridStyle ? treeGridHeadRowProps : undefined,\n rest.muiTableHeadRowProps,\n ),\n muiTableHeadCellProps: (args: HeadCellArgs<TData>) =>\n mergeResolvedProps<HeadCellArgs<TData>, TableCellProps>(\n args,\n getDefaultHeadCellProps,\n canUseTreeGridStyle ? getTreeGridHeadCellProps : undefined,\n restTableHeadCellProps,\n ),\n muiTablePaperProps: (args: TableInstanceArgs<TData>) =>\n mergeResolvedProps<TableInstanceArgs<TData>, PaperProps>(\n args,\n defaultPaperProps,\n canUseTreeGridStyle ? treeGridPaperProps : undefined,\n restTablePaperProps,\n shouldApplyTotalCountFooterBorderlessLayout\n ? totalCountFooterBorderlessPaperProps\n : undefined,\n ),\n muiTableProps: (args: TableInstanceArgs<TData>) =>\n mergeResolvedProps<TableInstanceArgs<TData>, TableProps>(\n args,\n canUseTreeGridStyle ? treeGridTableProps : undefined,\n restTableProps,\n ),\n renderBottomToolbar: canTotalCountRow\n ? ({ table }) => (\n <>\n {renderBaseBottomToolbar(table)}\n <OwpTableTotalCount totalCount={resolvedTotalCount} />\n </>\n )\n : restRenderBottomToolbar,\n renderEmptyRowsFallback: shouldUseNoDataOverlay\n ? () => <></>\n : restRenderEmptyRowsFallback,\n });\n\n return (\n <>\n {canUseTreeGridStyle && <GlobalStyles styles={treeGridFontFaceStyles} />}\n <MaterialReactTable table={table} />\n {shouldUseNoDataOverlay && (\n <OwpMrtTableNoDataOverlay\n visible={isNoDataOverlayVisible}\n message={t('Message.조회된 결과가 없습니다.')}\n table={table}\n />\n )}\n </>\n );\n}\n\nconst hasTableInstance = <TData extends MRT_RowData>(\n props: OwpMrtTableProps<TData>,\n): props is OwpMrtTableProps<TData> & { table: MRT_TableInstance<TData> } => {\n return 'table' in props && props.table !== undefined;\n};\n\n/**\n * MRT 기반 공통 테이블 컴포넌트\n * @param props 컴포넌트 props\n */\nconst OwpMrtTable = <TData extends MRT_RowData>(props: OwpMrtTableProps<TData>) => {\n const currentLanguage = useGetCurrentLanguage();\n\n if (hasTableInstance(props)) {\n return <MaterialReactTable table={props.table} />;\n }\n\n return (\n <DataTable<TData>\n {...props}\n localization={\n props.localization ?? (currentLanguage.id === 'kr' ? MRT_Localization_KO : undefined)\n }\n />\n );\n};\n\nexport { OwpMrtTable };\n"],"names":["treeGridHeaderBackgroundColor","treeGridSortIconColor","treeGridFontFaceStyles","treeGridHeaderTextSx","mergeSxValues","__name","styles","mergedStyles","style","isArray","theme","acc","resolvedStyle","resolvePropValue","prop","args","mergeComponentProps","propsList","resolvedProps","mergedProps","currentProps","className","clsx","sx","mergeResolvedProps","defaultTableIcons","props","jsx","OwpSvgIcon","TreeGridArrowDownwardIcon","ArrowDropDownRoundedIcon","TreeGridSyncAltIcon","direction","iconProps","UnfoldMoreRoundedIcon","treeGridTableIcons","defaultBottomToolbarProps","defaultPaperProps","treeGridPaperProps","totalCountFooterBorderlessPaperProps","totalCountFooterBorderlessContainerProps","defaultContainerProps","treeGridContainerProps","treeGridHeadRowProps","defaultSelectCheckboxProps","treeGridSelectCheckboxProps","treeGridTableProps","getDefaultBodyRowProps","row","table","density","getDefaultHeadCellProps","column","getTreeGridHeadCellProps","isSelectColumn","isFirstColumn","isLastColumn","getTreeGridBodyCellProps","DataTable","t","useOwpTranslation","canHideTotalCountFooterBorder","canUseNoDataOverlay","canTotalCountRow","canUseTreeGridStyle","columns","data","totalCount","rest","restIcons","restInitialState","restBottomToolbarProps","restSelectAllCheckboxProps","restSelectCheckboxProps","restTableBodyCellProps","restTableBodyRowProps","restTableContainerProps","restTableHeadCellProps","restTablePaperProps","restTableProps","restRenderBottomToolbar","restRenderEmptyRowsFallback","restOptions","resolvedData","isNoDataOverlayVisible","shouldApplyTotalCountFooterBorderlessLayout","shouldUseNoDataOverlay","initialState","defaultsFC","defaultOptions","toolbarProps","OwpMrtTableTopToolbar","shouldRenderBaseBottomToolbar","resolvedTotalCount","isNumber","renderBaseBottomToolbar","MRT_BottomToolbar","useMaterialReactTable","jsxs","Fragment","OwpTableTotalCount","GlobalStyles","MaterialReactTable","OwpMrtTableNoDataOverlay","hasTableInstance","OwpMrtTable","currentLanguage","useGetCurrentLanguage","MRT_Localization_KO"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OwpMrtTable.js","sources":["../../../src/components/OwpMrtTable/OwpMrtTable.tsx"],"sourcesContent":["import ArrowDropDownRoundedIcon from '@mui/icons-material/ArrowDropDownRounded';\nimport UnfoldMoreRoundedIcon from '@mui/icons-material/UnfoldMoreRounded';\nimport GlobalStyles from '@mui/material/GlobalStyles';\nimport { OwpSvgIcon } from '@/components/OwpSvgIcon';\nimport { useGetCurrentLanguage } from '@/hooks/useCurrentLanguage';\nimport { useOwpTranslation } from '@/hooks/useOwpTranslation';\nimport type {\n BoxProps,\n CheckboxProps,\n PaperProps,\n RadioProps,\n SvgIconProps,\n TableCellProps,\n TableContainerProps,\n TableProps,\n TableRowProps,\n} from '@mui/material';\nimport clsx from 'clsx';\nimport type { Theme } from '@mui/material/styles';\nimport { defaults as defaultsFC, isArray, isNumber } from 'es-toolkit/compat';\nimport {\n MaterialReactTable,\n type MaterialReactTableProps,\n MRT_BottomToolbar,\n type MRT_Cell,\n type MRT_Column,\n type MRT_Icons,\n type MRT_Row,\n type MRT_RowData,\n type MRT_TableInstance,\n useMaterialReactTable,\n} from 'material-react-table';\nimport { MRT_Localization_KO } from 'material-react-table/locales/ko';\nimport { OwpTableTotalCount } from '../OwpTable/OwpTable';\nimport { OwpMrtTableNoDataOverlay } from './OwpMrtTableNoDataOverlay';\nimport OwpMrtTableTopToolbar from './OwpMrtTableTopToolbar';\n\ntype PropsWithSx = {\n className?: string;\n sx?: unknown;\n};\n\ntype HeadCellArgs<TData extends MRT_RowData> = {\n column: MRT_Column<TData>;\n table: MRT_TableInstance<TData>;\n};\n\ntype BodyCellArgs<TData extends MRT_RowData> = {\n cell: MRT_Cell<TData>;\n column: MRT_Column<TData>;\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n};\n\ntype BodyRowArgs<TData extends MRT_RowData> = {\n isDetailPanel?: boolean;\n row: MRT_Row<TData>;\n staticRowIndex: number;\n table: MRT_TableInstance<TData>;\n};\n\ntype TableInstanceArgs<TData extends MRT_RowData> = {\n table: MRT_TableInstance<TData>;\n};\n\ntype SelectAllCheckboxArgs<TData extends MRT_RowData> = {\n table: MRT_TableInstance<TData>;\n};\n\ntype SelectCheckboxArgs<TData extends MRT_RowData> = {\n row: MRT_Row<TData>;\n staticRowIndex?: number;\n table: MRT_TableInstance<TData>;\n};\n\ntype DataTableProps<TData extends MRT_RowData> = MaterialReactTableProps<TData> & {\n canHideTotalCountFooterBorder?: boolean;\n canUseNoDataOverlay?: boolean;\n canTotalCountRow?: boolean;\n canUseTreeGridStyle?: boolean;\n totalCount?: number;\n};\n\nexport type OwpMrtTableProps<TData extends MRT_RowData> = DataTableProps<TData>;\n\nconst treeGridHeaderBackgroundColor = '#586980';\nconst treeGridSortIconColor = '#cbd5e1';\n\nconst treeGridFontFaceStyles = {\n '@font-face': {\n fontFamily: 'RobotoLight',\n fontStyle: 'normal',\n fontWeight: 'normal',\n src: \"url('/assets/vendors/Grid/Styles/Roboto-Light.ttf') format('truetype')\",\n },\n} as const;\n\nconst treeGridHeaderTextSx = {\n color: '#ffffff',\n fontFamily: 'RobotoLight, sans-serif',\n fontSize: '14px',\n fontWeight: 'normal',\n lineHeight: '16px',\n} as const;\n\nconst mergeSxValues = (...styles: Array<unknown>): unknown => {\n const mergedStyles = styles.flatMap((style) => {\n if (!style) {\n return [];\n }\n\n return isArray(style) ? style : [style];\n });\n\n if (mergedStyles.length === 0) {\n return undefined;\n }\n\n return (theme: Theme) =>\n mergedStyles.reduce<Record<string, unknown>>((acc, style) => {\n const resolvedStyle =\n typeof style === 'function' ? (style as (theme: Theme) => unknown)(theme) : style;\n\n if (!resolvedStyle || isArray(resolvedStyle)) {\n return acc;\n }\n\n return {\n ...acc,\n ...(resolvedStyle as Record<string, unknown>),\n };\n }, {});\n};\n\nconst resolvePropValue = <TArgs, TProps>(\n prop: ((args: TArgs) => TProps) | TProps | undefined,\n args: TArgs,\n): TProps | undefined => {\n if (typeof prop === 'function') {\n return (prop as (args: TArgs) => TProps)(args);\n }\n\n return prop;\n};\n\nconst mergeComponentProps = <TProps extends PropsWithSx>(\n ...propsList: Array<TProps | undefined>\n): TProps => {\n const resolvedProps = propsList.filter(Boolean) as TProps[];\n const mergedProps = resolvedProps.reduce((acc, currentProps) => {\n return {\n ...acc,\n ...currentProps,\n };\n }, {} as TProps);\n\n const className = clsx(resolvedProps.map((currentProps) => currentProps.className));\n const sx = mergeSxValues(...resolvedProps.map((currentProps) => currentProps.sx));\n\n if (className) {\n mergedProps.className = className as TProps['className'];\n }\n\n if (sx) {\n mergedProps.sx = sx as TProps['sx'];\n }\n\n return mergedProps;\n};\n\nconst mergeResolvedProps = <TArgs, TProps extends PropsWithSx>(\n args: TArgs,\n ...propsList: Array<((args: TArgs) => TProps) | TProps | undefined>\n): TProps => {\n return mergeComponentProps(\n ...propsList.map((currentProps) => resolvePropValue<TArgs, TProps>(currentProps, args)),\n );\n};\n\nconst defaultTableIcons: Partial<MRT_Icons> = {\n ArrowDownwardIcon: (props) => (\n <OwpSvgIcon size={20} {...props}>\n heroicons-outline:arrow-down-circle\n </OwpSvgIcon>\n ),\n ClearAllIcon: () => <OwpSvgIcon size={20}>heroicons-outline:adjustments-horizontal</OwpSvgIcon>,\n DensityLargeIcon: () => <OwpSvgIcon size={20}>heroicons-outline:bars-3-bottom-left</OwpSvgIcon>,\n DensityMediumIcon: () => <OwpSvgIcon size={20}>heroicons-outline:bars-3</OwpSvgIcon>,\n DensitySmallIcon: () => <OwpSvgIcon size={20}>heroicons-outline:bars-2</OwpSvgIcon>,\n DragHandleIcon: () => (\n <OwpSvgIcon className=\"rotate-45\" size={14}>\n heroicons-outline:arrows-pointing-out\n </OwpSvgIcon>\n ),\n FilterListIcon: (props) => (\n <OwpSvgIcon size={16} {...props}>\n heroicons-outline:funnel\n </OwpSvgIcon>\n ),\n FilterListOffIcon: () => <OwpSvgIcon size={20}>heroicons-outline:funnel</OwpSvgIcon>,\n FullscreenExitIcon: () => <OwpSvgIcon size={20}>heroicons-outline:arrows-pointing-in</OwpSvgIcon>,\n FullscreenIcon: () => <OwpSvgIcon size={20}>heroicons-outline:arrows-pointing-out</OwpSvgIcon>,\n SearchIcon: (props) => (\n <OwpSvgIcon color=\"action\" size={20} {...props}>\n heroicons-outline:magnifying-glass\n </OwpSvgIcon>\n ),\n SearchOffIcon: () => <OwpSvgIcon size={20}>heroicons-outline:magnifying-glass</OwpSvgIcon>,\n ViewColumnIcon: () => <OwpSvgIcon size={20}>heroicons-outline:view-columns</OwpSvgIcon>,\n MoreVertIcon: () => <OwpSvgIcon size={20}>heroicons-outline:ellipsis-vertical</OwpSvgIcon>,\n MoreHorizIcon: () => <OwpSvgIcon size={20}>heroicons-outline:ellipsis-horizontal</OwpSvgIcon>,\n SortIcon: (props) => (\n <OwpSvgIcon size={20} {...props}>\n heroicons-outline:arrows-up-down\n </OwpSvgIcon>\n ),\n PushPinIcon: (props) => (\n <OwpSvgIcon size={20} {...props}>\n heroicons-outline:bookmark\n </OwpSvgIcon>\n ),\n VisibilityOffIcon: () => <OwpSvgIcon size={20}>heroicons-outline:eye-slash</OwpSvgIcon>,\n};\n\nconst TreeGridArrowDownwardIcon = (props: SvgIconProps) => {\n return <ArrowDropDownRoundedIcon fontSize=\"small\" {...props} />;\n};\n\nconst TreeGridSyncAltIcon = (props: SvgIconProps & { direction?: string }) => {\n const { direction, ...iconProps } = props;\n\n void direction;\n\n return <UnfoldMoreRoundedIcon fontSize=\"small\" {...iconProps} />;\n};\n\nconst treeGridTableIcons: Partial<MRT_Icons> = {\n ArrowDownwardIcon: TreeGridArrowDownwardIcon,\n SyncAltIcon: TreeGridSyncAltIcon,\n};\n\nconst defaultBottomToolbarProps: BoxProps = {\n className: 'flex items-center min-h-56 h-56',\n};\n\nconst defaultPaperProps: PaperProps = {\n elevation: 0,\n square: true,\n className: 'flex flex-col flex-auto h-full',\n};\n\nconst treeGridPaperProps: PaperProps = {\n sx: {\n display: 'flex',\n height: '100%',\n flexDirection: 'column',\n border: '1px solid',\n borderColor: 'divider',\n borderRadius: 0,\n boxShadow: 'none',\n },\n};\n\nconst totalCountFooterBorderlessPaperProps: PaperProps = {\n sx: {\n border: 0,\n },\n};\n\nconst totalCountFooterBorderlessContainerProps: TableContainerProps = {\n sx: {\n borderTop: '1px solid',\n borderRight: '1px solid',\n borderLeft: '1px solid',\n borderColor: 'divider',\n },\n};\n\nconst defaultContainerProps: TableContainerProps = {\n className: 'flex-auto',\n};\n\nconst treeGridSelectColumnWidth = 40;\n\nconst treeGridSelectColumnCellSx = {\n width: treeGridSelectColumnWidth,\n minWidth: treeGridSelectColumnWidth,\n maxWidth: treeGridSelectColumnWidth,\n} as const;\n\nconst treeGridContainerProps: TableContainerProps = {\n sx: {\n flex: 1,\n minHeight: 0,\n overflowX: 'hidden',\n overflowY: 'auto',\n },\n};\n\nconst treeGridHeadRowProps: TableRowProps = {\n sx: {\n backgroundColor: treeGridHeaderBackgroundColor,\n boxShadow: 'none',\n },\n};\n\nconst defaultSelectCheckboxProps: CheckboxProps = {\n className: 'w-48',\n};\n\nconst treeGridSelectCheckboxProps: CheckboxProps = {\n sx: {\n display: 'flex',\n m: 0,\n mx: 'auto',\n },\n};\n\nconst treeGridTableProps: TableProps = {\n sx: {\n borderSpacing: 0,\n width: '100%',\n tableLayout: 'fixed',\n '& .MuiTableHead-root .MuiTableCell-root': {\n ...treeGridHeaderTextSx,\n backgroundColor: treeGridHeaderBackgroundColor,\n borderTop: '1px solid',\n py: 0.75,\n borderRight: '1px solid',\n borderBottom: '1px solid',\n borderColor: 'divider',\n wordBreak: 'keep-all',\n },\n '& .MuiTableHead-root .MuiTableRow-root:first-of-type .MuiTableCell-root:first-of-type': {\n borderLeft: '1px solid',\n borderColor: 'divider',\n },\n '& .MuiTableHead-root .MuiTableRow-root:first-of-type .MuiTableCell-root:last-of-type': {\n borderRight: '1px solid',\n borderColor: 'divider',\n },\n '& .MuiTableHead-root .MuiIconButton-root': {\n display: 'none',\n },\n '& .MuiTableBody-root .MuiTableCell-root': {\n p: 0,\n verticalAlign: 'middle',\n borderRight: '1px solid',\n borderBottom: '1px solid',\n borderColor: 'divider',\n overflowWrap: 'anywhere',\n },\n '& .MuiTableBody-root .MuiTableCell-root:last-of-type': {\n borderRight: 'none',\n },\n },\n};\n\nconst getDefaultBodyRowProps = <TData extends MRT_RowData>({\n row,\n table,\n}: BodyRowArgs<TData>): TableRowProps => {\n const { density } = table.getState();\n\n if (density === 'compact') {\n return {\n sx: {\n backgroundColor: 'initial',\n opacity: 1,\n boxShadow: 'none',\n height: row.getIsPinned() ? `${37}px` : undefined,\n },\n };\n }\n\n return {\n sx: {\n backgroundColor: 'initial',\n opacity: 1,\n boxShadow: 'none',\n height: row.getIsPinned() ? `${density === 'comfortable' ? 53 : 69}px` : undefined,\n },\n };\n};\n\nconst getDefaultHeadCellProps = <TData extends MRT_RowData>({\n column,\n}: HeadCellArgs<TData>): TableCellProps => {\n return {\n sx: {\n '& .Mui-TableHeadCell-Content-Labels': {\n flex: 1,\n justifyContent: 'space-between',\n },\n '& .Mui-TableHeadCell-Content-Actions': {\n '& > button': {\n marginX: '2px',\n },\n },\n '& .MuiFormHelperText-root': {\n textAlign: 'center',\n marginX: 0,\n color: (theme: Theme) => theme.palette.text.disabled,\n fontSize: 11,\n },\n backgroundColor: (theme) => (column.getIsPinned() ? theme.palette.background.paper : 'inherit'),\n },\n };\n};\n\nconst getTreeGridHeadCellProps = <TData extends MRT_RowData>({\n column,\n}: HeadCellArgs<TData>): TableCellProps => {\n const isSelectColumn = column.id === 'mrt-row-select';\n const isFirstColumn = column.getIsFirstColumn();\n const isLastColumn = column.getIsLastColumn();\n\n return {\n align: 'center',\n sx: {\n ...(isSelectColumn ? treeGridSelectColumnCellSx : {}),\n ...treeGridHeaderTextSx,\n backgroundColor: treeGridHeaderBackgroundColor,\n borderTop: '1px solid',\n borderTopColor: 'divider',\n ...(isFirstColumn\n ? {\n borderLeft: '1px solid',\n borderLeftColor: 'divider',\n }\n : {}),\n ...(isLastColumn\n ? {\n borderRight: '1px solid',\n borderRightColor: 'divider',\n }\n : {}),\n '& .Mui-TableHeadCell-Content': {\n ...treeGridHeaderTextSx,\n backgroundColor: 'inherit',\n justifyContent: 'center',\n position: 'relative',\n width: '100%',\n },\n '& .Mui-TableHeadCell-Content-Labels': {\n alignItems: 'center',\n backgroundColor: 'inherit',\n display: 'flex',\n flex: 1,\n justifyContent: 'center',\n maxWidth: '100%',\n minWidth: 0,\n overflow: 'hidden',\n position: 'relative',\n pl: 0,\n pr: isSelectColumn ? 0 : '24px',\n width: '100%',\n },\n '& .Mui-TableHeadCell-Content-Wrapper': {\n ...treeGridHeaderTextSx,\n backgroundColor: 'inherit',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n },\n '&& .MuiBadge-root': isSelectColumn\n ? undefined\n : {\n alignItems: 'center',\n display: 'inline-flex',\n justifyContent: 'center',\n position: 'absolute',\n pointerEvents: 'none',\n right: '6px',\n top: '50%',\n transform: 'translateY(-50%)',\n width: '16px',\n },\n '&& .MuiTableSortLabel-root': {\n alignItems: 'center',\n color: treeGridSortIconColor,\n display: 'inline-flex',\n justifyContent: 'center',\n minWidth: '16px',\n opacity: '1 !important',\n overflow: 'visible',\n width: '16px',\n },\n '&& .MuiTableSortLabel-root:hover': {\n color: treeGridSortIconColor,\n },\n '&& .MuiTableSortLabel-root.Mui-active': {\n color: treeGridSortIconColor,\n },\n '&& .MuiTableSortLabel-icon': {\n color: `${treeGridSortIconColor} !important`,\n display: 'block',\n fontSize: '18px',\n margin: 0,\n opacity: '1 !important',\n overflow: 'visible',\n },\n '& .MuiButtonBase-root': isSelectColumn\n ? {\n display: 'flex',\n margin: '0 auto',\n }\n : undefined,\n },\n };\n};\n\nconst getTreeGridBodyCellProps = <TData extends MRT_RowData>({\n column,\n}: BodyCellArgs<TData>): TableCellProps => {\n if (column.id !== 'mrt-row-select') {\n return {};\n }\n\n return {\n align: 'center',\n sx: {\n ...treeGridSelectColumnCellSx,\n '& > .MuiButtonBase-root, & .MuiButtonBase-root': {\n display: 'flex',\n margin: '0 auto',\n },\n },\n };\n};\n\n/**\n * MRT 기반 공통 테이블 렌더 함수\n * @param props Material React Table props\n */\nfunction DataTable<TData extends MRT_RowData>(props: DataTableProps<TData>) {\n const { t } = useOwpTranslation();\n const {\n canHideTotalCountFooterBorder = false,\n canUseNoDataOverlay = false,\n canTotalCountRow = true,\n canUseTreeGridStyle = true,\n columns,\n data,\n totalCount,\n ...rest\n } = props;\n\n const {\n icons: restIcons,\n initialState: restInitialState,\n muiBottomToolbarProps: restBottomToolbarProps,\n muiSelectAllCheckboxProps: restSelectAllCheckboxProps,\n muiSelectCheckboxProps: restSelectCheckboxProps,\n displayColumnDefOptions: restDisplayColumnDefOptions,\n muiTableBodyCellProps: restTableBodyCellProps,\n muiTableBodyRowProps: restTableBodyRowProps,\n muiTableContainerProps: restTableContainerProps,\n muiTableHeadCellProps: restTableHeadCellProps,\n muiTablePaperProps: restTablePaperProps,\n muiTableProps: restTableProps,\n renderBottomToolbar: restRenderBottomToolbar,\n renderEmptyRowsFallback: restRenderEmptyRowsFallback,\n ...restOptions\n } = rest;\n\n const resolvedData = isArray(data) ? data : [];\n const isNoDataOverlayVisible = isArray(data) && data.length === 0;\n const shouldHideTotalCountFooterBorder = canUseTreeGridStyle || canHideTotalCountFooterBorder;\n const shouldApplyTotalCountFooterBorderlessLayout =\n canTotalCountRow && shouldHideTotalCountFooterBorder;\n const shouldUseNoDataOverlay = canUseTreeGridStyle || canUseNoDataOverlay;\n const displayColumnDefOptions = canUseTreeGridStyle\n ? {\n ...(restDisplayColumnDefOptions ?? {}),\n 'mrt-row-select': {\n header: '',\n size: treeGridSelectColumnWidth,\n minSize: treeGridSelectColumnWidth,\n maxSize: treeGridSelectColumnWidth,\n ...(restDisplayColumnDefOptions?.['mrt-row-select'] ?? {}),\n },\n }\n : restDisplayColumnDefOptions;\n\n const initialState = defaultsFC(\n { ...(restInitialState ?? {}) },\n {\n density: canUseTreeGridStyle ? 'compact' : 'spacious',\n showColumnFilters: false,\n showGlobalFilter: !canUseTreeGridStyle,\n columnPinning: {\n left: ['mrt-row-expand', 'mrt-row-select'],\n right: ['mrt-row-actions'],\n },\n pagination: {\n pageSize: 15,\n },\n enableFullScreenToggle: false,\n },\n );\n\n const defaultOptions = defaultsFC(\n {\n ...restOptions,\n displayColumnDefOptions,\n initialState,\n },\n {\n displayColumnDefOptions,\n initialState,\n layoutMode: canUseTreeGridStyle ? 'semantic' : undefined,\n enablePagination: canUseTreeGridStyle ? false : undefined,\n enableBottomToolbar: canUseTreeGridStyle ? false : undefined,\n enableTopToolbar: canUseTreeGridStyle ? false : undefined,\n enableColumnActions: canUseTreeGridStyle ? false : undefined,\n enableColumnDragging: canUseTreeGridStyle ? false : undefined,\n enableColumnFilters: canUseTreeGridStyle ? false : undefined,\n enableColumnOrdering: canUseTreeGridStyle ? false : true,\n enableDensityToggle: canUseTreeGridStyle ? false : undefined,\n enableFullScreenToggle: false,\n enableGlobalFilter: canUseTreeGridStyle ? false : undefined,\n enableGrouping: canUseTreeGridStyle ? false : true,\n enableHiding: canUseTreeGridStyle ? false : undefined,\n enableColumnPinning: canUseTreeGridStyle ? false : true,\n enableFacetedValues: canUseTreeGridStyle ? false : true,\n enableMultiRowSelection: canUseTreeGridStyle ? true : undefined,\n enableRowActions: canUseTreeGridStyle ? false : true,\n enableRowSelection: true,\n enableRowDragging: canUseTreeGridStyle ? false : undefined,\n enableRowOrdering: canUseTreeGridStyle ? false : undefined,\n enableSelectAll: canUseTreeGridStyle ? false : undefined,\n enableStickyHeader: true,\n enableToolbarInternalActions: canUseTreeGridStyle ? false : undefined,\n getRowId: canUseTreeGridStyle\n ? (row: TData) => String((row as TData & { id: string | number }).id)\n : undefined,\n paginationDisplayMode: 'pages',\n positionToolbarAlertBanner: 'top',\n muiPaginationProps: {\n color: 'secondary',\n rowsPerPageOptions: [10, 20, 30],\n shape: 'rounded',\n variant: 'outlined',\n showRowsPerPage: false,\n },\n muiSearchTextFieldProps: {\n placeholder: 'Search',\n sx: { minWidth: '300px' },\n variant: 'outlined',\n size: 'small',\n },\n muiFilterTextFieldProps: {\n variant: 'outlined',\n size: 'small',\n sx: {\n '& .MuiInputBase-root': {\n padding: '0px 8px',\n height: '32px!important',\n minHeight: '32px!important',\n },\n },\n },\n mrtTheme: (theme: Theme) => ({\n baseBackgroundColor: theme.palette.background.paper,\n menuBackgroundColor: theme.palette.background.paper,\n pinnedRowBackgroundColor: theme.palette.background.paper,\n pinnedColumnBackgroundColor: theme.palette.background.paper,\n }),\n renderTopToolbar: (toolbarProps: { table: MRT_TableInstance<TData> }) => (\n <OwpMrtTableTopToolbar {...toolbarProps} />\n ),\n } as Partial<DataTableProps<TData>>,\n );\n\n const shouldRenderBaseBottomToolbar = defaultOptions.enableBottomToolbar !== false;\n const resolvedTotalCount = isNumber(totalCount) ? totalCount : resolvedData.length;\n\n const renderBaseBottomToolbar = (table: MRT_TableInstance<TData>) => {\n if (!shouldRenderBaseBottomToolbar) {\n return null;\n }\n\n if (typeof restRenderBottomToolbar === 'function') {\n return restRenderBottomToolbar({ table });\n }\n\n return restRenderBottomToolbar ?? <MRT_BottomToolbar table={table} />;\n };\n\n const table = useMaterialReactTable<TData>({\n ...defaultOptions,\n columns,\n data: resolvedData,\n enableBottomToolbar: canTotalCountRow ? true : defaultOptions.enableBottomToolbar,\n icons: {\n ...defaultTableIcons,\n ...(canUseTreeGridStyle ? treeGridTableIcons : {}),\n ...(restIcons ?? {}),\n },\n muiBottomToolbarProps: (args: TableInstanceArgs<TData>) =>\n mergeResolvedProps<TableInstanceArgs<TData>, BoxProps>(\n args,\n defaultBottomToolbarProps,\n restBottomToolbarProps,\n ),\n muiSelectAllCheckboxProps: (args: SelectAllCheckboxArgs<TData>) =>\n mergeResolvedProps<SelectAllCheckboxArgs<TData>, CheckboxProps>(\n args,\n defaultSelectCheckboxProps,\n canUseTreeGridStyle ? treeGridSelectCheckboxProps : undefined,\n restSelectAllCheckboxProps,\n ),\n muiSelectCheckboxProps: (args: SelectCheckboxArgs<TData>) =>\n mergeResolvedProps<SelectCheckboxArgs<TData>, CheckboxProps | RadioProps>(\n args,\n defaultSelectCheckboxProps,\n canUseTreeGridStyle ? treeGridSelectCheckboxProps : undefined,\n restSelectCheckboxProps,\n ),\n muiTableBodyCellProps: (args: BodyCellArgs<TData>) =>\n mergeResolvedProps<BodyCellArgs<TData>, TableCellProps>(\n args,\n canUseTreeGridStyle ? getTreeGridBodyCellProps : undefined,\n restTableBodyCellProps,\n ),\n muiTableBodyRowProps: (args: BodyRowArgs<TData>) =>\n mergeResolvedProps<BodyRowArgs<TData>, TableRowProps>(\n args,\n getDefaultBodyRowProps,\n restTableBodyRowProps,\n ),\n muiTableContainerProps: (args: TableInstanceArgs<TData>) =>\n mergeResolvedProps<TableInstanceArgs<TData>, TableContainerProps>(\n args,\n defaultContainerProps,\n canUseTreeGridStyle ? treeGridContainerProps : undefined,\n restTableContainerProps,\n shouldApplyTotalCountFooterBorderlessLayout\n ? totalCountFooterBorderlessContainerProps\n : undefined,\n ),\n muiTableHeadRowProps: (args) =>\n mergeResolvedProps(\n args,\n canUseTreeGridStyle ? treeGridHeadRowProps : undefined,\n rest.muiTableHeadRowProps,\n ),\n muiTableHeadCellProps: (args: HeadCellArgs<TData>) =>\n mergeResolvedProps<HeadCellArgs<TData>, TableCellProps>(\n args,\n getDefaultHeadCellProps,\n canUseTreeGridStyle ? getTreeGridHeadCellProps : undefined,\n restTableHeadCellProps,\n ),\n muiTablePaperProps: (args: TableInstanceArgs<TData>) =>\n mergeResolvedProps<TableInstanceArgs<TData>, PaperProps>(\n args,\n defaultPaperProps,\n canUseTreeGridStyle ? treeGridPaperProps : undefined,\n restTablePaperProps,\n shouldApplyTotalCountFooterBorderlessLayout\n ? totalCountFooterBorderlessPaperProps\n : undefined,\n ),\n muiTableProps: (args: TableInstanceArgs<TData>) =>\n mergeResolvedProps<TableInstanceArgs<TData>, TableProps>(\n args,\n canUseTreeGridStyle ? treeGridTableProps : undefined,\n restTableProps,\n ),\n renderBottomToolbar: canTotalCountRow\n ? ({ table }) => (\n <>\n {renderBaseBottomToolbar(table)}\n <OwpTableTotalCount totalCount={resolvedTotalCount} />\n </>\n )\n : restRenderBottomToolbar,\n renderEmptyRowsFallback: shouldUseNoDataOverlay\n ? () => <></>\n : restRenderEmptyRowsFallback,\n });\n\n return (\n <>\n {canUseTreeGridStyle && <GlobalStyles styles={treeGridFontFaceStyles} />}\n <MaterialReactTable table={table} />\n {shouldUseNoDataOverlay && (\n <OwpMrtTableNoDataOverlay\n visible={isNoDataOverlayVisible}\n message={t('Message.조회된 결과가 없습니다.')}\n table={table}\n />\n )}\n </>\n );\n}\n\nconst hasTableInstance = <TData extends MRT_RowData>(\n props: OwpMrtTableProps<TData>,\n): props is OwpMrtTableProps<TData> & { table: MRT_TableInstance<TData> } => {\n return 'table' in props && props.table !== undefined;\n};\n\n/**\n * MRT 기반 공통 테이블 컴포넌트\n * @param props 컴포넌트 props\n */\nconst OwpMrtTable = <TData extends MRT_RowData>(props: OwpMrtTableProps<TData>) => {\n const currentLanguage = useGetCurrentLanguage();\n\n if (hasTableInstance(props)) {\n return <MaterialReactTable table={props.table} />;\n }\n\n return (\n <DataTable<TData>\n {...props}\n localization={\n props.localization ?? (currentLanguage.id === 'kr' ? MRT_Localization_KO : undefined)\n }\n />\n );\n};\n\nexport { OwpMrtTable };\n"],"names":["treeGridHeaderBackgroundColor","treeGridSortIconColor","treeGridFontFaceStyles","treeGridHeaderTextSx","mergeSxValues","__name","styles","mergedStyles","style","isArray","theme","acc","resolvedStyle","resolvePropValue","prop","args","mergeComponentProps","propsList","resolvedProps","mergedProps","currentProps","className","clsx","sx","mergeResolvedProps","defaultTableIcons","props","jsx","OwpSvgIcon","TreeGridArrowDownwardIcon","ArrowDropDownRoundedIcon","TreeGridSyncAltIcon","direction","iconProps","UnfoldMoreRoundedIcon","treeGridTableIcons","defaultBottomToolbarProps","defaultPaperProps","treeGridPaperProps","totalCountFooterBorderlessPaperProps","totalCountFooterBorderlessContainerProps","defaultContainerProps","treeGridSelectColumnWidth","treeGridSelectColumnCellSx","treeGridContainerProps","treeGridHeadRowProps","defaultSelectCheckboxProps","treeGridSelectCheckboxProps","treeGridTableProps","getDefaultBodyRowProps","row","table","density","getDefaultHeadCellProps","column","getTreeGridHeadCellProps","isSelectColumn","isFirstColumn","isLastColumn","getTreeGridBodyCellProps","DataTable","t","useOwpTranslation","canHideTotalCountFooterBorder","canUseNoDataOverlay","canTotalCountRow","canUseTreeGridStyle","columns","data","totalCount","rest","restIcons","restInitialState","restBottomToolbarProps","restSelectAllCheckboxProps","restSelectCheckboxProps","restDisplayColumnDefOptions","restTableBodyCellProps","restTableBodyRowProps","restTableContainerProps","restTableHeadCellProps","restTablePaperProps","restTableProps","restRenderBottomToolbar","restRenderEmptyRowsFallback","restOptions","resolvedData","isNoDataOverlayVisible","shouldApplyTotalCountFooterBorderlessLayout","shouldUseNoDataOverlay","displayColumnDefOptions","initialState","defaultsFC","defaultOptions","toolbarProps","OwpMrtTableTopToolbar","shouldRenderBaseBottomToolbar","resolvedTotalCount","isNumber","renderBaseBottomToolbar","MRT_BottomToolbar","useMaterialReactTable","jsxs","Fragment","OwpTableTotalCount","GlobalStyles","MaterialReactTable","OwpMrtTableNoDataOverlay","hasTableInstance","OwpMrtTable","currentLanguage","useGetCurrentLanguage","MRT_Localization_KO"],"mappings":"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"}
|
|
@@ -1,22 +1,78 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
import { jsxs as
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
1
|
+
var u = Object.defineProperty;
|
|
2
|
+
var c = (e, s) => u(e, "name", { value: s, configurable: !0 });
|
|
3
|
+
import { jsxs as n, jsx as a } 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 { clsx as l } from "../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.js";
|
|
5
|
+
import h 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/Fitbit.js";
|
|
6
|
+
import { useHeaderWrapState as w } from "../../hooks/useHeaderWrapState.js";
|
|
7
|
+
const R = /* @__PURE__ */ c(({ title: e, leftSlot: s, centerSlot: i, actions: f }) => {
|
|
8
|
+
const d = e != null && e !== "", m = !!(s || i), { containerRef: o, titleRef: t, slotsRef: x, actionsRef: p, isWrapped: r } = w([
|
|
9
|
+
e,
|
|
10
|
+
s,
|
|
11
|
+
i,
|
|
12
|
+
f
|
|
13
|
+
]);
|
|
14
|
+
return /* @__PURE__ */ n(
|
|
15
|
+
"div",
|
|
16
|
+
{
|
|
17
|
+
ref: o,
|
|
18
|
+
className: l(
|
|
19
|
+
"min-h-[44px] w-full",
|
|
20
|
+
r ? "flex flex-col gap-8" : "grid grid-cols-[auto_minmax(0,1fr)_auto] items-center gap-x-12 gap-y-8"
|
|
21
|
+
),
|
|
22
|
+
children: [
|
|
23
|
+
d && /* @__PURE__ */ n(
|
|
24
|
+
"div",
|
|
25
|
+
{
|
|
26
|
+
ref: t,
|
|
27
|
+
className: l(
|
|
28
|
+
"flex shrink-0 items-center gap-12 whitespace-nowrap",
|
|
29
|
+
r ? "order-1 self-start" : "col-start-1"
|
|
30
|
+
),
|
|
31
|
+
children: [
|
|
32
|
+
/* @__PURE__ */ a(h, { className: "shrink-0", sx: { fontSize: 32, color: "secondary.main" } }),
|
|
33
|
+
/* @__PURE__ */ a("h5", { className: "shrink-0 whitespace-nowrap text-3xl font-medium", children: e })
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
),
|
|
37
|
+
m && /* @__PURE__ */ a(
|
|
38
|
+
"div",
|
|
39
|
+
{
|
|
40
|
+
ref: x,
|
|
41
|
+
className: l(
|
|
42
|
+
"flex max-w-full",
|
|
43
|
+
r ? "order-2 self-end justify-end" : "col-start-2 justify-self-center"
|
|
44
|
+
),
|
|
45
|
+
children: /* @__PURE__ */ n(
|
|
46
|
+
"div",
|
|
47
|
+
{
|
|
48
|
+
className: l(
|
|
49
|
+
"flex max-w-full items-center gap-12",
|
|
50
|
+
r ? "flex-wrap justify-end" : "flex-nowrap justify-center"
|
|
51
|
+
),
|
|
52
|
+
children: [
|
|
53
|
+
s && /* @__PURE__ */ a("div", { className: "max-w-full", children: s }),
|
|
54
|
+
i && /* @__PURE__ */ a("div", { className: "max-w-full", children: i })
|
|
55
|
+
]
|
|
56
|
+
}
|
|
57
|
+
)
|
|
58
|
+
}
|
|
59
|
+
),
|
|
60
|
+
f && /* @__PURE__ */ a(
|
|
61
|
+
"div",
|
|
62
|
+
{
|
|
63
|
+
ref: p,
|
|
64
|
+
className: l(
|
|
65
|
+
"flex max-w-full justify-end",
|
|
66
|
+
r ? "order-3 self-end" : "col-start-3 justify-self-end"
|
|
67
|
+
),
|
|
68
|
+
children: f
|
|
69
|
+
}
|
|
70
|
+
)
|
|
71
|
+
]
|
|
72
|
+
}
|
|
73
|
+
);
|
|
18
74
|
}, "OwpPageTitle");
|
|
19
75
|
export {
|
|
20
|
-
|
|
76
|
+
R as OwpPageTitle
|
|
21
77
|
};
|
|
22
78
|
//# sourceMappingURL=OwpPageTitle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OwpPageTitle.js","sources":["../../../src/components/OwpPageTitle/OwpPageTitle.tsx"],"sourcesContent":["import FitbitIcon from '@mui/icons-material/Fitbit';\nimport type { ReactNode } from 'react';\n\ninterface OwpPageTitleProps {\n title?: ReactNode;\n leftSlot?: ReactNode;\n centerSlot?: ReactNode;\n actions?: ReactNode;\n}\n\n/**\n * OwpPageTitle 컴포넌트\n * @param title 제목\n * @param leftSlot leftSlot 값\n * @param centerSlot centerSlot 값\n * @param actions 액션 영역\n */\nconst OwpPageTitle = ({ title, leftSlot, centerSlot, actions }: OwpPageTitleProps) => {\n const hasTitle = title !== undefined && title !== null && title !== '';\n\n return (\n <div
|
|
1
|
+
{"version":3,"file":"OwpPageTitle.js","sources":["../../../src/components/OwpPageTitle/OwpPageTitle.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport FitbitIcon from '@mui/icons-material/Fitbit';\nimport type { ReactNode } from 'react';\nimport { useHeaderWrapState } from '@/hooks/useHeaderWrapState';\n\ninterface OwpPageTitleProps {\n title?: ReactNode;\n leftSlot?: ReactNode;\n centerSlot?: ReactNode;\n actions?: ReactNode;\n}\n\n/**\n * OwpPageTitle 컴포넌트\n * @param title 제목\n * @param leftSlot leftSlot 값\n * @param centerSlot centerSlot 값\n * @param actions 액션 영역\n */\nconst OwpPageTitle = ({ title, leftSlot, centerSlot, actions }: OwpPageTitleProps) => {\n const hasTitle = title !== undefined && title !== null && title !== '';\n const hasSlots = Boolean(leftSlot || centerSlot);\n const { containerRef, titleRef, slotsRef, actionsRef, isWrapped } = useHeaderWrapState([\n title,\n leftSlot,\n centerSlot,\n actions,\n ]);\n\n return (\n <div\n ref={containerRef}\n className={clsx(\n 'min-h-[44px] w-full',\n isWrapped\n ? 'flex flex-col gap-8'\n : 'grid grid-cols-[auto_minmax(0,1fr)_auto] items-center gap-x-12 gap-y-8',\n )}\n >\n {hasTitle && (\n <div\n ref={titleRef}\n className={clsx(\n 'flex shrink-0 items-center gap-12 whitespace-nowrap',\n isWrapped ? 'order-1 self-start' : 'col-start-1',\n )}\n >\n <FitbitIcon className=\"shrink-0\" sx={{ fontSize: 32, color: 'secondary.main' }} />\n <h5 className=\"shrink-0 whitespace-nowrap text-3xl font-medium\">{title}</h5>\n </div>\n )}\n {hasSlots && (\n <div\n ref={slotsRef}\n className={clsx(\n 'flex max-w-full',\n isWrapped ? 'order-2 self-end justify-end' : 'col-start-2 justify-self-center',\n )}\n >\n <div\n className={clsx(\n 'flex max-w-full items-center gap-12',\n isWrapped ? 'flex-wrap justify-end' : 'flex-nowrap justify-center',\n )}\n >\n {leftSlot && <div className=\"max-w-full\">{leftSlot}</div>}\n {centerSlot && <div className=\"max-w-full\">{centerSlot}</div>}\n </div>\n </div>\n )}\n {actions && (\n <div\n ref={actionsRef}\n className={clsx(\n 'flex max-w-full justify-end',\n isWrapped ? 'order-3 self-end' : 'col-start-3 justify-self-end',\n )}\n >\n {actions}\n </div>\n )}\n </div>\n );\n};\n\nexport { OwpPageTitle };\n"],"names":["OwpPageTitle","__name","title","leftSlot","centerSlot","actions","hasTitle","hasSlots","containerRef","titleRef","slotsRef","actionsRef","isWrapped","useHeaderWrapState","jsxs","clsx","jsx","FitbitIcon"],"mappings":";;;;;;AAmBA,MAAMA,IAAe,gBAAAC,EAAA,CAAC,EAAE,OAAAC,GAAO,UAAAC,GAAU,YAAAC,GAAY,SAAAC,QAAiC;AACpF,QAAMC,IAAkCJ,KAAU,QAAQA,MAAU,IAC9DK,IAAW,GAAQJ,KAAYC,IAC/B,EAAE,cAAAI,GAAc,UAAAC,GAAU,UAAAC,GAAU,YAAAC,GAAY,WAAAC,EAAA,IAAcC,EAAmB;AAAA,IACrFX;AAAA,IACAC;AAAA,IACAC;AAAA,IACAC;AAAA,EAAA,CACD;AAED,SACE,gBAAAS;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAKN;AAAA,MACL,WAAWO;AAAA,QACT;AAAA,QACAH,IACI,wBACA;AAAA,MAAA;AAAA,MAGL,UAAA;AAAA,QAAAN,KACC,gBAAAQ;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAKL;AAAA,YACL,WAAWM;AAAA,cACT;AAAA,cACAH,IAAY,uBAAuB;AAAA,YAAA;AAAA,YAGrC,UAAA;AAAA,cAAA,gBAAAI,EAACC,GAAA,EAAW,WAAU,YAAW,IAAI,EAAE,UAAU,IAAI,OAAO,iBAAA,EAAiB,CAAG;AAAA,cAChF,gBAAAD,EAAC,MAAA,EAAG,WAAU,mDAAmD,UAAAd,EAAA,CAAM;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAG1EK,KACC,gBAAAS;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAKN;AAAA,YACL,WAAWK;AAAA,cACT;AAAA,cACAH,IAAY,iCAAiC;AAAA,YAAA;AAAA,YAG/C,UAAA,gBAAAE;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,WAAWC;AAAA,kBACT;AAAA,kBACAH,IAAY,0BAA0B;AAAA,gBAAA;AAAA,gBAGvC,UAAA;AAAA,kBAAAT,KAAY,gBAAAa,EAAC,OAAA,EAAI,WAAU,cAAc,UAAAb,GAAS;AAAA,kBAClDC,KAAc,gBAAAY,EAAC,OAAA,EAAI,WAAU,cAAc,UAAAZ,EAAA,CAAW;AAAA,gBAAA;AAAA,cAAA;AAAA,YAAA;AAAA,UACzD;AAAA,QAAA;AAAA,QAGHC,KACC,gBAAAW;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAKL;AAAA,YACL,WAAWI;AAAA,cACT;AAAA,cACAH,IAAY,qBAAqB;AAAA,YAAA;AAAA,YAGlC,UAAAP;AAAA,UAAA;AAAA,QAAA;AAAA,MACH;AAAA,IAAA;AAAA,EAAA;AAIR,GAhEqB;"}
|
|
@@ -1,44 +1,59 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
import { jsx as
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
var w = Object.defineProperty;
|
|
2
|
+
var a = (t, r) => w(t, "name", { value: r, configurable: !0 });
|
|
3
|
+
import { jsx as e, jsxs as n } 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 { useThemeMediaQuery as v } from "../../hooks/useThemeMediaQuery.js";
|
|
5
|
+
import { useOwpTranslation as g } from "../../hooks/useOwpTranslation.js";
|
|
6
|
+
import N 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/RestartAlt.js";
|
|
7
|
+
import y 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";
|
|
8
|
+
import { Button as d, Box as p } from "@mui/material";
|
|
9
|
+
import { clsx as k } from "../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.js";
|
|
10
|
+
const C = /* @__PURE__ */ a(({
|
|
11
|
+
title: t,
|
|
12
|
+
children: r,
|
|
13
|
+
actions: s,
|
|
14
|
+
onSubmit: o,
|
|
15
|
+
onReset: i,
|
|
16
|
+
skeleton: u = !1
|
|
15
17
|
}) => {
|
|
16
|
-
const { t:
|
|
17
|
-
return
|
|
18
|
+
const { t: c } = g(), x = v((l) => l.breakpoints.up(1600)), m = t != null && t !== "", f = r != null && r !== "", h = s != null && s !== "";
|
|
19
|
+
return u ? /* @__PURE__ */ e(p, { sx: { bgcolor: "background.paper" }, className: "w-full p-20 mt-16 rounded-lg shadow-1", children: /* @__PURE__ */ e("div", { className: "min-w-0", children: r }) }) : /* @__PURE__ */ e(
|
|
18
20
|
p,
|
|
19
21
|
{
|
|
20
22
|
component: "form",
|
|
21
23
|
sx: { bgcolor: "background.paper" },
|
|
22
24
|
className: "w-full p-20 mt-16 rounded-lg shadow-1",
|
|
23
|
-
onSubmit: /* @__PURE__ */
|
|
24
|
-
|
|
25
|
+
onSubmit: /* @__PURE__ */ a((l) => {
|
|
26
|
+
l.preventDefault(), o == null || o();
|
|
25
27
|
}, "onSubmit"),
|
|
26
|
-
onReset: /* @__PURE__ */
|
|
27
|
-
|
|
28
|
+
onReset: /* @__PURE__ */ a((l) => {
|
|
29
|
+
l.preventDefault(), i == null || i();
|
|
28
30
|
}, "onReset"),
|
|
29
|
-
children: /* @__PURE__ */
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
31
|
+
children: /* @__PURE__ */ n("div", { className: "flex items-start justify-between gap-12", children: [
|
|
32
|
+
(m || f) && /* @__PURE__ */ n("div", { className: "flex min-w-0 flex-1 flex-col items-start gap-12 text-left md:flex-row md:items-center", children: [
|
|
33
|
+
m && /* @__PURE__ */ e("div", { className: "shrink-0 whitespace-nowrap", children: t }),
|
|
34
|
+
f && /* @__PURE__ */ e("div", { className: "flex w-full min-w-0 flex-wrap content-start items-center gap-12 md:w-auto md:flex-1", children: r })
|
|
35
|
+
] }),
|
|
36
|
+
/* @__PURE__ */ n(
|
|
37
|
+
"div",
|
|
38
|
+
{
|
|
39
|
+
className: k(
|
|
40
|
+
"flex flex-shrink-0 flex-col items-end justify-start gap-y-12",
|
|
41
|
+
x ? "self-center" : "self-start"
|
|
42
|
+
),
|
|
43
|
+
children: [
|
|
44
|
+
/* @__PURE__ */ n("div", { className: "flex flex-shrink-0 gap-x-12", children: [
|
|
45
|
+
/* @__PURE__ */ e(d, { type: "submit", variant: "outlined", startIcon: /* @__PURE__ */ e(y, {}), children: c("Button.검색") }),
|
|
46
|
+
/* @__PURE__ */ e(d, { type: "reset", variant: "outlined", startIcon: /* @__PURE__ */ e(N, {}), children: c("Button.초기화") })
|
|
47
|
+
] }),
|
|
48
|
+
h && /* @__PURE__ */ e("div", { className: "flex max-w-full flex-wrap justify-end gap-12", children: s })
|
|
49
|
+
]
|
|
50
|
+
}
|
|
51
|
+
)
|
|
37
52
|
] })
|
|
38
53
|
}
|
|
39
54
|
);
|
|
40
55
|
}, "OwpSearchFilter");
|
|
41
56
|
export {
|
|
42
|
-
|
|
57
|
+
C as OwpSearchFilter
|
|
43
58
|
};
|
|
44
59
|
//# sourceMappingURL=OwpSearchFilter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OwpSearchFilter.js","sources":["../../../src/components/OwpSearchFilter/OwpSearchFilter.tsx"],"sourcesContent":["import { useOwpTranslation } from '@/hooks/useOwpTranslation';\nimport RestartAltIcon from '@mui/icons-material/RestartAlt';\nimport SearchIcon from '@mui/icons-material/Search';\nimport { Box, Button } from '@mui/material';\nimport type { ReactNode } from 'react';\n\ninterface OwpSearchFilterProps {\n title?: ReactNode | string;\n children?: ReactNode;\n actions?: ReactNode;\n onSubmit?: () => void;\n onReset?: () => void;\n skeleton?: boolean;\n}\n\n/**\n * OwpSearchFilter 컴포넌트\n * @param title 제목\n * @param children 하위 콘텐츠\n * @param actions 액션 영역\n * @param onSubmit 제출 핸들러\n * @param onReset 초기화 핸들러\n * @param skeleton 스켈레톤 모드 여부\n */\nconst OwpSearchFilter = ({\n title,\n children,\n actions,\n onSubmit,\n onReset,\n skeleton = false,\n}: OwpSearchFilterProps) => {\n const { t } = useOwpTranslation();\n\n if (skeleton) {\n return (\n <Box sx={{ bgcolor: 'background.paper' }} className=\"w-full p-20 mt-16 rounded-lg shadow-1\">\n <div className=\"min-w-0\">{children}</div>\n </Box>\n );\n }\n\n return (\n <Box\n component=\"form\"\n sx={{ bgcolor: 'background.paper' }}\n className=\"w-full p-20 mt-16 rounded-lg shadow-1\"\n onSubmit={(event) => {\n event.preventDefault();\n onSubmit?.();\n }}\n onReset={(event) => {\n event.preventDefault();\n onReset?.();\n }}\n >\n <div className=\"flex gap-12
|
|
1
|
+
{"version":3,"file":"OwpSearchFilter.js","sources":["../../../src/components/OwpSearchFilter/OwpSearchFilter.tsx"],"sourcesContent":["import { useThemeMediaQuery } from '@/hooks/useThemeMediaQuery';\nimport { useOwpTranslation } from '@/hooks/useOwpTranslation';\nimport RestartAltIcon from '@mui/icons-material/RestartAlt';\nimport SearchIcon from '@mui/icons-material/Search';\nimport { Box, Button } from '@mui/material';\nimport clsx from 'clsx';\nimport type { ReactNode } from 'react';\n\ninterface OwpSearchFilterProps {\n title?: ReactNode | string;\n children?: ReactNode;\n actions?: ReactNode;\n onSubmit?: () => void;\n onReset?: () => void;\n skeleton?: boolean;\n}\n\n/**\n * OwpSearchFilter 컴포넌트\n * @param title 제목\n * @param children 하위 콘텐츠\n * @param actions 액션 영역\n * @param onSubmit 제출 핸들러\n * @param onReset 초기화 핸들러\n * @param skeleton 스켈레톤 모드 여부\n */\nconst OwpSearchFilter = ({\n title,\n children,\n actions,\n onSubmit,\n onReset,\n skeleton = false,\n}: OwpSearchFilterProps) => {\n const { t } = useOwpTranslation();\n const isWideScreen = useThemeMediaQuery((theme) => theme.breakpoints.up(1600));\n const hasTitle = title !== undefined && title !== null && title !== '';\n const hasChildren = children !== undefined && children !== null && children !== '';\n const hasActions = actions !== undefined && actions !== null && actions !== '';\n\n if (skeleton) {\n return (\n <Box sx={{ bgcolor: 'background.paper' }} className=\"w-full p-20 mt-16 rounded-lg shadow-1\">\n <div className=\"min-w-0\">{children}</div>\n </Box>\n );\n }\n\n return (\n <Box\n component=\"form\"\n sx={{ bgcolor: 'background.paper' }}\n className=\"w-full p-20 mt-16 rounded-lg shadow-1\"\n onSubmit={(event) => {\n event.preventDefault();\n onSubmit?.();\n }}\n onReset={(event) => {\n event.preventDefault();\n onReset?.();\n }}\n >\n <div className=\"flex items-start justify-between gap-12\">\n {(hasTitle || hasChildren) && (\n <div className=\"flex min-w-0 flex-1 flex-col items-start gap-12 text-left md:flex-row md:items-center\">\n {hasTitle && <div className=\"shrink-0 whitespace-nowrap\">{title}</div>}\n {hasChildren && (\n <div className=\"flex w-full min-w-0 flex-wrap content-start items-center gap-12 md:w-auto md:flex-1\">\n {children}\n </div>\n )}\n </div>\n )}\n <div\n className={clsx(\n 'flex flex-shrink-0 flex-col items-end justify-start gap-y-12',\n isWideScreen ? 'self-center' : 'self-start',\n )}\n >\n <div className=\"flex flex-shrink-0 gap-x-12\">\n <Button type=\"submit\" variant=\"outlined\" startIcon={<SearchIcon />}>\n {t('Button.검색')}\n </Button>\n <Button type=\"reset\" variant=\"outlined\" startIcon={<RestartAltIcon />}>\n {t('Button.초기화')}\n </Button>\n </div>\n {hasActions && <div className=\"flex max-w-full flex-wrap justify-end gap-12\">{actions}</div>}\n </div>\n </div>\n </Box>\n );\n};\n\nexport { OwpSearchFilter };\n"],"names":["OwpSearchFilter","__name","title","children","actions","onSubmit","onReset","skeleton","t","useOwpTranslation","isWideScreen","useThemeMediaQuery","theme","hasTitle","hasChildren","hasActions","jsx","Box","event","jsxs","clsx","Button","SearchIcon","RestartAltIcon"],"mappings":";;;;;;;;;AA0BA,MAAMA,IAAkB,gBAAAC,EAAA,CAAC;AAAA,EACvB,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC,IAAW;AACb,MAA4B;AAC1B,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAA,GACRC,IAAeC,EAAmB,CAACC,MAAUA,EAAM,YAAY,GAAG,IAAI,CAAC,GACvEC,IAAkCX,KAAU,QAAQA,MAAU,IAC9DY,IAAwCX,KAAa,QAAQA,MAAa,IAC1EY,IAAsCX,KAAY,QAAQA,MAAY;AAE5E,SAAIG,IAEA,gBAAAS,EAACC,GAAA,EAAI,IAAI,EAAE,SAAS,mBAAA,GAAsB,WAAU,yCAClD,UAAA,gBAAAD,EAAC,OAAA,EAAI,WAAU,WAAW,UAAAb,GAAS,GACrC,IAKF,gBAAAa;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,IAAI,EAAE,SAAS,mBAAA;AAAA,MACf,WAAU;AAAA,MACV,UAAU,gBAAAhB,EAAA,CAACiB,MAAU;AACnB,QAAAA,EAAM,eAAA,GACNb,KAAA,QAAAA;AAAA,MACF,GAHU;AAAA,MAIV,SAAS,gBAAAJ,EAAA,CAACiB,MAAU;AAClB,QAAAA,EAAM,eAAA,GACNZ,KAAA,QAAAA;AAAA,MACF,GAHS;AAAA,MAKT,UAAA,gBAAAa,EAAC,OAAA,EAAI,WAAU,2CACX,UAAA;AAAA,SAAAN,KAAYC,MACZ,gBAAAK,EAAC,OAAA,EAAI,WAAU,yFACZ,UAAA;AAAA,UAAAN,KAAY,gBAAAG,EAAC,OAAA,EAAI,WAAU,8BAA8B,UAAAd,GAAM;AAAA,UAC/DY,KACC,gBAAAE,EAAC,OAAA,EAAI,WAAU,uFACZ,UAAAb,EAAA,CACH;AAAA,QAAA,GAEJ;AAAA,QAEF,gBAAAgB;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAWC;AAAA,cACT;AAAA,cACAV,IAAe,gBAAgB;AAAA,YAAA;AAAA,YAGjC,UAAA;AAAA,cAAA,gBAAAS,EAAC,OAAA,EAAI,WAAU,+BACb,UAAA;AAAA,gBAAA,gBAAAH,EAACK,GAAA,EAAO,MAAK,UAAS,SAAQ,YAAW,WAAW,gBAAAL,EAACM,GAAA,CAAA,CAAW,GAC7D,UAAAd,EAAE,WAAW,GAChB;AAAA,gBACA,gBAAAQ,EAACK,GAAA,EAAO,MAAK,SAAQ,SAAQ,YAAW,WAAW,gBAAAL,EAACO,GAAA,CAAA,CAAe,GAChE,UAAAf,EAAE,YAAY,EAAA,CACjB;AAAA,cAAA,GACF;AAAA,cACCO,KAAc,gBAAAC,EAAC,OAAA,EAAI,WAAU,gDAAgD,UAAAZ,EAAA,CAAQ;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MACxF,EAAA,CACF;AAAA,IAAA;AAAA,EAAA;AAGN,GAlEwB;"}
|
|
@@ -1,55 +1,116 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
import { jsxs as n, jsx as
|
|
4
|
-
import
|
|
5
|
-
import { Divider as
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
var j = Object.defineProperty;
|
|
2
|
+
var w = (r, l) => j(r, "name", { value: l, configurable: !0 });
|
|
3
|
+
import { jsxs as n, jsx as e } 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 O 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/Fitbit.js";
|
|
5
|
+
import { Divider as R } from "@mui/material";
|
|
6
|
+
import { useHeaderWrapState as k } from "../../hooks/useHeaderWrapState.js";
|
|
7
|
+
import { clsx as m } from "../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.js";
|
|
8
|
+
import { OwpPageTitle as B } from "../OwpPageTitle/OwpPageTitle.js";
|
|
9
|
+
const z = /* @__PURE__ */ w(({
|
|
10
|
+
className: r,
|
|
10
11
|
title: l,
|
|
11
|
-
disableTitleIcon:
|
|
12
|
-
headerProps:
|
|
13
|
-
usePageTitle:
|
|
14
|
-
actions:
|
|
15
|
-
leftSlot:
|
|
16
|
-
centerSlot:
|
|
17
|
-
children:
|
|
18
|
-
iconSize:
|
|
12
|
+
disableTitleIcon: o,
|
|
13
|
+
headerProps: s,
|
|
14
|
+
usePageTitle: x,
|
|
15
|
+
actions: f,
|
|
16
|
+
leftSlot: a,
|
|
17
|
+
centerSlot: i,
|
|
18
|
+
children: t,
|
|
19
|
+
iconSize: d
|
|
19
20
|
}) => {
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
const u = l != null && l !== "", p = !!(a || i), { containerRef: N, titleRef: h, slotsRef: v, actionsRef: y, isWrapped: c } = k([
|
|
22
|
+
l,
|
|
23
|
+
a,
|
|
24
|
+
i,
|
|
25
|
+
f,
|
|
26
|
+
o,
|
|
27
|
+
d
|
|
28
|
+
]), g = !!(u || f || a || i);
|
|
29
|
+
return /* @__PURE__ */ n("div", { className: m("OwpSection-root flex h-full w-full flex-col", r), children: [
|
|
30
|
+
g && (x ? /* @__PURE__ */ n("div", { className: "OwpSection-header", children: [
|
|
31
|
+
/* @__PURE__ */ e("div", { ...s, className: m("w-full", s == null ? void 0 : s.className), children: /* @__PURE__ */ e(
|
|
32
|
+
B,
|
|
25
33
|
{
|
|
26
34
|
title: l,
|
|
27
|
-
leftSlot:
|
|
28
|
-
centerSlot:
|
|
29
|
-
actions:
|
|
35
|
+
leftSlot: a,
|
|
36
|
+
centerSlot: i,
|
|
37
|
+
actions: f
|
|
30
38
|
}
|
|
31
39
|
) }),
|
|
32
|
-
/* @__PURE__ */
|
|
33
|
-
] }) : /* @__PURE__ */
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
40
|
+
/* @__PURE__ */ e(R, { className: "my-12" })
|
|
41
|
+
] }) : /* @__PURE__ */ e("div", { className: "OwpSection-header mb-12 min-h-36 w-full", children: /* @__PURE__ */ n(
|
|
42
|
+
"div",
|
|
43
|
+
{
|
|
44
|
+
ref: N,
|
|
45
|
+
...s,
|
|
46
|
+
className: m(
|
|
47
|
+
"min-h-36 w-full",
|
|
48
|
+
c ? "flex flex-col gap-8" : "grid grid-cols-[auto_minmax(0,1fr)_auto] items-center gap-x-8 gap-y-8",
|
|
49
|
+
s == null ? void 0 : s.className
|
|
50
|
+
),
|
|
51
|
+
children: [
|
|
52
|
+
l && /* @__PURE__ */ n(
|
|
53
|
+
"div",
|
|
38
54
|
{
|
|
39
|
-
|
|
40
|
-
|
|
55
|
+
ref: h,
|
|
56
|
+
className: m(
|
|
57
|
+
"flex shrink-0 items-center gap-8 whitespace-nowrap",
|
|
58
|
+
c ? "order-1 self-start" : "col-start-1"
|
|
59
|
+
),
|
|
60
|
+
children: [
|
|
61
|
+
!o && /* @__PURE__ */ e(
|
|
62
|
+
O,
|
|
63
|
+
{
|
|
64
|
+
className: "shrink-0",
|
|
65
|
+
fontSize: d,
|
|
66
|
+
sx: { fontSize: d ? void 0 : 24, color: "secondary.main" }
|
|
67
|
+
}
|
|
68
|
+
),
|
|
69
|
+
/* @__PURE__ */ e("h6", { className: "shrink-0 whitespace-nowrap text-2xl font-medium", children: l })
|
|
70
|
+
]
|
|
41
71
|
}
|
|
42
72
|
),
|
|
43
|
-
/* @__PURE__ */
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
73
|
+
p && /* @__PURE__ */ e(
|
|
74
|
+
"div",
|
|
75
|
+
{
|
|
76
|
+
ref: v,
|
|
77
|
+
className: m(
|
|
78
|
+
"flex max-w-full",
|
|
79
|
+
c ? "order-2 self-end justify-end" : "col-start-2 justify-self-center"
|
|
80
|
+
),
|
|
81
|
+
children: /* @__PURE__ */ n(
|
|
82
|
+
"div",
|
|
83
|
+
{
|
|
84
|
+
className: m(
|
|
85
|
+
"flex max-w-full items-center gap-8",
|
|
86
|
+
c ? "flex-wrap justify-end" : "flex-nowrap justify-center"
|
|
87
|
+
),
|
|
88
|
+
children: [
|
|
89
|
+
a && /* @__PURE__ */ e("div", { className: "max-w-full", children: a }),
|
|
90
|
+
i && /* @__PURE__ */ e("div", { className: "max-w-full", children: i })
|
|
91
|
+
]
|
|
92
|
+
}
|
|
93
|
+
)
|
|
94
|
+
}
|
|
95
|
+
),
|
|
96
|
+
f && /* @__PURE__ */ e(
|
|
97
|
+
"div",
|
|
98
|
+
{
|
|
99
|
+
ref: y,
|
|
100
|
+
className: m(
|
|
101
|
+
"flex max-w-full justify-end",
|
|
102
|
+
c ? "order-3 self-end" : "col-start-3 justify-self-end"
|
|
103
|
+
),
|
|
104
|
+
children: /* @__PURE__ */ e("div", { className: "flex max-w-full flex-wrap items-center gap-8", children: f })
|
|
105
|
+
}
|
|
106
|
+
)
|
|
107
|
+
]
|
|
108
|
+
}
|
|
109
|
+
) })),
|
|
110
|
+
/* @__PURE__ */ e("div", { className: "OwpSection-body flex min-h-0 flex-1 flex-col", children: t })
|
|
50
111
|
] });
|
|
51
112
|
}, "OwpSection");
|
|
52
113
|
export {
|
|
53
|
-
|
|
114
|
+
z as OwpSection
|
|
54
115
|
};
|
|
55
116
|
//# sourceMappingURL=OwpSection.js.map
|