pds-dev-kit-web 1.9.25 → 1.9.26

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.
@@ -54,14 +54,24 @@ var TextLabel_1 = require("../TextLabel");
54
54
  var BulkActionBar_1 = __importDefault(require("./BulkActionBar"));
55
55
  var HeaderRow_1 = __importDefault(require("./HeaderRow"));
56
56
  function AdminList(_a) {
57
- var _b = _a.selectionMode, selectionMode = _b === void 0 ? 'multi' : _b, _c = _a.headerRowMode, headerRowMode = _c === void 0 ? 'use' : _c, column2HeaderText = _a.column2HeaderText, column3HeaderText = _a.column3HeaderText, _d = _a.column3Width, column3Width = _d === void 0 ? 'small' : _d, column4HeaderText = _a.column4HeaderText, _e = _a.column4Width, column4Width = _e === void 0 ? 'small' : _e, column5HeaderText = _a.column5HeaderText, _f = _a.column5Width, column5Width = _f === void 0 ? 'small' : _f, column6HeaderText = _a.column6HeaderText, _g = _a.column6Width, column6Width = _g === void 0 ? 'small' : _g, column7HeaderText = _a.column7HeaderText, _h = _a.column7Width, column7Width = _h === void 0 ? 'small' : _h, column8HeaderText = _a.column8HeaderText, _j = _a.column8Width, column8Width = _j === void 0 ? 'small' : _j, column9HeaderText = _a.column9HeaderText, _k = _a.column9Width, column9Width = _k === void 0 ? 'small' : _k, column10HeaderText = _a.column10HeaderText, _l = _a.column10Width, column10Width = _l === void 0 ? 'small' : _l, _m = _a.dropdownMode, dropdownMode = _m === void 0 ? 'dropdown_amount1' : _m, dropdown1Value = _a.dropdown1Value, dropdown2Value = _a.dropdown2Value, dropdown3Value = _a.dropdown3Value, dropdown1DefaultText = _a.dropdown1DefaultText, dropdown2DefaultText = _a.dropdown2DefaultText, dropdown3DefaultText = _a.dropdown3DefaultText, dropdown1HintText = _a.dropdown1HintText, dropdown2HintText = _a.dropdown2HintText, dropdown3HintText = _a.dropdown3HintText, dropdown1ValueArray = _a.dropdown1ValueArray, dropdown2ValueArray = _a.dropdown2ValueArray, dropdown3ValueArray = _a.dropdown3ValueArray, _o = _a.quickActionBtnMode, quickActionBtnMode = _o === void 0 ? 'btn_amount2' : _o, quickActionBtn1Text = _a.quickActionBtn1Text, quickActionBtn2Text = _a.quickActionBtn2Text, quickActionBtn3Text = _a.quickActionBtn3Text, _p = _a.quickActionBtnType, quickActionBtnType = _p === void 0 ? 'fix' : _p, tBtnMode = _a.tBtnMode, tBtn1Text = _a.tBtn1Text, tBtn2Text = _a.tBtn2Text, tBtn3Text = _a.tBtn3Text, emptyText = _a.emptyText, _q = _a.scrollMode, scrollMode = _q === void 0 ? 'infinite' : _q, _r = _a.scrollVisibleType, scrollVisibleType = _r === void 0 ? 'moving' : _r, selectedIds = _a.selectedIds, maintainIds = _a.maintainIds, children = _a.children, _s = _a.headerRowCheckboxName, headerRowCheckboxName = _s === void 0 ? 'all' : _s, _t = _a.flexibleHideInfoMode, flexibleHideInfoMode = _t === void 0 ? 'use' : _t, onChangeDropdown1 = _a.onChangeDropdown1, onChangeDropdown2 = _a.onChangeDropdown2, onChangeDropdown3 = _a.onChangeDropdown3, onClickTBtn1 = _a.onClickTBtn1, onClickTBtn2 = _a.onClickTBtn2, onClickTBtn3 = _a.onClickTBtn3, onClickQuickActionBtn1 = _a.onClickQuickActionBtn1, onClickQuickActionBtn2 = _a.onClickQuickActionBtn2, onClickQuickActionBtn3 = _a.onClickQuickActionBtn3, onSelect = _a.onSelect, quickActionBtn1State = _a.quickActionBtn1State, quickActionBtn2State = _a.quickActionBtn2State, quickActionBtn3State = _a.quickActionBtn3State, _u = _a.mBtnMode, mBtnMode = _u === void 0 ? 'mbtn_amount1' : _u, mBtn1Text = _a.mBtn1Text, mBtn2Text = _a.mBtn2Text, mBtn3Text = _a.mBtn3Text, onClickMBtn1 = _a.onClickMBtn1, onClickMBtn2 = _a.onClickMBtn2, onClickMBtn3 = _a.onClickMBtn3;
57
+ var _b;
58
+ var _c = _a.selectionMode, selectionMode = _c === void 0 ? 'multi' : _c, _d = _a.headerRowMode, headerRowMode = _d === void 0 ? 'use' : _d, column2HeaderText = _a.column2HeaderText, column3HeaderText = _a.column3HeaderText, _e = _a.column3Width, column3Width = _e === void 0 ? 'small' : _e, column4HeaderText = _a.column4HeaderText, _f = _a.column4Width, column4Width = _f === void 0 ? 'small' : _f, column5HeaderText = _a.column5HeaderText, _g = _a.column5Width, column5Width = _g === void 0 ? 'small' : _g, column6HeaderText = _a.column6HeaderText, _h = _a.column6Width, column6Width = _h === void 0 ? 'small' : _h, column7HeaderText = _a.column7HeaderText, _j = _a.column7Width, column7Width = _j === void 0 ? 'small' : _j, column8HeaderText = _a.column8HeaderText, _k = _a.column8Width, column8Width = _k === void 0 ? 'small' : _k, column9HeaderText = _a.column9HeaderText, _l = _a.column9Width, column9Width = _l === void 0 ? 'small' : _l, column10HeaderText = _a.column10HeaderText, _m = _a.column10Width, column10Width = _m === void 0 ? 'small' : _m, _o = _a.dropdownMode, dropdownMode = _o === void 0 ? 'dropdown_amount1' : _o, dropdown1Value = _a.dropdown1Value, dropdown2Value = _a.dropdown2Value, dropdown3Value = _a.dropdown3Value, dropdown1DefaultText = _a.dropdown1DefaultText, dropdown2DefaultText = _a.dropdown2DefaultText, dropdown3DefaultText = _a.dropdown3DefaultText, dropdown1HintText = _a.dropdown1HintText, dropdown2HintText = _a.dropdown2HintText, dropdown3HintText = _a.dropdown3HintText, dropdown1ValueArray = _a.dropdown1ValueArray, dropdown2ValueArray = _a.dropdown2ValueArray, dropdown3ValueArray = _a.dropdown3ValueArray, _p = _a.quickActionBtnMode, quickActionBtnMode = _p === void 0 ? 'btn_amount2' : _p, quickActionBtn1Text = _a.quickActionBtn1Text, quickActionBtn2Text = _a.quickActionBtn2Text, quickActionBtn3Text = _a.quickActionBtn3Text, _q = _a.quickActionBtnType, quickActionBtnType = _q === void 0 ? 'fix' : _q, tBtnMode = _a.tBtnMode, tBtn1Text = _a.tBtn1Text, tBtn2Text = _a.tBtn2Text, tBtn3Text = _a.tBtn3Text, emptyText = _a.emptyText, _r = _a.scrollMode, scrollMode = _r === void 0 ? 'infinite' : _r, _s = _a.scrollVisibleType, scrollVisibleType = _s === void 0 ? 'moving' : _s, selectedIds = _a.selectedIds, maintainIds = _a.maintainIds, children = _a.children, _t = _a.headerRowCheckboxName, headerRowCheckboxName = _t === void 0 ? 'all' : _t, _u = _a.flexibleHideInfoMode, flexibleHideInfoMode = _u === void 0 ? 'use' : _u, onChangeDropdown1 = _a.onChangeDropdown1, onChangeDropdown2 = _a.onChangeDropdown2, onChangeDropdown3 = _a.onChangeDropdown3, onClickTBtn1 = _a.onClickTBtn1, onClickTBtn2 = _a.onClickTBtn2, onClickTBtn3 = _a.onClickTBtn3, onClickQuickActionBtn1 = _a.onClickQuickActionBtn1, onClickQuickActionBtn2 = _a.onClickQuickActionBtn2, onClickQuickActionBtn3 = _a.onClickQuickActionBtn3, onSelect = _a.onSelect, quickActionBtn1State = _a.quickActionBtn1State, quickActionBtn2State = _a.quickActionBtn2State, quickActionBtn3State = _a.quickActionBtn3State, _v = _a.mBtnMode, mBtnMode = _v === void 0 ? 'mbtn_amount1' : _v, mBtn1Text = _a.mBtn1Text, mBtn2Text = _a.mBtn2Text, mBtn3Text = _a.mBtn3Text, onClickMBtn1 = _a.onClickMBtn1, onClickMBtn2 = _a.onClickMBtn2, onClickMBtn3 = _a.onClickMBtn3;
58
59
  var selectAllMethods = (0, react_hook_form_1.useForm)();
59
60
  var checkboxMethods = (0, react_hook_form_1.useForm)();
60
61
  var isAllCheckboxSelected = (0, react_hook_form_1.useWatch)({
61
62
  name: headerRowCheckboxName,
62
63
  control: selectAllMethods.control
63
64
  });
64
- var _v = (0, react_1.useState)(false), isBulkActionBarOpen = _v[0], setIsBulkActionBarOpen = _v[1];
65
+ var _w = (0, react_1.useState)(false), isBulkActionBarOpen = _w[0], setIsBulkActionBarOpen = _w[1];
66
+ var childrenPropIds = [];
67
+ if (children && Array.isArray(children)) {
68
+ childrenPropIds = (_b = react_1.default.Children.map(children, function (child) {
69
+ if (react_1.default.isValidElement(child)) {
70
+ return child.props.id;
71
+ }
72
+ return null;
73
+ })) === null || _b === void 0 ? void 0 : _b.filter(Boolean);
74
+ }
65
75
  /**
66
76
  * @when AdminListItem이 선택되었을 때
67
77
  * @expected 벌크액션바 활성화 여부와 체크박스 선택 여부를 결정합니다.
@@ -89,19 +99,23 @@ function AdminList(_a) {
89
99
  }
90
100
  setIsBulkActionBarOpen(true);
91
101
  selectedIds.forEach(function (val) { return checkboxMethods.setValue(val.toString(), true); });
102
+ // NOTE Children에 포함된 요소의 id와 선택되어 있는 id를 비교해 전체 체크박스의 상태를 변경합니다.
103
+ var hasAllIds = childrenPropIds === null || childrenPropIds === void 0 ? void 0 : childrenPropIds.every(function (id) {
104
+ return selectedIds.some(function (selectedId) { return selectedId === id; });
105
+ });
106
+ selectAllMethods.setValue(headerRowCheckboxName, hasAllIds ? true : false);
92
107
  }, [selectedIds, maintainIds]);
93
108
  var handleSelectAllCheckbox = function () {
94
- var allIds = Object.keys(checkboxMethods.getValues()).map(function (id) { return Number(id); });
95
- var basicIds = allIds.filter(function (id) { return !(maintainIds === null || maintainIds === void 0 ? void 0 : maintainIds.includes(id)); });
109
+ var basicIds = childrenPropIds === null || childrenPropIds === void 0 ? void 0 : childrenPropIds.filter(function (id) { return !(maintainIds === null || maintainIds === void 0 ? void 0 : maintainIds.includes(id)); });
96
110
  if (!isAllCheckboxSelected) {
97
- allIds.forEach(function (id) { return checkboxMethods.setValue(id.toString(), true); });
98
- if (onSelect) {
111
+ childrenPropIds === null || childrenPropIds === void 0 ? void 0 : childrenPropIds.forEach(function (id) { return checkboxMethods.setValue(id.toString(), true); });
112
+ if (onSelect && basicIds) {
99
113
  onSelect(basicIds);
100
114
  }
101
115
  return;
102
116
  }
103
117
  if (maintainIds === null || maintainIds === void 0 ? void 0 : maintainIds.length) {
104
- basicIds.forEach(function (id) { return checkboxMethods.setValue(id.toString(), false); });
118
+ basicIds === null || basicIds === void 0 ? void 0 : basicIds.forEach(function (id) { return checkboxMethods.setValue(id.toString(), false); });
105
119
  if (onSelect) {
106
120
  onSelect([]);
107
121
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pds-dev-kit-web",
3
- "version": "1.9.25",
3
+ "version": "1.9.26",
4
4
  "license": "MIT",
5
5
  "private": false,
6
6
  "main": "dist/index.js",
package/release-note.md CHANGED
@@ -1,11 +1,6 @@
1
1
  # PDS-DEV-KIT-WEB Release Notes
2
- ## [v1.9.25]
2
+ ## [v1.9.26]
3
3
 
4
- ### Package
5
- * build 후에도 절대경로가 해석 될 수 있도록 조치
6
- * tsc-alias tsconfig-paths 설치
7
- * build 명령어에 && tsc-alias 추가
8
- * .eslintrc 파일에 설정 추가
9
-
10
- ### Color
11
- * 컬러 키 값 23.03.17 18시 03분 기준 싱크
4
+ ### Component
5
+ * AdminList
6
+ * HeaderRow의 체크박스를 selectedIds.length로만 판단하지 않고 children의 checkbox들이 모두 checked 상태인지 아닌지에 따라 활성화 여부를 결정하도록 변경