@diplodoc/transform 4.73.2 → 4.74.0

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/yfm.js +111 -99
  11. package/dist/js/yfm.js.map +3 -3
  12. package/dist/js/yfm.min.js +1 -1
  13. package/dist/js/yfm.min.js.map +3 -3
  14. package/lib/md.js +3 -1
  15. package/lib/md.js.map +1 -1
  16. package/lib/plugins/anchors/index.js +4 -1
  17. package/lib/plugins/anchors/index.js.map +1 -1
  18. package/lib/plugins/code.js +9 -3
  19. package/lib/plugins/code.js.map +1 -1
  20. package/lib/plugins/images/index.d.ts +2 -1
  21. package/lib/plugins/images/index.js +4 -3
  22. package/lib/plugins/images/index.js.map +1 -1
  23. package/lib/plugins/inline-code/index.js +4 -2
  24. package/lib/plugins/inline-code/index.js.map +1 -1
  25. package/lib/plugins/tabs.d.ts +1 -0
  26. package/lib/plugins/term/index.js +55 -31
  27. package/lib/plugins/term/index.js.map +1 -1
  28. package/lib/plugins/utils.d.ts +10 -1
  29. package/lib/plugins/utils.js +16 -3
  30. package/lib/plugins/utils.js.map +1 -1
  31. package/lib/typings.d.ts +11 -0
  32. package/lib/utils.js +1 -1
  33. package/lib/utils.js.map +1 -1
  34. package/package.json +3 -3
  35. package/src/transform/md.ts +3 -0
  36. package/src/transform/plugins/anchors/index.ts +4 -1
  37. package/src/transform/plugins/code.ts +15 -4
  38. package/src/transform/plugins/images/index.ts +12 -3
  39. package/src/transform/plugins/inline-code/index.ts +4 -3
  40. package/src/transform/plugins/term/index.ts +56 -32
  41. package/src/transform/plugins/utils.ts +15 -2
  42. package/src/transform/typings.ts +11 -0
  43. package/src/transform/utils.ts +1 -1
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