@univerjs/sheets-crosshair-highlight 0.5.5-nightly.202501210734 → 0.5.5-nightly.202501210925

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/lib/es/facade.js CHANGED
@@ -1,43 +1,50 @@
1
- import { FUniver as o, ICommandService as a } from "@univerjs/core";
2
- import { EnableCrosshairHighlightOperation as h, DisableCrosshairHighlightOperation as r, SetCrosshairHighlightColorOperation as s, SheetsCrosshairHighlightService as n, CROSSHAIR_HIGHLIGHT_COLORS as l } from "@univerjs/sheets-crosshair-highlight";
3
- class c extends o {
4
- _initialize(i) {
5
- const g = i.get(a);
6
- this.disposeWithMe(g.onCommandExecuted((t) => {
7
- if (t.id === h.id || t.id === r.id) {
8
- const e = this.getActiveSheet();
9
- if (!e || !this._eventListend(this.Event.CrosshairHighlightEnabledChanged)) return;
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: !0 });
3
+ import { FUniver, ICommandService } from "@univerjs/core";
4
+ import { EnableCrosshairHighlightOperation, DisableCrosshairHighlightOperation, SetCrosshairHighlightColorOperation, SheetsCrosshairHighlightService, CROSSHAIR_HIGHLIGHT_COLORS } from "@univerjs/sheets-crosshair-highlight";
5
+ const _FUniverCrosshairHighlightMixin = class _FUniverCrosshairHighlightMixin extends FUniver {
6
+ /**
7
+ * @ignore
8
+ */
9
+ _initialize(injector) {
10
+ const commandService = injector.get(ICommandService);
11
+ this.disposeWithMe(commandService.onCommandExecuted((commandInfo) => {
12
+ if (commandInfo.id === EnableCrosshairHighlightOperation.id || commandInfo.id === DisableCrosshairHighlightOperation.id) {
13
+ const activeSheet = this.getActiveSheet();
14
+ if (!activeSheet || !this._eventListend(this.Event.CrosshairHighlightEnabledChanged)) return;
10
15
  this.fireEvent(this.Event.CrosshairHighlightEnabledChanged, {
11
16
  enabled: this.getCrosshairHighlightEnabled(),
12
- ...e
17
+ ...activeSheet
13
18
  });
14
19
  }
15
- if (t.id === s.id) {
16
- const e = this.getActiveSheet();
17
- if (!e || !this._eventListend(this.Event.CrosshairHighlightColorChanged)) return;
20
+ if (commandInfo.id === SetCrosshairHighlightColorOperation.id) {
21
+ const activeSheet = this.getActiveSheet();
22
+ if (!activeSheet || !this._eventListend(this.Event.CrosshairHighlightColorChanged)) return;
18
23
  this.fireEvent(this.Event.CrosshairHighlightColorChanged, {
19
24
  color: this.getCrosshairHighlightColor(),
20
- ...e
25
+ ...activeSheet
21
26
  });
22
27
  }
23
28
  }));
24
29
  }
25
- setCrosshairHighlightEnabled(i) {
26
- return i ? this._commandService.syncExecuteCommand(h.id) : this._commandService.syncExecuteCommand(r.id), this;
30
+ setCrosshairHighlightEnabled(enabled) {
31
+ return enabled ? this._commandService.syncExecuteCommand(EnableCrosshairHighlightOperation.id) : this._commandService.syncExecuteCommand(DisableCrosshairHighlightOperation.id), this;
27
32
  }
28
- setCrosshairHighlightColor(i) {
29
- return this._commandService.syncExecuteCommand(s.id, {
30
- value: i
33
+ setCrosshairHighlightColor(color) {
34
+ return this._commandService.syncExecuteCommand(SetCrosshairHighlightColorOperation.id, {
35
+ value: color
31
36
  }), this;
32
37
  }
33
38
  getCrosshairHighlightEnabled() {
34
- return this._injector.get(n).enabled;
39
+ return this._injector.get(SheetsCrosshairHighlightService).enabled;
35
40
  }
36
41
  getCrosshairHighlightColor() {
37
- return this._injector.get(n).color;
42
+ return this._injector.get(SheetsCrosshairHighlightService).color;
38
43
  }
39
44
  get CROSSHAIR_HIGHLIGHT_COLORS() {
40
- return l;
45
+ return CROSSHAIR_HIGHLIGHT_COLORS;
41
46
  }
42
- }
43
- o.extend(c);
47
+ };
48
+ __name(_FUniverCrosshairHighlightMixin, "FUniverCrosshairHighlightMixin");
49
+ let FUniverCrosshairHighlightMixin = _FUniverCrosshairHighlightMixin;
50
+ FUniver.extend(FUniverCrosshairHighlightMixin);
package/lib/es/index.js CHANGED
@@ -1,66 +1,71 @@
1
- var re = Object.defineProperty;
2
- var ne = (n, e, t) => e in n ? re(n, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[e] = t;
3
- var h = (n, e, t) => ne(n, typeof e != "symbol" ? e + "" : e, t);
4
- import { Disposable as $, CommandType as O, useDependency as se, useObservable as ie, UniverInstanceType as x, Inject as p, ICommandService as oe, RANGE_TYPE as v, Rectangle as T, IContextService as ae, ColorKit as ce, Plugin as le, merge as he, Injector as ge, IConfigService as ue } from "@univerjs/core";
5
- import { Shape as de, Rect as fe, IRenderManagerService as _e } from "@univerjs/engine-render";
6
- import { MenuItemType as Se, getMenuHiddenObservable as pe, ContextMenuPosition as ve, ContextMenuGroup as me, ComponentManager as Ce, IMenuManagerService as Re } from "@univerjs/ui";
7
- import { BehaviorSubject as N, combineLatest as be, startWith as He, tap as Oe, merge as j, map as V } from "rxjs";
8
- import Ie, { forwardRef as Z, useRef as ye, createElement as B, useCallback as Ee } from "react";
9
- import { SheetsSelectionsService as we, REF_SELECTIONS_ENABLED as xe, IRefSelectionsService as $e } from "@univerjs/sheets";
10
- import { SheetSkeletonManagerService as Me, getCoordByCell as L } from "@univerjs/sheets-ui";
11
- const Pe = "sheets-crosshair-highlight.config", A = {};
12
- var g = function() {
13
- return g = Object.assign || function(n) {
14
- for (var e, t = 1, r = arguments.length; t < r; t++) {
15
- e = arguments[t];
16
- for (var s in e) Object.prototype.hasOwnProperty.call(e, s) && (n[s] = e[s]);
1
+ var __defProp = Object.defineProperty;
2
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: !0, configurable: !0, writable: !0, value }) : obj[key] = value;
3
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: !0 });
4
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key != "symbol" ? key + "" : key, value);
5
+ import { Disposable, CommandType, useDependency, useObservable, UniverInstanceType, Inject, ICommandService, RANGE_TYPE, Rectangle, IContextService, ColorKit, Plugin, merge as merge$1, Injector, IConfigService } from "@univerjs/core";
6
+ import { Shape, Rect, IRenderManagerService } from "@univerjs/engine-render";
7
+ import { MenuItemType, getMenuHiddenObservable, ContextMenuPosition, ContextMenuGroup, ComponentManager, IMenuManagerService } from "@univerjs/ui";
8
+ import { BehaviorSubject, combineLatest, startWith, tap, merge, map } from "rxjs";
9
+ import require$$0, { forwardRef, useRef, createElement, useCallback } from "react";
10
+ import { SheetsSelectionsService, REF_SELECTIONS_ENABLED, IRefSelectionsService } from "@univerjs/sheets";
11
+ import { SheetSkeletonManagerService, getCoordByCell } from "@univerjs/sheets-ui";
12
+ const SHEETS_CROSSHAIR_HIGHLIGHT_PLUGIN_CONFIG_KEY = "sheets-crosshair-highlight.config", defaultPluginConfig = {};
13
+ var __assign = function() {
14
+ return __assign = Object.assign || function(t) {
15
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
16
+ s = arguments[i];
17
+ for (var p in s) Object.prototype.hasOwnProperty.call(s, p) && (t[p] = s[p]);
17
18
  }
18
- return n;
19
- }, g.apply(this, arguments);
20
- }, Te = function(n, e) {
19
+ return t;
20
+ }, __assign.apply(this, arguments);
21
+ }, __rest = function(s, e) {
21
22
  var t = {};
22
- for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && e.indexOf(r) < 0 && (t[r] = n[r]);
23
- if (n != null && typeof Object.getOwnPropertySymbols == "function")
24
- for (var s = 0, r = Object.getOwnPropertySymbols(n); s < r.length; s++)
25
- e.indexOf(r[s]) < 0 && Object.prototype.propertyIsEnumerable.call(n, r[s]) && (t[r[s]] = n[r[s]]);
23
+ for (var p in s) Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0 && (t[p] = s[p]);
24
+ if (s != null && typeof Object.getOwnPropertySymbols == "function")
25
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++)
26
+ e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]) && (t[p[i]] = s[p[i]]);
26
27
  return t;
27
- }, F = Z(function(n, e) {
28
- var t = n.icon, r = n.id, s = n.className, i = n.extend, o = Te(n, ["icon", "id", "className", "extend"]), a = "univerjs-icon univerjs-icon-".concat(r, " ").concat(s || "").trim(), c = ye("_".concat(Ve()));
29
- return W(t, "".concat(r), { defIds: t.defIds, idSuffix: c.current }, g({ ref: e, className: a }, o), i);
28
+ }, IconBase = forwardRef(function(props, ref) {
29
+ var icon = props.icon, id = props.id, className = props.className, extend = props.extend, restProps = __rest(props, ["icon", "id", "className", "extend"]), cls = "univerjs-icon univerjs-icon-".concat(id, " ").concat(className || "").trim(), idSuffix = useRef("_".concat(generateShortUuid()));
30
+ return render(icon, "".concat(id), { defIds: icon.defIds, idSuffix: idSuffix.current }, __assign({ ref, className: cls }, restProps), extend);
30
31
  });
31
- function W(n, e, t, r, s) {
32
- return B(n.tag, g(g({ key: e }, Ne(n, t, s)), r), (je(n, t).children || []).map(function(i, o) {
33
- return W(i, "".concat(e, "-").concat(n.tag, "-").concat(o), t, void 0, s);
32
+ function render(node, id, runtimeProps, rootProps, extend) {
33
+ return createElement(node.tag, __assign(__assign({ key: id }, replaceRuntimeIdsAndExtInAttrs(node, runtimeProps, extend)), rootProps), (replaceRuntimeIdsInDefs(node, runtimeProps).children || []).map(function(child, index) {
34
+ return render(child, "".concat(id, "-").concat(node.tag, "-").concat(index), runtimeProps, void 0, extend);
34
35
  }));
35
36
  }
36
- function Ne(n, e, t) {
37
- var r = g({}, n.attrs);
38
- t != null && t.colorChannel1 && r.fill === "colorChannel1" && (r.fill = t.colorChannel1);
39
- var s = e.defIds;
40
- return !s || s.length === 0 || (n.tag === "use" && r["xlink:href"] && (r["xlink:href"] = r["xlink:href"] + e.idSuffix), Object.entries(r).forEach(function(i) {
41
- var o = i[0], a = i[1];
42
- typeof a == "string" && (r[o] = a.replace(/url\(#(.*)\)/, "url(#$1".concat(e.idSuffix, ")")));
43
- })), r;
37
+ __name(render, "render");
38
+ function replaceRuntimeIdsAndExtInAttrs(node, runtimeProps, extend) {
39
+ var attrs = __assign({}, node.attrs);
40
+ extend != null && extend.colorChannel1 && attrs.fill === "colorChannel1" && (attrs.fill = extend.colorChannel1);
41
+ var defIds = runtimeProps.defIds;
42
+ return !defIds || defIds.length === 0 || (node.tag === "use" && attrs["xlink:href"] && (attrs["xlink:href"] = attrs["xlink:href"] + runtimeProps.idSuffix), Object.entries(attrs).forEach(function(_a4) {
43
+ var key = _a4[0], value = _a4[1];
44
+ typeof value == "string" && (attrs[key] = value.replace(/url\(#(.*)\)/, "url(#$1".concat(runtimeProps.idSuffix, ")")));
45
+ })), attrs;
44
46
  }
45
- function je(n, e) {
46
- var t, r = e.defIds;
47
- return !r || r.length === 0 ? n : n.tag === "defs" && (!((t = n.children) === null || t === void 0) && t.length) ? g(g({}, n), { children: n.children.map(function(s) {
48
- return typeof s.attrs.id == "string" && r && r.indexOf(s.attrs.id) > -1 ? g(g({}, s), { attrs: g(g({}, s.attrs), { id: s.attrs.id + e.idSuffix }) }) : s;
49
- }) }) : n;
47
+ __name(replaceRuntimeIdsAndExtInAttrs, "replaceRuntimeIdsAndExtInAttrs");
48
+ function replaceRuntimeIdsInDefs(node, runtimeProps) {
49
+ var _a4, defIds = runtimeProps.defIds;
50
+ return !defIds || defIds.length === 0 ? node : node.tag === "defs" && (!((_a4 = node.children) === null || _a4 === void 0) && _a4.length) ? __assign(__assign({}, node), { children: node.children.map(function(child) {
51
+ return typeof child.attrs.id == "string" && defIds && defIds.indexOf(child.attrs.id) > -1 ? __assign(__assign({}, child), { attrs: __assign(__assign({}, child.attrs), { id: child.attrs.id + runtimeProps.idSuffix }) }) : child;
52
+ }) }) : node;
50
53
  }
51
- function Ve() {
54
+ __name(replaceRuntimeIdsInDefs, "replaceRuntimeIdsInDefs");
55
+ function generateShortUuid() {
52
56
  return Math.random().toString(36).substring(2, 8);
53
57
  }
54
- F.displayName = "UniverIcon";
55
- var Le = { tag: "svg", attrs: { fill: "none", viewBox: "0 0 16 16", width: "1em", height: "1em" }, children: [{ tag: "path", attrs: { fill: "#E5E5E5", d: "M1.6499 3.65002C1.6499 2.54545 2.54533 1.65002 3.6499 1.65002H12.3499C13.4545 1.65002 14.3499 2.54545 14.3499 3.65002V12.35C14.3499 13.4546 13.4545 14.35 12.3499 14.35H3.6499C2.54533 14.35 1.6499 13.4546 1.6499 12.35V3.65002Z" } }, { tag: "path", attrs: { fill: "#fff", d: "M9.9998 1.65002H5.9998V6H1.6499V10H5.9998V14.35H9.9998V10H14.3499V6H9.9998V1.65002Z" } }, { tag: "path", attrs: { fill: "currentColor", d: "M3.6498 1.05005C2.21386 1.05005 1.0498 2.21411 1.0498 3.65005V12.35C1.0498 13.786 2.21386 14.95 3.6498 14.95H12.3498C13.7857 14.95 14.9498 13.786 14.9498 12.3501V3.65005C14.9498 2.21411 13.7857 1.05005 12.3498 1.05005H3.6498ZM5.4002 2.25005H3.6498C2.87661 2.25005 2.2498 2.87685 2.2498 3.65005V5.40002H5.4002V2.25005ZM2.2498 10.6V12.35C2.2498 13.1232 2.87661 13.75 3.6498 13.75H5.4002V10.6H2.2498ZM6.60019 13.75H9.4002V9.40002H13.7498V6.60002H9.4002V2.25005H6.60019V6.60002H2.25029V9.40002H6.60019V13.75ZM10.6002 2.25005V5.40002H13.7498V3.65005C13.7498 2.87685 13.123 2.25005 12.3498 2.25005H10.6002ZM13.7498 10.6H10.6002V13.75H12.3498C13.123 13.75 13.7498 13.1232 13.7498 12.3501V10.6Z", fillRule: "evenodd", clipRule: "evenodd" } }] }, Y = Z(function(n, e) {
56
- return B(F, Object.assign({}, n, {
58
+ __name(generateShortUuid, "generateShortUuid");
59
+ IconBase.displayName = "UniverIcon";
60
+ var element = { tag: "svg", attrs: { fill: "none", viewBox: "0 0 16 16", width: "1em", height: "1em" }, children: [{ tag: "path", attrs: { fill: "#E5E5E5", d: "M1.6499 3.65002C1.6499 2.54545 2.54533 1.65002 3.6499 1.65002H12.3499C13.4545 1.65002 14.3499 2.54545 14.3499 3.65002V12.35C14.3499 13.4546 13.4545 14.35 12.3499 14.35H3.6499C2.54533 14.35 1.6499 13.4546 1.6499 12.35V3.65002Z" } }, { tag: "path", attrs: { fill: "#fff", d: "M9.9998 1.65002H5.9998V6H1.6499V10H5.9998V14.35H9.9998V10H14.3499V6H9.9998V1.65002Z" } }, { tag: "path", attrs: { fill: "currentColor", d: "M3.6498 1.05005C2.21386 1.05005 1.0498 2.21411 1.0498 3.65005V12.35C1.0498 13.786 2.21386 14.95 3.6498 14.95H12.3498C13.7857 14.95 14.9498 13.786 14.9498 12.3501V3.65005C14.9498 2.21411 13.7857 1.05005 12.3498 1.05005H3.6498ZM5.4002 2.25005H3.6498C2.87661 2.25005 2.2498 2.87685 2.2498 3.65005V5.40002H5.4002V2.25005ZM2.2498 10.6V12.35C2.2498 13.1232 2.87661 13.75 3.6498 13.75H5.4002V10.6H2.2498ZM6.60019 13.75H9.4002V9.40002H13.7498V6.60002H9.4002V2.25005H6.60019V6.60002H2.25029V9.40002H6.60019V13.75ZM10.6002 2.25005V5.40002H13.7498V3.65005C13.7498 2.87685 13.123 2.25005 12.3498 2.25005H10.6002ZM13.7498 10.6H10.6002V13.75H12.3498C13.123 13.75 13.7498 13.1232 13.7498 12.3501V10.6Z", fillRule: "evenodd", clipRule: "evenodd" } }] }, CrossHighlightingSingle = forwardRef(function(props, ref) {
61
+ return createElement(IconBase, Object.assign({}, props, {
57
62
  id: "cross-highlighting-single",
58
- ref: e,
59
- icon: Le
63
+ ref,
64
+ icon: element
60
65
  }));
61
66
  });
62
- Y.displayName = "CrossHighlightingSingle";
63
- const q = [
67
+ CrossHighlightingSingle.displayName = "CrossHighlightingSingle";
68
+ const CROSSHAIR_HIGHLIGHT_COLORS = [
64
69
  "rgba(158, 109, 227, 0.3)",
65
70
  "rgba(254, 75, 75, 0.3)",
66
71
  "rgba(255, 140, 81, 0.3)",
@@ -77,14 +82,13 @@ const q = [
77
82
  "rgba(58, 96, 247, 0.15)",
78
83
  "rgba(242, 72, 166, 0.15)",
79
84
  "rgba(153, 153, 153, 0.15)"
80
- ];
81
- class S extends $ {
85
+ ], _SheetsCrosshairHighlightService = class _SheetsCrosshairHighlightService extends Disposable {
82
86
  constructor() {
83
87
  super(...arguments);
84
- h(this, "_enabled$", new N(!1));
85
- h(this, "enabled$", this._enabled$.asObservable());
86
- h(this, "_color$", new N(q[0]));
87
- h(this, "color$", this._color$.asObservable());
88
+ __publicField(this, "_enabled$", new BehaviorSubject(!1));
89
+ __publicField(this, "enabled$", this._enabled$.asObservable());
90
+ __publicField(this, "_color$", new BehaviorSubject(CROSSHAIR_HIGHLIGHT_COLORS[0]));
91
+ __publicField(this, "color$", this._color$.asObservable());
88
92
  }
89
93
  get enabled() {
90
94
  return this._enabled$.getValue();
@@ -95,43 +99,45 @@ class S extends $ {
95
99
  dispose() {
96
100
  this._enabled$.complete();
97
101
  }
98
- setEnabled(t) {
99
- this._enabled$.next(t);
102
+ setEnabled(value) {
103
+ this._enabled$.next(value);
100
104
  }
101
- setColor(t) {
102
- this._color$.next(t);
105
+ setColor(value) {
106
+ this._color$.next(value);
103
107
  }
104
- }
105
- const M = {
108
+ };
109
+ __name(_SheetsCrosshairHighlightService, "SheetsCrosshairHighlightService");
110
+ let SheetsCrosshairHighlightService = _SheetsCrosshairHighlightService;
111
+ const ToggleCrosshairHighlightOperation = {
106
112
  id: "sheet.operation.toggle-crosshair-highlight",
107
- type: O.OPERATION,
108
- handler(n) {
109
- const e = n.get(S), t = e.enabled;
110
- return e.setEnabled(!t), !0;
113
+ type: CommandType.OPERATION,
114
+ handler(accessor) {
115
+ const service = accessor.get(SheetsCrosshairHighlightService), turnedOn = service.enabled;
116
+ return service.setEnabled(!turnedOn), !0;
111
117
  }
112
- }, J = {
118
+ }, SetCrosshairHighlightColorOperation = {
113
119
  id: "sheet.operation.set-crosshair-highlight-color",
114
- type: O.OPERATION,
115
- handler(n, { value: e }) {
116
- const t = n.get(S);
117
- return t.enabled || t.setEnabled(!0), t.setColor(e), !0;
120
+ type: CommandType.OPERATION,
121
+ handler(accessor, { value }) {
122
+ const service = accessor.get(SheetsCrosshairHighlightService);
123
+ return service.enabled || service.setEnabled(!0), service.setColor(value), !0;
118
124
  }
119
- }, Ae = {
125
+ }, EnableCrosshairHighlightOperation = {
120
126
  id: "sheet.operation.enable-crosshair-highlight",
121
- type: O.OPERATION,
122
- handler(n) {
123
- const e = n.get(S);
124
- return e.enabled ? !1 : (e.setEnabled(!0), !0);
127
+ type: CommandType.OPERATION,
128
+ handler(accessor) {
129
+ const service = accessor.get(SheetsCrosshairHighlightService);
130
+ return service.enabled ? !1 : (service.setEnabled(!0), !0);
125
131
  }
126
- }, Ge = {
132
+ }, DisableCrosshairHighlightOperation = {
127
133
  id: "sheet.operation.disable-crosshair-highlight",
128
- type: O.OPERATION,
129
- handler(n) {
130
- const e = n.get(S);
131
- return e.enabled ? (e.setEnabled(!1), !0) : !1;
134
+ type: CommandType.OPERATION,
135
+ handler(accessor) {
136
+ const service = accessor.get(SheetsCrosshairHighlightService);
137
+ return service.enabled ? (service.setEnabled(!1), !0) : !1;
132
138
  }
133
139
  };
134
- var I = { exports: {} }, m = {};
140
+ var jsxRuntime = { exports: {} }, reactJsxRuntime_production_min = {};
135
141
  /**
136
142
  * @license React
137
143
  * react-jsx-runtime.production.min.js
@@ -141,153 +147,158 @@ var I = { exports: {} }, m = {};
141
147
  * This source code is licensed under the MIT license found in the
142
148
  * LICENSE file in the root directory of this source tree.
143
149
  */
144
- var G;
145
- function Ue() {
146
- if (G) return m;
147
- G = 1;
148
- var n = Ie, e = Symbol.for("react.element"), t = Symbol.for("react.fragment"), r = Object.prototype.hasOwnProperty, s = n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, i = { key: !0, ref: !0, __self: !0, __source: !0 };
149
- function o(a, c, f) {
150
- var l, d = {}, _ = null, u = null;
151
- f !== void 0 && (_ = "" + f), c.key !== void 0 && (_ = "" + c.key), c.ref !== void 0 && (u = c.ref);
152
- for (l in c) r.call(c, l) && !i.hasOwnProperty(l) && (d[l] = c[l]);
153
- if (a && a.defaultProps) for (l in c = a.defaultProps, c) d[l] === void 0 && (d[l] = c[l]);
154
- return { $$typeof: e, type: a, key: _, ref: u, props: d, _owner: s.current };
155
- }
156
- return m.Fragment = t, m.jsx = o, m.jsxs = o, m;
150
+ var hasRequiredReactJsxRuntime_production_min;
151
+ function requireReactJsxRuntime_production_min() {
152
+ if (hasRequiredReactJsxRuntime_production_min) return reactJsxRuntime_production_min;
153
+ hasRequiredReactJsxRuntime_production_min = 1;
154
+ var f = require$$0, k = Symbol.for("react.element"), l = Symbol.for("react.fragment"), m = Object.prototype.hasOwnProperty, n = f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, p = { key: !0, ref: !0, __self: !0, __source: !0 };
155
+ function q(c, a, g) {
156
+ var b, d = {}, e = null, h = null;
157
+ g !== void 0 && (e = "" + g), a.key !== void 0 && (e = "" + a.key), a.ref !== void 0 && (h = a.ref);
158
+ for (b in a) m.call(a, b) && !p.hasOwnProperty(b) && (d[b] = a[b]);
159
+ if (c && c.defaultProps) for (b in a = c.defaultProps, a) d[b] === void 0 && (d[b] = a[b]);
160
+ return { $$typeof: k, type: c, key: e, ref: h, props: d, _owner: n.current };
161
+ }
162
+ return __name(q, "q"), reactJsxRuntime_production_min.Fragment = l, reactJsxRuntime_production_min.jsx = q, reactJsxRuntime_production_min.jsxs = q, reactJsxRuntime_production_min;
157
163
  }
158
- var U;
159
- function De() {
160
- return U || (U = 1, I.exports = Ue()), I.exports;
164
+ __name(requireReactJsxRuntime_production_min, "requireReactJsxRuntime_production_min");
165
+ var hasRequiredJsxRuntime;
166
+ function requireJsxRuntime() {
167
+ return hasRequiredJsxRuntime || (hasRequiredJsxRuntime = 1, jsxRuntime.exports = requireReactJsxRuntime_production_min()), jsxRuntime.exports;
161
168
  }
162
- var D = De();
163
- function X(n) {
164
- var e, t, r = "";
165
- if (typeof n == "string" || typeof n == "number") r += n;
166
- else if (typeof n == "object") if (Array.isArray(n)) {
167
- var s = n.length;
168
- for (e = 0; e < s; e++) n[e] && (t = X(n[e])) && (r && (r += " "), r += t);
169
- } else for (t in n) n[t] && (r && (r += " "), r += t);
170
- return r;
169
+ __name(requireJsxRuntime, "requireJsxRuntime");
170
+ var jsxRuntimeExports = requireJsxRuntime();
171
+ function r(e) {
172
+ var t, f, n = "";
173
+ if (typeof e == "string" || typeof e == "number") n += e;
174
+ else if (typeof e == "object") if (Array.isArray(e)) {
175
+ var o = e.length;
176
+ for (t = 0; t < o; t++) e[t] && (f = r(e[t])) && (n && (n += " "), n += f);
177
+ } else for (f in e) e[f] && (n && (n += " "), n += f);
178
+ return n;
171
179
  }
172
- function ke() {
173
- for (var n, e, t = 0, r = "", s = arguments.length; t < s; t++) (n = arguments[t]) && (e = X(n)) && (r && (r += " "), r += e);
174
- return r;
180
+ __name(r, "r");
181
+ function clsx() {
182
+ for (var e, t, f = 0, n = "", o = arguments.length; f < o; f++) (e = arguments[f]) && (t = r(e)) && (n && (n += " "), n += t);
183
+ return n;
175
184
  }
176
- const Ze = "univer-crosshair-highlight-overlay", Be = "univer-crosshair-highlight-item", Fe = "univer-crosshair-highlight-item-selected", y = {
177
- crosshairHighlightOverlay: Ze,
178
- crosshairHighlightItem: Be,
179
- crosshairHighlightItemSelected: Fe
185
+ __name(clsx, "clsx");
186
+ const crosshairHighlightOverlay = "univer-crosshair-highlight-overlay", crosshairHighlightItem = "univer-crosshair-highlight-item", crosshairHighlightItemSelected = "univer-crosshair-highlight-item-selected", styles = {
187
+ crosshairHighlightOverlay,
188
+ crosshairHighlightItem,
189
+ crosshairHighlightItemSelected
180
190
  };
181
- function We(n) {
182
- const { onChange: e } = n, t = se(S), r = ie(t.color$), s = Ee((i) => {
183
- e == null || e(i);
184
- }, [e]);
185
- return /* @__PURE__ */ D.jsx("div", { className: y.crosshairHighlightOverlay, children: q.map((i) => /* @__PURE__ */ D.jsx(
191
+ function CrosshairOverlay(props) {
192
+ const { onChange } = props, crosshairSrv = useDependency(SheetsCrosshairHighlightService), currentColor = useObservable(crosshairSrv.color$), handleColorPicked = useCallback((color) => {
193
+ onChange == null || onChange(color);
194
+ }, [onChange]);
195
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.crosshairHighlightOverlay, children: CROSSHAIR_HIGHLIGHT_COLORS.map((color) => /* @__PURE__ */ jsxRuntimeExports.jsx(
186
196
  "div",
187
197
  {
188
- className: ke(y.crosshairHighlightItem, {
189
- [y.crosshairHighlightItemSelected]: i === r
198
+ className: clsx(styles.crosshairHighlightItem, {
199
+ [styles.crosshairHighlightItemSelected]: color === currentColor
190
200
  }),
191
- style: { backgroundColor: i },
192
- onClick: () => s(i)
201
+ style: { backgroundColor: color },
202
+ onClick: /* @__PURE__ */ __name(() => handleColorPicked(color), "onClick")
193
203
  },
194
- i
204
+ color
195
205
  )) });
196
206
  }
197
- const K = "CROSSHAIR_HIGHLIGHT_OVERLAY_COMPONENT";
198
- function Ye(n) {
199
- const e = n.get(S);
207
+ __name(CrosshairOverlay, "CrosshairOverlay");
208
+ const CROSSHAIR_HIGHLIGHT_OVERLAY_COMPONENT = "CROSSHAIR_HIGHLIGHT_OVERLAY_COMPONENT";
209
+ function CrosshairHighlightMenuItemFactory(accessor) {
210
+ const crosshairHighlightService = accessor.get(SheetsCrosshairHighlightService);
200
211
  return {
201
- id: M.id,
212
+ id: ToggleCrosshairHighlightOperation.id,
202
213
  tooltip: "crosshair.button.tooltip",
203
- type: Se.BUTTON_SELECTOR,
214
+ type: MenuItemType.BUTTON_SELECTOR,
204
215
  icon: "CrossHighlightingSingle",
205
216
  selections: [
206
217
  {
207
218
  label: {
208
- name: K,
219
+ name: CROSSHAIR_HIGHLIGHT_OVERLAY_COMPONENT,
209
220
  hoverable: !1
210
221
  }
211
222
  }
212
223
  ],
213
- selectionsCommandId: J.id,
214
- activated$: e.enabled$,
215
- hidden$: pe(n, x.UNIVER_SHEET)
224
+ selectionsCommandId: SetCrosshairHighlightColorOperation.id,
225
+ activated$: crosshairHighlightService.enabled$,
226
+ hidden$: getMenuHiddenObservable(accessor, UniverInstanceType.UNIVER_SHEET)
216
227
  };
217
228
  }
218
- const qe = {
219
- [ve.FOOTER_MENU]: {
220
- [me.OTHERS]: {
221
- [M.id]: {
229
+ __name(CrosshairHighlightMenuItemFactory, "CrosshairHighlightMenuItemFactory");
230
+ const menuSchema = {
231
+ [ContextMenuPosition.FOOTER_MENU]: {
232
+ [ContextMenuGroup.OTHERS]: {
233
+ [ToggleCrosshairHighlightOperation.id]: {
222
234
  order: 0,
223
- menuItemFactory: Ye
235
+ menuItemFactory: CrosshairHighlightMenuItemFactory
224
236
  }
225
237
  }
226
238
  }
227
239
  };
228
- var Je = Object.defineProperty, Xe = Object.getOwnPropertyDescriptor, Ke = (n, e, t, r) => {
229
- for (var s = r > 1 ? void 0 : r ? Xe(e, t) : e, i = n.length - 1, o; i >= 0; i--)
230
- (o = n[i]) && (s = (r ? o(e, t, s) : o(s)) || s);
231
- return r && s && Je(e, t, s), s;
232
- }, E = (n, e) => (t, r) => e(t, r, n);
233
- let b = class extends $ {
234
- constructor(n, e, t) {
235
- super(), this._componentMgr = n, this._menuManagerService = e, this._cmdSrv = t, this._initCommands(), this._initMenus(), this._initComponents();
240
+ var __defProp$2 = Object.defineProperty, __getOwnPropDesc$2 = Object.getOwnPropertyDescriptor, __decorateClass$2 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
241
+ for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$2(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
242
+ (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
243
+ return kind && result && __defProp$2(target, key, result), result;
244
+ }, "__decorateClass$2"), __decorateParam$2 = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam$2"), _a;
245
+ let SheetsCrosshairHighlightController = (_a = class extends Disposable {
246
+ constructor(_componentMgr, _menuManagerService, _cmdSrv) {
247
+ super(), this._componentMgr = _componentMgr, this._menuManagerService = _menuManagerService, this._cmdSrv = _cmdSrv, this._initCommands(), this._initMenus(), this._initComponents();
236
248
  }
237
249
  _initCommands() {
238
250
  [
239
- M,
240
- J,
241
- Ae,
242
- Ge
243
- ].forEach((n) => this._cmdSrv.registerCommand(n));
251
+ ToggleCrosshairHighlightOperation,
252
+ SetCrosshairHighlightColorOperation,
253
+ EnableCrosshairHighlightOperation,
254
+ DisableCrosshairHighlightOperation
255
+ ].forEach((c) => this._cmdSrv.registerCommand(c));
244
256
  }
245
257
  _initMenus() {
246
- this._menuManagerService.mergeMenu(qe);
258
+ this._menuManagerService.mergeMenu(menuSchema);
247
259
  }
248
260
  _initComponents() {
249
- this._componentMgr.register(K, We), this._componentMgr.register("CrossHighlightingSingle", Y);
250
- }
251
- };
252
- b = Ke([
253
- E(0, p(Ce)),
254
- E(1, Re),
255
- E(2, oe)
256
- ], b);
257
- const ze = 1;
258
- class Qe {
261
+ this._componentMgr.register(CROSSHAIR_HIGHLIGHT_OVERLAY_COMPONENT, CrosshairOverlay), this._componentMgr.register("CrossHighlightingSingle", CrossHighlightingSingle);
262
+ }
263
+ }, __name(_a, "SheetsCrosshairHighlightController"), _a);
264
+ SheetsCrosshairHighlightController = __decorateClass$2([
265
+ __decorateParam$2(0, Inject(ComponentManager)),
266
+ __decorateParam$2(1, IMenuManagerService),
267
+ __decorateParam$2(2, ICommandService)
268
+ ], SheetsCrosshairHighlightController);
269
+ const SHEETS_CROSSHAIR_HIGHLIGHT_Z_INDEX = 1, _CrossHairRangeCollection = class _CrossHairRangeCollection {
259
270
  constructor() {
260
- h(this, "_selectedRanges", []);
261
- h(this, "_ranges", []);
271
+ __publicField(this, "_selectedRanges", []);
272
+ __publicField(this, "_ranges", []);
262
273
  }
263
- addRange(e) {
264
- if (e.rangeType === v.COLUMN || e.rangeType === v.ROW || e.rangeType === v.ALL)
274
+ addRange(range) {
275
+ if (range.rangeType === RANGE_TYPE.COLUMN || range.rangeType === RANGE_TYPE.ROW || range.rangeType === RANGE_TYPE.ALL)
265
276
  return;
266
- const t = this._getIntersects(e), r = this._getSplitRanges(e, t);
267
- r.length > 0 && this._ranges.push(...r);
268
- }
269
- setSelectedRanges(e) {
270
- this._selectedRanges = e;
271
- }
272
- _getSplitRanges(e, t) {
273
- let r = [e];
274
- for (const s of t.concat(this._selectedRanges)) {
275
- const i = [];
276
- for (const o of r) {
277
- const a = T.subtract(o, s);
278
- a && a.length > 0 && i.push(...a);
277
+ const intersects = this._getIntersects(range), splitRanges = this._getSplitRanges(range, intersects);
278
+ splitRanges.length > 0 && this._ranges.push(...splitRanges);
279
+ }
280
+ setSelectedRanges(selectedRange) {
281
+ this._selectedRanges = selectedRange;
282
+ }
283
+ _getSplitRanges(range, intersects) {
284
+ let splitRanges = [range];
285
+ for (const intersect of intersects.concat(this._selectedRanges)) {
286
+ const newRanges = [];
287
+ for (const splitRange of splitRanges) {
288
+ const split = Rectangle.subtract(splitRange, intersect);
289
+ split && split.length > 0 && newRanges.push(...split);
279
290
  }
280
- r = i;
291
+ splitRanges = newRanges;
281
292
  }
282
- return r.filter((s) => s.startRow <= s.endRow && s.startColumn <= s.endColumn);
293
+ return splitRanges.filter((range2) => range2.startRow <= range2.endRow && range2.startColumn <= range2.endColumn);
283
294
  }
284
- _getIntersects(e) {
285
- const t = [];
286
- for (const r of this._ranges) {
287
- const s = T.getIntersects(r, e);
288
- s && t.push(s);
295
+ _getIntersects(addRange) {
296
+ const intersects = [];
297
+ for (const range of this._ranges) {
298
+ const intersect = Rectangle.getIntersects(range, addRange);
299
+ intersect && intersects.push(intersect);
289
300
  }
290
- return t;
301
+ return intersects;
291
302
  }
292
303
  getRanges() {
293
304
  return this._ranges;
@@ -295,189 +306,193 @@ class Qe {
295
306
  reset() {
296
307
  this._ranges = [], this._selectedRanges = [];
297
308
  }
298
- }
299
- class et extends de {
300
- constructor(t, r) {
301
- super(t, r);
309
+ };
310
+ __name(_CrossHairRangeCollection, "CrossHairRangeCollection");
311
+ let CrossHairRangeCollection = _CrossHairRangeCollection;
312
+ const _SheetCrossHairHighlightShape = class _SheetCrossHairHighlightShape extends Shape {
313
+ constructor(key, props) {
314
+ super(key, props);
302
315
  // protected _showHighLight = false;
303
- h(this, "_color");
304
- r && this.setShapeProps(r);
316
+ __publicField(this, "_color");
317
+ props && this.setShapeProps(props);
305
318
  }
306
- setShapeProps(t) {
307
- typeof t.color < "u" && (this._color = t.color), this.transformByState({
308
- width: t.width,
309
- height: t.height
319
+ setShapeProps(props) {
320
+ typeof props.color < "u" && (this._color = props.color), this.transformByState({
321
+ width: props.width,
322
+ height: props.height
310
323
  });
311
324
  }
312
- _draw(t) {
313
- const r = `rgba(${this._color.r}, ${this._color.g}, ${this._color.b}, ${this._color.a})`;
314
- fe.drawWith(t, {
325
+ _draw(ctx) {
326
+ const color = `rgba(${this._color.r}, ${this._color.g}, ${this._color.b}, ${this._color.a})`;
327
+ Rect.drawWith(ctx, {
315
328
  width: this.width,
316
329
  height: this.height,
317
- fill: r,
330
+ fill: color,
318
331
  stroke: void 0,
319
332
  strokeWidth: 0,
320
333
  evented: !1
321
334
  });
322
335
  }
323
- }
324
- var tt = Object.defineProperty, rt = Object.getOwnPropertyDescriptor, nt = (n, e, t, r) => {
325
- for (var s = r > 1 ? void 0 : r ? rt(e, t) : e, i = n.length - 1, o; i >= 0; i--)
326
- (o = n[i]) && (s = (r ? o(e, t, s) : o(s)) || s);
327
- return r && s && tt(e, t, s), s;
328
- }, C = (n, e) => (t, r) => e(t, r, n);
329
- let H = class extends $ {
330
- constructor(e, t, r, s, i, o) {
336
+ };
337
+ __name(_SheetCrossHairHighlightShape, "SheetCrossHairHighlightShape");
338
+ let SheetCrossHairHighlightShape = _SheetCrossHairHighlightShape;
339
+ var __defProp$1 = Object.defineProperty, __getOwnPropDesc$1 = Object.getOwnPropertyDescriptor, __decorateClass$1 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
340
+ for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$1(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
341
+ (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
342
+ return kind && result && __defProp$1(target, key, result), result;
343
+ }, "__decorateClass$1"), __decorateParam$1 = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam$1"), _a2;
344
+ let SheetCrosshairHighlightRenderController = (_a2 = class extends Disposable {
345
+ constructor(_context, _sheetSkeletonManagerService, _sheetsSelectionsService, _sheetsCrosshairHighlightService, _contextService, _refSelectionsService) {
331
346
  super();
332
- h(this, "_shapes", []);
333
- h(this, "_rangeCollection", new Qe());
334
- h(this, "_color", "rgba(255,0,0,0.5)");
335
- this._context = e, this._sheetSkeletonManagerService = t, this._sheetsSelectionsService = r, this._sheetsCrosshairHighlightService = s, this._contextService = i, this._refSelectionsService = o, this._initRenderListener();
347
+ __publicField(this, "_shapes", []);
348
+ __publicField(this, "_rangeCollection", new CrossHairRangeCollection());
349
+ __publicField(this, "_color", "rgba(255,0,0,0.5)");
350
+ this._context = _context, this._sheetSkeletonManagerService = _sheetSkeletonManagerService, this._sheetsSelectionsService = _sheetsSelectionsService, this._sheetsCrosshairHighlightService = _sheetsCrosshairHighlightService, this._contextService = _contextService, this._refSelectionsService = _refSelectionsService, this._initRenderListener();
336
351
  }
337
- _transformSelection(e, t) {
338
- if (!e)
352
+ _transformSelection(selectionData, sheet) {
353
+ if (!selectionData)
339
354
  return;
340
- const r = t.getRowCount(), s = t.getColumnCount(), i = [];
341
- for (const o of e) {
342
- const { startRow: a, endRow: c, startColumn: f, endColumn: l } = o.range;
343
- c - a + 1 === r || l - f + 1 === s || i.push(o.range);
355
+ const rowCount = sheet.getRowCount(), columnCount = sheet.getColumnCount(), ranges = [];
356
+ for (const selection of selectionData) {
357
+ const { startRow, endRow, startColumn, endColumn } = selection.range;
358
+ endRow - startRow + 1 === rowCount || endColumn - startColumn + 1 === columnCount || ranges.push(selection.range);
344
359
  }
345
- this._rangeCollection.setSelectedRanges(i);
346
- for (const o of i)
347
- this.addSelection(o, t);
360
+ this._rangeCollection.setSelectedRanges(ranges);
361
+ for (const range of ranges)
362
+ this.addSelection(range, sheet);
348
363
  }
349
364
  _initRenderListener() {
350
- const e = this._context.unit;
351
- this.disposeWithMe(be([
352
- this._contextService.subscribeContextValue$(xe).pipe(He(!1)),
365
+ const workbook = this._context.unit;
366
+ this.disposeWithMe(combineLatest([
367
+ this._contextService.subscribeContextValue$(REF_SELECTIONS_ENABLED).pipe(startWith(!1)),
353
368
  this._sheetSkeletonManagerService.currentSkeleton$,
354
369
  this._sheetsCrosshairHighlightService.enabled$,
355
- this._sheetsCrosshairHighlightService.color$.pipe(Oe((t) => this._color = t)),
356
- j(
370
+ this._sheetsCrosshairHighlightService.color$.pipe(tap((color) => this._color = color)),
371
+ merge(
357
372
  this._sheetsSelectionsService.selectionMoveStart$,
358
373
  this._sheetsSelectionsService.selectionMoving$,
359
374
  this._sheetsSelectionsService.selectionMoveEnd$,
360
375
  this._sheetsSelectionsService.selectionSet$,
361
- e.activeSheet$.pipe(V(() => this._sheetsSelectionsService.getCurrentSelections()))
376
+ workbook.activeSheet$.pipe(map(() => this._sheetsSelectionsService.getCurrentSelections()))
362
377
  ),
363
- j(
378
+ merge(
364
379
  this._refSelectionsService.selectionMoveStart$,
365
380
  this._refSelectionsService.selectionMoving$,
366
381
  this._refSelectionsService.selectionMoveEnd$,
367
382
  this._sheetsSelectionsService.selectionSet$,
368
- e.activeSheet$.pipe(V(() => this._refSelectionsService.getCurrentSelections()))
383
+ workbook.activeSheet$.pipe(map(() => this._refSelectionsService.getCurrentSelections()))
369
384
  )
370
- ]).subscribe(([t, r, s, i, o, a]) => {
371
- if (this._clear(), !s) return;
372
- const c = t ? a : o;
373
- this._rangeCollection.reset(), this._transformSelection(c, e.getActiveSheet()), this.render(this._rangeCollection.getRanges());
385
+ ]).subscribe(([refSelectionEnabled, _, enabled, _color, normalSelections, refSelection]) => {
386
+ if (this._clear(), !enabled) return;
387
+ const selections = refSelectionEnabled ? refSelection : normalSelections;
388
+ this._rangeCollection.reset(), this._transformSelection(selections, workbook.getActiveSheet()), this.render(this._rangeCollection.getRanges());
374
389
  }));
375
390
  }
376
- addSelection(e, t) {
377
- if (e.rangeType === v.COLUMN || e.rangeType === v.ROW || e.rangeType === v.ALL)
391
+ addSelection(range, sheet) {
392
+ if (range.rangeType === RANGE_TYPE.COLUMN || range.rangeType === RANGE_TYPE.ROW || range.rangeType === RANGE_TYPE.ALL)
378
393
  return;
379
- const r = t.getRowCount(), s = t.getColumnCount(), { startRow: i, endRow: o, startColumn: a, endColumn: c } = e, f = {
380
- startRow: i,
381
- endRow: o,
394
+ const maxRow = sheet.getRowCount(), maxColumn = sheet.getColumnCount(), { startRow, endRow, startColumn, endColumn } = range, left = {
395
+ startRow,
396
+ endRow,
382
397
  startColumn: 0,
383
- endColumn: a - 1
384
- }, l = {
385
- startRow: i,
386
- endRow: o,
387
- startColumn: c + 1,
388
- endColumn: s
389
- }, d = {
398
+ endColumn: startColumn - 1
399
+ }, right = {
400
+ startRow,
401
+ endRow,
402
+ startColumn: endColumn + 1,
403
+ endColumn: maxColumn
404
+ }, top = {
390
405
  startRow: 0,
391
- endRow: i - 1,
392
- startColumn: a,
393
- endColumn: c
394
- }, _ = {
395
- startRow: o + 1,
396
- endRow: r,
397
- startColumn: a,
398
- endColumn: c
406
+ endRow: startRow - 1,
407
+ startColumn,
408
+ endColumn
409
+ }, bottom = {
410
+ startRow: endRow + 1,
411
+ endRow: maxRow,
412
+ startColumn,
413
+ endColumn
399
414
  };
400
- for (const u of [f, l, d, _])
401
- u.startRow <= u.endRow && u.startColumn <= u.endColumn && this._rangeCollection.addRange(u);
415
+ for (const range2 of [left, right, top, bottom])
416
+ range2.startRow <= range2.endRow && range2.startColumn <= range2.endColumn && this._rangeCollection.addRange(range2);
402
417
  }
403
418
  _clear() {
404
- this._shapes.forEach((e) => {
405
- e.dispose();
419
+ this._shapes.forEach((shape) => {
420
+ shape.dispose();
406
421
  }), this._shapes = [];
407
422
  }
408
- _addShapes(e, t, r, s) {
409
- const { startRow: i, endRow: o, startColumn: a, endColumn: c } = e, f = L(i, a, r, s), l = L(o, c, r, s), { startX: d, startY: _ } = f, { endX: u, endY: z } = l, Q = u - d, ee = z - _, te = {
410
- left: d,
411
- top: _,
412
- color: new ce(this._color).toRgb(),
413
- width: Q,
414
- height: ee,
415
- zIndex: ze,
423
+ _addShapes(range, index, scene, skeleton) {
424
+ const { startRow, endRow, startColumn, endColumn } = range, startPosition = getCoordByCell(startRow, startColumn, scene, skeleton), endPosition = getCoordByCell(endRow, endColumn, scene, skeleton), { startX, startY } = startPosition, { endX, endY } = endPosition, width = endX - startX, height = endY - startY, shapeProps = {
425
+ left: startX,
426
+ top: startY,
427
+ color: new ColorKit(this._color).toRgb(),
428
+ width,
429
+ height,
430
+ zIndex: SHEETS_CROSSHAIR_HIGHLIGHT_Z_INDEX,
416
431
  evented: !1
417
- }, P = new et(`crosshair-${t}`, te);
418
- this._shapes.push(P), r.addObject(P);
432
+ }, currentShapes = new SheetCrossHairHighlightShape(`crosshair-${index}`, shapeProps);
433
+ this._shapes.push(currentShapes), scene.addObject(currentShapes);
419
434
  }
420
- render(e) {
421
- const t = this._sheetSkeletonManagerService.getCurrentSkeleton();
422
- if (!t)
435
+ render(ranges) {
436
+ const skeleton = this._sheetSkeletonManagerService.getCurrentSkeleton();
437
+ if (!skeleton)
423
438
  return;
424
- const { scene: r } = this._context;
439
+ const { scene } = this._context;
425
440
  this._clear();
426
- for (let s = 0; s < e.length; s++) {
427
- const i = e[s];
428
- this._addShapes(i, s, r, t);
441
+ for (let i = 0; i < ranges.length; i++) {
442
+ const range = ranges[i];
443
+ this._addShapes(range, i, scene, skeleton);
429
444
  }
430
- r.makeDirty(!0);
445
+ scene.makeDirty(!0);
431
446
  }
432
447
  async dispose() {
433
448
  super.dispose();
434
449
  }
435
- };
436
- H = nt([
437
- C(1, p(Me)),
438
- C(2, p(we)),
439
- C(3, p(S)),
440
- C(4, p(ae)),
441
- C(5, $e)
442
- ], H);
443
- var st = Object.defineProperty, it = Object.getOwnPropertyDescriptor, ot = (n, e, t, r) => {
444
- for (var s = r > 1 ? void 0 : r ? it(e, t) : e, i = n.length - 1, o; i >= 0; i--)
445
- (o = n[i]) && (s = (r ? o(e, t, s) : o(s)) || s);
446
- return r && s && st(e, t, s), s;
447
- }, w = (n, e) => (t, r) => e(t, r, n), R;
448
- let k = (R = class extends le {
449
- constructor(n = A, e, t, r) {
450
- super(), this._config = n, this._injector = e, this._renderManagerService = t, this._configService = r;
451
- const { ...s } = he(
450
+ }, __name(_a2, "SheetCrosshairHighlightRenderController"), _a2);
451
+ SheetCrosshairHighlightRenderController = __decorateClass$1([
452
+ __decorateParam$1(1, Inject(SheetSkeletonManagerService)),
453
+ __decorateParam$1(2, Inject(SheetsSelectionsService)),
454
+ __decorateParam$1(3, Inject(SheetsCrosshairHighlightService)),
455
+ __decorateParam$1(4, Inject(IContextService)),
456
+ __decorateParam$1(5, IRefSelectionsService)
457
+ ], SheetCrosshairHighlightRenderController);
458
+ var __defProp2 = Object.defineProperty, __getOwnPropDesc = Object.getOwnPropertyDescriptor, __decorateClass = /* @__PURE__ */ __name((decorators, target, key, kind) => {
459
+ for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
460
+ (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
461
+ return kind && result && __defProp2(target, key, result), result;
462
+ }, "__decorateClass"), __decorateParam = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam"), _a3;
463
+ let UniverSheetsCrosshairHighlightPlugin = (_a3 = class extends Plugin {
464
+ constructor(_config = defaultPluginConfig, _injector, _renderManagerService, _configService) {
465
+ super(), this._config = _config, this._injector = _injector, this._renderManagerService = _renderManagerService, this._configService = _configService;
466
+ const { ...rest } = merge$1(
452
467
  {},
453
- A,
468
+ defaultPluginConfig,
454
469
  this._config
455
470
  );
456
- this._configService.setConfig(Pe, s);
471
+ this._configService.setConfig(SHEETS_CROSSHAIR_HIGHLIGHT_PLUGIN_CONFIG_KEY, rest);
457
472
  }
458
473
  onStarting() {
459
474
  [
460
- [S],
461
- [b]
462
- ].forEach((n) => this._injector.add(n));
475
+ [SheetsCrosshairHighlightService],
476
+ [SheetsCrosshairHighlightController]
477
+ ].forEach((d) => this._injector.add(d));
463
478
  }
464
479
  onReady() {
465
480
  [
466
- [H]
467
- ].forEach((n) => this._injector.add(n)), this._injector.get(b), this._renderManagerService.registerRenderModule(x.UNIVER_SHEET, [H]);
468
- }
469
- }, h(R, "pluginName", "SHEET_CROSSHAIR_HIGHLIGHT_PLUGIN"), h(R, "type", x.UNIVER_SHEET), R);
470
- k = ot([
471
- w(1, p(ge)),
472
- w(2, _e),
473
- w(3, ue)
474
- ], k);
481
+ [SheetCrosshairHighlightRenderController]
482
+ ].forEach((d) => this._injector.add(d)), this._injector.get(SheetsCrosshairHighlightController), this._renderManagerService.registerRenderModule(UniverInstanceType.UNIVER_SHEET, [SheetCrosshairHighlightRenderController]);
483
+ }
484
+ }, __name(_a3, "UniverSheetsCrosshairHighlightPlugin"), __publicField(_a3, "pluginName", "SHEET_CROSSHAIR_HIGHLIGHT_PLUGIN"), __publicField(_a3, "type", UniverInstanceType.UNIVER_SHEET), _a3);
485
+ UniverSheetsCrosshairHighlightPlugin = __decorateClass([
486
+ __decorateParam(1, Inject(Injector)),
487
+ __decorateParam(2, IRenderManagerService),
488
+ __decorateParam(3, IConfigService)
489
+ ], UniverSheetsCrosshairHighlightPlugin);
475
490
  export {
476
- q as CROSSHAIR_HIGHLIGHT_COLORS,
477
- Ge as DisableCrosshairHighlightOperation,
478
- Ae as EnableCrosshairHighlightOperation,
479
- J as SetCrosshairHighlightColorOperation,
480
- S as SheetsCrosshairHighlightService,
481
- M as ToggleCrosshairHighlightOperation,
482
- k as UniverSheetsCrosshairHighlightPlugin
491
+ CROSSHAIR_HIGHLIGHT_COLORS,
492
+ DisableCrosshairHighlightOperation,
493
+ EnableCrosshairHighlightOperation,
494
+ SetCrosshairHighlightColorOperation,
495
+ SheetsCrosshairHighlightService,
496
+ ToggleCrosshairHighlightOperation,
497
+ UniverSheetsCrosshairHighlightPlugin
483
498
  };
@@ -1,4 +1,4 @@
1
- const o = {
1
+ const locale = {
2
2
  crosshair: {
3
3
  button: {
4
4
  tooltip: "Crosshair Highlight"
@@ -6,5 +6,5 @@ const o = {
6
6
  }
7
7
  };
8
8
  export {
9
- o as default
9
+ locale as default
10
10
  };
@@ -1,4 +1,4 @@
1
- const o = {
1
+ const locale = {
2
2
  crosshair: {
3
3
  button: {
4
4
  tooltip: "برجسته کردن خط نشانه"
@@ -6,5 +6,5 @@ const o = {
6
6
  }
7
7
  };
8
8
  export {
9
- o as default
9
+ locale as default
10
10
  };
@@ -1,4 +1,4 @@
1
- const t = {
1
+ const locale = {
2
2
  crosshair: {
3
3
  button: {
4
4
  tooltip: "Surlignage du réticule"
@@ -6,5 +6,5 @@ const t = {
6
6
  }
7
7
  };
8
8
  export {
9
- t as default
9
+ locale as default
10
10
  };
@@ -1,4 +1,4 @@
1
- const o = {
1
+ const locale = {
2
2
  crosshair: {
3
3
  button: {
4
4
  tooltip: "Перекрестный выделение"
@@ -6,5 +6,5 @@ const o = {
6
6
  }
7
7
  };
8
8
  export {
9
- o as default
9
+ locale as default
10
10
  };
@@ -1,4 +1,4 @@
1
- const o = {
1
+ const locale = {
2
2
  crosshair: {
3
3
  button: {
4
4
  tooltip: "Đánh dấu chéo"
@@ -6,5 +6,5 @@ const o = {
6
6
  }
7
7
  };
8
8
  export {
9
- o as default
9
+ locale as default
10
10
  };
@@ -1,4 +1,4 @@
1
- const o = {
1
+ const locale = {
2
2
  crosshair: {
3
3
  button: {
4
4
  tooltip: "十字高亮"
@@ -6,5 +6,5 @@ const o = {
6
6
  }
7
7
  };
8
8
  export {
9
- o as default
9
+ locale as default
10
10
  };
@@ -1,4 +1,4 @@
1
- const o = {
1
+ const locale = {
2
2
  crosshair: {
3
3
  button: {
4
4
  tooltip: "十字高亮"
@@ -6,5 +6,5 @@ const o = {
6
6
  }
7
7
  };
8
8
  export {
9
- o as default
9
+ locale as default
10
10
  };
@@ -107,6 +107,9 @@ export interface IFUniverCrosshairHighlightMixin {
107
107
  readonly CROSSHAIR_HIGHLIGHT_COLORS: string[];
108
108
  }
109
109
  export declare class FUniverCrosshairHighlightMixin extends FUniver implements IFUniverCrosshairHighlightMixin {
110
+ /**
111
+ * @ignore
112
+ */
110
113
  _initialize(injector: Injector): void;
111
114
  setCrosshairHighlightEnabled(enabled: boolean): FUniver;
112
115
  setCrosshairHighlightColor(color: string): FUniver;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@univerjs/sheets-crosshair-highlight",
3
- "version": "0.5.5-nightly.202501210734",
3
+ "version": "0.5.5-nightly.202501210925",
4
4
  "private": false,
5
5
  "description": "",
6
6
  "author": "DreamNum <developer@univer.ai>",
@@ -59,11 +59,11 @@
59
59
  "dependencies": {
60
60
  "@univerjs/icons": "^0.2.12",
61
61
  "clsx": "^2.1.1",
62
- "@univerjs/core": "0.5.5-nightly.202501210734",
63
- "@univerjs/engine-render": "0.5.5-nightly.202501210734",
64
- "@univerjs/sheets": "0.5.5-nightly.202501210734",
65
- "@univerjs/sheets-ui": "0.5.5-nightly.202501210734",
66
- "@univerjs/ui": "0.5.5-nightly.202501210734"
62
+ "@univerjs/engine-render": "0.5.5-nightly.202501210925",
63
+ "@univerjs/sheets": "0.5.5-nightly.202501210925",
64
+ "@univerjs/sheets-ui": "0.5.5-nightly.202501210925",
65
+ "@univerjs/ui": "0.5.5-nightly.202501210925",
66
+ "@univerjs/core": "0.5.5-nightly.202501210925"
67
67
  },
68
68
  "devDependencies": {
69
69
  "less": "^4.2.1",