dtable-ui-component 4.4.3-2 → 4.4.3-alpha1

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 (149) hide show
  1. package/lib/AutoNumberFormatter/index.js +7 -14
  2. package/lib/ButtonFormatter/index.js +9 -16
  3. package/lib/CTimeFormatter/index.js +9 -16
  4. package/lib/CheckboxEditor/index.js +8 -15
  5. package/lib/CheckboxFormatter/index.js +8 -15
  6. package/lib/CollaboratorEditor/index.js +21 -29
  7. package/lib/CollaboratorEditor/mb-collaborator-editor-popover/index.js +25 -32
  8. package/lib/CollaboratorEditor/pc-collaborator-editor-popover/index.js +18 -25
  9. package/lib/CollaboratorFormatter/index.js +12 -19
  10. package/lib/CollaboratorItem/index.js +10 -17
  11. package/lib/CreatorFormatter/index.js +12 -19
  12. package/lib/DTableCommonAddTool/index.js +6 -13
  13. package/lib/DTableCustomizeCollaboratorSelect/index.js +18 -26
  14. package/lib/DTableCustomizeSelect/index.js +15 -23
  15. package/lib/DTableFiltersPopover/constants/index.js +33 -38
  16. package/lib/DTableFiltersPopover/index.js +31 -38
  17. package/lib/DTableFiltersPopover/utils/filter-item-utils.js +46 -53
  18. package/lib/DTableFiltersPopover/utils/index.js +99 -128
  19. package/lib/DTableFiltersPopover/widgets/collaborator-filter/index.js +26 -34
  20. package/lib/DTableFiltersPopover/widgets/department-select-filter/department-multiple-select-filter.js +25 -33
  21. package/lib/DTableFiltersPopover/widgets/department-select-filter/department-single-select-filter.js +26 -34
  22. package/lib/DTableFiltersPopover/widgets/filter-calendar.js +26 -34
  23. package/lib/DTableFiltersPopover/widgets/filter-item.js +120 -128
  24. package/lib/DTableFiltersPopover/widgets/filter-list/index.js +18 -26
  25. package/lib/DTableFiltersPopover/widgets/rate-item.js +8 -15
  26. package/lib/DTablePopover/index.js +8 -15
  27. package/lib/DTablePopover/utils.js +2 -9
  28. package/lib/DTableRadio/index.js +10 -17
  29. package/lib/DTableSearchInput/index.js +13 -21
  30. package/lib/DTableSearchInput/utils.js +2 -9
  31. package/lib/DTableSelect/dtable-select-label.js +6 -13
  32. package/lib/DTableSelect/index.js +10 -18
  33. package/lib/DTableSelect/utils.js +10 -20
  34. package/lib/DTableSwitch/index.js +7 -14
  35. package/lib/DateEditor/index.js +22 -30
  36. package/lib/DateEditor/mb-date-editor-popover/index.js +47 -55
  37. package/lib/DateEditor/pc-date-editor-popover.js +20 -27
  38. package/lib/DateFormatter/index.js +9 -16
  39. package/lib/Department-editor/constants.js +1 -7
  40. package/lib/Department-editor/department-multiple-select/index.js +24 -32
  41. package/lib/Department-editor/department-single-select.js +33 -41
  42. package/lib/Department-editor/index.js +14 -22
  43. package/lib/Department-editor/selected-departments/index.js +25 -32
  44. package/lib/Department-editor/utils.js +3 -11
  45. package/lib/DepartmentSingleSelectFormatter/index.js +9 -16
  46. package/lib/DigitalSignFormatter/index.js +15 -23
  47. package/lib/DigitalSignFormatter/utils.js +3 -11
  48. package/lib/DurationFormatter/index.js +9 -16
  49. package/lib/EditEditorButton/index.js +5 -12
  50. package/lib/EmailFormatter/index.js +7 -14
  51. package/lib/FieldDisplaySetting/field-item.js +14 -21
  52. package/lib/FieldDisplaySetting/index.js +19 -27
  53. package/lib/FileEditor/index.js +8 -15
  54. package/lib/FileEditor/pc-files-addition/index.js +0 -1
  55. package/lib/FileEditor/pc-files-addition/pc-file-uploaded-item.js +0 -1
  56. package/lib/FileEditor/pc-files-preview/index.js +0 -1
  57. package/lib/FileEditor/pc-files-preview/pc-file-item-preview.js +0 -1
  58. package/lib/FileFormatter/index.js +11 -19
  59. package/lib/FileItemFormatter/index.js +6 -14
  60. package/lib/FileItemFormatter/utils.js +2 -9
  61. package/lib/FileUploader/index.js +4 -11
  62. package/lib/FormulaFormatter/cell-value-validator.js +18 -24
  63. package/lib/FormulaFormatter/index.js +32 -39
  64. package/lib/FormulaFormatter/utils.js +13 -29
  65. package/lib/GeolocationFormatter/index.js +9 -16
  66. package/lib/HtmlLongTextFormatter/index.js +9 -17
  67. package/lib/HtmlLongTextFormatter/markdown2html.js +47 -0
  68. package/lib/HtmlLongTextFormatter/unified/index.js +400 -0
  69. package/lib/HtmlLongTextFormatter/vfile/core.js +155 -0
  70. package/lib/HtmlLongTextFormatter/vfile/index.js +40 -0
  71. package/lib/ImageFormatter/images-lazy-load.js +9 -16
  72. package/lib/ImageFormatter/index.js +16 -24
  73. package/lib/ImageFormatter/utils.js +2 -9
  74. package/lib/ImagePreviewerLightbox/index.js +12 -19
  75. package/lib/ImagePreviewerLightbox/utils.js +3 -11
  76. package/lib/LastModifierFormatter/index.js +12 -19
  77. package/lib/LinkEditor/index.js +25 -33
  78. package/lib/LinkEditor/link-editor-option.js +8 -15
  79. package/lib/LinkEditor/mb-link-editor-popover/index.js +23 -30
  80. package/lib/LinkEditor/pc-link-editor-popover/index.js +17 -24
  81. package/lib/LinkFormatter/index.js +13 -20
  82. package/lib/Loading/index.js +4 -11
  83. package/lib/LongTextFormatter/index.js +6 -13
  84. package/lib/MBEditorHeader/index.js +7 -14
  85. package/lib/MTimeFormatter/index.js +9 -16
  86. package/lib/ModalPortal/index.js +5 -12
  87. package/lib/MultipleSelectEditor/index.js +17 -25
  88. package/lib/MultipleSelectFormatter/index.js +10 -17
  89. package/lib/NotificationPopover/index.js +16 -24
  90. package/lib/NumberEditor/index.js +18 -25
  91. package/lib/NumberFormatter/index.js +9 -16
  92. package/lib/RateFormatter/index.js +8 -15
  93. package/lib/RoleStatusEditor/index.js +14 -22
  94. package/lib/RowExpandEmailFormatter/index.js +10 -17
  95. package/lib/RowExpandFileFormatter/index.js +8 -16
  96. package/lib/RowExpandFileFormatter/row-expand-file-item-formatter.js +18 -27
  97. package/lib/RowExpandFormatter/index.js +78 -86
  98. package/lib/RowExpandFormulaFormatter/index.js +34 -42
  99. package/lib/RowExpandImageFormatter/index.js +10 -19
  100. package/lib/RowExpandImageFormatter/row-expand-image-item-formatter.js +18 -27
  101. package/lib/RowExpandImageFormatter/utils.js +2 -9
  102. package/lib/RowExpandLinkFormatter/collaborator-item-formatter.js +7 -16
  103. package/lib/RowExpandLinkFormatter/index.js +37 -46
  104. package/lib/RowExpandLinkFormatter/utils.js +6 -17
  105. package/lib/RowExpandLinkFormatter/value-display-utils.js +5 -12
  106. package/lib/RowExpandRateFormatter/index.js +8 -15
  107. package/lib/RowExpandUrlFormatter/index.js +14 -21
  108. package/lib/SelectItem/index.js +4 -12
  109. package/lib/SelectOptionGroup/KeyCodes.js +1 -7
  110. package/lib/SelectOptionGroup/index.js +33 -32
  111. package/lib/SelectOptionGroup/option.js +4 -19
  112. package/lib/SimpleLongTextFormatter/index.js +20 -27
  113. package/lib/SimpleLongTextFormatter/normalize-long-text-value.js +1 -7
  114. package/lib/SimpleLongTextFormatter/widgets/LongTextPreview.js +8 -15
  115. package/lib/SimpleLongTextFormatter/widgets/dtable-markdown-viewer.js +7 -14
  116. package/lib/SingleSelectEditor/index.js +18 -26
  117. package/lib/SingleSelectFormatter/index.js +9 -16
  118. package/lib/TextEditor/index.js +7 -14
  119. package/lib/TextFormatter/index.js +7 -14
  120. package/lib/UrlFormatter/index.js +7 -14
  121. package/lib/cellFormatterFactory/index.js +4 -11
  122. package/lib/common/ClickOutside.js +4 -12
  123. package/lib/common/delete-tip.js +12 -20
  124. package/lib/common/modal-portal.js +5 -13
  125. package/lib/constants/index.js +9 -28
  126. package/lib/data/dtable-value.js +6 -11
  127. package/lib/formatterConfig/base-formatter-config.js +46 -53
  128. package/lib/formatterConfig/index.js +9 -16
  129. package/lib/hooks/common-hooks.js +4 -11
  130. package/lib/index.js +75 -432
  131. package/lib/lang/index.js +13 -24
  132. package/lib/locals/de.js +1 -7
  133. package/lib/locals/en.js +1 -7
  134. package/lib/locals/fr.js +1 -7
  135. package/lib/locals/zh-CN.js +1 -7
  136. package/lib/select-editor/index.js +4 -27
  137. package/lib/select-editor/mb-select-editor-popover/index.js +33 -41
  138. package/lib/select-editor/pc-select-editor-popover/index.js +19 -26
  139. package/lib/select-editor/select-editor-option.js +8 -15
  140. package/lib/toaster/alert.js +11 -18
  141. package/lib/toaster/index.js +3 -10
  142. package/lib/toaster/toast.js +8 -16
  143. package/lib/toaster/toastManager.js +5 -13
  144. package/lib/toaster/toaster.js +7 -15
  145. package/lib/utils/dayjs.js +4 -11
  146. package/lib/utils/editor-utils.js +5 -15
  147. package/lib/utils/event-bus.js +1 -7
  148. package/lib/utils/utils.js +6 -17
  149. package/package.json +77 -63
