@diplodoc/transform 4.34.2-beta1 → 4.35.0-beta2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/css/_yfm-only.css +164 -0
- package/dist/css/_yfm-only.css.map +7 -0
- package/dist/css/_yfm-only.min.css +2 -0
- package/dist/css/_yfm-only.min.css.map +7 -0
- package/dist/css/base.css +580 -0
- package/dist/css/base.css.map +7 -0
- package/dist/css/base.min.css +2 -0
- package/dist/css/base.min.css.map +7 -0
- package/dist/css/print.css.map +2 -2
- package/dist/css/yfm.css +124 -98
- package/dist/css/yfm.css.map +3 -3
- package/dist/css/yfm.min.css +1 -1
- package/dist/css/yfm.min.css.map +3 -3
- package/dist/js/_yfm-only.js +223 -0
- package/dist/js/_yfm-only.js.map +7 -0
- package/dist/js/_yfm-only.min.js +2 -0
- package/dist/js/_yfm-only.min.js.map +7 -0
- package/dist/js/base.js +138 -0
- package/dist/js/base.js.map +7 -0
- package/dist/js/base.min.js +2 -0
- package/dist/js/base.min.js.map +7 -0
- package/dist/js/yfm.js +100 -100
- package/dist/js/yfm.js.map +3 -3
- package/dist/js/yfm.min.js +1 -1
- package/dist/js/yfm.min.js.map +3 -3
- package/lib/md.d.ts +2 -2
- package/lib/md.js +2 -2
- package/lib/plugins/csp.d.ts +6 -0
- package/lib/plugins/csp.js +26 -0
- package/lib/plugins/csp.js.map +1 -0
- package/lib/plugins/includes/collect.js +16 -11
- package/lib/plugins/includes/collect.js.map +1 -1
- package/lib/plugins/includes/types.d.ts +1 -0
- package/lib/plugins/tabs.js +11 -1
- package/lib/plugins/tabs.js.map +1 -1
- package/lib/plugins/utils.d.ts +1 -0
- package/lib/plugins/utils.js +10 -1
- package/lib/plugins/utils.js.map +1 -1
- package/lib/plugins/video/const.d.ts +8 -1
- package/lib/plugins/video/const.js +4 -0
- package/lib/plugins/video/const.js.map +1 -1
- package/lib/plugins/video/index.js +12 -3
- package/lib/plugins/video/index.js.map +1 -1
- package/lib/plugins/video/parsers.d.ts +3 -1
- package/lib/plugins/video/parsers.js +59 -28
- package/lib/plugins/video/parsers.js.map +1 -1
- package/lib/plugins/video/types.d.ts +6 -27
- package/lib/plugins/video/utils.js +5 -1
- package/lib/plugins/video/utils.js.map +1 -1
- package/lib/preprocessors/included/index.js +1 -1
- package/lib/preprocessors/included/index.js.map +1 -1
- package/package.json +2 -2
- package/src/js/_yfm-only.ts +1 -0
- package/src/js/base.ts +2 -0
- package/src/js/index.ts +2 -3
- package/src/scss/_yfm-only.scss +12 -0
- package/src/scss/base.scss +4 -0
- package/src/scss/yfm.scss +2 -9
- package/src/transform/index.ts +2 -2
- package/src/transform/md.ts +2 -2
- package/src/transform/plugins/changelog/collect.ts +2 -2
- package/src/transform/plugins/includes/collect.ts +18 -23
- package/src/transform/plugins/includes/types.ts +1 -0
- package/src/transform/plugins/tabs.ts +11 -1
- package/src/transform/plugins/utils.ts +16 -0
- package/src/transform/plugins/video/const.ts +11 -0
- package/src/transform/plugins/video/index.ts +15 -3
- package/src/transform/plugins/video/parsers.ts +63 -28
- package/src/transform/plugins/video/types.ts +8 -7
- package/src/transform/plugins/video/utils.ts +5 -1
- package/src/transform/preprocessors/included/index.ts +1 -1
package/dist/js/yfm.js
CHANGED
|
@@ -28,9 +28,9 @@
|
|
|
28
28
|
));
|
|
29
29
|
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
30
30
|
|
|
31
|
-
// node_modules/get-root-node-polyfill/index.js
|
|
31
|
+
// ../../node_modules/get-root-node-polyfill/index.js
|
|
32
32
|
var require_get_root_node_polyfill = __commonJS({
|
|
33
|
-
"node_modules/get-root-node-polyfill/index.js"(exports, module) {
|
|
33
|
+
"../../node_modules/get-root-node-polyfill/index.js"(exports, module) {
|
|
34
34
|
"use strict";
|
|
35
35
|
function getRootNode2(opt) {
|
|
36
36
|
var composed = typeof opt === "object" && Boolean(opt.composed);
|
|
@@ -58,13 +58,13 @@
|
|
|
58
58
|
}
|
|
59
59
|
});
|
|
60
60
|
|
|
61
|
-
//
|
|
61
|
+
// ../../extensions/cut/build/runtime/index.js
|
|
62
62
|
(() => {
|
|
63
63
|
var c = "yfm_cut", i = { CUT: ".yfm .yfm-cut", TITLE: ".yfm .yfm-cut-title", CONTENT: ".yfm .yfm-cut-content" }, C = { OPEN: "open" };
|
|
64
64
|
var o = (e) => {
|
|
65
65
|
let t = e.composedPath();
|
|
66
66
|
return Array.isArray(t) && t.length > 0 ? t[0] : e.target;
|
|
67
|
-
},
|
|
67
|
+
}, A = (e) => {
|
|
68
68
|
let t = o(e);
|
|
69
69
|
return !t || !t.matches;
|
|
70
70
|
};
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
constructor(t) {
|
|
73
73
|
__publicField(this, "__doc");
|
|
74
74
|
__publicField(this, "_onDocClick", (t) => {
|
|
75
|
-
if (
|
|
75
|
+
if (A(t)) return;
|
|
76
76
|
let g = this._findTitleInPath(t);
|
|
77
77
|
g && this._toggleCut(g);
|
|
78
78
|
});
|
|
@@ -108,35 +108,35 @@
|
|
|
108
108
|
|
|
109
109
|
// node_modules/@diplodoc/tabs-extension/build/runtime/index.js
|
|
110
110
|
(() => {
|
|
111
|
-
var
|
|
112
|
-
var
|
|
113
|
-
var
|
|
114
|
-
var
|
|
115
|
-
var
|
|
116
|
-
var
|
|
117
|
-
var
|
|
118
|
-
let t =
|
|
119
|
-
return Array.isArray(t) && t.length > 0 ? t[0] :
|
|
120
|
-
}, Z = (
|
|
121
|
-
let t =
|
|
111
|
+
var W = "yfm-tabs", R = "yfm-tab", O = "yfm-tab-panel", L = "yfm-tab-list", r = "active";
|
|
112
|
+
var T = "data-diplodoc-group", G = "data-diplodoc-key", x = "data-diplodoc-variant", v = "data-diplodoc-id", H = "defaultTabsGroup-";
|
|
113
|
+
var h = "data-diplodoc-forced";
|
|
114
|
+
var N = "yfm-tabs-dropdown-select";
|
|
115
|
+
var U = "yfm-tabs-vertical";
|
|
116
|
+
var F = Symbol.for("diplodocTabs");
|
|
117
|
+
var y = (s) => {
|
|
118
|
+
let t = s.composedPath();
|
|
119
|
+
return Array.isArray(t) && t.length > 0 ? t[0] : s.target;
|
|
120
|
+
}, Z = (s) => {
|
|
121
|
+
let t = y(s);
|
|
122
122
|
return !t || !t.matches;
|
|
123
|
-
},
|
|
124
|
-
let e =
|
|
123
|
+
}, Q = (s) => Math.abs(s.scrollHeight - s.clientHeight) > 1 ? s : s.parentElement ? Q(s.parentElement) : void 0, X = (s, t) => {
|
|
124
|
+
let e = s.getBoundingClientRect(), g = t.getBoundingClientRect();
|
|
125
125
|
return { top: e.top - g.top, left: e.left - g.left, scrollTop: t.scrollTop, scrollLeft: t.scrollLeft };
|
|
126
126
|
};
|
|
127
|
-
var
|
|
127
|
+
var n = { TABS: `.${W}`, TAB_LIST: `.${L}`, TAB: `.${R}`, TAB_PANEL: `.${O}`, VERTICAL_TABS: `.${U}` }, f = class {
|
|
128
128
|
constructor(t) {
|
|
129
129
|
this._onSelectTabHandlers = /* @__PURE__ */ new Set();
|
|
130
130
|
this._document = t, this._document.addEventListener("click", (e) => {
|
|
131
|
-
let g =
|
|
131
|
+
let g = y(e);
|
|
132
132
|
if (e.target && this.hideAllDropdown(e.target), Z(e)) return;
|
|
133
133
|
if (this.isElementDropdownSelect(g)) {
|
|
134
|
-
g.classList.toggle(
|
|
134
|
+
g.classList.toggle(r);
|
|
135
135
|
return;
|
|
136
136
|
}
|
|
137
137
|
if (!this.isValidTabElement(g)) return;
|
|
138
|
-
let
|
|
139
|
-
|
|
138
|
+
let o = this.getTabDataFromHTMLElement(g);
|
|
139
|
+
o && this._selectTab(o, g);
|
|
140
140
|
}), this._document.addEventListener("keydown", (e) => {
|
|
141
141
|
let g = null;
|
|
142
142
|
switch (e.key) {
|
|
@@ -158,12 +158,12 @@
|
|
|
158
158
|
}
|
|
159
159
|
}
|
|
160
160
|
if (!g) return;
|
|
161
|
-
let
|
|
162
|
-
if (Z(e) || !this.isValidTabElement(
|
|
163
|
-
let { tabs:
|
|
164
|
-
if (!
|
|
165
|
-
let
|
|
166
|
-
this.selectTab(
|
|
161
|
+
let o = y(e);
|
|
162
|
+
if (Z(e) || !this.isValidTabElement(o)) return;
|
|
163
|
+
let { tabs: c, nodes: a } = this.getTabs(o), I = this.getTabDataFromHTMLElement(o), A = c.findIndex(({ key: C }) => (I == null ? void 0 : I.key) && C === I.key);
|
|
164
|
+
if (!I || c.length <= 1 || A === -1) return;
|
|
165
|
+
let i = (A + (g === "left" ? -1 : 1) + c.length) % c.length;
|
|
166
|
+
this.selectTab(c[i]), a[i].focus();
|
|
167
167
|
});
|
|
168
168
|
}
|
|
169
169
|
onSelectTab(t) {
|
|
@@ -172,19 +172,19 @@
|
|
|
172
172
|
};
|
|
173
173
|
}
|
|
174
174
|
selectTabById(t, e) {
|
|
175
|
-
let g = this._document.querySelector(`${
|
|
175
|
+
let g = this._document.querySelector(`${n.TAB}[${v}="${t}"]`);
|
|
176
176
|
if (!g || !this.isValidTabElement(g)) return;
|
|
177
|
-
let
|
|
178
|
-
|
|
177
|
+
let o = this.getTabDataFromHTMLElement(g);
|
|
178
|
+
o && this._selectTab(o, g), e != null && e.scrollToElement && g.scrollIntoView();
|
|
179
179
|
}
|
|
180
180
|
selectTab(t) {
|
|
181
181
|
this._selectTab(t);
|
|
182
182
|
}
|
|
183
183
|
_selectTab(t, e) {
|
|
184
|
-
let { group: g, key:
|
|
184
|
+
let { group: g, key: o, variant: c } = t;
|
|
185
185
|
if (!g) return;
|
|
186
|
-
let
|
|
187
|
-
this.updateHTML({ group: g, key:
|
|
186
|
+
let a = e && Q(e), I = a && X(e, a);
|
|
187
|
+
this.updateHTML({ group: g, key: o, variant: c }, e, c) > 0 && (this.fireSelectTabEvent({ group: g, key: o, variant: c }, e == null ? void 0 : e.dataset.diplodocId), I && this.resetScroll(e, a, I));
|
|
188
188
|
}
|
|
189
189
|
updateHTML(t, e, g) {
|
|
190
190
|
switch (g) {
|
|
@@ -200,67 +200,67 @@
|
|
|
200
200
|
return 0;
|
|
201
201
|
}
|
|
202
202
|
updateHTMLRadio(t, e) {
|
|
203
|
-
let { group: g, key:
|
|
204
|
-
|
|
205
|
-
let
|
|
206
|
-
return
|
|
207
|
-
let
|
|
208
|
-
for (let p = 0; p <
|
|
209
|
-
let [
|
|
210
|
-
if (
|
|
211
|
-
u.checked ? (
|
|
203
|
+
let { group: g, key: o } = t, { isForced: c, root: a } = this.didTabOpenForce(e), I = c ? `.yfm-vertical-tab[${h}="true"]` : "", A = this._document.querySelectorAll(`${n.TABS}[${T}="${g}"] ${n.TAB}[${G}="${o}"]${I}`);
|
|
204
|
+
c && (a == null || a.removeAttribute(h));
|
|
205
|
+
let i = 0;
|
|
206
|
+
return A.forEach((C) => {
|
|
207
|
+
let m = C.parentNode.children;
|
|
208
|
+
for (let p = 0; p < m.length; p += 2) {
|
|
209
|
+
let [d, b] = [m.item(p), m.item(p + 1)], u = d.children.item(0);
|
|
210
|
+
if (d === C) {
|
|
211
|
+
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"));
|
|
212
212
|
continue;
|
|
213
213
|
}
|
|
214
|
-
u.hasAttribute("checked") && (
|
|
214
|
+
u.hasAttribute("checked") && (d.classList.remove("active"), b == null || b.classList.remove("active"), u.removeAttribute("checked")), i++;
|
|
215
215
|
}
|
|
216
|
-
}),
|
|
216
|
+
}), i;
|
|
217
217
|
}
|
|
218
218
|
updateHTMLRegular(t) {
|
|
219
|
-
let { group: e, key: g } = t,
|
|
220
|
-
return
|
|
221
|
-
let
|
|
222
|
-
if (!this.isValidTabElement(
|
|
223
|
-
|
|
224
|
-
let
|
|
225
|
-
|
|
226
|
-
let u =
|
|
227
|
-
D.dataset.diplodocIsActive = B ? "true" : "false",
|
|
219
|
+
let { group: e, key: g } = t, o = this._document.querySelectorAll(`${n.TABS}[${T}="${e}"] ${n.TAB}[${G}="${g}"]`), c = 0;
|
|
220
|
+
return o.forEach((a) => {
|
|
221
|
+
let I = a;
|
|
222
|
+
if (!this.isValidTabElement(I) || I.dataset.diplodocIsActive === "true") return;
|
|
223
|
+
c++;
|
|
224
|
+
let A = a, i = A.parentNode, C = i == null ? void 0 : i.parentNode, l = Array.from((i == null ? void 0 : i.querySelectorAll(n.TAB)) || []), m = Array.from((C == null ? void 0 : C.children) || []).filter((d) => d.classList.contains(O)), p = l.indexOf(A);
|
|
225
|
+
l.forEach((d, b) => {
|
|
226
|
+
let u = m[b], B = b === p, D = d;
|
|
227
|
+
D.dataset.diplodocIsActive = B ? "true" : "false", d.classList.toggle(r, B), d.setAttribute("aria-selected", B.toString()), d.setAttribute("tabindex", B ? "0" : "-1"), u.classList.toggle(r, B);
|
|
228
228
|
});
|
|
229
|
-
}),
|
|
229
|
+
}), c;
|
|
230
230
|
}
|
|
231
231
|
updateHTMLDropdown(t) {
|
|
232
|
-
let { group: e, key: g } = t,
|
|
233
|
-
return
|
|
234
|
-
let
|
|
235
|
-
if (!(
|
|
236
|
-
let
|
|
237
|
-
|
|
238
|
-
let
|
|
239
|
-
for (let
|
|
240
|
-
let
|
|
241
|
-
if (
|
|
242
|
-
|
|
232
|
+
let { group: e, key: g } = t, o = this._document.querySelectorAll(`${n.TABS}[${T}="${e}"] ${n.TAB}[${G}="${g}"]`), c = 0;
|
|
233
|
+
return o.forEach((a) => {
|
|
234
|
+
let I = a.closest(`[${x}=dropdown]`);
|
|
235
|
+
if (!(I != null && I.children)) return;
|
|
236
|
+
let A = I.children.item(0), i = I.children.item(1);
|
|
237
|
+
A == null || A.classList.remove(r);
|
|
238
|
+
let C = Array.from((i == null ? void 0 : i.children) || []).indexOf(a) + 2;
|
|
239
|
+
for (let l = 2; l < I.children.length; l++) {
|
|
240
|
+
let m = I.children.item(l), p = i == null ? void 0 : i.children.item(l - 2);
|
|
241
|
+
if (c++, C === l) {
|
|
242
|
+
m == null || m.classList.add(r), p.classList.add(r), A.innerHTML = a.innerHTML, A.classList.add("filled");
|
|
243
243
|
continue;
|
|
244
244
|
}
|
|
245
|
-
p.
|
|
245
|
+
p.classList.remove(r), m.classList.remove(r);
|
|
246
246
|
}
|
|
247
|
-
}),
|
|
247
|
+
}), c;
|
|
248
248
|
}
|
|
249
249
|
updateHTMLAccordion(t, e) {
|
|
250
|
-
let { group: g, key:
|
|
251
|
-
return
|
|
252
|
-
let
|
|
253
|
-
if (
|
|
254
|
-
let
|
|
255
|
-
if (
|
|
256
|
-
|
|
250
|
+
let { group: g, key: o } = t, c = this._document.querySelectorAll(`${n.TABS}[${T}="${g}"] ${n.TAB}[${G}="${o}"]`), a = 0;
|
|
251
|
+
return c.forEach((I) => {
|
|
252
|
+
let A = I.closest(`[${x}=accordion]`);
|
|
253
|
+
if (A != null && A.children) for (let i = 0; i < A.children.length; i += 2) {
|
|
254
|
+
let C = A.children.item(i), l = A.children.item(i + 1);
|
|
255
|
+
if (a++, I === C) {
|
|
256
|
+
C == null || C.classList.toggle(r), l == null || l.classList.toggle(r);
|
|
257
257
|
continue;
|
|
258
258
|
}
|
|
259
|
-
|
|
259
|
+
C == null || C.classList.remove(r), l == null || l.classList.remove(r);
|
|
260
260
|
}
|
|
261
261
|
}), e && !this.checkVisible(e) && setTimeout(() => {
|
|
262
262
|
e.scrollIntoView({ block: "nearest" });
|
|
263
|
-
}),
|
|
263
|
+
}), a;
|
|
264
264
|
}
|
|
265
265
|
checkVisible(t) {
|
|
266
266
|
let e = t.getBoundingClientRect(), g = Math.max(document.documentElement.clientHeight, window.innerHeight);
|
|
@@ -268,12 +268,12 @@
|
|
|
268
268
|
}
|
|
269
269
|
hideAllDropdown(t) {
|
|
270
270
|
this._document.querySelectorAll(".yfm-tabs-dropdown-select.active").forEach((g) => {
|
|
271
|
-
g.contains(t) || g.classList.remove(
|
|
271
|
+
g.contains(t) || g.classList.remove(r);
|
|
272
272
|
});
|
|
273
273
|
}
|
|
274
274
|
resetScroll(t, e, g) {
|
|
275
|
-
let
|
|
276
|
-
e.scrollTo(e.scrollLeft +
|
|
275
|
+
let o = X(t, e), c = o.top - g.top, a = o.left - g.left, I = o.scrollTop - g.scrollTop, A = o.scrollLeft - g.scrollLeft;
|
|
276
|
+
e.scrollTo(e.scrollLeft + a - A, e.scrollTop + c - I);
|
|
277
277
|
}
|
|
278
278
|
didTabOpenForce(t) {
|
|
279
279
|
if (!t) return {};
|
|
@@ -282,45 +282,45 @@
|
|
|
282
282
|
return { root: e, isForced: g };
|
|
283
283
|
}
|
|
284
284
|
fireSelectTabEvent(t, e) {
|
|
285
|
-
let { group: g, key:
|
|
286
|
-
this._onSelectTabHandlers.forEach((
|
|
287
|
-
|
|
285
|
+
let { group: g, key: o, variant: c } = t, a = g.startsWith(H) ? { key: o, variant: c } : t;
|
|
286
|
+
this._onSelectTabHandlers.forEach((I) => {
|
|
287
|
+
I({ tab: a, currentTabId: e });
|
|
288
288
|
});
|
|
289
289
|
}
|
|
290
290
|
getTabsType(t) {
|
|
291
|
-
let e = t.closest(`[${
|
|
291
|
+
let e = t.closest(`[${x}]`);
|
|
292
292
|
if (e) return e.dataset.diplodocVariant;
|
|
293
293
|
}
|
|
294
294
|
isValidTabElement(t) {
|
|
295
295
|
return !!this.getTabsType(t);
|
|
296
296
|
}
|
|
297
297
|
isElementDropdownSelect(t) {
|
|
298
|
-
return t.classList.contains(
|
|
298
|
+
return t.classList.contains(N);
|
|
299
299
|
}
|
|
300
300
|
getTabDataFromHTMLElement(t) {
|
|
301
|
-
var
|
|
301
|
+
var c, a, I;
|
|
302
302
|
let e = this.getTabsType(t);
|
|
303
303
|
if (e === "radio") {
|
|
304
|
-
let
|
|
305
|
-
return
|
|
304
|
+
let A = t.dataset.diplodocVerticalTab ? t : t.parentElement, i = A.dataset.diplodocKey, C = (c = A.closest(n.TABS)) == null ? void 0 : c.dataset.diplodocGroup;
|
|
305
|
+
return i && C ? { group: C, key: i, variant: "radio" } : null;
|
|
306
306
|
}
|
|
307
307
|
if (e === "dropdown" || e === "accordion") {
|
|
308
|
-
let
|
|
309
|
-
return
|
|
308
|
+
let A = t.dataset.diplodocKey, i = (a = t.closest(n.TABS)) == null ? void 0 : a.dataset.diplodocGroup;
|
|
309
|
+
return A && i ? { group: i, key: A, variant: e } : null;
|
|
310
310
|
}
|
|
311
|
-
let g = t.dataset.diplodocKey,
|
|
312
|
-
return g &&
|
|
311
|
+
let g = t.dataset.diplodocKey, o = (I = t.closest(n.TABS)) == null ? void 0 : I.dataset.diplodocGroup;
|
|
312
|
+
return g && o ? { group: o, key: g, variant: "regular" } : null;
|
|
313
313
|
}
|
|
314
314
|
getTabs(t) {
|
|
315
|
-
var
|
|
316
|
-
let e = (
|
|
317
|
-
return g.forEach((
|
|
318
|
-
let
|
|
319
|
-
|
|
320
|
-
}), { tabs:
|
|
315
|
+
var c, a;
|
|
316
|
+
let e = (c = t.closest(n.TABS)) == null ? void 0 : c.dataset.diplodocGroup, g = (a = t.closest(n.TAB_LIST)) == null ? void 0 : a.querySelectorAll(n.TAB), o = [];
|
|
317
|
+
return g.forEach((I) => {
|
|
318
|
+
let A = I == null ? void 0 : I.dataset.diplodocKey;
|
|
319
|
+
A && o.push({ group: e, key: A, variant: "regular" });
|
|
320
|
+
}), { tabs: o, nodes: g };
|
|
321
321
|
}
|
|
322
322
|
};
|
|
323
|
-
typeof window != "undefined" && typeof document != "undefined" && !window[
|
|
323
|
+
typeof window != "undefined" && typeof document != "undefined" && !window[F] && (window[F] = new f(document));
|
|
324
324
|
})();
|
|
325
325
|
|
|
326
326
|
// src/js/polyfill.js
|