@oceanbase/ui 1.0.0-alpha.10 → 1.0.0-alpha.11

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 (244) hide show
  1. package/dist/ui.min.js +1 -1
  2. package/es/Action/Group.js +1 -0
  3. package/es/Action/Item.js +1 -0
  4. package/es/Action/index.js +1 -0
  5. package/es/BackgroundTaskManager/RefreshMan.js +1 -0
  6. package/es/BackgroundTaskManager/index.js +1 -0
  7. package/es/BasicLayout/Header.js +1 -0
  8. package/es/BasicLayout/index.js +1 -0
  9. package/es/BatchOperationBar/index.js +1 -0
  10. package/es/Boundary/Components/Code.js +1 -0
  11. package/es/Boundary/Components/Exception.js +1 -0
  12. package/es/Boundary/Components/Function.js +1 -0
  13. package/es/Boundary/index.js +1 -0
  14. package/es/ContentWithIcon/index.js +1 -0
  15. package/es/ContentWithQuestion/index.js +1 -0
  16. package/es/DateRanger/PickerPanel.js +1 -0
  17. package/es/DateRanger/Ranger.js +1 -0
  18. package/es/DateRanger/index.js +1 -0
  19. package/es/Dialog/Anchor.js +1 -0
  20. package/es/Dialog/EventProxy.js +1 -0
  21. package/es/Dialog/index.js +1 -0
  22. package/es/DocDialog/index.js +1 -0
  23. package/es/FooterToolbar/index.js +1 -0
  24. package/es/FullscreenBox/index.js +1 -0
  25. package/es/Highlight/DiffView/DiffCells.js +1 -0
  26. package/es/Highlight/DiffView/index.js +1 -0
  27. package/es/Highlight/HighlightCell.js +1 -0
  28. package/es/Highlight/JsonView.js +1 -0
  29. package/es/Highlight/index.js +1 -0
  30. package/es/Highlight/useKeyDownCopyEvent.js +1 -0
  31. package/es/IconFont/index.js +1 -0
  32. package/es/LightFilter/index.js +1 -0
  33. package/es/LocaleDropdown/index.js +1 -0
  34. package/es/Login/ActivateForm.js +1 -0
  35. package/es/Login/LoginForm.js +1 -0
  36. package/es/Login/RegisterForm.js +1 -0
  37. package/es/Login/index.js +1 -0
  38. package/es/Lottie/index.js +1 -0
  39. package/es/NavMenu/index.js +1 -0
  40. package/es/PageContainer/ItemRender.js +1 -0
  41. package/es/PageContainer/index.js +1 -0
  42. package/es/PageLoading/index.js +1 -0
  43. package/es/Password/Content.js +1 -0
  44. package/es/Password/index.js +1 -0
  45. package/es/ProCard/index.js +1 -0
  46. package/es/ProTable/index.js +2 -3
  47. package/es/Ranger/QuickPicker.js +1 -0
  48. package/es/Ranger/Ranger.js +1 -0
  49. package/es/Ranger/index.js +1 -0
  50. package/es/SideTip/Dragger.js +1 -0
  51. package/es/SideTip/IconLoading.js +1 -0
  52. package/es/SideTip/index.js +1 -0
  53. package/es/TagSelect/Group.js +1 -0
  54. package/es/TagSelect/Item.js +1 -0
  55. package/es/TagSelect/index.js +1 -0
  56. package/es/TreeSearch/index.js +1 -0
  57. package/es/Welcome/index.js +1 -0
  58. package/es/Welcome/step.js +1 -0
  59. package/es/_util/index.js +1 -0
  60. package/es/constant/index.js +1 -0
  61. package/es/index.js +1 -0
  62. package/es/locale/LocaleWrapper.js +1 -0
  63. package/es/locale/index.js +1 -0
  64. package/lib/Action/Group.js +189 -162
  65. package/lib/Action/Item.js +47 -65
  66. package/lib/Action/index.js +13 -35
  67. package/lib/Action/style/index.js +25 -43
  68. package/lib/BackgroundTaskManager/RefreshMan.js +34 -50
  69. package/lib/BackgroundTaskManager/constants.js +10 -32
  70. package/lib/BackgroundTaskManager/index.js +118 -126
  71. package/lib/BasicLayout/Header.js +242 -200
  72. package/lib/BasicLayout/index.js +265 -307
  73. package/lib/BasicLayout/locale/en-US.js +16 -34
  74. package/lib/BasicLayout/locale/ja-JP.js +16 -34
  75. package/lib/BasicLayout/locale/zh-CN.js +16 -34
  76. package/lib/BasicLayout/locale/zh-TW.js +16 -34
  77. package/lib/BasicLayout/style/Header.js +41 -60
  78. package/lib/BasicLayout/style/index.js +176 -197
  79. package/lib/BatchOperationBar/index.js +109 -151
  80. package/lib/BatchOperationBar/locale/en-US.js +10 -28
  81. package/lib/BatchOperationBar/locale/ja-JP.js +10 -28
  82. package/lib/BatchOperationBar/locale/zh-CN.js +10 -28
  83. package/lib/BatchOperationBar/locale/zh-TW.js +10 -28
  84. package/lib/BatchOperationBar/style/index.js +30 -46
  85. package/lib/Boundary/Components/Code.js +57 -75
  86. package/lib/Boundary/Components/Exception.js +103 -123
  87. package/lib/Boundary/Components/Function.js +47 -62
  88. package/lib/Boundary/Components/index.js +36 -25
  89. package/lib/Boundary/IBoundary.js +4 -16
  90. package/lib/Boundary/constant.js +16 -38
  91. package/lib/Boundary/index.js +11 -24
  92. package/lib/Boundary/locale/en-US.js +14 -32
  93. package/lib/Boundary/locale/ja-JP.js +14 -32
  94. package/lib/Boundary/locale/zh-CN.js +14 -32
  95. package/lib/Boundary/locale/zh-TW.js +14 -32
  96. package/lib/Boundary/style/index.js +28 -47
  97. package/lib/Boundary/utils.js +9 -31
  98. package/lib/ContentWithIcon/index.js +101 -114
  99. package/lib/ContentWithIcon/style/index.js +17 -36
  100. package/lib/ContentWithQuestion/index.js +40 -52
  101. package/lib/ContentWithQuestion/style/index.js +16 -35
  102. package/lib/DateRanger/PickerPanel.js +343 -325
  103. package/lib/DateRanger/Ranger.js +430 -515
  104. package/lib/DateRanger/constant/index.js +188 -376
  105. package/lib/DateRanger/index.js +45 -64
  106. package/lib/DateRanger/locale/en-US.js +20 -47
  107. package/lib/DateRanger/locale/ja-JP.js +20 -47
  108. package/lib/DateRanger/locale/zh-CN.js +20 -47
  109. package/lib/DateRanger/locale/zh-TW.js +20 -47
  110. package/lib/DateRanger/style/index.js +41 -62
  111. package/lib/DateRanger/typing.js +4 -16
  112. package/lib/Dialog/Anchor.js +70 -95
  113. package/lib/Dialog/Dock.js +14 -36
  114. package/lib/Dialog/EventProxy.js +21 -39
  115. package/lib/Dialog/index.js +327 -370
  116. package/lib/Dialog/locale/en-US.js +8 -26
  117. package/lib/Dialog/locale/ja-JP.js +8 -26
  118. package/lib/Dialog/locale/zh-CN.js +8 -26
  119. package/lib/Dialog/locale/zh-TW.js +8 -26
  120. package/lib/Dialog/style/index.js +58 -76
  121. package/lib/DocDialog/index.js +51 -77
  122. package/lib/DocDialog/locale/en-US.js +5 -23
  123. package/lib/DocDialog/locale/ja-JP.js +5 -23
  124. package/lib/DocDialog/locale/zh-CN.js +5 -23
  125. package/lib/DocDialog/locale/zh-TW.js +5 -23
  126. package/lib/FooterToolbar/index.js +27 -45
  127. package/lib/FooterToolbar/style/index.js +23 -38
  128. package/lib/FullscreenBox/index.js +151 -138
  129. package/lib/FullscreenBox/locale/en-US.js +5 -23
  130. package/lib/FullscreenBox/locale/ja-JP.js +5 -23
  131. package/lib/FullscreenBox/locale/zh-CN.js +5 -23
  132. package/lib/FullscreenBox/locale/zh-TW.js +5 -23
  133. package/lib/FullscreenBox/style/index.js +23 -41
  134. package/lib/Highlight/DiffView/DiffCells.js +34 -54
  135. package/lib/Highlight/DiffView/index.js +165 -163
  136. package/lib/Highlight/HighlightCell.js +28 -47
  137. package/lib/Highlight/JsonView.js +45 -74
  138. package/lib/Highlight/index.js +200 -214
  139. package/lib/Highlight/languages/bash.js +7 -34
  140. package/lib/Highlight/languages/cpp.js +7 -34
  141. package/lib/Highlight/languages/css.js +7 -34
  142. package/lib/Highlight/languages/dockerfile.js +7 -34
  143. package/lib/Highlight/languages/go.js +7 -34
  144. package/lib/Highlight/languages/groovy.js +7 -34
  145. package/lib/Highlight/languages/http.js +7 -34
  146. package/lib/Highlight/languages/java.js +7 -34
  147. package/lib/Highlight/languages/javascript.js +7 -34
  148. package/lib/Highlight/languages/json.js +7 -34
  149. package/lib/Highlight/languages/markdown.js +7 -34
  150. package/lib/Highlight/languages/nginx.js +7 -34
  151. package/lib/Highlight/languages/python.js +7 -34
  152. package/lib/Highlight/languages/ruby.js +7 -34
  153. package/lib/Highlight/languages/solidity.js +7 -34
  154. package/lib/Highlight/languages/sql.js +7 -34
  155. package/lib/Highlight/languages/typescript.js +7 -34
  156. package/lib/Highlight/languages/xml.js +7 -34
  157. package/lib/Highlight/languages/yaml.js +7 -34
  158. package/lib/Highlight/locale/en-US.js +7 -25
  159. package/lib/Highlight/locale/ja-JP.js +7 -25
  160. package/lib/Highlight/locale/zh-CN.js +7 -25
  161. package/lib/Highlight/locale/zh-TW.js +7 -25
  162. package/lib/Highlight/style/index.js +128 -144
  163. package/lib/Highlight/useKeyDownCopyEvent.js +40 -64
  164. package/lib/IconFont/index.js +23 -28
  165. package/lib/LightFilter/index.js +29 -43
  166. package/lib/LightFilter/style/index.js +15 -33
  167. package/lib/LocaleDropdown/index.js +43 -53
  168. package/lib/Login/ActivateForm.js +93 -119
  169. package/lib/Login/LoginForm.js +149 -184
  170. package/lib/Login/RegisterForm.js +122 -163
  171. package/lib/Login/index.js +157 -163
  172. package/lib/Login/locale/en-US.js +31 -49
  173. package/lib/Login/locale/ja-JP.js +31 -49
  174. package/lib/Login/locale/zh-CN.js +31 -49
  175. package/lib/Login/locale/zh-TW.js +30 -48
  176. package/lib/Login/style/index.js +77 -98
  177. package/lib/Lottie/index.js +7 -24
  178. package/lib/NavMenu/index.js +105 -108
  179. package/lib/NavMenu/style/index.js +31 -49
  180. package/lib/PageContainer/ItemRender.js +28 -46
  181. package/lib/PageContainer/index.js +125 -140
  182. package/lib/PageContainer/locale/en-US.js +8 -26
  183. package/lib/PageContainer/locale/ja-JP.js +8 -26
  184. package/lib/PageContainer/locale/zh-CN.js +8 -26
  185. package/lib/PageContainer/locale/zh-TW.js +8 -26
  186. package/lib/PageContainer/style/index.js +19 -40
  187. package/lib/PageLoading/index.js +33 -54
  188. package/lib/Password/Content.js +92 -80
  189. package/lib/Password/index.js +125 -160
  190. package/lib/Password/locale/en-US.js +14 -32
  191. package/lib/Password/locale/ja-JP.js +16 -34
  192. package/lib/Password/locale/zh-CN.js +15 -33
  193. package/lib/Password/locale/zh-TW.js +14 -32
  194. package/lib/ProCard/index.js +77 -98
  195. package/lib/ProCard/style/index.js +21 -39
  196. package/lib/ProTable/index.js +102 -123
  197. package/lib/ProTable/style/index.js +21 -38
  198. package/lib/Ranger/QuickPicker.js +92 -94
  199. package/lib/Ranger/Ranger.js +98 -133
  200. package/lib/Ranger/constant/index.js +115 -266
  201. package/lib/Ranger/index.js +61 -69
  202. package/lib/Ranger/locale/en-US.js +31 -49
  203. package/lib/Ranger/locale/ja-JP.js +31 -49
  204. package/lib/Ranger/locale/zh-CN.js +7 -25
  205. package/lib/Ranger/locale/zh-TW.js +7 -25
  206. package/lib/Ranger/style/index.js +21 -39
  207. package/lib/Ranger/typing.js +4 -16
  208. package/lib/SideTip/Dragger.js +259 -219
  209. package/lib/SideTip/IconLoading.js +43 -74
  210. package/lib/SideTip/index.js +124 -126
  211. package/lib/SideTip/locale/en-US.js +5 -23
  212. package/lib/SideTip/locale/ja-JP.js +5 -23
  213. package/lib/SideTip/locale/zh-CN.js +5 -23
  214. package/lib/SideTip/locale/zh-TW.js +5 -23
  215. package/lib/SideTip/style/index.js +76 -92
  216. package/lib/SideTip/utils.js +40 -61
  217. package/lib/TagSelect/Group.js +64 -83
  218. package/lib/TagSelect/Item.js +68 -91
  219. package/lib/TagSelect/TagSelectContext.js +7 -25
  220. package/lib/TagSelect/index.js +12 -35
  221. package/lib/TagSelect/style/index.js +41 -64
  222. package/lib/TreeSearch/index.js +133 -127
  223. package/lib/TreeSearch/util.js +52 -70
  224. package/lib/Welcome/index.js +142 -117
  225. package/lib/Welcome/locale/en-US.js +8 -26
  226. package/lib/Welcome/locale/ja-JP.js +8 -26
  227. package/lib/Welcome/locale/zh-CN.js +8 -26
  228. package/lib/Welcome/locale/zh-TW.js +8 -26
  229. package/lib/Welcome/step/style/index.js +24 -40
  230. package/lib/Welcome/step.js +63 -59
  231. package/lib/Welcome/style/index.js +58 -70
  232. package/lib/_util/genComponentStyleHook.js +15 -43
  233. package/lib/_util/index.js +38 -43
  234. package/lib/_util/useNavigate.js +11 -26
  235. package/lib/constant/index.js +23 -49
  236. package/lib/index.js +283 -129
  237. package/lib/interface.js +4 -16
  238. package/lib/locale/LocaleWrapper.js +50 -60
  239. package/lib/locale/en-US.js +37 -64
  240. package/lib/locale/index.js +5 -16
  241. package/lib/locale/ja-JP.js +37 -64
  242. package/lib/locale/zh-CN.js +36 -63
  243. package/lib/locale/zh-TW.js +32 -59
  244. package/package.json +3 -3
