@lemon-fe/components 1.1.8 → 1.2.0-alpha.2

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 (100) hide show
  1. package/es/base-table/index.js +10 -3
  2. package/es/base-table/locale/en_US.d.ts +3 -0
  3. package/es/base-table/locale/en_US.js +5 -0
  4. package/es/base-table/locale/locale.d.ts +4 -0
  5. package/es/base-table/locale/locale.js +1 -0
  6. package/es/base-table/locale/zh_CN.d.ts +3 -0
  7. package/es/base-table/locale/zh_CN.js +5 -0
  8. package/es/color-picker/index.js +6 -2
  9. package/es/color-picker/locale/en_US.d.ts +3 -0
  10. package/es/color-picker/locale/en_US.js +4 -0
  11. package/es/color-picker/locale/locale.d.ts +3 -0
  12. package/es/color-picker/locale/locale.js +1 -0
  13. package/es/color-picker/locale/zh_CN.d.ts +3 -0
  14. package/es/color-picker/locale/zh_CN.js +4 -0
  15. package/es/data-grid/cell-editors/select.d.ts +2 -2
  16. package/es/data-grid/cell-editors/select.js +1 -1
  17. package/es/data-grid/cell-editors/text.js +10 -1
  18. package/es/data-grid/components/custom-panel/field-modal.js +17 -9
  19. package/es/data-grid/components/custom-panel/index.js +11 -7
  20. package/es/data-grid/components/custom-panel/item.js +6 -2
  21. package/es/data-grid/components/search.js +8 -4
  22. package/es/data-grid/components/selected.js +9 -2
  23. package/es/data-grid/hooks.d.ts +4 -4
  24. package/es/data-grid/index.d.ts +44 -27
  25. package/es/data-grid/index.js +157 -145
  26. package/es/data-grid/locale/en_US.d.ts +3 -0
  27. package/es/data-grid/locale/en_US.js +55 -0
  28. package/es/data-grid/locale/locale.d.ts +35 -0
  29. package/es/data-grid/locale/locale.js +1 -0
  30. package/es/data-grid/locale/zh_CN.d.ts +3 -0
  31. package/es/data-grid/locale/zh_CN.js +55 -0
  32. package/es/data-grid/renderer/actions.js +11 -1
  33. package/es/data-grid/typings.d.ts +2 -2
  34. package/es/date-picker/index.d.ts +2 -0
  35. package/es/date-picker/index.js +21 -0
  36. package/es/duration-picker/index.d.ts +1 -0
  37. package/es/duration-picker/index.js +81 -52
  38. package/es/duration-picker/locale/en_US.d.ts +3 -0
  39. package/es/duration-picker/locale/en_US.js +11 -0
  40. package/es/duration-picker/locale/locale.d.ts +10 -0
  41. package/es/duration-picker/locale/locale.js +1 -0
  42. package/es/duration-picker/locale/zh_CN.d.ts +3 -0
  43. package/es/duration-picker/locale/zh_CN.js +11 -0
  44. package/es/empty/index.d.ts +9 -0
  45. package/es/{empty-image → empty}/index.js +10 -2
  46. package/es/filter/index.js +87 -62
  47. package/es/filter/locale/en_US.d.ts +3 -0
  48. package/es/filter/locale/en_US.js +22 -0
  49. package/es/filter/locale/locale.d.ts +22 -0
  50. package/es/filter/locale/locale.js +1 -0
  51. package/es/filter/locale/zh_CN.d.ts +3 -0
  52. package/es/filter/locale/zh_CN.js +22 -0
  53. package/es/index.d.ts +21 -7
  54. package/es/index.js +17 -6
  55. package/es/locale/en_US.d.ts +3 -0
  56. package/es/locale/en_US.js +26 -0
  57. package/es/locale/locale.d.ts +20 -0
  58. package/es/locale/locale.js +5 -0
  59. package/es/locale/zh_CN.d.ts +3 -0
  60. package/es/locale/zh_CN.js +26 -0
  61. package/es/locale-receiver.d.ts +3 -0
  62. package/es/locale-receiver.js +18 -0
  63. package/es/message/index.d.ts +3 -0
  64. package/es/message/index.js +56 -0
  65. package/es/modal/index.js +0 -2
  66. package/es/others.d.ts +2 -0
  67. package/es/others.js +45 -0
  68. package/es/popup/index.js +2 -1
  69. package/es/select/index.d.ts +2 -0
  70. package/es/select/index.js +19 -0
  71. package/es/select-panel/index.js +15 -4
  72. package/es/select-panel/locale/en_US.d.ts +3 -0
  73. package/es/select-panel/locale/en_US.js +5 -0
  74. package/es/select-panel/locale/locale.d.ts +4 -0
  75. package/es/select-panel/locale/locale.js +1 -0
  76. package/es/select-panel/locale/zh_CN.d.ts +3 -0
  77. package/es/select-panel/locale/zh_CN.js +5 -0
  78. package/es/select-view/index.js +10 -3
  79. package/es/select-view/locale/en_US.d.ts +3 -0
  80. package/es/select-view/locale/en_US.js +6 -0
  81. package/es/select-view/locale/locale.d.ts +5 -0
  82. package/es/select-view/locale/locale.js +1 -0
  83. package/es/select-view/locale/zh_CN.d.ts +3 -0
  84. package/es/select-view/locale/zh_CN.js +6 -0
  85. package/es/sider-tree/index.d.ts +1 -1
  86. package/es/sider-tree/index.js +7 -3
  87. package/es/sider-tree/locale/en_US.d.ts +3 -0
  88. package/es/sider-tree/locale/en_US.js +5 -0
  89. package/es/sider-tree/locale/locale.d.ts +4 -0
  90. package/es/sider-tree/locale/locale.js +1 -0
  91. package/es/sider-tree/locale/zh_CN.d.ts +3 -0
  92. package/es/sider-tree/locale/zh_CN.js +5 -0
  93. package/es/sider-tree/tree-node-title.js +6 -2
  94. package/es/table/index.js +1 -1
  95. package/es/time-picker/index.d.ts +2 -0
  96. package/es/time-picker/index.js +21 -0
  97. package/es/utils.d.ts +2 -1
  98. package/es/utils.js +10 -0
  99. package/package.json +3 -3
  100. package/es/empty-image/index.d.ts +0 -2
