dtable-ui-component 5.3.1-beta1 → 5.3.1

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/CheckboxEditor/index.css +20 -3
  2. package/lib/CheckboxEditor/index.js +35 -98
  3. package/lib/CheckboxFormatter/index.js +9 -6
  4. package/lib/CollaboratorEditor/index.css +35 -12
  5. package/lib/CollaboratorEditor/index.js +212 -18
  6. package/lib/CollaboratorEditor/{mb-collaborator-editor → mb-collaborator-editor-popover}/index.js +29 -26
  7. package/lib/CollaboratorEditor/pc-collaborator-editor-popover/index.js +97 -0
  8. package/lib/CollaboratorItem/index.css +1 -1
  9. package/lib/CollaboratorItem/index.js +2 -6
  10. package/lib/DTableFiltersPopover/utils/index.js +7 -1
  11. package/lib/DTableFiltersPopover/widgets/filter-calendar.js +2 -2
  12. package/lib/DTableSelect/index.js +1 -3
  13. package/lib/DateEditor/index.js +51 -14
  14. package/lib/DateEditor/pc-date-editor-popover.js +12 -145
  15. package/lib/Department-editor/department-single-select.js +1 -1
  16. package/lib/Department-editor/index.js +4 -3
  17. package/lib/DepartmentSingleSelectFormatter/index.js +1 -2
  18. package/lib/FileEditor/index.js +11 -244
  19. package/lib/FileEditor/pc-files-addition/index.js +1 -0
  20. package/lib/FileEditor/pc-files-addition/pc-file-uploaded-item.js +1 -0
  21. package/lib/FileEditor/pc-files-preview/index.js +1 -0
  22. package/lib/FileEditor/pc-files-preview/pc-file-item-preview.js +1 -0
  23. package/lib/FileItemFormatter/assets/file/192/excel.png +0 -0
  24. package/lib/FileItemFormatter/assets/file/192/file.png +0 -0
  25. package/lib/FileItemFormatter/assets/file/192/music.png +0 -0
  26. package/lib/FileItemFormatter/assets/file/192/pdf.png +0 -0
  27. package/lib/FileItemFormatter/assets/file/192/pic.png +0 -0
  28. package/lib/FileItemFormatter/assets/file/192/ppt.png +0 -0
  29. package/lib/FileItemFormatter/assets/file/192/txt.png +0 -0
  30. package/lib/FileItemFormatter/assets/file/192/video.png +0 -0
  31. package/lib/FileItemFormatter/assets/file/192/word.png +0 -0
  32. package/lib/FileItemFormatter/assets/file/24/excel.png +0 -0
  33. package/lib/FileItemFormatter/assets/file/24/file.png +0 -0
  34. package/lib/FileItemFormatter/assets/file/24/music.png +0 -0
  35. package/lib/FileItemFormatter/assets/file/24/pdf.png +0 -0
  36. package/lib/FileItemFormatter/assets/file/24/pic.png +0 -0
  37. package/lib/FileItemFormatter/assets/file/24/ppt.png +0 -0
  38. package/lib/FileItemFormatter/assets/file/24/txt.png +0 -0
  39. package/lib/FileItemFormatter/assets/file/24/video.png +0 -0
  40. package/lib/FileItemFormatter/assets/file/24/word.png +0 -0
  41. package/lib/FileItemFormatter/assets/folder/folder-192.png +0 -0
  42. package/lib/FileItemFormatter/assets/folder/folder-24.png +0 -0
  43. package/lib/FileItemFormatter/index.js +20 -19
  44. package/lib/FileItemFormatter/utils.js +99 -0
  45. package/lib/FileUploader/index.js +14 -268
  46. package/lib/FormulaFormatter/index.js +1 -2
  47. package/lib/FormulaFormatter/utils.js +31 -0
  48. package/lib/LinkEditor/pc-link-editor-popover/index.js +1 -1
  49. package/lib/MultipleSelectEditor/index.css +9 -0
  50. package/lib/MultipleSelectEditor/index.js +177 -16
  51. package/lib/NumberEditor/index.js +77 -64
  52. package/lib/{RowExpandFormatter/RowExpandEmailFormatter → RowExpandEmailFormatter}/index.css +1 -1
  53. package/lib/{RowExpandFormatter/RowExpandEmailFormatter → RowExpandEmailFormatter}/index.js +1 -1
  54. package/lib/{RowExpandFormatter/RowExpandFileFormatter → RowExpandFileFormatter}/index.css +6 -6
  55. package/lib/{RowExpandFormatter/RowExpandFileFormatter → RowExpandFileFormatter}/index.js +1 -3
  56. package/lib/{RowExpandFormatter/RowExpandFileFormatter → RowExpandFileFormatter}/row-expand-file-item-formatter.js +11 -10
  57. package/lib/RowExpandFormatter/index.css +0 -26
  58. package/lib/RowExpandFormatter/index.js +100 -84
  59. package/lib/{RowExpandFormatter/RowExpandFormulaFormatter → RowExpandFormulaFormatter}/index.js +10 -11
  60. package/lib/{RowExpandFormatter/RowExpandImageFormatter → RowExpandImageFormatter}/index.css +6 -6
  61. package/lib/{RowExpandFormatter/RowExpandImageFormatter → RowExpandImageFormatter}/index.js +1 -1
  62. package/lib/{RowExpandFormatter/RowExpandImageFormatter → RowExpandImageFormatter}/row-expand-image-item-formatter.js +3 -3
  63. package/lib/{RowExpandFormatter/RowExpandLinkFormatter → RowExpandLinkFormatter}/collaborator-item-formatter.js +1 -1
  64. package/lib/{RowExpandFormatter/RowExpandLinkFormatter → RowExpandLinkFormatter}/index.js +5 -5
  65. package/lib/{RowExpandFormatter/RowExpandLinkFormatter → RowExpandLinkFormatter}/utils.js +1 -1
  66. package/lib/{RowExpandFormatter/RowExpandRateFormatter → RowExpandRateFormatter}/index.css +1 -1
  67. package/lib/RowExpandUrlFormatter/index.css +1 -0
  68. package/lib/{RowExpandFormatter/RowExpandUrlFormatter → RowExpandUrlFormatter}/index.js +3 -4
  69. package/lib/SingleSelectEditor/index.css +14 -0
  70. package/lib/SingleSelectEditor/index.js +156 -16
  71. package/lib/TextEditor/index.js +42 -113
  72. package/lib/constants/index.js +2 -34
  73. package/lib/css/cell-editor.css +2 -18
  74. package/lib/index.js +46 -74
  75. package/lib/lang/index.js +14 -16
  76. package/lib/locals/de.js +103 -0
  77. package/lib/locals/en.js +104 -0
  78. package/lib/locals/es.js +103 -0
  79. package/lib/locals/fr.js +103 -0
  80. package/lib/locals/pt.js +103 -0
  81. package/lib/locals/ru.js +103 -0
  82. package/lib/locals/zh-CN.js +104 -0
  83. package/lib/select-editor/index.js +6 -6
  84. package/lib/select-editor/{mb-select-editor → mb-select-editor-popover}/index.js +3 -3
  85. package/lib/select-editor/pc-select-editor-popover/index.css +71 -0
  86. package/lib/select-editor/pc-select-editor-popover/index.js +122 -0
  87. package/lib/utils/editor-utils.js +6 -1
  88. package/lib/utils/url.js +8 -119
  89. package/lib/utils/utils.js +2 -89
  90. package/package.json +2 -3
  91. package/lib/CollaboratorEditor/pc-collaborator-editor/index.js +0 -257
  92. package/lib/DeleteTip/index.js +0 -50
  93. package/lib/DigitalSignEditor/constants.js +0 -7
  94. package/lib/DigitalSignEditor/index.css +0 -69
  95. package/lib/DigitalSignEditor/index.js +0 -182
  96. package/lib/DigitalSignEditor/service.js +0 -38
  97. package/lib/DigitalSignEditor/signature-board/index.css +0 -35
  98. package/lib/DigitalSignEditor/signature-board/index.js +0 -135
  99. package/lib/DigitalSignEditor/signature-board/signature-tool.js +0 -396
  100. package/lib/DigitalSignEditor/utils.js +0 -29
  101. package/lib/DurationEditor/index.js +0 -111
  102. package/lib/EmailEditor/index.js +0 -59
  103. package/lib/FileEditor/addition-previewer/index.css +0 -1
  104. package/lib/FileEditor/addition-previewer/index.js +0 -52
  105. package/lib/FileEditor/addition-previewer/local-file-addition/index.css +0 -1
  106. package/lib/FileEditor/addition-previewer/local-file-addition/index.js +0 -252
  107. package/lib/FileEditor/constants.js +0 -7
  108. package/lib/FileEditor/files-previewer/file-previewer/dropdown-menu.js +0 -74
  109. package/lib/FileEditor/files-previewer/file-previewer/file-name-editor/index.css +0 -5
  110. package/lib/FileEditor/files-previewer/file-previewer/file-name-editor/index.js +0 -77
  111. package/lib/FileEditor/files-previewer/file-previewer/index.css +0 -88
  112. package/lib/FileEditor/files-previewer/file-previewer/index.js +0 -167
  113. package/lib/FileEditor/files-previewer/index.css +0 -56
  114. package/lib/FileEditor/files-previewer/index.js +0 -277
  115. package/lib/FileEditor/index.css +0 -6
  116. package/lib/FileEditor/utils.js +0 -22
  117. package/lib/FileUploader/index.css +0 -9
  118. package/lib/GeolocationEditor/country-editor.js +0 -319
  119. package/lib/GeolocationEditor/index.css +0 -641
  120. package/lib/GeolocationEditor/index.js +0 -241
  121. package/lib/GeolocationEditor/location-editor.js +0 -368
  122. package/lib/GeolocationEditor/map-editor/index.js +0 -456
  123. package/lib/GeolocationEditor/map-editor/large-editor/index.css +0 -137
  124. package/lib/GeolocationEditor/map-editor/large-editor/index.js +0 -461
  125. package/lib/GeolocationEditor/map-editor-utils.js +0 -153
  126. package/lib/GeolocationEditor/map-selection-editor/index.js +0 -455
  127. package/lib/GeolocationEditor/map-selection-editor/large-editor/index.css +0 -1
  128. package/lib/GeolocationEditor/map-selection-editor/large-editor/index.js +0 -447
  129. package/lib/GeolocationEditor/parse-geolocation.js +0 -282
  130. package/lib/GeolocationEditor/province-city-editor.js +0 -292
  131. package/lib/GeolocationEditor/province-editor.js +0 -226
  132. package/lib/GeolocationEditor/selector-header-item.js +0 -28
  133. package/lib/GeolocationEditor/selector-list.js +0 -33
  134. package/lib/GeolocationEditor/with-ref.js +0 -27
  135. package/lib/ImageEditor/addition-previewer/image-link/index.css +0 -45
  136. package/lib/ImageEditor/addition-previewer/image-link/index.js +0 -73
  137. package/lib/ImageEditor/addition-previewer/index.css +0 -106
  138. package/lib/ImageEditor/addition-previewer/index.js +0 -63
  139. package/lib/ImageEditor/addition-previewer/local-image-addition/index.css +0 -125
  140. package/lib/ImageEditor/addition-previewer/local-image-addition/index.js +0 -254
  141. package/lib/ImageEditor/constants.js +0 -7
  142. package/lib/ImageEditor/images-previewer/image-preview/index.css +0 -59
  143. package/lib/ImageEditor/images-previewer/image-preview/index.js +0 -155
  144. package/lib/ImageEditor/images-previewer/index.css +0 -18
  145. package/lib/ImageEditor/images-previewer/index.js +0 -140
  146. package/lib/ImageEditor/index.css +0 -24
  147. package/lib/ImageEditor/index.js +0 -194
  148. package/lib/ImageThumbnail/index.css +0 -20
  149. package/lib/ImageThumbnail/index.js +0 -136
  150. package/lib/RowExpandDialog/body/index.css +0 -21
  151. package/lib/RowExpandDialog/body/index.js +0 -279
  152. package/lib/RowExpandDialog/column-content/index.css +0 -43
  153. package/lib/RowExpandDialog/column-content/index.js +0 -50
  154. package/lib/RowExpandDialog/constants.js +0 -114
  155. package/lib/RowExpandDialog/header/index.css +0 -31
  156. package/lib/RowExpandDialog/header/index.js +0 -33
  157. package/lib/RowExpandDialog/index.css +0 -24
  158. package/lib/RowExpandDialog/index.js +0 -272
  159. package/lib/RowExpandDialog/utils.js +0 -83
  160. package/lib/RowExpandEditor/RowExpandAddBtn/index.css +0 -22
  161. package/lib/RowExpandEditor/RowExpandAddBtn/index.js +0 -24
  162. package/lib/RowExpandEditor/RowExpandCheckboxEditor/index.css +0 -18
  163. package/lib/RowExpandEditor/RowExpandCheckboxEditor/index.js +0 -43
  164. package/lib/RowExpandEditor/RowExpandCollaboratorEditor/index.css +0 -5
  165. package/lib/RowExpandEditor/RowExpandCollaboratorEditor/index.js +0 -232
  166. package/lib/RowExpandEditor/RowExpandDateEditor/index.js +0 -130
  167. package/lib/RowExpandEditor/RowExpandDepartmentEditor/index.js +0 -129
  168. package/lib/RowExpandEditor/RowExpandDigitalSignEditor/index.css +0 -13
  169. package/lib/RowExpandEditor/RowExpandDigitalSignEditor/index.js +0 -208
  170. package/lib/RowExpandEditor/RowExpandDurationEditor/index.js +0 -105
  171. package/lib/RowExpandEditor/RowExpandEmailEditor/index.css +0 -2
  172. package/lib/RowExpandEditor/RowExpandEmailEditor/index.js +0 -125
  173. package/lib/RowExpandEditor/RowExpandFileEditor/index.css +0 -1
  174. package/lib/RowExpandEditor/RowExpandFileEditor/index.js +0 -146
  175. package/lib/RowExpandEditor/RowExpandGeolocationEditor/index.css +0 -17
  176. package/lib/RowExpandEditor/RowExpandGeolocationEditor/index.js +0 -165
  177. package/lib/RowExpandEditor/RowExpandImageEditor/index.css +0 -6
  178. package/lib/RowExpandEditor/RowExpandImageEditor/index.js +0 -170
  179. package/lib/RowExpandEditor/RowExpandLongTextEditor/index.css +0 -6
  180. package/lib/RowExpandEditor/RowExpandLongTextEditor/index.js +0 -124
  181. package/lib/RowExpandEditor/RowExpandMultipleSelectEditor/index.css +0 -44
  182. package/lib/RowExpandEditor/RowExpandMultipleSelectEditor/index.js +0 -224
  183. package/lib/RowExpandEditor/RowExpandNumberEditor/index.js +0 -105
  184. package/lib/RowExpandEditor/RowExpandRateEditor/index.css +0 -13
  185. package/lib/RowExpandEditor/RowExpandRateEditor/index.js +0 -152
  186. package/lib/RowExpandEditor/RowExpandSingleSelectorEditor/index.css +0 -58
  187. package/lib/RowExpandEditor/RowExpandSingleSelectorEditor/index.js +0 -192
  188. package/lib/RowExpandEditor/RowExpandTextEditor/index.css +0 -4
  189. package/lib/RowExpandEditor/RowExpandTextEditor/index.js +0 -127
  190. package/lib/RowExpandEditor/RowExpandUrlEditor/index.css +0 -31
  191. package/lib/RowExpandEditor/RowExpandUrlEditor/index.js +0 -130
  192. package/lib/RowExpandEditor/constants.js +0 -44
  193. package/lib/RowExpandEditor/index.css +0 -0
  194. package/lib/RowExpandEditor/index.js +0 -32
  195. package/lib/RowExpandFormatter/RowExpandDepartmentFormatter/index.js +0 -27
  196. package/lib/RowExpandFormatter/RowExpandUrlFormatter/index.css +0 -1
  197. package/lib/RowExpandFormatter/constants.js +0 -60
  198. package/lib/UploadProgress/index.js +0 -38
  199. package/lib/UrlEditor/index.js +0 -62
  200. package/lib/common/editor-base.js +0 -53
  201. package/lib/constants/file.js +0 -96
  202. package/lib/constants/key-codes.js +0 -109
  203. package/lib/hooks/index.js +0 -16
  204. package/lib/locales/de.json +0 -163
  205. package/lib/locales/en.json +0 -163
  206. package/lib/locales/es.json +0 -163
  207. package/lib/locales/fr.json +0 -163
  208. package/lib/locales/pt.json +0 -163
  209. package/lib/locales/ru.json +0 -163
  210. package/lib/locales/zh-CN.json +0 -163
  211. package/lib/select-editor/pc-select-editor/index.css +0 -85
  212. package/lib/select-editor/pc-select-editor/index.js +0 -290
  213. package/lib/utils/cell-comparer.js +0 -35
  214. package/lib/utils/cell.js +0 -55
  215. package/lib/utils/column-utils.js +0 -25
  216. package/lib/utils/get-event-transfer.js +0 -75
  217. package/lib/utils/object-utils.js +0 -61
  218. /package/lib/CollaboratorEditor/{mb-collaborator-editor → mb-collaborator-editor-popover}/index.css +0 -0
  219. /package/lib/CollaboratorEditor/{pc-collaborator-editor → pc-collaborator-editor-popover}/index.css +0 -0
  220. /package/lib/{RowExpandFormatter/RowExpandLinkFormatter → RowExpandLinkFormatter}/index.css +0 -0
  221. /package/lib/{RowExpandFormatter/RowExpandLinkFormatter → RowExpandLinkFormatter}/value-display-utils.js +0 -0
  222. /package/lib/{RowExpandFormatter/RowExpandRateFormatter → RowExpandRateFormatter}/index.js +0 -0
  223. /package/lib/select-editor/{mb-select-editor → mb-select-editor-popover}/index.css +0 -0
