dtable-ui-component 0.1.75-beta3 → 0.1.75-beta7

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 (223) hide show
  1. package/lib/AutoNumberFormatter/index.js +27 -38
  2. package/lib/ButtonFormatter/index.js +47 -59
  3. package/lib/CTimeFormatter/index.js +39 -53
  4. package/lib/CheckboxFormatter/index.js +35 -48
  5. package/lib/CollaboratorFormatter/index.js +42 -64
  6. package/lib/CollaboratorItem/index.js +44 -61
  7. package/lib/CreatorFormatter/index.js +42 -62
  8. package/lib/DateFormatter/index.js +40 -55
  9. package/lib/DurationFormatter/index.js +29 -42
  10. package/lib/EmailFormatter/index.js +27 -38
  11. package/lib/FileFormatter/index.js +50 -65
  12. package/lib/FileItemFormatter/index.js +31 -44
  13. package/lib/FileUploader/index.js +34 -44
  14. package/lib/FormulaFormatter/index.js +81 -102
  15. package/lib/GeolocationFormatter/index.js +35 -50
  16. package/lib/ImageFormatter/images-lazy-load.js +73 -81
  17. package/lib/ImageFormatter/index.js +90 -109
  18. package/lib/ImagePreviewerLightbox/index.js +27 -60
  19. package/lib/LastModifierFormatter/index.js +42 -62
  20. package/lib/LinkFormatter/index.js +59 -80
  21. package/lib/Loading/index.js +4 -13
  22. package/lib/LongTextFormatter/html-long-text-formatter.js +49 -60
  23. package/lib/LongTextFormatter/index.js +9 -28
  24. package/lib/LongTextFormatter/simple-long-text-formatter.js +52 -58
  25. package/lib/MTimeFormatter/index.js +39 -53
  26. package/lib/ModalPortal/index.js +30 -37
  27. package/lib/MultipleSelectFormatter/index.js +39 -55
  28. package/lib/NumberFormatter/index.js +35 -50
  29. package/lib/RateFormatter/index.js +37 -52
  30. package/lib/SelectItem/index.js +31 -46
  31. package/lib/SingleSelectFormatter/index.js +38 -54
  32. package/lib/TextFormatter/index.js +31 -44
  33. package/lib/UrlFormatter/index.js +27 -38
  34. package/lib/app.js +75 -80
  35. package/lib/cellFormatterFactory/index.js +17 -20
  36. package/lib/components/cell-editor/checkbox-editor.js +59 -66
  37. package/lib/components/cell-editor/collaborator-editor.js +113 -126
  38. package/lib/components/cell-editor/date-editor.js +99 -119
  39. package/lib/components/cell-editor/index.js +9 -40
  40. package/lib/components/cell-editor/link-editor.js +122 -140
  41. package/lib/components/cell-editor/multiple-select-editor.js +114 -127
  42. package/lib/components/cell-editor/number-editor.js +78 -86
  43. package/lib/components/cell-editor/single-select-editor.js +106 -120
  44. package/lib/components/cell-editor/text-editor.js +65 -72
  45. package/lib/components/cell-editor-dialog/pc-file-editor-dialog.js +31 -51
  46. package/lib/components/cell-editor-dialog/pc-files-addition/index.js +0 -1
  47. package/lib/components/cell-editor-dialog/pc-files-addition/pc-file-uploaded-item.js +0 -1
  48. package/lib/components/cell-editor-dialog/pc-files-preview/index.js +0 -1
  49. package/lib/components/cell-editor-dialog/pc-files-preview/pc-file-item-preview.js +0 -1
  50. package/lib/components/cell-editor-popover/mb-collaborator-editor-popover.js +105 -111
  51. package/lib/components/cell-editor-popover/mb-date-editor-popover.js +140 -157
  52. package/lib/components/cell-editor-popover/mb-link-editor-popover.js +103 -109
  53. package/lib/components/cell-editor-popover/mb-select-editor-popover.js +142 -155
  54. package/lib/components/cell-editor-popover/pc-collaborator-editor-popover.js +74 -89
  55. package/lib/components/cell-editor-popover/pc-date-editor-popover.js +88 -102
  56. package/lib/components/cell-editor-popover/pc-link-editor-popover.js +77 -91
  57. package/lib/components/cell-editor-popover/pc-select-editor-popover.js +91 -105
  58. package/lib/components/common/collaborator-item.js +43 -59
  59. package/lib/components/common/edit-editor-button.js +28 -39
  60. package/lib/components/common/link-editor-option.js +63 -71
  61. package/lib/components/common/mobile/mb-editor-header.js +39 -52
  62. package/lib/components/common/select-editor-option.js +58 -74
  63. package/lib/constants/cell-types.js +25 -54
  64. package/lib/constants/index.js +5 -28
  65. package/lib/formatterConfig/index.js +28 -59
  66. package/lib/index.js +31 -139
  67. package/lib/lang/index.js +11 -27
  68. package/lib/locals/de.js +1 -6
  69. package/lib/locals/en.js +1 -6
  70. package/lib/locals/fr.js +1 -6
  71. package/lib/locals/zh-CN.js +1 -6
  72. package/lib/toaster/alert.js +92 -106
  73. package/lib/toaster/index.js +3 -12
  74. package/lib/toaster/toast.js +103 -147
  75. package/lib/toaster/toastManager.js +78 -97
  76. package/lib/toaster/toaster.js +36 -52
  77. package/lib/utils/cell-value-validator.js +5 -9
  78. package/lib/utils/column-utils.js +5 -13
  79. package/lib/utils/editor-utils.js +3 -13
  80. package/lib/utils/markdown2html.js +1 -7
  81. package/lib/utils/normalize-long-text-value.js +3 -8
  82. package/lib/utils/number-precision.js +13 -31
  83. package/lib/utils/utils.js +8 -33
  84. package/lib/utils/value-format-utils.js +58 -108
  85. package/package.json +5 -5
  86. package/es/AutoNumberFormatter/index.css +0 -1
  87. package/es/AutoNumberFormatter/index.js +0 -36
  88. package/es/ButtonFormatter/index.css +0 -13
  89. package/es/ButtonFormatter/index.js +0 -56
  90. package/es/CTimeFormatter/index.css +0 -1
  91. package/es/CTimeFormatter/index.js +0 -58
  92. package/es/CheckboxFormatter/index.css +0 -1
  93. package/es/CheckboxFormatter/index.js +0 -45
  94. package/es/CollaboratorFormatter/index.css +0 -1
  95. package/es/CollaboratorFormatter/index.js +0 -91
  96. package/es/CollaboratorItem/index.css +0 -49
  97. package/es/CollaboratorItem/index.js +0 -64
  98. package/es/CreatorFormatter/index.css +0 -1
  99. package/es/CreatorFormatter/index.js +0 -87
  100. package/es/DateFormatter/index.css +0 -1
  101. package/es/DateFormatter/index.js +0 -60
  102. package/es/DurationFormatter/index.css +0 -1
  103. package/es/DurationFormatter/index.js +0 -38
  104. package/es/EmailFormatter/index.css +0 -5
  105. package/es/EmailFormatter/index.js +0 -36
  106. package/es/FileFormatter/index.css +0 -29
  107. package/es/FileFormatter/index.js +0 -64
  108. package/es/FileItemFormatter/index.js +0 -50
  109. package/es/FileUploader/index.js +0 -53
  110. package/es/FormulaFormatter/index.css +0 -19
  111. package/es/FormulaFormatter/index.js +0 -164
  112. package/es/GeolocationFormatter/index.css +0 -1
  113. package/es/GeolocationFormatter/index.js +0 -53
  114. package/es/ImageFormatter/images-lazy-load.js +0 -150
  115. package/es/ImageFormatter/index.css +0 -34
  116. package/es/ImageFormatter/index.js +0 -154
  117. package/es/ImagePreviewerLightbox/index.css +0 -87
  118. package/es/ImagePreviewerLightbox/index.js +0 -119
  119. package/es/LastModifierFormatter/index.css +0 -1
  120. package/es/LastModifierFormatter/index.js +0 -87
  121. package/es/LinkFormatter/index.css +0 -27
  122. package/es/LinkFormatter/index.js +0 -144
  123. package/es/Loading/index.css +0 -54
  124. package/es/Loading/index.js +0 -7
  125. package/es/LongTextFormatter/html-long-text-formatter.js +0 -96
  126. package/es/LongTextFormatter/index.css +0 -63
  127. package/es/LongTextFormatter/index.js +0 -29
  128. package/es/LongTextFormatter/simple-long-text-formatter.js +0 -104
  129. package/es/MTimeFormatter/index.css +0 -1
  130. package/es/MTimeFormatter/index.js +0 -58
  131. package/es/ModalPortal/index.js +0 -44
  132. package/es/MultipleSelectFormatter/index.css +0 -1
  133. package/es/MultipleSelectFormatter/index.js +0 -70
  134. package/es/NumberFormatter/index.css +0 -1
  135. package/es/NumberFormatter/index.js +0 -47
  136. package/es/RateFormatter/index.css +0 -1
  137. package/es/RateFormatter/index.js +0 -80
  138. package/es/SelectItem/index.js +0 -58
  139. package/es/SingleSelectFormatter/index.css +0 -1
  140. package/es/SingleSelectFormatter/index.js +0 -70
  141. package/es/TextFormatter/index.css +0 -1
  142. package/es/TextFormatter/index.js +0 -56
  143. package/es/UrlFormatter/index.css +0 -5
  144. package/es/UrlFormatter/index.js +0 -36
  145. package/es/app.css +0 -20
  146. package/es/app.js +0 -91
  147. package/es/assets/images/avatar/default_avatar.png +0 -0
  148. package/es/assets/images/file/192/excel.png +0 -0
  149. package/es/assets/images/file/192/file.png +0 -0
  150. package/es/assets/images/file/192/music.png +0 -0
  151. package/es/assets/images/file/192/pdf.png +0 -0
  152. package/es/assets/images/file/192/pic.png +0 -0
  153. package/es/assets/images/file/192/ppt.png +0 -0
  154. package/es/assets/images/file/192/txt.png +0 -0
  155. package/es/assets/images/file/192/video.png +0 -0
  156. package/es/assets/images/file/192/word.png +0 -0
  157. package/es/assets/images/file/24/excel.png +0 -0
  158. package/es/assets/images/file/24/file.png +0 -0
  159. package/es/assets/images/file/24/music.png +0 -0
  160. package/es/assets/images/file/24/pdf.png +0 -0
  161. package/es/assets/images/file/24/pic.png +0 -0
  162. package/es/assets/images/file/24/ppt.png +0 -0
  163. package/es/assets/images/file/24/txt.png +0 -0
  164. package/es/assets/images/file/24/video.png +0 -0
  165. package/es/assets/images/file/24/word.png +0 -0
  166. package/es/assets/images/folder/folder-192.png +0 -0
  167. package/es/assets/images/folder/folder-24.png +0 -0
  168. package/es/cellFormatterFactory/index.js +0 -25
  169. package/es/components/cell-editor/checkbox-editor.js +0 -104
  170. package/es/components/cell-editor/collaborator-editor.js +0 -236
  171. package/es/components/cell-editor/date-editor.js +0 -151
  172. package/es/components/cell-editor/index.js +0 -9
  173. package/es/components/cell-editor/link-editor.js +0 -303
  174. package/es/components/cell-editor/multiple-select-editor.js +0 -237
  175. package/es/components/cell-editor/number-editor.js +0 -154
  176. package/es/components/cell-editor/single-select-editor.js +0 -202
  177. package/es/components/cell-editor/text-editor.js +0 -122
  178. package/es/components/cell-editor-dialog/pc-file-editor-dialog.js +0 -46
  179. package/es/components/cell-editor-dialog/pc-files-addition/index.js +0 -0
  180. package/es/components/cell-editor-dialog/pc-files-addition/pc-file-uploaded-item.js +0 -0
  181. package/es/components/cell-editor-dialog/pc-files-preview/index.js +0 -0
  182. package/es/components/cell-editor-dialog/pc-files-preview/pc-file-item-preview.js +0 -0
  183. package/es/components/cell-editor-popover/mb-collaborator-editor-popover.js +0 -177
  184. package/es/components/cell-editor-popover/mb-date-editor-popover.js +0 -245
  185. package/es/components/cell-editor-popover/mb-link-editor-popover.js +0 -170
  186. package/es/components/cell-editor-popover/mb-select-editor-popover.js +0 -230
  187. package/es/components/cell-editor-popover/pc-collaborator-editor-popover.js +0 -109
  188. package/es/components/cell-editor-popover/pc-date-editor-popover.js +0 -142
  189. package/es/components/cell-editor-popover/pc-link-editor-popover.js +0 -114
  190. package/es/components/cell-editor-popover/pc-select-editor-popover.js +0 -143
  191. package/es/components/common/collaborator-item.js +0 -63
  192. package/es/components/common/edit-editor-button.js +0 -56
  193. package/es/components/common/link-editor-option.js +0 -113
  194. package/es/components/common/mobile/mb-editor-header.js +0 -48
  195. package/es/components/common/select-editor-option.js +0 -106
  196. package/es/constants/cell-types.js +0 -25
  197. package/es/constants/index.js +0 -49
  198. package/es/css/cell-editor.css +0 -614
  199. package/es/css/cell-formatter.css +0 -4
  200. package/es/css/custom-rc-calendar.css +0 -118
  201. package/es/formatterConfig/index.js +0 -31
  202. package/es/index.js +0 -31
  203. package/es/lang/index.js +0 -50
  204. package/es/locals/de.js +0 -2
  205. package/es/locals/en.js +0 -17
  206. package/es/locals/fr.js +0 -2
  207. package/es/locals/zh-CN.js +0 -17
  208. package/es/toaster/alert.js +0 -150
  209. package/es/toaster/index.js +0 -3
  210. package/es/toaster/toast.js +0 -179
  211. package/es/toaster/toastManager.js +0 -170
  212. package/es/toaster/toaster.js +0 -76
  213. package/es/utils/cell-value-validator.js +0 -31
  214. package/es/utils/column-utils.js +0 -7
  215. package/es/utils/editor-utils.js +0 -71
  216. package/es/utils/markdown2html.js +0 -62
  217. package/es/utils/normalize-long-text-value.js +0 -69
  218. package/es/utils/number-precision.js +0 -164
  219. package/es/utils/unified/index.js +0 -470
  220. package/es/utils/utils.js +0 -116
  221. package/es/utils/value-format-utils.js +0 -497
  222. package/es/utils/vfile/core.js +0 -172
  223. package/es/utils/vfile/index.js +0 -48
