@diplodoc/client 2.5.0 → 2.6.2

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.
@@ -1,7 +1,7 @@
1
1
  /******/ (() => { // webpackBootstrap
2
2
  /******/ var __webpack_modules__ = ({
3
3
 
4
- /***/ 5579:
4
+ /***/ 94184:
5
5
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6
6
 
7
7
  "use strict";
@@ -11,29 +11,32 @@ __webpack_require__.r(__webpack_exports__);
11
11
  // EXPORTS
12
12
  __webpack_require__.d(__webpack_exports__, {
13
13
  LINK_KEYS: () => (/* reexport */ LINK_KEYS),
14
+ LINK_KEYS_LEADING_CONFIG: () => (/* reexport */ LINK_KEYS_LEADING_CONFIG),
15
+ LINK_KEYS_PAGE_CONSTRUCTOR_CONFIG: () => (/* reexport */ LINK_KEYS_PAGE_CONSTRUCTOR_CONFIG),
16
+ preprocess: () => (/* reexport */ preprocess),
14
17
  render: () => (/* binding */ render)
15
18
  });
16
19
 
17
20
  // EXTERNAL MODULE: ./node_modules/react/index.js
18
- var react = __webpack_require__(6540);
21
+ var react = __webpack_require__(96540);
19
22
  // EXTERNAL MODULE: ./node_modules/react-dom/server.node.js
20
- var server_node = __webpack_require__(4362);
23
+ var server_node = __webpack_require__(94362);
21
24
  // EXTERNAL MODULE: ./node_modules/@gravity-ui/page-constructor/build/esm/containers/PageConstructor/Provider.js
22
- var Provider = __webpack_require__(7658);
23
- // EXTERNAL MODULE: ./node_modules/@gravity-ui/page-constructor/build/esm/containers/PageConstructor/PageConstructor.js + 216 modules
24
- var PageConstructor = __webpack_require__(3233);
25
+ var Provider = __webpack_require__(47658);
26
+ // EXTERNAL MODULE: ./node_modules/@gravity-ui/page-constructor/build/esm/containers/PageConstructor/PageConstructor.js + 213 modules
27
+ var PageConstructor = __webpack_require__(58919);
25
28
  // EXTERNAL MODULE: ./node_modules/@gravity-ui/uikit/build/esm/components/theme/ThemeProvider.js + 6 modules
26
- var ThemeProvider = __webpack_require__(7028);
29
+ var ThemeProvider = __webpack_require__(14647);
27
30
  // EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/models/index.js
28
- var models = __webpack_require__(8184);
29
- // EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/utils/index.js + 61 modules
30
- var utils = __webpack_require__(4957);
31
+ var models = __webpack_require__(78184);
32
+ // EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/utils/index.js + 56 modules
33
+ var utils = __webpack_require__(80676);
31
34
  // EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/config/index.js + 8 modules
32
- var config = __webpack_require__(1205);
35
+ var config = __webpack_require__(11205);
33
36
  // EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/components/Controls/ControlsLayout.js
34
- var ControlsLayout = __webpack_require__(6141);
35
- // EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/components/Controls/Controls.js + 65 modules
36
- var Controls = __webpack_require__(5379);
37
+ var ControlsLayout = __webpack_require__(26141);
38
+ // EXTERNAL MODULE: ./node_modules/@diplodoc/components/build/esm/components/Controls/Controls.js + 26 modules
39
+ var Controls = __webpack_require__(44839);
37
40
  ;// CONCATENATED MODULE: ./src/components/HeaderControls/index.tsx
38
41
 
39
42
 
@@ -106,7 +109,7 @@ function getDirection(lang) {
106
109
  return isRTL ? TextDirection.RTL : TextDirection.LTR;
107
110
  }
108
111
  // EXTERNAL MODULE: ./node_modules/bem-cn-lite/lib/index.js
109
- var lib = __webpack_require__(3614);
112
+ var lib = __webpack_require__(23614);
110
113
  ;// CONCATENATED MODULE: ./src/components/Layout/index.tsx
111
114
 
112
115
 
@@ -243,27 +246,27 @@ function useMobile() {
243
246
  return mobileView;
244
247
  }
245
248
  // EXTERNAL MODULE: ./src/interceptors/leading-page-links.js
246
- var leading_page_links = __webpack_require__(4186);
249
+ var leading_page_links = __webpack_require__(44186);
247
250
  // EXTERNAL MODULE: external "@diplodoc/transform/dist/js/yfm"
248
- var yfm_ = __webpack_require__(527);
251
+ var yfm_ = __webpack_require__(40527);
249
252
  // EXTERNAL MODULE: ./node_modules/@diplodoc/mermaid-extension/react/index.js
250
- var mermaid_extension_react = __webpack_require__(5905);
253
+ var mermaid_extension_react = __webpack_require__(85905);
251
254
  // EXTERNAL MODULE: ./node_modules/@diplodoc/latex-extension/react/index.js
252
- var latex_extension_react = __webpack_require__(358);
255
+ var latex_extension_react = __webpack_require__(90358);
253
256
  // EXTERNAL MODULE: ./node_modules/@diplodoc/openapi-extension/runtime/index.min.js + 26 modules
254
- var index_min = __webpack_require__(8432);
257
+ var index_min = __webpack_require__(78432);
255
258
  // EXTERNAL MODULE: ./node_modules/@gravity-ui/page-constructor/build/esm/grid/Row/Row.js
256
- var Row = __webpack_require__(8058);
259
+ var Row = __webpack_require__(98058);
257
260
  // EXTERNAL MODULE: ./node_modules/@gravity-ui/page-constructor/build/esm/grid/Col/Col.js + 1 modules
258
- var Col = __webpack_require__(2445);
261
+ var Col = __webpack_require__(12445);
259
262
  // EXTERNAL MODULE: ./node_modules/@gravity-ui/page-constructor/build/esm/utils/theme.js
260
263
  var utils_theme = __webpack_require__(3259);
261
264
  // EXTERNAL MODULE: ./node_modules/@gravity-ui/page-constructor/build/esm/components/BackgroundMedia/BackgroundMedia.js + 1 modules
262
- var BackgroundMedia = __webpack_require__(1998);
265
+ var BackgroundMedia = __webpack_require__(61998);
263
266
  // EXTERNAL MODULE: ./node_modules/@gravity-ui/page-constructor/build/esm/grid/Grid/Grid.js + 2 modules
264
- var Grid = __webpack_require__(2945);
267
+ var Grid = __webpack_require__(62945);
265
268
  // EXTERNAL MODULE: ./node_modules/@gravity-ui/page-constructor/build/esm/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js + 10 modules
266
- var ConstructorBlocks = __webpack_require__(4012);
269
+ var ConstructorBlocks = __webpack_require__(94012);
267
270
  ;// CONCATENATED MODULE: ./src/components/ConstructorPage/index.tsx
268
271
 
269
272
 
@@ -329,21 +332,6 @@ function Page(props) {
329
332
  const Page = (0,utils/* getPageByType */.$T)(props?.type);
330
333
  return /*#__PURE__*/react.createElement(Layout, null, /*#__PURE__*/react.createElement(Layout.Content, null, /*#__PURE__*/react.createElement(Page, Object.assign({}, data, pageProps))));
331
334
  }
332
- function isDropdownItem(item) {
333
- return Array.isArray(item.items);
334
- }
335
- function rebaseNavItem(item) {
336
- const result = {
337
- ...item
338
- };
339
- if (isDropdownItem(item)) {
340
- result.items = item.items.map(rebaseNavItem);
341
- }
342
- if (item.url !== undefined) {
343
- result.url = item.url.replace(/^\/?/, '/');
344
- }
345
- return result;
346
- }
347
335
  function App(props) {
348
336
  const {
349
337
  data,
@@ -470,8 +458,8 @@ function App(props) {
470
458
  navigation: fullHeader ? {
471
459
  header: {
472
460
  withBorder: true,
473
- leftItems: leftItems.map(rebaseNavItem),
474
- rightItems: rightItems.map(rebaseNavItem)
461
+ leftItems: leftItems,
462
+ rightItems: rightItems
475
463
  },
476
464
  logo
477
465
  } : undefined
@@ -479,17 +467,73 @@ function App(props) {
479
467
  theme: theme
480
468
  }));
481
469
  }
470
+ // EXTERNAL MODULE: ./node_modules/@gravity-ui/page-constructor/server/index.js
471
+ var server = __webpack_require__(85635);
472
+ ;// CONCATENATED MODULE: ./src/preprocess.ts
473
+
474
+ let Lang = /*#__PURE__*/function (Lang) {
475
+ Lang["RU"] = "ru";
476
+ Lang["EN"] = "en";
477
+ return Lang;
478
+ }({});
479
+ function isPageConfig(config) {
480
+ return 'blocks' in config;
481
+ }
482
+ function preprocess(content, params, customYfmTransformer) {
483
+ const {
484
+ lang
485
+ } = params;
486
+ if (isPageConfig(content) && content.blocks) {
487
+ return {
488
+ ...content,
489
+ blocks: transformBlocks(content.blocks, lang, customYfmTransformer)
490
+ };
491
+ }
492
+ return content;
493
+ }
494
+ function replaceTransformer(config, newTransformer) {
495
+ return Object.keys(config).reduce((newConfig, subBlockType) => {
496
+ const subBlock = config[subBlockType];
497
+ if (Array.isArray(subBlock)) {
498
+ newConfig[subBlockType] = subBlock.map(block => {
499
+ return block.transformer.name === 'yfmTransformer' ? {
500
+ ...block,
501
+ transformer: newTransformer
502
+ } : block;
503
+ });
504
+ } else {
505
+ newConfig[subBlockType] = subBlock.transformer.name === 'yfmTransformer' ? {
506
+ ...subBlock,
507
+ transformer: newTransformer
508
+ } : subBlock;
509
+ }
510
+ return newConfig;
511
+ }, {});
512
+ }
513
+ function transformBlocks(blocks, lang, customYfmTransformer) {
514
+ const customConfig = replaceTransformer(server.config, customYfmTransformer);
515
+ return (0,server.contentTransformer)({
516
+ content: {
517
+ blocks
518
+ },
519
+ options: {
520
+ lang,
521
+ customConfig
522
+ }
523
+ }).blocks;
524
+ }
482
525
  ;// CONCATENATED MODULE: ./src/index.server.tsx
483
526
 
484
527
 
485
528
 
486
529
 
487
530
 
531
+
488
532
  const render = props => (0,server_node/* renderToString */.F0)( /*#__PURE__*/react.createElement(App, props));
489
533
 
490
534
  /***/ }),
491
535
 
492
- /***/ 4186:
536
+ /***/ 44186:
493
537
  /***/ (() => {
494
538
 
495
539
  (function () {
@@ -540,7 +584,7 @@ const render = props => (0,server_node/* renderToString */.F0)( /*#__PURE__*/rea
540
584
 
541
585
  /***/ }),
542
586
 
543
- /***/ 7040:
587
+ /***/ 87040:
544
588
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
545
589
 
546
590
  "use strict";
@@ -551,7 +595,7 @@ const render = props => (0,server_node/* renderToString */.F0)( /*#__PURE__*/rea
551
595
 
552
596
  /***/ }),
553
597
 
554
- /***/ 527:
598
+ /***/ 40527:
555
599
  /***/ ((module) => {
556
600
 
557
601
  "use strict";
@@ -559,7 +603,15 @@ module.exports = require("@diplodoc/transform/dist/js/yfm");
559
603
 
560
604
  /***/ }),
561
605
 
562
- /***/ 6982:
606
+ /***/ 42562:
607
+ /***/ ((module) => {
608
+
609
+ "use strict";
610
+ module.exports = require("buffer");
611
+
612
+ /***/ }),
613
+
614
+ /***/ 76982:
563
615
  /***/ ((module) => {
564
616
 
565
617
  "use strict";
@@ -567,6 +619,46 @@ module.exports = require("crypto");
567
619
 
568
620
  /***/ }),
569
621
 
622
+ /***/ 79896:
623
+ /***/ ((module) => {
624
+
625
+ "use strict";
626
+ module.exports = require("fs");
627
+
628
+ /***/ }),
629
+
630
+ /***/ 70857:
631
+ /***/ ((module) => {
632
+
633
+ "use strict";
634
+ module.exports = require("os");
635
+
636
+ /***/ }),
637
+
638
+ /***/ 16928:
639
+ /***/ ((module) => {
640
+
641
+ "use strict";
642
+ module.exports = require("path");
643
+
644
+ /***/ }),
645
+
646
+ /***/ 932:
647
+ /***/ ((module) => {
648
+
649
+ "use strict";
650
+ module.exports = require("process");
651
+
652
+ /***/ }),
653
+
654
+ /***/ 24876:
655
+ /***/ ((module) => {
656
+
657
+ "use strict";
658
+ module.exports = require("punycode");
659
+
660
+ /***/ }),
661
+
570
662
  /***/ 2203:
571
663
  /***/ ((module) => {
572
664
 
@@ -575,7 +667,15 @@ module.exports = require("stream");
575
667
 
576
668
  /***/ }),
577
669
 
578
- /***/ 7016:
670
+ /***/ 52018:
671
+ /***/ ((module) => {
672
+
673
+ "use strict";
674
+ module.exports = require("tty");
675
+
676
+ /***/ }),
677
+
678
+ /***/ 87016:
579
679
  /***/ ((module) => {
580
680
 
581
681
  "use strict";
@@ -583,7 +683,7 @@ module.exports = require("url");
583
683
 
584
684
  /***/ }),
585
685
 
586
- /***/ 9023:
686
+ /***/ 39023:
587
687
  /***/ ((module) => {
588
688
 
589
689
  "use strict";
@@ -627,7 +727,7 @@ module.exports = require("util");
627
727
  /******/ __webpack_require__.x = () => {
628
728
  /******/ // Load entry module and return exports
629
729
  /******/ // This entry module depends on other loaded chunks and execution need to be delayed
630
- /******/ var __webpack_exports__ = __webpack_require__.O(undefined, [644,121], () => (__webpack_require__(5579)))
730
+ /******/ var __webpack_exports__ = __webpack_require__.O(undefined, [644,121], () => (__webpack_require__(94184)))
631
731
  /******/ __webpack_exports__ = __webpack_require__.O(__webpack_exports__);
632
732
  /******/ return __webpack_exports__;
633
733
  /******/ };
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","mappings":"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A;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/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/./src/components/ConstructorPage/index.tsx","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 commonjs2 \"@diplodoc/transform/dist/js/yfm\"","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, Lang, 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 lang: Lang;\n langs: Lang[];\n onChangeLang?: (lang: Lang) => void;\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 lang,\n langs,\n onChangeLang,\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 lang={lang}\n langs={langs}\n onChangeLang={onChangeLang}\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\nexport const LINK_KEYS_LEADING_CONFIG = ['href'];\nexport const LINK_KEYS_PAGE_CONSTRUCTOR_CONFIG = [\n 'src',\n 'url',\n 'href',\n 'icon',\n 'image',\n 'desktop',\n 'mobile',\n 'tablet',\n 'previewImg',\n 'image',\n 'avatar',\n 'logo',\n 'light',\n 'dark',\n];\n\nexport const LINK_KEYS = [\n ...new Set([...LINK_KEYS_LEADING_CONFIG, ...LINK_KEYS_PAGE_CONSTRUCTOR_CONFIG]),\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","import React from 'react';\n\nimport block from 'bem-cn-lite';\nimport {\n BackgroundMedia,\n Col,\n ConstructorBlocks,\n Grid,\n Row,\n Theme,\n getThemedValue,\n} from '@gravity-ui/page-constructor';\nimport {PageContentData} from '../App/App';\n\nexport type WithChildren<T = {}> = T & {children?: React.ReactNode};\n\nconst bPC = block('pc-page-constructor');\nconst bPCRow = block('pc-constructor-row');\n\nexport const ConstructorRow = ({children}: WithChildren<{}>) =>\n children ? (\n <Row className={bPCRow()}>\n <Col>{children}</Col>\n </Row>\n ) : null;\n\nexport function ConstructorPage({data: {data}, theme}: {data: PageContentData; theme: Theme}) {\n const themedBackground = getThemedValue(data?.background, theme);\n\n return (\n <div className={bPC('docs')}>\n <div className={bPC('wrapper')}>\n {data?.blocks && themedBackground && (\n <BackgroundMedia {...themedBackground} className={bPC('background')} />\n )}\n <Grid>\n <ConstructorRow>\n <ConstructorBlocks items={data?.blocks} />\n </ConstructorRow>\n </Grid>\n </div>\n </div>\n );\n}\n","import React, {ReactElement, useCallback, useEffect} from 'react';\n\nimport {\n NavigationData,\n NavigationDropdownItem,\n NavigationItemModel,\n PageConstructor,\n PageConstructorProvider,\n PageContent,\n} from '@gravity-ui/page-constructor';\nimport {ThemeProvider} from '@gravity-ui/uikit';\nimport {\n DocContentPageData,\n DocLeadingPageData,\n DocPageData,\n DocumentType,\n Lang,\n Router,\n Theme,\n configure,\n getLangPath,\n getPageByType,\n getPageType,\n} from '@diplodoc/components';\n\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';\nimport {ConstructorPage} from '../ConstructorPage';\n\nexport interface AppProps {\n lang: Lang;\n langs: Lang[];\n router: Router;\n type: DocumentType;\n}\n\nexport interface PageContentData extends DocContentPageData {\n data: PageContent & {fullScreen?: boolean};\n}\n\nexport type DocInnerProps<Data = DocLeadingPageData | DocPageData | PageContentData> = {\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\nexport function Page(props: DocInnerProps) {\n const {data, ...pageProps} = props;\n const Page = getPageByType(props?.type);\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, langs} = props;\n const {navigation} = data.toc as TocData;\n\n configure({\n lang,\n });\n\n const settings = useSettings();\n const mobileView = useMobile();\n\n const onChangeLang = useCallback(\n (lang: Lang) => {\n const path = getLangPath(router, lang);\n window.location.replace(path);\n },\n [router],\n );\n\n const {theme, textSize, wideFormat, fullScreen, showMiniToc, onChangeFullScreen} = settings;\n const fullHeader = !fullScreen && Boolean(navigation);\n const headerHeight = fullHeader ? 64 : 0;\n const type = getPageType(data);\n\n const pageProps = {\n headerHeight,\n data,\n router,\n lang,\n langs,\n wideFormat,\n showMiniToc,\n theme,\n textSize,\n fullScreen,\n onChangeFullScreen,\n type,\n };\n const direction = getDirection(lang);\n const fullScreenPC =\n type === DocumentType.PageConstructor &&\n 'data' in data &&\n 'fullScreen' in data.data &&\n data.data.fullScreen;\n const appClassName = `App ${fullScreenPC ? 'fullscreen-mode' : 'document-mode'}`;\n\n useEffect(() => {\n updateRootClassName({\n theme,\n mobileView,\n wideFormat,\n fullHeader,\n });\n }, [theme, mobileView, wideFormat, fullHeader]);\n\n const pageContext = {\n ...settings,\n onChangeLang,\n };\n\n if (!navigation) {\n return (\n <div className={appClassName}>\n <ThemeProvider theme={theme} direction={direction}>\n <Page {...pageProps} {...pageContext}>\n {type === DocumentType.PageConstructor && (\n <PageConstructorProvider theme={theme}>\n <PageConstructor\n custom={{\n blocks: {\n page: () => (\n <ConstructorPage\n data={data as PageContentData}\n theme={theme}\n />\n ),\n },\n }}\n content={\n fullScreenPC\n ? (data.data as PageContent)\n : {\n blocks: [\n {\n type: 'page',\n resetPaddings: true,\n },\n ],\n }\n }\n />\n </PageConstructorProvider>\n )}\n </Page>\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={appClassName}>\n <ThemeProvider theme={theme} direction={direction}>\n <PageConstructorProvider theme={theme}>\n <PageConstructor\n custom={{\n navigation: {\n controls: () => (\n <HeaderControls\n {...pageContext}\n {...pageProps}\n onChangeLang={onChangeLang}\n mobileView={mobileView}\n />\n ),\n },\n blocks: {\n page: () => (\n <Page\n {...pageProps}\n {...(headerWithControls ? {} : pageContext)}\n >\n {type === DocumentType.PageConstructor &&\n 'data' in data && (\n <ConstructorPage\n data={data as PageContentData}\n theme={theme}\n />\n )}\n </Page>\n ),\n },\n }}\n content={\n fullScreenPC\n ? (data.data as PageContent)\n : {\n blocks: [\n {\n type: 'page',\n resetPaddings: true,\n },\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';\nimport {LINK_KEYS} from './constants';\n\nexport type {DocInnerProps, DocPageData, DocLeadingPageData};\nexport {LINK_KEYS};\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(\"@diplodoc/transform/dist/js/yfm\");","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__(5579)))\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","lang","langs","onChangeLang","createElement","controlClassName","controlSize","L","isWideView","isMobileView","className","displayName","RTL_LANGS","TextDirection","LINK_KEYS_LEADING_CONFIG","LINK_KEYS_PAGE_CONSTRUCTOR_CONFIG","LINK_KEYS","Set","strToBoolean","str","updateRootClassName","fullHeader","document","body","filter","Boolean","join","getDirection","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","BackgroundMedia","Col","ConstructorBlocks","Grid","Row","getThemedValue","bPC","bPCRow","ConstructorRow","ConstructorPage","data","themedBackground","background","blocks","Object","assign","items","PageConstructor","PageConstructorProvider","ThemeProvider","DocumentType","configure","getLangPath","getPageByType","getPageType","MermaidRuntime","LatexRuntime","Runtime","OpenapiSandbox","Fragment","Dark","zoom","showMenu","bindKeys","Page","pageProps","isDropdownItem","item","Array","isArray","rebaseNavItem","result","map","url","undefined","replace","App","router","navigation","toc","path","location","headerHeight","direction","fullScreenPC","appClassName","pageContext","custom","page","resetPaddings","logo","leftItems","rightItems","headerWithControls","some","controls","withBorder","renderToString","render","Element","e","matches","matchesSelector","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","selector","th","prototype","call","querySelectorAll","el","event","href","target","locationOrigin","origin","startsWith","preventDefault","mainFileName","extention","endsWith","splitedHref","split","length"],"sourceRoot":""}
1
+ {"version":3,"file":"app.js","mappings":"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","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/./src/components/ConstructorPage/index.tsx","webpack://@diplodoc/client/./src/components/App/App.tsx","webpack://@diplodoc/client/./src/preprocess.ts","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 commonjs2 \"@diplodoc/transform/dist/js/yfm\"","webpack://@diplodoc/client/external node-commonjs \"buffer\"","webpack://@diplodoc/client/external node-commonjs \"crypto\"","webpack://@diplodoc/client/external node-commonjs \"fs\"","webpack://@diplodoc/client/external node-commonjs \"os\"","webpack://@diplodoc/client/external node-commonjs \"path\"","webpack://@diplodoc/client/external node-commonjs \"process\"","webpack://@diplodoc/client/external node-commonjs \"punycode\"","webpack://@diplodoc/client/external node-commonjs \"stream\"","webpack://@diplodoc/client/external node-commonjs \"tty\"","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, Lang, 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 lang: Lang;\n langs: Lang[];\n onChangeLang?: (lang: Lang) => void;\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 lang,\n langs,\n onChangeLang,\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 lang={lang}\n langs={langs}\n onChangeLang={onChangeLang}\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\nexport const LINK_KEYS_LEADING_CONFIG = ['href'];\nexport const LINK_KEYS_PAGE_CONSTRUCTOR_CONFIG = [\n 'src',\n 'url',\n 'href',\n 'icon',\n 'image',\n 'desktop',\n 'mobile',\n 'tablet',\n 'previewImg',\n 'image',\n 'avatar',\n 'logo',\n 'light',\n 'dark',\n];\n\nexport const LINK_KEYS = [\n ...new Set([...LINK_KEYS_LEADING_CONFIG, ...LINK_KEYS_PAGE_CONSTRUCTOR_CONFIG]),\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","import React from 'react';\n\nimport block from 'bem-cn-lite';\nimport {\n BackgroundMedia,\n Col,\n ConstructorBlocks,\n Grid,\n Row,\n Theme,\n getThemedValue,\n} from '@gravity-ui/page-constructor';\nimport {PageContentData} from '../App/App';\n\nexport type WithChildren<T = {}> = T & {children?: React.ReactNode};\n\nconst bPC = block('pc-page-constructor');\nconst bPCRow = block('pc-constructor-row');\n\nexport const ConstructorRow = ({children}: WithChildren<{}>) =>\n children ? (\n <Row className={bPCRow()}>\n <Col>{children}</Col>\n </Row>\n ) : null;\n\nexport function ConstructorPage({data: {data}, theme}: {data: PageContentData; theme: Theme}) {\n const themedBackground = getThemedValue(data?.background, theme);\n\n return (\n <div className={bPC('docs')}>\n <div className={bPC('wrapper')}>\n {data?.blocks && themedBackground && (\n <BackgroundMedia {...themedBackground} className={bPC('background')} />\n )}\n <Grid>\n <ConstructorRow>\n <ConstructorBlocks items={data?.blocks} />\n </ConstructorRow>\n </Grid>\n </div>\n </div>\n );\n}\n","import React, {ReactElement, useCallback, useEffect} from 'react';\n\nimport {\n NavigationData,\n PageConstructor,\n PageConstructorProvider,\n PageContent,\n} from '@gravity-ui/page-constructor';\nimport {ThemeProvider} from '@gravity-ui/uikit';\nimport {\n DocContentPageData,\n DocLeadingPageData,\n DocPageData,\n DocumentType,\n Lang,\n Router,\n Theme,\n configure,\n getLangPath,\n getPageByType,\n getPageType,\n} from '@diplodoc/components';\n\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';\nimport {ConstructorPage} from '../ConstructorPage';\n\nexport interface AppProps {\n lang: Lang;\n langs: Lang[];\n router: Router;\n type: DocumentType;\n}\n\nexport interface PageContentData extends DocContentPageData {\n data: PageContent & {fullScreen?: boolean};\n}\n\nexport type DocInnerProps<Data = DocLeadingPageData | DocPageData | PageContentData> = {\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\nexport function Page(props: DocInnerProps) {\n const {data, ...pageProps} = props;\n const Page = getPageByType(props?.type);\n\n return (\n <Layout>\n <Layout.Content>\n {/*@ts-ignore*/}\n <Page {...data} {...pageProps} />\n </Layout.Content>\n </Layout>\n );\n}\n\ntype TocData = DocPageData['toc'] & {\n navigation?: NavigationData;\n};\n\nexport function App(props: DocInnerProps): ReactElement {\n const {data, router, lang, langs} = props;\n const {navigation} = data.toc as TocData;\n\n configure({\n lang,\n });\n\n const settings = useSettings();\n const mobileView = useMobile();\n\n const onChangeLang = useCallback(\n (lang: Lang) => {\n const path = getLangPath(router, lang);\n window.location.replace(path);\n },\n [router],\n );\n\n const {theme, textSize, wideFormat, fullScreen, showMiniToc, onChangeFullScreen} = settings;\n const fullHeader = !fullScreen && Boolean(navigation);\n const headerHeight = fullHeader ? 64 : 0;\n const type = getPageType(data);\n\n const pageProps = {\n headerHeight,\n data,\n router,\n lang,\n langs,\n wideFormat,\n showMiniToc,\n theme,\n textSize,\n fullScreen,\n onChangeFullScreen,\n type,\n };\n const direction = getDirection(lang);\n const fullScreenPC =\n type === DocumentType.PageConstructor &&\n 'data' in data &&\n 'fullScreen' in data.data &&\n data.data.fullScreen;\n const appClassName = `App ${fullScreenPC ? 'fullscreen-mode' : 'document-mode'}`;\n\n useEffect(() => {\n updateRootClassName({\n theme,\n mobileView,\n wideFormat,\n fullHeader,\n });\n }, [theme, mobileView, wideFormat, fullHeader]);\n\n const pageContext = {\n ...settings,\n onChangeLang,\n };\n\n if (!navigation) {\n return (\n <div className={appClassName}>\n <ThemeProvider theme={theme} direction={direction}>\n <Page {...pageProps} {...pageContext}>\n {type === DocumentType.PageConstructor && (\n <PageConstructorProvider theme={theme}>\n <PageConstructor\n custom={{\n blocks: {\n page: () => (\n <ConstructorPage\n data={data as PageContentData}\n theme={theme}\n />\n ),\n },\n }}\n content={\n fullScreenPC\n ? (data.data as PageContent)\n : {\n blocks: [\n {\n type: 'page',\n resetPaddings: true,\n },\n ],\n }\n }\n />\n </PageConstructorProvider>\n )}\n </Page>\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={appClassName}>\n <ThemeProvider theme={theme} direction={direction}>\n <PageConstructorProvider theme={theme}>\n <PageConstructor\n custom={{\n navigation: {\n controls: () => (\n <HeaderControls\n {...pageContext}\n {...pageProps}\n onChangeLang={onChangeLang}\n mobileView={mobileView}\n />\n ),\n },\n blocks: {\n page: () => (\n <Page\n {...pageProps}\n {...(headerWithControls ? {} : pageContext)}\n >\n {type === DocumentType.PageConstructor &&\n 'data' in data && (\n <ConstructorPage\n data={data as PageContentData}\n theme={theme}\n />\n )}\n </Page>\n ),\n },\n }}\n content={\n fullScreenPC\n ? (data.data as PageContent)\n : {\n blocks: [\n {\n type: 'page',\n resetPaddings: true,\n },\n ],\n }\n }\n navigation={\n fullHeader\n ? {\n header: {\n withBorder: true,\n leftItems: leftItems,\n rightItems: rightItems,\n },\n logo,\n }\n : undefined\n }\n />\n </PageConstructorProvider>\n </ThemeProvider>\n <Runtime theme={theme} />\n </div>\n );\n}\n","import {\n Block,\n ConstructorBlock,\n NavigationData as ConstructorNavigaitonData,\n PageContent as ConstructorPageContentBase,\n} from '@gravity-ui/page-constructor';\nimport {\n BlocksConfig,\n Parser,\n TransformerRaw,\n config,\n contentTransformer,\n} from '@gravity-ui/page-constructor/server';\n\nexport interface MetaData {\n title: string;\n description?: string;\n}\n\nexport interface PageContentBase {\n meta?: MetaData;\n}\n\nexport enum Lang {\n RU = 'ru',\n EN = 'en',\n}\n\nexport type PageContent<T> = T & PageContentBase;\nexport type ConstructorPageContent = PageContent<ConstructorPageContentBase>;\nexport type NavigationData = PageContent<ConstructorNavigaitonData>;\nexport type ConfigData = ConstructorPageContent | NavigationData;\n\nexport interface PreloadParams {\n lang: Lang;\n pageName: string;\n pageReferer?: string;\n}\n\ninterface BlockConfig {\n transformer: TransformerRaw;\n fields?: string[];\n parser?: Parser;\n}\n\nexport function isPageConfig(config: ConfigData): config is ConstructorPageContent {\n return 'blocks' in config;\n}\n\nexport function preprocess(\n content: ConfigData,\n params: PreloadParams,\n customYfmTransformer: TransformerRaw,\n) {\n const {lang} = params;\n\n if (isPageConfig(content) && content.blocks) {\n return {\n ...content,\n blocks: transformBlocks(content.blocks, lang, customYfmTransformer),\n };\n }\n\n return content;\n}\n\nfunction replaceTransformer(config: BlocksConfig, newTransformer: TransformerRaw): BlocksConfig {\n return Object.keys(config).reduce((newConfig, subBlockType) => {\n const subBlock = config[subBlockType];\n\n if (Array.isArray(subBlock)) {\n newConfig[subBlockType] = subBlock.map((block: {transformer: {name: string}}) => {\n return block.transformer.name === 'yfmTransformer'\n ? {...block, transformer: newTransformer}\n : block;\n }) as BlockConfig[];\n } else {\n newConfig[subBlockType] =\n subBlock.transformer.name === 'yfmTransformer'\n ? {...subBlock, transformer: newTransformer}\n : subBlock;\n }\n\n return newConfig;\n }, {} as BlocksConfig);\n}\n\nfunction transformBlocks(\n blocks: ConstructorBlock[],\n lang: Lang,\n customYfmTransformer: TransformerRaw,\n) {\n const customConfig = replaceTransformer(config, customYfmTransformer);\n\n return contentTransformer({\n content: {blocks},\n options: {\n lang,\n customConfig,\n },\n }).blocks as Block[];\n}\n","import React from 'react';\nimport {renderToString} from 'react-dom/server';\n\nimport {App, DocInnerProps, DocLeadingPageData, DocPageData} from './components/App/App';\nimport {LINK_KEYS, LINK_KEYS_LEADING_CONFIG, LINK_KEYS_PAGE_CONSTRUCTOR_CONFIG} from './constants';\nimport {preprocess} from './preprocess';\n\nexport type {DocInnerProps, DocPageData, DocLeadingPageData};\nexport {LINK_KEYS, LINK_KEYS_LEADING_CONFIG, LINK_KEYS_PAGE_CONSTRUCTOR_CONFIG, preprocess};\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(\"@diplodoc/transform/dist/js/yfm\");","module.exports = require(\"buffer\");","module.exports = require(\"crypto\");","module.exports = require(\"fs\");","module.exports = require(\"os\");","module.exports = require(\"path\");","module.exports = require(\"process\");","module.exports = require(\"punycode\");","module.exports = require(\"stream\");","module.exports = require(\"tty\");","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__(94184)))\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","lang","langs","onChangeLang","createElement","controlClassName","controlSize","L","isWideView","isMobileView","className","displayName","RTL_LANGS","TextDirection","LINK_KEYS_LEADING_CONFIG","LINK_KEYS_PAGE_CONSTRUCTOR_CONFIG","LINK_KEYS","Set","strToBoolean","str","updateRootClassName","fullHeader","document","body","filter","Boolean","join","getDirection","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","BackgroundMedia","Col","ConstructorBlocks","Grid","Row","getThemedValue","bPC","bPCRow","ConstructorRow","ConstructorPage","data","themedBackground","background","blocks","Object","assign","items","PageConstructor","PageConstructorProvider","ThemeProvider","DocumentType","configure","getLangPath","getPageByType","getPageType","MermaidRuntime","LatexRuntime","Runtime","OpenapiSandbox","Fragment","Dark","zoom","showMenu","bindKeys","Page","pageProps","App","router","navigation","toc","path","location","replace","headerHeight","direction","fullScreenPC","appClassName","pageContext","custom","page","resetPaddings","logo","leftItems","rightItems","headerWithControls","some","item","controls","withBorder","undefined","config","contentTransformer","Lang","isPageConfig","preprocess","params","customYfmTransformer","transformBlocks","replaceTransformer","newTransformer","keys","reduce","newConfig","subBlockType","subBlock","Array","isArray","map","transformer","customConfig","options","renderToString","render","Element","e","matches","matchesSelector","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","selector","th","prototype","call","querySelectorAll","el","event","href","target","locationOrigin","origin","startsWith","preventDefault","mainFileName","extention","endsWith","splitedHref","split","length"],"sourceRoot":""}