@diplodoc/transform 4.73.3 → 4.74.1

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 (43) hide show
  1. package/dist/css/_yfm-only.css.map +1 -1
  2. package/dist/css/_yfm-only.min.css.map +1 -1
  3. package/dist/css/base.css.map +1 -1
  4. package/dist/css/base.min.css.map +1 -1
  5. package/dist/css/print.css.map +1 -1
  6. package/dist/css/yfm.css +14 -15
  7. package/dist/css/yfm.css.map +3 -3
  8. package/dist/css/yfm.min.css +1 -1
  9. package/dist/css/yfm.min.css.map +3 -3
  10. package/dist/js/base.js +6 -6
  11. package/dist/js/base.js.map +2 -2
  12. package/dist/js/base.min.js +1 -1
  13. package/dist/js/base.min.js.map +2 -2
  14. package/dist/js/yfm.js +117 -105
  15. package/dist/js/yfm.js.map +3 -3
  16. package/dist/js/yfm.min.js +1 -1
  17. package/dist/js/yfm.min.js.map +3 -3
  18. package/lib/md.js +3 -1
  19. package/lib/md.js.map +1 -1
  20. package/lib/plugins/code.js +9 -3
  21. package/lib/plugins/code.js.map +1 -1
  22. package/lib/plugins/images/index.d.ts +2 -1
  23. package/lib/plugins/images/index.js +4 -3
  24. package/lib/plugins/images/index.js.map +1 -1
  25. package/lib/plugins/inline-code/index.js +4 -7
  26. package/lib/plugins/inline-code/index.js.map +1 -1
  27. package/lib/plugins/tabs.d.ts +1 -0
  28. package/lib/plugins/term/index.js +32 -27
  29. package/lib/plugins/term/index.js.map +1 -1
  30. package/lib/plugins/utils.d.ts +10 -1
  31. package/lib/plugins/utils.js +16 -3
  32. package/lib/plugins/utils.js.map +1 -1
  33. package/lib/typings.d.ts +11 -0
  34. package/package.json +3 -3
  35. package/src/js/tooltip/tooltip.ts +7 -7
  36. package/src/js/tooltip/types.ts +0 -1
  37. package/src/transform/md.ts +3 -0
  38. package/src/transform/plugins/code.ts +15 -4
  39. package/src/transform/plugins/images/index.ts +12 -3
  40. package/src/transform/plugins/inline-code/index.ts +4 -9
  41. package/src/transform/plugins/term/index.ts +32 -27
  42. package/src/transform/plugins/utils.ts +15 -2
  43. package/src/transform/typings.ts +11 -0
package/dist/js/yfm.js CHANGED
@@ -107,37 +107,49 @@
107
107
 
108
108
  // node_modules/@diplodoc/tabs-extension/build/runtime/index.js