@@ -1,58 +1,34 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
6
- exports.default = void 0;
7
-
8
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
9
-
10
- var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
- var _react = _interopRequireWildcard(require("react"));
15
-
16
- var _propTypes = _interopRequireDefault(require("prop-types"));
17
-
18
- var _reactResponsive = _interopRequireDefault(require("react-responsive"));
19
-
20
- var _lang = require("../../lang");
21
-
22
- var _editEditorButton = _interopRequireDefault(require("../common/edit-editor-button"));
23
-
24
- var _selectEditorOption = _interopRequireDefault(require("../common/select-editor-option"));
25
-
26
- var _pcSelectEditorPopover = _interopRequireDefault(require("../cell-editor-popover/pc-select-editor-popover"));
27
-
28
- var _mbSelectEditorPopover = _interopRequireDefault(require("../cell-editor-popover/mb-select-editor-popover"));
29
-
30
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
31
-
32
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
33
-
34
- var propTypes = {
35
- isReadOnly: _propTypes.default.bool,
36
- value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.array]),
37
- column: _propTypes.default.object,
38
- onCommit: _propTypes.default.func,
39
- isSupportNewOption: _propTypes.default.bool,
40
- onAddNewOption: _propTypes.default.func
41
- };
1
+ import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
2
+ import _createClass from "@babel/runtime/helpers/esm/createClass";
3
+ import _inherits from "@babel/runtime/helpers/esm/inherits";
4
+ import _createSuper from "@babel/runtime/helpers/esm/createSuper";
5
+ import React, { Fragment } from 'react';
6
+ import MediaQuery from 'react-responsive';
7
+ import { getLocale } from '../../lang';
8
+ import EditEditorButton from '../common/edit-editor-button';
9
+ import SelectEditorOption from '../common/select-editor-option';
10
+ import PCSelectEditorPopover from '../cell-editor-popover/pc-select-editor-popover';
11
+ import MBSingleSelectPopover from '../cell-editor-popover/mb-select-editor-popover';
42
12
 
