@diplodoc/client 2.1.0-beta.0 → 2.1.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.
- package/CHANGELOG.md +41 -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/manifest.json +2 -2
- package/build/client/react.js +1 -1
- package/build/client/react.js.map +1 -1
- package/build/client/vendor.css +138 -1028
- 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 +138 -1027
- package/build/constants.d.ts +5 -0
- package/build/server/app.js +81 -49
- package/build/server/app.js.map +1 -1
- package/build/server/manifest.json +2 -2
- package/build/server/react.js +17 -17
- package/build/server/vendor.js +4251 -2911
- package/build/server/vendor.js.map +1 -1
- package/build/utils.d.ts +3 -1
- package/package.json +10 -6
package/build/server/app.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/******/ (() => { // webpackBootstrap
|
|
2
2
|
/******/ var __webpack_modules__ = ({
|
|
3
3
|
|
|
4
|
-
/***/
|
|
4
|
+
/***/ 5048:
|
|
5
5
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
6
6
|
|
|
7
7
|
"use strict";
|
|
@@ -14,23 +14,25 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
14
14
|
});
|
|
15
15
|
|
|
16
16
|
// EXTERNAL MODULE: ./node_modules/react/index.js
|
|
17
|
-
var react = __webpack_require__(
|
|
17
|
+
var react = __webpack_require__(6540);
|
|
18
18
|
// EXTERNAL MODULE: ./node_modules/react-dom/server.node.js
|
|
19
|
-
var server_node = __webpack_require__(
|
|
19
|
+
var server_node = __webpack_require__(4362);
|
|
20
20
|
// EXTERNAL MODULE: ./node_modules/@gravity-ui/page-constructor/build/esm/containers/PageConstructor/Provider.js
|
|
21
|
-
var Provider = __webpack_require__(
|
|
22
|
-
// EXTERNAL MODULE: ./node_modules/@gravity-ui/page-constructor/build/esm/containers/PageConstructor/PageConstructor.js +
|
|
23
|
-
var PageConstructor = __webpack_require__(
|
|
24
|
-
// EXTERNAL MODULE: ./node_modules/@
|
|
25
|
-
var
|
|
26
|
-
// EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/components/DocPage/DocPage.js + 36 modules
|
|
27
|
-
var DocPage = __webpack_require__(293);
|
|
21
|
+
var Provider = __webpack_require__(7658);
|
|
22
|
+
// EXTERNAL MODULE: ./node_modules/@gravity-ui/page-constructor/build/esm/containers/PageConstructor/PageConstructor.js + 356 modules
|
|
23
|
+
var PageConstructor = __webpack_require__(9915);
|
|
24
|
+
// EXTERNAL MODULE: ./node_modules/@gravity-ui/uikit/build/esm/components/theme/ThemeProvider.js + 6 modules
|
|
25
|
+
var ThemeProvider = __webpack_require__(4647);
|
|
28
26
|
// EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/models/index.js
|
|
29
|
-
var models = __webpack_require__(
|
|
27
|
+
var models = __webpack_require__(8184);
|
|
28
|
+
// EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/components/DocLeadingPage/DocLeadingPage.js + 2 modules
|
|
29
|
+
var DocLeadingPage = __webpack_require__(8472);
|
|
30
|
+
// EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/components/DocPage/DocPage.js + 39 modules
|
|
31
|
+
var DocPage = __webpack_require__(9530);
|
|
30
32
|
// EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/components/Controls/ControlsLayout.js
|
|
31
|
-
var ControlsLayout = __webpack_require__(
|
|
32
|
-
// EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/components/Controls/Controls.js +
|
|
33
|
-
var Controls = __webpack_require__(
|
|
33
|
+
var ControlsLayout = __webpack_require__(6141);
|
|
34
|
+
// EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/components/Controls/Controls.js + 64 modules
|
|
35
|
+
var Controls = __webpack_require__(7871);
|
|
34
36
|
;// CONCATENATED MODULE: ./src/components/HeaderControls/index.tsx
|
|
35
37
|
|
|
36
38
|
|
|
@@ -48,12 +50,12 @@ const HeaderControls = /*#__PURE__*/(0,react.memo)(({
|
|
|
48
50
|
showMiniToc,
|
|
49
51
|
onChangeShowMiniToc
|
|
50
52
|
}) => {
|
|
51
|
-
return /*#__PURE__*/react.createElement(ControlsLayout/* ControlsLayout */.
|
|
53
|
+
return /*#__PURE__*/react.createElement(ControlsLayout/* ControlsLayout */.n, {
|
|
52
54
|
controlClassName: 'Control',
|
|
53
|
-
controlSize: models/* ControlSizes
|
|
55
|
+
controlSize: models/* ControlSizes */.Uv.L,
|
|
54
56
|
isWideView: mobileView,
|
|
55
57
|
isMobileView: mobileView
|
|
56
|
-
}, /*#__PURE__*/react.createElement(Controls/* default */.
|
|
58
|
+
}, /*#__PURE__*/react.createElement(Controls/* default */.A, {
|
|
57
59
|
className: 'Controls',
|
|
58
60
|
theme: theme,
|
|
59
61
|
onChangeTheme: onChangeTheme,
|
|
@@ -66,7 +68,15 @@ const HeaderControls = /*#__PURE__*/(0,react.memo)(({
|
|
|
66
68
|
}));
|
|
67
69
|
});
|
|
68
70
|
HeaderControls.displayName = 'HeaderControls';
|
|
71
|
+
;// CONCATENATED MODULE: ./src/constants.ts
|
|
72
|
+
const RTL_LANGS = ['ar', 'arc', 'ckb', 'dv', 'fa', 'ha', 'he', 'khw', 'ks', 'ps', 'sd', 'ur', 'uz_AF', 'yi'];
|
|
73
|
+
let TextDirection = /*#__PURE__*/function (TextDirection) {
|
|
74
|
+
TextDirection["RTL"] = "rtl";
|
|
75
|
+
TextDirection["LTR"] = "ltr";
|
|
76
|
+
return TextDirection;
|
|
77
|
+
}({});
|
|
69
78
|
;// CONCATENATED MODULE: ./src/utils.ts
|
|
79
|
+
|
|
70
80
|
function strToBoolean(str) {
|
|
71
81
|
if (typeof str === 'boolean') {
|
|
72
82
|
return str;
|
|
@@ -81,13 +91,17 @@ function updateRootClassName({
|
|
|
81
91
|
}) {
|
|
82
92
|
document.body.className = ['g-root', mobileView ? 'mobile' : 'desktop', wideFormat && 'dc-root_wide-format', fullHeader && 'dc-root_full-header', theme === 'light' && 'g-root_theme_light', theme === 'dark' && 'g-root_theme_dark'].filter(Boolean).join(' ');
|
|
83
93
|
}
|
|
94
|
+
function getDirection(lang) {
|
|
95
|
+
const isRTL = RTL_LANGS.includes(lang);
|
|
96
|
+
return isRTL ? TextDirection.RTL : TextDirection.LTR;
|
|
97
|
+
}
|
|
84
98
|
// EXTERNAL MODULE: ./node_modules/bem-cn-lite/lib/index.js
|
|
85
|
-
var lib = __webpack_require__(
|
|
99
|
+
var lib = __webpack_require__(3614);
|
|
86
100
|
;// CONCATENATED MODULE: ./src/components/Layout/index.tsx
|
|
87
101
|
|
|
88
102
|
|
|
89
103
|
|
|
90
|
-
const b = (0,lib/* default */.
|
|
104
|
+
const b = (0,lib/* default */.A)('Layout');
|
|
91
105
|
function Header() {
|
|
92
106
|
return null;
|
|
93
107
|
}
|
|
@@ -142,8 +156,8 @@ Layout.Footer = Footer;
|
|
|
142
156
|
|
|
143
157
|
|
|
144
158
|
const DEFAULT_USER_SETTINGS = {
|
|
145
|
-
theme: models/* Theme */.
|
|
146
|
-
textSize: models/* TextSizes */.
|
|
159
|
+
theme: models/* Theme */.Sx.Light,
|
|
160
|
+
textSize: models/* TextSizes */.ov.M,
|
|
147
161
|
showMiniToc: true,
|
|
148
162
|
wideFormat: true,
|
|
149
163
|
fullScreen: false
|
|
@@ -219,15 +233,15 @@ function useMobile() {
|
|
|
219
233
|
return mobileView;
|
|
220
234
|
}
|
|
221
235
|
// EXTERNAL MODULE: ./src/interceptors/leading-page-links.js
|
|
222
|
-
var leading_page_links = __webpack_require__(
|
|
236
|
+
var leading_page_links = __webpack_require__(4186);
|
|
223
237
|
;// CONCATENATED MODULE: external "@diplodoc/transform/dist/js/yfm"
|
|
224
238
|
const yfm_namespaceObject = require("@diplodoc/transform/dist/js/yfm");
|
|
225
239
|
// EXTERNAL MODULE: ./node_modules/@diplodoc/mermaid-extension/react/index.js
|
|
226
|
-
var mermaid_extension_react = __webpack_require__(
|
|
240
|
+
var mermaid_extension_react = __webpack_require__(5905);
|
|
227
241
|
// EXTERNAL MODULE: ./node_modules/@diplodoc/latex-extension/react/index.js
|
|
228
|
-
var latex_extension_react = __webpack_require__(
|
|
229
|
-
// EXTERNAL MODULE: ./node_modules/@diplodoc/openapi-extension/runtime/index.min.js +
|
|
230
|
-
var index_min = __webpack_require__(
|
|
242
|
+
var latex_extension_react = __webpack_require__(358);
|
|
243
|
+
// EXTERNAL MODULE: ./node_modules/@diplodoc/openapi-extension/runtime/index.min.js + 26 modules
|
|
244
|
+
var index_min = __webpack_require__(8432);
|
|
231
245
|
;// CONCATENATED MODULE: ./src/components/App/App.tsx
|
|
232
246
|
|
|
233
247
|
|
|
@@ -243,12 +257,25 @@ var index_min = __webpack_require__(5584);
|
|
|
243
257
|
|
|
244
258
|
|
|
245
259
|
|
|
260
|
+
|
|
261
|
+
function Runtime(props) {
|
|
262
|
+
const {
|
|
263
|
+
theme
|
|
264
|
+
} = props;
|
|
265
|
+
return /*#__PURE__*/react.createElement(react.Fragment, null, /*#__PURE__*/react.createElement(index_min/* Runtime */.v, null), /*#__PURE__*/react.createElement(latex_extension_react/* LatexRuntime */.l, null), /*#__PURE__*/react.createElement(mermaid_extension_react/* MermaidRuntime */.A, {
|
|
266
|
+
theme: theme === models/* Theme */.Sx.Dark ? 'dark' : 'neutral',
|
|
267
|
+
zoom: {
|
|
268
|
+
showMenu: true,
|
|
269
|
+
bindKeys: true
|
|
270
|
+
}
|
|
271
|
+
}));
|
|
272
|
+
}
|
|
246
273
|
function Page(props) {
|
|
247
274
|
const {
|
|
248
275
|
data,
|
|
249
276
|
...pageProps
|
|
250
277
|
} = props;
|
|
251
|
-
const Page = data.leading ? DocLeadingPage/* DocLeadingPage */.
|
|
278
|
+
const Page = data.leading ? DocLeadingPage/* DocLeadingPage */.sc : DocPage/* default */.A;
|
|
252
279
|
return /*#__PURE__*/react.createElement(Layout, null, /*#__PURE__*/react.createElement(Layout.Content, null, /*#__PURE__*/react.createElement(Page, Object.assign({}, data, pageProps))));
|
|
253
280
|
}
|
|
254
281
|
function isDropdownItem(item) {
|
|
@@ -299,6 +326,7 @@ function App(props) {
|
|
|
299
326
|
fullScreen,
|
|
300
327
|
onChangeFullScreen
|
|
301
328
|
};
|
|
329
|
+
const direction = getDirection(lang);
|
|
302
330
|
(0,react.useEffect)(() => {
|
|
303
331
|
updateRootClassName({
|
|
304
332
|
theme,
|
|
@@ -310,7 +338,12 @@ function App(props) {
|
|
|
310
338
|
if (!navigation) {
|
|
311
339
|
return /*#__PURE__*/react.createElement("div", {
|
|
312
340
|
className: "App"
|
|
313
|
-
}, /*#__PURE__*/react.createElement(
|
|
341
|
+
}, /*#__PURE__*/react.createElement(ThemeProvider/* ThemeProvider */.N, {
|
|
342
|
+
theme: theme,
|
|
343
|
+
direction: direction
|
|
344
|
+
}, /*#__PURE__*/react.createElement(Page, Object.assign({}, pageProps, settings)), /*#__PURE__*/react.createElement(Runtime, {
|
|
345
|
+
theme: theme
|
|
346
|
+
})));
|
|
314
347
|
}
|
|
315
348
|
const {
|
|
316
349
|
header = {},
|
|
@@ -323,9 +356,12 @@ function App(props) {
|
|
|
323
356
|
const headerWithControls = rightItems.some(item => item.type === 'controls');
|
|
324
357
|
return /*#__PURE__*/react.createElement("div", {
|
|
325
358
|
className: "App"
|
|
326
|
-
}, /*#__PURE__*/react.createElement(
|
|
359
|
+
}, /*#__PURE__*/react.createElement(ThemeProvider/* ThemeProvider */.N, {
|
|
360
|
+
theme: theme,
|
|
361
|
+
direction: direction
|
|
362
|
+
}, /*#__PURE__*/react.createElement(Provider/* PageConstructorProvider */.Z, {
|
|
327
363
|
theme: theme
|
|
328
|
-
}, /*#__PURE__*/react.createElement(PageConstructor/* PageConstructor */.
|
|
364
|
+
}, /*#__PURE__*/react.createElement(PageConstructor/* PageConstructor */.i, {
|
|
329
365
|
custom: {
|
|
330
366
|
navigation: {
|
|
331
367
|
controls: () => /*#__PURE__*/react.createElement(HeaderControls, Object.assign({}, settings, {
|
|
@@ -349,23 +385,19 @@ function App(props) {
|
|
|
349
385
|
},
|
|
350
386
|
logo
|
|
351
387
|
} : undefined
|
|
352
|
-
})), /*#__PURE__*/react.createElement(
|
|
353
|
-
theme: theme
|
|
354
|
-
zoom: {
|
|
355
|
-
showMenu: true,
|
|
356
|
-
bindKeys: true
|
|
357
|
-
}
|
|
388
|
+
}))), /*#__PURE__*/react.createElement(Runtime, {
|
|
389
|
+
theme: theme
|
|
358
390
|
}));
|
|
359
391
|
}
|
|
360
392
|
;// CONCATENATED MODULE: ./src/index.server.tsx
|
|
361
393
|
|
|
362
394
|
|
|
363
395
|
|
|
364
|
-
const render = props => (0,server_node/* renderToString */.
|
|
396
|
+
const render = props => (0,server_node/* renderToString */.F0)( /*#__PURE__*/react.createElement(App, props));
|
|
365
397
|
|
|
366
398
|
/***/ }),
|
|
367
399
|
|
|
368
|
-
/***/
|
|
400
|
+
/***/ 4186:
|
|
369
401
|
/***/ (() => {
|
|
370
402
|
|
|
371
403
|
(function () {
|
|
@@ -416,18 +448,18 @@ const render = props => (0,server_node/* renderToString */.Dq)( /*#__PURE__*/rea
|
|
|
416
448
|
|
|
417
449
|
/***/ }),
|
|
418
450
|
|
|
419
|
-
/***/
|
|
451
|
+
/***/ 7040:
|
|
420
452
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
421
453
|
|
|
422
454
|
"use strict";
|
|
423
455
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
424
|
-
/* harmony export */
|
|
456
|
+
/* harmony export */ A: () => (/* export default binding */ __WEBPACK_DEFAULT_EXPORT__)
|
|
425
457
|
/* harmony export */ });
|
|
426
458
|
/* harmony default export */ function __WEBPACK_DEFAULT_EXPORT__() {}
|
|
427
459
|
|
|
428
460
|
/***/ }),
|
|
429
461
|
|
|
430
|
-
/***/
|
|
462
|
+
/***/ 6982:
|
|
431
463
|
/***/ ((module) => {
|
|
432
464
|
|
|
433
465
|
"use strict";
|
|
@@ -435,7 +467,7 @@ module.exports = require("crypto");
|
|
|
435
467
|
|
|
436
468
|
/***/ }),
|
|
437
469
|
|
|
438
|
-
/***/
|
|
470
|
+
/***/ 2203:
|
|
439
471
|
/***/ ((module) => {
|
|
440
472
|
|
|
441
473
|
"use strict";
|
|
@@ -443,7 +475,7 @@ module.exports = require("stream");
|
|
|
443
475
|
|
|
444
476
|
/***/ }),
|
|
445
477
|
|
|
446
|
-
/***/
|
|
478
|
+
/***/ 7016:
|
|
447
479
|
/***/ ((module) => {
|
|
448
480
|
|
|
449
481
|
"use strict";
|
|
@@ -451,7 +483,7 @@ module.exports = require("url");
|
|
|
451
483
|
|
|
452
484
|
/***/ }),
|
|
453
485
|
|
|
454
|
-
/***/
|
|
486
|
+
/***/ 9023:
|
|
455
487
|
/***/ ((module) => {
|
|
456
488
|
|
|
457
489
|
"use strict";
|
|
@@ -495,7 +527,7 @@ module.exports = require("util");
|
|
|
495
527
|
/******/ __webpack_require__.x = () => {
|
|
496
528
|
/******/ // Load entry module and return exports
|
|
497
529
|
/******/ // This entry module depends on other loaded chunks and execution need to be delayed
|
|
498
|
-
/******/ var __webpack_exports__ = __webpack_require__.O(undefined, [
|
|
530
|
+
/******/ var __webpack_exports__ = __webpack_require__.O(undefined, [644,121], () => (__webpack_require__(5048)))
|
|
499
531
|
/******/ __webpack_exports__ = __webpack_require__.O(__webpack_exports__);
|
|
500
532
|
/******/ return __webpack_exports__;
|
|
501
533
|
/******/ };
|
|
@@ -580,7 +612,7 @@ module.exports = require("util");
|
|
|
580
612
|
/******/ // This function allow to reference async chunks and sibling chunks for the entrypoint
|
|
581
613
|
/******/ __webpack_require__.u = (chunkId) => {
|
|
582
614
|
/******/ // return url for filenames based on template
|
|
583
|
-
/******/ return "" + {"
|
|
615
|
+
/******/ return "" + {"121":"vendor","644":"react"}[chunkId] + ".js";
|
|
584
616
|
/******/ };
|
|
585
617
|
/******/ })();
|
|
586
618
|
/******/
|
|
@@ -630,7 +662,7 @@ module.exports = require("util");
|
|
|
630
662
|
/******/ // object to store loaded chunks
|
|
631
663
|
/******/ // "1" means "loaded", otherwise not loaded yet
|
|
632
664
|
/******/ var installedChunks = {
|
|
633
|
-
/******/
|
|
665
|
+
/******/ 524: 1
|
|
634
666
|
/******/ };
|
|
635
667
|
/******/
|
|
636
668
|
/******/ __webpack_require__.O.require = (chunkId) => (installedChunks[chunkId]);
|
|
@@ -669,8 +701,8 @@ module.exports = require("util");
|
|
|
669
701
|
/******/ (() => {
|
|
670
702
|
/******/ var next = __webpack_require__.x;
|
|
671
703
|
/******/ __webpack_require__.x = () => {
|
|
672
|
-
/******/ __webpack_require__.e(
|
|
673
|
-
/******/ __webpack_require__.e(
|
|
704
|
+
/******/ __webpack_require__.e(644);
|
|
705
|
+
/******/ __webpack_require__.e(121);
|
|
674
706
|
/******/ return next();
|
|
675
707
|
/******/ };
|
|
676
708
|
/******/ })();
|
package/build/server/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","mappings":"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DJ,6BAAe,sCAAY,CAAC;;;;;;;;ACA5B;;;;;;;;ACAA;;;;;;;;ACAA;;;;;;;;ACAA;;;;;;UCAA;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;;;;WCrCA;;;;;WCAA;WACA;WACA;WACA;WACA,+BAA+B,wCAAwC;WACvE;WACA;WACA;WACA;WACA,iBAAiB,qBAAqB;WACtC;WACA;WACA,kBAAkB,qBAAqB;WACvC;WACA;WACA,KAAK;WACL;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;;;;WC3BA;WACA;WACA;WACA;WACA;WACA,iCAAiC,WAAW;WAC5C;WACA;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,EAAE;WACF;;;;;WCRA;WACA;WACA;WACA,cAAc,6BAA6B;WAC3C;;;;;WCJA;WACA;WACA;WACA;WACA;;;;;WCJA;;;;;WCAA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;WCNA;WACA;WACA;WACA;WACA;;;;;WCJA;;;;;WCAA;;WAEA;WACA;WACA;WACA;WACA;;WAEA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,gBAAgB,qBAAqB;WACrC;WACA;WACA;;WAEA;WACA;WACA;WACA;WACA,aAAa;WACb;WACA,IAAI;WACJ;WACA;;WAEA;;WAEA;;WAEA;;;;;WCrCA;WACA;WACA;WACA;WACA;WACA;;;;;UELA;UACA","sources":["webpack://@diplodoc/client/./src/components/HeaderControls/index.tsx","webpack://@diplodoc/client/./src/utils.ts","webpack://@diplodoc/client/./src/components/Layout/index.tsx","webpack://@diplodoc/client/./src/hooks/useSettings.ts","webpack://@diplodoc/client/./src/hooks/useMobile.ts","webpack://@diplodoc/client/external commonjs2 \"@diplodoc/transform/dist/js/yfm\"","webpack://@diplodoc/client/./src/components/App/App.tsx","webpack://@diplodoc/client/./src/index.server.tsx","webpack://@diplodoc/client/./src/interceptors/leading-page-links.js","webpack://@diplodoc/client/./src/stub/empty-module.js","webpack://@diplodoc/client/external node-commonjs \"crypto\"","webpack://@diplodoc/client/external node-commonjs \"stream\"","webpack://@diplodoc/client/external node-commonjs \"url\"","webpack://@diplodoc/client/external node-commonjs \"util\"","webpack://@diplodoc/client/webpack/bootstrap","webpack://@diplodoc/client/webpack/runtime/amd options","webpack://@diplodoc/client/webpack/runtime/chunk loaded","webpack://@diplodoc/client/webpack/runtime/compat get default export","webpack://@diplodoc/client/webpack/runtime/define property getters","webpack://@diplodoc/client/webpack/runtime/ensure chunk","webpack://@diplodoc/client/webpack/runtime/get javascript chunk filename","webpack://@diplodoc/client/webpack/runtime/get mini-css chunk filename","webpack://@diplodoc/client/webpack/runtime/hasOwnProperty shorthand","webpack://@diplodoc/client/webpack/runtime/make namespace object","webpack://@diplodoc/client/webpack/runtime/node module decorator","webpack://@diplodoc/client/webpack/runtime/publicPath","webpack://@diplodoc/client/webpack/runtime/require chunk loading","webpack://@diplodoc/client/webpack/runtime/startup chunk dependencies","webpack://@diplodoc/client/webpack/before-startup","webpack://@diplodoc/client/webpack/startup","webpack://@diplodoc/client/webpack/after-startup"],"sourcesContent":["import React, {memo} from 'react';\n\nimport {ControlSizes, Controls, ControlsLayout, TextSizes, Theme} from '@diplodoc/components';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype OnChangeCallback = (value: any) => void;\n\ntype Props = {\n mobileView: boolean;\n\n theme: Theme;\n onChangeTheme: OnChangeCallback;\n textSize: TextSizes;\n onChangeTextSize: OnChangeCallback;\n wideFormat: boolean;\n onChangeWideFormat: OnChangeCallback;\n showMiniToc: boolean;\n onChangeShowMiniToc: OnChangeCallback;\n};\n\nexport const HeaderControls = memo<Props>(\n ({\n mobileView,\n\n theme,\n onChangeTheme,\n\n textSize,\n onChangeTextSize,\n\n wideFormat,\n onChangeWideFormat,\n\n showMiniToc,\n onChangeShowMiniToc,\n }) => {\n return (\n <ControlsLayout\n controlClassName={'Control'}\n controlSize={ControlSizes.L}\n isWideView={mobileView}\n isMobileView={mobileView}\n >\n <Controls\n className={'Controls'}\n theme={theme}\n onChangeTheme={onChangeTheme}\n wideFormat={wideFormat}\n onChangeWideFormat={onChangeWideFormat}\n showMiniToc={showMiniToc}\n onChangeShowMiniToc={onChangeShowMiniToc}\n textSize={textSize}\n onChangeTextSize={onChangeTextSize}\n />\n </ControlsLayout>\n );\n },\n);\n\nHeaderControls.displayName = 'HeaderControls';\n","import {Theme} from '@diplodoc/components';\n\nexport function strToBoolean(str: string | boolean) {\n if (typeof str === 'boolean') {\n return str;\n }\n\n return str ? str === 'true' : false;\n}\n\nexport function updateRootClassName({\n theme,\n mobileView = false,\n wideFormat = false,\n fullHeader = false,\n}: {\n theme: Theme;\n mobileView: boolean;\n wideFormat: boolean;\n fullHeader: boolean;\n}) {\n document.body.className = [\n 'g-root',\n mobileView ? 'mobile' : 'desktop',\n wideFormat && 'dc-root_wide-format',\n fullHeader && 'dc-root_full-header',\n theme === 'light' && 'g-root_theme_light',\n theme === 'dark' && 'g-root_theme_dark',\n ]\n .filter(Boolean)\n .join(' ');\n}\n","import React, {FC, PropsWithChildren, ReactElement} from 'react';\nimport block from 'bem-cn-lite';\n\nimport './Layout.scss';\n\nconst b = block('Layout');\n\nfunction Header() {\n return null;\n}\n\nfunction Content() {\n return null;\n}\n\nfunction Footer() {\n return null;\n}\n\ntype LayoutStatics = {\n Header: FC<PropsWithChildren>;\n Content: FC<PropsWithChildren>;\n Footer: FC<PropsWithChildren>;\n};\n\nexport const Layout: LayoutStatics & FC<PropsWithChildren<{doc?: boolean}>> = (props) => {\n const {children, doc} = props;\n let header, content, footer;\n\n React.Children.forEach(children as ReactElement[], (child: ReactElement) => {\n switch (child.type) {\n case Header:\n header = child.props.children;\n break;\n case Content:\n content = child.props.children;\n break;\n case Footer:\n footer = child.props.children;\n break;\n }\n });\n\n return (\n <div className={b()}>\n {header && <div className={b('header')}>{header}</div>}\n <div className={b('body')}>\n {content && <div className={b('content')}>{content}</div>}\n {footer && <div className={b('footer', {doc})}>{footer}</div>}\n </div>\n </div>\n );\n};\n\nLayout.displayName = 'Layout';\n\nLayout.defaultProps = {\n doc: false,\n};\n\nLayout.Header = Header;\nLayout.Content = Content;\nLayout.Footer = Footer;\n","import {strToBoolean} from '../utils';\nimport {useState} from 'react';\n\nimport {TextSizes, Theme} from '@diplodoc/components';\n\nconst DEFAULT_USER_SETTINGS = {\n theme: Theme.Light,\n textSize: TextSizes.M,\n showMiniToc: true,\n wideFormat: true,\n fullScreen: false,\n};\n\nexport function useSettings() {\n const settings = getSettings();\n\n const [wideFormat, setWideFormat] = useState(settings.wideFormat);\n const [fullScreen, setFullScreen] = useState(settings.fullScreen);\n const [showMiniToc, setShowMiniToc] = useState(settings.showMiniToc);\n const [theme, setTheme] = useState(settings.theme);\n const [textSize, setTextSize] = useState(settings.textSize);\n\n return {\n theme,\n onChangeTheme: withSavingSetting('theme', setTheme),\n textSize,\n onChangeTextSize: withSavingSetting('textSize', setTextSize),\n wideFormat,\n onChangeWideFormat: withSavingSetting('wideFormat', setWideFormat),\n showMiniToc,\n onChangeShowMiniToc: withSavingSetting('showMiniToc', setShowMiniToc),\n fullScreen,\n onChangeFullScreen: withSavingSetting('fullScreen', setFullScreen),\n };\n}\n\nfunction getSettings() {\n const theme = getSetting('theme');\n const textSize = getSetting('textSize');\n const showMiniToc = getSetting('showMiniToc');\n const wideFormat = getSetting('wideFormat');\n const fullScreen = getSetting('fullScreen');\n\n return {\n theme,\n textSize,\n showMiniToc: strToBoolean(showMiniToc),\n wideFormat: strToBoolean(wideFormat),\n fullScreen: strToBoolean(fullScreen),\n };\n}\n\ntype TSettings = typeof DEFAULT_USER_SETTINGS;\n\nfunction getSetting<T extends keyof TSettings>(name: T): TSettings[T] {\n if (typeof sessionStorage === 'undefined') {\n return DEFAULT_USER_SETTINGS[name];\n }\n\n try {\n return (sessionStorage.getItem(name) as TSettings[T]) || DEFAULT_USER_SETTINGS[name];\n } catch {\n return DEFAULT_USER_SETTINGS[name];\n }\n}\n\nfunction setSetting<T>(name: string, value: T) {\n try {\n sessionStorage.setItem(name, String(value));\n } catch {}\n}\n\nfunction withSavingSetting<T>(settingName: string, onChange: (value: T) => void) {\n return (value: T) => {\n setSetting<T>(settingName, value);\n\n onChange(value);\n };\n}\n","import {useCallback, useEffect, useState} from 'react';\n\nconst MOBILE_VIEW_WIDTH_BREAKPOINT = 769;\n\nexport function useMobile() {\n const [mobileView, setMobileView] = useState<boolean>(\n typeof document !== 'undefined' && document.body.clientWidth < MOBILE_VIEW_WIDTH_BREAKPOINT,\n );\n\n const onResizeHandler = useCallback(() => {\n setMobileView(document.body.clientWidth < MOBILE_VIEW_WIDTH_BREAKPOINT);\n }, []);\n\n useEffect(onResizeHandler, [onResizeHandler]);\n\n useEffect(() => {\n window.addEventListener('resize', onResizeHandler);\n\n return () => window.removeEventListener('resize', onResizeHandler);\n }, [onResizeHandler]);\n\n return mobileView;\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@diplodoc/transform/dist/js/yfm\");","import React, {ReactElement, useEffect} from 'react';\n\nimport {\n NavigationData,\n NavigationDropdownItem,\n NavigationItemModel,\n PageConstructor,\n PageConstructorProvider,\n} from '@gravity-ui/page-constructor';\nimport {\n DocLeadingPage,\n DocLeadingPageData,\n DocPage,\n DocPageData,\n Lang,\n Router,\n Theme,\n} from '@diplodoc/components';\nimport {HeaderControls} from '../HeaderControls';\nimport {updateRootClassName} from '../../utils';\nimport {Layout} from '../Layout';\nimport {useSettings} from '../../hooks/useSettings';\nimport {useMobile} from '../../hooks/useMobile';\n\nimport '../../interceptors/leading-page-links';\n\nimport '@diplodoc/transform/dist/js/yfm';\nimport {MermaidRuntime} from '@diplodoc/mermaid-extension/react';\nimport {LatexRuntime} from '@diplodoc/latex-extension/react';\nimport {Runtime as OpenapiSandbox} from '@diplodoc/openapi-extension/runtime';\n\nimport './App.scss';\n\nexport interface AppProps {\n lang: Lang;\n router: Router;\n}\n\nexport type DocInnerProps<Data = DocLeadingPageData | DocPageData> = {\n data: Data;\n} & AppProps;\n\nexport type {DocLeadingPageData, DocPageData};\n\nfunction Page(props: DocInnerProps) {\n const {data, ...pageProps} = props;\n\n const Page = data.leading ? DocLeadingPage : DocPage;\n\n return (\n <Layout>\n <Layout.Content>\n {/*@ts-ignore*/}\n <Page {...data} {...pageProps} />\n </Layout.Content>\n </Layout>\n );\n}\n\nfunction isDropdownItem(item: NavigationItemModel): item is NavigationDropdownItem {\n return Array.isArray((item as NavigationDropdownItem).items);\n}\n\nfunction rebaseNavItem<T extends NavigationItemModel>(item: T) {\n const result: T = {...item};\n\n if (isDropdownItem(item)) {\n (result as NavigationDropdownItem).items = item.items.map(rebaseNavItem);\n }\n\n if (item.url !== undefined) {\n result.url = item.url.replace(/^\\/?/, '/');\n }\n\n return result;\n}\n\ntype TocData = DocPageData['toc'] & {\n navigation?: NavigationData;\n};\n\nexport function App(props: DocInnerProps): ReactElement {\n const {data, router, lang} = props;\n const {navigation} = data.toc as TocData;\n\n const settings = useSettings();\n const mobileView = useMobile();\n\n const {theme, textSize, wideFormat, fullScreen, showMiniToc, onChangeFullScreen} = settings;\n const fullHeader = !fullScreen && Boolean(navigation);\n const headerHeight = fullHeader ? 64 : 0;\n const pageProps = {\n headerHeight,\n data,\n router,\n lang,\n wideFormat,\n showMiniToc,\n theme,\n textSize,\n fullScreen,\n onChangeFullScreen,\n };\n\n useEffect(() => {\n updateRootClassName({\n theme,\n mobileView,\n wideFormat,\n fullHeader,\n });\n }, [theme, mobileView, wideFormat, fullHeader]);\n\n if (!navigation) {\n return (\n <div className=\"App\">\n <Page {...pageProps} {...settings} />\n </div>\n );\n }\n\n const {header = {}, logo} = navigation;\n const {leftItems = [], rightItems = []} = header as NavigationData['header'];\n const headerWithControls = rightItems.some((item: {type: string}) => item.type === 'controls');\n\n return (\n <div className=\"App\">\n <PageConstructorProvider theme={theme}>\n <PageConstructor\n custom={{\n navigation: {\n controls: () => (\n <HeaderControls {...settings} mobileView={mobileView} />\n ),\n },\n blocks: {\n page: () => (\n <Page {...pageProps} {...(headerWithControls ? {} : settings)} />\n ),\n },\n }}\n content={{\n blocks: [\n {\n type: 'page',\n },\n ],\n }}\n navigation={\n fullHeader\n ? {\n header: {\n withBorder: true,\n leftItems: leftItems.map(rebaseNavItem),\n rightItems: rightItems.map(rebaseNavItem),\n },\n logo,\n }\n : undefined\n }\n />\n </PageConstructorProvider>\n <OpenapiSandbox />\n <LatexRuntime />\n <MermaidRuntime\n theme={theme === Theme.Dark ? 'dark' : 'neutral'}\n zoom={{\n showMenu: true,\n bindKeys: true,\n }}\n />\n </div>\n );\n}\n","import React from 'react';\nimport {renderToString} from 'react-dom/server';\n\nimport {App, DocInnerProps, DocLeadingPageData, DocPageData} from './components/App/App';\n\nexport type {DocInnerProps, DocPageData, DocLeadingPageData};\n\nexport const render = (props: DocInnerProps) => renderToString(<App {...props} />);\n","(function () {\n /**\n * Element.matches() polyfill.\n * @link https://developer.mozilla.org/ru/docs/Web/API/Element/matches\n */\n if (typeof Element !== 'undefined') {\n (function (e) {\n const matches =\n e.matches ||\n e.matchesSelector ||\n e.webkitMatchesSelector ||\n e.mozMatchesSelector ||\n e.msMatchesSelector ||\n e.oMatchesSelector;\n\n if (matches) {\n e.matches = e.matchesSelector = matches;\n } else {\n e.matches = e.matchesSelector = function (selector) {\n const th = this;\n return Array.prototype.some.call(document.querySelectorAll(selector), (el) => {\n return el === th;\n });\n };\n }\n })(Element.prototype);\n }\n\n if (typeof document !== 'undefined') {\n document.addEventListener('click', (event) => {\n const href = event.target.href;\n const locationOrigin = window.location.origin;\n\n if (\n event.target.matches('.dc-doc-layout__center a') &&\n href.startsWith(locationOrigin)\n ) {\n event.preventDefault();\n\n const mainFileName = 'index';\n const extention = '.html';\n\n if (href.endsWith('/')) {\n window.location.href = `${href}${mainFileName}${extention}`;\n return;\n }\n\n // https://../file-name, https://../file-name#fragment\n const splitedHref = href.split('#');\n if (splitedHref.length > 0 && !splitedHref[0].endsWith(extention)) {\n splitedHref[0] += extention;\n window.location.href = splitedHref.join('#');\n return;\n }\n\n window.location.href = href;\n }\n });\n }\n})();\n","export default function () {}\n","module.exports = require(\"crypto\");","module.exports = require(\"stream\");","module.exports = require(\"url\");","module.exports = require(\"util\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n// the startup function\n__webpack_require__.x = () => {\n\t// Load entry module and return exports\n\t// This entry module depends on other loaded chunks and execution need to be delayed\n\tvar __webpack_exports__ = __webpack_require__.O(undefined, [514,736], () => (__webpack_require__(2722)))\n\t__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n\treturn __webpack_exports__;\n};\n\n","__webpack_require__.amdO = {};","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks and sibling chunks for the entrypoint\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + {\"514\":\"react\",\"736\":\"vendor\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks and sibling chunks for the entrypoint\n__webpack_require__.miniCssF = (chunkId) => {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"\";","// no baseURI\n\n// object to store loaded chunks\n// \"1\" means \"loaded\", otherwise not loaded yet\nvar installedChunks = {\n\t143: 1\n};\n\n__webpack_require__.O.require = (chunkId) => (installedChunks[chunkId]);\n\nvar installChunk = (chunk) => {\n\tvar moreModules = chunk.modules, chunkIds = chunk.ids, runtime = chunk.runtime;\n\tfor(var moduleId in moreModules) {\n\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t}\n\t}\n\tif(runtime) runtime(__webpack_require__);\n\tfor(var i = 0; i < chunkIds.length; i++)\n\t\tinstalledChunks[chunkIds[i]] = 1;\n\t__webpack_require__.O();\n};\n\n// require() chunk loading for javascript\n__webpack_require__.f.require = (chunkId, promises) => {\n\t// \"1\" is the signal for \"already loaded\"\n\tif(!installedChunks[chunkId]) {\n\t\tif(true) { // all chunks have JS\n\t\t\tinstallChunk(require(\"./\" + __webpack_require__.u(chunkId)));\n\t\t} else installedChunks[chunkId] = 1;\n\t}\n};\n\n// no external install chunk\n\n// no HMR\n\n// no HMR manifest","var next = __webpack_require__.x;\n__webpack_require__.x = () => {\n\t__webpack_require__.e(514);\n\t__webpack_require__.e(736);\n\treturn next();\n};","","// run startup\nvar __webpack_exports__ = __webpack_require__.x();\n",""],"names":["React","memo","ControlSizes","Controls","ControlsLayout","HeaderControls","mobileView","theme","onChangeTheme","textSize","onChangeTextSize","wideFormat","onChangeWideFormat","showMiniToc","onChangeShowMiniToc","createElement","controlClassName","controlSize","L","isWideView","isMobileView","className","displayName","strToBoolean","str","updateRootClassName","fullHeader","document","body","filter","Boolean","join","block","b","Header","Content","Footer","Layout","props","children","doc","header","content","footer","Children","forEach","child","type","defaultProps","useState","TextSizes","Theme","DEFAULT_USER_SETTINGS","Light","M","fullScreen","useSettings","settings","getSettings","setWideFormat","setFullScreen","setShowMiniToc","setTheme","setTextSize","withSavingSetting","onChangeFullScreen","getSetting","name","sessionStorage","getItem","setSetting","value","setItem","String","settingName","onChange","useCallback","useEffect","MOBILE_VIEW_WIDTH_BREAKPOINT","useMobile","setMobileView","clientWidth","onResizeHandler","window","addEventListener","removeEventListener","PageConstructor","PageConstructorProvider","DocLeadingPage","DocPage","MermaidRuntime","LatexRuntime","Runtime","OpenapiSandbox","Page","data","pageProps","leading","Object","assign","isDropdownItem","item","Array","isArray","items","rebaseNavItem","result","map","url","undefined","replace","App","router","lang","navigation","toc","headerHeight","logo","leftItems","rightItems","headerWithControls","some","custom","controls","blocks","page","withBorder","Dark","zoom","showMenu","bindKeys","renderToString","render","Element","e","matches","matchesSelector","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","selector","th","prototype","call","querySelectorAll","el","event","href","target","locationOrigin","location","origin","startsWith","preventDefault","mainFileName","extention","endsWith","splitedHref","split","length"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"app.js","mappings":"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CtC;WACA;WACA,kBAAkB,qBAAqB;WACvC;WACA;WACA,KAAK;WACL;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;;;;;WC3BA;WACA;WACA;WACA;WACA;WACA,iCAAiC,WAAW;WAC5C;WACA;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,EAAE;WACF;;;;;WCRA;WACA;WACA;WACA,cAAc,6BAA6B;WAC3C;;;;;WCJA;WACA;WACA;WACA;WACA;;;;;WCJA;;;;;WCAA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;WCNA;WACA;WACA;WACA;WACA;;;;;WCJA;;;;;WCAA;;WAEA;WACA;WACA;WACA;WACA;;WAEA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,gBAAgB,qBAAqB;WACrC;WACA;WACA;;WAEA;WACA;WACA;WACA;WACA,aAAa;WACb;WACA,IAAI;WACJ;WACA;;WAEA;;WAEA;;WAEA;;;;;WCrCA;WACA;WACA;WACA;WACA;WACA;;;;;UELA;UACA","sources":["webpack://@diplodoc/client/./src/components/HeaderControls/index.tsx","webpack://@diplodoc/client/./src/constants.ts","webpack://@diplodoc/client/./src/utils.ts","webpack://@diplodoc/client/./src/components/Layout/index.tsx","webpack://@diplodoc/client/./src/hooks/useSettings.ts","webpack://@diplodoc/client/./src/hooks/useMobile.ts","webpack://@diplodoc/client/external commonjs2 \"@diplodoc/transform/dist/js/yfm\"","webpack://@diplodoc/client/./src/components/App/App.tsx","webpack://@diplodoc/client/./src/index.server.tsx","webpack://@diplodoc/client/./src/interceptors/leading-page-links.js","webpack://@diplodoc/client/./src/stub/empty-module.js","webpack://@diplodoc/client/external node-commonjs \"crypto\"","webpack://@diplodoc/client/external node-commonjs \"stream\"","webpack://@diplodoc/client/external node-commonjs \"url\"","webpack://@diplodoc/client/external node-commonjs \"util\"","webpack://@diplodoc/client/webpack/bootstrap","webpack://@diplodoc/client/webpack/runtime/amd options","webpack://@diplodoc/client/webpack/runtime/chunk loaded","webpack://@diplodoc/client/webpack/runtime/compat get default export","webpack://@diplodoc/client/webpack/runtime/define property getters","webpack://@diplodoc/client/webpack/runtime/ensure chunk","webpack://@diplodoc/client/webpack/runtime/get javascript chunk filename","webpack://@diplodoc/client/webpack/runtime/get mini-css chunk filename","webpack://@diplodoc/client/webpack/runtime/hasOwnProperty shorthand","webpack://@diplodoc/client/webpack/runtime/make namespace object","webpack://@diplodoc/client/webpack/runtime/node module decorator","webpack://@diplodoc/client/webpack/runtime/publicPath","webpack://@diplodoc/client/webpack/runtime/require chunk loading","webpack://@diplodoc/client/webpack/runtime/startup chunk dependencies","webpack://@diplodoc/client/webpack/before-startup","webpack://@diplodoc/client/webpack/startup","webpack://@diplodoc/client/webpack/after-startup"],"sourcesContent":["import React, {memo} from 'react';\n\nimport {ControlSizes, Controls, ControlsLayout, TextSizes, Theme} from '@diplodoc/components';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype OnChangeCallback = (value: any) => void;\n\ntype Props = {\n mobileView: boolean;\n\n theme: Theme;\n onChangeTheme: OnChangeCallback;\n textSize: TextSizes;\n onChangeTextSize: OnChangeCallback;\n wideFormat: boolean;\n onChangeWideFormat: OnChangeCallback;\n showMiniToc: boolean;\n onChangeShowMiniToc: OnChangeCallback;\n};\n\nexport const HeaderControls = memo<Props>(\n ({\n mobileView,\n\n theme,\n onChangeTheme,\n\n textSize,\n onChangeTextSize,\n\n wideFormat,\n onChangeWideFormat,\n\n showMiniToc,\n onChangeShowMiniToc,\n }) => {\n return (\n <ControlsLayout\n controlClassName={'Control'}\n controlSize={ControlSizes.L}\n isWideView={mobileView}\n isMobileView={mobileView}\n >\n <Controls\n className={'Controls'}\n theme={theme}\n onChangeTheme={onChangeTheme}\n wideFormat={wideFormat}\n onChangeWideFormat={onChangeWideFormat}\n showMiniToc={showMiniToc}\n onChangeShowMiniToc={onChangeShowMiniToc}\n textSize={textSize}\n onChangeTextSize={onChangeTextSize}\n />\n </ControlsLayout>\n );\n },\n);\n\nHeaderControls.displayName = 'HeaderControls';\n","export const RTL_LANGS = [\n 'ar',\n 'arc',\n 'ckb',\n 'dv',\n 'fa',\n 'ha',\n 'he',\n 'khw',\n 'ks',\n 'ps',\n 'sd',\n 'ur',\n 'uz_AF',\n 'yi',\n];\n\nexport enum TextDirection {\n RTL = 'rtl',\n LTR = 'ltr',\n}\n","import {Lang, Theme} from '@diplodoc/components';\nimport {RTL_LANGS, TextDirection} from './constants';\n\nexport function strToBoolean(str: string | boolean) {\n if (typeof str === 'boolean') {\n return str;\n }\n\n return str ? str === 'true' : false;\n}\n\nexport function updateRootClassName({\n theme,\n mobileView = false,\n wideFormat = false,\n fullHeader = false,\n}: {\n theme: Theme;\n mobileView: boolean;\n wideFormat: boolean;\n fullHeader: boolean;\n}) {\n document.body.className = [\n 'g-root',\n mobileView ? 'mobile' : 'desktop',\n wideFormat && 'dc-root_wide-format',\n fullHeader && 'dc-root_full-header',\n theme === 'light' && 'g-root_theme_light',\n theme === 'dark' && 'g-root_theme_dark',\n ]\n .filter(Boolean)\n .join(' ');\n}\n\nexport function getDirection(lang: Lang): TextDirection {\n const isRTL = RTL_LANGS.includes(lang);\n\n return isRTL ? TextDirection.RTL : TextDirection.LTR;\n}\n","import React, {FC, PropsWithChildren, ReactElement} from 'react';\nimport block from 'bem-cn-lite';\n\nimport './Layout.scss';\n\nconst b = block('Layout');\n\nfunction Header() {\n return null;\n}\n\nfunction Content() {\n return null;\n}\n\nfunction Footer() {\n return null;\n}\n\ntype LayoutStatics = {\n Header: FC<PropsWithChildren>;\n Content: FC<PropsWithChildren>;\n Footer: FC<PropsWithChildren>;\n};\n\nexport const Layout: LayoutStatics & FC<PropsWithChildren<{doc?: boolean}>> = (props) => {\n const {children, doc} = props;\n let header, content, footer;\n\n React.Children.forEach(children as ReactElement[], (child: ReactElement) => {\n switch (child.type) {\n case Header:\n header = child.props.children;\n break;\n case Content:\n content = child.props.children;\n break;\n case Footer:\n footer = child.props.children;\n break;\n }\n });\n\n return (\n <div className={b()}>\n {header && <div className={b('header')}>{header}</div>}\n <div className={b('body')}>\n {content && <div className={b('content')}>{content}</div>}\n {footer && <div className={b('footer', {doc})}>{footer}</div>}\n </div>\n </div>\n );\n};\n\nLayout.displayName = 'Layout';\n\nLayout.defaultProps = {\n doc: false,\n};\n\nLayout.Header = Header;\nLayout.Content = Content;\nLayout.Footer = Footer;\n","import {strToBoolean} from '../utils';\nimport {useState} from 'react';\n\nimport {TextSizes, Theme} from '@diplodoc/components';\n\nconst DEFAULT_USER_SETTINGS = {\n theme: Theme.Light,\n textSize: TextSizes.M,\n showMiniToc: true,\n wideFormat: true,\n fullScreen: false,\n};\n\nexport function useSettings() {\n const settings = getSettings();\n\n const [wideFormat, setWideFormat] = useState(settings.wideFormat);\n const [fullScreen, setFullScreen] = useState(settings.fullScreen);\n const [showMiniToc, setShowMiniToc] = useState(settings.showMiniToc);\n const [theme, setTheme] = useState(settings.theme);\n const [textSize, setTextSize] = useState(settings.textSize);\n\n return {\n theme,\n onChangeTheme: withSavingSetting('theme', setTheme),\n textSize,\n onChangeTextSize: withSavingSetting('textSize', setTextSize),\n wideFormat,\n onChangeWideFormat: withSavingSetting('wideFormat', setWideFormat),\n showMiniToc,\n onChangeShowMiniToc: withSavingSetting('showMiniToc', setShowMiniToc),\n fullScreen,\n onChangeFullScreen: withSavingSetting('fullScreen', setFullScreen),\n };\n}\n\nfunction getSettings() {\n const theme = getSetting('theme');\n const textSize = getSetting('textSize');\n const showMiniToc = getSetting('showMiniToc');\n const wideFormat = getSetting('wideFormat');\n const fullScreen = getSetting('fullScreen');\n\n return {\n theme,\n textSize,\n showMiniToc: strToBoolean(showMiniToc),\n wideFormat: strToBoolean(wideFormat),\n fullScreen: strToBoolean(fullScreen),\n };\n}\n\ntype TSettings = typeof DEFAULT_USER_SETTINGS;\n\nfunction getSetting<T extends keyof TSettings>(name: T): TSettings[T] {\n if (typeof sessionStorage === 'undefined') {\n return DEFAULT_USER_SETTINGS[name];\n }\n\n try {\n return (sessionStorage.getItem(name) as TSettings[T]) || DEFAULT_USER_SETTINGS[name];\n } catch {\n return DEFAULT_USER_SETTINGS[name];\n }\n}\n\nfunction setSetting<T>(name: string, value: T) {\n try {\n sessionStorage.setItem(name, String(value));\n } catch {}\n}\n\nfunction withSavingSetting<T>(settingName: string, onChange: (value: T) => void) {\n return (value: T) => {\n setSetting<T>(settingName, value);\n\n onChange(value);\n };\n}\n","import {useCallback, useEffect, useState} from 'react';\n\nconst MOBILE_VIEW_WIDTH_BREAKPOINT = 769;\n\nexport function useMobile() {\n const [mobileView, setMobileView] = useState<boolean>(\n typeof document !== 'undefined' && document.body.clientWidth < MOBILE_VIEW_WIDTH_BREAKPOINT,\n );\n\n const onResizeHandler = useCallback(() => {\n setMobileView(document.body.clientWidth < MOBILE_VIEW_WIDTH_BREAKPOINT);\n }, []);\n\n useEffect(onResizeHandler, [onResizeHandler]);\n\n useEffect(() => {\n window.addEventListener('resize', onResizeHandler);\n\n return () => window.removeEventListener('resize', onResizeHandler);\n }, [onResizeHandler]);\n\n return mobileView;\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@diplodoc/transform/dist/js/yfm\");","import React, {ReactElement, useEffect} from 'react';\n\nimport {\n NavigationData,\n NavigationDropdownItem,\n NavigationItemModel,\n PageConstructor,\n PageConstructorProvider,\n} from '@gravity-ui/page-constructor';\nimport {ThemeProvider} from '@gravity-ui/uikit';\nimport {\n DocLeadingPage,\n DocLeadingPageData,\n DocPage,\n DocPageData,\n Lang,\n Router,\n Theme,\n} from '@diplodoc/components';\nimport {HeaderControls} from '../HeaderControls';\nimport {getDirection, updateRootClassName} from '../../utils';\nimport {Layout} from '../Layout';\nimport {useSettings} from '../../hooks/useSettings';\nimport {useMobile} from '../../hooks/useMobile';\n\nimport '../../interceptors/leading-page-links';\n\nimport '@diplodoc/transform/dist/js/yfm';\nimport {MermaidRuntime} from '@diplodoc/mermaid-extension/react';\nimport {LatexRuntime} from '@diplodoc/latex-extension/react';\nimport {Runtime as OpenapiSandbox} from '@diplodoc/openapi-extension/runtime';\n\nimport './App.scss';\n\nexport interface AppProps {\n lang: Lang;\n router: Router;\n}\n\nexport type DocInnerProps<Data = DocLeadingPageData | DocPageData> = {\n data: Data;\n} & AppProps;\n\nexport type {DocLeadingPageData, DocPageData};\n\ntype RuntimeProps = {\n theme: Theme;\n};\n\nfunction Runtime(props: RuntimeProps) {\n const {theme} = props;\n\n return (\n <>\n <OpenapiSandbox />\n <LatexRuntime />\n <MermaidRuntime\n theme={theme === Theme.Dark ? 'dark' : 'neutral'}\n zoom={{\n showMenu: true,\n bindKeys: true,\n }}\n />\n </>\n );\n}\n\nfunction Page(props: DocInnerProps) {\n const {data, ...pageProps} = props;\n const Page = data.leading ? DocLeadingPage : DocPage;\n\n return (\n <Layout>\n <Layout.Content>\n {/*@ts-ignore*/}\n <Page {...data} {...pageProps} />\n </Layout.Content>\n </Layout>\n );\n}\n\nfunction isDropdownItem(item: NavigationItemModel): item is NavigationDropdownItem {\n return Array.isArray((item as NavigationDropdownItem).items);\n}\n\nfunction rebaseNavItem<T extends NavigationItemModel>(item: T) {\n const result: T = {...item};\n\n if (isDropdownItem(item)) {\n (result as NavigationDropdownItem).items = item.items.map(rebaseNavItem);\n }\n\n if (item.url !== undefined) {\n result.url = item.url.replace(/^\\/?/, '/');\n }\n\n return result;\n}\n\ntype TocData = DocPageData['toc'] & {\n navigation?: NavigationData;\n};\n\nexport function App(props: DocInnerProps): ReactElement {\n const {data, router, lang} = props;\n const {navigation} = data.toc as TocData;\n\n const settings = useSettings();\n const mobileView = useMobile();\n\n const {theme, textSize, wideFormat, fullScreen, showMiniToc, onChangeFullScreen} = settings;\n const fullHeader = !fullScreen && Boolean(navigation);\n const headerHeight = fullHeader ? 64 : 0;\n const pageProps = {\n headerHeight,\n data,\n router,\n lang,\n wideFormat,\n showMiniToc,\n theme,\n textSize,\n fullScreen,\n onChangeFullScreen,\n };\n const direction = getDirection(lang);\n\n useEffect(() => {\n updateRootClassName({\n theme,\n mobileView,\n wideFormat,\n fullHeader,\n });\n }, [theme, mobileView, wideFormat, fullHeader]);\n\n if (!navigation) {\n return (\n <div className=\"App\">\n <ThemeProvider theme={theme} direction={direction}>\n <Page {...pageProps} {...settings} />\n <Runtime theme={theme} />\n </ThemeProvider>\n </div>\n );\n }\n\n const {header = {}, logo} = navigation;\n const {leftItems = [], rightItems = []} = header as NavigationData['header'];\n const headerWithControls = rightItems.some((item: {type: string}) => item.type === 'controls');\n\n return (\n <div className=\"App\">\n <ThemeProvider theme={theme} direction={direction}>\n <PageConstructorProvider theme={theme}>\n <PageConstructor\n custom={{\n navigation: {\n controls: () => (\n <HeaderControls {...settings} mobileView={mobileView} />\n ),\n },\n blocks: {\n page: () => (\n <Page\n {...pageProps}\n {...(headerWithControls ? {} : settings)}\n />\n ),\n },\n }}\n content={{\n blocks: [\n {\n type: 'page',\n },\n ],\n }}\n navigation={\n fullHeader\n ? {\n header: {\n withBorder: true,\n leftItems: leftItems.map(rebaseNavItem),\n rightItems: rightItems.map(rebaseNavItem),\n },\n logo,\n }\n : undefined\n }\n />\n </PageConstructorProvider>\n </ThemeProvider>\n <Runtime theme={theme} />\n </div>\n );\n}\n","import React from 'react';\nimport {renderToString} from 'react-dom/server';\n\nimport {App, DocInnerProps, DocLeadingPageData, DocPageData} from './components/App/App';\n\nexport type {DocInnerProps, DocPageData, DocLeadingPageData};\n\nexport const render = (props: DocInnerProps) => renderToString(<App {...props} />);\n","(function () {\n /**\n * Element.matches() polyfill.\n * @link https://developer.mozilla.org/ru/docs/Web/API/Element/matches\n */\n if (typeof Element !== 'undefined') {\n (function (e) {\n const matches =\n e.matches ||\n e.matchesSelector ||\n e.webkitMatchesSelector ||\n e.mozMatchesSelector ||\n e.msMatchesSelector ||\n e.oMatchesSelector;\n\n if (matches) {\n e.matches = e.matchesSelector = matches;\n } else {\n e.matches = e.matchesSelector = function (selector) {\n const th = this;\n return Array.prototype.some.call(document.querySelectorAll(selector), (el) => {\n return el === th;\n });\n };\n }\n })(Element.prototype);\n }\n\n if (typeof document !== 'undefined') {\n document.addEventListener('click', (event) => {\n const href = event.target.href;\n const locationOrigin = window.location.origin;\n\n if (\n event.target.matches('.dc-doc-layout__center a') &&\n href.startsWith(locationOrigin)\n ) {\n event.preventDefault();\n\n const mainFileName = 'index';\n const extention = '.html';\n\n if (href.endsWith('/')) {\n window.location.href = `${href}${mainFileName}${extention}`;\n return;\n }\n\n // https://../file-name, https://../file-name#fragment\n const splitedHref = href.split('#');\n if (splitedHref.length > 0 && !splitedHref[0].endsWith(extention)) {\n splitedHref[0] += extention;\n window.location.href = splitedHref.join('#');\n return;\n }\n\n window.location.href = href;\n }\n });\n }\n})();\n","export default function () {}\n","module.exports = require(\"crypto\");","module.exports = require(\"stream\");","module.exports = require(\"url\");","module.exports = require(\"util\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n// the startup function\n__webpack_require__.x = () => {\n\t// Load entry module and return exports\n\t// This entry module depends on other loaded chunks and execution need to be delayed\n\tvar __webpack_exports__ = __webpack_require__.O(undefined, [644,121], () => (__webpack_require__(5048)))\n\t__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n\treturn __webpack_exports__;\n};\n\n","__webpack_require__.amdO = {};","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks and sibling chunks for the entrypoint\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + {\"121\":\"vendor\",\"644\":\"react\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks and sibling chunks for the entrypoint\n__webpack_require__.miniCssF = (chunkId) => {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"\";","// no baseURI\n\n// object to store loaded chunks\n// \"1\" means \"loaded\", otherwise not loaded yet\nvar installedChunks = {\n\t524: 1\n};\n\n__webpack_require__.O.require = (chunkId) => (installedChunks[chunkId]);\n\nvar installChunk = (chunk) => {\n\tvar moreModules = chunk.modules, chunkIds = chunk.ids, runtime = chunk.runtime;\n\tfor(var moduleId in moreModules) {\n\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t}\n\t}\n\tif(runtime) runtime(__webpack_require__);\n\tfor(var i = 0; i < chunkIds.length; i++)\n\t\tinstalledChunks[chunkIds[i]] = 1;\n\t__webpack_require__.O();\n};\n\n// require() chunk loading for javascript\n__webpack_require__.f.require = (chunkId, promises) => {\n\t// \"1\" is the signal for \"already loaded\"\n\tif(!installedChunks[chunkId]) {\n\t\tif(true) { // all chunks have JS\n\t\t\tinstallChunk(require(\"./\" + __webpack_require__.u(chunkId)));\n\t\t} else installedChunks[chunkId] = 1;\n\t}\n};\n\n// no external install chunk\n\n// no HMR\n\n// no HMR manifest","var next = __webpack_require__.x;\n__webpack_require__.x = () => {\n\t__webpack_require__.e(644);\n\t__webpack_require__.e(121);\n\treturn next();\n};","","// run startup\nvar __webpack_exports__ = __webpack_require__.x();\n",""],"names":["React","memo","ControlSizes","Controls","ControlsLayout","HeaderControls","mobileView","theme","onChangeTheme","textSize","onChangeTextSize","wideFormat","onChangeWideFormat","showMiniToc","onChangeShowMiniToc","createElement","controlClassName","controlSize","L","isWideView","isMobileView","className","displayName","RTL_LANGS","TextDirection","strToBoolean","str","updateRootClassName","fullHeader","document","body","filter","Boolean","join","getDirection","lang","isRTL","includes","RTL","LTR","block","b","Header","Content","Footer","Layout","props","children","doc","header","content","footer","Children","forEach","child","type","defaultProps","useState","TextSizes","Theme","DEFAULT_USER_SETTINGS","Light","M","fullScreen","useSettings","settings","getSettings","setWideFormat","setFullScreen","setShowMiniToc","setTheme","setTextSize","withSavingSetting","onChangeFullScreen","getSetting","name","sessionStorage","getItem","setSetting","value","setItem","String","settingName","onChange","useCallback","useEffect","MOBILE_VIEW_WIDTH_BREAKPOINT","useMobile","setMobileView","clientWidth","onResizeHandler","window","addEventListener","removeEventListener","PageConstructor","PageConstructorProvider","ThemeProvider","DocLeadingPage","DocPage","MermaidRuntime","LatexRuntime","Runtime","OpenapiSandbox","Fragment","Dark","zoom","showMenu","bindKeys","Page","data","pageProps","leading","Object","assign","isDropdownItem","item","Array","isArray","items","rebaseNavItem","result","map","url","undefined","replace","App","router","navigation","toc","headerHeight","direction","logo","leftItems","rightItems","headerWithControls","some","custom","controls","blocks","page","withBorder","renderToString","render","Element","e","matches","matchesSelector","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","selector","th","prototype","call","querySelectorAll","el","event","href","target","locationOrigin","location","origin","startsWith","preventDefault","mainFileName","extention","endsWith","splitedHref","split","length"],"sourceRoot":""}
|