(e3, t3)
| 242 | this._currentLink && this._linkAtPosition(this._currentLink.link, e3) || (this._clearCurrentLink(), this._askForLink(e3, true)); |
| 243 | } |
| 244 | _askForLink(e3, t3) { |
| 245 | var _a, _b; |
| 246 | this._activeProviderReplies && t3 || ((_a = this._activeProviderReplies) == null ? void 0 : _a.forEach(((e4) => { |
| 247 | e4 == null ? void 0 : e4.forEach(((e5) => { |
| 248 | e5.link.dispose && e5.link.dispose(); |
| 249 | })); |
| 250 | })), this._activeProviderReplies = /* @__PURE__ */ new Map(), this._activeLine = e3.y); |
| 251 | let i3 = false; |
| 252 | for (const [s3, r2] of this._linkProviderService.linkProviders.entries()) if (t3) { |
| 253 | const t4 = (_b = this._activeProviderReplies) == null ? void 0 : _b.get(s3); |
| 254 | t4 && (i3 = this._checkLinkProviderResult(s3, e3, i3)); |
| 255 | } else r2.provideLinks(e3.y, ((t4) => { |
| 256 | var _a2, _b2; |
| 257 | if (this._isMouseOut) return; |
| 258 | const r3 = t4 == null ? void 0 : t4.map(((e4) => ({ link: e4 }))); |
| 259 | (_a2 = this._activeProviderReplies) == null ? void 0 : _a2.set(s3, r3), i3 = this._checkLinkProviderResult(s3, e3, i3), ((_b2 = this._activeProviderReplies) == null ? void 0 : _b2.size) === this._linkProviderService.linkProviders.length && this._removeIntersectingLinks(e3.y, this._activeProviderReplies); |
| 260 | })); |
| 261 | } |
| 262 | _removeIntersectingLinks(e3, t3) { |
| 263 | const i3 = /* @__PURE__ */ new Set(); |
| 264 | for (let s3 = 0; s3 < t3.size; s3++) { |
no test coverage detected