43
13
  var MultipleSelectEditor = /*#__PURE__*/function (_React$Component) {
44
- (0, _inheritsLoose2.default)(MultipleSelectEditor, _React$Component);
14
+ _inherits(MultipleSelectEditor, _React$Component);
15
+
16
+ var _super = _createSuper(MultipleSelectEditor);
45
17
 
46
18
  function MultipleSelectEditor(props) {
47
19
  var _this;
48
20
 
49
- _this = _React$Component.call(this, props) || this;
50
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onDocumentToggle", function (e) {
21
+ _classCallCheck(this, MultipleSelectEditor);
22
+
23
+ _this = _super.call(this, props);
24
+
25
+ _this.onDocumentToggle = function (e) {
51
26
  if (_this.editorContainer !== e.target && !_this.editorContainer.contains(e.target)) {
52
27
  _this.onClosePopover();
53
28
  }
54
- });
55
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getFormattedOptions", function () {
29
+ };
30
+
31
+ _this.getFormattedOptions = function () {
56
32
  var newValue = _this.state.newValue;
57
33
 
58
34
  if (Array.isArray(newValue) && newValue.length > 0) {
@@ -66,8 +42,9 @@ var MultipleSelectEditor = /*#__PURE__*/function (_React$Component) {
66
42
  }
67
43
 
68
44
  return [];
69
- });
70
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onAddOptionToggle", function (event) {
45
+ };
46
+
47
+ _this.onAddOptionToggle = function (event) {
71
48
  event.nativeEvent.stopImmediatePropagation();
72
49
  event.stopPropagation();
73
50
 
@@ -89,15 +66,17 @@ var MultipleSelectEditor = /*#__PURE__*/function (_React$Component) {
89
66
  isPopoverShow: isPopoverShow
90
67
  });
