@owp/core 2.5.27 → 2.5.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/_virtual/index10.js +2 -2
  2. package/dist/_virtual/index12.js +2 -2
  3. package/dist/_virtual/index13.js +2 -2
  4. package/dist/_virtual/index14.js +2 -2
  5. package/dist/_virtual/index16.js +4 -4
  6. package/dist/_virtual/index17.js +4 -4
  7. package/dist/_virtual/index18.js +4 -4
  8. package/dist/_virtual/index19.js +4 -4
  9. package/dist/components/OwpMrtTable/OwpMrtTable.js +334 -287
  10. package/dist/components/OwpMrtTable/OwpMrtTable.js.map +1 -1
  11. package/dist/components/OwpTable/OwpDataTable.js +151 -156
  12. package/dist/components/OwpTable/OwpDataTable.js.map +1 -1
  13. package/dist/components/OwpTable/internal/OwpTableTotalCount.js +23 -16
  14. package/dist/components/OwpTable/internal/OwpTableTotalCount.js.map +1 -1
  15. package/dist/components/OwpTable/internal/treeGridTableStyle.js +29 -28
  16. package/dist/components/OwpTable/internal/treeGridTableStyle.js.map +1 -1
  17. package/dist/components/OwpTable/utils/tableSx.js +11 -10
  18. package/dist/components/OwpTable/utils/tableSx.js.map +1 -1
  19. package/dist/components/OwpTreeGrid/OwpTreeGrid.js +297 -265
  20. package/dist/components/OwpTreeGrid/OwpTreeGrid.js.map +1 -1
  21. package/dist/components/OwpTreeGrid/internal/hooks/useOwpTreeGridDatePickerEditor.js +310 -291
  22. package/dist/components/OwpTreeGrid/internal/hooks/useOwpTreeGridDatePickerEditor.js.map +1 -1
  23. package/dist/components/OwpTreeGrid/internal/treeGridRuntime.js +986 -485
  24. package/dist/components/OwpTreeGrid/internal/treeGridRuntime.js.map +1 -1
  25. package/dist/components/OwpTreeGrid/internal/treeGridTheme.js +360 -224
  26. package/dist/components/OwpTreeGrid/internal/treeGridTheme.js.map +1 -1
  27. package/dist/features/themePreview/defs/ThemePreviewGridDef.xml.js +1 -1
  28. package/dist/features/themePreview/defs/ThemePreviewGridDef.xml.js.map +1 -1
  29. package/dist/features/themePreview/defs/ThemePreviewReadonlyGridDef.xml.js +1 -1
  30. package/dist/features/themePreview/defs/ThemePreviewReadonlyGridDef.xml.js.map +1 -1
  31. package/dist/layout/components/toggles/NavigationSearchToggle.js +3 -3
  32. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE128/constants.js +1 -1
  33. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE128/index.js +1 -1
  34. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE39/index.js +1 -1
  35. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/CODE93/index.js +1 -1
  36. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/EAN_UPC/constants.js +1 -1
  37. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/EAN_UPC/index.js +1 -1
  38. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/GenericBarcode/index.js +1 -1
  39. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/ITF/index.js +1 -1
  40. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/MSI/index.js +1 -1
  41. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/codabar/index.js +1 -1
  42. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/barcodes/pharmacode/index.js +1 -1
  43. package/dist/node_modules/.pnpm/jsbarcode@3.12.1/node_modules/jsbarcode/bin/renderers/index.js +1 -1
  44. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js +1 -1
  45. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.js +1 -1
  46. 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
  47. package/dist/types/components/OwpTable/internal/OwpTableTotalCount.d.ts +11 -4
  48. package/dist/types/components/OwpTable/internal/treeGridTableStyle.d.ts +5 -0
  49. package/dist/types/components/OwpTable/utils/tableSx.d.ts +15 -0
  50. package/dist/types/components/OwpTreeGrid/OwpTreeGrid.d.ts +11 -1
  51. package/dist/types/components/OwpTreeGrid/internal/hooks/useOwpTreeGridDatePickerEditor.d.ts +5 -2
  52. package/dist/types/components/OwpTreeGrid/internal/treeGridRuntime.d.ts +14 -4
  53. package/dist/types/components/OwpTreeGrid/internal/treeGridTheme.d.ts +1 -0
  54. package/dist/types/utils/treeGridUtil.d.ts +4 -0
  55. package/dist/utils/treeGridUtil.js +154 -145
  56. package/dist/utils/treeGridUtil.js.map +1 -1
  57. package/package.json +1 -1
  58. package/treegrid/TextKR.xml +1 -1