109
109
  (() => {
110
- var x = "yfm-tabs", H = "yfm-tab", O = "yfm-tab-panel", L = "yfm-tab-list", l = "active";
111
- var T = "data-diplodoc-group", G = "data-diplodoc-key", y = "data-diplodoc-variant", S = "data-diplodoc-id", U = "defaultTabsGroup-";
110
+ var G = "yfm-tabs", D = "yfm-tab", h = "yfm-tab-panel", Q = "yfm-tab-list", d = "active";
111
+ var x = "data-diplodoc-group", L = "data-diplodoc-key", T = "data-diplodoc-variant", U = "data-diplodoc-id", W = "defaultTabsGroup-";
112
112
  var F = "data-diplodoc-forced";
113
113
  var w = "yfm-tabs-dropdown-select";
114
- var W = "yfm-tabs-vertical";
115
- var v = ((g) => (g.Regular = "regular", g.Radio = "radio", g.Dropdown = "dropdown", g.Accordion = "accordion", g))(v || {}), Z = /* @__PURE__ */ Symbol.for("diplodocTabs");
116
- var h = (C) => {
117
- let t = C.composedPath();
118
- return Array.isArray(t) && t.length > 0 ? t[0] : C.target;
119
- }, X = (C) => {
120
- let t = h(C);
114
+ var E = "yfm-tabs-vertical";
115
+ var O = ((g) => (g.Regular = "regular", g.Radio = "radio", g.Dropdown = "dropdown", g.Accordion = "accordion", g))(O || {}), v = /* @__PURE__ */ Symbol.for("diplodocTabs");
116
+ var B = (n) => {
117
+ let t = n.composedPath();
118
+ return Array.isArray(t) && t.length > 0 ? t[0] : n.target;
119
+ }, Z = (n) => {
120
+ let t = B(n);
121
121
  return !t || !t.matches;
122
- }, R = (C) => Math.abs(C.scrollHeight - C.clientHeight) > 1 ? C : C.parentElement ? R(C.parentElement) : void 0, Q = (C, t) => {
123
- let e = C.getBoundingClientRect(), o = t.getBoundingClientRect();
122
+ }, R = (n) => Math.abs(n.scrollHeight - n.clientHeight) > 1 ? n : n.parentElement ? R(n.parentElement) : void 0, H = (n, t) => {
123
+ let e = n.getBoundingClientRect(), o = t.getBoundingClientRect();
124
124
  return { top: e.top - o.top, left: e.left - o.left, scrollTop: t.scrollTop, scrollLeft: t.scrollLeft };
125
125
  };
126
- var n = { TABS: `.${x}`, TAB_LIST: `.${L}`, TAB: `.${H}`, TAB_PANEL: `.${O}`, VERTICAL_TABS: `.${W}` }, f = class {
126
+ var m = { TABS: `.${G}`, TAB_LIST: `.${Q}`, TAB: `.${D}`, TAB_PANEL: `.${h}`, VERTICAL_TABS: `.${E}` };
127
+ function S(n) {
128
+ return n.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
129
+ }
130
+ function f(n, t, e) {
131
+ let o = n.querySelectorAll(`${m.TABS}[${x}="${S(t)}"]`), g = [];
132
+ return o.forEach((c) => {
133
+ c.querySelectorAll(m.TAB).forEach((i) => {
134
+ i.getAttribute(L) === e && g.push(i);
135
+ });
136
+ }), g;
137
+ }
138
+ var y = class {
127
139
  constructor(t, e = {}) {
128
140
  this._onSelectTabHandlers = /* @__PURE__ */ new Set();
129
141
  this._currentPageTabGroups = [];
130
142
  this._isRestoringTabs = false;
131
143
  this._document = t, this._options = Object.assign({ saveTabsToLocalStorage: false, saveTabsToQueryStateMode: "none" }, e), this._document.addEventListener("click", (o) => {
132
- let g = h(o);
133
- if (o.target && this.hideAllDropdown(o.target), X(o)) return;
144
+ let g = B(o);
145
+ if (o.target && this.hideAllDropdown(o.target), Z(o)) return;
134
146
  if (this.isElementDropdownSelect(g)) {
135
- g.classList.toggle(l);
147
+ g.classList.toggle(d);
136
148
  return;
137
149
  }
138
150
  if (!this.isValidTabElement(g)) return;
139
- let I = this.getTabDataFromHTMLElement(g);
140
- I && this._selectTab(I, g);
151
+ let c = this.getTabDataFromHTMLElement(g);
152
+ c && this._selectTab(c, g);
141
153
  }), this._document.addEventListener("keydown", (o) => {
142
154
  let g = null;
143
155
  switch (o.key) {
@@ -159,12 +171,12 @@
159
171
  }
160
172
  }
161
173
  if (!g) return;
162
- let I = h(o);
163
- if (X(o) || !this.isValidTabElement(I)) return;
164
- let { tabs: a, nodes: c } = this.getTabs(I), i = this.getTabDataFromHTMLElement(I), r = a.findIndex(({ key: A }) => (i == null ? void 0 : i.key) && A === i.key);
165
- if (!i || a.length <= 1 || r === -1) return;
166
- let s = (r + (g === "left" ? -1 : 1) + a.length) % a.length;
167
- this.selectTab(a[s]), c[s].focus();
174
+ let c = B(o);
175
+ if (Z(o) || !this.isValidTabElement(c)) return;
176
+ let { tabs: i, nodes: I } = this.getTabs(c), a = this.getTabDataFromHTMLElement(c), r = i.findIndex(({ key: A }) => (a == null ? void 0 : a.key) && A === a.key);
177
+ if (!a || i.length <= 1 || r === -1) return;
178
+ let s = (r + (g === "left" ? -1 : 1) + i.length) % i.length;
179
+ this.selectTab(i[s]), I[s].focus();
168
180
  });
169
181
  }
170
182
  configure(t) {
@@ -176,7 +188,7 @@
176
188
  };
177
189
  }
178
190
  selectTabById(t, e) {
179
- let o = this._document.querySelector(`${n.TAB}[${S}="${t}"]`);
191
+ let o = this._document.querySelector(`${m.TAB}[${U}="${t}"]`);
180
192
  if (!o || !this.isValidTabElement(o)) return;
181
193
  let g = this.getTabDataFromHTMLElement(o);
182
194
  g && this._selectTab(g, o), e != null && e.scrollToElement && o.scrollIntoView();
@@ -200,11 +212,11 @@
200
212
  }
201
213
  getTabsFromSearchQuery() {
202
214
  let t = {}, e = new URLSearchParams(window.location.search);
203
- return e.has("tabs") && (e.get("tabs") || "").split(",").forEach((I) => {
204
- let a = I.split("_"), [c, i] = a, r = "regular";
205
- if (a.length === 3 && (r = a[2]), c && i && Object.values(v).includes(r)) {
206
- let s = i;
207
- t[c] = { key: s, variant: r };
215
+ return e.has("tabs") && (e.get("tabs") || "").split(",").forEach((c) => {
216
+ let i = c.split("_"), [I, a] = i, r = "regular";
217
+ if (i.length === 3 && (r = i[2]), I && a && Object.values(O).includes(r)) {
218
+ let s = a;
219
+ t[I] = { key: s, variant: r };
208
220
  }
209
221
  }), t;
210
222
  }
@@ -213,10 +225,10 @@
213
225
  }
214
226
  updateQueryParamWithTabs(t) {
215
227
  if (this._isRestoringTabs) return;
216
- let e = new URLSearchParams(window.location.search), o = Object.entries(t).map(([a, { key: c, variant: i }]) => i === "regular" ? `${a}_${c}` : `${a}_${c}_${i}`);
228
+ let e = new URLSearchParams(window.location.search), o = Object.entries(t).map(([i, { key: I, variant: a }]) => a === "regular" ? `${i}_${I}` : `${i}_${I}_${a}`);
217
229
  o.length > 0 ? e.set("tabs", o.join(",")) : e.delete("tabs");
218
- let g = history.state || {}, I = new URL(window.location.href);
219
- I.search = e.toString(), window.history.replaceState({ ...g }, document.title, I.href);
230
+ let g = history.state || {}, c = new URL(window.location.href);
231
+ c.search = e.toString(), window.history.replaceState({ ...g }, document.title, c.href);
220
232
  }
221
233
  getCurrentPageTabHistory(t) {
222
234
  return Object.fromEntries(Object.entries(t).filter(([e]) => this._currentPageTabGroups.includes(e)));
@@ -225,9 +237,9 @@
225
237
  this._currentPageTabGroups = this.getCurrentPageTabGroups();
226
238
  }
227
239
  getCurrentPageTabGroups() {
228
- let t = this._document.getElementsByClassName(x), e = /* @__PURE__ */ new Set();
240
+ let t = this._document.getElementsByClassName(G), e = /* @__PURE__ */ new Set();
229
241
  return Array.from(t).forEach((o) => {
230
- let g = o.getAttribute(T);
242
+ let g = o.getAttribute(x);
231
243
  g && e.add(g);
232
244
  }), Array.from(e);
233
245
  }
@@ -235,11 +247,11 @@
235
247
  localStorage.removeItem("tabsHistory"), this.updateQueryParamWithTabs({});
236
248
  }
237
249
  _selectTab(t, e) {
238
- let { group: o, key: g, variant: I } = t;
250
+ let { group: o, key: g, variant: c } = t;
239
251
  if (!o) return;
240
- this.saveTabPreferred({ group: o, key: g, variant: I });
241
- let a = e && R(e), c = a && Q(e, a);
242
- this.updateHTML({ group: o, key: g, variant: I }, e, I) > 0 && (this.fireSelectTabEvent({ group: o, key: g, variant: I }, e == null ? void 0 : e.dataset.diplodocId), c && this.resetScroll(e, a, c));
252
+ this.saveTabPreferred({ group: o, key: g, variant: c });
253
+ let i = e && R(e), I = i && H(e, i);
254
+ this.updateHTML({ group: o, key: g, variant: c }, e, c) > 0 && (this.fireSelectTabEvent({ group: o, key: g, variant: c }, e == null ? void 0 : e.dataset.diplodocId), I && this.resetScroll(e, i, I));
243
255
  }
244
256
  updateHTML(t, e, o) {
245
257
  switch (o) {
@@ -269,67 +281,67 @@
269
281
  }
270
282
  }
271
283
  updateHTMLRadio(t, e) {
272
- let { group: o, key: g } = t, { isForced: I, root: a } = this.didTabOpenForce(e), c = I ? `.yfm-vertical-tab[${F}="true"]` : "", i = this._document.querySelectorAll(`${n.TABS}[${T}="${o}"] ${n.TAB}[${G}="${g}"]${c}`);
273
- I && (a == null || a.removeAttribute(F));
274
- let r = 0;
275
- return i.forEach((s) => {
276
- let m = s.parentNode.children;
277
- for (let p = 0; p < m.length; p += 2) {
278
- let [d, b] = [m.item(p), m.item(p + 1)], u = d.children.item(0);
279
- if (d === s) {
280
- u.checked ? (d.classList.remove("active"), b == null || b.classList.remove("active"), u.removeAttribute("checked")) : (d.classList.add("active"), b == null || b.classList.add("active"), u.setAttribute("checked", "true"));
284
+ let { group: o, key: g } = t, { isForced: c, root: i } = this.didTabOpenForce(e), I = f(this._document, o, g);
285
+ c && (I = I.filter((r) => r.getAttribute(F) === "true")), c && (i == null || i.removeAttribute(F));
286
+ let a = 0;
287
+ return I.forEach((r) => {
288
+ let A = r.parentNode.children;
289
+ for (let C = 0; C < A.length; C += 2) {
290
+ let [b, l] = [A.item(C), A.item(C + 1)], p = b.children.item(0);
291
+ if (b === r) {
292
+ p.checked ? (b.classList.remove("active"), l == null || l.classList.remove("active"), p.removeAttribute("checked")) : (b.classList.add("active"), l == null || l.classList.add("active"), p.setAttribute("checked", "true"));
281
293
  continue;
282
294
  }
283
- u.hasAttribute("checked") && (d.classList.remove("active"), b == null || b.classList.remove("active"), u.removeAttribute("checked")), r++;
295
+ p.hasAttribute("checked") && (b.classList.remove("active"), l == null || l.classList.remove("active"), p.removeAttribute("checked")), a++;
284
296
  }
285
- }), r;
297
+ }), a;
286
298
  }
287
299
  updateHTMLRegular(t) {
288
- let { group: e, key: o } = t, g = this._document.querySelectorAll(`${n.TABS}[${T}="${e}"] ${n.TAB}[${G}="${o}"]`), I = 0;
289
- return g.forEach((a) => {
290
- let c = a;
291
- if (!this.isValidTabElement(c) || c.dataset.diplodocIsActive === "true") return;
292
- I++;
293
- let i = a, r = i.parentNode, s = r == null ? void 0 : r.parentNode, A = Array.from((r == null ? void 0 : r.querySelectorAll(n.TAB)) || []), m = Array.from((s == null ? void 0 : s.children) || []).filter((d) => d.classList.contains(O)), p = A.indexOf(i);
294
- A.forEach((d, b) => {
295
- let u = m[b], B = b === p, N = d;
296
- N.dataset.diplodocIsActive = B ? "true" : "false", d.classList.toggle(l, B), d.setAttribute("aria-selected", B.toString()), d.setAttribute("tabindex", B ? "0" : "-1"), u.classList.toggle(l, B);
300
+ let { group: e, key: o } = t, g = f(this._document, e, o), c = 0;
301
+ return g.forEach((i) => {
302
+ let I = i;
303
+ if (!this.isValidTabElement(I) || I.dataset.diplodocIsActive === "true") return;
304
+ c++;
305
+ let a = i, r = a.parentNode, s = r == null ? void 0 : r.parentNode, A = Array.from((r == null ? void 0 : r.querySelectorAll(m.TAB)) || []), C = Array.from((s == null ? void 0 : s.children) || []).filter((l) => l.classList.contains(h)), b = A.indexOf(a);
306
+ A.forEach((l, p) => {
307
+ let X = C[p], u = p === b, N = l;
308
+ N.dataset.diplodocIsActive = u ? "true" : "false", l.classList.toggle(d, u), l.setAttribute("aria-selected", u.toString()), l.setAttribute("tabindex", u ? "0" : "-1"), X.classList.toggle(d, u);
297
309
  });
298
- }), I;
310
+ }), c;
299
311
  }
300
312
  updateHTMLDropdown(t) {
301
- let { group: e, key: o } = t, g = this._document.querySelectorAll(`${n.TABS}[${T}="${e}"] ${n.TAB}[${G}="${o}"]`), I = 0;
302
- return g.forEach((a) => {
303
- let c = a.closest(`[${y}=dropdown]`);
304
- if (!(c != null && c.children)) return;
305
- let i = c.children.item(0), r = c.children.item(1);
306
- i == null || i.classList.remove(l);
307
- let s = Array.from((r == null ? void 0 : r.children) || []).indexOf(a) + 2;
308
- for (let A = 2; A < c.children.length; A++) {
309
- let m = c.children.item(A), p = r == null ? void 0 : r.children.item(A - 2);
310
- if (I++, s === A) {
311
- m == null || m.classList.add(l), p.classList.add(l), i.innerHTML = a.innerHTML, i.classList.add("filled");
313
+ let { group: e, key: o } = t, g = f(this._document, e, o), c = 0;
314
+ return g.forEach((i) => {
315
+ let I = i.closest(`[${T}=dropdown]`);
316
+ if (!(I != null && I.children)) return;
317
+ let a = I.children.item(0), r = I.children.item(1);
318
+ a == null || a.classList.remove(d);
319
+ let s = Array.from((r == null ? void 0 : r.children) || []).indexOf(i) + 2;
320
+ for (let A = 2; A < I.children.length; A++) {
321
+ let C = I.children.item(A), b = r == null ? void 0 : r.children.item(A - 2);
322
+ if (c++, s === A) {
323
+ C == null || C.classList.add(d), b.classList.add(d), a.innerHTML = i.innerHTML, a.classList.add("filled");
312
324
  continue;
313
325
  }
314
- p.classList.remove(l), m.classList.remove(l);
326
+ b.classList.remove(d), C.classList.remove(d);
315
327
  }
316
- }), I;
328
+ }), c;
317
329
  }
318
330
  updateHTMLAccordion(t, e) {
319
- let { group: o, key: g } = t, I = this._document.querySelectorAll(`${n.TABS}[${T}="${o}"] ${n.TAB}[${G}="${g}"]`), a = 0;
320
- return I.forEach((c) => {
321
- let i = c.closest(`[${y}=accordion]`);
322
- if (i != null && i.children) for (let r = 0; r < i.children.length; r += 2) {
323
- let s = i.children.item(r), A = i.children.item(r + 1);
324
- if (a++, c === s) {
325
- s == null || s.classList.toggle(l), A == null || A.classList.toggle(l);
331
+ let { group: o, key: g } = t, c = f(this._document, o, g), i = 0;
332
+ return c.forEach((I) => {
333
+ let a = I.closest(`[${T}=accordion]`);
334
+ if (a != null && a.children) for (let r = 0; r < a.children.length; r += 2) {
335
+ let s = a.children.item(r), A = a.children.item(r + 1);
336
+ if (i++, I === s) {
337
+ s == null || s.classList.toggle(d), A == null || A.classList.toggle(d);
326
338
  continue;
327
339
  }
328
- s == null || s.classList.remove(l), A == null || A.classList.remove(l);
340
+ s == null || s.classList.remove(d), A == null || A.classList.remove(d);
329
341
  }
330
342
  }), e && !this.checkVisible(e) && setTimeout(() => {
331
343
  e.scrollIntoView({ block: "nearest" });
332
- }), a;
344
+ }), i;
333
345
  }
334
346
  checkVisible(t) {
335
347
  let e = t.getBoundingClientRect(), o = Math.max(document.documentElement.clientHeight, window.innerHeight);
@@ -337,12 +349,12 @@
337
349
  }
338
350
  hideAllDropdown(t) {
339
351
  this._document.querySelectorAll(".yfm-tabs-dropdown-select.active").forEach((o) => {
340
- o.contains(t) || o.classList.remove(l);
352
+ o.contains(t) || o.classList.remove(d);
341
353
  });
342
354
  }
343
355
  resetScroll(t, e, o) {
344
- let g = Q(t, e), I = g.top - o.top, a = g.left - o.left, c = g.scrollTop - o.scrollTop, i = g.scrollLeft - o.scrollLeft;
345
- e.scrollTo(e.scrollLeft + a - i, e.scrollTop + I - c);
356
+ let g = H(t, e), c = g.top - o.top, i = g.left - o.left, I = g.scrollTop - o.scrollTop, a = g.scrollLeft - o.scrollLeft;
357
+ e.scrollTo(e.scrollLeft + i - a, e.scrollTop + c - I);
346
358
  }
347
359
  didTabOpenForce(t) {
348
360
  if (!t) return {};
@@ -351,13 +363,13 @@
351
363
  return { root: e, isForced: o };
352
364
  }
353
365
  fireSelectTabEvent(t, e) {
354
- let { group: o, key: g, variant: I } = t, a = o.startsWith(U) ? { key: g, variant: I } : t;
355
- this._onSelectTabHandlers.forEach((c) => {
356
- c({ tab: a, currentTabId: e });
366
+ let { group: o, key: g, variant: c } = t, i = o.startsWith(W) ? { key: g, variant: c } : t;
367
+ this._onSelectTabHandlers.forEach((I) => {
368
+ I({ tab: i, currentTabId: e });
357
369
  });
358
370
  }
359
371
  getTabsType(t) {
360
- let e = t.closest(`[${y}]`);
372
+ let e = t.closest(`[${T}]`);
361
373
  if (e) return e.dataset.diplodocVariant;
362
374
  }
363
375
  isValidTabElement(t) {
@@ -367,29 +379,29 @@
367
379
  return t.classList.contains(w);
368
380
  }
369
381
  getTabDataFromHTMLElement(t) {
370
- var I, a, c;
382
+ var c, i, I;
371
383
  let e = this.getTabsType(t);
372
384
  if (e === "radio") {
373
- let i = t.dataset.diplodocVerticalTab ? t : t.parentElement, r = i.dataset.diplodocKey, s = (I = i.closest(n.TABS)) == null ? void 0 : I.dataset.diplodocGroup;
385
+ let a = t.dataset.diplodocVerticalTab ? t : t.parentElement, r = a.dataset.diplodocKey, s = (c = a.closest(m.TABS)) == null ? void 0 : c.dataset.diplodocGroup;
374
386
  return r && s ? { group: s, key: r, variant: "radio" } : null;
375
387
  }
376
388
  if (e === "dropdown" || e === "accordion") {
377
- let i = t.dataset.diplodocKey, r = (a = t.closest(n.TABS)) == null ? void 0 : a.dataset.diplodocGroup;
378
- return i && r ? { group: r, key: i, variant: e } : null;
389
+ let a = t.dataset.diplodocKey, r = (i = t.closest(m.TABS)) == null ? void 0 : i.dataset.diplodocGroup;
390
+ return a && r ? { group: r, key: a, variant: e } : null;
379
391
  }
380
- let o = t.dataset.diplodocKey, g = (c = t.closest(n.TABS)) == null ? void 0 : c.dataset.diplodocGroup;
392
+ let o = t.dataset.diplodocKey, g = (I = t.closest(m.TABS)) == null ? void 0 : I.dataset.diplodocGroup;
381
393
  return o && g ? { group: g, key: o, variant: "regular" } : null;
382
394
  }
383
395
  getTabs(t) {
384
- var I, a;
385
- let e = (I = t.closest(n.TABS)) == null ? void 0 : I.dataset.diplodocGroup, o = (a = t.closest(n.TAB_LIST)) == null ? void 0 : a.querySelectorAll(n.TAB), g = [];
386
- return o.forEach((c) => {
387
- let i = c == null ? void 0 : c.dataset.diplodocKey;
388
- i && g.push({ group: e, key: i, variant: "regular" });
396
+ var c, i;
397
+ let e = (c = t.closest(m.TABS)) == null ? void 0 : c.dataset.diplodocGroup, o = (i = t.closest(m.TAB_LIST)) == null ? void 0 : i.querySelectorAll(m.TAB), g = [];
398
+ return o.forEach((I) => {
399
+ let a = I == null ? void 0 : I.dataset.diplodocKey;
400
+ a && g.push({ group: e, key: a, variant: "regular" });
389
401
  }), { tabs: g, nodes: o };
390
402
  }
391
403
  };
392
- typeof window != "undefined" && typeof document != "undefined" && !window[Z] && (window[Z] = new f(document));
404
+ typeof window != "undefined" && typeof document != "undefined" && !window[v] && (window[v] = new y(document));
393
405
  })();
394
406
 
395
407
  // src/js/polyfill.js
@@ -720,10 +732,10 @@
720
732
  };
721
733
  const show = (reference, text) => {
722
734
  hide();
723
- const tooltip3 = createTooltipElement({ text, className: additionalClassName });
735
+ const tooltip3 = createTooltipElement({ className: additionalClassName });
724
736
  const update = updateTooltipPosition.bind(null, options, reference, tooltip3);
725
737
  state.currentId = tooltip3.id;
726
- attachTooltip(tooltip3, reference);
738
+ attachTooltip(tooltip3, reference, text);
727
739
  state.unsubscribe = subscribeToScroll(reference, update);
728
740
  tooltip3.classList.add(TOOLTIP_OPEN_CLASS);
729
741
  update();
@@ -768,17 +780,16 @@
768
780
  };
769
781
  }
770
782
  function createTooltipElement(options) {
771
- const { text, className } = options;
783
+ const { className } = options;
772
784
  const id = generateId();
773
785
  const tooltip3 = document.createElement("div");
774
786
  tooltip3.id = id;
775
787
  tooltip3.className = className ? `${TOOLTIP_BASE_CLASS} ${className}` : TOOLTIP_BASE_CLASS;
776
- tooltip3.setAttribute("role", "tooltip");
788
+ tooltip3.setAttribute("role", "status");
777
789
  tooltip3.setAttribute("aria-live", "polite");
778
- tooltip3.textContent = text;
779
790
  return tooltip3;
780
791
  }
781
- function attachTooltip(tooltip3, reference) {
792
+ function attachTooltip(tooltip3, reference, text) {
782
793
  const container2 = document.querySelector(PAGE_CONTAINER_SELECTOR) || document.body;
783
794
  const ariaLive = reference.getAttribute("aria-live");
784
795
  reference.setAttribute(TOOLTIP_DATA_ATTR, tooltip3.id);
@@ -786,6 +797,7 @@
786
797
  tooltip3.setAttribute("aria-live", ariaLive);
787
798
  }
788
799
  container2.appendChild(tooltip3);
800
+ tooltip3.textContent = text;
789
801
  }
790
802
  function detachTooltip(tooltip3) {
791
803
  if (tooltip3.id) {