@@ -1,54 +1,32 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ "use strict";
28
2
 
29
- // src/Highlight/DiffView/index.tsx
30
- var DiffView_exports = {};
31
- __export(DiffView_exports, {
32
- default: () => DiffView_default
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
33
5
  });
34
- module.exports = __toCommonJS(DiffView_exports);
35
- var import_design = require("@oceanbase/design");
36
- var import_classnames = __toESM(require("classnames"));
37
- var import_diff = require("diff");
38
- var import_core = __toESM(require("highlight.js/lib/core"));
39
- var import_warning = __toESM(require("rc-util/lib/warning"));
40
- var import_react = __toESM(require("react"));
41
- var import__ = require("..");
42
- var import_useKeyDownCopyEvent = require("../useKeyDownCopyEvent");
43
- var import_DiffCells = __toESM(require("./DiffCells"));
44
- var import_jsx_runtime = require("react/jsx-runtime");
45
- var MAX_MERGE_TIMES = 1e4;
46
- var EMPTY_TEXT = `<span class="hljs-comment">// 没有数据</span>`;
6
+ exports.default = void 0;
7
+ var _design = require("@oceanbase/design");
8
+ var _classnames = _interopRequireDefault(require("classnames"));
9
+ var _diff = require("diff");
10
+ var _core = _interopRequireDefault(require("highlight.js/lib/core"));
11
+ var _warning = _interopRequireDefault(require("rc-util/lib/warning"));
12
+ var _react = _interopRequireWildcard(require("react"));
13
+ var _ = require("..");
14
+ var _useKeyDownCopyEvent = require("../useKeyDownCopyEvent");
15
+ var _DiffCells = _interopRequireDefault(require("./DiffCells"));
16
+ var _jsxRuntime = require("react/jsx-runtime");
17
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
18
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
19
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
+ "use client";
21
+ const MAX_MERGE_TIMES = 10000;
22
+ const EMPTY_TEXT = `<span class="hljs-comment">// 没有数据</span>`;
47
23
  function getHighlightRows(language, code) {
48
- const { value } = language ? import_core.default.highlight(language, code) : import_core.default.highlightAuto(code);
24
+ const {
25
+ value
26
+ } = language ? _core.default.highlight(language, code) : _core.default.highlightAuto(code);
49
27
  return value.split(/\r?\n/);
50
28
  }
