@owp/core 2.5.1 → 2.5.3
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/index10.js +2 -2
- package/dist/_virtual/index12.js +2 -2
- package/dist/_virtual/index13.js +2 -2
- package/dist/_virtual/index14.js +2 -2
- package/dist/_virtual/index15.js +2 -2
- package/dist/_virtual/index5.js +2 -2
- package/dist/components/{OwpFileUploadButton/OwpFileUploadButton.js → OwpFilePickerButton/OwpFilePickerButton.js} +15 -15
- package/dist/components/OwpFilePickerButton/OwpFilePickerButton.js.map +1 -0
- package/dist/components/OwpLanguageSwitcherSelect/OwpLanguageSwitcherSelect.js.map +1 -1
- package/dist/components/OwpMoreActionsButton/OwpMoreActionsButton.js +27 -27
- package/dist/components/OwpMoreActionsButton/OwpMoreActionsButton.js.map +1 -1
- package/dist/components/OwpMrtTable/OwpMrtTable.js +335 -317
- package/dist/components/OwpMrtTable/OwpMrtTable.js.map +1 -1
- package/dist/components/OwpPageBreadcrumb/OwpPageBreadcrumb.js +39 -32
- package/dist/components/OwpPageBreadcrumb/OwpPageBreadcrumb.js.map +1 -1
- package/dist/components/OwpTable/OwpDataTable.js +273 -251
- package/dist/components/OwpTable/OwpDataTable.js.map +1 -1
- package/dist/components/OwpTable/OwpTable.js +180 -159
- package/dist/components/OwpTable/OwpTable.js.map +1 -1
- package/dist/components/OwpTreeGrid/OwpTreeGrid.js +267 -184
- package/dist/components/OwpTreeGrid/OwpTreeGrid.js.map +1 -1
- package/dist/components/{OwpTreeGridExcelButton/OwpTreeGridExcelButton.js → OwpTreeGridExportExcelButton/OwpTreeGridExportExcelButton.js} +7 -7
- package/dist/components/OwpTreeGridExportExcelButton/OwpTreeGridExportExcelButton.js.map +1 -0
- package/dist/constants/gridTheme.js +28 -0
- package/dist/constants/gridTheme.js.map +1 -0
- package/dist/hooks/useFormDataUploadMutation.js +27 -0
- package/dist/hooks/useFormDataUploadMutation.js.map +1 -0
- package/dist/hooks.js +63 -61
- package/dist/hooks.js.map +1 -1
- package/dist/index.js +28 -28
- package/dist/layout/components/navbar/NavbarToggleButton.js +21 -22
- package/dist/layout/components/navbar/NavbarToggleButton.js.map +1 -1
- package/dist/layout/components/navbar/style/NavbarStyle.js +41 -37
- package/dist/layout/components/navbar/style/NavbarStyle.js.map +1 -1
- package/dist/layout/components/toolbar/ToolbarLayout.js +57 -69
- package/dist/layout/components/toolbar/ToolbarLayout.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/CODE128/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE39/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE93/index.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/barcodes/EAN_UPC/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/GenericBarcode/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/ITF/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/MSI/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/codabar/index.js +1 -1
- package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/pharmacode/index.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/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js +1 -1
- package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.js +1 -1
- package/dist/node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/index.js +1 -1
- package/dist/owp-app.css +1 -1
- package/dist/types/components/{OwpFileUploadButton/OwpFileUploadButton.d.ts → OwpFilePickerButton/OwpFilePickerButton.d.ts} +4 -4
- package/dist/types/components/OwpFilePickerButton/index.d.ts +1 -0
- package/dist/types/components/OwpLanguageSwitcherSelect/OwpLanguageSwitcherSelect.d.ts +1 -1
- package/dist/types/components/OwpMoreActionsButton/OwpMoreActionsButton.d.ts +4 -4
- package/dist/types/components/OwpTable/OwpTable.d.ts +2 -0
- package/dist/types/components/OwpTreeGridExportExcelButton/OwpTreeGridExportExcelButton.d.ts +12 -0
- package/dist/types/components/OwpTreeGridExportExcelButton/index.d.ts +1 -0
- package/dist/types/constants/gridTheme.d.ts +30 -0
- package/dist/types/hooks/index.d.ts +1 -0
- package/dist/types/hooks/useFormDataUploadMutation.d.ts +30 -0
- package/dist/types/index.d.ts +2 -2
- package/dist/types/types/OwpGridThemeTypes.d.ts +14 -0
- package/dist/types/types/OwpSettingsTypes.d.ts +2 -0
- package/dist/types/types/index.d.ts +1 -0
- package/dist/types/utils/createFormDataBody.d.ts +20 -0
- package/dist/types/utils/index.d.ts +1 -0
- package/dist/types/utils/zipUtil.d.ts +13 -0
- package/dist/utils/createFormDataBody.js +26 -0
- package/dist/utils/createFormDataBody.js.map +1 -0
- package/dist/utils/zipUtil.js +42 -29
- package/dist/utils/zipUtil.js.map +1 -1
- package/dist/utils.js +87 -82
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
- package/dist/components/OwpFileUploadButton/OwpFileUploadButton.js.map +0 -1
- package/dist/components/OwpTreeGridExcelButton/OwpTreeGridExcelButton.js.map +0 -1
- package/dist/types/components/OwpFileUploadButton/index.d.ts +0 -1
- package/dist/types/components/OwpTreeGridExcelButton/OwpTreeGridExcelButton.d.ts +0 -12
- package/dist/types/components/OwpTreeGridExcelButton/index.d.ts +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OwpTreeGrid.js","sources":["../../../src/components/OwpTreeGrid/OwpTreeGrid.tsx"],"sourcesContent":["import { useOwpTranslation } from '@/hooks/useOwpTranslation';\nimport { useGetCurrentLanguage } from '@/hooks/useCurrentLanguage';\nimport {\n TREE_GRID_BODY_ROWS_CHANGED_EVENT,\n type TreeGridBodyRowsChangedEventDetail,\n} from '@/utils/treeGridBodyRowsEvent';\nimport { delay, isEmpty, isEqual, omit } from 'es-toolkit/compat';\n// Temporary TreeGrid perf instrumentation import. Remove with ./internal/utils/perf after profiling is finished.\nimport {\n countTreeGridPerf,\n getTreeGridPerfTimestamp,\n logTreeGridPerf,\n measureTreeGridPerf,\n} from './internal/utils/perf';\nimport {\n type CSSProperties,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from 'react';\nimport { useOwpTreeGridOverlayFrame } from './internal/hooks/useOwpTreeGridOverlayFrame';\nimport {\n bindTreeGridEvents,\n buildTreeGridInitializationOptions,\n getTreeGridBodyDataCount,\n hasTreeGridDisplayDataRows,\n replaceTreeGridBodyData,\n TREE_GRID_BINDING_LOADING_MIN_VISIBLE_MS,\n type TreeGridEventHandlers,\n} from './internal/treeGridRuntime';\nimport { applyTreeGridLayoutToGrid } from './internal/treeGridLayout';\nimport { OwpTreeGridLoadingOverlay } from './internal/OwpTreeGridLoadingOverlay';\nimport { OwpTreeGridNoDataOverlay } from './internal/OwpTreeGridNoDataOverlay';\nimport {\n createTreeGridColumnEditRulesState,\n resolveTreeGridColumnEditRuleLookup,\n syncTreeGridColumnEditRules,\n} from './internal/treeGridColumnEditRules';\n\ntype TreeGridLayoutScalarValue = string | number;\ntype TreeGridNestedLayoutFields = Record<string, TreeGridLayoutScalarValue>;\ntype TreeGridLayoutFields = Record<string, TreeGridLayoutScalarValue | TreeGridNestedLayoutFields>;\ntype TreeGridSectionFields = Record<string, TreeGridLayoutScalarValue>;\n\nexport interface OwpTreeGridLayout {\n Header?: TreeGridLayoutFields;\n Toolbar?: TreeGridSectionFields;\n Foot?: TreeGridSectionFields;\n}\n\nexport type OwpTreeGridLayoutConfig = OwpTreeGridLayout;\nexport type THeader = OwpTreeGridLayoutConfig;\nexport type OwpTreeGridBodyData<T> = Record<string, never> | [] | undefined | T[];\nexport type OwpTreeGridData<T> = OwpTreeGridBodyData<T>;\nexport type TData<T> = OwpTreeGridBodyData<T>;\nexport type OwpTreeGridRowModel<T> = TRow & T;\nexport type OwpTreeGridSelectedRows<T> = OwpTreeGridRowModel<T>[];\nexport type OwpTreeGridColumnEditPreset = 'hourMinute';\n\nexport interface OwpTreeGridColumnEditRule {\n columns: readonly string[];\n preset: OwpTreeGridColumnEditPreset;\n}\n\ntype OwpTreeGridSelectHandler<T> = (selectedRows: OwpTreeGridSelectedRows<T>) => void;\ntype OwpTreeGridRowAddHandler<T> = (grid: TGrid, row: OwpTreeGridRowModel<T>) => void;\ntype OwpTreeGridRowDeleteHandler<T> = (\n grid: TGrid,\n row: OwpTreeGridRowModel<T>,\n deleteType: number,\n) => void;\ntype OwpTreeGridRowUndeleteHandler<T> = (grid: TGrid, row: OwpTreeGridRowModel<T>) => void;\ntype OwpTreeGridButtonClickHandler<T> = (\n grid: TGrid,\n row: OwpTreeGridRowModel<T>,\n col: string,\n event: Event,\n) => void;\ntype OwpTreeGridRowClickHandler<T> = (\n grid: TGrid,\n row: OwpTreeGridRowModel<T>,\n col: string,\n x: number,\n y: number,\n event: Event,\n) => void;\ntype OwpTreeGridSaveHandler<T> = (\n grid: TGrid,\n row: OwpTreeGridRowModel<T>,\n autoupdate: boolean | number,\n) => void;\ntype OwpTreeGridCellValue = unknown;\ntype OwpTreeGridAfterValueChangedHandler<T> = (\n grid: TGrid,\n row: OwpTreeGridRowModel<T>,\n col: string,\n value: OwpTreeGridCellValue,\n) => void;\n\nexport interface OwpTreeGridProps<T> {\n id: string;\n className?: string;\n containerStyle?: CSSProperties;\n containerClassName?: string;\n layoutUrl?: string;\n dataUrl?: string;\n layoutOverrides?: OwpTreeGridLayoutConfig;\n data?: OwpTreeGridBodyData<T>;\n style?: CSSProperties;\n height?: string | number;\n width?: string | number;\n useDataUrl?: boolean;\n onSelect?: OwpTreeGridSelectHandler<T>;\n onRowAdd?: OwpTreeGridRowAddHandler<T>;\n onRowDelete?: OwpTreeGridRowDeleteHandler<T>;\n onRowUndelete?: OwpTreeGridRowUndeleteHandler<T>;\n onRowChange?: OwpTreeGridAfterValueChangedHandler<T>;\n onClickButton?: OwpTreeGridButtonClickHandler<T>;\n onReady?: (grid: TGrid) => void;\n onRowClick?: OwpTreeGridRowClickHandler<T>;\n onSave?: OwpTreeGridSaveHandler<T>;\n onAfterValueChanged?: OwpTreeGridAfterValueChangedHandler<T>;\n columnEditRules?: readonly OwpTreeGridColumnEditRule[];\n highlightEditableCells?: boolean;\n highlightChangedCells?: boolean;\n loading?: boolean;\n showLoading?: boolean;\n}\n\n/**\n * OwpTreeGrid 컴포넌트\n * @param id 식별자\n * @param containerStyle containerStyle 값\n * @param containerClassName containerClassName 값\n * @param className CSS 클래스명\n * @param style 스타일 객체\n * @param height height 값\n */\nconst OwpTreeGrid = <T,>({\n id = 'treeGridWrapper',\n containerStyle,\n containerClassName,\n className,\n style,\n height = '100%',\n width = '100%',\n layoutUrl,\n dataUrl,\n layoutOverrides,\n data,\n useDataUrl,\n onSelect,\n onRowClick,\n onRowAdd,\n onRowDelete,\n onRowUndelete,\n onRowChange,\n onClickButton,\n onSave,\n onReady,\n onAfterValueChanged,\n columnEditRules,\n highlightEditableCells = true,\n highlightChangedCells = true,\n loading,\n showLoading = true,\n}: OwpTreeGridProps<T>) => {\n const { t } = useOwpTranslation();\n const treeGridInstanceRef = useRef<TGrid>(null);\n const treeGridContainerRef = useRef<HTMLDivElement | null>(null);\n const treeGridInitStartedAtRef = useRef<number | null>(null);\n const bodyReloadStartedAtRef = useRef<number | null>(null);\n const latestLayoutOverridesRef = useRef<OwpTreeGridLayoutConfig | undefined>(layoutOverrides);\n const latestBodyDataPropRef = useRef<OwpTreeGridBodyData<T>>(data);\n const latestColumnEditRulesRef = useRef<readonly OwpTreeGridColumnEditRule[] | undefined>(\n columnEditRules,\n );\n const latestColumnEditRuleLookupRef = useRef(\n resolveTreeGridColumnEditRuleLookup(columnEditRules, {\n hourMinuteInvalidText: t('Message.시간은 HH:mm 형식으로 입력해주세요.'),\n }),\n );\n const latestEventHandlersRef = useRef<TreeGridEventHandlers<T>>({\n onSelect,\n onRowClick,\n onRowAdd,\n onRowDelete,\n onRowUndelete,\n onRowChange,\n onClickButton,\n onSave,\n onReady,\n onAfterValueChanged,\n });\n const stagedBodyDataPropRef = useRef<OwpTreeGridBodyData<T>>(undefined);\n const hasStagedBodyDataPropRef = useRef(false);\n const appliedLayoutOverridesRef = useRef<OwpTreeGridLayoutConfig | undefined>(undefined);\n const appliedBodyDataPropRef = useRef<OwpTreeGridBodyData<T>>(undefined);\n const appliedColumnEditRulesRef = useRef<readonly OwpTreeGridColumnEditRule[] | undefined>(\n undefined,\n );\n const columnEditRulesStateRef = useRef(createTreeGridColumnEditRulesState());\n const hasAppliedInitialLayoutRef = useRef(false);\n const bodyReloadSequenceRef = useRef(0);\n const bindingLoadingStartedAtRef = useRef<number | null>(null);\n const bindingLoadingHideTimeoutRef = useRef<number | undefined>(undefined);\n const bodyReloadStartTimeoutRef = useRef<number | undefined>(undefined);\n const highlightEditableCellsRef = useRef(highlightEditableCells);\n const highlightChangedCellsRef = useRef(highlightChangedCells);\n const [isTreeGridReady, setIsTreeGridReady] = useState(false);\n const [isBindingLoadingVisible, setIsBindingLoadingVisible] = useState(false);\n const [hasDisplayDataRows, setHasDisplayDataRows] = useState(false);\n const currentLanguage = useGetCurrentLanguage();\n const currentLanguageIdRef = useRef(currentLanguage.id);\n const isPendingBodyReload =\n showLoading &&\n data !== undefined &&\n isTreeGridReady &&\n appliedBodyDataPropRef.current !== data;\n const isInternalLoadingVisible = showLoading && (isBindingLoadingVisible || isPendingBodyReload);\n const isLoadingOverlayVisible = (showLoading && loading === true) || isInternalLoadingVisible;\n const isNoDataVisible =\n !isLoadingOverlayVisible && data !== undefined && isEmpty(data) && !hasDisplayDataRows;\n\n const syncHasDisplayDataRows = (grid: TGrid | null) => {\n setHasDisplayDataRows(hasTreeGridDisplayDataRows(grid));\n };\n\n latestLayoutOverridesRef.current = layoutOverrides;\n latestBodyDataPropRef.current = data;\n latestColumnEditRulesRef.current = columnEditRules;\n latestColumnEditRuleLookupRef.current = resolveTreeGridColumnEditRuleLookup(columnEditRules, {\n hourMinuteInvalidText: t('Message.시간은 HH:mm 형식으로 입력해주세요.'),\n });\n highlightEditableCellsRef.current = highlightEditableCells;\n highlightChangedCellsRef.current = highlightChangedCells;\n latestEventHandlersRef.current = {\n onSelect,\n onRowClick,\n onRowAdd,\n onRowDelete,\n onRowUndelete,\n onRowChange,\n onClickButton,\n onSave,\n onReady,\n onAfterValueChanged,\n };\n\n const overlayFrame = useOwpTreeGridOverlayFrame({\n visible: isLoadingOverlayVisible || isNoDataVisible,\n containerRef: treeGridContainerRef,\n treeGridInstanceRef,\n debugId: id,\n });\n\n const clearBindingLoadingHideTimeout = () => {\n if (bindingLoadingHideTimeoutRef.current !== undefined) {\n window.clearTimeout(bindingLoadingHideTimeoutRef.current);\n bindingLoadingHideTimeoutRef.current = undefined;\n }\n };\n\n const clearBodyReloadStartTimeout = () => {\n if (bodyReloadStartTimeoutRef.current !== undefined) {\n window.clearTimeout(bodyReloadStartTimeoutRef.current);\n bodyReloadStartTimeoutRef.current = undefined;\n }\n };\n\n useEffect(() => {\n const handleBodyRowsChanged = (event: Event) => {\n const customEvent = event as CustomEvent<TreeGridBodyRowsChangedEventDetail>;\n\n if (customEvent.detail?.gridId !== id) {\n return;\n }\n\n setHasDisplayDataRows(hasTreeGridDisplayDataRows(treeGridInstanceRef.current));\n };\n\n window.addEventListener(TREE_GRID_BODY_ROWS_CHANGED_EVENT, handleBodyRowsChanged);\n\n return () => {\n window.removeEventListener(TREE_GRID_BODY_ROWS_CHANGED_EVENT, handleBodyRowsChanged);\n };\n }, [id]);\n\n useEffect(() => {\n if (!showLoading) {\n clearBodyReloadStartTimeout();\n clearBindingLoadingHideTimeout();\n bindingLoadingStartedAtRef.current = null;\n setIsBindingLoadingVisible(false);\n }\n }, [showLoading]);\n\n useEffect(() => {\n if (\n currentLanguage.id !== currentLanguageIdRef.current &&\n !isEmpty(treeGridInstanceRef.current)\n ) {\n treeGridInstanceRef.current?.Dispose();\n treeGridInstanceRef.current = null;\n currentLanguageIdRef.current = currentLanguage.id;\n }\n\n if (!isEmpty(treeGridInstanceRef.current)) {\n return;\n }\n\n bindTreeGridEvents({\n id,\n latestEventHandlersRef,\n highlightEditableCellsRef,\n highlightChangedCellsRef,\n treeGridInstanceRef,\n treeGridInitStartedAtRef,\n latestLayoutOverridesRef,\n appliedLayoutOverridesRef,\n appliedBodyDataPropRef,\n latestColumnEditRulesRef,\n latestColumnEditRuleLookupRef,\n appliedColumnEditRulesRef,\n columnEditRulesStateRef,\n hasAppliedInitialLayoutRef,\n syncHasDisplayDataRows,\n setIsTreeGridReady,\n });\n\n treeGridInitStartedAtRef.current = getTreeGridPerfTimestamp();\n countTreeGridPerf(id, 'init');\n logTreeGridPerf(id, 'TreeGrid init start', {\n useDataUrl: Boolean(useDataUrl),\n bodyRowCount: getTreeGridBodyDataCount(data),\n });\n\n window.TreeGrid(\n buildTreeGridInitializationOptions({\n id,\n layoutUrl,\n dataUrl,\n bodyData: data,\n useDataUrl,\n width,\n height,\n languageId: currentLanguage.id,\n }),\n id,\n id,\n );\n\n return () => {\n delay(() => {\n treeGridInstanceRef.current?.Dispose();\n }, 200);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useLayoutEffect(() => {\n const treeGrid = treeGridInstanceRef.current;\n const nextLayoutOverrides = latestLayoutOverridesRef.current;\n const nextBodyData = latestBodyDataPropRef.current;\n const nextColumnEditRules = latestColumnEditRulesRef.current;\n\n if (isEmpty(treeGrid) || !isTreeGridReady) {\n return;\n }\n\n const shouldApplyLayoutOverrides =\n appliedLayoutOverridesRef.current !== nextLayoutOverrides &&\n !isEqual(appliedLayoutOverridesRef.current, nextLayoutOverrides);\n const shouldApplyBodyData =\n appliedBodyDataPropRef.current !== nextBodyData &&\n (!hasStagedBodyDataPropRef.current || stagedBodyDataPropRef.current !== nextBodyData);\n const shouldApplyColumnEditRules =\n appliedColumnEditRulesRef.current !== nextColumnEditRules &&\n !isEqual(appliedColumnEditRulesRef.current, nextColumnEditRules);\n\n if (!shouldApplyLayoutOverrides && !shouldApplyBodyData && !shouldApplyColumnEditRules) {\n return;\n }\n\n if (shouldApplyLayoutOverrides) {\n const layoutApplyStartedAt = getTreeGridPerfTimestamp();\n\n applyTreeGridLayoutToGrid(treeGrid, nextLayoutOverrides, shouldApplyBodyData);\n appliedLayoutOverridesRef.current = nextLayoutOverrides;\n measureTreeGridPerf(id, 'apply layout', layoutApplyStartedAt, {\n disableBodyReload: Boolean(shouldApplyBodyData),\n });\n }\n\n if (shouldApplyBodyData) {\n const reloadSequence = bodyReloadSequenceRef.current + 1;\n const runBodyReload = () => {\n const bodyDataToApply = stagedBodyDataPropRef.current;\n\n bodyReloadStartTimeoutRef.current = undefined;\n bodyReloadStartedAtRef.current = getTreeGridPerfTimestamp();\n countTreeGridPerf(id, 'reload');\n logTreeGridPerf(id, 'ReloadBody start', {\n bodyRowCount: getTreeGridBodyDataCount(bodyDataToApply),\n });\n\n replaceTreeGridBodyData(treeGrid, bodyDataToApply, () => {\n if (bodyReloadSequenceRef.current !== reloadSequence) {\n return;\n }\n\n appliedBodyDataPropRef.current = bodyDataToApply;\n syncHasDisplayDataRows(treeGrid);\n measureTreeGridPerf(id, 'ReloadBody end', bodyReloadStartedAtRef.current, {\n bodyRowCount: getTreeGridBodyDataCount(bodyDataToApply),\n });\n bodyReloadStartedAtRef.current = null;\n\n if (stagedBodyDataPropRef.current === bodyDataToApply) {\n stagedBodyDataPropRef.current = undefined;\n hasStagedBodyDataPropRef.current = false;\n }\n\n const startedAt = bindingLoadingStartedAtRef.current;\n\n if (!showLoading || startedAt === null) {\n bindingLoadingStartedAtRef.current = null;\n setIsBindingLoadingVisible(false);\n return;\n }\n\n const remainingVisibleTime = Math.max(\n 0,\n TREE_GRID_BINDING_LOADING_MIN_VISIBLE_MS - (Date.now() - startedAt),\n );\n\n clearBindingLoadingHideTimeout();\n\n if (remainingVisibleTime === 0) {\n bindingLoadingStartedAtRef.current = null;\n setIsBindingLoadingVisible(false);\n return;\n }\n\n bindingLoadingHideTimeoutRef.current = window.setTimeout(() => {\n if (bodyReloadSequenceRef.current !== reloadSequence) {\n return;\n }\n\n bindingLoadingHideTimeoutRef.current = undefined;\n bindingLoadingStartedAtRef.current = null;\n setIsBindingLoadingVisible(false);\n }, remainingVisibleTime);\n });\n };\n\n bodyReloadSequenceRef.current = reloadSequence;\n stagedBodyDataPropRef.current = nextBodyData;\n hasStagedBodyDataPropRef.current = true;\n\n if (showLoading && nextBodyData !== undefined) {\n clearBodyReloadStartTimeout();\n clearBindingLoadingHideTimeout();\n bindingLoadingStartedAtRef.current = Date.now();\n setIsBindingLoadingVisible(true);\n bodyReloadStartTimeoutRef.current = window.setTimeout(() => {\n if (bodyReloadSequenceRef.current !== reloadSequence) {\n return;\n }\n\n runBodyReload();\n }, 0);\n } else {\n runBodyReload();\n }\n }\n\n if (shouldApplyColumnEditRules) {\n syncTreeGridColumnEditRules(\n treeGrid,\n latestColumnEditRuleLookupRef.current,\n columnEditRulesStateRef.current,\n );\n appliedColumnEditRulesRef.current = nextColumnEditRules;\n }\n }, [isTreeGridReady, layoutOverrides, data, columnEditRules, showLoading, id]);\n\n useEffect(() => {\n return () => {\n clearBodyReloadStartTimeout();\n clearBindingLoadingHideTimeout();\n };\n }, []);\n\n const resolvedContainerStyle: CSSProperties = {\n height,\n width,\n ...containerStyle,\n };\n\n if (showLoading || isNoDataVisible) {\n resolvedContainerStyle.position =\n containerStyle?.position && containerStyle.position !== 'static'\n ? containerStyle.position\n : 'relative';\n resolvedContainerStyle.isolation = 'isolate';\n }\n\n return (\n <div ref={treeGridContainerRef} className={containerClassName} style={resolvedContainerStyle}>\n <div id={id} className={className} style={omit(style, ['height', 'width'])} />\n <OwpTreeGridNoDataOverlay\n visible={isNoDataVisible}\n message={t('Message.조회된 결과가 없습니다.')}\n overlayFrame={overlayFrame}\n />\n <OwpTreeGridLoadingOverlay visible={isLoadingOverlayVisible} overlayFrame={overlayFrame} />\n </div>\n );\n};\n\nexport { OwpTreeGrid };\n"],"names":["OwpTreeGrid","__name","id","containerStyle","containerClassName","className","style","height","width","layoutUrl","dataUrl","layoutOverrides","data","useDataUrl","onSelect","onRowClick","onRowAdd","onRowDelete","onRowUndelete","onRowChange","onClickButton","onSave","onReady","onAfterValueChanged","columnEditRules","highlightEditableCells","highlightChangedCells","loading","showLoading","t","useOwpTranslation","treeGridInstanceRef","useRef","treeGridContainerRef","treeGridInitStartedAtRef","bodyReloadStartedAtRef","latestLayoutOverridesRef","latestBodyDataPropRef","latestColumnEditRulesRef","latestColumnEditRuleLookupRef","resolveTreeGridColumnEditRuleLookup","latestEventHandlersRef","stagedBodyDataPropRef","hasStagedBodyDataPropRef","appliedLayoutOverridesRef","appliedBodyDataPropRef","appliedColumnEditRulesRef","columnEditRulesStateRef","createTreeGridColumnEditRulesState","hasAppliedInitialLayoutRef","bodyReloadSequenceRef","bindingLoadingStartedAtRef","bindingLoadingHideTimeoutRef","bodyReloadStartTimeoutRef","highlightEditableCellsRef","highlightChangedCellsRef","isTreeGridReady","setIsTreeGridReady","useState","isBindingLoadingVisible","setIsBindingLoadingVisible","hasDisplayDataRows","setHasDisplayDataRows","currentLanguage","useGetCurrentLanguage","currentLanguageIdRef","isPendingBodyReload","isLoadingOverlayVisible","isNoDataVisible","isEmpty","syncHasDisplayDataRows","grid","hasTreeGridDisplayDataRows","overlayFrame","useOwpTreeGridOverlayFrame","clearBindingLoadingHideTimeout","clearBodyReloadStartTimeout","useEffect","handleBodyRowsChanged","event","_a","TREE_GRID_BODY_ROWS_CHANGED_EVENT","bindTreeGridEvents","getTreeGridPerfTimestamp","countTreeGridPerf","logTreeGridPerf","getTreeGridBodyDataCount","buildTreeGridInitializationOptions","delay","useLayoutEffect","treeGrid","nextLayoutOverrides","nextBodyData","nextColumnEditRules","shouldApplyLayoutOverrides","isEqual","shouldApplyBodyData","shouldApplyColumnEditRules","layoutApplyStartedAt","applyTreeGridLayoutToGrid","measureTreeGridPerf","reloadSequence","runBodyReload","bodyDataToApply","replaceTreeGridBodyData","startedAt","remainingVisibleTime","TREE_GRID_BINDING_LOADING_MIN_VISIBLE_MS","syncTreeGridColumnEditRules","resolvedContainerStyle","jsx","omit","OwpTreeGridNoDataOverlay","OwpTreeGridLoadingOverlay"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OwpTreeGrid.js","sources":["../../../src/components/OwpTreeGrid/OwpTreeGrid.tsx"],"sourcesContent":["import { resolveOwpGridTheme } from '@/constants/gridTheme';\nimport { useGetCurrentSettings } from '@/hooks/useOwpSettings';\nimport { useOwpTranslation } from '@/hooks/useOwpTranslation';\nimport { useGetCurrentLanguage } from '@/hooks/useCurrentLanguage';\nimport {\n TREE_GRID_BODY_ROWS_CHANGED_EVENT,\n type TreeGridBodyRowsChangedEventDetail,\n} from '@/utils/treeGridBodyRowsEvent';\nimport { delay, isEmpty, isEqual, omit } from 'es-toolkit/compat';\n// Temporary TreeGrid perf instrumentation import. Remove with ./internal/utils/perf after profiling is finished.\nimport {\n countTreeGridPerf,\n getTreeGridPerfTimestamp,\n logTreeGridPerf,\n measureTreeGridPerf,\n} from './internal/utils/perf';\nimport {\n type CSSProperties,\n useEffect,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport GlobalStyles from '@mui/material/GlobalStyles';\nimport { useOwpTreeGridOverlayFrame } from './internal/hooks/useOwpTreeGridOverlayFrame';\nimport {\n bindTreeGridEvents,\n buildTreeGridInitializationOptions,\n getTreeGridBodyDataCount,\n hasTreeGridDisplayDataRows,\n replaceTreeGridBodyData,\n TREE_GRID_BINDING_LOADING_MIN_VISIBLE_MS,\n type TreeGridEventHandlers,\n} from './internal/treeGridRuntime';\nimport { applyTreeGridLayoutToGrid } from './internal/treeGridLayout';\nimport { OwpTreeGridLoadingOverlay } from './internal/OwpTreeGridLoadingOverlay';\nimport { OwpTreeGridNoDataOverlay } from './internal/OwpTreeGridNoDataOverlay';\nimport {\n createTreeGridColumnEditRulesState,\n resolveTreeGridColumnEditRuleLookup,\n syncTreeGridColumnEditRules,\n} from './internal/treeGridColumnEditRules';\n\ntype TreeGridLayoutScalarValue = string | number;\ntype TreeGridNestedLayoutFields = Record<string, TreeGridLayoutScalarValue>;\ntype TreeGridLayoutFields = Record<string, TreeGridLayoutScalarValue | TreeGridNestedLayoutFields>;\ntype TreeGridSectionFields = Record<string, TreeGridLayoutScalarValue>;\ntype TreeGridThemeContainerStyle = CSSProperties & {\n '--owp-tree-grid-header-background-color'?: string;\n '--owp-tree-grid-header-color'?: string;\n '--owp-tree-grid-header-font-size'?: string;\n '--owp-tree-grid-header-font-weight'?: string;\n '--owp-tree-grid-cell-font-size'?: string;\n};\n\nconst TREE_GRID_STYLE_PREFIXES = [\n 'TS',\n 'TW',\n 'TB',\n 'TM',\n 'TT',\n 'CF',\n 'CL',\n 'CO',\n 'CG',\n 'CB',\n 'CQ',\n 'CE',\n 'CS',\n 'CR',\n 'CP',\n 'CC',\n] as const;\nconst TREE_GRID_THEME_WRAPPER_CLASS = 'owp-tree-grid-theme';\n\nconst toTreeGridCssValue = (value: number | string) => {\n return typeof value === 'number' ? `${value}px` : value;\n};\n\nconst createTreeGridSelectors = ({\n rowSuffix,\n suffixes,\n withChildren = false,\n}: {\n rowSuffix?: string;\n suffixes: readonly string[];\n withChildren?: boolean;\n}) => {\n return TREE_GRID_STYLE_PREFIXES.flatMap((prefix) => {\n return suffixes.flatMap((suffix) => {\n const wrapperSelector = `.${TREE_GRID_THEME_WRAPPER_CLASS}`;\n const rowSelector = rowSuffix ? ` .${prefix}${rowSuffix}` : '';\n const selector = `${wrapperSelector}${rowSelector} .${prefix}${suffix}`;\n\n return withChildren ? [selector, `${selector} *`] : [selector];\n });\n }).join(', ');\n};\n\nconst treeGridBodyTypographySelector = createTreeGridSelectors({\n suffixes: ['Main'],\n withChildren: true,\n});\n\nconst treeGridHeaderTypographySelector = createTreeGridSelectors({\n rowSuffix: 'HeaderRow',\n suffixes: ['CellHeader', 'CellIndex', 'GanttHeaderBase', 'LevelButton'],\n withChildren: true,\n});\n\nconst treeGridHeaderSurfaceSelector = createTreeGridSelectors({\n rowSuffix: 'HeaderRow',\n suffixes: [\n 'CellHeader',\n 'CellIndex',\n 'EditHeaderInput',\n 'EditHeaderTextarea',\n 'ColorFocusedCellHeader',\n 'ColorHoveredCellHeader',\n 'ColorHoveredCellIndex',\n 'HeaderFocus',\n 'HeaderDrag',\n ],\n});\n\nconst treeGridThemeStyles = {\n [treeGridBodyTypographySelector]: {\n fontSize: 'var(--owp-tree-grid-cell-font-size, 13px)',\n fontWeight: 'normal',\n lineHeight: '16px',\n },\n [treeGridHeaderTypographySelector]: {\n color: 'var(--owp-tree-grid-header-color, #ffffff) !important',\n fontSize: 'var(--owp-tree-grid-header-font-size, 14px) !important',\n fontWeight: 'var(--owp-tree-grid-header-font-weight, normal) !important',\n lineHeight: '16px',\n },\n [treeGridHeaderSurfaceSelector]: {\n backgroundColor: 'var(--owp-tree-grid-header-background-color, #586980) !important',\n color: 'var(--owp-tree-grid-header-color, #ffffff) !important',\n },\n};\n\nexport interface OwpTreeGridLayout {\n Header?: TreeGridLayoutFields;\n Toolbar?: TreeGridSectionFields;\n Foot?: TreeGridSectionFields;\n}\n\nexport type OwpTreeGridLayoutConfig = OwpTreeGridLayout;\nexport type THeader = OwpTreeGridLayoutConfig;\nexport type OwpTreeGridBodyData<T> = Record<string, never> | [] | undefined | T[];\nexport type OwpTreeGridData<T> = OwpTreeGridBodyData<T>;\nexport type TData<T> = OwpTreeGridBodyData<T>;\nexport type OwpTreeGridRowModel<T> = TRow & T;\nexport type OwpTreeGridSelectedRows<T> = OwpTreeGridRowModel<T>[];\nexport type OwpTreeGridColumnEditPreset = 'hourMinute';\n\nexport interface OwpTreeGridColumnEditRule {\n columns: readonly string[];\n preset: OwpTreeGridColumnEditPreset;\n}\n\ntype OwpTreeGridSelectHandler<T> = (selectedRows: OwpTreeGridSelectedRows<T>) => void;\ntype OwpTreeGridRowAddHandler<T> = (grid: TGrid, row: OwpTreeGridRowModel<T>) => void;\ntype OwpTreeGridRowDeleteHandler<T> = (\n grid: TGrid,\n row: OwpTreeGridRowModel<T>,\n deleteType: number,\n) => void;\ntype OwpTreeGridRowUndeleteHandler<T> = (grid: TGrid, row: OwpTreeGridRowModel<T>) => void;\ntype OwpTreeGridButtonClickHandler<T> = (\n grid: TGrid,\n row: OwpTreeGridRowModel<T>,\n col: string,\n event: Event,\n) => void;\ntype OwpTreeGridRowClickHandler<T> = (\n grid: TGrid,\n row: OwpTreeGridRowModel<T>,\n col: string,\n x: number,\n y: number,\n event: Event,\n) => void;\ntype OwpTreeGridSaveHandler<T> = (\n grid: TGrid,\n row: OwpTreeGridRowModel<T>,\n autoupdate: boolean | number,\n) => void;\ntype OwpTreeGridCellValue = unknown;\ntype OwpTreeGridAfterValueChangedHandler<T> = (\n grid: TGrid,\n row: OwpTreeGridRowModel<T>,\n col: string,\n value: OwpTreeGridCellValue,\n) => void;\n\nexport interface OwpTreeGridProps<T> {\n id: string;\n className?: string;\n containerStyle?: CSSProperties;\n containerClassName?: string;\n layoutUrl?: string;\n dataUrl?: string;\n layoutOverrides?: OwpTreeGridLayoutConfig;\n data?: OwpTreeGridBodyData<T>;\n style?: CSSProperties;\n height?: string | number;\n width?: string | number;\n useDataUrl?: boolean;\n onSelect?: OwpTreeGridSelectHandler<T>;\n onRowAdd?: OwpTreeGridRowAddHandler<T>;\n onRowDelete?: OwpTreeGridRowDeleteHandler<T>;\n onRowUndelete?: OwpTreeGridRowUndeleteHandler<T>;\n onRowChange?: OwpTreeGridAfterValueChangedHandler<T>;\n onClickButton?: OwpTreeGridButtonClickHandler<T>;\n onReady?: (grid: TGrid) => void;\n onRowClick?: OwpTreeGridRowClickHandler<T>;\n onSave?: OwpTreeGridSaveHandler<T>;\n onAfterValueChanged?: OwpTreeGridAfterValueChangedHandler<T>;\n columnEditRules?: readonly OwpTreeGridColumnEditRule[];\n highlightEditableCells?: boolean;\n highlightChangedCells?: boolean;\n loading?: boolean;\n showLoading?: boolean;\n}\n\n/**\n * OwpTreeGrid 컴포넌트\n * @param id 식별자\n * @param containerStyle containerStyle 값\n * @param containerClassName containerClassName 값\n * @param className CSS 클래스명\n * @param style 스타일 객체\n * @param height height 값\n */\nconst OwpTreeGrid = <T,>({\n id = 'treeGridWrapper',\n containerStyle,\n containerClassName,\n className,\n style,\n height = '100%',\n width = '100%',\n layoutUrl,\n dataUrl,\n layoutOverrides,\n data,\n useDataUrl,\n onSelect,\n onRowClick,\n onRowAdd,\n onRowDelete,\n onRowUndelete,\n onRowChange,\n onClickButton,\n onSave,\n onReady,\n onAfterValueChanged,\n columnEditRules,\n highlightEditableCells = true,\n highlightChangedCells = true,\n loading,\n showLoading = true,\n}: OwpTreeGridProps<T>) => {\n const { t } = useOwpTranslation();\n const currentSettings = useGetCurrentSettings();\n const treeGridInstanceRef = useRef<TGrid>(null);\n const treeGridContainerRef = useRef<HTMLDivElement | null>(null);\n const treeGridInitStartedAtRef = useRef<number | null>(null);\n const bodyReloadStartedAtRef = useRef<number | null>(null);\n const latestLayoutOverridesRef = useRef<OwpTreeGridLayoutConfig | undefined>(layoutOverrides);\n const latestBodyDataPropRef = useRef<OwpTreeGridBodyData<T>>(data);\n const latestColumnEditRulesRef = useRef<readonly OwpTreeGridColumnEditRule[] | undefined>(\n columnEditRules,\n );\n const latestColumnEditRuleLookupRef = useRef(\n resolveTreeGridColumnEditRuleLookup(columnEditRules, {\n hourMinuteInvalidText: t('Message.시간은 HH:mm 형식으로 입력해주세요.'),\n }),\n );\n const latestEventHandlersRef = useRef<TreeGridEventHandlers<T>>({\n onSelect,\n onRowClick,\n onRowAdd,\n onRowDelete,\n onRowUndelete,\n onRowChange,\n onClickButton,\n onSave,\n onReady,\n onAfterValueChanged,\n });\n const stagedBodyDataPropRef = useRef<OwpTreeGridBodyData<T>>(undefined);\n const hasStagedBodyDataPropRef = useRef(false);\n const appliedLayoutOverridesRef = useRef<OwpTreeGridLayoutConfig | undefined>(undefined);\n const appliedBodyDataPropRef = useRef<OwpTreeGridBodyData<T>>(undefined);\n const appliedColumnEditRulesRef = useRef<readonly OwpTreeGridColumnEditRule[] | undefined>(\n undefined,\n );\n const columnEditRulesStateRef = useRef(createTreeGridColumnEditRulesState());\n const hasAppliedInitialLayoutRef = useRef(false);\n const bodyReloadSequenceRef = useRef(0);\n const bindingLoadingStartedAtRef = useRef<number | null>(null);\n const bindingLoadingHideTimeoutRef = useRef<number | undefined>(undefined);\n const bodyReloadStartTimeoutRef = useRef<number | undefined>(undefined);\n const highlightEditableCellsRef = useRef(highlightEditableCells);\n const highlightChangedCellsRef = useRef(highlightChangedCells);\n const [isTreeGridReady, setIsTreeGridReady] = useState(false);\n const [isBindingLoadingVisible, setIsBindingLoadingVisible] = useState(false);\n const [hasDisplayDataRows, setHasDisplayDataRows] = useState(false);\n const currentLanguage = useGetCurrentLanguage();\n const treeGridTheme = useMemo(\n () => resolveOwpGridTheme(currentSettings?.theme?.main?.grid),\n [currentSettings],\n );\n const currentLanguageIdRef = useRef(currentLanguage.id);\n const isPendingBodyReload =\n showLoading &&\n data !== undefined &&\n isTreeGridReady &&\n appliedBodyDataPropRef.current !== data;\n const isInternalLoadingVisible = showLoading && (isBindingLoadingVisible || isPendingBodyReload);\n const isLoadingOverlayVisible = (showLoading && loading === true) || isInternalLoadingVisible;\n const isNoDataVisible =\n !isLoadingOverlayVisible && data !== undefined && isEmpty(data) && !hasDisplayDataRows;\n\n const syncHasDisplayDataRows = (grid: TGrid | null) => {\n setHasDisplayDataRows(hasTreeGridDisplayDataRows(grid));\n };\n\n latestLayoutOverridesRef.current = layoutOverrides;\n latestBodyDataPropRef.current = data;\n latestColumnEditRulesRef.current = columnEditRules;\n latestColumnEditRuleLookupRef.current = resolveTreeGridColumnEditRuleLookup(columnEditRules, {\n hourMinuteInvalidText: t('Message.시간은 HH:mm 형식으로 입력해주세요.'),\n });\n highlightEditableCellsRef.current = highlightEditableCells;\n highlightChangedCellsRef.current = highlightChangedCells;\n latestEventHandlersRef.current = {\n onSelect,\n onRowClick,\n onRowAdd,\n onRowDelete,\n onRowUndelete,\n onRowChange,\n onClickButton,\n onSave,\n onReady,\n onAfterValueChanged,\n };\n\n const overlayFrame = useOwpTreeGridOverlayFrame({\n visible: isLoadingOverlayVisible || isNoDataVisible,\n containerRef: treeGridContainerRef,\n treeGridInstanceRef,\n debugId: id,\n });\n\n const clearBindingLoadingHideTimeout = () => {\n if (bindingLoadingHideTimeoutRef.current !== undefined) {\n window.clearTimeout(bindingLoadingHideTimeoutRef.current);\n bindingLoadingHideTimeoutRef.current = undefined;\n }\n };\n\n const clearBodyReloadStartTimeout = () => {\n if (bodyReloadStartTimeoutRef.current !== undefined) {\n window.clearTimeout(bodyReloadStartTimeoutRef.current);\n bodyReloadStartTimeoutRef.current = undefined;\n }\n };\n\n useEffect(() => {\n const handleBodyRowsChanged = (event: Event) => {\n const customEvent = event as CustomEvent<TreeGridBodyRowsChangedEventDetail>;\n\n if (customEvent.detail?.gridId !== id) {\n return;\n }\n\n setHasDisplayDataRows(hasTreeGridDisplayDataRows(treeGridInstanceRef.current));\n };\n\n window.addEventListener(TREE_GRID_BODY_ROWS_CHANGED_EVENT, handleBodyRowsChanged);\n\n return () => {\n window.removeEventListener(TREE_GRID_BODY_ROWS_CHANGED_EVENT, handleBodyRowsChanged);\n };\n }, [id]);\n\n useEffect(() => {\n if (!showLoading) {\n clearBodyReloadStartTimeout();\n clearBindingLoadingHideTimeout();\n bindingLoadingStartedAtRef.current = null;\n setIsBindingLoadingVisible(false);\n }\n }, [showLoading]);\n\n useEffect(() => {\n if (\n currentLanguage.id !== currentLanguageIdRef.current &&\n !isEmpty(treeGridInstanceRef.current)\n ) {\n treeGridInstanceRef.current?.Dispose();\n treeGridInstanceRef.current = null;\n currentLanguageIdRef.current = currentLanguage.id;\n }\n\n if (!isEmpty(treeGridInstanceRef.current)) {\n return;\n }\n\n bindTreeGridEvents({\n id,\n latestEventHandlersRef,\n highlightEditableCellsRef,\n highlightChangedCellsRef,\n treeGridInstanceRef,\n treeGridInitStartedAtRef,\n latestLayoutOverridesRef,\n appliedLayoutOverridesRef,\n appliedBodyDataPropRef,\n latestColumnEditRulesRef,\n latestColumnEditRuleLookupRef,\n appliedColumnEditRulesRef,\n columnEditRulesStateRef,\n hasAppliedInitialLayoutRef,\n syncHasDisplayDataRows,\n setIsTreeGridReady,\n });\n\n treeGridInitStartedAtRef.current = getTreeGridPerfTimestamp();\n countTreeGridPerf(id, 'init');\n logTreeGridPerf(id, 'TreeGrid init start', {\n useDataUrl: Boolean(useDataUrl),\n bodyRowCount: getTreeGridBodyDataCount(data),\n });\n\n window.TreeGrid(\n buildTreeGridInitializationOptions({\n id,\n layoutUrl,\n dataUrl,\n bodyData: data,\n useDataUrl,\n width,\n height,\n languageId: currentLanguage.id,\n }),\n id,\n id,\n );\n\n return () => {\n delay(() => {\n treeGridInstanceRef.current?.Dispose();\n }, 200);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useLayoutEffect(() => {\n const treeGrid = treeGridInstanceRef.current;\n const nextLayoutOverrides = latestLayoutOverridesRef.current;\n const nextBodyData = latestBodyDataPropRef.current;\n const nextColumnEditRules = latestColumnEditRulesRef.current;\n\n if (isEmpty(treeGrid) || !isTreeGridReady) {\n return;\n }\n\n const shouldApplyLayoutOverrides =\n appliedLayoutOverridesRef.current !== nextLayoutOverrides &&\n !isEqual(appliedLayoutOverridesRef.current, nextLayoutOverrides);\n const shouldApplyBodyData =\n appliedBodyDataPropRef.current !== nextBodyData &&\n (!hasStagedBodyDataPropRef.current || stagedBodyDataPropRef.current !== nextBodyData);\n const shouldApplyColumnEditRules =\n appliedColumnEditRulesRef.current !== nextColumnEditRules &&\n !isEqual(appliedColumnEditRulesRef.current, nextColumnEditRules);\n\n if (!shouldApplyLayoutOverrides && !shouldApplyBodyData && !shouldApplyColumnEditRules) {\n return;\n }\n\n if (shouldApplyLayoutOverrides) {\n const layoutApplyStartedAt = getTreeGridPerfTimestamp();\n\n applyTreeGridLayoutToGrid(treeGrid, nextLayoutOverrides, shouldApplyBodyData);\n appliedLayoutOverridesRef.current = nextLayoutOverrides;\n measureTreeGridPerf(id, 'apply layout', layoutApplyStartedAt, {\n disableBodyReload: Boolean(shouldApplyBodyData),\n });\n }\n\n if (shouldApplyBodyData) {\n const reloadSequence = bodyReloadSequenceRef.current + 1;\n const runBodyReload = () => {\n const bodyDataToApply = stagedBodyDataPropRef.current;\n\n bodyReloadStartTimeoutRef.current = undefined;\n bodyReloadStartedAtRef.current = getTreeGridPerfTimestamp();\n countTreeGridPerf(id, 'reload');\n logTreeGridPerf(id, 'ReloadBody start', {\n bodyRowCount: getTreeGridBodyDataCount(bodyDataToApply),\n });\n\n replaceTreeGridBodyData(treeGrid, bodyDataToApply, () => {\n if (bodyReloadSequenceRef.current !== reloadSequence) {\n return;\n }\n\n appliedBodyDataPropRef.current = bodyDataToApply;\n syncHasDisplayDataRows(treeGrid);\n measureTreeGridPerf(id, 'ReloadBody end', bodyReloadStartedAtRef.current, {\n bodyRowCount: getTreeGridBodyDataCount(bodyDataToApply),\n });\n bodyReloadStartedAtRef.current = null;\n\n if (stagedBodyDataPropRef.current === bodyDataToApply) {\n stagedBodyDataPropRef.current = undefined;\n hasStagedBodyDataPropRef.current = false;\n }\n\n const startedAt = bindingLoadingStartedAtRef.current;\n\n if (!showLoading || startedAt === null) {\n bindingLoadingStartedAtRef.current = null;\n setIsBindingLoadingVisible(false);\n return;\n }\n\n const remainingVisibleTime = Math.max(\n 0,\n TREE_GRID_BINDING_LOADING_MIN_VISIBLE_MS - (Date.now() - startedAt),\n );\n\n clearBindingLoadingHideTimeout();\n\n if (remainingVisibleTime === 0) {\n bindingLoadingStartedAtRef.current = null;\n setIsBindingLoadingVisible(false);\n return;\n }\n\n bindingLoadingHideTimeoutRef.current = window.setTimeout(() => {\n if (bodyReloadSequenceRef.current !== reloadSequence) {\n return;\n }\n\n bindingLoadingHideTimeoutRef.current = undefined;\n bindingLoadingStartedAtRef.current = null;\n setIsBindingLoadingVisible(false);\n }, remainingVisibleTime);\n });\n };\n\n bodyReloadSequenceRef.current = reloadSequence;\n stagedBodyDataPropRef.current = nextBodyData;\n hasStagedBodyDataPropRef.current = true;\n\n if (showLoading && nextBodyData !== undefined) {\n clearBodyReloadStartTimeout();\n clearBindingLoadingHideTimeout();\n bindingLoadingStartedAtRef.current = Date.now();\n setIsBindingLoadingVisible(true);\n bodyReloadStartTimeoutRef.current = window.setTimeout(() => {\n if (bodyReloadSequenceRef.current !== reloadSequence) {\n return;\n }\n\n runBodyReload();\n }, 0);\n } else {\n runBodyReload();\n }\n }\n\n if (shouldApplyColumnEditRules) {\n syncTreeGridColumnEditRules(\n treeGrid,\n latestColumnEditRuleLookupRef.current,\n columnEditRulesStateRef.current,\n );\n appliedColumnEditRulesRef.current = nextColumnEditRules;\n }\n }, [isTreeGridReady, layoutOverrides, data, columnEditRules, showLoading, id]);\n\n useEffect(() => {\n return () => {\n clearBodyReloadStartTimeout();\n clearBindingLoadingHideTimeout();\n };\n }, []);\n\n const resolvedContainerStyle: TreeGridThemeContainerStyle = {\n height,\n width,\n '--owp-tree-grid-header-background-color': treeGridTheme.header.backgroundColor,\n '--owp-tree-grid-header-color': treeGridTheme.header.color,\n '--owp-tree-grid-header-font-size': toTreeGridCssValue(treeGridTheme.header.fontSize),\n '--owp-tree-grid-header-font-weight': String(treeGridTheme.header.fontWeight),\n '--owp-tree-grid-cell-font-size': toTreeGridCssValue(treeGridTheme.cell.fontSize),\n ...containerStyle,\n };\n\n if (showLoading || isNoDataVisible) {\n resolvedContainerStyle.position =\n containerStyle?.position && containerStyle.position !== 'static'\n ? containerStyle.position\n : 'relative';\n resolvedContainerStyle.isolation = 'isolate';\n }\n\n return (\n <div\n ref={treeGridContainerRef}\n className={[TREE_GRID_THEME_WRAPPER_CLASS, containerClassName].filter(Boolean).join(' ')}\n style={resolvedContainerStyle}\n >\n <GlobalStyles styles={treeGridThemeStyles} />\n <div id={id} className={className} style={omit(style, ['height', 'width'])} />\n <OwpTreeGridNoDataOverlay\n visible={isNoDataVisible}\n message={t('Message.조회된 결과가 없습니다.')}\n overlayFrame={overlayFrame}\n />\n <OwpTreeGridLoadingOverlay visible={isLoadingOverlayVisible} overlayFrame={overlayFrame} />\n </div>\n );\n};\n\nexport { OwpTreeGrid };\n"],"names":["TREE_GRID_STYLE_PREFIXES","TREE_GRID_THEME_WRAPPER_CLASS","toTreeGridCssValue","__name","value","createTreeGridSelectors","rowSuffix","suffixes","withChildren","prefix","suffix","wrapperSelector","rowSelector","selector","treeGridBodyTypographySelector","treeGridHeaderTypographySelector","treeGridHeaderSurfaceSelector","treeGridThemeStyles","OwpTreeGrid","id","containerStyle","containerClassName","className","style","height","width","layoutUrl","dataUrl","layoutOverrides","data","useDataUrl","onSelect","onRowClick","onRowAdd","onRowDelete","onRowUndelete","onRowChange","onClickButton","onSave","onReady","onAfterValueChanged","columnEditRules","highlightEditableCells","highlightChangedCells","loading","showLoading","t","useOwpTranslation","currentSettings","useGetCurrentSettings","treeGridInstanceRef","useRef","treeGridContainerRef","treeGridInitStartedAtRef","bodyReloadStartedAtRef","latestLayoutOverridesRef","latestBodyDataPropRef","latestColumnEditRulesRef","latestColumnEditRuleLookupRef","resolveTreeGridColumnEditRuleLookup","latestEventHandlersRef","stagedBodyDataPropRef","hasStagedBodyDataPropRef","appliedLayoutOverridesRef","appliedBodyDataPropRef","appliedColumnEditRulesRef","columnEditRulesStateRef","createTreeGridColumnEditRulesState","hasAppliedInitialLayoutRef","bodyReloadSequenceRef","bindingLoadingStartedAtRef","bindingLoadingHideTimeoutRef","bodyReloadStartTimeoutRef","highlightEditableCellsRef","highlightChangedCellsRef","isTreeGridReady","setIsTreeGridReady","useState","isBindingLoadingVisible","setIsBindingLoadingVisible","hasDisplayDataRows","setHasDisplayDataRows","currentLanguage","useGetCurrentLanguage","treeGridTheme","useMemo","resolveOwpGridTheme","_b","_a","currentLanguageIdRef","isPendingBodyReload","isLoadingOverlayVisible","isNoDataVisible","isEmpty","syncHasDisplayDataRows","grid","hasTreeGridDisplayDataRows","overlayFrame","useOwpTreeGridOverlayFrame","clearBindingLoadingHideTimeout","clearBodyReloadStartTimeout","useEffect","handleBodyRowsChanged","event","TREE_GRID_BODY_ROWS_CHANGED_EVENT","bindTreeGridEvents","getTreeGridPerfTimestamp","countTreeGridPerf","logTreeGridPerf","getTreeGridBodyDataCount","buildTreeGridInitializationOptions","delay","useLayoutEffect","treeGrid","nextLayoutOverrides","nextBodyData","nextColumnEditRules","shouldApplyLayoutOverrides","isEqual","shouldApplyBodyData","shouldApplyColumnEditRules","layoutApplyStartedAt","applyTreeGridLayoutToGrid","measureTreeGridPerf","reloadSequence","runBodyReload","bodyDataToApply","replaceTreeGridBodyData","startedAt","remainingVisibleTime","TREE_GRID_BINDING_LOADING_MIN_VISIBLE_MS","syncTreeGridColumnEditRules","resolvedContainerStyle","jsxs","jsx","GlobalStyles","omit","OwpTreeGridNoDataOverlay","OwpTreeGridLoadingOverlay"],"mappings":"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"}
|
|
@@ -9,9 +9,9 @@ const O = /* @__PURE__ */ e(({
|
|
|
9
9
|
exportName: r,
|
|
10
10
|
children: a,
|
|
11
11
|
loading: n,
|
|
12
|
-
loadingPosition:
|
|
12
|
+
loadingPosition: p,
|
|
13
13
|
onClick: o,
|
|
14
|
-
...
|
|
14
|
+
...c
|
|
15
15
|
}) => {
|
|
16
16
|
const { t: d } = x(), { exportByTreeGrid: l, isExporting: i } = f(t);
|
|
17
17
|
return /* @__PURE__ */ m(
|
|
@@ -19,17 +19,17 @@ const O = /* @__PURE__ */ e(({
|
|
|
19
19
|
{
|
|
20
20
|
variant: "contained",
|
|
21
21
|
color: "success",
|
|
22
|
-
...
|
|
22
|
+
...c,
|
|
23
23
|
loading: !!(n || i),
|
|
24
|
-
loadingPosition:
|
|
24
|
+
loadingPosition: p ?? "start",
|
|
25
25
|
onClick: /* @__PURE__ */ e((s) => {
|
|
26
26
|
o == null || o(s), !(s.defaultPrevented || n || i) && l(r ?? t);
|
|
27
27
|
}, "handleClick"),
|
|
28
28
|
children: a ?? d("Button.엑셀 다운로드")
|
|
29
29
|
}
|
|
30
30
|
);
|
|
31
|
-
}, "
|
|
31
|
+
}, "OwpTreeGridExportExcelButton");
|
|
32
32
|
export {
|
|
33
|
-
O as
|
|
33
|
+
O as OwpTreeGridExportExcelButton
|
|
34
34
|
};
|
|
35
|
-
//# sourceMappingURL=
|
|
35
|
+
//# sourceMappingURL=OwpTreeGridExportExcelButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OwpTreeGridExportExcelButton.js","sources":["../../../src/components/OwpTreeGridExportExcelButton/OwpTreeGridExportExcelButton.tsx"],"sourcesContent":["import { useOwpTranslation } from '@/hooks/useOwpTranslation';\nimport { useTreeGridExcelExport } from '@/hooks/useTreeGridExcelExport';\nimport { Button, type ButtonProps } from '@mui/material';\nimport { type MouseEventHandler } from 'react';\n\nexport interface OwpTreeGridExportExcelButtonProps extends ButtonProps {\n gridId: string;\n exportName?: string;\n}\n\n/**\n * TreeGrid 엑셀 내보내기 버튼\n * @param gridId TreeGrid 인스턴스 ID\n * @param exportName 다운로드 파일명\n */\nconst OwpTreeGridExportExcelButton = ({\n gridId,\n exportName,\n children,\n loading,\n loadingPosition,\n onClick,\n ...buttonProps\n}: OwpTreeGridExportExcelButtonProps) => {\n const { t } = useOwpTranslation();\n const { exportByTreeGrid, isExporting } = useTreeGridExcelExport(gridId);\n\n const handleClick: MouseEventHandler<HTMLButtonElement> = (event) => {\n onClick?.(event);\n\n if (event.defaultPrevented || loading || isExporting) {\n return;\n }\n\n void exportByTreeGrid(exportName ?? gridId);\n };\n\n return (\n <Button\n variant=\"contained\"\n color=\"success\"\n {...buttonProps}\n loading={Boolean(loading || isExporting)}\n loadingPosition={loadingPosition ?? 'start'}\n onClick={handleClick}\n >\n {children ?? t('Button.엑셀 다운로드')}\n </Button>\n );\n};\n\nexport { OwpTreeGridExportExcelButton };\n"],"names":["OwpTreeGridExportExcelButton","__name","gridId","exportName","children","loading","loadingPosition","onClick","buttonProps","t","useOwpTranslation","exportByTreeGrid","isExporting","useTreeGridExcelExport","jsx","Button","event"],"mappings":";;;;;;AAeA,MAAMA,IAA+B,gBAAAC,EAAA,CAAC;AAAA,EACpC,QAAAC;AAAA,EACA,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,SAAAC;AAAA,EACA,GAAGC;AACL,MAAyC;AACvC,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAA,GACR,EAAE,kBAAAC,GAAkB,aAAAC,MAAgBC,EAAuBX,CAAM;AAYvE,SACE,gBAAAY;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAAQ;AAAA,MACR,OAAM;AAAA,MACL,GAAGP;AAAA,MACJ,SAAS,GAAQH,KAAWO;AAAA,MAC5B,iBAAiBN,KAAmB;AAAA,MACpC,SAjBsD,gBAAAL,EAAA,CAACe,MAAU;AAGnE,QAFAT,KAAA,QAAAA,EAAUS,IAEN,EAAAA,EAAM,oBAAoBX,KAAWO,MAIpCD,EAAiBR,KAAcD,CAAM;AAAA,MAC5C,GAR0D;AAAA,MAmBrD,UAAAE,KAAYK,EAAE,gBAAgB;AAAA,IAAA;AAAA,EAAA;AAGrC,GAlCqC;"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
var c = Object.defineProperty;
|
|
2
|
+
var o = (l, t) => c(l, "name", { value: t, configurable: !0 });
|
|
3
|
+
const f = {
|
|
4
|
+
header: {
|
|
5
|
+
backgroundColor: "#586980",
|
|
6
|
+
color: "#ffffff",
|
|
7
|
+
fontSize: "14px",
|
|
8
|
+
fontWeight: "normal",
|
|
9
|
+
height: 33
|
|
10
|
+
},
|
|
11
|
+
cell: {
|
|
12
|
+
fontSize: "13px"
|
|
13
|
+
}
|
|
14
|
+
}, a = /* @__PURE__ */ o((l) => ({
|
|
15
|
+
header: {
|
|
16
|
+
...f.header,
|
|
17
|
+
...(l == null ? void 0 : l.header) ?? {}
|
|
18
|
+
},
|
|
19
|
+
cell: {
|
|
20
|
+
...f.cell,
|
|
21
|
+
...(l == null ? void 0 : l.cell) ?? {}
|
|
22
|
+
}
|
|
23
|
+
}), "resolveOwpGridTheme");
|
|
24
|
+
export {
|
|
25
|
+
f as defaultOwpGridTheme,
|
|
26
|
+
a as resolveOwpGridTheme
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=gridTheme.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gridTheme.js","sources":["../../src/constants/gridTheme.ts"],"sourcesContent":["import type { OwpGridThemeConfigType } from '@/types/OwpGridThemeTypes';\n\nexport type OwpResolvedGridThemeConfigType = {\n header: {\n backgroundColor: string;\n color: string;\n fontSize: number | string;\n fontWeight: number | string;\n height: number | string;\n };\n cell: {\n fontSize: number | string;\n };\n};\n\nexport const defaultOwpGridTheme = {\n header: {\n backgroundColor: '#586980',\n color: '#ffffff',\n fontSize: '14px',\n fontWeight: 'normal',\n height: 33,\n },\n cell: {\n fontSize: '13px',\n },\n} satisfies OwpResolvedGridThemeConfigType;\n\n/**\n * Grid theme 토큰 기본값 병합\n * @param gridTheme 앱 theme grid 설정\n */\nexport const resolveOwpGridTheme = (\n gridTheme?: OwpGridThemeConfigType | null,\n): OwpResolvedGridThemeConfigType => {\n return {\n header: {\n ...defaultOwpGridTheme.header,\n ...(gridTheme?.header ?? {}),\n },\n cell: {\n ...defaultOwpGridTheme.cell,\n ...(gridTheme?.cell ?? {}),\n },\n };\n};\n"],"names":["defaultOwpGridTheme","resolveOwpGridTheme","__name","gridTheme"],"mappings":";;AAeO,MAAMA,IAAsB;AAAA,EACjC,QAAQ;AAAA,IACN,iBAAiB;AAAA,IACjB,OAAO;AAAA,IACP,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,QAAQ;AAAA,EAAA;AAAA,EAEV,MAAM;AAAA,IACJ,UAAU;AAAA,EAAA;AAEd,GAMaC,IAAsB,gBAAAC,EAAA,CACjCC,OAEO;AAAA,EACL,QAAQ;AAAA,IACN,GAAGH,EAAoB;AAAA,IACvB,IAAIG,KAAA,gBAAAA,EAAW,WAAU,CAAA;AAAA,EAAC;AAAA,EAE5B,MAAM;AAAA,IACJ,GAAGH,EAAoB;AAAA,IACvB,IAAIG,KAAA,gBAAAA,EAAW,SAAQ,CAAA;AAAA,EAAC;AAC1B,IAX+B;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
var p = Object.defineProperty;
|
|
2
|
+
var r = (a, o) => p(a, "name", { value: o, configurable: !0 });
|
|
3
|
+
import { normalizeFormDataUploadParams as b, createFormDataBody as s } from "../utils/createFormDataBody.js";
|
|
4
|
+
import { useCallback as f } from "react";
|
|
5
|
+
const D = /* @__PURE__ */ r(({
|
|
6
|
+
formData: a
|
|
7
|
+
}) => a, "createDefaultVariables"), z = /* @__PURE__ */ r((a) => {
|
|
8
|
+
const { mutation: o, createVariables: t, fileNameFieldName: e } = a, l = f(
|
|
9
|
+
(i, c) => {
|
|
10
|
+
const m = b(i, { fileNameFieldName: e }), u = s(m), n = {
|
|
11
|
+
body: m,
|
|
12
|
+
formData: u,
|
|
13
|
+
bodySerializer: s
|
|
14
|
+
}, d = (t == null ? void 0 : t(n)) ?? D(n);
|
|
15
|
+
o.mutate(d, c);
|
|
16
|
+
},
|
|
17
|
+
[t, e, o]
|
|
18
|
+
);
|
|
19
|
+
return {
|
|
20
|
+
...o,
|
|
21
|
+
uploadFile: l
|
|
22
|
+
};
|
|
23
|
+
}, "useFormDataUploadMutation");
|
|
24
|
+
export {
|
|
25
|
+
z as useFormDataUploadMutation
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=useFormDataUploadMutation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFormDataUploadMutation.js","sources":["../../src/hooks/useFormDataUploadMutation.ts"],"sourcesContent":["import {\n createFormDataBody,\n normalizeFormDataUploadParams,\n type FormDataUploadBody,\n type FormDataUploadParams,\n type TAdditionalFields,\n} from '@/utils/createFormDataBody';\nimport { useCallback } from 'react';\n\nexport type {\n FormDataFieldValue,\n FormDataUploadBody,\n FormDataUploadParams,\n TAdditionalFields,\n} from '@/utils/createFormDataBody';\n\ntype FormDataUploadMutationLike = {\n mutate: (...args: any[]) => void;\n};\n\ntype FormDataUploadMutationMutateParameters<TMutation extends FormDataUploadMutationLike> =\n Parameters<TMutation['mutate']>;\n\ntype FormDataUploadMutationVariables<TMutation extends FormDataUploadMutationLike> =\n FormDataUploadMutationMutateParameters<TMutation>[0];\n\ntype FormDataUploadMutateOptions<TMutation extends FormDataUploadMutationLike> =\n FormDataUploadMutationMutateParameters<TMutation>[1];\n\nexport interface FormDataUploadMutationVariablesArgs<\n TFields extends TAdditionalFields = TAdditionalFields,\n> {\n body: FormDataUploadBody<TFields>;\n formData: FormData;\n bodySerializer: typeof createFormDataBody;\n}\n\ninterface UseFormDataUploadMutationBaseProps<TMutation extends FormDataUploadMutationLike> {\n mutation: TMutation;\n fileNameFieldName?: string;\n}\n\nexport type UseFormDataUploadMutationProps<\n TMutation extends FormDataUploadMutationLike,\n TFields extends TAdditionalFields = TAdditionalFields,\n> = FormDataUploadMutationVariables<TMutation> extends FormData\n ? UseFormDataUploadMutationBaseProps<TMutation> & {\n createVariables?: (\n args: FormDataUploadMutationVariablesArgs<TFields>,\n ) => FormDataUploadMutationVariables<TMutation>;\n }\n : UseFormDataUploadMutationBaseProps<TMutation> & {\n createVariables: (\n args: FormDataUploadMutationVariablesArgs<TFields>,\n ) => FormDataUploadMutationVariables<TMutation>;\n };\n\nexport type UseFormDataUploadMutationResult<\n TMutation extends FormDataUploadMutationLike,\n TFields extends TAdditionalFields = TAdditionalFields,\n> = TMutation & {\n uploadFile: (\n params: FormDataUploadParams<TFields>,\n options?: FormDataUploadMutateOptions<TMutation>,\n ) => void;\n};\n\nconst createDefaultVariables = <TMutation extends FormDataUploadMutationLike>({\n formData,\n}: FormDataUploadMutationVariablesArgs) => {\n return formData as FormDataUploadMutationVariables<TMutation>;\n};\n\n/**\n * FormData 업로드 mutation 어댑터 훅\n * @param props mutation 객체 및 변수 생성기\n */\nexport const useFormDataUploadMutation = <\n TMutation extends FormDataUploadMutationLike,\n TFields extends TAdditionalFields = TAdditionalFields,\n>(\n props: UseFormDataUploadMutationProps<TMutation, TFields>,\n): UseFormDataUploadMutationResult<TMutation, TFields> => {\n const { mutation, createVariables, fileNameFieldName } = props;\n\n const uploadFile = useCallback(\n (\n params: FormDataUploadParams<TFields>,\n options?: FormDataUploadMutateOptions<TMutation>,\n ) => {\n const body = normalizeFormDataUploadParams(params, { fileNameFieldName });\n const formData = createFormDataBody(body);\n const variablesArgs: FormDataUploadMutationVariablesArgs<TFields> = {\n body,\n formData,\n bodySerializer: createFormDataBody,\n };\n const nextVariables =\n createVariables?.(variablesArgs) ?? createDefaultVariables<TMutation>(variablesArgs);\n\n mutation.mutate(nextVariables, options);\n },\n [createVariables, fileNameFieldName, mutation],\n );\n\n return {\n ...mutation,\n uploadFile,\n };\n};\n"],"names":["createDefaultVariables","__name","formData","useFormDataUploadMutation","props","mutation","createVariables","fileNameFieldName","uploadFile","useCallback","params","options","body","normalizeFormDataUploadParams","createFormDataBody","variablesArgs","nextVariables"],"mappings":";;;;AAmEA,MAAMA,IAAyB,gBAAAC,EAAA,CAA+C;AAAA,EAC5E,UAAAC;AACF,MACSA,GAHsB,2BAUlBC,IAA4B,gBAAAF,EAAA,CAIvCG,MACwD;AACxD,QAAM,EAAE,UAAAC,GAAU,iBAAAC,GAAiB,mBAAAC,EAAA,IAAsBH,GAEnDI,IAAaC;AAAA,IACjB,CACEC,GACAC,MACG;AACH,YAAMC,IAAOC,EAA8BH,GAAQ,EAAE,mBAAAH,GAAmB,GAClEL,IAAWY,EAAmBF,CAAI,GAClCG,IAA8D;AAAA,QAClE,MAAAH;AAAA,QACA,UAAAV;AAAA,QACA,gBAAgBY;AAAA,MAAA,GAEZE,KACJV,KAAA,gBAAAA,EAAkBS,OAAkBf,EAAkCe,CAAa;AAErF,MAAAV,EAAS,OAAOW,GAAeL,CAAO;AAAA,IACxC;AAAA,IACA,CAACL,GAAiBC,GAAmBF,CAAQ;AAAA,EAAA;AAG/C,SAAO;AAAA,IACL,GAAGA;AAAA,IACH,YAAAG;AAAA,EAAA;AAEJ,GAhCyC;"}
|
package/dist/hooks.js
CHANGED
|
@@ -1,85 +1,87 @@
|
|
|
1
1
|
import { useGetCommonCodeList as t, useSetCommonCodeList as o } from "./hooks/useCommonCodeList.js";
|
|
2
2
|
import { useAccessTokenGuard as u } from "./hooks/useAccessTokenGuard.js";
|
|
3
3
|
import { useConfirm as n } from "./hooks/useConfirm.js";
|
|
4
|
-
import { useGetCurrentLanguage as
|
|
4
|
+
import { useGetCurrentLanguage as p, useGetLanguageList as f, useSetCurrentLanguage as i } from "./hooks/useCurrentLanguage.js";
|
|
5
5
|
import { useGetLogoSrc as C, useSetLogoSrc as S } from "./hooks/useLogoSrc.js";
|
|
6
6
|
import { useGetCurrentUser as g, useSetCurrentUser as L } from "./hooks/useCurrentUser.js";
|
|
7
|
-
import { useGetCurrentUserId as
|
|
8
|
-
import { useEnsureCurrentUserSeq as h, useGetCurrentUserSeq as l, useSetCurrentUserSeq as
|
|
7
|
+
import { useGetCurrentUserId as c, useSetCurrentUserId as T } from "./hooks/useCurrentUserId.js";
|
|
8
|
+
import { useEnsureCurrentUserSeq as h, useGetCurrentUserSeq as l, useSetCurrentUserSeq as U } from "./hooks/useCurrentUserSeq.js";
|
|
9
9
|
import { useDebounce as b } from "./hooks/useDebounce.js";
|
|
10
|
-
import { useDeepCompareEffect as
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
10
|
+
import { useDeepCompareEffect as D, useDeepCompareEffectNoCheck as N, useDeepCompareMemoize as I } from "./hooks/useDeepCompareEffect.js";
|
|
11
|
+
import { useFormDataUploadMutation as M } from "./hooks/useFormDataUploadMutation.js";
|
|
12
|
+
import { useHeaderWrapState as w } from "./hooks/useHeaderWrapState.js";
|
|
13
|
+
import { useInitApp as O } from "./hooks/useInitApp.js";
|
|
14
|
+
import { useInitCommonCodes as y } from "./hooks/useInitCommonCodes.js";
|
|
15
|
+
import { useGetNavbar as z, useNavbarActions as B } from "./hooks/useNavbar.js";
|
|
16
|
+
import { useGetNavigationList as K, useSetNavigationList as Q } from "./hooks/useNavigation.js";
|
|
17
|
+
import { useChangeOwpTheme as W, useGetCurrentLayoutConfig as j, useGetCurrentSettings as J, useGetCustomScrollbarsEnabled as V, useGetDefaultSettings as X, useGetFooterTheme as Y, useGetMainTheme as Z, useGetNavbarTheme as $, useGetOwpSettings as ee, useGetToolbarTheme as re, useResetSettings as te, useSetDefaultSettings as oe, useSetSettings as se } from "./hooks/useOwpSettings.js";
|
|
18
|
+
import { useOwpTranslation as me } from "./hooks/useOwpTranslation.js";
|
|
19
|
+
import { useGetPageLockLoading as ae, usePageLockLoading as pe } from "./hooks/usePageLockLoading.js";
|
|
20
|
+
import { usePrevious as ie } from "./hooks/usePrevious.js";
|
|
21
|
+
import { useGetShortcuts as Ce, useSetShortcuts as Se } from "./hooks/useShortcuts.js";
|
|
22
|
+
import { getEnv as ge, setEnv as Le, useStorage as de } from "./hooks/useStorage.js";
|
|
23
|
+
import { useThemeMediaQuery as Te } from "./hooks/useThemeMediaQuery.js";
|
|
24
|
+
import { useTimeout as he } from "./hooks/useTimeout.js";
|
|
25
|
+
import { useTreeGridCommonCodeEnums as Ue } from "./hooks/useTreeGridCommonCodeEnums.js";
|
|
26
|
+
import { useTreeGridEnums as be } from "./hooks/useTreeGridEnums.js";
|
|
27
|
+
import { useTreeGridExcelExport as De } from "./hooks/useTreeGridExcelExport.js";
|
|
28
|
+
import { FALLBACK_LANGUAGE_LIST as Ie } from "./constants/language.js";
|
|
28
29
|
export {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
Ie as FALLBACK_LANGUAGE_LIST,
|
|
31
|
+
ge as getEnv,
|
|
32
|
+
Le as setEnv,
|
|
32
33
|
u as useAccessTokenGuard,
|
|
33
|
-
|
|
34
|
+
W as useChangeOwpTheme,
|
|
34
35
|
n as useConfirm,
|
|
35
36
|
b as useDebounce,
|
|
36
|
-
|
|
37
|
-
|
|
37
|
+
D as useDeepCompareEffect,
|
|
38
|
+
N as useDeepCompareEffectNoCheck,
|
|
38
39
|
I as useDeepCompareMemoize,
|
|
39
40
|
h as useEnsureCurrentUserSeq,
|
|
41
|
+
M as useFormDataUploadMutation,
|
|
40
42
|
t as useGetCommonCodeList,
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
43
|
+
p as useGetCurrentLanguage,
|
|
44
|
+
j as useGetCurrentLayoutConfig,
|
|
45
|
+
J as useGetCurrentSettings,
|
|
44
46
|
g as useGetCurrentUser,
|
|
45
|
-
|
|
47
|
+
c as useGetCurrentUserId,
|
|
46
48
|
l as useGetCurrentUserSeq,
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
49
|
+
V as useGetCustomScrollbarsEnabled,
|
|
50
|
+
X as useGetDefaultSettings,
|
|
51
|
+
Y as useGetFooterTheme,
|
|
50
52
|
f as useGetLanguageList,
|
|
51
53
|
C as useGetLogoSrc,
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
54
|
+
Z as useGetMainTheme,
|
|
55
|
+
z as useGetNavbar,
|
|
56
|
+
$ as useGetNavbarTheme,
|
|
57
|
+
K as useGetNavigationList,
|
|
58
|
+
ee as useGetOwpSettings,
|
|
59
|
+
ae as useGetPageLockLoading,
|
|
60
|
+
Ce as useGetShortcuts,
|
|
61
|
+
re as useGetToolbarTheme,
|
|
62
|
+
w as useHeaderWrapState,
|
|
63
|
+
O as useInitApp,
|
|
64
|
+
y as useInitCommonCodes,
|
|
65
|
+
B as useNavbarActions,
|
|
66
|
+
me as useOwpTranslation,
|
|
67
|
+
pe as usePageLockLoading,
|
|
68
|
+
ie as usePrevious,
|
|
69
|
+
te as useResetSettings,
|
|
68
70
|
o as useSetCommonCodeList,
|
|
69
71
|
i as useSetCurrentLanguage,
|
|
70
72
|
L as useSetCurrentUser,
|
|
71
73
|
T as useSetCurrentUserId,
|
|
72
|
-
|
|
73
|
-
|
|
74
|
+
U as useSetCurrentUserSeq,
|
|
75
|
+
oe as useSetDefaultSettings,
|
|
74
76
|
S as useSetLogoSrc,
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
77
|
+
Q as useSetNavigationList,
|
|
78
|
+
se as useSetSettings,
|
|
79
|
+
Se as useSetShortcuts,
|
|
80
|
+
de as useStorage,
|
|
81
|
+
Te as useThemeMediaQuery,
|
|
82
|
+
he as useTimeout,
|
|
83
|
+
Ue as useTreeGridCommonCodeEnums,
|
|
84
|
+
be as useTreeGridEnums,
|
|
85
|
+
De as useTreeGridExcelExport
|
|
84
86
|
};
|
|
85
87
|
//# sourceMappingURL=hooks.js.map
|
package/dist/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hooks.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/index.js
CHANGED
|
@@ -2,20 +2,20 @@ import { DialogsProvider as r } from "@toolpad/core/useDialogs";
|
|
|
2
2
|
import { themeLayouts as p } from "./layout/themeLayouts.js";
|
|
3
3
|
import { createInitialOwpSettings as a, defaultSettings as x, defaultThemeOptions as f, defaultThemes as O, extendThemeWithMixins as w, generateSettings as i, getDefaultLayout as l, getDefaultThemeSettings as n, getParsedQuerySettings as d, mustHaveThemeOptions as u } from "./configs/defaultConfig.js";
|
|
4
4
|
import { OwpAutoLogoutDialog as T } from "./components/OwpAutoLogoutDialog/OwpAutoLogoutDialog.js";
|
|
5
|
-
import { OwpBarcodeInputField as
|
|
5
|
+
import { OwpBarcodeInputField as s } from "./components/OwpBarcodeInput/OwpBarcodeInputField.js";
|
|
6
6
|
import { OwpExportDataToExcelButton as P } from "./components/OwpExportExcelButton/OwpExportExcelButton.js";
|
|
7
|
-
import {
|
|
7
|
+
import { OwpFilePickerButton as C } from "./components/OwpFilePickerButton/OwpFilePickerButton.js";
|
|
8
8
|
import { OwpMoreActionsButton as D } from "./components/OwpMoreActionsButton/OwpMoreActionsButton.js";
|
|
9
|
-
import { OwpDatePicker as
|
|
10
|
-
import { OwpDateRangePicker as
|
|
9
|
+
import { OwpDatePicker as y } from "./components/OwpPicker/OwpDatePicker.js";
|
|
10
|
+
import { OwpDateRangePicker as E } from "./components/OwpPicker/OwpDateRangePicker.js";
|
|
11
11
|
import { OwpTimePicker as F } from "./components/OwpPicker/OwpTimePicker.js";
|
|
12
12
|
import { OwpWeekDatePicker as R } from "./components/OwpPicker/OwpWeekDatePicker.js";
|
|
13
13
|
import { OwpYearRangePicker as I } from "./components/OwpPicker/OwpYearRangePicker.js";
|
|
14
14
|
import { OwpDataTable as H } from "./components/OwpTable/OwpDataTable.js";
|
|
15
15
|
import { OwpTable as N, OwpTableTotalCount as Q, StyledTable as W, StyledTableRow as Y } from "./components/OwpTable/OwpTable.js";
|
|
16
|
-
import { OwpFieldTable as
|
|
17
|
-
import { OwpTextMaskField as
|
|
18
|
-
import { OwpTreeGridToolbar as
|
|
16
|
+
import { OwpFieldTable as Z } from "./components/OwpTable/OwpFieldTable.js";
|
|
17
|
+
import { OwpTextMaskField as z } from "./components/OwpTextField/OwpTextMaskField.js";
|
|
18
|
+
import { OwpTreeGridToolbar as K } from "./components/OwpTreeGrid/OwpTreeGridToolbar.js";
|
|
19
19
|
import { OwpZoomImageSlider as V } from "./components/OwpZoomImageSlider/OwpZoomImageSlider.js";
|
|
20
20
|
import { default as _ } from "./components/OwpPageBreadcrumb/OwpPageBreadcrumb.js";
|
|
21
21
|
import { OwpErrorBoundary as ee } from "./components/OwpErrorBoundary/OwpErrorBoundary.js";
|
|
@@ -26,26 +26,26 @@ import { CommonCodeSelector as fe, OwpCommonCodeSelector as Oe } from "./compone
|
|
|
26
26
|
import { CommonCodeRadioGroup as ie, OwpCommonCodeRadioGroup as le } from "./components/OwpCommonCode/OwpCommonCodeRadioGroup.js";
|
|
27
27
|
import { OwpErrorStatusPage as de } from "./components/OwpErrorStatusPage/OwpErrorStatusPage.js";
|
|
28
28
|
import { OwpFieldHelperText as ge } from "./components/OwpFieldHelperText/OwpFieldHelperText.js";
|
|
29
|
-
import { OwpLayout as
|
|
29
|
+
import { OwpLayout as ce } from "./components/OwpLayout/OwpLayout.js";
|
|
30
30
|
import { OwpLoading as Se } from "./components/OwpLoading/OwpLoading.js";
|
|
31
31
|
import { OwpMrtTable as be } from "./components/OwpMrtTable/OwpMrtTable.js";
|
|
32
32
|
import { OwpNumberField as he } from "./components/OwpNumberField/OwpNumberField.js";
|
|
33
|
-
import { OwpOptionSelector as
|
|
33
|
+
import { OwpOptionSelector as ke } from "./components/OwpOptionSelector/OwpOptionSelector.js";
|
|
34
34
|
import { OwpPageCarded as Be } from "./components/OwpPageCarded/OwpPageCarded.js";
|
|
35
|
-
import { OwpPageContent as
|
|
35
|
+
import { OwpPageContent as Le } from "./components/OwpPageContent/OwpPageContent.js";
|
|
36
36
|
import { OwpPageLockLoading as Ge } from "./components/OwpPageLockLoading/OwpPageLockLoading.js";
|
|
37
37
|
import { OwpPageTitle as ve } from "./components/OwpPageTitle/OwpPageTitle.js";
|
|
38
38
|
import { OwpQuerySelector as Me } from "./components/OwpQuerySelector/OwpQuerySelector.js";
|
|
39
39
|
import { OwpScrollbars as Ae } from "./components/OwpScrollbars/OwpScrollbars.js";
|
|
40
40
|
import { OwpSearchFilter as Qe } from "./components/OwpSearchFilter/OwpSearchFilter.js";
|
|
41
41
|
import { OwpSection as Ye } from "./components/OwpSection/OwpSection.js";
|
|
42
|
-
import { OwpStyleProvider as
|
|
43
|
-
import { OwpSuspense as
|
|
44
|
-
import { OwpSvgIcon as
|
|
42
|
+
import { OwpStyleProvider as Ze } from "./components/OwpStyleProvider/OwpStyleProvider.js";
|
|
43
|
+
import { OwpSuspense as ze } from "./components/OwpSuspense/OwpSuspense.js";
|
|
44
|
+
import { OwpSvgIcon as Ke } from "./components/OwpSvgIcon/OwpSvgIcon.js";
|
|
45
45
|
import { OwpRequiredHelperText as Ve } from "./components/OwpRequiredHelperText/OwpRequiredHelperText.js";
|
|
46
46
|
import { OwpTab as _e } from "./components/OwpTabs/OwpTab.js";
|
|
47
47
|
import { OwpTabs as eo } from "./components/OwpTabs/OwpTabs.js";
|
|
48
|
-
import {
|
|
48
|
+
import { OwpTreeGridExportExcelButton as ro } from "./components/OwpTreeGridExportExcelButton/OwpTreeGridExportExcelButton.js";
|
|
49
49
|
import { OwpTreeGridResetChangesButton as po } from "./components/OwpTreeGridResetChangesButton/OwpTreeGridResetChangesButton.js";
|
|
50
50
|
import { OwpTreeGrid as ao } from "./components/OwpTreeGrid/OwpTreeGrid.js";
|
|
51
51
|
import { TreeGrid as fo } from "./components/OwpTreeGrid/TreeGrid.js";
|
|
@@ -55,30 +55,30 @@ export {
|
|
|
55
55
|
fe as CommonCodeSelector,
|
|
56
56
|
r as DialogsProvider,
|
|
57
57
|
T as OwpAutoLogoutDialog,
|
|
58
|
-
|
|
58
|
+
s as OwpBarcodeInputField,
|
|
59
59
|
le as OwpCommonCodeRadioGroup,
|
|
60
60
|
Oe as OwpCommonCodeSelector,
|
|
61
61
|
H as OwpDataTable,
|
|
62
|
-
|
|
63
|
-
|
|
62
|
+
y as OwpDatePicker,
|
|
63
|
+
E as OwpDateRangePicker,
|
|
64
64
|
ae as OwpDialog,
|
|
65
65
|
ee as OwpErrorBoundary,
|
|
66
66
|
de as OwpErrorStatusPage,
|
|
67
67
|
re as OwpEventEmitter,
|
|
68
68
|
P as OwpExportDataToExcelButton,
|
|
69
69
|
ge as OwpFieldHelperText,
|
|
70
|
-
|
|
71
|
-
C as
|
|
70
|
+
Z as OwpFieldTable,
|
|
71
|
+
C as OwpFilePickerButton,
|
|
72
72
|
pe as OwpLanguageSwitcherSelect,
|
|
73
|
-
|
|
73
|
+
ce as OwpLayout,
|
|
74
74
|
Se as OwpLoading,
|
|
75
75
|
D as OwpMoreActionsButton,
|
|
76
76
|
be as OwpMrtTable,
|
|
77
77
|
he as OwpNumberField,
|
|
78
|
-
|
|
78
|
+
ke as OwpOptionSelector,
|
|
79
79
|
_ as OwpPageBreadcrumb,
|
|
80
80
|
Be as OwpPageCarded,
|
|
81
|
-
|
|
81
|
+
Le as OwpPageContent,
|
|
82
82
|
Ge as OwpPageLockLoading,
|
|
83
83
|
ve as OwpPageTitle,
|
|
84
84
|
Me as OwpQuerySelector,
|
|
@@ -86,19 +86,19 @@ export {
|
|
|
86
86
|
Ae as OwpScrollbars,
|
|
87
87
|
Qe as OwpSearchFilter,
|
|
88
88
|
Ye as OwpSection,
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
89
|
+
Ze as OwpStyleProvider,
|
|
90
|
+
ze as OwpSuspense,
|
|
91
|
+
Ke as OwpSvgIcon,
|
|
92
92
|
_e as OwpTab,
|
|
93
93
|
N as OwpTable,
|
|
94
94
|
Q as OwpTableTotalCount,
|
|
95
95
|
eo as OwpTabs,
|
|
96
|
-
|
|
96
|
+
z as OwpTextMaskField,
|
|
97
97
|
F as OwpTimePicker,
|
|
98
98
|
ao as OwpTreeGrid,
|
|
99
|
-
ro as
|
|
99
|
+
ro as OwpTreeGridExportExcelButton,
|
|
100
100
|
po as OwpTreeGridResetChangesButton,
|
|
101
|
-
|
|
101
|
+
K as OwpTreeGridToolbar,
|
|
102
102
|
R as OwpWeekDatePicker,
|
|
103
103
|
I as OwpYearRangePicker,
|
|
104
104
|
wo as OwpYesNoSelector,
|