91
68
  }
92
- });
93
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onCommit", function (newValue) {
69
+ };
70
+
71
+ _this.onCommit = function (newValue) {
94
72
  var updated = {};
95
73
  var column = _this.props.column;
96
74
  updated[column.key] = newValue;
97
75
 
98
76
  _this.props.onCommit(updated);
99
- });
100
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onOptionItemToggle", function (option) {
77
+ };
78
+
79
+ _this.onOptionItemToggle = function (option) {
101
80
  var newValue = _this.state.newValue.slice();
102
81
 
103
82
  var optionIndex = newValue.findIndex(function (option_id) {
@@ -115,8 +94,9 @@ var MultipleSelectEditor = /*#__PURE__*/function (_React$Component) {
115
94
  }, function () {
116
95
  _this.onCommit(newValue);
117
96
  });
118
- });
119
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onDeleteOption", function (option) {
97
+ };
98
+
99
+ _this.onDeleteOption = function (option) {
120
100
  var newValue = _this.state.newValue.slice();
121
101
 
122
102
  var optionIndex = newValue.findIndex(function (option_id) {
@@ -129,13 +109,15 @@ var MultipleSelectEditor = /*#__PURE__*/function (_React$Component) {
129
109
  }, function () {
130
110
  _this.onCommit(newValue);
131
111
  });
132
- });
133
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onAddNewOption", function (optionName) {
112
+ };
113
+
114
+ _this.onAddNewOption = function (optionName) {
134
115
  _this.props.onAddNewOption(optionName);
135
116
 
136
117
  _this.onClosePopover();
137
- });
138
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "caculatePopoverPosition", function () {
118
+ };
119
+
120
+ _this.caculatePopoverPosition = function () {
139
121
  var POPOVER_MAX_HEIGHT = 200;
140
122
  var innerHeight = window.innerHeight;
141
123
 
@@ -158,18 +140,22 @@ var MultipleSelectEditor = /*#__PURE__*/function (_React$Component) {
158
140
  }
159
141
 
160
142
  return position;
161
- });
162
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onClosePopover", function () {
143
+ };
144
+
145
+ _this.onClosePopover = function () {
163
146
  _this.setState({
164
147
  isPopoverShow: false
165
148
  });
166
- });
167
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setEditorContainerRef", function (editorContainer) {
149
+ };
150
+
151
+ _this.setEditorContainerRef = function (editorContainer) {
168
152
  _this.editorContainer = editorContainer;
169
- });
170
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setEditorRef", function (editor) {
153
+ };
154
+
155
+ _this.setEditorRef = function (editor) {
171
156
  _this.editor = editor;
172
- });
157
+ };
158
+
173
159
  _this.state = {
174
160
  newValue: Array.isArray(props.value) ? props.value : [],
175
161
  isPopoverShow: false,
@@ -180,71 +166,72 @@ var MultipleSelectEditor = /*#__PURE__*/function (_React$Component) {
180
166
  return _this;
181
167
  }
182
168
 
183
- var _proto = MultipleSelectEditor.prototype;
184
-
185
- _proto.componentDidMount = function componentDidMount() {
186
- document.addEventListener('click', this.onDocumentToggle);
187
- };
188
-
189
- _proto.componentWillUnmount = function componentWillUnmount() {
190
- document.removeEventListener('click', this.onDocumentToggle);
191
- };
192
-
193
- _proto.render = function render() {
194
- var _this2 = this;
195
-
196
- var _this$state = this.state,
197
- isPopoverShow = _this$state.isPopoverShow,
198
- popoverPosition = _this$state.popoverPosition;
199
- var options = this.options;
200
- var selectedOptions = this.getFormattedOptions();
201
- return /*#__PURE__*/_react.default.createElement("div", {
202
- ref: this.setEditorContainerRef,
203
- className: "cell-editor dtable-ui-multiple-select-editor"
204
- }, /*#__PURE__*/_react.default.createElement("div", {
205
- ref: this.setEditorRef,
206
- className: "dtable-ui-select-editor-container",
207
- onClick: this.onAddOptionToggle
208
- }, selectedOptions.length === 0 && /*#__PURE__*/_react.default.createElement(_editEditorButton.default, {
209
- text: (0, _lang.getLocale)('Add_an_option')
210
- }), selectedOptions.length !== 0 && selectedOptions.map(function (option) {
211
- return /*#__PURE__*/_react.default.createElement(_selectEditorOption.default, {
212
- key: option.id,
213
- option: option,
169
+ _createClass(MultipleSelectEditor, [{
170
+ key: "componentDidMount",
171
+ value: function componentDidMount() {
172
+ document.addEventListener('click', this.onDocumentToggle);
173
+ }
174
+ }, {
175
+ key: "componentWillUnmount",
176
+ value: function componentWillUnmount() {
177
+ document.removeEventListener('click', this.onDocumentToggle);
178
+ }
179
+ }, {
180
+ key: "render",
181
+ value: function render() {
182
+ var _this2 = this;
183
+
184
+ var _this$state = this.state,
185
+ isPopoverShow = _this$state.isPopoverShow,
186
+ popoverPosition = _this$state.popoverPosition;
187
+ var options = this.options;
188
+ var selectedOptions = this.getFormattedOptions();
189
+ return /*#__PURE__*/React.createElement("div", {
190
+ ref: this.setEditorContainerRef,
191
+ className: "cell-editor dtable-ui-multiple-select-editor"
192
+ }, /*#__PURE__*/React.createElement("div", {
193
+ ref: this.setEditorRef,
194
+ className: "dtable-ui-select-editor-container",
195
+ onClick: this.onAddOptionToggle
196
+ }, selectedOptions.length === 0 && /*#__PURE__*/React.createElement(EditEditorButton, {
197
+ text: getLocale('Add_an_option')
198
+ }), selectedOptions.length !== 0 && selectedOptions.map(function (option) {
199
+ return /*#__PURE__*/React.createElement(SelectEditorOption, {
200
+ key: option.id,
201
+ option: option,
202
+ isShowRemoveIcon: true,
203
+ onDeleteSelectOption: _this2.onDeleteOption
204
+ });
205
+ })), isPopoverShow && /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(MediaQuery, {
206
+ query: "(min-width: 768px)"
207
+ }, /*#__PURE__*/React.createElement(PCSelectEditorPopover, {
208
+ popoverPosition: popoverPosition,
209
+ options: options,
210
+ selectedOptions: selectedOptions,
211
+ onOptionItemToggle: this.onOptionItemToggle,
212
+ isSupportNewOption: this.props.isSupportNewOption,
213
+ onAddNewOption: this.onAddNewOption
214
+ })), /*#__PURE__*/React.createElement(MediaQuery, {
215
+ query: "(max-width: 767.8px)"
216
+ }, /*#__PURE__*/React.createElement(MBSingleSelectPopover, {
217
+ isReadOnly: this.props.isReadOnly,
218
+ value: this.state.newValue,
219
+ column: this.props.column,
220
+ options: options,
221
+ onOptionItemToggle: this.onOptionItemToggle,
214
222
  isShowRemoveIcon: true,
215
- onDeleteSelectOption: _this2.onDeleteOption
216
- });
217
- })), isPopoverShow && /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactResponsive.default, {
218
- query: "(min-width: 768px)"
219
- }, /*#__PURE__*/_react.default.createElement(_pcSelectEditorPopover.default, {
220
- popoverPosition: popoverPosition,
221
- options: options,
222
- selectedOptions: selectedOptions,
223
- onOptionItemToggle: this.onOptionItemToggle,
224
- isSupportNewOption: this.props.isSupportNewOption,
225
- onAddNewOption: this.onAddNewOption
226
- })), /*#__PURE__*/_react.default.createElement(_reactResponsive.default, {
227
- query: "(max-width: 767.8px)"
228
- }, /*#__PURE__*/_react.default.createElement(_mbSelectEditorPopover.default, {
229
- isReadOnly: this.props.isReadOnly,
230
- value: this.state.newValue,
231
- column: this.props.column,
232
- options: options,
233
- onOptionItemToggle: this.onOptionItemToggle,
234
- isShowRemoveIcon: true,
235
- isSupportNewOption: this.props.isSupportNewOption,
236
- onAddNewOption: this.onAddNewOption,
237
- onClosePopover: this.onClosePopover
238
- }))));
239
- };
223
+ isSupportNewOption: this.props.isSupportNewOption,
224
+ onAddNewOption: this.onAddNewOption,
225
+ onClosePopover: this.onClosePopover
226
+ }))));
227
+ }
228
+ }]);
240
229
 