@@ -1,6 +1,6 @@
1
1
  var c = Object.defineProperty;
2
2
  var a = (r, e) => c(r, "name", { value: e, configurable: !0 });
3
- import n from "../../../../../../_virtual/index16.js";
3
+ import n from "../../../../../../_virtual/index19.js";
4
4
  import m from "react-dom";
5
5
  import t from "react";
6
6
  import u from "./useWaitForDOMRef.js";
@@ -1,9 +1,16 @@
1
+ import type { SxProps, Theme } from '@mui/material/styles';
2
+ interface OwpTableTotalCountProps {
3
+ borderColor?: string;
4
+ dividerSx?: SxProps<Theme>;
5
+ totalCount?: number;
6
+ typographySx?: SxProps<Theme>;
7
+ }
1
8
  /**
2
9
  * 총 row 수 표시 영역
3
10
  * @param borderColor 경계선 색상
11
+ * @param dividerSx 구분선 sx
4
12
  * @param totalCount 전체 row 수
13
+ * @param typographySx 문구 sx
5
14
  */
6
- export declare function OwpTableTotalCount({ borderColor, totalCount, }: {
7
- borderColor?: string;
8
- totalCount?: number;
9
- }): import("react/jsx-runtime").JSX.Element;
15
+ export declare function OwpTableTotalCount({ borderColor, dividerSx, totalCount, typographySx, }: OwpTableTotalCountProps): import("react/jsx-runtime").JSX.Element;
16
+ export {};
@@ -76,6 +76,11 @@ export declare const getTreeGridBodyCellSx: (treeGridTheme: OwpResolvedGridTheme
76
76
  fontWeight: string | number;
77
77
  lineHeight: string;
78
78
  };
79
+ /**
80
+ * TreeGrid 선택 셀 배경색
81
+ * @param treeGridTheme Grid theme 값
82
+ */
83
+ export declare const getTreeGridSelectedCellBackgroundColor: (treeGridTheme: OwpResolvedGridThemeConfigType) => string;
79
84
  /**
80
85
  * TreeGrid body row 상태 스타일 매핑
81
86
  * @param treeGridTheme Grid theme 값
@@ -9,6 +9,21 @@ export declare const mergeSx: (...styles: Array<SxProps<Theme> | undefined | fal
9
9
  * @param value radius 값
10
10
  */
11
11
  export declare const toTableRadiusCssValue: (value: number | string) => string;
