dtable-ui-component 0.1.75-beta2 → 0.1.75-beta3

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