241
230
  return MultipleSelectEditor;
242
- }(_react.default.Component);
231
+ }(React.Component);
243
232
 
244
- (0, _defineProperty2.default)(MultipleSelectEditor, "defaultProps", {
233
+ MultipleSelectEditor.defaultProps = {
245
234
  isReadOnly: false,
246
235
  value: []
247
- });
248
- MultipleSelectEditor.propTypes = propTypes;
249
- var _default = MultipleSelectEditor;
250
- exports.default = _default;
236
+ };
237
+ export default MultipleSelectEditor;
@@ -1,41 +1,25 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
6
- exports.default = void 0;
7
-
8
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
9
-
10
- var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
- var _react = _interopRequireDefault(require("react"));
15
-
16
- var _propTypes = _interopRequireDefault(require("prop-types"));
17
-
18
- var _isHotkey = _interopRequireDefault(require("is-hotkey"));
19
-
20
- var _constants = require("../../constants");
21
-
22
- var _valueFormatUtils = require("../../utils/value-format-utils");
23
-
24
- var propTypes = {
25
- isReadOnly: _propTypes.default.bool,
26
- value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
27
- column: _propTypes.default.object,
28
- onCommit: _propTypes.default.func
29
- };
1
+ import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
2
+ import _createClass from "@babel/runtime/helpers/esm/createClass";
3
+ import _inherits from "@babel/runtime/helpers/esm/inherits";
4
+ import _createSuper from "@babel/runtime/helpers/esm/createSuper";
5
+ import React from 'react';
6
+ import isHotkey from 'is-hotkey';
7
+ import { NUMBER_TYPES } from '../../constants';
8
+ import { getNumberDisplayString, formatStringToNumber, formatNumberString } from '../../utils/value-format-utils';
30
9
 