12
+ /**
13
+ * table row helper text 콘텐츠 높이 보정 sx
14
+ * @param contentSelector 셀 콘텐츠 selector
15
+ */
16
+ export declare const getTableHelperTextContentSx: (contentSelector: string) => {
17
+ readonly [x: string]: {
18
+ readonly content: "\"\"";
19
+ readonly display: "block";
20
+ readonly height: "calc(0.75rem * 1.66 + 3px)";
21
+ } | {
22
+ readonly display: "none";
23
+ readonly content?: undefined;
24
+ readonly height?: undefined;
25
+ };
26
+ };
12
27
  /**
13
28
  * table row helper text 높이 보정 sx
14
29
  * @param contentClassName 셀 콘텐츠 className
@@ -15,6 +15,8 @@ export type OwpTreeGridData<T> = OwpTreeGridBodyData<T>;
15
15
  export type TData<T> = OwpTreeGridBodyData<T>;
16
16
  export type OwpTreeGridRowModel<T> = TRow & T;
17
17
  export type OwpTreeGridSelectedRows<T> = OwpTreeGridRowModel<T>[];
18
+ export type OwpTreeGridSuppressCfg = 0 | 1 | 2 | 3 | 4;
19
+ export type OwpTreeGridDisabledAnimation = 'addRow' | 'deleteRow' | 'selectRow';
18
20
  export interface OwpTreeGridDatePickerEditorColumnOption {
19
21
  baseYear?: string;
20
22
  baseYearMonth?: string;
@@ -45,6 +47,7 @@ export interface OwpTreeGridProps<T> {
45
47
  toolbarRowBackgroundColor?: CSSProperties['backgroundColor'];
46
48
  layoutUrl?: string;
47
49
  layoutData?: string;
50
+ disabledAnimations?: readonly OwpTreeGridDisabledAnimation[];
48
51
  dataUrl?: string;
49
52
  layoutOverrides?: OwpTreeGridLayoutConfig;
50
53
  data?: OwpTreeGridBodyData<T>;
@@ -53,6 +56,9 @@ export interface OwpTreeGridProps<T> {
53
56
  width?: string | number;
54
57
  canUseTableRadius?: boolean;
55
58
  tableBorderRadius?: string | number;
59
+ suppressCfg?: OwpTreeGridSuppressCfg;
60
+ showToolbarTotalCount?: boolean;
61
+ hideChildHeaderSortButtons?: boolean;
56
62
  useDataUrl?: boolean;
57
63
  onSelect?: OwpTreeGridSelectHandler<T>;
58
64
  onRowAdd?: OwpTreeGridRowAddHandler<T>;
@@ -83,6 +89,10 @@ export interface OwpTreeGridProps<T> {
83
89
  * @param height height 값
84
90
  * @param canUseTableRadius TreeGrid 내부 테이블 radius 사용 여부
85
91
  * @param tableBorderRadius TreeGrid 내부 테이블 radius 값
92
+ * @param suppressCfg TreeGrid client 설정 저장/로드 억제값
93
+ * @param showToolbarTotalCount Toolbar 전체 건수 기본 formula 표시 여부
94
+ * @param hideChildHeaderSortButtons 그룹 헤더 하위 sort 버튼 숨김 여부
95
+ * @param disabledAnimations 비활성화할 TreeGrid 애니메이션 의미 키 목록
86
96
  */
87
- declare const OwpTreeGrid: <T>({ id, containerStyle, containerClassName, toolbarRowBackgroundColor, className, style, height, width, canUseTableRadius, tableBorderRadius, layoutUrl, layoutData, dataUrl, layoutOverrides, data, useDataUrl, onSelect, onRowClick, onRowAdd, onRowDelete, onRowUndelete, onRowChange, onClickButton, onSave, onReady, onAfterValueChanged, datePickerEditor, highlightEditableCells, highlightChangedCells, syncDeletedRowCanEdit, confirmDeletedRowRemoval, loading, showLoading, }: OwpTreeGridProps<T>) => import("react/jsx-runtime").JSX.Element;
97
+ declare const OwpTreeGrid: <T>({ id, containerStyle, containerClassName, toolbarRowBackgroundColor, className, style, height, width, canUseTableRadius, tableBorderRadius, suppressCfg, showToolbarTotalCount, hideChildHeaderSortButtons, layoutUrl, layoutData, disabledAnimations, dataUrl, layoutOverrides, data, useDataUrl, onSelect, onRowClick, onRowAdd, onRowDelete, onRowUndelete, onRowChange, onClickButton, onSave, onReady, onAfterValueChanged, datePickerEditor, highlightEditableCells, highlightChangedCells, syncDeletedRowCanEdit, confirmDeletedRowRemoval, loading, showLoading, }: OwpTreeGridProps<T>) => import("react/jsx-runtime").JSX.Element;
88
98
  export { OwpTreeGrid };
