@leankylin-sheet/core 3.1.37 → 3.1.38

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.
package/dist/index.esm.js CHANGED
@@ -36857,7 +36857,9 @@ function handleFormulaInput(ctx, $copyTo, $editor, kcode, preText) {
36857
36857
  var value1txt = preText !== null && preText !== void 0 ? preText : $editor.innerText;
36858
36858
  var value = $editor.innerText;
36859
36859
  value = escapeScriptTag(value);
36860
- if (value.length > 0 && value.substring(0, 1) === "=" && (kcode !== 229 || value.length === 1)) {
36860
+ var hasF = value.length > 0 && value.substring(0, 1) === "=" && (kcode !== 229 || value.length === 1);
36861
+ var lastHasF = _.startsWith(value1txt, "=") && !_.startsWith(value, "=");
36862
+ if (hasF) {
36861
36863
  if (!refreshRangeSelect) rangeIndexes = getRangeIndexes($editor);
36862
36864
  value = functionHTMLGenerate(value);
36863
36865
  if (!refreshRangeSelect && functionHTMLIndex < rangeIndexes.length) refreshRangeSelect = true;
@@ -36882,19 +36884,10 @@ function handleFormulaInput(ctx, $copyTo, $editor, kcode, preText) {
36882
36884
  $editor.innerHTML = value;
36883
36885
  if ($copyTo) $copyTo.innerHTML = value;
36884
36886
  functionRange(ctx, $editor, value, value1);
36885
- if (refreshRangeSelect) {
36886
- cancelFunctionrangeSelected(ctx);
36887
- if (kcode !== 46) {
36888
- createRangeHightlight(ctx, value);
36889
- }
36890
- ctx.formulaCache.rangestart = false;
36891
- ctx.formulaCache.rangedrag_column_start = false;
36892
- ctx.formulaCache.rangedrag_row_start = false;
36893
- rangeHightlightselected(ctx, $editor);
36894
- }
36895
- } else if (_.startsWith(value1txt, "=") && !_.startsWith(value, "=")) {
36887
+ } else if (lastHasF) {
36896
36888
  if ($copyTo) $copyTo.innerHTML = value;
36897
36889
  $editor.innerHTML = escapeHTMLTag(value);
36890
+ ctx.formulaCache.functionRangeIndex = [0, 1];
36898
36891
  } else if (!_.startsWith(value1txt, "=")) {
36899
36892
  if (!$copyTo) return;
36900
36893
  if ($copyTo.id === "luckysheet-rich-text-editor") {
@@ -36905,6 +36898,18 @@ function handleFormulaInput(ctx, $copyTo, $editor, kcode, preText) {
36905
36898
  $copyTo.innerHTML = escapeHTMLTag(value);
36906
36899
  }
36907
36900
  }
36901
+ if (hasF || lastHasF) {
36902
+ if (refreshRangeSelect) {
36903
+ cancelFunctionrangeSelected(ctx);
36904
+ if (kcode !== 46) {
36905
+ createRangeHightlight(ctx, value);
36906
+ }
36907
+ ctx.formulaCache.rangestart = false;
36908
+ ctx.formulaCache.rangedrag_column_start = false;
36909
+ ctx.formulaCache.rangedrag_row_start = false;
36910
+ rangeHightlightselected(ctx, $editor);
36911
+ }
36912
+ }
36908
36913
  }
36909
36914
  function isfreezonFuc(txt) {
36910
36915
  var row = txt.replace(/[^0-9]/g, "");
@@ -56046,6 +56051,7 @@ var index = /*#__PURE__*/Object.freeze({
56046
56051
  var defaultSettings = {
56047
56052
  renderFormulaHint: undefined,
56048
56053
  renderFormulaSearch: undefined,
56054
+ renderEditorSelector: undefined,
56049
56055
  copyRich: false,
56050
56056
  renderCalcInfo: undefined,
56051
56057
  renderFreezeCol: undefined,
package/dist/index.js CHANGED
@@ -36867,7 +36867,9 @@ function handleFormulaInput(ctx, $copyTo, $editor, kcode, preText) {
36867
36867
  var value1txt = preText !== null && preText !== void 0 ? preText : $editor.innerText;
36868
36868
  var value = $editor.innerText;
36869
36869
  value = escapeScriptTag(value);
36870
- if (value.length > 0 && value.substring(0, 1) === "=" && (kcode !== 229 || value.length === 1)) {
36870
+ var hasF = value.length > 0 && value.substring(0, 1) === "=" && (kcode !== 229 || value.length === 1);
36871
+ var lastHasF = ___default['default'].startsWith(value1txt, "=") && !___default['default'].startsWith(value, "=");
36872
+ if (hasF) {
36871
36873
  if (!refreshRangeSelect) rangeIndexes = getRangeIndexes($editor);
36872
36874
  value = functionHTMLGenerate(value);
36873
36875
  if (!refreshRangeSelect && functionHTMLIndex < rangeIndexes.length) refreshRangeSelect = true;
@@ -36892,19 +36894,10 @@ function handleFormulaInput(ctx, $copyTo, $editor, kcode, preText) {
36892
36894
  $editor.innerHTML = value;
36893
36895
  if ($copyTo) $copyTo.innerHTML = value;
36894
36896
  functionRange(ctx, $editor, value, value1);
36895
- if (refreshRangeSelect) {
36896
- cancelFunctionrangeSelected(ctx);
36897
- if (kcode !== 46) {
36898
- createRangeHightlight(ctx, value);
36899
- }
36900
- ctx.formulaCache.rangestart = false;
36901
- ctx.formulaCache.rangedrag_column_start = false;
36902
- ctx.formulaCache.rangedrag_row_start = false;
36903
- rangeHightlightselected(ctx, $editor);
36904
- }
36905
- } else if (___default['default'].startsWith(value1txt, "=") && !___default['default'].startsWith(value, "=")) {
36897
+ } else if (lastHasF) {
36906
36898
  if ($copyTo) $copyTo.innerHTML = value;
36907
36899
  $editor.innerHTML = escapeHTMLTag(value);
36900
+ ctx.formulaCache.functionRangeIndex = [0, 1];
36908
36901
  } else if (!___default['default'].startsWith(value1txt, "=")) {
36909
36902
  if (!$copyTo) return;
36910
36903
  if ($copyTo.id === "luckysheet-rich-text-editor") {
@@ -36915,6 +36908,18 @@ function handleFormulaInput(ctx, $copyTo, $editor, kcode, preText) {
36915
36908
  $copyTo.innerHTML = escapeHTMLTag(value);
36916
36909
  }
36917
36910
  }
36911
+ if (hasF || lastHasF) {
36912
+ if (refreshRangeSelect) {
36913
+ cancelFunctionrangeSelected(ctx);
36914
+ if (kcode !== 46) {
36915
+ createRangeHightlight(ctx, value);
36916
+ }
36917
+ ctx.formulaCache.rangestart = false;
36918
+ ctx.formulaCache.rangedrag_column_start = false;
36919
+ ctx.formulaCache.rangedrag_row_start = false;
36920
+ rangeHightlightselected(ctx, $editor);
36921
+ }
36922
+ }
36918
36923
  }
36919
36924
  function isfreezonFuc(txt) {
36920
36925
  var row = txt.replace(/[^0-9]/g, "");
@@ -56056,6 +56061,7 @@ var index = /*#__PURE__*/Object.freeze({
56056
56061
  var defaultSettings = {
56057
56062
  renderFormulaHint: undefined,
56058
56063
  renderFormulaSearch: undefined,
56064
+ renderEditorSelector: undefined,
56059
56065
  copyRich: false,
56060
56066
  renderCalcInfo: undefined,
56061
56067
  renderFreezeCol: undefined,
@@ -80,6 +80,7 @@ export type Hooks = {
80
80
  export type Settings = {
81
81
  renderFormulaHint?: any;
82
82
  renderFormulaSearch?: any;
83
+ renderEditorSelector?: any;
83
84
  copyRich?: boolean;
84
85
  renderCalcInfo?: any;
85
86
  renderFreezeCol?: any;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leankylin-sheet/core",
3
- "version": "3.1.37",
3
+ "version": "3.1.38",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/index.esm.js",
6
6
  "typings": "dist/index.d.ts",
@@ -13,7 +13,7 @@
13
13
  "build": "father-build"
14
14
  },
15
15
  "dependencies": {
16
- "@leankylin-sheet/formula-parser": "3.1.37",
16
+ "@leankylin-sheet/formula-parser": "3.1.38",
17
17
  "dayjs": "^1.11.0",
18
18
  "immer": "^9.0.12",
19
19
  "lodash": "^4.17.21",