@@ -19,12 +19,14 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
19
19
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
20
20
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
21
21
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
22
- import React, { useMemo, useState, useEffect, useRef, forwardRef, useContext } from 'react';
23
22
  import { Table as AntdTable, ConfigProvider } from 'antd';
23
+ import React, { useMemo, useState, useEffect, useRef, forwardRef, useContext } from 'react';
24
24
  import classNames from 'classnames';
25
25
  import { get } from 'lodash';
26
26
  import ResizeObserver from 'rc-resize-observer';
27
27
  import { PREFIX_CLS } from "../constants";
28
+ import { useLocaleReceiver } from "../locale-receiver";
29
+ import { parseLocalTemplate } from "../locale/locale";
28
30
  import Actions from "./actions";
29
31
  import BaseTableContext from "./base-table-context";
30
32
  import empty from "./empty.png";
@@ -104,6 +106,9 @@ function BaseTable(props, _ref) {
104
106
  localeProp = props.locale,
105
107
  restProps = _objectWithoutProperties(props, _excluded2);
106
108
  var antPrefixCls = useContext(ConfigProvider.ConfigContext).getPrefixCls('table');
109
+ var _useLocaleReceiver = useLocaleReceiver('BaseTable'),
110
+ _useLocaleReceiver2 = _slicedToArray(_useLocaleReceiver, 1),
111
+ baseTableLocale = _useLocaleReceiver2[0];
107
112
  var fullTableRef = useRef(null);
108
113
  var _useState = useState(new Map()),
109
114
  _useState2 = _slicedToArray(_useState, 2),
@@ -372,7 +377,7 @@ function BaseTable(props, _ref) {
372
377
  className: "".concat(PREFIX_CLS, "-table-empty")
373
378
  }, /*#__PURE__*/React.createElement("img", {
374
379
  src: empty
375
- }), /*#__PURE__*/React.createElement("div", null, "\u6682\u65E0\u6570\u636E"))
380
+ }), /*#__PURE__*/React.createElement("div", null, baseTableLocale.noDataText))
376
381
  }, localeProp)