@@ -1,17 +1,20 @@
1
1
  import { type RefObject } from 'react';
2
2
  import type { OwpTreeGridDatePickerEditorConfig, OwpTreeGridRowModel } from '../../OwpTreeGrid';
3
+ type OwpTreeGridDatePickerEditorValueChangeOptions = {
4
+ highlightRefresh?: boolean;
5
+ };
3
6
  interface UseOwpTreeGridDatePickerEditorParams<T> {
4
7
  config?: OwpTreeGridDatePickerEditorConfig;
5
8
  treeGridInstanceRef: RefObject<TGrid>;
6
9
  isTreeGridReady: boolean;
7
- onValueChange?: (grid: TGrid, row: OwpTreeGridRowModel<T>, col: string, value: string) => void;
10
+ onValueChange?: (grid: TGrid, row: OwpTreeGridRowModel<T>, col: string, value: string, options?: OwpTreeGridDatePickerEditorValueChangeOptions) => void;
8
11
  }
9
12
  /** OwpTreeGrid Date 셀 React DatePicker editor */
10
13
  export declare const useOwpTreeGridDatePickerEditor: <T>({ config, treeGridInstanceRef, isTreeGridReady, onValueChange, }: UseOwpTreeGridDatePickerEditorParams<T>) => {
11
14
  datePickerEditorElement: import("react/jsx-runtime").JSX.Element;
12
15
  handleDatePickerEditorButtonClick: (grid: TGrid, row: OwpTreeGridRowModel<T>, col: string, event: Event) => 1;
13
16
  handleDatePickerEditorCellClick: (grid: TGrid, row: OwpTreeGridRowModel<T>, col: string, _x: number, _y: number, event: Event) => 1;
14
- handleDatePickerEditorKeyDown: (grid: TGrid, key: string, event: Event) => 1;
17
+ handleDatePickerEditorKeyDown: (grid: TGrid, key: string, event: Event, name?: string) => 1;
15
18
  handleDatePickerEditorStartEdit: (grid: TGrid, row: OwpTreeGridRowModel<T>, col: string) => true;
16
19
  };
17
20
  export {};
@@ -1,10 +1,13 @@
1
1
  import { type Dispatch, type RefObject, type SetStateAction } from 'react';
2
- import type { OwpTreeGridBodyData, OwpTreeGridLayoutConfig, OwpTreeGridProps, OwpTreeGridRowModel } from '../OwpTreeGrid';
2
+ import type { OwpTreeGridBodyData, OwpTreeGridDisabledAnimation, OwpTreeGridLayoutConfig, OwpTreeGridProps, OwpTreeGridRowModel, OwpTreeGridSuppressCfg } from '../OwpTreeGrid';
3
3
  export declare const TREE_GRID_BINDING_LOADING_MIN_VISIBLE_MS = 300;