@@ -1,22 +1,14 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
- var _datePicker = _interopRequireDefault(require("antd-mobile/lib/date-picker"));
10
- var _react = _interopRequireDefault(require("react"));
11
- var _dayjs = _interopRequireDefault(require("dayjs"));
12
- var _seafileCalendar = _interopRequireDefault(require("@seafile/seafile-calendar"));
13
- var SeaDatePicker = _interopRequireWildcard(require("@seafile/seafile-calendar/lib/Picker"));
14
- var _lang = require("../../lang");
15
- var _editorUtils = require("../../utils/editor-utils");
16
- var _MBEditorHeader = _interopRequireDefault(require("../../MBEditorHeader"));
17
- require("@seafile/seafile-calendar/assets/index.css");
18
- require("./index.css");
19
- class DateEditorPopover extends _react.default.PureComponent {
1
+ import _DatePicker from "antd-mobile/lib/date-picker";
2
+ import React from 'react';
3
+ import dayjs from 'dayjs';
4
+ import Calendar from '@seafile/seafile-calendar';
5
+ import * as SeaDatePicker from '@seafile/seafile-calendar/lib/Picker';
6
+ import { getLocale } from '../../lang';
7
+ import { initDateEditorLanguage } from '../../utils/editor-utils';
8
+ import MBEditorHeader from '../../MBEditorHeader';
9
+ import '@seafile/seafile-calendar/assets/index.css';
10
+ import './index.css';
11
+ class DateEditorPopover extends React.PureComponent {
20
12
  constructor(props) {
21
13
  super(props);
22
14
  this.handleHistaryBack = e => {
@@ -28,18 +20,18 @@ class DateEditorPopover extends _react.default.PureComponent {
28
20
  dateFormat,
29
21
  showHourAndMinute
30
22
  } = this.props;
31
- let newValue = (0, _dayjs.default)(date);
23
+ let newValue = dayjs(date);
32
24
  if (showHourAndMinute) {
33
25
  const {
34
26
  datePickerValue
35
27
  } = this.state;
36
28
  const HM = datePickerValue.format('HH:mm');
37
29
  const format = dateFormat.split(' ')[0]; // 'YYYY-MM-DD HH:mm'
38
- const newDate = (0, _dayjs.default)(date).format(format) + ' ' + HM;
39
- newValue = (0, _dayjs.default)(newDate);
30
+ const newDate = dayjs(date).format(format) + ' ' + HM;
31
+ newValue = dayjs(newDate);
40
32
  }
41
33
  this.setState({
42
- datePickerValue: (0, _dayjs.default)(date)
34
+ datePickerValue: dayjs(date)
43
35
  });
44
36
  this.props.onValueChanged(newValue.format(dateFormat));
45
37
  };
@@ -52,8 +44,8 @@ class DateEditorPopover extends _react.default.PureComponent {
52
44
  } = this.props;
53
45
  const format = dateFormat.split(' ')[0]; // 'YYYY-MM-DD HH:mm'
54
46
  const YMD = datePickerValue.format(format);
55
- const newDate = YMD + ' ' + (0, _dayjs.default)(time).format('HH:mm');
56
- const newValue = (0, _dayjs.default)(newDate);
47
+ const newDate = YMD + ' ' + dayjs(time).format('HH:mm');
48
+ const newValue = dayjs(newDate);
57
49
  this.setState({
58
50
  datePickerValue: newValue
59
51
  });
@@ -94,12 +86,12 @@ class DateEditorPopover extends _react.default.PureComponent {
94
86
  dateFormat,
95
87
  lang
96
88
  } = this.props;
97
- let defaultValue = (0, _dayjs.default)().clone();
98
- return /*#__PURE__*/_react.default.createElement(_seafileCalendar.default, {
99
- locale: (0, _editorUtils.initDateEditorLanguage)(lang),
89
+ let defaultValue = dayjs().clone();
90
+ return /*#__PURE__*/React.createElement(Calendar, {
91
+ locale: initDateEditorLanguage(lang),
100
92
  format: dateFormat,
101
93
  defaultValue: defaultValue,
102
- dateInputPlaceholder: (0, _lang.getLocale)('Please_input'),
94
+ dateInputPlaceholder: getLocale('Please_input'),
103
95
  showDateInput: false,
104
96
  focusablePanel: false,
105
97
  showToday: false,
@@ -118,7 +110,7 @@ class DateEditorPopover extends _react.default.PureComponent {
118
110
  datePickerValue
119
111
  } = this.state;
120
112
  let calendar = this.getCalender();
121
- return /*#__PURE__*/_react.default.createElement(SeaDatePicker, {
113
+ return /*#__PURE__*/React.createElement(SeaDatePicker, {
122
114
  open: true,
123
115
  style: {
124
116
  width: '100%'
@@ -132,16 +124,16 @@ class DateEditorPopover extends _react.default.PureComponent {
132
124
  value
133
125
  } = _ref;
134
126
  value = value && value.format(dateFormat);
135
- return /*#__PURE__*/_react.default.createElement("div", {
127
+ return /*#__PURE__*/React.createElement("div", {
136
128
  tabIndex: "0",
137
129
  onFocus: this.onReadOnlyFocus
138
- }, /*#__PURE__*/_react.default.createElement("input", {
139
- placeholder: (0, _lang.getLocale)('Please_select'),
130
+ }, /*#__PURE__*/React.createElement("input", {
131
+ placeholder: getLocale('Please_select'),
140
132
  readOnly: true,
141
133
  tabIndex: "-1",
142
134
  className: "form-control",
143
135
  value: value || ''
144
- }), /*#__PURE__*/_react.default.createElement("div", {
136
+ }), /*#__PURE__*/React.createElement("div", {
145
137
  ref: this.calendarContainerRef,
146
138
  style: {
147
139
  height: '22rem'
@@ -151,9 +143,9 @@ class DateEditorPopover extends _react.default.PureComponent {
151
143
  };
152
144
  this.state = {
153
145
  open: true,
154
- datePickerValue: props.value ? (0, _dayjs.default)(props.value) : (0, _dayjs.default)().clone()
146
+ datePickerValue: props.value ? dayjs(props.value) : dayjs().clone()
155
147
  };
156
- this.calendarContainerRef = /*#__PURE__*/_react.default.createRef();
148
+ this.calendarContainerRef = React.createRef();
157
149
  }
158
150
  componentDidMount() {
159
151
  history.pushState(null, null, '#'); // eslint-disable-line
@@ -174,48 +166,48 @@ class DateEditorPopover extends _react.default.PureComponent {
174
166
  const {
175
167
  datePickerValue
176
168
  } = this.state;
177
- return /*#__PURE__*/_react.default.createElement("div", {
169
+ return /*#__PURE__*/React.createElement("div", {
178
170
  ref: this.setEditorPopover,
179
171
  className: "dtable-ui-mb-editor-popover mb-date-editor-popover",
180
172
  onClick: this.onContainerClick
181
- }, /*#__PURE__*/_react.default.createElement(_MBEditorHeader.default, {
173
+ }, /*#__PURE__*/React.createElement(MBEditorHeader, {
182
174
  title: column.name,
183
- leftContent: /*#__PURE__*/_react.default.createElement("i", {
175
+ leftContent: /*#__PURE__*/React.createElement("i", {
184
176
  className: "dtable-font dtable-icon-return"
185
177
  }),
186
- rightContent: /*#__PURE__*/_react.default.createElement("span", null, (0, _lang.getLocale)('Done')),
178
+ rightContent: /*#__PURE__*/React.createElement("span", null, getLocale('Done')),
187
179
  onLeftClick: this.props.onClosePopover,
188
180
  onRightClick: this.props.onClosePopover
189
- }), /*#__PURE__*/_react.default.createElement("div", {
181
+ }), /*#__PURE__*/React.createElement("div", {
190
182
  className: "dtable-ui-mb-editor-body dtable-ui-mb-date-editor-body"
191
- }, /*#__PURE__*/_react.default.createElement("div", {
183
+ }, /*#__PURE__*/React.createElement("div", {
192
184
  className: "mb-date-editor-input"
193
- }, /*#__PURE__*/_react.default.createElement("div", {
185
+ }, /*#__PURE__*/React.createElement("div", {
194
186
  className: "date-input"
195
- }, /*#__PURE__*/_react.default.createElement(_datePicker.default, {
187
+ }, /*#__PURE__*/React.createElement(_DatePicker, {
196
188
  mode: "date",
197
- locale: (0, _editorUtils.initDateEditorLanguage)(lang),
189
+ locale: initDateEditorLanguage(lang),
198
190
  value: this.state.value,
199
191
  onChange: this.handleDateChange
200
- }, /*#__PURE__*/_react.default.createElement("div", {
192
+ }, /*#__PURE__*/React.createElement("div", {
201
193
  className: "date-input-day"
202
- }, datePickerValue && datePickerValue.format(leftFormat)))), showHourAndMinute && /*#__PURE__*/_react.default.createElement("div", {
194
+ }, datePickerValue && datePickerValue.format(leftFormat)))), showHourAndMinute && /*#__PURE__*/React.createElement("div", {
203
195
  className: "date-input"
204
- }, /*#__PURE__*/_react.default.createElement(_datePicker.default, {
196
+ }, /*#__PURE__*/React.createElement(_DatePicker, {
205
197
  mode: "time",
206
- locale: (0, _editorUtils.initDateEditorLanguage)(lang),
198
+ locale: initDateEditorLanguage(lang),
207
199
  value: this.state.value,
208
200
  onChange: this.handleTimeChange
209
- }, /*#__PURE__*/_react.default.createElement("div", {
201
+ }, /*#__PURE__*/React.createElement("div", {
210
202
  className: "date-input-day"
211
- }, datePickerValue && datePickerValue.format(rightFormat))))), /*#__PURE__*/_react.default.createElement("div", {
203
+ }, datePickerValue && datePickerValue.format(rightFormat))))), /*#__PURE__*/React.createElement("div", {
212
204
  className: "dtable-ui mb-date-editor-picker"
213
- }, this.renderDataPicker()), /*#__PURE__*/_react.default.createElement("div", {
205
+ }, this.renderDataPicker()), /*#__PURE__*/React.createElement("div", {
214
206
  className: "mb-date-editor-clear"
215
- }, /*#__PURE__*/_react.default.createElement("div", {
207
+ }, /*#__PURE__*/React.createElement("div", {
216
208
  onClick: this.deleteDate,
217
209
  className: "clear-date"
218
- }, (0, _lang.getLocale)('Clear')))));
210
+ }, getLocale('Clear')))));
219
211
  }
220
212
  }
221
- var _default = exports.default = DateEditorPopover;
213
+ export default DateEditorPopover;
@@ -1,18 +1,11 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _dayjs = _interopRequireDefault(require("dayjs"));
10
- var _Picker = _interopRequireDefault(require("@seafile/seafile-calendar/lib/Picker"));
11
- var _seafileCalendar = _interopRequireDefault(require("@seafile/seafile-calendar"));
12
- var _editorUtils = require("../utils/editor-utils");
13
- require("@seafile/seafile-calendar/assets/index.css");
14
- var _lang = require("../lang");
15
- class PCDateEditorPopover extends _react.default.Component {
1
+ import React from 'react';
2
+ import dayjs from 'dayjs';
3
+ import DatePicker from '@seafile/seafile-calendar/lib/Picker';
4
+ import Calendar from '@seafile/seafile-calendar';
5
+ import { initDateEditorLanguage } from '../utils/editor-utils';
6
+ import '@seafile/seafile-calendar/assets/index.css';
7
+ import { getLocale } from '../lang';
8
+ class PCDateEditorPopover extends React.Component {
16
9
  constructor(props) {
17
10
  super(props);
18
11
  // event trigger sequence: onOpenChange --> onChange
@@ -56,16 +49,16 @@ class PCDateEditorPopover extends _react.default.Component {
56
49
  showHourAndMinute,
57
50
  lang
58
51
  } = this.props;
59
- let defaultValue = (0, _dayjs.default)().clone();
60
- return /*#__PURE__*/_react.default.createElement(_seafileCalendar.default, {
61
- locale: (0, _editorUtils.initDateEditorLanguage)(lang),
52
+ let defaultValue = dayjs().clone();
53
+ return /*#__PURE__*/React.createElement(Calendar, {
54
+ locale: initDateEditorLanguage(lang),
62
55
  style: {
63
56
  zIndex: 1001
64
57
  },
65
58
  format: dateFormat,
66
59
  defaultValue: defaultValue,
67
60
  showHourAndMinute: showHourAndMinute,
68
- dateInputPlaceholder: (0, _lang.getLocale)('Please_input'),
61
+ dateInputPlaceholder: getLocale('Please_input'),
69
62
  showDateInput: true,
70
63
  focusablePanel: false,
71
64
  onClear: this.onClear
@@ -73,9 +66,9 @@ class PCDateEditorPopover extends _react.default.Component {
73
66
  };
74
67
  this.state = {
75
68
  open: true,
76
- datePickerValue: props.value ? (0, _dayjs.default)(props.value) : null
69
+ datePickerValue: props.value ? dayjs(props.value) : null
77
70
  };
78
- this.calendarContainerRef = /*#__PURE__*/_react.default.createRef();
71
+ this.calendarContainerRef = React.createRef();
79
72
  }
80
73
  render() {
81
74
  let {
@@ -86,7 +79,7 @@ class PCDateEditorPopover extends _react.default.Component {
86
79
  datePickerValue
87
80
  } = this.state;
88
81
  const calendar = this.getCalender();
89
- return /*#__PURE__*/_react.default.createElement(_Picker.default, {
82
+ return /*#__PURE__*/React.createElement(DatePicker, {
90
83
  open: open,
91
84
  value: datePickerValue,
92
85
  animation: "slide-up",
@@ -102,21 +95,21 @@ class PCDateEditorPopover extends _react.default.Component {
102
95
  value
103
96
  } = _ref;
104
97
  value = value && value.format(dateFormat);
105
- return /*#__PURE__*/_react.default.createElement("span", {
98
+ return /*#__PURE__*/React.createElement("span", {
106
99
  className: "dtable-ui-date-editor-container",
107
100
  tabIndex: "0",
108
101
  onFocus: this.onFocusDatePicker
109
- }, /*#__PURE__*/_react.default.createElement("input", {
102
+ }, /*#__PURE__*/React.createElement("input", {
110
103
  readOnly: true,
111
104
  tabIndex: "-1",
112
105
  className: "form-control",
113
- placeholder: (0, _lang.getLocale)('Please_select'),
106
+ placeholder: getLocale('Please_select'),
114
107
  value: value || '',
115
108
  onMouseDown: this.handleMouseDown
116
- }), /*#__PURE__*/_react.default.createElement("div", {
109
+ }), /*#__PURE__*/React.createElement("div", {
117
110
  ref: this.calendarContainerRef
118
111
  }));
119
112
  });
120
113
  }
121
114
  }
122
- var _default = exports.default = PCDateEditorPopover;
115
+ export default PCDateEditorPopover;
@@ -1,26 +1,19 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _classnames = _interopRequireDefault(require("classnames"));
10
- var _dtableUtils = require("dtable-utils");
11
- require("./index.css");
12
- class DateFormatter extends _react.default.Component {
1
+ import React from 'react';
2
+ import classnames from 'classnames';
3
+ import { getDateDisplayString } from 'dtable-utils';
4
+ import './index.css';
5
+ class DateFormatter extends React.Component {
13
6
  render() {
14
7
  let {
15
8
  value: date,
16
9
  format,
17
10
  containerClassName
18
11
  } = this.props;
19
- let classname = (0, _classnames.default)('dtable-ui cell-formatter-container date-formatter', containerClassName);
12
+ let classname = classnames('dtable-ui cell-formatter-container date-formatter', containerClassName);
20
13
  if (date !== '') {
21
- date = (0, _dtableUtils.getDateDisplayString)(date, format);
14
+ date = getDateDisplayString(date, format);
22
15
  }
23
- return /*#__PURE__*/_react.default.createElement("div", {
16
+ return /*#__PURE__*/React.createElement("div", {
24
17
  className: classname
25
18
  }, date);
26
19
  }
@@ -30,4 +23,4 @@ DateFormatter.defaultProps = {
30
23
  format: 'YYYY-MM-DD',
31
24
  containerClassName: ''
32
25
  };
33
- var _default = exports.default = DateFormatter;
26
+ export default DateFormatter;
@@ -1,10 +1,4 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.DEPARTMENT_SELECT_RANGE_OPTIONS = void 0;
7
- const DEPARTMENT_SELECT_RANGE_OPTIONS = exports.DEPARTMENT_SELECT_RANGE_OPTIONS = [{
1
+ export const DEPARTMENT_SELECT_RANGE_OPTIONS = [{
8
2
  name: 'Current_user_department',
9
3
  type: 'current_user_department'
10
4
  }, {
@@ -1,16 +1,8 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
- var _react = _interopRequireWildcard(require("react"));
10
- var _utils = require("../utils");
11
- var _selectedDepartments = _interopRequireDefault(require("../selected-departments"));
12
- var _lang = require("../../lang");
13
- require("./index.css");
1
+ import React, { Fragment, useState, useEffect, useRef } from 'react';
2
+ import { searchDepartments, getNormalizedDepartments } from '../utils';
3
+ import SelectedDepartments from '../selected-departments';
4
+ import { getLocale } from '../../lang';
5
+ import './index.css';
14
6
  function DepartmentMultipleSelect(props) {
15
7
  const {
16
8
  value,
@@ -20,11 +12,11 @@ function DepartmentMultipleSelect(props) {
20
12
  renderUserDepartmentOptions,
21
13
  departments: initialDepartments
22
14
  } = props;
23
- const [searchVal, setSearchVal] = (0, _react.useState)('');
24
- const [departments, setDepartments] = (0, _react.useState)((0, _utils.getNormalizedDepartments)(initialDepartments));
25
- const departmentContainerRef = (0, _react.useRef)(null);
26
- const validDepartmentsRef = (0, _react.useRef)([]);
27
- (0, _react.useEffect)(() => {
15
+ const [searchVal, setSearchVal] = useState('');
16
+ const [departments, setDepartments] = useState(getNormalizedDepartments(initialDepartments));
17
+ const departmentContainerRef = useRef(null);
18
+ const validDepartmentsRef = useRef([]);
19
+ useEffect(() => {
28
20
  if (departmentContainerRef.current) {
29
21
  resetContainerPosition();
30
22
  }
@@ -51,7 +43,7 @@ function DepartmentMultipleSelect(props) {
51
43
  function onChangeSearch(event) {
52
44
  const newSearchValue = event.target.value;
53
45
  if (searchVal === newSearchValue) return;
54
- validDepartmentsRef.current = (0, _utils.searchDepartments)(departments, newSearchValue);
46
+ validDepartmentsRef.current = searchDepartments(departments, newSearchValue);
55
47
  setSearchVal(newSearchValue);
56
48
  }
57
49
  function onClick(e) {
@@ -89,21 +81,21 @@ function DepartmentMultipleSelect(props) {
89
81
  paddingLeft: hasChild ? '' : '16px'
90
82
  };
91
83
  const inputChecked = value.includes(id);
92
- return /*#__PURE__*/_react.default.createElement(_react.Fragment, {
84
+ return /*#__PURE__*/React.createElement(Fragment, {
93
85
  key: id
94
- }, /*#__PURE__*/_react.default.createElement("div", {
86
+ }, /*#__PURE__*/React.createElement("div", {
95
87
  className: "dropdown-item d-flex align-items-center",
96
88
  onClick: event => onSelectDepartment(event, id)
97
- }, /*#__PURE__*/_react.default.createElement("input", {
89
+ }, /*#__PURE__*/React.createElement("input", {
98
90
  type: "checkbox",
99
91
  className: "vam department-select-input",
100
92
  checked: inputChecked,
101
93
  style: inputStyle,
102
94
  onChange: () => {}
103
- }), hasChild && !searchVal && /*#__PURE__*/_react.default.createElement("span", {
95
+ }), hasChild && !searchVal && /*#__PURE__*/React.createElement("span", {
104
96
  className: "dtable-font expand dtable-icon-".concat(isExpanded ? 'drop-down' : 'right-slide', " pr-1"),
105
97
  onClick: event => onExpand(event, id, isExpanded)
106
- }), /*#__PURE__*/_react.default.createElement("span", {
98
+ }), /*#__PURE__*/React.createElement("span", {
107
99
  style: searchVal ? {} : nameStyle,
108
100
  title: name,
109
101
  className: "text-truncate"
@@ -119,33 +111,33 @@ function DepartmentMultipleSelect(props) {
119
111
  const subDepartments = departments.filter(department => department.parent_id !== -1);
120
112
  const topDepartment = departments.find(department => department.parent_id === -1);
121
113
  if (!topDepartment) return null;
122
- return /*#__PURE__*/_react.default.createElement("div", {
114
+ return /*#__PURE__*/React.createElement("div", {
123
115
  ref: departmentContainerRef,
124
116
  onClick: onStopPropagation,
125
117
  onMouseDown: onStopPropagation,
126
118
  className: "dropdown-menu show departments-container dtable-ui ".concat(classNamePrefix)
127
- }, isShowSelectedDepartments && /*#__PURE__*/_react.default.createElement("div", {
119
+ }, isShowSelectedDepartments && /*#__PURE__*/React.createElement("div", {
128
120
  className: "selected-departments dtable-ui",
129
121
  onClick: onClick
130
- }, /*#__PURE__*/_react.default.createElement(_selectedDepartments.default, {
122
+ }, /*#__PURE__*/React.createElement(SelectedDepartments, {
131
123
  value: value,
132
124
  removeDepartment: onCommit,
133
125
  isShowRemoveIcon: true,
134
126
  departments: departments
135
- })), /*#__PURE__*/_react.default.createElement("div", {
127
+ })), /*#__PURE__*/React.createElement("div", {
136
128
  className: "search-departments"
137
- }, /*#__PURE__*/_react.default.createElement("input", {
129
+ }, /*#__PURE__*/React.createElement("input", {
138
130
  className: "form-control",
139
131
  type: "text",
140
132
  autoFocus: true,
141
- placeholder: (0, _lang.getLocale)('Find_a_department'),
133
+ placeholder: getLocale('Find_a_department'),
142
134
  value: searchVal,
143
135
  onChange: onChangeSearch,
144
136
  onClick: onClick
145
- })), /*#__PURE__*/_react.default.createElement("div", {
137
+ })), /*#__PURE__*/React.createElement("div", {
146
138
  className: "department-item-container"
147
139
  }, !searchVal && renderUserDepartmentOptions && renderUserDepartmentOptions(), validDepartmentsRef.current.length > 0 && searchVal && renderSearchedDepartments(), !searchVal && renderDepartment(topDepartment, subDepartments, level)));
148
140
  }
149
141
  return renderDepartments();
150
142
  }
151
- var _default = exports.default = DepartmentMultipleSelect;
143
+ export default DepartmentMultipleSelect;
@@ -1,17 +1,9 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
- var _react = _interopRequireWildcard(require("react"));
10
- var _dtableUtils = require("dtable-utils");
11
- var _Loading = _interopRequireDefault(require("../Loading"));
12
- var _utils = require("./utils");
13
- var _lang = require("../lang");
14
- class DepartmentSingleSelect extends _react.Component {
1
+ import React, { Component, Fragment } from 'react';
2
+ import { DEPARTMENT_SELECT_RANGE_MAP } from 'dtable-utils';
3
+ import Loading from '../Loading';
4
+ import { getNormalizedDepartments, searchDepartments } from './utils';
5
+ import { getLocale } from '../lang';
6
+ class DepartmentSingleSelect extends Component {
15
7
  constructor(props) {
16
8
  var _this;
17
9
  super(props);
@@ -26,7 +18,7 @@ class DepartmentSingleSelect extends _react.Component {
26
18
  }
27
19
  };
28
20
  this.initDepartments = departments => {
29
- const normalizedDepartments = (0, _utils.getNormalizedDepartments)(departments || []);
21
+ const normalizedDepartments = getNormalizedDepartments(departments || []);
30
22
  this.validDepartments = normalizedDepartments;
31
23
  this.setState({
32
24
  departments: normalizedDepartments
@@ -44,17 +36,17 @@ class DepartmentSingleSelect extends _react.Component {
44
36
  } = userDepartmentIdsMap || {};
45
37
  let targetDepartments = [];
46
38
  let topParentIds = [];
47
- if (selectedRange === _dtableUtils.DEPARTMENT_SELECT_RANGE_MAP.CURRENT_USER_DEPARTMENT) {
39
+ if (selectedRange === DEPARTMENT_SELECT_RANGE_MAP.CURRENT_USER_DEPARTMENT) {
48
40
  topParentIds = current_user_department_ids;
49
41
  targetDepartments = departments.filter(department => current_user_department_ids.includes(department.id));
50
- } else if (selectedRange === _dtableUtils.DEPARTMENT_SELECT_RANGE_MAP.CURRENT_USER_DEPARTMENT_AND_SUB) {
42
+ } else if (selectedRange === DEPARTMENT_SELECT_RANGE_MAP.CURRENT_USER_DEPARTMENT_AND_SUB) {
51
43
  const currentUserDepartments = departments.filter(department => current_user_department_ids.includes(department.id));
52
44
  topParentIds = currentUserDepartments.filter(department => !current_user_department_ids.includes(department.parent_id)).map(department => department.id);
53
45
  targetDepartments = departments.filter(department => current_user_department_and_sub_ids.includes(department.id));
54
46
  } else {
55
47
  targetDepartments = departments.filter(department => specificDepartments.includes(department.id));
56
48
  }
57
- const normalizedDepartments = (0, _utils.getNormalizedDepartments)(targetDepartments);
49
+ const normalizedDepartments = getNormalizedDepartments(targetDepartments);
58
50
  _this.validDepartments = normalizedDepartments;
59
51
  _this.setState({
60
52
  departments: normalizedDepartments,
@@ -92,7 +84,7 @@ class DepartmentSingleSelect extends _react.Component {
92
84
  const {
93
85
  departments
94
86
  } = this.state;
95
- this.validDepartments = (0, _utils.searchDepartments)(departments, newSearchValue);
87
+ this.validDepartments = searchDepartments(departments, newSearchValue);
96
88
  this.setState({
97
89
  searchVal: newSearchValue
98
90
  });
@@ -141,24 +133,24 @@ class DepartmentSingleSelect extends _react.Component {
141
133
  paddingLeft: "".concat(newLevel * 15 + 10, "px")
142
134
  };
143
135
  const isChecked = value === id;
144
- return /*#__PURE__*/_react.default.createElement(_react.Fragment, {
136
+ return /*#__PURE__*/React.createElement(Fragment, {
145
137
  key: id
146
- }, /*#__PURE__*/_react.default.createElement("div", {
138
+ }, /*#__PURE__*/React.createElement("div", {
147
139
  className: "dropdown-item department-item d-flex align-items-center",
148
140
  onClick: event => this.onSelectDepartment(event, id),
149
141
  style: itemStyle
150
- }, /*#__PURE__*/_react.default.createElement("div", {
142
+ }, /*#__PURE__*/React.createElement("div", {
151
143
  className: "department-item-left-content d-flex align-items-center"
152
- }, hasChild && /*#__PURE__*/_react.default.createElement("span", {
144
+ }, hasChild && /*#__PURE__*/React.createElement("span", {
153
145
  className: "dtable-font expand dtable-icon-".concat(isExpanded ? 'drop-down' : 'right-slide', " pr-1"),
154
146
  onClick: event => this.onExpand(event, id, isExpanded)
155
- }), /*#__PURE__*/_react.default.createElement("span", {
147
+ }), /*#__PURE__*/React.createElement("span", {
156
148
  style: nameStyle,
157
149
  title: name,
158
150
  className: "text-truncate department-name"
159
- }, name), isChecked && /*#__PURE__*/_react.default.createElement("span", {
151
+ }, name), isChecked && /*#__PURE__*/React.createElement("span", {
160
152
  className: "department-check-icon"
161
- }, /*#__PURE__*/_react.default.createElement("i", {
153
+ }, /*#__PURE__*/React.createElement("i", {
162
154
  className: "dtable-font dtable-icon-check-mark"
163
155
  })))), isExpanded && hasChild && this.renderSubDepartments(id, subDepartments, newLevel));
164
156
  };
@@ -168,13 +160,13 @@ class DepartmentSingleSelect extends _react.Component {
168
160
  } = this.state;
169
161
  const topDepartment = departments.find(department => department.parent_id === -1);
170
162
  const subDepartments = departments.filter(department => department.parent_id !== -1);
171
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, topDepartment ? this.renderDepartment(topDepartment, subDepartments, -1, true) : this.renderEmptyTip());
163
+ return /*#__PURE__*/React.createElement(React.Fragment, null, topDepartment ? this.renderDepartment(topDepartment, subDepartments, -1, true) : this.renderEmptyTip());
172
164
  };
173
165
  this.renderSpecificDepartments = () => {
174
166
  const {
175
167
  departments
176
168
  } = this.state;
177
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, this.validDepartments.length === 0 && this.renderEmptyTip(), this.validDepartments.length > 0 && this.validDepartments.map(department => {
169
+ return /*#__PURE__*/React.createElement(React.Fragment, null, this.validDepartments.length === 0 && this.renderEmptyTip(), this.validDepartments.length > 0 && this.validDepartments.map(department => {
178
170
  const value = {
179
171
  ...department,
180
172
  hasChild: false
@@ -189,16 +181,16 @@ class DepartmentSingleSelect extends _react.Component {
189
181
  } = this.state;
190
182
  const nextLevelDepartment = this.validDepartments.find(department => topParentIds.includes(department.parent_id));
191
183
  const hasNextLevel = !!nextLevelDepartment;
192
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, this.validDepartments.length === 0 && this.renderEmptyTip(), this.validDepartments.length > 0 && this.validDepartments.map(department => {
184
+ return /*#__PURE__*/React.createElement(React.Fragment, null, this.validDepartments.length === 0 && this.renderEmptyTip(), this.validDepartments.length > 0 && this.validDepartments.map(department => {
193
185
  let value = department;
194
186
  if (!topParentIds.includes(department.id)) return null;
195
187
  return this.renderDepartment(value, departments, -1, hasNextLevel);
196
188
  }));
197
189
  };
198
190
  this.renderEmptyTip = () => {
199
- return /*#__PURE__*/_react.default.createElement("span", {
191
+ return /*#__PURE__*/React.createElement("span", {
200
192
  className: "none-search-result d-flex justify-content-center"
201
- }, (0, _lang.getLocale)('No_departments_available'));
193
+ }, getLocale('No_departments_available'));
202
194
  };
203
195
  this.renderMenuContent = () => {
204
196
  const {
@@ -212,12 +204,12 @@ class DepartmentSingleSelect extends _react.Component {
212
204
  selectedRange
213
205
  } = this.getSelectedRange();
214
206
  let menuContent = this.renderAllDepartments();
215
- if (enableSelectRange && [_dtableUtils.DEPARTMENT_SELECT_RANGE_MAP.CURRENT_USER_DEPARTMENT, _dtableUtils.DEPARTMENT_SELECT_RANGE_MAP.SPECIFIC_DEPARTMENTS].includes(selectedRange) || searchVal) {
207
+ if (enableSelectRange && [DEPARTMENT_SELECT_RANGE_MAP.CURRENT_USER_DEPARTMENT, DEPARTMENT_SELECT_RANGE_MAP.SPECIFIC_DEPARTMENTS].includes(selectedRange) || searchVal) {
216
208
  menuContent = this.renderSpecificDepartments();
217
- } else if (enableSelectRange && selectedRange === _dtableUtils.DEPARTMENT_SELECT_RANGE_MAP.CURRENT_USER_DEPARTMENT_AND_SUB) {
209
+ } else if (enableSelectRange && selectedRange === DEPARTMENT_SELECT_RANGE_MAP.CURRENT_USER_DEPARTMENT_AND_SUB) {
218
210
  menuContent = this.renderCurrentDepartmentsAndSub();
219
211
  }
220
- return /*#__PURE__*/_react.default.createElement("div", {
212
+ return /*#__PURE__*/React.createElement("div", {
221
213
  className: "editor-department-container",
222
214
  ref: ref => this.departmentContainerRef = ref
223
215
  }, !searchVal && renderUserDepartmentOptions && renderUserDepartmentOptions(this.onSelectDepartment), menuContent);
@@ -247,25 +239,25 @@ class DepartmentSingleSelect extends _react.Component {
247
239
  }
248
240
  }
249
241
  render() {
250
- return /*#__PURE__*/_react.default.createElement("div", {
242
+ return /*#__PURE__*/React.createElement("div", {
251
243
  className: "dropdown-menu department-editor-list dtable-ui show m-0 p-0",
252
244
  style: this.props.menuStyle,
253
245
  ref: ref => this.departmentsRef = ref,
254
246
  onClick: this.onStopPropagation,
255
247
  onMouseDown: this.onStopPropagation
256
- }, /*#__PURE__*/_react.default.createElement("div", {
248
+ }, /*#__PURE__*/React.createElement("div", {
257
249
  className: "search-departments"
258
- }, /*#__PURE__*/_react.default.createElement("input", {
250
+ }, /*#__PURE__*/React.createElement("input", {
259
251
  className: "form-control",
260
252
  type: "text",
261
253
  autoFocus: true,
262
- placeholder: (0, _lang.getLocale)('Find_a_department'),
254
+ placeholder: getLocale('Find_a_department'),
263
255
  value: this.state.searchVal,
264
256
  onChange: this.onChangeSearch,
265
257
  onClick: this.onStopPropagation
266
- })), this.state.isLoading ? /*#__PURE__*/_react.default.createElement("div", {
258
+ })), this.state.isLoading ? /*#__PURE__*/React.createElement("div", {
267
259
  className: "mt-4"
268
- }, /*#__PURE__*/_react.default.createElement(_Loading.default, null)) : this.renderMenuContent());
260
+ }, /*#__PURE__*/React.createElement(Loading, null)) : this.renderMenuContent());
269
261
  }
270
262
  }
271
- var _default = exports.default = DepartmentSingleSelect;
263
+ export default DepartmentSingleSelect;