31
10
  var NumberEditor = /*#__PURE__*/function (_React$Component) {
32
- (0, _inheritsLoose2.default)(NumberEditor, _React$Component);
11
+ _inherits(NumberEditor, _React$Component);
12
+
13
+ var _super = _createSuper(NumberEditor);
33
14
 
34
15
  function NumberEditor(props) {
35
16
  var _this;
36
17
 
37
- _this = _React$Component.call(this, props) || this;
38
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onEditorHandle", function () {
18
+ _classCallCheck(this, NumberEditor);
19
+
20
+ _this = _super.call(this, props);
21
+
22
+ _this.onEditorHandle = function () {
39
23
  if (_this.props.isReadOnly) {
40
24
  return;
41
25
  }
@@ -46,27 +30,29 @@ var NumberEditor = /*#__PURE__*/function (_React$Component) {
46
30
  }, function () {
47
31
  _this.input.focus();
48
32
  });
49
- });
50
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onCommit", function () {
33
+ };
34
+
35
+ _this.onCommit = function () {
51
36
  var updated = {};
52
37
  var column = _this.props.column;
53
38
  var inputValue = _this.state.inputValue ? _this.state.inputValue.toString() : '';
54
- var value = inputValue ? (0, _valueFormatUtils.formatStringToNumber)(inputValue) : ''; // format the number to submit
39
+ var value = inputValue ? formatStringToNumber(inputValue) : ''; // format the number to submit
55
40
 
56
41
  updated[column.key] = value;
57
42
 
58
43
  _this.props.onCommit(updated);
59
44
 
60
- var newValue = (0, _valueFormatUtils.getNumberDisplayString)(value, column.data); // format the number to display
45
+ var newValue = getNumberDisplayString(value, column.data); // format the number to display
61
46
 
62
47
  _this.setState({
63
48
  isEditorShow: false,
64
49
  textValue: newValue
65
50
  });
66
- });
67
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onChange", function (event) {
51
+ };
52
+
53
+ _this.onChange = function (event) {
68
54
  var value = event.target.value.trim();
69
- value = (0, _valueFormatUtils.formatNumberString)(value, _this.dataFormat); // format the number in changing
55
+ value = formatNumberString(value, _this.dataFormat); // format the number in changing
70
56
 
71
57
  if (value === _this.state.inputValue) {
72
58
  return;
@@ -75,46 +61,53 @@ var NumberEditor = /*#__PURE__*/function (_React$Component) {
75
61
  _this.setState({
76
62
  inputValue: value
77
63
  });
78
- });
79
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onBlur", function () {
64
+ };
65
+
66
+ _this.onBlur = function () {
80
67
  _this.onCommit();
81
- });
82
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onKeyDown", function (event) {
68
+ };
69
+
70
+ _this.onKeyDown = function (event) {
83
71
  var _event$currentTarget = event.currentTarget,
84
72
  selectionStart = _event$currentTarget.selectionStart,
85
73
  selectionEnd = _event$currentTarget.selectionEnd,
86
74
  value = _event$currentTarget.value;
87
75
 
88
- if ((0, _isHotkey.default)('enter', event)) {
76
+ if (isHotkey('enter', event)) {
89
77
  event.preventDefault();
90
78
 
91
79
  _this.onBlur();
92
80
  } else if (event.keyCode === 37 && selectionStart === 0 || event.keyCode === 39 && selectionEnd === value.length) {
93
81
  event.stopPropagation();
94
82
  }
95
- });
96
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onPaste", function (e) {
83
+ };
84
+
85
+ _this.onPaste = function (e) {
97
86
  e.stopPropagation();
98
- });
99
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onCut", function (e) {
87
+ };
88
+
89
+ _this.onCut = function (e) {
100
90
  e.stopPropagation();
101
- });
102
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getStyle", function () {
91
+ };
92
+
93
+ _this.getStyle = function () {
103
94
  return {
104
95
  width: '320px',
105
96
  textAlign: 'left'
106
97
  };
107
- });
108
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setInputRef", function (input) {
98
+ };
99
+
100
+ _this.setInputRef = function (input) {
109
101
  _this.input = input;
110
102
  return _this.input;
111
- });
103
+ };
104
+
112
105
  var _this$props = _this.props,