4
4
  type TreeGridInitializationInput<T> = {
5
5
  id: string;
6
6
  layoutUrl?: string;
7
7
  layoutData?: string;
8
+ toolbarTotalCountFormula?: string;
9
+ suppressCfg?: OwpTreeGridSuppressCfg;
10
+ disabledAnimations?: readonly OwpTreeGridDisabledAnimation[];
8
11
  dataUrl?: string;
9
12
  bodyData: OwpTreeGridBodyData<T>;
10
13
  useDataUrl?: boolean;
@@ -33,12 +36,17 @@ export type TreeGridEventBindingOptions<T> = Pick<OwpTreeGridProps<T>, 'id'> & {
33
36
  syncDeletedRowCanEditRef: RefObject<boolean>;
34
37
  editableCellBackgroundColorValueRef: RefObject<number | undefined>;
35
38
  changedCellBackgroundColorRef: RefObject<string>;
39
+ focusedCellBackgroundColorRef: RefObject<string>;
36
40
  selectedCellBackgroundColorRef: RefObject<string>;
37
41
  hoverCellBackgroundColorRef: RefObject<string>;
38
42
  changedCellBaselineRef: RefObject<TreeGridCellBaselineMap>;
39
43
  treeGridInstanceRef: RefObject<TGrid>;
40
44
  treeGridInitStartedAtRef: RefObject<number | null>;
41
45
  latestLayoutOverridesRef: RefObject<OwpTreeGridLayoutConfig | undefined>;
46
+ latestToolbarTotalCountFormulaRef: RefObject<string | undefined>;
47
+ latestSuppressCfgRef: RefObject<OwpTreeGridSuppressCfg | undefined>;
48
+ latestHideChildHeaderSortButtonsRef: RefObject<boolean>;
49
+ latestDisabledAnimationsRef: RefObject<readonly OwpTreeGridDisabledAnimation[] | undefined>;
42
50
  appliedLayoutOverridesRef: RefObject<OwpTreeGridLayoutConfig | undefined>;
43
51
  appliedBodyDataPropRef: RefObject<OwpTreeGridBodyData<T>>;
44
52
  hasAppliedInitialLayoutRef: RefObject<boolean>;
@@ -55,7 +63,7 @@ export declare const hasTreeGridExplicitEnterMode: (layoutData?: string) => bool
55
63
  * TreeGrid 초기화 옵션 생성
56
64
  * @param input 초기화 입력값
57
65
  */
58
- export declare const buildTreeGridInitializationOptions: <T>({ id, layoutUrl, layoutData, dataUrl, bodyData, useDataUrl, width, height, languageId, }: TreeGridInitializationInput<T>) => {
66
+ export declare const buildTreeGridInitializationOptions: <T>({ id, layoutUrl, layoutData, toolbarTotalCountFormula, suppressCfg, disabledAnimations, dataUrl, bodyData, useDataUrl, width, height, languageId, }: TreeGridInitializationInput<T>) => {
59
67
  id: string;
60
68
  Layout: {
61
69
  Data: string;
@@ -99,14 +107,16 @@ export declare const captureTreeGridChangeBaselines: (grid: TGrid | null | undef
99
107
  * @param col 대상 컬럼
100
108
  * @param backgroundColor 변경 하이라이트 배경색
101
109
  * @param baselineMap 셀 기준값 저장소
110
+ * @param highlightRefresh 하이라이트 적용 후 셀 refresh 여부
102
111
  */
103
- export declare const syncTreeGridChangedCellHighlight: ({ gridId, grid, row, col, backgroundColor, baselineMap, }: {
112
+ export declare const syncTreeGridChangedCellHighlight: ({ gridId, grid, row, col, backgroundColor, baselineMap, highlightRefresh, }: {
104
113
  gridId: string;
105
114
  grid: TGrid;
106
115
  row: TRow;
107
116
  col: string;
108
117
  backgroundColor: string;
109
118
  baselineMap: TreeGridCellBaselineMap;
119
+ highlightRefresh?: boolean;
110
120
  }) => void;
111
121
  /**
112
122
  * TreeGrid 표시 데이터 행 존재 여부
@@ -124,5 +134,5 @@ export declare const replaceTreeGridBodyData: <T>(grid: TGrid, bodyData: OwpTree
124
134
  * TreeGrid 이벤트 바인딩
125
135
  * @param options 이벤트 바인딩 옵션
126
136
  */
127
- export declare const bindTreeGridEvents: <T>({ id, latestEventHandlersRef, layoutHasExplicitEnterModeRef, highlightEditableCellsRef, highlightChangedCellsRef, syncDeletedRowCanEditRef, editableCellBackgroundColorValueRef, changedCellBackgroundColorRef, selectedCellBackgroundColorRef, hoverCellBackgroundColorRef, changedCellBaselineRef, treeGridInstanceRef, treeGridInitStartedAtRef, latestLayoutOverridesRef, appliedLayoutOverridesRef, appliedBodyDataPropRef, hasAppliedInitialLayoutRef, syncHasDisplayDataRows, setIsTreeGridReady, }: TreeGridEventBindingOptions<T>) => void;
137
+ export declare const bindTreeGridEvents: <T>({ id, latestEventHandlersRef, layoutHasExplicitEnterModeRef, highlightEditableCellsRef, highlightChangedCellsRef, syncDeletedRowCanEditRef, editableCellBackgroundColorValueRef, changedCellBackgroundColorRef, focusedCellBackgroundColorRef, selectedCellBackgroundColorRef, hoverCellBackgroundColorRef, changedCellBaselineRef, treeGridInstanceRef, treeGridInitStartedAtRef, latestLayoutOverridesRef, latestToolbarTotalCountFormulaRef, latestSuppressCfgRef, latestHideChildHeaderSortButtonsRef, latestDisabledAnimationsRef, appliedLayoutOverridesRef, appliedBodyDataPropRef, hasAppliedInitialLayoutRef, syncHasDisplayDataRows, setIsTreeGridReady, }: TreeGridEventBindingOptions<T>) => void;
128
138
  export {};
@@ -10,6 +10,7 @@ export declare const TREE_GRID_PANEL_CHECKBOX_SELECT_CLASS = "owp-tree-grid-pane
10
10
  export declare const TREE_GRID_SELECT_ALL_CHECKED_CLASS = "owp-tree-grid-select-all-checked";
11
11
  export declare const TREE_GRID_SELECT_ALL_INDETERMINATE_CLASS = "owp-tree-grid-select-all-indeterminate";
12
12
  export declare const TREE_GRID_SELECT_ALL_UNCHECKED_CLASS = "owp-tree-grid-select-all-unchecked";
13
+ export declare const TREE_GRID_SELECTED_CHANGED_CELL_CLASS = "owp-tree-grid-selected-changed-cell";
13
14
  export declare const treeGridThemeStyles: Record<string, CSSProperties>;
14
15
  /**
15
16
  * TreeGrid theme CSS 변수 컨테이너 스타일 생성
@@ -7,6 +7,7 @@ type TreeGridAddRowOptions<T> = {
7
7
  parent?: TRow & T;
8
8
  anchorRow?: TRow & T;
9
9
  initialValues?: T;
10
+ editableColumns?: readonly string[];
10
11
  };
11
12
  type TreeGridColumnVisibilityOptions = {
12
13
  targetKey: string;
@@ -16,6 +17,7 @@ type TreeGridHighlightTargetOption = {
16
17
  row: TRow;
17
18
  col: string;
18
19
  backgroundColor?: string;
20
+ refresh?: boolean;
19
21
  };
20
22
  /**
21
23
  * addTreeGridRowById 생성 행 여부
@@ -82,6 +84,7 @@ export declare const reloadTreeGridBodyById: (gridId: string, rows: unknown) =>
82
84
  * @param options.anchorRow above/below용 기준 행
83
85
  * @param options.insertPosition 행 삽입 위치
84
86
  * @param options.initialValues 신규 행 초기값
87
+ * @param options.editableColumns 신규 행 셀 단위 편집 가능 컬럼
85
88
  */
86
89
  export declare const addTreeGridRowById: <T>(gridId: string, options?: TreeGridAddRowOptions<T>) => void;
87
90
  /**
@@ -115,6 +118,7 @@ export declare const setTreeGridColumnVisibilityById: (gridId: string, options:
115
118
  * @param gridId TreeGrid 인스턴스 ID
116
119
  * @param targetOption.row 강조할 대상 행
117
120
  * @param targetOption.col 강조할 대상 컬럼
121
+ * @param targetOption.refresh 강조 적용 후 셀 refresh 여부
118
122
  */
119
123
  export declare const highlightTreeGridCellById: (gridId: string, targetOption: TreeGridHighlightTargetOption) => void;
120
124
  /**