51
- var DiffView = ({
29
+ const DiffView = ({
52
30
  style,
53
31
  className,
54
32
  prefixCls: customizePrefixCls,
@@ -60,46 +38,55 @@ var DiffView = ({
60
38
  height,
61
39
  startRowIndex: baseStartRowIndex = 1
62
40
  }) => {
63
- const { getPrefixCls } = (0, import_react.useContext)(import_design.ConfigProvider.ConfigContext);
64
- const prefixCls = customizePrefixCls || getPrefixCls("highlight");
41
+ const {
42
+ getPrefixCls
43
+ } = (0, _react.useContext)(_design.ConfigProvider.ConfigContext);
44
+ const prefixCls = customizePrefixCls || getPrefixCls('highlight');
65
45
  const diffPrefixCls = `${prefixCls}-diff`;
66
- const [report, setReport] = import_react.default.useState(null);
46
+ const [report, setReport] = _react.default.useState(null);
67
47
  const normalizedIndexes = Array.isArray(baseStartRowIndex) ? baseStartRowIndex : [baseStartRowIndex, baseStartRowIndex];
68
48
  const [baseStartRowIndexSrc = 1, baseStartRowIndexTgt = 1] = normalizedIndexes;
69
49
  const rowOffsetSrc = baseStartRowIndexSrc > 1 ? baseStartRowIndexSrc - 1 : 0;
70
50
  const rowOffsetTgt = baseStartRowIndexTgt > 1 ? baseStartRowIndexTgt - 1 : 0;
71
- (0, import_react.useEffect)(() => {
51
+
52
+ // =========================== Language ===========================
53
+ (0, _react.useEffect)(() => {
72
54
  if (language) {
73
- import_core.default.registerLanguage(language, import__.languageMap[language]);
55
+ _core.default.registerLanguage(language, _.languageMap[language]);
74
56
  } else {
75
- Object.keys(import__.languageMap).forEach((lan) => {
76
- import_core.default.registerLanguage(lan, import__.languageMap[lan]);
57
+ Object.keys(_.languageMap).forEach(lan => {
58
+ _core.default.registerLanguage(lan, _.languageMap[lan]);
77
59
  });
78
60
  }
79
61
  }, [language]);
80
- const [selectable, setSelectable] = import_react.default.useState(null);
62
+
63
+ // ============================= Lock =============================
64
+ // Lock the selection to make user easy to copy
65
+ const [selectable, setSelectable] = _react.default.useState(null);
81
66
  function setSelectableRegion(region) {
82
- var _a, _b, _c, _d, _e, _f;
83
67
  if (region !== selectable) {
84
- (_c = (_a = window.getSelection) == null ? void 0 : (_b = _a.call(window)).removeAllRanges) == null ? void 0 : _c.call(_b);
85
- (_f = (_d = window.getSelection) == null ? void 0 : (_e = _d.call(window)).empty) == null ? void 0 : _f.call(_e);
68
+ window.getSelection?.().removeAllRanges?.();
69
+ window.getSelection?.().empty?.();
86
70
  }
87
71
  setSelectable(region);
88
72
  }
89
73
  const onSourceMouseDown = () => {
90
- setSelectableRegion("source");
74
+ setSelectableRegion('source');
91
75
  };
92
76
  const onTargetMouseDown = () => {
93
- setSelectableRegion("target");
77
+ setSelectableRegion('target');
94
78
  };
95
- (0, import_react.useEffect)(() => {
79
+
80
+ // ============================= Diff =============================
81
+ // Collection diff content
82
+ (0, _react.useEffect)(() => {
96
83
  if (!source && !target) {
97
84
  setReport(null);
98
85
  return;
99
86
  }
100
- const srcRows = getHighlightRows(language, source || "");
101
- const tgtRows = getHighlightRows(language, target || "");
102
- const diff = (0, import_diff.diffLines)(source || "", target || "");
87
+ const srcRows = getHighlightRows(language, source || '');
88
+ const tgtRows = getHighlightRows(language, target || '');
89
+ const diff = (0, _diff.diffLines)(source || '', target || '');
103
90
  const newReport = {
104
91
  source: srcRows,
105
92
  target: tgtRows,
@@ -107,7 +94,9 @@ var DiffView = ({
107
94
  };
108
95
  setReport(newReport);
109
96
  }, [source, target, language]);
110
- const diffData = (0, import_react.useMemo)(() => {
97
+
98
+ // Get diff rows
99
+ const diffData = (0, _react.useMemo)(() => {
111
100
  if (!report) {
112
101
  return null;
113
102
  }
@@ -115,56 +104,65 @@ var DiffView = ({
115
104
  let endRowIndex = 0;
116
105
  const sourceRows = [];
117
106
  const targetRows = [];
118
- report.diff.forEach(({ count, added, removed }) => {
107
+ report.diff.forEach(({
108
+ count,
109
+ added,
110
+ removed
111
+ }) => {
112
+ // Source
119
113
  if (added) {
120
114
  sourceRows.push(...new Array(count).fill(null));
121
115
  } else {
122
- sourceRows.push(
123
- ...report.source.slice(startRowIndex, startRowIndex + count).map((value, index) => ({
124
- value,
125
- index: startRowIndex + index + 1,
126
- type: removed ? "remove" : "keep"
127
- }))
128
- );
116
+ sourceRows.push(...report.source.slice(startRowIndex, startRowIndex + count).map((value, index) => ({
117
+ value,
118
+ index: startRowIndex + index + 1,
119
+ type: removed ? 'remove' : 'keep'
120
+ })));
129
121
  startRowIndex += count;
130
122
  }
123
+
124
+ // Target
131
125
  if (removed) {
132
126
  targetRows.push(...new Array(count).fill(null));
133
127
  } else {
134
- targetRows.push(
135
- ...report.target.slice(endRowIndex, endRowIndex + count).map((value, index) => ({
136
- value,
137
- index: endRowIndex + index + 1,
138
- type: added ? "add" : "keep"
139
- }))
140
- );
128
+ targetRows.push(...report.target.slice(endRowIndex, endRowIndex + count).map((value, index) => ({
129
+ value,
130
+ index: endRowIndex + index + 1,
131
+ type: added ? 'add' : 'keep'
132
+ })));
141
133
  endRowIndex += count;
142
134
  }
143
135
  });
144
- return { sourceRows, targetRows };
136
+ return {
137
+ sourceRows,
138
+ targetRows
139
+ };
145
140
  }, [report, split]);
146
- const mergedData = (0, import_react.useMemo)(() => {
141
+
142
+ // Merge -- & ++ to one row
143
+ const mergedData = (0, _react.useMemo)(() => {
147
144
  if (!diffData) {
148
145
  return null;
149
146
  }
150
- function findMergeRowIndex(startIndex, sourceRows2, targetRows2) {
151
- var _a, _b, _c, _d;
152
- for (let index = startIndex; index < sourceRows2.length - 1; index += 1) {
147
+ function findMergeRowIndex(startIndex, sourceRows, targetRows) {
148
+ for (let index = startIndex; index < sourceRows.length - 1; index += 1) {
153
149
  if (
154
- // Row: ---- | null
155
- // Row: null | ++++
156
- ((_a = sourceRows2[index]) == null ? void 0 : _a.type) === "remove" && !targetRows2[index] && !sourceRows2[index + 1] && ((_b = targetRows2[index + 1]) == null ? void 0 : _b.type) === "add"
157
- ) {
150
+ // Row: ---- | null
151
+ // Row: null | ++++
152
+ sourceRows[index]?.type === 'remove' && !targetRows[index] && !sourceRows[index + 1] && targetRows[index + 1]?.type === 'add') {
153
+ // Find source remove start index
158
154
  let removeStartIndex = index;
159
155
  for (let i = index - 1; i >= 0; i -= 1) {
160
- if (((_c = sourceRows2[i]) == null ? void 0 : _c.type) !== "remove") {
156
+ if (sourceRows[i]?.type !== 'remove') {
161
157
  removeStartIndex = i + 1;
162
158
  break;
163
159
  }
164
160
  }
161
+
162
+ // Find target add end index
165
163
  let addEndIndex = index;
166
- for (let i = index + 1; i <= targetRows2.length; i += 1) {
167
- if (((_d = targetRows2[i]) == null ? void 0 : _d.type) !== "add") {
164
+ for (let i = index + 1; i <= targetRows.length; i += 1) {
165
+ if (targetRows[i]?.type !== 'add') {
168
166
  addEndIndex = i - 1;
169
167
  break;
170
168
  }
@@ -178,7 +176,10 @@ var DiffView = ({
178
176
  }
179
177
  return null;
180
178
  }
181
- let { sourceRows, targetRows } = diffData;
179
+ let {
180
+ sourceRows,
181
+ targetRows
182
+ } = diffData;
182
183
  let mergeStartIndex = 0;
183
184
  let times = 0;
184
185
  for (; times < MAX_MERGE_TIMES; times += 1) {
@@ -186,23 +187,31 @@ var DiffView = ({
186
187
  if (mergeInfo === null) {
187
188
  break;
188
189
  }
189
- const { index, addCount, removeCount } = mergeInfo;
190
+ const {
191
+ index,
192
+ addCount,
193
+ removeCount
194
+ } = mergeInfo;
190
195
  const maxMergeRowCount = Math.min(addCount, removeCount);
191
196
  sourceRows = [...sourceRows.slice(0, index), ...sourceRows.slice(index + maxMergeRowCount)];
192
197
  targetRows = [...targetRows.slice(0, index - maxMergeRowCount), ...targetRows.slice(index)];
193
198
  mergeStartIndex = index - maxMergeRowCount;
194
199
  }
195
- (0, import_warning.default)(
196
- times < MAX_MERGE_TIMES,
197
- "Diff check too many times. Please help to fire issue of DiffView. Thanks."
198
- );
200
+ (0, _warning.default)(times < MAX_MERGE_TIMES, 'Diff check too many times. Please help to fire issue of DiffView. Thanks.');
201
+
202
+ /**
203
+ * Change target rows order when has empty content:
204
+ * -- null -- [ Data ]
205
+ * -- null -- => -- null --
206
+ * [ Data ] -- null --
207
+ */
199
208
  const targetRowsLen = targetRows.length;
200
209
  for (let i = 0; i < targetRowsLen; i += 1) {
201
210
  if (!targetRows[i]) {
202
211
  for (let j = i + 1; j < targetRowsLen; j += 1) {
203
212
  const followRow = targetRows[j];
204
213
  if (followRow) {
205
- if (followRow.type === "add") {
214
+ if (followRow.type === 'add') {
206
215
  targetRows[i] = followRow;
207
216
  targetRows[j] = null;
208
217
  }
@@ -216,86 +225,79 @@ var DiffView = ({
216
225
  source: src,
217
226
  target: targetRows[index]
218
227
  })),
219
- sourceEmpty: sourceRows.every((row) => !row),
220
- targetEmpty: targetRows.every((row) => !row)
228
+ sourceEmpty: sourceRows.every(row => !row),
229
+ targetEmpty: targetRows.every(row => !row)
221
230
  };
222
231
  }, [diffData]);
232
+
233
+ // ============================ Render ============================
223
234
  let viewRows;
224
235
  if (!report) {
225
- viewRows = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("tr", { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
226
- import_DiffCells.default,
227
- {
236
+ viewRows = /*#__PURE__*/(0, _jsxRuntime.jsx)("tr", {
237
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DiffCells.default, {
228
238
  width: "100%",
229
- diffPrefixCls,
239
+ diffPrefixCls: diffPrefixCls,
230
240
  data: {
231
241
  index: 1,
232
242
  value: EMPTY_TEXT,
233
- type: "keep"
243
+ type: 'keep'
234
244
  }
235
- }
236
- ) });
245
+ })
246
+ });
237
247
  } else if (split) {
238
- viewRows = mergedData.rows.map(({ source: src, target: tgt }, index) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("tr", { children: [
239
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
240
- import_DiffCells.default,
241
- {
242
- width: "50%",
243
- diffPrefixCls,
244
- data: src,
245
- emptyText: index === 0 && mergedData.sourceEmpty && EMPTY_TEXT,
246
- onMouseDown: onSourceMouseDown,
247
- lock: selectable !== "source",
248
- rowOffset: rowOffsetSrc
249
- }
250
- ),
251
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
252
- import_DiffCells.default,
253
- {
254
- width: "50%",
255
- diffPrefixCls,
256
- data: tgt,
257
- emptyText: index === 0 && mergedData.targetEmpty && EMPTY_TEXT,
258
- onMouseDown: onTargetMouseDown,
259
- lock: selectable !== "target",
260
- rowOffset: rowOffsetTgt
261
- }
262
- )
263
- ] }, index));
248
+ // Split view
249
+ viewRows = mergedData.rows.map(({
250
+ source: src,
251
+ target: tgt
252
+ }, index) => /*#__PURE__*/(0, _jsxRuntime.jsxs)("tr", {
253
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DiffCells.default, {
254
+ width: "50%",
255
+ diffPrefixCls: diffPrefixCls,
256
+ data: src,
257
+ emptyText: index === 0 && mergedData.sourceEmpty && EMPTY_TEXT,
258
+ onMouseDown: onSourceMouseDown,
259
+ lock: selectable !== 'source',
260
+ rowOffset: rowOffsetSrc
261
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_DiffCells.default, {
262
+ width: "50%",
263
+ diffPrefixCls: diffPrefixCls,
264
+ data: tgt,
265
+ emptyText: index === 0 && mergedData.targetEmpty && EMPTY_TEXT,
266
+ onMouseDown: onTargetMouseDown,
267
+ lock: selectable !== 'target',
268
+ rowOffset: rowOffsetTgt
269
+ })]
270
+ }, index));
264
271
  } else {
272
+ // Merge
265
273
  viewRows = diffData.sourceRows.map((src, index) => {
266
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("tr", { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
267
- import_DiffCells.default,
268
- {
274
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("tr", {
275
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DiffCells.default, {
269
276
  width: "100%",
270
- diffPrefixCls,
277
+ diffPrefixCls: diffPrefixCls,
271
278
  data: src ?? diffData.targetRows[index],
272
279
  rowOffset: rowOffsetTgt
273
- }
274
- ) }, index);
280
+ })
281
+ }, index);
275
282
  });
276
283
  }
277
- const codeRef = import_react.default.useRef();
278
- (0, import_useKeyDownCopyEvent.useKeyDownCopyEvent)(codeRef);
279
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
280
- "div",
281
- {
282
- style: {
283
- height,
284
- ...style
285
- },
286
- ref: codeRef,
287
- tabIndex: -1,
288
- className: (0, import_classnames.default)(
289
- prefixCls,
290
- diffPrefixCls,
291
- `${prefixCls}-${theme === "dark" ? "dark" : "light"}`,
292
- {
293
- [`${diffPrefixCls}-split`]: split
294
- },
295
- className
296
- ),
297
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("table", { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("tbody", { children: viewRows }) })
298
- }
299
- );
284
+ const codeRef = _react.default.useRef();
285
+ (0, _useKeyDownCopyEvent.useKeyDownCopyEvent)(codeRef);
286
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
287
+ style: {
288
+ height,
289
+ ...style
290
+ },
291
+ ref: codeRef,
292
+ tabIndex: -1,
293
+ className: (0, _classnames.default)(prefixCls, diffPrefixCls, `${prefixCls}-${theme === 'dark' ? 'dark' : 'light'}`, {
294
+ [`${diffPrefixCls}-split`]: split
295
+ }, className),
296
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("table", {
297
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("tbody", {
298
+ children: viewRows
299
+ })
300
+ })
301
+ });
300
302
  };
301
- var DiffView_default = DiffView;
303
+ var _default = exports.default = DiffView;
@@ -1,39 +1,16 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ "use strict";
28
2
 
29
- // src/Highlight/HighlightCell.tsx
30
- var HighlightCell_exports = {};
31
- __export(HighlightCell_exports, {
32
- default: () => HighlightCell
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
33
5
  });
34
- module.exports = __toCommonJS(HighlightCell_exports);
35
- var import_classnames = __toESM(require("classnames"));
36
- var import_jsx_runtime = require("react/jsx-runtime");
6
+ exports.default = HighlightCell;
7
+ var _classnames = _interopRequireDefault(require("classnames"));
8
+ var React = _interopRequireWildcard(require("react"));
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
11
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+ "use client";
37
14
  function HighlightCell({
38
15
  prefixCls,
39
16
  theme,
@@ -45,17 +22,21 @@ function HighlightCell({
45
22
  onMouseDown,
46
23
  hashId
47
24
  }) {
48
- const rowIndex = data == null ? void 0 : data.index;
49
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
50
- lineNumber ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("td", { className: (0, import_classnames.default)(`${prefixCls}-${theme}-index`, `${prefixCls}-index`, hashId), children: rowIndex }) : null,
51
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
52
- "td",
53
- {
54
- onMouseDown,
55
- style: { width, userSelect: lock ? "none" : void 0 },
56
- className: (0, import_classnames.default)(`${prefixCls}-content`, hashId),
57
- dangerouslySetInnerHTML: { __html: (data == null ? void 0 : data.value) ?? (emptyText || "") }
25
+ const rowIndex = data?.index;
26
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
27
+ children: [lineNumber ? /*#__PURE__*/(0, _jsxRuntime.jsx)("td", {
28
+ className: (0, _classnames.default)(`${prefixCls}-${theme}-index`, `${prefixCls}-index`, hashId),
29
+ children: rowIndex
30
+ }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)("td", {
31
+ onMouseDown: onMouseDown,
32
+ style: {
33
+ width,
34
+ userSelect: lock ? 'none' : undefined
35
+ },
36
+ className: (0, _classnames.default)(`${prefixCls}-content`, hashId),
37
+ dangerouslySetInnerHTML: {
38
+ __html: data?.value ?? (emptyText || '')
58
39
  }
59
- )
60
- ] });
61
- }
40
+ })]
41
+ });
42
+ }