377
382
  }, restProps, {
378
383
  pagination: paginationProp !== false ? _objectSpread({
@@ -381,7 +386,9 @@ function BaseTable(props, _ref) {
381
386
  showSizeChanger: true,
382
387
  showQuickJumper: true,
383
388
  showTotal: function showTotal(val) {
384
- return "\u5171".concat(val, "\u6761");
389
+ return parseLocalTemplate(baseTableLocale.dataTotalText, {
390
+ total: val
391
+ });
385
392
  },
386
393
  defaultPageSize: 20
387
394
  }, paginationProp) : false
@@ -0,0 +1,3 @@
1
+ import type { BaseTableLocale } from './locale';
2
+ declare const locale: BaseTableLocale;
3
+ export default locale;
@@ -0,0 +1,5 @@
1
+ var locale = {
2
+ noDataText: 'No data',
3
+ dataTotalText: 'Total ${total} items'
4
+ };
5
+ export default locale;
@@ -0,0 +1,4 @@
1
+ export interface BaseTableLocale {
2
+ noDataText: string;
3
+ dataTotalText: string;
4
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ import type { BaseTableLocale } from './locale';
2
+ declare const locale: BaseTableLocale;
3
+ export default locale;
@@ -0,0 +1,5 @@
1
+ var locale = {
2
+ noDataText: '暂无数据',
3
+ dataTotalText: '共${total}条'
4
+ };
5
+ export default locale;
@@ -4,10 +4,11 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
4
4
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
5
5
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
6
6
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
+ import { Tooltip } from 'antd';
7
8
  import React, { useEffect, useState } from 'react';
8
9
  import { SketchPicker } from 'react-color';
9
10
  import ReactGPicker from 'react-gcolor-picker';
10
- import { Tooltip } from 'antd';
11
+ import { useLocaleReceiver } from "../locale-receiver";
11
12
  import colorString from 'color-string';
12
13
  var DEFAULT_COLORS = ['#FFD5B6', '#F5A623', '#F8E71C', '#8B572A', '#7ED321', '#417505', '#BD10E0', '#9013FE', '#456ad4', '#4A90E2', '#50E3C2', '#B8E986', '#000000', '#4A4A4A', '#9B9B9B', '#FFFFFF'];
13
14
  var DEFAULT_COLOR = 'rgba(255, 255, 255, 0)';
@@ -29,6 +30,9 @@ var ColorPicker = function ColorPicker(_ref) {
29
30
  _useState6 = _slicedToArray(_useState5, 2),
30
31
  alpha = _useState6[0],
31
32
  setAlpha = _useState6[1];
33
+ var _useLocaleReceiver = useLocaleReceiver('ColorPicker'),
34
+ _useLocaleReceiver2 = _slicedToArray(_useLocaleReceiver, 1),
35
+ ColorPickerLocale = _useLocaleReceiver2[0];
32
36
  useEffect(function () {
33
37
  if (!gradientEnable) {
34
38
  var rgbaColorArr = colorString.get.rgb(value);
@@ -65,7 +69,7 @@ var ColorPicker = function ColorPicker(_ref) {
65
69
  className: "lemon-color-picker-hex"
66
70
  }, hexColor === null || hexColor === void 0 ? void 0 : hexColor.toLocaleUpperCase()), /*#__PURE__*/React.createElement(Tooltip, {
67
71
  placement: "topRight",
68
- title: "\u989C\u8272\u7684\u900F\u660E\u5EA6\uFF0C0\u8868\u793A\u900F\u660E\uFF0C100\u8868\u793A\u4E0D\u900F\u660E"
72
+ title: ColorPickerLocale.gridientTooltipText
69
73
  }, /*#__PURE__*/React.createElement("div", {
70
74
  className: "lemon-color-picker-alpha"
71
75
  }, Math.floor(Number(alpha) * 100), "%"))), pickerShow && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
@@ -0,0 +1,3 @@
1
+ import type { ColorPickerLocale } from './locale';
2
+ declare const locale: ColorPickerLocale;
3
+ export default locale;
@@ -0,0 +1,4 @@
1
+ var locale = {
2
+ gridientTooltipText: 'The transparency of the color, 0 means transparent, 100 means opaque'
3
+ };
4
+ export default locale;
@@ -0,0 +1,3 @@
1
+ export interface ColorPickerLocale {
2
+ gridientTooltipText: string;
3
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ import type { ColorPickerLocale } from './locale';
2
+ declare const locale: ColorPickerLocale;
3
+ export default locale;
@@ -0,0 +1,4 @@
1
+ var locale = {
2
+ gridientTooltipText: '颜色的透明度,0表示透明,100表示不透明'
3
+ };
4
+ export default locale;
@@ -1,7 +1,7 @@
1
+ import type { BaseOptionType, SelectProps } from 'antd/lib/select';
1
2
  import React from 'react';
2
3
  import type { ICellEditorParams } from '@ag-grid-community/core';
3
4
  import type { ICellEditorReactComp } from '@ag-grid-community/react';
4
- import type { BaseOptionType, SelectProps } from 'antd/lib/select';
5
5
  export declare type SelectEditorParams = Pick<SelectProps<any, BaseOptionType>, 'disabled' | 'options' | 'virtual' | 'showSearch' | 'listHeight' | 'allowClear' | 'mode'> & {
6
6
  fieldNames?: {
7
7
  label: string;
@@ -16,7 +16,7 @@ export declare type SelectEditorParams = Pick<SelectProps<any, BaseOptionType>,
16
16
  */
17
17
  action?: 'next' | 'stop' | 'none';
18
18
  };
19
- declare const _default: React.ForwardRefExoticComponent<ICellEditorParams<any, any, any> & Pick<SelectProps<any, BaseOptionType>, "disabled" | "mode" | "virtual" | "allowClear" | "options" | "showSearch" | "listHeight"> & {
19
+ declare const _default: React.ForwardRefExoticComponent<ICellEditorParams<any, any, any> & Pick<SelectProps<any, BaseOptionType>, "disabled" | "mode" | "virtual" | "allowClear" | "showSearch" | "options" | "listHeight"> & {
20
20
  fieldNames?: {
21
21
  label: string;
22
22
  value: string;
@@ -8,9 +8,9 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
8
8
  import { useMemo } from 'react';
9
9
  import React, { useEffect, useRef } from 'react';
10
10
  import { forwardRef, useImperativeHandle, useState } from 'react';
11
+ import Select from "../../select";
11
12
  import { editorPrefixClass } from "./utils";
12
13
  import EditorWrapper from "./wrapper";
13
- import { Select } from 'antd';
14
14
  export default /*#__PURE__*/forwardRef(function SelectEditor(props, ref) {
15
15
  var stopEditing = props.stopEditing,
16
16
  api = props.api,
@@ -7,6 +7,8 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
7
  import { message } from 'antd';
8
8
  import React, { useEffect, useMemo, useRef } from 'react';
9
9
  import { forwardRef, useImperativeHandle, useState } from 'react';
10
+ import { useLocaleReceiver } from "../../locale-receiver";
11
+ import { parseLocalTemplate } from "../../locale/locale";
10
12
  import { editorPrefixClass, navigateCell } from "./utils";
11
13
  import EditorWrapper from "./wrapper";
12
14
  export default /*#__PURE__*/forwardRef(function TextEditor(props, ref) {
@@ -15,6 +17,9 @@ export default /*#__PURE__*/forwardRef(function TextEditor(props, ref) {
15
17
  _isCancelAfterEnd = props.isCancelAfterEnd,
16
18
  data = props.data,
17
19
  headerName = props.colDef.headerName;
20
+ var _useLocaleReceiver = useLocaleReceiver('DataGrid'),
21
+ _useLocaleReceiver2 = _slicedToArray(_useLocaleReceiver, 1),
22
+ locale = _useLocaleReceiver2[0];
18
23
  var _useMemo = useMemo(function () {
19
24
  if (props.eventKey === 'BackSpace') {
20
25
  return ['', false];
@@ -45,7 +50,11 @@ export default /*#__PURE__*/forwardRef(function TextEditor(props, ref) {
45
50
  return {
46
51
  isCancelAfterEnd: function isCancelAfterEnd() {
47
52
  if (maxLength && (value || '').length > maxLength) {
48
- message.warning("".concat(headerName || '', "\u6700\u591A").concat(maxLength, "\u4E2A\u5B57\u7B26"));
53
+ var text = parseLocalTemplate(locale.maxWordText, {
54
+ headerName: headerName || '',
55
+ maxLength: maxLength
56
+ });
57
+ message.warning(text);
49
58
  return true;
50
59
  }
51
60
  if (_isCancelAfterEnd !== undefined) {
@@ -17,6 +17,7 @@ import { Checkbox, Form, Input, Modal, Select } from 'antd';
17
17
  import React, { useEffect, useMemo, useRef, useState } from 'react';
18
18
  import FormLayout from "../../../form-layout";
19
19
  import Icons from "../../../icons";
20
+ import { useLocaleReceiver } from "../../../locale-receiver";
20
21
  import TipMark from "../../../tip-mark";
21
22
  import { isCustomField, prefix } from "../../utils";
22
23
  export default function FieldModal(props) {
@@ -122,6 +123,9 @@ export default function FieldModal(props) {
122
123
  setOpen(false);
123
124
  }
124
125
  }, [openProp]);
126
+ var _useLocaleReceiver = useLocaleReceiver('DataGrid'),
127
+ _useLocaleReceiver2 = _slicedToArray(_useLocaleReceiver, 1),
128
+ fieldModal = _useLocaleReceiver2[0].fieldModal;
125
129
  return /*#__PURE__*/React.createElement(Modal, {
126
130
  title: "",
127
131
  width: 600,
@@ -157,7 +161,7 @@ export default function FieldModal(props) {
157
161
  className: prefix('column-panel-modal-left')
158
162
  }, /*#__PURE__*/React.createElement("div", {
159
163
  className: prefix('column-panel-modal-title')
160
- }, "\u6DFB\u52A0\u81EA\u5B9A\u4E49\u5217"), /*#__PURE__*/React.createElement(Form, {
164
+ }, fieldModal.addCustomColumnText), /*#__PURE__*/React.createElement(Form, {
161
165
  form: form
162
166
  }, /*#__PURE__*/React.createElement(FormLayout, {
163
167
  direction: "column",
@@ -166,13 +170,13 @@ export default function FieldModal(props) {
166
170
  hidden: true,
167
171
  name: "id"
168
172
  }, /*#__PURE__*/React.createElement(Input, null)), /*#__PURE__*/React.createElement(Form.Item, {
169
- label: "\u81EA\u5B9A\u4E49\u5217\u540D",
173
+ label: fieldModal.customColumnNameText,
170
174
  name: "name",
171
175
  rules: [{
172
176
  required: true
173
177
  }]
174
178
  }, /*#__PURE__*/React.createElement(Input, null)), /*#__PURE__*/React.createElement(Form.Item, {
175
- label: "\u81EA\u5B9A\u4E49\u516C\u5F0F",
179
+ label: fieldModal.customColumnExpressionText,
176
180
  name: 'expression',
177
181
  rules: [{
178
182
  required: true
@@ -188,17 +192,21 @@ export default function FieldModal(props) {
188
192
  label: " ",
189
193
  name: "summary",
190
194
  valuePropName: "checked"
191
- }, /*#__PURE__*/React.createElement(Checkbox, null, "\u662F\u5426\u7EDF\u8BA1\u5408\u8BA1")), /*#__PURE__*/React.createElement(Form.Item, {
195
+ }, /*#__PURE__*/React.createElement(Checkbox, null, fieldModal.summaryText)), /*#__PURE__*/React.createElement(Form.Item, {
192
196
  name: "summaryType",
193
- label: /*#__PURE__*/React.createElement("span", null, "\u5408\u8BA1\u89C4\u5219", /*#__PURE__*/React.createElement(TipMark, {
194
- infoContent: /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("p", null, "1\u3001\u81EA\u5B9A\u4E49\u5217\u6570\u636E\u503C\u6C42\u548C\u5F97\u51FA\u5408\u8BA1\u503C"), /*#__PURE__*/React.createElement("p", null, "2\u3001\u6570\u636E\u6E90\u6839\u636E\u8BA1\u7B97\u516C\u5F0F\u5F97\u51FA\u5408\u8BA1\u503C", /*#__PURE__*/React.createElement("br", null), "\u516C\u5F0F\u4E2D\u6DFB\u52A0\u7684\u5B57\u6BB5\u5148\u6C42\u548C\uFF0C\u518D\u6839\u636E\u8BA1\u7B97\u516C\u5F0F\u8BA1\u7B97\u51FA\u5408\u8BA1"))
197
+ label: /*#__PURE__*/React.createElement("span", null, fieldModal.summaryTypeText, /*#__PURE__*/React.createElement(TipMark, {
198
+ infoContent: /*#__PURE__*/React.createElement("div", {
199
+ dangerouslySetInnerHTML: {
200
+ __html: fieldModal.summaryTypeContentText
201
+ }
202
+ })
195
203
  }))
196
204
  }, /*#__PURE__*/React.createElement(Select, {
197
205
  options: [{
198
- label: '自定义列数据值求和得出合计值',
206
+ label: fieldModal.customSummaryDataText,
199
207
  value: 1
200
208
  }, {
201
- label: '数据源根据计算公式得出合计值',
209
+ label: fieldModal.dataSourceSummaryDataText,
202
210
  value: 2
203
211
  }]
204
212
  }))))), /*#__PURE__*/React.createElement("div", {
@@ -207,7 +215,7 @@ export default function FieldModal(props) {
207
215
  className: prefix('column-panel-modal-right')
208
216
  }, /*#__PURE__*/React.createElement("div", {
209
217
  className: prefix('column-panel-modal-title')
210
- }, "\u6DFB\u52A0\u5B57\u6BB5"), /*#__PURE__*/React.createElement("div", {
218
+ }, fieldModal.addFieldText), /*#__PURE__*/React.createElement("div", {
211
219
  className: prefix('column-panel-modal-fields')
212
220
  }, leaves.map(function (item) {
213
221
  return /*#__PURE__*/React.createElement("div", {
@@ -12,6 +12,7 @@ import { Button, Space, Tooltip, message } from 'antd';
12
12
  import React, { useEffect, useMemo, useState } from 'react';
13
13
  import { createPortal } from 'react-dom';
14
14
  import Icons from "../../../icons";
15
+ import { useLocaleReceiver } from "../../../locale-receiver";
15
16
  import { useGridStore } from "../../hooks";
16
17
  import { prefix } from "../../utils";
17
18
  import DragContext from "./drag-context";
@@ -48,6 +49,9 @@ export default function CustomColumnPanel(params) {
48
49
  _useState12 = _slicedToArray(_useState11, 2),
49
50
  keywords = _useState12[0],
50
51
  setKeywords = _useState12[1];
52
+ var _useLocaleReceiver = useLocaleReceiver('DataGrid'),
53
+ _useLocaleReceiver2 = _slicedToArray(_useLocaleReceiver, 1),
54
+ dataGridLocale = _useLocaleReceiver2[0];
51
55
  var handleColumnState = useDebounce(function () {
52
56
  setState(columnApi.getColumnState());
53
57
  }, 16);
@@ -152,7 +156,7 @@ export default function CustomColumnPanel(params) {
152
156
  loadingState: true,
153
157
  onSuccess: function onSuccess() {
154
158
  grid.api.closeToolPanel();
155
- message.success('操作成功');
159
+ message.success(dataGridLocale.operationSuccessText);
156
160
  }
157
161
  }),
158
162
  save = _useRequest.run,
@@ -163,7 +167,7 @@ export default function CustomColumnPanel(params) {
163
167
  className: prefix('column-panel-header')
164
168
  }, !searching ? /*#__PURE__*/React.createElement("div", {
165
169
  className: prefix('column-panel-tools')
166
- }, /*#__PURE__*/React.createElement("div", null, "\u663E\u793A"), /*#__PURE__*/React.createElement("div", {
170
+ }, /*#__PURE__*/React.createElement("div", null, dataGridLocale.displayText), /*#__PURE__*/React.createElement("div", {
167
171
  className: prefix('column-panel-icon'),
168
172
  style: {
169
173
  marginLeft: 'auto'
@@ -172,7 +176,7 @@ export default function CustomColumnPanel(params) {
172
176
  setSearching(true);
173
177
  }
174
178
  }, /*#__PURE__*/React.createElement(Tooltip, {
175
- title: "\u641C\u7D22",
179
+ title: dataGridLocale.searchText,
176
180
  placement: "bottom"
177
181
  }, /*#__PURE__*/React.createElement(Icons.Search, null))), /*#__PURE__*/React.createElement("div", {
178
182
  className: prefix('column-panel-icon'),
@@ -180,13 +184,13 @@ export default function CustomColumnPanel(params) {
180
184
  setField(true);
181
185
  }
182
186
  }, /*#__PURE__*/React.createElement(Tooltip, {
183
- title: "\u6DFB\u52A0\u81EA\u5B9A\u4E49\u5217",
187
+ title: dataGridLocale.addCustomColumnText,
184
188
  placement: "bottom"
185
189
  }, /*#__PURE__*/React.createElement(Icons.Plus, null)))) : /*#__PURE__*/React.createElement("div", {
186
190
  className: prefix('column-panel-search')
187
191
  }, /*#__PURE__*/React.createElement("input", {
188
192
  autoFocus: true,
189
- placeholder: "\u641C\u7D22",
193
+ placeholder: dataGridLocale.searchText,
190
194
  onChange: function onChange(e) {
191
195
  handleChangeKeywords(e.target.value);
192
196
  }
@@ -304,12 +308,12 @@ export default function CustomColumnPanel(params) {
304
308
  onClick: function onClick() {
305
309
  grid.resetFields();
306
310
  }
307
- }, "\u91CD\u7F6E"), enableSave ? /*#__PURE__*/React.createElement(Button, {
311
+ }, dataGridLocale.resetText), enableSave ? /*#__PURE__*/React.createElement(Button, {
308
312
  type: "primary",
309
313
  loading: loading,
310
314
  onClick: save,
311
315
  size: "small"
312
- }, "\u4FDD\u5B58") : null)), /*#__PURE__*/React.createElement(FieldModal, {
316
+ }, dataGridLocale.saveText) : null)), /*#__PURE__*/React.createElement(FieldModal, {
313
317
  open: field,
314
318
  nodes: list,
315
319
  onCancel: function onCancel() {
@@ -8,6 +8,7 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
8
8
  import React, { memo, useContext, useEffect, useState } from 'react';
9
9
  import Dropdown from "../../../dropdown";
10
10
  import Icons from "../../../icons";
11
+ import { useLocaleReceiver } from "../../../locale-receiver";
11
12
  import { isCustomField, prefix } from "../../utils";
12
13
  import DragContext from "./drag-context";
13
14
  import { useDraggable, useDroppable } from '@dnd-kit/core';
@@ -74,6 +75,9 @@ var Item = /*#__PURE__*/memo(function (props) {
74
75
  api.removeEventListener('columnVisible', handler);
75
76
  };
76
77
  }, [node.column]);
78
+ var _useLocaleReceiver = useLocaleReceiver('DataGrid'),
79
+ _useLocaleReceiver2 = _slicedToArray(_useLocaleReceiver, 1),
80
+ dataGridLocale = _useLocaleReceiver2[0];
77
81
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
78
82
  style: {
79
83
  paddingLeft: level * 20 + 8
@@ -126,13 +130,13 @@ var Item = /*#__PURE__*/memo(function (props) {
126
130
  menu: {
127
131
  items: [{
128
132
  key: 'edit',
129
- label: '编辑',
133
+ label: dataGridLocale.editText,
130
134
  onClick: function onClick() {
131
135
  onEdit(node);
132
136
  }
133
137
  }, {
134
138
  key: 'delete',
135
- label: '删除',
139
+ label: dataGridLocale.deleteText,
136
140
  onClick: function onClick() {
137
141
  onDelete(node);
138
142
  }
@@ -10,10 +10,11 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
10
10
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
11
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
12
12
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
+ import { Button, Input, Space } from 'antd';
13
14
  import React, { forwardRef, memo, useState, useImperativeHandle, useMemo } from 'react';
15
+ import { useLocaleReceiver } from "../../locale-receiver";
14
16
  import { useGridStore } from "../hooks";
15
17
  import { useDebounce } from '@lemon-fe/hooks';
16
- import { Button, Input, Space } from 'antd';
17
18
  export default /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Search(props, ref) {
18
19
  var placeholder = props.placeholder,
19
20
  searchFields = props.searchFields,
@@ -32,6 +33,9 @@ export default /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Search(props,
32
33
  _useState2 = _slicedToArray(_useState, 2),
33
34
  state = _useState2[0],
34
35
  setState = _useState2[1];
36
+ var _useLocaleReceiver = useLocaleReceiver('DataGrid'),
37
+ _useLocaleReceiver2 = _slicedToArray(_useLocaleReceiver, 1),
38
+ dataGridLocale = _useLocaleReceiver2[0];
35
39
  var handleSearch = useDebounce(function (keywords) {
36
40
  if (keywords.length <= 0) {
37
41
  setState(defaultState);
@@ -132,7 +136,7 @@ export default /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Search(props,
132
136
  };
133
137
  });
134
138
  return /*#__PURE__*/React.createElement(Space, null, /*#__PURE__*/React.createElement(Input, {
135
- placeholder: placeholder || '输入关键字搜索',
139
+ placeholder: placeholder || dataGridLocale.searchPlaceholderText,
136
140
  value: state.keywords,
137
141
  size: "small",
138
142
  onChange: function onChange(e) {
@@ -152,8 +156,8 @@ export default /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Search(props,
152
156
  }), /*#__PURE__*/React.createElement(Button, {
153
157
  size: "small",
154
158
  onClick: handlePrev
155
- }, "\u4E0A\u4E00\u4E2A"), /*#__PURE__*/React.createElement(Button, {
159
+ }, dataGridLocale.searchPrevText), /*#__PURE__*/React.createElement(Button, {
156
160
  size: "small",
157
161
  onClick: handleNext
158
- }, "\u4E0B\u4E00\u4E2A"));
162
+ }, dataGridLocale.searchNextText));
159
163
  }));
@@ -5,6 +5,8 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
5
5
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
6
6
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
7
  import React, { useEffect, useState, memo } from 'react';
8
+ import { useLocaleReceiver } from "../../locale-receiver";
9
+ import { parseLocalTemplate } from "../../locale/locale";
8
10
  import { prefix } from "../utils";
9
11
  export default /*#__PURE__*/memo(function Selected(props) {
10
12
  var selection = props.selection,
@@ -13,12 +15,17 @@ export default /*#__PURE__*/memo(function Selected(props) {
13
15
  _useState2 = _slicedToArray(_useState, 2),
14
16
  keys = _useState2[0],
15
17
  setKeys = _useState2[1];
18
+ var _useLocaleReceiver = useLocaleReceiver('DataGrid'),
19
+ _useLocaleReceiver2 = _slicedToArray(_useLocaleReceiver, 1),
20
+ dataGridLocale = _useLocaleReceiver2[0];
16
21
  useEffect(function () {
17
22
  return selection.listen(setKeys);
18
23
  }, []);
19
24
  return keys.length > 0 ? /*#__PURE__*/React.createElement("span", {
20
25
  className: prefix('selected')
21
- }, "\u5DF2\u9009", keys.length, "\u6761", /*#__PURE__*/React.createElement("a", {
26
+ }, parseLocalTemplate(dataGridLocale.selectedTipText, {
27
+ length: keys.length
28
+ }), /*#__PURE__*/React.createElement("a", {
22
29
  onClick: onClear
23
- }, "\u6E05\u7A7A\u5DF2\u9009")) : null;
30
+ }, dataGridLocale.clearSelectedText)) : null;
24
31
  });
@@ -1,20 +1,20 @@
1
1
  /// <reference types="react" />
2
- import type DataGrid from '.';
2
+ import type { DataGridRef } from './index';
3
3
  import type { GridStore } from './typings';
4
4
  export declare function useGridStore<T>(getter: (state: GridStore) => T): T;
5
5
  interface UseGrid<TData extends Record<string, any>> {
6
6
  /**
7
7
  * @param 执行函数
8
8
  */
9
- <T>(cb: (curr: DataGrid<TData>) => T): T;
9
+ <T>(cb: (curr: DataGridRef<TData>) => T): T;
10
10
  /**
11
11
  * @param 执行函数
12
12
  * @param isAsync 是否启用异步形式
13
13
  */
14
- (cb: (curr: DataGrid<TData>) => void, isAsync?: boolean): void;
14
+ (cb: (curr: DataGridRef<TData>) => void, isAsync?: boolean): void;
15
15
  }
16
16
  export declare function useDataGrid<TData extends Record<string, any>>(): {
17
- ref: import("react").MutableRefObject<DataGrid<TData> | null>;
17
+ ref: import("react").MutableRefObject<DataGridRef<TData> | null>;
18
18
  use: UseGrid<TData>;
19
19
  };
20
20
  export {};
@@ -1,10 +1,35 @@
1
- import React, { Component } from 'react';
1
+ import React, { Component, type ForwardedRef } from 'react';
2
2
  import EditorWrapper from './cell-editors/wrapper';
3
3
  import type { FieldCol } from './components/custom-panel/typings';
4
+ import type { DataGridLocale } from './locale/locale';
4
5
  import type { ColType, DataGridProps, DataGridState } from './typings';
5
6
  import type { IRowNode } from '@ag-grid-community/core';
6
7
  import { GridApi, ColumnApi } from '@ag-grid-community/core';
7
- export default class DataGrid<TData extends Record<string, any>> extends Component<DataGridProps<TData>, DataGridState<TData>> {
8
+ interface InternaleDataGridProps<T> extends DataGridProps<T> {
9
+ locale: DataGridLocale;
10
+ }
11
+ declare const defaultProps: Partial<InternaleDataGridProps<any>>;
12
+ declare const SummaryFlag: unique symbol;
13
+ declare const IndexColId = "$$index";
14
+ declare const EmptyCol: ColType<any>;
15
+ declare const Editors: {
16
+ Text: React.ForwardRefExoticComponent<import("@ag-grid-community/core").ICellEditorParams<any, any, any> & import("./typings").TextEditorParams<any> & React.RefAttributes<import("@ag-grid-community/react").ICellEditorReactComp>>;
17
+ Date: React.ForwardRefExoticComponent<import("@ag-grid-community/core").ICellEditorParams<any, any, any> & import("./typings").DateEditorParams<any> & React.RefAttributes<import("@ag-grid-community/react").ICellEditorReactComp>>;
18
+ Number: React.ForwardRefExoticComponent<import("@ag-grid-community/core").ICellEditorParams<any, any, any> & import("./typings").NumberEditorParams<any> & React.RefAttributes<import("@ag-grid-community/react").ICellEditorReactComp>>;
19
+ Select: React.ForwardRefExoticComponent<import("@ag-grid-community/core").ICellEditorParams<any, any, any> & Pick<import("antd").SelectProps<any, import("antd/lib/select").BaseOptionType>, "disabled" | "mode" | "virtual" | "allowClear" | "showSearch" | "options" | "listHeight"> & {
20
+ fieldNames?: {
21
+ label: string;
22
+ value: string;
23
+ } | undefined;
24
+ valueByOption?: boolean | undefined;
25
+ action?: "stop" | "none" | "next" | undefined;
26
+ } & React.RefAttributes<import("@ag-grid-community/react").ICellEditorReactComp>>;
27
+ Wrapper: typeof EditorWrapper;
28
+ };
29
+ declare function isSummaryRow({ node }: {
30
+ node?: IRowNode<any> | null;
31
+ }): boolean;
32
+ declare class InternalDataGrid<TData extends Record<string, any>> extends Component<InternaleDataGridProps<TData>, DataGridState<TData>> {
8
33
  api: GridApi<TData>;
9
34
  columnApi: ColumnApi;
10
35
  private selected;
@@ -20,31 +45,7 @@ export default class DataGrid<TData extends Record<string, any>> extends Compone
20
45
  private prevFocusedCell;
21
46
  private fields;
22
47
  private fieldSuffix;
23
- static contextType?: React.Context<any> | undefined;
24
- static defaultProps: Partial<DataGridProps<any>>;
25
- static SummaryFlag: symbol;
26
- static IndexColId: string;
27
- static EmptyCol: ColType<any>;
28
- static Editors: {
29
- Text: React.ForwardRefExoticComponent<import("@ag-grid-community/core").ICellEditorParams<any, any, any> & import("./typings").TextEditorParams<any> & React.RefAttributes<import("@ag-grid-community/react").ICellEditorReactComp>>;
30
- Date: React.ForwardRefExoticComponent<import("@ag-grid-community/core").ICellEditorParams<any, any, any> & import("./typings").DateEditorParams<any> & React.RefAttributes<import("@ag-grid-community/react").ICellEditorReactComp>>;
31
- Number: React.ForwardRefExoticComponent<import("@ag-grid-community/core").ICellEditorParams<any, any, any> & import("./typings").NumberEditorParams<any> & React.RefAttributes<import("@ag-grid-community/react").ICellEditorReactComp>>;
32
- Select: React.ForwardRefExoticComponent<import("@ag-grid-community/core").ICellEditorParams<any, any, any> & Pick<import("antd").SelectProps<any, import("antd/lib/select").BaseOptionType>, "disabled" | "mode" | "virtual" | "allowClear" | "options" | "showSearch" | "listHeight"> & {
33
- fieldNames?: {
34
- label: string;
35
- value: string;
36
- } | undefined;
37
- valueByOption?: boolean | undefined;
38
- action?: "stop" | "none" | "next" | undefined;
39
- } & React.RefAttributes<import("@ag-grid-community/react").ICellEditorReactComp>>;
40
- Wrapper: typeof EditorWrapper;
41
- };
42
- static isSummaryRow({ node }: {
43
- node?: IRowNode<any>;
44
- }): boolean;
45
- constructor(props: DataGridProps<TData>, context: any);
46
- /** TODO目前只应用在部分地方,临时解决一下获取的columnTypes不正确的问题,考虑未来转成函数组件 */
47
- private getProps;
48
+ constructor(props: InternaleDataGridProps<TData>);
48
49
  setField(field: FieldCol): void;
49
50
  getField(id: string): FieldCol | undefined;
50
51
  getFields(): FieldCol[];
@@ -73,6 +74,7 @@ export default class DataGrid<TData extends Record<string, any>> extends Compone
73
74
  private init;
74
75
  private NoRowsOverlay;
75
76
  private getMainMenuItems;
77
+ private getFieldErrMessage;
76
78
  private getRowId;
77
79
  private validateRecord;
78
80
  validate(): Promise<boolean>;
@@ -92,6 +94,7 @@ export default class DataGrid<TData extends Record<string, any>> extends Compone
92
94
  private handleClearSelected;
93
95
  private getMemoizedDefaultColDef;
94
96
  private getMemoizedColumnTypes;
97
+ private getMemoizedLocaleText;
95
98
  private getMemoizedComponents;
96
99
  private getMemoizedDetailCellParams;
97
100
  private getRowStyle;
@@ -103,3 +106,17 @@ export default class DataGrid<TData extends Record<string, any>> extends Compone
103
106
  focusPreviousCell(): void;
104
107
  render(): JSX.Element;
105
108
  }
109
+ export declare type DataGridRef<T extends Record<string, any>> = InternalDataGrid<T>;
110
+ interface DataGridType {
111
+ <T extends Record<string, any>>(props: DataGridProps<T> & {
112
+ ref?: ForwardedRef<DataGridRef<T>>;
113
+ }): ReturnType<InternalDataGrid<T>['render']>;
114
+ SummaryFlag: typeof SummaryFlag;
115
+ IndexColId: typeof IndexColId;
116
+ EmptyCol: typeof EmptyCol;
117
+ Editors: typeof Editors;
118
+ isSummaryRow: typeof isSummaryRow;
119
+ defaultProps: typeof defaultProps;
120
+ }
121
+ declare const DataGrid: DataGridType;
122
+ export default DataGrid;