113
106
  _value = _this$props.value,
114
107
  _column = _this$props.column;
115
108
  var dataFormat = _column.data && _column.data.format;
116
- _this.dataFormat = dataFormat || _constants.NUMBER_TYPES.NUMBER;
117
- var initValue = (0, _valueFormatUtils.getNumberDisplayString)(_value, _column.data); // format the number to display
109
+ _this.dataFormat = dataFormat || NUMBER_TYPES.NUMBER;
110
+ var initValue = getNumberDisplayString(_value, _column.data); // format the number to display
118
111
 
119
112
  _this.state = {
120
113
  inputValue: initValue,
@@ -124,39 +117,38 @@ var NumberEditor = /*#__PURE__*/function (_React$Component) {
124
117
  return _this;
125
118
  }
126
119
 
127
- var _proto = NumberEditor.prototype;
128
-
129
- _proto.render = function render() {
130
- var style = this.getStyle();
131
- return /*#__PURE__*/_react.default.createElement("div", {
132
- className: "cell-editor number-editor"
133
- }, /*#__PURE__*/_react.default.createElement("div", {
134
- className: "number-editor-container"
135
- }, !this.state.isEditorShow && /*#__PURE__*/_react.default.createElement("div", {
136
- className: "form-control",
137
- style: style,
138
- onClick: this.onEditorHandle
139
- }, this.state.textValue), this.state.isEditorShow && /*#__PURE__*/_react.default.createElement("input", {
140
- ref: this.setInputRef,
141
- type: "text",
142
- className: "form-control",
143
- style: style,
144
- value: this.state.inputValue,
145
- onChange: this.onChange,
146
- onBlur: this.onBlur,
147
- onCut: this.onCut,
148
- onPaste: this.onPaste,
149
- onKeyDown: this.onKeyDown
150
- })));
151
- };
120
+ _createClass(NumberEditor, [{
121
+ key: "render",
122
+ value: function render() {
123
+ var style = this.getStyle();
124
+ return /*#__PURE__*/React.createElement("div", {
125
+ className: "cell-editor number-editor"
126
+ }, /*#__PURE__*/React.createElement("div", {
127
+ className: "number-editor-container"
128
+ }, !this.state.isEditorShow && /*#__PURE__*/React.createElement("div", {
129
+ className: "form-control",
130
+ style: style,
131
+ onClick: this.onEditorHandle
132
+ }, this.state.textValue), this.state.isEditorShow && /*#__PURE__*/React.createElement("input", {
133
+ ref: this.setInputRef,
134
+ type: "text",
135
+ className: "form-control",
136
+ style: style,
137
+ value: this.state.inputValue,
138
+ onChange: this.onChange,
139
+ onBlur: this.onBlur,
140
+ onCut: this.onCut,
141
+ onPaste: this.onPaste,
142
+ onKeyDown: this.onKeyDown
143
+ })));
144
+ }
145
+ }]);
152
146
 
153
147
  return NumberEditor;
154
- }(_react.default.Component);
148
+ }(React.Component);
155
149
 
156
- (0, _defineProperty2.default)(NumberEditor, "defaultProps", {
150
+ NumberEditor.defaultProps = {
157
151
  isReadOnly: false,
158
152
  value: ''
159
- });
160
- NumberEditor.propTypes = propTypes;
161
- var _default = NumberEditor;
162
- exports.default = _default;
153
+ };
154
+ export default NumberEditor;