@@ -1,165 +0,0 @@
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 _dtableUtils = require("dtable-utils");
10
- var _constants = require("../../constants");
11
- var _RowExpandAddBtn = _interopRequireDefault(require("../RowExpandAddBtn"));
12
- var _lang = require("../../lang");
13
- var _GeolocationEditor = _interopRequireDefault(require("../../GeolocationEditor"));
14
- require("./index.css");
15
- class RowExpandGeolocationEditor extends _react.default.Component {
16
- constructor(props) {
17
- super(props);
18
- this.onKeyDown = e => {
19
- if (e.keyCode === _constants.KeyCodes.Enter && this.props.isEditorFocus && !this.state.isShowEditor) {
20
- this.setState({
21
- isShowEditor: true
22
- });
23
- }
24
- };
25
- this.hideEditor = event => {
26
- if (!this.state.isShowEditor || !event.target || event.target.tagName.toUpperCase() === 'INPUT' || this.editorContainer.contains(event.target)) return;
27
- if (this.state.isShowEditor && this.editor.getLargeEditorState()) return;
28
- this.setState({
29
- isShowEditor: false
30
- });
31
- };
32
- this.toggleEditor = () => {
33
- this.props.updateTabIndex(this.props.columnIndex);
34
- this.setState({
35
- isShowEditor: !this.state.isShowEditor
36
- }, () => {
37
- if (!this.state.isShowEditor) {
38
- if ((0, _dtableUtils.isEmptyObject)(this.state.value)) {
39
- var _this$addBtnRef$curre;
40
- // eslint-disable-next-line no-unused-expressions
41
- (_this$addBtnRef$curre = this.addBtnRef.current) === null || _this$addBtnRef$curre === void 0 ? void 0 : _this$addBtnRef$curre.focus();
42
- } else {
43
- this.geoLocationRef.focus();
44
- }
45
- }
46
- });
47
- };
48
- this.onFocus = () => {
49
- this.props.updateTabIndex(this.props.columnIndex);
50
- };
51
- this.onCommit = value => {
52
- this.props.onCommit(value);
53
- this.setState({
54
- value
55
- });
56
- this.toggleEditor();
57
- };
58
- this.renderGeoLocation = () => {
59
- let {
60
- isEditorFocus
61
- } = this.props;
62
- let {
63
- value
64
- } = this.state;
65
- if (!(0, _dtableUtils.isEmptyObject)(value)) {
66
- const displayContent = this.getLocationInfo(value);
67
- return /*#__PURE__*/_react.default.createElement("div", {
68
- tabIndex: 0,
69
- style: isEditorFocus ? _constants.ROW_EXPAND_BTN_FOCUS_STYLE : {},
70
- onFocus: this.onFocus,
71
- role: "button",
72
- ref: ref => this.geoLocationRef = ref,
73
- className: "dtable-ui-row-expand-geolocation-value",
74
- onClick: this.toggleEditor
75
- }, displayContent);
76
- }
77
- return /*#__PURE__*/_react.default.createElement(_RowExpandAddBtn.default, {
78
- ref: this.addBtnRef,
79
- onFocus: this.onFocus,
80
- onClick: this.toggleEditor,
81
- isFocus: isEditorFocus,
82
- text: (0, _lang.getLocale)('Edit_Location')
83
- });
84
- };
85
- this.getLocationInfo = value => {
86
- const {
87
- column
88
- } = this.props;
89
- const {
90
- dtableBaiduMapKey,
91
- dtableMineMapKey
92
- } = window.dtable;
93
- const isBaiduMap = !!(dtableBaiduMapKey || dtableMineMapKey);
94
- return (0, _dtableUtils.getGeolocationDisplayString)(value, column.data, {
95
- isBaiduMap,
96
- hyphen: ' '
97
- });
98
- };
99
- const {
100
- row,
101
- column: _column,
102
- valueKey
103
- } = props;
104
- this.state = {
105
- isShowEditor: false,
106
- value: row[_column[valueKey]] || {}
107
- };
108
- this.addBtnRef = /*#__PURE__*/_react.default.createRef();
109
- this.isGeolocationLargeMapOpen = false;
110
- }
111
- componentDidMount() {
112
- document.addEventListener('mousedown', this.hideEditor);
113
- document.addEventListener('keydown', this.onKeyDown);
114
- }
115
- UNSAFE_componentWillReceiveProps(nextProps) {
116
- const {
117
- column,
118
- row,
119
- valueKey
120
- } = nextProps;
121
- if (row._id !== this.props.row._id) {
122
- this.setState({
123
- value: row[column[valueKey]] || {},
124
- isShowEditor: false
125
- });
126
- }
127
- }
128
- componentDidUpdate(prevProps, prevState) {
129
- if (this.state.isShowEditor !== prevState.isShowEditor) {
130
- if (this.state.isShowEditor === true && this.props.onEditorOpen) {
131
- this.props.onEditorOpen();
132
- }
133
- if (this.state.isShowEditor === false && this.props.onEditorClose) {
134
- this.props.onEditorClose();
135
- }
136
- }
137
- }
138
- componentWillUnmount() {
139
- document.removeEventListener('mousedown', this.hideEditor);
140
- document.removeEventListener('keydown', this.onKeyDown);
141
- }
142
- render() {
143
- const {
144
- column,
145
- row
146
- } = this.props;
147
- const {
148
- value
149
- } = this.state;
150
- return /*#__PURE__*/_react.default.createElement("div", {
151
- ref: ref => this.editorContainer = ref,
152
- className: "mt-2"
153
- }, this.renderGeoLocation(), this.state.isShowEditor && /*#__PURE__*/_react.default.createElement(_GeolocationEditor.default, {
154
- getInstance: ref => this.editor = ref,
155
- isInModal: true,
156
- column: column,
157
- row: row,
158
- value: value,
159
- onCommit: this.onCommit,
160
- onCommitCancel: this.toggleEditor,
161
- onPressTab: this.props.onPressTab
162
- }));
163
- }
164
- }
165
- var _default = exports.default = RowExpandGeolocationEditor;
@@ -1,6 +0,0 @@
1
- .dtable-ui-row-expand-image-container {
2
- display: flex;
3
- flex-wrap: wrap;
4
- margin-left: -5px;
5
- margin-right: -5px;
6
- }
@@ -1,170 +0,0 @@
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 _constants = require("../../constants");
10
- var _RowExpandAddBtn = _interopRequireDefault(require("../RowExpandAddBtn"));
11
- var _lang = require("../../lang");
12
- var _ImagePreviewerLightbox = _interopRequireDefault(require("../../ImagePreviewerLightbox"));
13
- var _ImageThumbnail = _interopRequireDefault(require("../../ImageThumbnail"));
14
- var _ImageEditor = _interopRequireDefault(require("../../ImageEditor"));
15
- require("./index.css");
16
- class RowExpandImageEditor extends _react.default.Component {
17
- constructor(props) {
18
- super(props);
19
- this.onKeyDown = e => {
20
- if (e.keyCode === _constants.KeyCodes.Enter && this.props.isEditorFocus && !this.state.isShowImageEditor) {
21
- this.setState({
22
- isShowImageEditor: true
23
- });
24
- }
25
- };
26
- this.onFocus = () => {
27
- if (this.props.updateTabIndex) {
28
- this.props.updateTabIndex(this.props.columnIndex);
29
- }
30
- };
31
- this.onToggle = () => {
32
- if (this.props.updateTabIndex) {
33
- this.props.updateTabIndex(this.props.columnIndex);
34
- }
35
- this.setState({
36
- isShowImageEditor: !this.state.isShowImageEditor
37
- });
38
- };
39
- this.onCommit = value => {
40
- this.setState({
41
- imageContainer: value,
42
- isShowImageEditor: !this.state.isShowImageEditor
43
- });
44
- this.props.onCommit(value);
45
- };
46
- this.setLargeImageIndex = index => {
47
- this.setState({
48
- largeImageIndex: index
49
- });
50
- };
51
- this.moveToNextImage = () => {
52
- let value = this.getValue();
53
- this.setState(prevState => ({
54
- largeImageIndex: (prevState.largeImageIndex + 1) % value.length
55
- }));
56
- };
57
- this.moveToPrevImage = () => {
58
- let value = this.getValue();
59
- this.setState(prevState => ({
60
- largeImageIndex: (prevState.largeImageIndex + value.length - 1) % value.length
61
- }));
62
- };
63
- this.hideLargeImage = () => {
64
- this.setLargeImageIndex(-1);
65
- };
66
- this.getValue = () => {
67
- let {
68
- column,
69
- row,
70
- valueKey
71
- } = this.props;
72
- let {
73
- imageContainer
74
- } = this.state;
75
- return imageContainer ? imageContainer : row[column[valueKey]];
76
- };
77
- this.deleteImage = index => {
78
- let value = this.getValue();
79
- let updatedValue = value.slice(0);
80
- updatedValue.splice(index, 1);
81
- this.setState({
82
- imageContainer: updatedValue
83
- });
84
- this.props.onCommit(updatedValue);
85
- };
86
- this.getImageArray = value => {
87
- const {
88
- config
89
- } = this.props;
90
- return value.map((imageSrc, index) => {
91
- return /*#__PURE__*/_react.default.createElement(_ImageThumbnail.default, {
92
- key: "image-".concat(index),
93
- index: index,
94
- src: imageSrc,
95
- onClick: this.setLargeImageIndex,
96
- deleteImage: this.deleteImage,
97
- config: config
98
- });
99
- });
100
- };
101
- this.state = {
102
- isShowImageEditor: false,
103
- imageContainer: null,
104
- largeImageIndex: -1
105
- };
106
- }
107
- componentDidMount() {
108
- document.addEventListener('keydown', this.onKeyDown);
109
- }
110
- UNSAFE_componentWillReceiveProps(nextProps) {
111
- const {
112
- column,
113
- row,
114
- valueKey
115
- } = nextProps;
116
- if (row._id !== this.props.row._id) {
117
- this.setState({
118
- imageContainer: row[column[valueKey]] || [],
119
- isShowImageEditor: false,
120
- largeImageIndex: -1
121
- });
122
- }
123
- }
124
- componentDidUpdate(prevProps, prevState) {
125
- if (this.state.isShowImageEditor !== prevState.isShowImageEditor) {
126
- if (this.state.isShowImageEditor === true && this.props.onEditorOpen) {
127
- this.props.onEditorOpen();
128
- }
129
- if (this.state.isShowImageEditor === false && this.props.onEditorClose) {
130
- this.props.onEditorClose();
131
- }
132
- }
133
- }
134
- componentWillUnmount() {
135
- document.removeEventListener('keydown', this.onKeyDown);
136
- }
137
- render() {
138
- const {
139
- isEditorFocus
140
- } = this.props;
141
- let {
142
- isShowImageEditor,
143
- largeImageIndex
144
- } = this.state;
145
- let value = this.getValue();
146
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
147
- className: "dtable-ui-row-expand-image-editor mt-2"
148
- }, /*#__PURE__*/_react.default.createElement(_RowExpandAddBtn.default, {
149
- isFocus: isEditorFocus,
150
- text: (0, _lang.getLocale)('Add_images'),
151
- onFocus: this.onFocus,
152
- onClick: this.onToggle
153
- }), /*#__PURE__*/_react.default.createElement("div", {
154
- className: "dtable-ui-row-expand-image-container"
155
- }, Array.isArray(value) && value.length > 0 && this.getImageArray(value))), isShowImageEditor && /*#__PURE__*/_react.default.createElement(_ImageEditor.default, {
156
- value: value,
157
- isInModal: true,
158
- onToggle: this.onToggle,
159
- onCommit: this.onCommit,
160
- uploadFile: this.props.uploadFile
161
- }), largeImageIndex > -1 && /*#__PURE__*/_react.default.createElement(_ImagePreviewerLightbox.default, {
162
- imageItems: value,
163
- imageIndex: largeImageIndex,
164
- closeImagePopup: this.hideLargeImage,
165
- moveToPrevImage: this.moveToPrevImage,
166
- moveToNextImage: this.moveToNextImage
167
- }));
168
- }
169
- }
170
- var _default = exports.default = RowExpandImageEditor;
@@ -1,6 +0,0 @@
1
- .sf-long-text-inline-editor-container:not(.preview) {
2
- height: 300px;
3
- border-color: #1991eb;
4
- outline: 0;
5
- box-shadow: 0 0 0 2px rgba(70, 127, 207, .25);
6
- }
@@ -1,124 +0,0 @@
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 _toaster = _interopRequireDefault(require("../../toaster"));
11
- var _Loading = _interopRequireDefault(require("../../Loading"));
12
- var _reactI18next = require("react-i18next");
13
- var _seafileEditor = require("@seafile/seafile-editor");
14
- var _constants = require("../../constants");
15
- var _cell = require("../../utils/cell");
16
- var _lang = require("../../lang");
17
- require("./index.css");
18
- class RowExpandLongTextEditor extends _react.default.Component {
19
- constructor(props) {
20
- super(props);
21
- this.convertMarkdown = value => {
22
- const newValue = value && typeof value === 'object' ? value.text : value;
23
- this.setState({
24
- value: newValue,
25
- isLoading: false
26
- });
27
- };
28
- this.onSaveEditorValue = value => {
29
- if ((0, _cell.isLongTextValueExceedLimit)(value)) {
30
- _toaster.default.closeAll();
31
- _toaster.default.danger((0, _lang.getLocale)(_constants.LONG_TEXT_EXCEED_LIMIT_MESSAGE), {
32
- duration: null
33
- });
34
- return;
35
- }
36
- this.onCommit(value);
37
- this.isLongTextValueChanged = false;
38
- };
39
- this.onCommit = value => {
40
- this.props.onCommit(value);
41
- };
42
- this.openEditor = () => {
43
- this.editorRef.current.openEditor();
44
- };
45
- this.closeEditor = () => {
46
- this.editorRef.current.closeEditor();
47
- };
48
- this.onClick = () => {
49
- const {
50
- columnIndex
51
- } = this.props;
52
- this.props.updateTabIndex && this.props.updateTabIndex(columnIndex);
53
- };
54
- this.state = {
55
- isLoading: true,
56
- value: ''
57
- };
58
- this.editorRef = /*#__PURE__*/(0, _react.createRef)();
59
- }
60
- componentDidMount() {
61
- this.convertMarkdown(this.props.value);
62
- }
63
- UNSAFE_componentWillReceiveProps(nextProps) {
64
- var _this$editorRef, _this$editorRef$curre;
65
- const {
66
- column,
67
- row,
68
- isEditorFocus: nextIsEditorFocus,
69
- valueKey
70
- } = nextProps;
71
- const {
72
- column: currentColumn,
73
- row: currentRow,
74
- isEditorFocus
75
- } = this.props;
76
- const value = row[column[valueKey]];
77
- const currentValue = currentRow[currentColumn[valueKey]];
78
- if (value !== currentValue && !((_this$editorRef = this.editorRef) !== null && _this$editorRef !== void 0 && (_this$editorRef$curre = _this$editorRef.current) !== null && _this$editorRef$curre !== void 0 && _this$editorRef$curre.enableEdit)) {
79
- this.setState({
80
- isLoading: true
81
- }, () => {
82
- this.convertMarkdown(value);
83
- });
84
- }
85
- if (isEditorFocus && !nextIsEditorFocus) {
86
- this.closeEditor();
87
- }
88
- if (!isEditorFocus && nextIsEditorFocus) {
89
- this.openEditor();
90
- }
91
- }
92
- render() {
93
- const {
94
- column,
95
- longTextEditorAPI,
96
- lang,
97
- longTextEditorI18n
98
- } = this.props;
99
- const {
100
- isLoading,
101
- value
102
- } = this.state;
103
- if (isLoading) return null;
104
- return /*#__PURE__*/_react.default.createElement(_react.Suspense, {
105
- fallback: /*#__PURE__*/_react.default.createElement("div", {
106
- className: "d-center-middle"
107
- }, /*#__PURE__*/_react.default.createElement(_Loading.default, null))
108
- }, /*#__PURE__*/_react.default.createElement(_reactI18next.I18nextProvider, {
109
- i18n: longTextEditorI18n
110
- }, /*#__PURE__*/_react.default.createElement(_seafileEditor.LongTextInlineEditor, {
111
- ref: this.editorRef,
112
- lang: lang,
113
- headerName: column.name,
114
- value: value || '',
115
- autoSave: true,
116
- saveDelay: 20 * 1000,
117
- isCheckBrowser: true,
118
- onClick: this.onClick,
119
- editorApi: longTextEditorAPI,
120
- onSaveEditorValue: this.onSaveEditorValue
121
- })));
122
- }
123
- }
124
- var _default = exports.default = RowExpandLongTextEditor;
@@ -1,44 +0,0 @@
1
- @import url('../RowExpandSingleSelectorEditor/index.css');
2
-
3
- .dtable-ui-row-expand-select-options {
4
- min-height: 30px;
5
- cursor: pointer;
6
- display: flex;
7
- flex-direction: row;
8
- align-items: center;
9
- justify-content: flex-start;
10
- flex-wrap: wrap;
11
- }
12
-
13
- .dtable-ui-row-expand-select-options .dtable-ui-select-option.dtable-ui-multiple-select-option {
14
- margin-right: 10px !important;
15
- display: inline-flex;
16
- max-width: 250px;
17
- }
18
-
19
- .dtable-ui-row-expand-select-options .dtable-ui-multiple-select-option .dtable-ui-select-option-name {
20
- max-width: 250px;
21
- overflow: hidden;
22
- text-overflow: ellipsis;
23
- }
24
-
25
- .dtable-ui-row-expand-select-options .dtable-ui-multiple-select-option .dtable-ui-select-option-remove {
26
- width: 16px;
27
- text-align: right;
28
- }
29
-
30
- .dtable-ui-row-expand-select-options .dtable-ui-multiple-select-option .dtable-ui-select-option-remove .remove-icon {
31
- display: inline-block;
32
- position: relative;
33
- right: -2px;
34
- width: 14px;
35
- height: 20px;
36
- cursor: pointer;
37
- }
38
-
39
- .dtable-ui-row-expand-select-options .dtable-ui-multiple-select-option .dtable-ui-select-option-remove .dtable-font {
40
- display: inline-block;
41
- font-size: 12px;
42
- color: #999;
43
- transform: scale(0.8);
44
- }