@diplodoc/client 3.2.0 → 3.3.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.
- package/.github/workflows/deps.yml +48 -0
- package/CHANGELOG.md +21 -0
- package/build/client/app.css +1 -1
- package/build/client/app.css.map +1 -1
- package/build/client/app.js +1 -1
- package/build/client/app.js.map +1 -1
- package/build/client/app.rtl.css +1 -1
- package/build/client/vendor.css +89 -37
- package/build/client/vendor.css.map +1 -1
- package/build/client/vendor.js +1 -1
- package/build/client/vendor.js.map +1 -1
- package/build/client/vendor.rtl.css +89 -37
- package/build/server/app.js +8 -17
- package/build/server/app.js.map +1 -1
- package/build/server/vendor.js +412 -142
- package/build/server/vendor.js.map +1 -1
- package/package.json +3 -5
package/build/server/vendor.js
CHANGED
|
@@ -14743,7 +14743,21 @@ function transform({
|
|
|
14743
14743
|
var __defProp = Object.defineProperty;
|
|
14744
14744
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
14745
14745
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
14746
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
14746
14747
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
14748
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
14749
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
14750
|
+
var __spreadValues = (a, b) => {
|
|
14751
|
+
for (var prop in b || (b = {}))
|
|
14752
|
+
if (__hasOwnProp.call(b, prop))
|
|
14753
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14754
|
+
if (__getOwnPropSymbols)
|
|
14755
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14756
|
+
if (__propIsEnum.call(b, prop))
|
|
14757
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14758
|
+
}
|
|
14759
|
+
return a;
|
|
14760
|
+
};
|
|
14747
14761
|
var __export = (target, all) => {
|
|
14748
14762
|
for (var name in all)
|
|
14749
14763
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -14761,6 +14775,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
14761
14775
|
// src/react/index.ts
|
|
14762
14776
|
var react_exports = {};
|
|
14763
14777
|
__export(react_exports, {
|
|
14778
|
+
TabsRuntime: () => TabsRuntime,
|
|
14764
14779
|
useDiplodocTabs: () => useDiplodocTabs
|
|
14765
14780
|
});
|
|
14766
14781
|
module.exports = __toCommonJS(react_exports);
|
|
@@ -14819,6 +14834,23 @@ function useDiplodocTabs(callback = void 0) {
|
|
|
14819
14834
|
)
|
|
14820
14835
|
};
|
|
14821
14836
|
}
|
|
14837
|
+
|
|
14838
|
+
// src/react/TabsRuntime.ts
|
|
14839
|
+
var import_react2 = __webpack_require__(96540);
|
|
14840
|
+
function TabsRuntime(props = {}) {
|
|
14841
|
+
if (typeof window === "undefined") {
|
|
14842
|
+
return null;
|
|
14843
|
+
}
|
|
14844
|
+
const tabs = useDiplodocTabs();
|
|
14845
|
+
(0, import_react2.useEffect)(() => {
|
|
14846
|
+
tabs.configure(__spreadValues({}, props));
|
|
14847
|
+
}, [props, tabs]);
|
|
14848
|
+
(0, import_react2.useEffect)(() => {
|
|
14849
|
+
tabs.onPageChanged();
|
|
14850
|
+
tabs.restoreTabs(__spreadValues(__spreadValues({}, tabs.getTabsFromLocalStorage()), tabs.getTabsFromSearchQuery()));
|
|
14851
|
+
}, [props.router]);
|
|
14852
|
+
return null;
|
|
14853
|
+
}
|
|
14822
14854
|
//# sourceMappingURL=index.js.map
|
|
14823
14855
|
|
|
14824
14856
|
|
|
@@ -14834,9 +14866,22 @@ function useDiplodocTabs(callback = void 0) {
|
|
|
14834
14866
|
var __defProp = Object.defineProperty;
|
|
14835
14867
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
14836
14868
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
14869
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
14837
14870
|
var __getProtoOf = Object.getPrototypeOf;
|
|
14838
14871
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
14872
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
14839
14873
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
14874
|
+
var __spreadValues = (a, b) => {
|
|
14875
|
+
for (var prop in b || (b = {}))
|
|
14876
|
+
if (__hasOwnProp.call(b, prop))
|
|
14877
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14878
|
+
if (__getOwnPropSymbols)
|
|
14879
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14880
|
+
if (__propIsEnum.call(b, prop))
|
|
14881
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14882
|
+
}
|
|
14883
|
+
return a;
|
|
14884
|
+
};
|
|
14840
14885
|
var __commonJS = (cb, mod) => function __require() {
|
|
14841
14886
|
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
14842
14887
|
};
|
|
@@ -14938,38 +14983,40 @@ function useDiplodocTabs(callback = void 0) {
|
|
|
14938
14983
|
|
|
14939
14984
|
// node_modules/@diplodoc/tabs-extension/build/runtime/index.js
|
|
14940
14985
|
(() => {
|
|
14941
|
-
var
|
|
14942
|
-
var
|
|
14943
|
-
var
|
|
14944
|
-
var
|
|
14945
|
-
var
|
|
14946
|
-
var
|
|
14947
|
-
var
|
|
14948
|
-
let t =
|
|
14949
|
-
return Array.isArray(t) && t.length > 0 ? t[0] :
|
|
14950
|
-
}, Z = (
|
|
14951
|
-
let t =
|
|
14986
|
+
var x = "yfm-tabs", H = "yfm-tab", F = "yfm-tab-panel", D = "yfm-tab-list", l = "active";
|
|
14987
|
+
var B = "data-diplodoc-group", G = "data-diplodoc-key", y = "data-diplodoc-variant", U = "data-diplodoc-id", L = "defaultTabsGroup-";
|
|
14988
|
+
var R = "data-diplodoc-forced";
|
|
14989
|
+
var w = "yfm-tabs-dropdown-select";
|
|
14990
|
+
var W = "yfm-tabs-vertical";
|
|
14991
|
+
var O = ((g) => (g.Regular = "regular", g.Radio = "radio", g.Dropdown = "dropdown", g.Accordion = "accordion", g))(O || {}), X = Symbol.for("diplodocTabs");
|
|
14992
|
+
var f = (C) => {
|
|
14993
|
+
let t = C.composedPath();
|
|
14994
|
+
return Array.isArray(t) && t.length > 0 ? t[0] : C.target;
|
|
14995
|
+
}, Z = (C) => {
|
|
14996
|
+
let t = f(C);
|
|
14952
14997
|
return !t || !t.matches;
|
|
14953
|
-
},
|
|
14954
|
-
let e =
|
|
14955
|
-
return { top: e.top -
|
|
14998
|
+
}, v = (C) => Math.abs(C.scrollHeight - C.clientHeight) > 1 ? C : C.parentElement ? v(C.parentElement) : void 0, Q = (C, t) => {
|
|
14999
|
+
let e = C.getBoundingClientRect(), o = t.getBoundingClientRect();
|
|
15000
|
+
return { top: e.top - o.top, left: e.left - o.left, scrollTop: t.scrollTop, scrollLeft: t.scrollLeft };
|
|
14956
15001
|
};
|
|
14957
|
-
var n = { TABS: `.${
|
|
14958
|
-
constructor(t) {
|
|
15002
|
+
var n = { TABS: `.${x}`, TAB_LIST: `.${D}`, TAB: `.${H}`, TAB_PANEL: `.${F}`, VERTICAL_TABS: `.${W}` }, h = class {
|
|
15003
|
+
constructor(t, e = {}) {
|
|
14959
15004
|
this._onSelectTabHandlers = /* @__PURE__ */ new Set();
|
|
14960
|
-
this.
|
|
14961
|
-
|
|
14962
|
-
|
|
15005
|
+
this._currentPageTabGroups = [];
|
|
15006
|
+
this._isRestoringTabs = false;
|
|
15007
|
+
this._document = t, this._options = Object.assign({ saveTabsToLocalStorage: false, saveTabsToQueryStateMode: "none" }, e), this._document.addEventListener("click", (o) => {
|
|
15008
|
+
let g = f(o);
|
|
15009
|
+
if (o.target && this.hideAllDropdown(o.target), Z(o)) return;
|
|
14963
15010
|
if (this.isElementDropdownSelect(g)) {
|
|
14964
|
-
g.classList.toggle(
|
|
15011
|
+
g.classList.toggle(l);
|
|
14965
15012
|
return;
|
|
14966
15013
|
}
|
|
14967
15014
|
if (!this.isValidTabElement(g)) return;
|
|
14968
|
-
let
|
|
14969
|
-
|
|
14970
|
-
}), this._document.addEventListener("keydown", (
|
|
15015
|
+
let I = this.getTabDataFromHTMLElement(g);
|
|
15016
|
+
I && this._selectTab(I, g);
|
|
15017
|
+
}), this._document.addEventListener("keydown", (o) => {
|
|
14971
15018
|
let g = null;
|
|
14972
|
-
switch (
|
|
15019
|
+
switch (o.key) {
|
|
14973
15020
|
case "ArrowLeft": {
|
|
14974
15021
|
g = "left";
|
|
14975
15022
|
break;
|
|
@@ -14988,36 +15035,90 @@ function useDiplodocTabs(callback = void 0) {
|
|
|
14988
15035
|
}
|
|
14989
15036
|
}
|
|
14990
15037
|
if (!g) return;
|
|
14991
|
-
let
|
|
14992
|
-
if (Z(
|
|
14993
|
-
let { tabs:
|
|
14994
|
-
if (!
|
|
14995
|
-
let
|
|
14996
|
-
this.selectTab(
|
|
15038
|
+
let I = f(o);
|
|
15039
|
+
if (Z(o) || !this.isValidTabElement(I)) return;
|
|
15040
|
+
let { tabs: a, nodes: r } = this.getTabs(I), i = this.getTabDataFromHTMLElement(I), c = a.findIndex(({ key: A }) => (i == null ? void 0 : i.key) && A === i.key);
|
|
15041
|
+
if (!i || a.length <= 1 || c === -1) return;
|
|
15042
|
+
let s = (c + (g === "left" ? -1 : 1) + a.length) % a.length;
|
|
15043
|
+
this.selectTab(a[s]), r[s].focus();
|
|
14997
15044
|
});
|
|
14998
15045
|
}
|
|
15046
|
+
configure(t) {
|
|
15047
|
+
this._options = Object.assign(this._options, t);
|
|
15048
|
+
}
|
|
14999
15049
|
onSelectTab(t) {
|
|
15000
15050
|
return this._onSelectTabHandlers.add(t), () => {
|
|
15001
15051
|
this._onSelectTabHandlers.delete(t);
|
|
15002
15052
|
};
|
|
15003
15053
|
}
|
|
15004
15054
|
selectTabById(t, e) {
|
|
15005
|
-
let
|
|
15006
|
-
if (!
|
|
15007
|
-
let
|
|
15008
|
-
|
|
15055
|
+
let o = this._document.querySelector(`${n.TAB}[${U}="${t}"]`);
|
|
15056
|
+
if (!o || !this.isValidTabElement(o)) return;
|
|
15057
|
+
let g = this.getTabDataFromHTMLElement(o);
|
|
15058
|
+
g && this._selectTab(g, o), e != null && e.scrollToElement && o.scrollIntoView();
|
|
15009
15059
|
}
|
|
15010
15060
|
selectTab(t) {
|
|
15011
15061
|
this._selectTab(t);
|
|
15012
15062
|
}
|
|
15013
|
-
|
|
15014
|
-
|
|
15015
|
-
|
|
15016
|
-
|
|
15017
|
-
|
|
15063
|
+
restoreTabs(t) {
|
|
15064
|
+
this._isRestoringTabs = true;
|
|
15065
|
+
try {
|
|
15066
|
+
for (let [e, o] of Object.entries(t)) if (e) {
|
|
15067
|
+
let g = __spreadValues({ group: e }, o);
|
|
15068
|
+
this.selectTab(g);
|
|
15069
|
+
}
|
|
15070
|
+
} finally {
|
|
15071
|
+
this._isRestoringTabs = false;
|
|
15072
|
+
}
|
|
15073
|
+
}
|
|
15074
|
+
getTabsFromLocalStorage() {
|
|
15075
|
+
return JSON.parse(localStorage.getItem("tabsHistory") || "{}");
|
|
15076
|
+
}
|
|
15077
|
+
getTabsFromSearchQuery() {
|
|
15078
|
+
let t = {}, e = new URLSearchParams(window.location.search);
|
|
15079
|
+
return e.has("tabs") && (e.get("tabs") || "").split(",").forEach((I) => {
|
|
15080
|
+
let a = I.split("_"), [r, i] = a, c = "regular";
|
|
15081
|
+
if (a.length === 3 && (c = a[2]), r && i && Object.values(O).includes(c)) {
|
|
15082
|
+
let s = i;
|
|
15083
|
+
t[r] = { key: s, variant: c };
|
|
15084
|
+
}
|
|
15085
|
+
}), t;
|
|
15086
|
+
}
|
|
15087
|
+
updateLocalStorageWithTabs(t) {
|
|
15088
|
+
this._options.saveTabsToLocalStorage && (this._isRestoringTabs || localStorage.setItem("tabsHistory", JSON.stringify(t)));
|
|
15089
|
+
}
|
|
15090
|
+
updateQueryParamWithTabs(t) {
|
|
15091
|
+
if (this._isRestoringTabs) return;
|
|
15092
|
+
let e = new URLSearchParams(window.location.search), o = Object.entries(t).map(([a, { key: r, variant: i }]) => i === "regular" ? `${a}_${r}` : `${a}_${r}_${i}`);
|
|
15093
|
+
o.length > 0 ? e.set("tabs", o.join(",")) : e.delete("tabs");
|
|
15094
|
+
let g = history.state || {}, I = new URL(window.location.href);
|
|
15095
|
+
I.search = e.toString(), window.history.replaceState(__spreadValues({}, g), document.title, I.href);
|
|
15096
|
+
}
|
|
15097
|
+
getCurrentPageTabHistory(t) {
|
|
15098
|
+
return Object.fromEntries(Object.entries(t).filter(([e]) => this._currentPageTabGroups.includes(e)));
|
|
15099
|
+
}
|
|
15100
|
+
onPageChanged() {
|
|
15101
|
+
this._currentPageTabGroups = this.getCurrentPageTabGroups();
|
|
15018
15102
|
}
|
|
15019
|
-
|
|
15020
|
-
|
|
15103
|
+
getCurrentPageTabGroups() {
|
|
15104
|
+
let t = this._document.getElementsByClassName(x), e = /* @__PURE__ */ new Set();
|
|
15105
|
+
return Array.from(t).forEach((o) => {
|
|
15106
|
+
let g = o.getAttribute(B);
|
|
15107
|
+
g && e.add(g);
|
|
15108
|
+
}), Array.from(e);
|
|
15109
|
+
}
|
|
15110
|
+
clearTabsPreferred() {
|
|
15111
|
+
localStorage.removeItem("tabsHistory"), this.updateQueryParamWithTabs({});
|
|
15112
|
+
}
|
|
15113
|
+
_selectTab(t, e) {
|
|
15114
|
+
let { group: o, key: g, variant: I } = t;
|
|
15115
|
+
if (!o) return;
|
|
15116
|
+
this.saveTabPreferred({ group: o, key: g, variant: I });
|
|
15117
|
+
let a = e && v(e), r = a && Q(e, a);
|
|
15118
|
+
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), r && this.resetScroll(e, a, r));
|
|
15119
|
+
}
|
|
15120
|
+
updateHTML(t, e, o) {
|
|
15121
|
+
switch (o) {
|
|
15021
15122
|
case "radio":
|
|
15022
15123
|
return this.updateHTMLRadio(t, e);
|
|
15023
15124
|
case "accordion":
|
|
@@ -15026,131 +15127,145 @@ function useDiplodocTabs(callback = void 0) {
|
|
|
15026
15127
|
return this.updateHTMLRegular(t);
|
|
15027
15128
|
case "dropdown":
|
|
15028
15129
|
return this.updateHTMLDropdown(t);
|
|
15130
|
+
default:
|
|
15131
|
+
return 0;
|
|
15132
|
+
}
|
|
15133
|
+
}
|
|
15134
|
+
saveTabPreferred(t) {
|
|
15135
|
+
let e = {};
|
|
15136
|
+
switch (this._options.saveTabsToLocalStorage && (e = JSON.parse(localStorage.getItem("tabsHistory") || "{}")), e[t.group] = { key: t.key, variant: t.variant }, this._options.saveTabsToLocalStorage && this.updateLocalStorageWithTabs(e), this._options.saveTabsToQueryStateMode) {
|
|
15137
|
+
case "all": {
|
|
15138
|
+
this.updateQueryParamWithTabs(e);
|
|
15139
|
+
break;
|
|
15140
|
+
}
|
|
15141
|
+
case "page": {
|
|
15142
|
+
this.updateQueryParamWithTabs(this.getCurrentPageTabHistory(e));
|
|
15143
|
+
break;
|
|
15144
|
+
}
|
|
15029
15145
|
}
|
|
15030
|
-
return 0;
|
|
15031
15146
|
}
|
|
15032
15147
|
updateHTMLRadio(t, e) {
|
|
15033
|
-
let { group:
|
|
15034
|
-
|
|
15035
|
-
let
|
|
15036
|
-
return
|
|
15037
|
-
let m =
|
|
15148
|
+
let { group: o, key: g } = t, { isForced: I, root: a } = this.didTabOpenForce(e), r = I ? `.yfm-vertical-tab[${R}="true"]` : "", i = this._document.querySelectorAll(`${n.TABS}[${B}="${o}"] ${n.TAB}[${G}="${g}"]${r}`);
|
|
15149
|
+
I && (a == null || a.removeAttribute(R));
|
|
15150
|
+
let c = 0;
|
|
15151
|
+
return i.forEach((s) => {
|
|
15152
|
+
let m = s.parentNode.children;
|
|
15038
15153
|
for (let p = 0; p < m.length; p += 2) {
|
|
15039
15154
|
let [d, b] = [m.item(p), m.item(p + 1)], u = d.children.item(0);
|
|
15040
|
-
if (d ===
|
|
15155
|
+
if (d === s) {
|
|
15041
15156
|
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"));
|
|
15042
15157
|
continue;
|
|
15043
15158
|
}
|
|
15044
|
-
u.hasAttribute("checked") && (d.classList.remove("active"), b == null || b.classList.remove("active"), u.removeAttribute("checked")),
|
|
15159
|
+
u.hasAttribute("checked") && (d.classList.remove("active"), b == null || b.classList.remove("active"), u.removeAttribute("checked")), c++;
|
|
15045
15160
|
}
|
|
15046
|
-
}),
|
|
15161
|
+
}), c;
|
|
15047
15162
|
}
|
|
15048
15163
|
updateHTMLRegular(t) {
|
|
15049
|
-
let { group: e, key:
|
|
15050
|
-
return
|
|
15051
|
-
let
|
|
15052
|
-
if (!this.isValidTabElement(
|
|
15053
|
-
|
|
15054
|
-
let
|
|
15055
|
-
|
|
15056
|
-
let u = m[b],
|
|
15057
|
-
|
|
15164
|
+
let { group: e, key: o } = t, g = this._document.querySelectorAll(`${n.TABS}[${B}="${e}"] ${n.TAB}[${G}="${o}"]`), I = 0;
|
|
15165
|
+
return g.forEach((a) => {
|
|
15166
|
+
let r = a;
|
|
15167
|
+
if (!this.isValidTabElement(r) || r.dataset.diplodocIsActive === "true") return;
|
|
15168
|
+
I++;
|
|
15169
|
+
let i = a, c = i.parentNode, s = c == null ? void 0 : c.parentNode, A = Array.from((c == null ? void 0 : c.querySelectorAll(n.TAB)) || []), m = Array.from((s == null ? void 0 : s.children) || []).filter((d) => d.classList.contains(F)), p = A.indexOf(i);
|
|
15170
|
+
A.forEach((d, b) => {
|
|
15171
|
+
let u = m[b], T = b === p, S = d;
|
|
15172
|
+
S.dataset.diplodocIsActive = T ? "true" : "false", d.classList.toggle(l, T), d.setAttribute("aria-selected", T.toString()), d.setAttribute("tabindex", T ? "0" : "-1"), u.classList.toggle(l, T);
|
|
15058
15173
|
});
|
|
15059
|
-
}),
|
|
15174
|
+
}), I;
|
|
15060
15175
|
}
|
|
15061
15176
|
updateHTMLDropdown(t) {
|
|
15062
|
-
let { group: e, key:
|
|
15063
|
-
return
|
|
15064
|
-
let
|
|
15065
|
-
if (!(
|
|
15066
|
-
let
|
|
15067
|
-
|
|
15068
|
-
let
|
|
15069
|
-
for (let
|
|
15070
|
-
let m =
|
|
15071
|
-
if (
|
|
15072
|
-
m == null || m.classList.add(
|
|
15177
|
+
let { group: e, key: o } = t, g = this._document.querySelectorAll(`${n.TABS}[${B}="${e}"] ${n.TAB}[${G}="${o}"]`), I = 0;
|
|
15178
|
+
return g.forEach((a) => {
|
|
15179
|
+
let r = a.closest(`[${y}=dropdown]`);
|
|
15180
|
+
if (!(r != null && r.children)) return;
|
|
15181
|
+
let i = r.children.item(0), c = r.children.item(1);
|
|
15182
|
+
i == null || i.classList.remove(l);
|
|
15183
|
+
let s = Array.from((c == null ? void 0 : c.children) || []).indexOf(a) + 2;
|
|
15184
|
+
for (let A = 2; A < r.children.length; A++) {
|
|
15185
|
+
let m = r.children.item(A), p = c == null ? void 0 : c.children.item(A - 2);
|
|
15186
|
+
if (I++, s === A) {
|
|
15187
|
+
m == null || m.classList.add(l), p.classList.add(l), i.innerHTML = a.innerHTML, i.classList.add("filled");
|
|
15073
15188
|
continue;
|
|
15074
15189
|
}
|
|
15075
|
-
p.classList.remove(
|
|
15190
|
+
p.classList.remove(l), m.classList.remove(l);
|
|
15076
15191
|
}
|
|
15077
|
-
}),
|
|
15192
|
+
}), I;
|
|
15078
15193
|
}
|
|
15079
15194
|
updateHTMLAccordion(t, e) {
|
|
15080
|
-
let { group:
|
|
15081
|
-
return
|
|
15082
|
-
let
|
|
15083
|
-
if (
|
|
15084
|
-
let
|
|
15085
|
-
if (a++,
|
|
15086
|
-
|
|
15195
|
+
let { group: o, key: g } = t, I = this._document.querySelectorAll(`${n.TABS}[${B}="${o}"] ${n.TAB}[${G}="${g}"]`), a = 0;
|
|
15196
|
+
return I.forEach((r) => {
|
|
15197
|
+
let i = r.closest(`[${y}=accordion]`);
|
|
15198
|
+
if (i != null && i.children) for (let c = 0; c < i.children.length; c += 2) {
|
|
15199
|
+
let s = i.children.item(c), A = i.children.item(c + 1);
|
|
15200
|
+
if (a++, r === s) {
|
|
15201
|
+
s == null || s.classList.toggle(l), A == null || A.classList.toggle(l);
|
|
15087
15202
|
continue;
|
|
15088
15203
|
}
|
|
15089
|
-
|
|
15204
|
+
s == null || s.classList.remove(l), A == null || A.classList.remove(l);
|
|
15090
15205
|
}
|
|
15091
15206
|
}), e && !this.checkVisible(e) && setTimeout(() => {
|
|
15092
15207
|
e.scrollIntoView({ block: "nearest" });
|
|
15093
15208
|
}), a;
|
|
15094
15209
|
}
|
|
15095
15210
|
checkVisible(t) {
|
|
15096
|
-
let e = t.getBoundingClientRect(),
|
|
15097
|
-
return !(e.bottom < 0 || e.top -
|
|
15211
|
+
let e = t.getBoundingClientRect(), o = Math.max(document.documentElement.clientHeight, window.innerHeight);
|
|
15212
|
+
return !(e.bottom < 0 || e.top - o >= 0);
|
|
15098
15213
|
}
|
|
15099
15214
|
hideAllDropdown(t) {
|
|
15100
|
-
this._document.querySelectorAll(".yfm-tabs-dropdown-select.active").forEach((
|
|
15101
|
-
|
|
15215
|
+
this._document.querySelectorAll(".yfm-tabs-dropdown-select.active").forEach((o) => {
|
|
15216
|
+
o.contains(t) || o.classList.remove(l);
|
|
15102
15217
|
});
|
|
15103
15218
|
}
|
|
15104
|
-
resetScroll(t, e,
|
|
15105
|
-
let
|
|
15106
|
-
e.scrollTo(e.scrollLeft + a -
|
|
15219
|
+
resetScroll(t, e, o) {
|
|
15220
|
+
let g = Q(t, e), I = g.top - o.top, a = g.left - o.left, r = g.scrollTop - o.scrollTop, i = g.scrollLeft - o.scrollLeft;
|
|
15221
|
+
e.scrollTo(e.scrollLeft + a - i, e.scrollTop + I - r);
|
|
15107
15222
|
}
|
|
15108
15223
|
didTabOpenForce(t) {
|
|
15109
15224
|
if (!t) return {};
|
|
15110
15225
|
if (t.dataset.diplodocForced) return { root: t, isForced: true };
|
|
15111
|
-
let e = t.dataset.diplodocVerticalTab ? t : t.parentElement,
|
|
15112
|
-
return { root: e, isForced:
|
|
15226
|
+
let e = t.dataset.diplodocVerticalTab ? t : t.parentElement, o = typeof (e == null ? void 0 : e.dataset.diplodocForced) != "undefined";
|
|
15227
|
+
return { root: e, isForced: o };
|
|
15113
15228
|
}
|
|
15114
15229
|
fireSelectTabEvent(t, e) {
|
|
15115
|
-
let { group:
|
|
15116
|
-
this._onSelectTabHandlers.forEach((
|
|
15117
|
-
|
|
15230
|
+
let { group: o, key: g, variant: I } = t, a = o.startsWith(L) ? { key: g, variant: I } : t;
|
|
15231
|
+
this._onSelectTabHandlers.forEach((r) => {
|
|
15232
|
+
r({ tab: a, currentTabId: e });
|
|
15118
15233
|
});
|
|
15119
15234
|
}
|
|
15120
15235
|
getTabsType(t) {
|
|
15121
|
-
let e = t.closest(`[${
|
|
15236
|
+
let e = t.closest(`[${y}]`);
|
|
15122
15237
|
if (e) return e.dataset.diplodocVariant;
|
|
15123
15238
|
}
|
|
15124
15239
|
isValidTabElement(t) {
|
|
15125
15240
|
return !!this.getTabsType(t);
|
|
15126
15241
|
}
|
|
15127
15242
|
isElementDropdownSelect(t) {
|
|
15128
|
-
return t.classList.contains(
|
|
15243
|
+
return t.classList.contains(w);
|
|
15129
15244
|
}
|
|
15130
15245
|
getTabDataFromHTMLElement(t) {
|
|
15131
|
-
var
|
|
15246
|
+
var I, a, r;
|
|
15132
15247
|
let e = this.getTabsType(t);
|
|
15133
15248
|
if (e === "radio") {
|
|
15134
|
-
let
|
|
15135
|
-
return
|
|
15249
|
+
let i = t.dataset.diplodocVerticalTab ? t : t.parentElement, c = i.dataset.diplodocKey, s = (I = i.closest(n.TABS)) == null ? void 0 : I.dataset.diplodocGroup;
|
|
15250
|
+
return c && s ? { group: s, key: c, variant: "radio" } : null;
|
|
15136
15251
|
}
|
|
15137
15252
|
if (e === "dropdown" || e === "accordion") {
|
|
15138
|
-
let
|
|
15139
|
-
return
|
|
15253
|
+
let i = t.dataset.diplodocKey, c = (a = t.closest(n.TABS)) == null ? void 0 : a.dataset.diplodocGroup;
|
|
15254
|
+
return i && c ? { group: c, key: i, variant: e } : null;
|
|
15140
15255
|
}
|
|
15141
|
-
let
|
|
15142
|
-
return
|
|
15256
|
+
let o = t.dataset.diplodocKey, g = (r = t.closest(n.TABS)) == null ? void 0 : r.dataset.diplodocGroup;
|
|
15257
|
+
return o && g ? { group: g, key: o, variant: "regular" } : null;
|
|
15143
15258
|
}
|
|
15144
15259
|
getTabs(t) {
|
|
15145
|
-
var
|
|
15146
|
-
let e = (
|
|
15147
|
-
return
|
|
15148
|
-
let
|
|
15149
|
-
|
|
15150
|
-
}), { tabs:
|
|
15260
|
+
var I, a;
|
|
15261
|
+
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 = [];
|
|
15262
|
+
return o.forEach((r) => {
|
|
15263
|
+
let i = r == null ? void 0 : r.dataset.diplodocKey;
|
|
15264
|
+
i && g.push({ group: e, key: i, variant: "regular" });
|
|
15265
|
+
}), { tabs: g, nodes: o };
|
|
15151
15266
|
}
|
|
15152
15267
|
};
|
|
15153
|
-
typeof window != "undefined" && typeof document != "undefined" && !window[
|
|
15268
|
+
typeof window != "undefined" && typeof document != "undefined" && !window[X] && (window[X] = new h(document));
|
|
15154
15269
|
})();
|
|
15155
15270
|
|
|
15156
15271
|
// src/js/polyfill.js
|
|
@@ -15825,36 +15940,20 @@ function emitResult(html, env) {
|
|
|
15825
15940
|
logs: log_1.log.get(),
|
|
15826
15941
|
};
|
|
15827
15942
|
}
|
|
15828
|
-
|
|
15829
|
-
const transform = (originInput, options = {}) => {
|
|
15943
|
+
function transform(originInput, options = {}) {
|
|
15830
15944
|
const input = applyLiquid(originInput, options);
|
|
15831
15945
|
const { parse, compile, env } = (0, md_1.default)(options);
|
|
15832
15946
|
try {
|
|
15833
|
-
|
|
15947
|
+
const tokens = parse(input);
|
|
15948
|
+
if (options.tokens === true) {
|
|
15949
|
+
return tokens;
|
|
15950
|
+
}
|
|
15951
|
+
return emitResult(compile(tokens), env);
|
|
15834
15952
|
}
|
|
15835
15953
|
catch (error) {
|
|
15836
15954
|
handleError(error, options.path);
|
|
15837
15955
|
}
|
|
15838
|
-
}
|
|
15839
|
-
transform.collect = (input,
|
|
15840
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
15841
|
-
{ mdItInitOptions, pluginCollectOptions, parserPluginsOverride }) => {
|
|
15842
|
-
var _a;
|
|
15843
|
-
const maybeLiquidedInput = applyLiquid(input, mdItInitOptions);
|
|
15844
|
-
const { parse } = (0, md_1.default)(Object.assign(Object.assign({}, mdItInitOptions), { plugins: parserPluginsOverride !== null && parserPluginsOverride !== void 0 ? parserPluginsOverride : mdItInitOptions.plugins }));
|
|
15845
|
-
const plugins = (_a = mdItInitOptions.plugins) !== null && _a !== void 0 ? _a : [];
|
|
15846
|
-
try {
|
|
15847
|
-
const tokenStream = parse(maybeLiquidedInput);
|
|
15848
|
-
return plugins.reduce((collected, plugin) => {
|
|
15849
|
-
var _a;
|
|
15850
|
-
const collectOutput = (_a = plugin.collect) === null || _a === void 0 ? void 0 : _a.call(plugin, collected, Object.assign(Object.assign({}, pluginCollectOptions), { tokenStream }));
|
|
15851
|
-
return collectOutput !== null && collectOutput !== void 0 ? collectOutput : collected;
|
|
15852
|
-
}, maybeLiquidedInput);
|
|
15853
|
-
}
|
|
15854
|
-
catch (error) {
|
|
15855
|
-
handleError(error, mdItInitOptions.path);
|
|
15856
|
-
}
|
|
15857
|
-
};
|
|
15956
|
+
}
|
|
15858
15957
|
module.exports = transform;
|
|
15859
15958
|
//# sourceMappingURL=index.js.map
|
|
15860
15959
|
|
|
@@ -17149,6 +17248,7 @@ const highlight_1 = __importDefault(__webpack_require__(44370));
|
|
|
17149
17248
|
const title_1 = __importDefault(__webpack_require__(50440));
|
|
17150
17249
|
const headings_1 = __importDefault(__webpack_require__(70235));
|
|
17151
17250
|
const sanitize_1 = __importDefault(__webpack_require__(44891));
|
|
17251
|
+
const ol_attr_conversion_1 = __webpack_require__(37985);
|
|
17152
17252
|
function initMarkdownIt(options) {
|
|
17153
17253
|
const { allowHTML = false, linkify = false, breaks = true, highlightLangs = {}, disableRules = [], } = options;
|
|
17154
17254
|
const highlight = (0, highlight_1.default)(highlightLangs);
|
|
@@ -17194,9 +17294,13 @@ function getPluginOptions(options) {
|
|
|
17194
17294
|
log: log_1.log });
|
|
17195
17295
|
}
|
|
17196
17296
|
function initPlugins(md, options, pluginOptions) {
|
|
17197
|
-
const { linkify = false, linkifyTlds, leftDelimiter = '{', rightDelimiter = '}', plugins = plugins_1.default, } = options;
|
|
17198
|
-
//
|
|
17199
|
-
|
|
17297
|
+
const { linkify = false, linkifyTlds, leftDelimiter = '{', rightDelimiter = '}', plugins = plugins_1.default, enableMarkdownAttrs, } = options;
|
|
17298
|
+
// TODO: set enableMarkdownAttrs to false by default in next major
|
|
17299
|
+
if (enableMarkdownAttrs !== false) {
|
|
17300
|
+
// Need for ids of headers
|
|
17301
|
+
md.use(markdown_it_attrs_1.default, { leftDelimiter, rightDelimiter });
|
|
17302
|
+
}
|
|
17303
|
+
md.use(ol_attr_conversion_1.olAttrConversion);
|
|
17200
17304
|
plugins.forEach((plugin) => md.use(plugin, pluginOptions));
|
|
17201
17305
|
if (linkify && linkifyTlds) {
|
|
17202
17306
|
md.linkify.tlds(linkifyTlds, true);
|
|
@@ -17523,7 +17627,12 @@ exports.renderTokens = renderTokens;
|
|
|
17523
17627
|
|
|
17524
17628
|
const block_anchor_1 = __webpack_require__(48782);
|
|
17525
17629
|
const blockAnchor = (md) => {
|
|
17526
|
-
|
|
17630
|
+
try {
|
|
17631
|
+
md.core.ruler.before('curly_attributes', block_anchor_1.TOKEN_NAME, block_anchor_1.replaceTokens);
|
|
17632
|
+
}
|
|
17633
|
+
catch (e) {
|
|
17634
|
+
md.core.ruler.push(block_anchor_1.TOKEN_NAME, block_anchor_1.replaceTokens);
|
|
17635
|
+
}
|
|
17527
17636
|
md.renderer.rules[block_anchor_1.TOKEN_NAME] = block_anchor_1.renderTokens;
|
|
17528
17637
|
return md;
|
|
17529
17638
|
};
|
|
@@ -17580,9 +17689,10 @@ const wrapInClipboard = (element, id) => {
|
|
|
17580
17689
|
</div>
|
|
17581
17690
|
`;
|
|
17582
17691
|
};
|
|
17583
|
-
function termReplace(str, env) {
|
|
17692
|
+
function termReplace(str, env, escape) {
|
|
17584
17693
|
const regTerms = Object.keys(env.terms)
|
|
17585
17694
|
.map((el) => el.substr(1))
|
|
17695
|
+
.map(escape)
|
|
17586
17696
|
.join('|');
|
|
17587
17697
|
const regText = '\\[([^\\[]+)\\](\\(\\*(' + regTerms + ')\\))';
|
|
17588
17698
|
const reg = new RegExp(regText, 'g');
|
|
@@ -17593,7 +17703,7 @@ const code = (md) => {
|
|
|
17593
17703
|
const superCodeRenderer = md.renderer.rules.fence;
|
|
17594
17704
|
md.renderer.rules.fence = function (tokens, idx, options, env, self) {
|
|
17595
17705
|
const superCode = superCodeRenderer === null || superCodeRenderer === void 0 ? void 0 : superCodeRenderer(tokens, idx, options, env, self);
|
|
17596
|
-
const superCodeWithTerms = superCode && (env === null || env === void 0 ? void 0 : env.terms) ? termReplace(superCode, env) : superCode;
|
|
17706
|
+
const superCodeWithTerms = superCode && (env === null || env === void 0 ? void 0 : env.terms) ? termReplace(superCode, env, md.utils.escapeRE) : superCode;
|
|
17597
17707
|
return wrapInClipboard(superCodeWithTerms, idx);
|
|
17598
17708
|
};
|
|
17599
17709
|
};
|
|
@@ -18315,6 +18425,34 @@ module.exports = index;
|
|
|
18315
18425
|
|
|
18316
18426
|
/***/ }),
|
|
18317
18427
|
|
|
18428
|
+
/***/ 37985:
|
|
18429
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
18430
|
+
|
|
18431
|
+
"use strict";
|
|
18432
|
+
|
|
18433
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
18434
|
+
exports.olAttrConversion = void 0;
|
|
18435
|
+
const cssWhitelist = {
|
|
18436
|
+
'--hier-list-start': true,
|
|
18437
|
+
};
|
|
18438
|
+
const olAttrConversion = (md) => {
|
|
18439
|
+
md.core.ruler.after('block', 'olAttrs', (state) => {
|
|
18440
|
+
var _a;
|
|
18441
|
+
state.tokens.forEach((token) => {
|
|
18442
|
+
const maybeStart = token.attrGet('start');
|
|
18443
|
+
if (token.type === 'ordered_list_open' && maybeStart) {
|
|
18444
|
+
token.attrSet('style', `--hier-list-start: ${Number(maybeStart) - 1};`);
|
|
18445
|
+
}
|
|
18446
|
+
});
|
|
18447
|
+
(_a = state.env).additionalOptionsCssWhiteList || (_a.additionalOptionsCssWhiteList = {});
|
|
18448
|
+
Object.assign(state.env.additionalOptionsCssWhiteList, cssWhitelist);
|
|
18449
|
+
});
|
|
18450
|
+
};
|
|
18451
|
+
exports.olAttrConversion = olAttrConversion;
|
|
18452
|
+
//# sourceMappingURL=ol-attr-conversion.js.map
|
|
18453
|
+
|
|
18454
|
+
/***/ }),
|
|
18455
|
+
|
|
18318
18456
|
/***/ 53257:
|
|
18319
18457
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
18320
18458
|
|
|
@@ -20402,10 +20540,11 @@ exports.getRealPath = exports.getRelativePath = exports.getPublicPath = exports.
|
|
|
20402
20540
|
const fs_1 = __webpack_require__(79896);
|
|
20403
20541
|
const escapeRegExp_1 = __importDefault(__webpack_require__(60680));
|
|
20404
20542
|
const path_1 = __webpack_require__(16928);
|
|
20543
|
+
const quick_lru_1 = __importDefault(__webpack_require__(87392));
|
|
20405
20544
|
const liquid_1 = __importDefault(__webpack_require__(64151));
|
|
20406
20545
|
const utils_1 = __webpack_require__(82811);
|
|
20407
20546
|
const preprocessors_1 = __webpack_require__(55529);
|
|
20408
|
-
const filesCache = {};
|
|
20547
|
+
const filesCache = new quick_lru_1.default({ maxSize: 1000 });
|
|
20409
20548
|
function isFileExists(file) {
|
|
20410
20549
|
try {
|
|
20411
20550
|
const stats = (0, fs_1.statSync)(file);
|
|
@@ -20426,12 +20565,12 @@ function getFileTokens(path, state, options, content) {
|
|
|
20426
20565
|
const builtVars = (getVarsPerFile && !inheritVars ? getVarsPerFile(path) : vars) || {};
|
|
20427
20566
|
// Read the content only if we dont have one in the args
|
|
20428
20567
|
if (!content) {
|
|
20429
|
-
if (filesCache
|
|
20430
|
-
content = filesCache
|
|
20568
|
+
if (filesCache.has(path)) {
|
|
20569
|
+
content = filesCache.get(path);
|
|
20431
20570
|
}
|
|
20432
20571
|
else {
|
|
20433
20572
|
content = (0, fs_1.readFileSync)(path, 'utf8');
|
|
20434
|
-
filesCache
|
|
20573
|
+
filesCache.set(path, content);
|
|
20435
20574
|
}
|
|
20436
20575
|
}
|
|
20437
20576
|
let sourceMap;
|
|
@@ -122589,6 +122728,137 @@ module.exports = Warning
|
|
|
122589
122728
|
Warning.default = Warning
|
|
122590
122729
|
|
|
122591
122730
|
|
|
122731
|
+
/***/ }),
|
|
122732
|
+
|
|
122733
|
+
/***/ 87392:
|
|
122734
|
+
/***/ ((module) => {
|
|
122735
|
+
|
|
122736
|
+
"use strict";
|
|
122737
|
+
|
|
122738
|
+
|
|
122739
|
+
class QuickLRU {
|
|
122740
|
+
constructor(options = {}) {
|
|
122741
|
+
if (!(options.maxSize && options.maxSize > 0)) {
|
|
122742
|
+
throw new TypeError('`maxSize` must be a number greater than 0');
|
|
122743
|
+
}
|
|
122744
|
+
|
|
122745
|
+
this.maxSize = options.maxSize;
|
|
122746
|
+
this.onEviction = options.onEviction;
|
|
122747
|
+
this.cache = new Map();
|
|
122748
|
+
this.oldCache = new Map();
|
|
122749
|
+
this._size = 0;
|
|
122750
|
+
}
|
|
122751
|
+
|
|
122752
|
+
_set(key, value) {
|
|
122753
|
+
this.cache.set(key, value);
|
|
122754
|
+
this._size++;
|
|
122755
|
+
|
|
122756
|
+
if (this._size >= this.maxSize) {
|
|
122757
|
+
this._size = 0;
|
|
122758
|
+
|
|
122759
|
+
if (typeof this.onEviction === 'function') {
|
|
122760
|
+
for (const [key, value] of this.oldCache.entries()) {
|
|
122761
|
+
this.onEviction(key, value);
|
|
122762
|
+
}
|
|
122763
|
+
}
|
|
122764
|
+
|
|
122765
|
+
this.oldCache = this.cache;
|
|
122766
|
+
this.cache = new Map();
|
|
122767
|
+
}
|
|
122768
|
+
}
|
|
122769
|
+
|
|
122770
|
+
get(key) {
|
|
122771
|
+
if (this.cache.has(key)) {
|
|
122772
|
+
return this.cache.get(key);
|
|
122773
|
+
}
|
|
122774
|
+
|
|
122775
|
+
if (this.oldCache.has(key)) {
|
|
122776
|
+
const value = this.oldCache.get(key);
|
|
122777
|
+
this.oldCache.delete(key);
|
|
122778
|
+
this._set(key, value);
|
|
122779
|
+
return value;
|
|
122780
|
+
}
|
|
122781
|
+
}
|
|
122782
|
+
|
|
122783
|
+
set(key, value) {
|
|
122784
|
+
if (this.cache.has(key)) {
|
|
122785
|
+
this.cache.set(key, value);
|
|
122786
|
+
} else {
|
|
122787
|
+
this._set(key, value);
|
|
122788
|
+
}
|
|
122789
|
+
|
|
122790
|
+
return this;
|
|
122791
|
+
}
|
|
122792
|
+
|
|
122793
|
+
has(key) {
|
|
122794
|
+
return this.cache.has(key) || this.oldCache.has(key);
|
|
122795
|
+
}
|
|
122796
|
+
|
|
122797
|
+
peek(key) {
|
|
122798
|
+
if (this.cache.has(key)) {
|
|
122799
|
+
return this.cache.get(key);
|
|
122800
|
+
}
|
|
122801
|
+
|
|
122802
|
+
if (this.oldCache.has(key)) {
|
|
122803
|
+
return this.oldCache.get(key);
|
|
122804
|
+
}
|
|
122805
|
+
}
|
|
122806
|
+
|
|
122807
|
+
delete(key) {
|
|
122808
|
+
const deleted = this.cache.delete(key);
|
|
122809
|
+
if (deleted) {
|
|
122810
|
+
this._size--;
|
|
122811
|
+
}
|
|
122812
|
+
|
|
122813
|
+
return this.oldCache.delete(key) || deleted;
|
|
122814
|
+
}
|
|
122815
|
+
|
|
122816
|
+
clear() {
|
|
122817
|
+
this.cache.clear();
|
|
122818
|
+
this.oldCache.clear();
|
|
122819
|
+
this._size = 0;
|
|
122820
|
+
}
|
|
122821
|
+
|
|
122822
|
+
* keys() {
|
|
122823
|
+
for (const [key] of this) {
|
|
122824
|
+
yield key;
|
|
122825
|
+
}
|
|
122826
|
+
}
|
|
122827
|
+
|
|
122828
|
+
* values() {
|
|
122829
|
+
for (const [, value] of this) {
|
|
122830
|
+
yield value;
|
|
122831
|
+
}
|
|
122832
|
+
}
|
|
122833
|
+
|
|
122834
|
+
* [Symbol.iterator]() {
|
|
122835
|
+
for (const item of this.cache) {
|
|
122836
|
+
yield item;
|
|
122837
|
+
}
|
|
122838
|
+
|
|
122839
|
+
for (const item of this.oldCache) {
|
|
122840
|
+
const [key] = item;
|
|
122841
|
+
if (!this.cache.has(key)) {
|
|
122842
|
+
yield item;
|
|
122843
|
+
}
|
|
122844
|
+
}
|
|
122845
|
+
}
|
|
122846
|
+
|
|
122847
|
+
get size() {
|
|
122848
|
+
let oldCacheSize = 0;
|
|
122849
|
+
for (const key of this.oldCache.keys()) {
|
|
122850
|
+
if (!this.cache.has(key)) {
|
|
122851
|
+
oldCacheSize++;
|
|
122852
|
+
}
|
|
122853
|
+
}
|
|
122854
|
+
|
|
122855
|
+
return Math.min(this._size + oldCacheSize, this.maxSize);
|
|
122856
|
+
}
|
|
122857
|
+
}
|
|
122858
|
+
|
|
122859
|
+
module.exports = QuickLRU;
|
|
122860
|
+
|
|
122861
|
+
|
|
122592
122862
|
/***/ }),
|
|
122593
122863
|
|
|
122594
122864
|
/***/ 25264:
|