@meduza/ui-kit-2 0.1.41 → 0.1.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Image/Image.types.d.ts +1 -0
- package/dist/ui-kit-2.cjs.development.js +52 -54
- package/dist/ui-kit-2.cjs.development.js.map +1 -1
- package/dist/ui-kit-2.cjs.production.min.js +1 -1
- package/dist/ui-kit-2.cjs.production.min.js.map +1 -1
- package/dist/ui-kit-2.esm.js +52 -54
- package/dist/ui-kit-2.esm.js.map +1 -1
- package/dist/ui-kit.css +377 -334
- package/package.json +1 -1
- package/src/DotsOnImage/DotsOnImage.module.css +41 -7
- package/src/DotsOnImage/mock.json +2 -2
- package/src/EmbedBlock/EmbedBlock.tsx +1 -0
- package/src/Image/Image.module.css +5 -1
- package/src/Image/Image.types.ts +1 -0
- package/src/Image/index.tsx +16 -22
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui-kit-2.cjs.development.js","sources":["../src/utils/makeClassName.ts","../src/Button/loader.tsx","../src/Button/index.tsx","../src/SvgSymbol/icons.ts","../src/SvgSymbol/index.tsx","../src/Switcher/index.tsx","../src/utils/BlockContext.ts","../src/utils/viewportSize.ts","../src/utils/postMessage.ts","../src/constants.ts","../src/Lazy/index.tsx","../src/utils/converCase.ts","../src/Image/RenderPicture.tsx","../src/Image/index.tsx","../src/Popover/index.tsx","../src/Footnote/index.tsx","../src/DotsOnImage/index.tsx","../src/utils/makeStyleContext.ts","../src/Tag/index.tsx","../src/MediaCaption/index.tsx","../src/Table/index.tsx","../src/MaterialNote/index.tsx","../src/BookmarkButton/index.tsx","../src/MaterialTitle/index.tsx","../src/Dropdown/index.tsx","../src/Toolbar/index.tsx","../src/Meta/index.tsx","../src/Timestamp/index.tsx","../src/utils/DangerousHtml.tsx","../src/EmbedBlock/EmbedGif.tsx","../src/EmbedBlock/EmbedBlock.tsx","../src/EmbedBlock/IframeBlock.tsx","../src/EmbedBlock/index.tsx","../src/QuoteBlock/index.tsx","../src/CardTitle/index.tsx","../src/ChapterBlock/index.tsx","../src/utils/generateGradient.ts","../src/SimpleTitle/index.tsx","../src/RichTitle/index.tsx","../src/SimpleBlock/index.tsx","../src/ListBlock/index.tsx","../src/RelatedBlock/index.tsx","../src/SourceBlock/index.tsx","../src/SensitiveBlock/index.tsx","../src/GroupedBlock/index.tsx","../src/MetaItem/index.tsx","../src/MetaItemLive/index.tsx","../src/utils/pluralize.ts","../src/DocumentItemsCount/index.tsx","../src/Meta/MetaContainer.tsx","../src/RenderBlocks/index.tsx","../src/Cover/index.tsx","../src/HalfBlock/index.tsx","../src/ImportantLead/index.tsx","../src/Spoiler/index.tsx","../src/RelatedRichBlock/index.tsx","../src/RawHtmlBlock/index.tsx","../src/ToolbarButton/index.tsx"],"sourcesContent":["export type ClassNames = (string[] | string | boolean)[][]\n\nexport const makeClassName = (list: ClassNames): string => {\n return list\n .filter(([, active]) => active)\n .map(([className]) => className)\n .join(' ')\n}\n\nexport default makeClassName\n","import React from 'react'\n\nconst Loader: React.FC = () => (\n <svg\n width=\"30px\"\n height=\"30px\"\n viewBox=\"0 0 30 30\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g>\n <path\n d=\"M15 0C6.716 0 0 6.716 0 15c0 8.284 6.716 15 15 15 8.284 0 15-6.716 15-15 0-8.284-6.716-15-15-15zm0 2c7.18 0 13 5.82 13 13s-5.82 13-13 13S2 22.18 2 15 7.82 2 15 2z\"\n opacity=\"0.3\"\n />\n </g>\n <g fillRule=\"evenodd\">\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"0 15 15\"\n to=\"360 15 15\"\n dur=\"1000ms\"\n repeatCount=\"indefinite\"\n />\n <path d=\"M15 0c8.18 0 14.83 6.547 14.997 14.686L30 15h-2c0-7.077-5.655-12.833-12.693-12.996L15 2V0z\" />\n </g>\n </svg>\n)\n\nexport default Loader\n","import React, { FC } from 'react'\nimport { makeClassName } from '../utils/makeClassName'\nimport Loader from './loader'\nimport { ButtonProps } from './Button.types'\n\nimport styles from './Button.module.css'\n\nexport const Button: FC<ButtonProps> = ({\n theme = 'gold',\n size = 'default',\n state = 'isDefault',\n styleContext = 'isInToolbar',\n disabled = false,\n onClick,\n children\n}) => {\n const handleClick = (): void => {\n if (disabled || !onClick) {\n return\n }\n\n onClick()\n }\n\n return (\n <button\n data-testid=\"button\"\n className={makeClassName([\n [styles.root, true],\n [styles[size], !!size],\n [styles[theme], !!theme],\n [styles[state], !!state && !!styles[state]],\n [styles[styleContext], !!styleContext]\n ])}\n disabled={disabled}\n onClick={handleClick}\n type=\"button\"\n >\n {state === 'isLoading' ? (\n <span className={styles.loader}>\n <Loader />\n </span>\n ) : (\n children\n )}\n </button>\n )\n}\n","export const icons = {\n meduzaLogo: {\n width: 544,\n height: 115,\n content:\n '<path d=\"M59.1008614,49.65632 L59.1008614,106.01472 L84.9480411,114.24 L84.9480411,49.65632 L101.574882,49.65632 L101.574882,106.01472 L127.270909,114.24 L144.048902,91.392 L127.422062,91.392 L127.422062,35.7952 L101.726035,26.80832 L84.9480411,46.60992 L84.9480411,35.7952 L59.2520145,26.80832 L42.4740206,46.60992 L42.4740206,35.7952 L16.7779939,26.80832 L0,49.65632 L16.6268408,49.65632 L16.6268408,106.01472 L42.4740206,114.24 L42.4740206,49.65632 L59.1008614,49.65632 L59.1008614,49.65632 Z M336.61795,91.392 L336.61795,35.0336 L310.770769,26.80832 L310.770769,105.25312 L336.466796,114.24 L353.24479,94.4384 L353.24479,105.25312 L378.940817,114.24 L395.71881,91.392 L379.091969,91.392 L379.091969,35.0336 L353.24479,26.80832 L353.24479,91.392 L336.61795,91.392 L336.61795,91.392 Z M527.373159,38.08 L502.130592,26.80832 L472.202278,41.1264 L502.130592,52.39808 L461.016949,72.352 L461.016949,104.94848 L486.86413,114.24 L502.130592,94.28608 L502.130592,105.25312 L527.977771,114.24 L544,91.23968 L527.373159,91.23968 L527.373159,38.08 L527.373159,38.08 Z M177.453737,114.24 L207.079744,102.35904 L177.453737,91.23968 L177.453737,75.24608 L216.300083,56.3584 L194.231731,26.80832 L151.606557,47.37152 L151.606557,103.12064 L177.453737,114.24 L177.453737,114.24 Z M455.424284,89.56416 L423.984441,79.968 L453.459295,42.19264 L416.577937,26.80832 L397.230341,51.48416 L428.821339,61.23264 L398.741873,98.85568 L436.076687,114.24 L455.424284,89.56416 L455.424284,89.56416 Z M486.86413,91.392 L486.86413,68.84864 L502.130592,61.53728 L502.130592,91.392 L486.86413,91.392 L486.86413,91.392 Z M177.453737,41.58336 L190.452904,59.55712 L177.453737,65.80224 L177.453737,41.58336 L177.453737,41.58336 Z M222.95082,103.12064 L248.797999,114.24 L291.27202,97.18016 L291.27202,29.7024 L222.95082,0 L222.95082,26.30784 L265.424841,43.21536 L265.424841,97.33248 L248.797999,91.23968 L248.797999,43.71584 L222.95082,51.94112 L222.95082,103.12064 L222.95082,103.12064 Z\" />'\n },\n\n menu: {\n width: 24,\n height: 24,\n content:\n '<path d=\"M2 21h20M2 12h20M2 3h20\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" vector-effect=\"non-scaling-stroke\" />'\n },\n\n fb: {\n width: 16,\n height: 18,\n content:\n '<path d=\"M15.117 1H.883A.883.883 0 0 0 0 1.883v14.234A.883.883 0 0 0 .883 17h7.663v-6.196H6.461V8.389h2.085V6.61a2.91 2.91 0 0 1 3.106-3.192c.622-.003 1.244.03 1.863.095v2.16h-1.279c-1.002 0-1.196.476-1.196 1.176v1.541h2.39l-.31 2.415h-2.08V17h4.077a.883.883 0 0 0 .883-.883V1.883A.883.883 0 0 0 15.117 1\" />'\n },\n\n tw: {\n width: 20,\n height: 18,\n content:\n '<path d=\"M20 3.1c-.7.3-1.5.6-2.4.7.8-.5 1.5-1.4 1.8-2.4-.8.5-1.7.8-2.6 1-.7-.8-1.8-1.4-3-1.4-2.3 0-4.1 1.9-4.1 4.3 0 .3 0 .7.1 1-3.3-.1-6.4-1.8-8.4-4.4-.3.6-.5 1.4-.5 2.2 0 1.5.7 2.8 1.8 3.6-.7 0-1.3-.2-1.9-.5v.1c0 2.1 1.4 3.8 3.3 4.2-.3.1-.7.2-1.1.2-.3 0-.5 0-.8-.1.5 1.7 2 2.9 3.8 3-1.3 1-3.1 1.6-5 1.6-.3 0-.7 0-1-.1C1.8 17.3 4 18 6.3 18 13.8 18 18 11.5 18 5.8v-.6c.8-.5 1.5-1.2 2-2.1\" fill-rule=\"nonzero\"/>'\n },\n\n vk: {\n width: 20,\n height: 18,\n content:\n '<path d=\"M16.517 9.851s2.587-3.768 2.886-5.058c.1-.396-.1-.694-.498-.694h-2.288c-.498 0-.697.199-.896.595 0 0-1.194 2.678-2.686 4.364-.498.496-.697.694-.995.694-.2 0-.299-.198-.299-.694V4.793c0-.595-.1-.793-.597-.793H7.463c-.2 0-.398.198-.398.397 0 .595.796.694.796 2.28v3.174c0 .595 0 .893-.299.893-.796 0-2.686-2.777-3.681-5.851-.2-.595-.398-.794-.995-.794H.597C.299 4.1 0 4.298 0 4.694c0 .595.697 3.471 3.483 7.34C5.373 14.611 7.86 16 10.05 16c1.393 0 1.691-.198 1.691-.793v-1.984c0-.496.2-.694.498-.694s.895.1 2.189 1.388C15.92 15.405 16.02 16 16.915 16h2.587c.299 0 .498-.1.498-.595 0-.595-.796-1.587-1.89-2.876-.498-.595-1.195-1.29-1.493-1.686-.398-.397-.299-.595-.1-.992\" fill-rule=\"nonzero\"/>'\n },\n\n ok: {\n width: 9,\n height: 18,\n content:\n '<path d=\"M4.5 2c-2.2 0-4 1.8-4 4s1.8 4 4 4 4-1.8 4-4-1.8-4-4-4m0 5.7c-.9 0-1.6-.8-1.6-1.7 0-.9.7-1.6 1.6-1.6.9 0 1.7.7 1.7 1.7 0 .8-.8 1.6-1.7 1.6\" fill-rule=\"nonzero\"/> <path d=\"M6.127 12.982a9.194 9.194 0 0 0 2.307-.904c.602-.301.703-1.004.402-1.507-.301-.502-1.104-.703-1.605-.401-1.605 1.004-3.812 1.004-5.417 0-.502-.302-1.304-.201-1.605.3-.401.604-.2 1.206.401 1.608a9.194 9.194 0 0 0 2.307.904L.61 15.092c-.502.401-.502 1.104 0 1.607a1.357 1.357 0 0 0 1.705 0l2.207-2.11L6.73 16.7a1.357 1.357 0 0 0 1.705 0c.502-.402.502-1.105 0-1.608l-2.307-2.109\" fill-rule=\"nonzero\"/>'\n },\n\n tg: {\n width: 18,\n height: 18,\n content:\n '<path d=\"M9 18c-5 0-9-4-9-9s4-9 9-9 9 4 9 9-4 9-9 9zm-1.5-7.4c1.1 1 2 3.3 2 3.3.4.2.7.1.8-.4l2.1-7.4c.1-.6-.2-.8-.6-.7L4 8.3c-.6.2-.6.5-.1.7 0 .1 2.4.6 3.6 1.6z\" fill-rule=\"nonzero\"/>'\n },\n\n meduzaSymbol: {\n width: 24,\n height: 18,\n content:\n '<path d=\"M10.026233,17.0968697 L13.9737671,18.3530831 L13.9737671,10.9855851 L13.9737671,8.48948164 L16.5131165,8.48948164 L16.5131165,17.0968697 L20.4375656,18.3530831 L23,14.8636014 L20.4606507,14.8636014 L20.4606507,6.37252945 L16.5362015,5 L13.9737671,8.02421743 L13.9737671,6.37252945 L10.049318,5 L7.48688354,8.02421743 L7.48688354,6.37252945 L3.56243443,5 L1,8.48948164 L3.53934943,8.48948164 L3.53934943,17.0968697 L7.48688354,18.3530831 L7.48688354,8.48948164 L10.026233,8.48948164 L10.026233,17.0968697 Z\" />'\n },\n\n backward: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M13 0v2.01c6.672.263 12 5.754 12 12.49C25 21.404 19.404 27 12.5 27S0 21.404 0 14.5c0-3.493 1.441-6.758 3.936-9.105a.75.75 0 111.028 1.092A10.965 10.965 0 001.5 14.5c0 6.075 4.925 11 11 11s11-4.925 11-11c0-5.907-4.656-10.727-10.499-10.989L13 6 8 3l5-3zm3.295 11.33v1.25h-3.16v1.63c.32-.32.86-.56 1.47-.56 1.13 0 2.14.81 2.14 2.16 0 1.42-1.06 2.31-2.67 2.31-1.16 0-2-.38-2.57-1l.79-.99c.45.47 1.07.73 1.77.73.79 0 1.24-.45 1.24-.99 0-.59-.44-.99-1.2-.99-.55 0-1 .16-1.4.54l-.99-.26v-3.83h4.58zm-5.94 0V18h-1.42v-4.84l-1.11 1.13-.81-.85 2.1-2.11h1.24z\" fill-rule=\"nonzero\"/>'\n },\n\n forward: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M12 0l5 3-5 3V3.511C6.157 3.773 1.5 8.592 1.5 14.5c0 6.075 4.925 11 11 11s11-4.925 11-11c0-3.075-1.267-5.946-3.464-8.013a.75.75 0 011.028-1.092A12.465 12.465 0 0125 14.5C25 21.404 19.404 27 12.5 27S0 21.404 0 14.5C0 7.764 5.328 2.272 12 2.01V0zm4.295 11.33v1.25h-3.16v1.63c.32-.32.86-.56 1.47-.56 1.13 0 2.14.81 2.14 2.16 0 1.42-1.06 2.31-2.67 2.31-1.16 0-2-.38-2.57-1l.79-.99c.45.47 1.07.73 1.77.73.79 0 1.24-.45 1.24-.99 0-.59-.44-.99-1.2-.99-.55 0-1 .16-1.4.54l-.99-.26v-3.83h4.58zm-5.94 0V18h-1.42v-4.84l-1.11 1.13-.81-.85 2.1-2.11h1.24z\" fill-rule=\"nonzero\"/>'\n },\n\n download: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M12.5 2C19.404 2 25 7.596 25 14.5S19.404 27 12.5 27 0 21.404 0 14.5 5.596 2 12.5 2zm0 1.5c-6.075 0-11 4.925-11 11s4.925 11 11 11 11-4.925 11-11-4.925-11-11-11zm6 15.75a.75.75 0 01.102 1.493l-.102.007h-12a.75.75 0 01-.102-1.493l.102-.007h12zm-6-12a.75.75 0 01.743.648L13.25 8v7.598l1.834-1.222a.75.75 0 11.832 1.248l-3 2a.75.75 0 01-.832 0l-3-2a.75.75 0 11.832-1.248l1.834 1.223V8a.75.75 0 01.648-.743l.102-.007z\" fill-rule=\"nonzero\" fill=\"currentColor\" />'\n },\n\n play: {\n width: 62,\n height: 62,\n content:\n '<path d=\"M24.35 41.772a.5.5 0 0 1-.739-.439V20.667a.5.5 0 0 1 .74-.44l18.944 10.334a.5.5 0 0 1 0 .878L24.351 41.772z\" fill-rule=\"nonzero\"/>'\n },\n\n pause: {\n width: 22,\n height: 22,\n content:\n '<path d=\"M12.832 4h2.8c.276 0 .5.224.5.5v12.394c0 .277-.224.5-.5.5h-2.8c-.276 0-.5-.223-.5-.5V4.5c0-.276.224-.5.5-.5zM6.5 4h2.8c.277 0 .5.224.5.5v12.394c0 .277-.223.5-.5.5H6.5c-.276 0-.5-.223-.5-.5V4.5c0-.276.224-.5.5-.5z\" />'\n },\n\n speedHalf: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M7.212 15.198V12.29l-.676.724L6 12.406 7.35 11h.825v4.198h-.963zM8.056 18H7.3l4.23-7h.765l-4.24 7zm2.99 0v-.735c1.717-1.27 2.134-1.679 2.134-2.14 0-.389-.288-.578-.665-.578-.467 0-.884.263-1.083.525l-.496-.64c.417-.493 1.053-.693 1.599-.693.913 0 1.599.462 1.599 1.312 0 .682-.556 1.28-1.708 2.14h1.737V18h-3.118zm5.998-2.918l-1.39 1.48-.567-.577 1.4-1.49-1.4-1.48.566-.588 1.39 1.49 1.4-1.49.557.588-1.4 1.48 1.4 1.49-.556.577-1.4-1.48z\" /><path d=\"M12.5 27C19.404 27 25 21.404 25 14.5S19.404 2 12.5 2 0 7.596 0 14.5 5.596 27 12.5 27zm0-1.5c-6.075 0-11-4.925-11-11s4.925-11 11-11 11 4.925 11 11-4.925 11-11 11z\" />'\n },\n\n speedOne: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M9.955 18v-4.84l-1.11 1.13-.81-.85 2.1-2.11h1.24V18h-1.42zm4.6-2.78l-1.4 1.41-.57-.55 1.41-1.42-1.41-1.41.57-.56 1.4 1.42 1.41-1.42.56.56-1.41 1.41 1.41 1.42-.56.55-1.41-1.41z\" fill-rule=\"nonzero\"/><path d=\"M12.5 27C19.404 27 25 21.404 25 14.5S19.404 2 12.5 2 0 7.596 0 14.5 5.596 27 12.5 27zm0-1.5c-6.075 0-11-4.925-11-11s4.925-11 11-11 11 4.925 11 11-4.925 11-11 11z\" fill-rule=\"nonzero\"/>'\n },\n\n speedOneHalf: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M5.62 18v-4.84l-1.11 1.13-.81-.85 2.1-2.11h1.24V18H5.62zm3.37-2.67v-2.77l-.68.69-.54-.58 1.36-1.34h.83v4h-.97zM9.84 18h-.76l4.26-6.67h.77L9.84 18zm3.01 0v-.7c1.73-1.21 2.15-1.6 2.15-2.04 0-.37-.29-.55-.67-.55-.47 0-.89.25-1.09.5l-.5-.61c.42-.47 1.06-.66 1.61-.66.92 0 1.61.44 1.61 1.25 0 .65-.56 1.22-1.72 2.04h1.75V18h-3.14zm6.04-2.78l-1.4 1.41-.57-.55 1.41-1.42-1.41-1.41.57-.56 1.4 1.42 1.41-1.42.56.56-1.41 1.41 1.41 1.42-.56.55-1.41-1.41z\" fill-rule=\"nonzero\"/><path d=\"M12.5 27C19.404 27 25 21.404 25 14.5S19.404 2 12.5 2 0 7.596 0 14.5 5.596 27 12.5 27zm0-1.5c-6.075 0-11-4.925-11-11s4.925-11 11-11 11 4.925 11 11-4.925 11-11 11z\" fill-rule=\"nonzero\"/>'\n },\n\n speedTwo: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M7.147 18v-1.158c2.685-2.078 3.471-2.792 3.471-3.64 0-.6-.52-.9-1.061-.9-.748 0-1.318.311-1.76.797L7 12.127C7.64 11.352 8.613 11 9.527 11c1.396 0 2.507.827 2.507 2.202 0 1.18-.924 2.203-2.625 3.506h2.675V18H7.147zm7.916-2.874l-1.377 1.457-.56-.568 1.386-1.468-1.386-1.458.56-.58 1.377 1.469 1.386-1.468.551.579-1.386 1.458L17 16.015l-.55.568-1.387-1.457z\" fill-rule=\"nonzero\"/><path d=\"M12.5 27C19.404 27 25 21.404 25 14.5S19.404 2 12.5 2 0 7.596 0 14.5 5.596 27 12.5 27zm0-1.5c-6.075 0-11-4.925-11-11s4.925-11 11-11 11 4.925 11 11-4.925 11-11 11z\" fill-rule=\"nonzero\"/>'\n },\n\n podcastBookmark: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M12.5 27C19.404 27 25 21.404 25 14.5S19.404 2 12.5 2 0 7.596 0 14.5 5.596 27 12.5 27zm0-1.5c-6.075 0-11-4.925-11-11s4.925-11 11-11 11 4.925 11 11-4.925 11-11 11z\" /> <path d=\"M17.071 8.25H8a.75.75 0 00-.75.75v11.545l.007.104a.75.75 0 001.228.468l4.05-3.437 4.051 3.437a.75.75 0 001.235-.572V9a.75.75 0 00-.75-.75zm-.75 1.499v9.176l-3.3-2.8-.098-.07a.75.75 0 00-.873.07l-3.3 2.799V9.749h7.571z\" data-stroke=\"true\" /> <path d=\"M17.071 8.25H8a.75.75 0 00-.75.75v11.545l.007.104a.75.75 0 001.228.468l4.05-3.437 4.051 3.437a.75.75 0 001.235-.572V9a.75.75 0 00-.75-.75z\" data-fill=\"true\" />'\n },\n\n reaction: {\n width: 16,\n height: 16,\n content:\n '<path data-theme=\"light\" fill=\"#D09959\" d=\"M1 2h14v12H1z\"/> <path d=\"M0 1.778C0 .8.8 0 1.778 0h12.444C15.2 0 16 .8 16 1.778v12.444C16 15.2 15.2 16 14.222 16H1.778C.8 16 0 15.2 0 14.222V1.778zM6.8 11.7l2.5.8V6.2h1.6v5.5l2.5.8 1.6-2.3h-1.6V4.8L10.9 4 9.3 5.9V4.8L6.8 4 5.1 5.9V4.8L2.6 4 1 6.2h1.6v5.5l2.5.8V6.2h1.7v5.5z\" />'\n },\n\n cross: {\n width: 18,\n height: 18,\n content:\n '<path fill=\"none\" fill-rule=\"evenodd\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\" vector-effect=\"non-scaling-stroke\" d=\"M2 2l14 14M16 2L2 16\" />'\n },\n\n link: {\n width: 24,\n height: 24,\n content:\n '<path d=\"M9.158 18.928c-1.065 0-2.13-.405-2.94-1.215-1.624-1.623-1.624-4.262 0-5.884l.643-.645c.327-.326.854-.326 1.18 0 .325.326.325.853 0 1.178l-.645.645c-.972.972-.972 2.554 0 3.526.973.972 2.554.973 3.526 0l2.842-2.84c.97-.972.97-2.555 0-3.527-.325-.325-.325-.854 0-1.18.325-.324.853-.324 1.178 0 1.623 1.625 1.623 4.264 0 5.885l-2.84 2.84c-.81.81-1.877 1.216-2.942 1.216\" /> <path d=\"M10.578 14.184c-.213 0-.426-.082-.59-.244-.784-.785-1.217-1.83-1.217-2.94 0-1.113.433-2.158 1.22-2.944l2.84-2.84c1.622-1.62 4.26-1.62 5.883 0 1.622 1.623 1.622 4.262 0 5.883l-.645.643c-.325.326-.852.326-1.178 0-.325-.325-.325-.852 0-1.178l.645-.644c.972-.97.972-2.554 0-3.526s-2.556-.972-3.527 0l-2.84 2.842c-.47.47-.73 1.096-.73 1.762 0 .667.26 1.293.73 1.763.325.327.325.854 0 1.18-.163.162-.376.244-.59.244\" />'\n },\n\n search: {\n width: 16,\n height: 16,\n content:\n '<g transform=\"translate(2 1)\" fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\" vector-effect=\"non-scaling-stroke\"><circle cx=\"5.5\" cy=\"5.5\" r=\"5.5\"/><path d=\"M11.37 13.442l-.995-1.272\"/></g>'\n },\n\n card: {\n width: 15,\n height: 15,\n content:\n '<path d=\"M9 5.5a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5H4a.5.5 0 0 1-.5-.5V6a.5.5 0 0 1 .5-.5h5zm-.5 1h-4v4h4v-4zm2.5-3a.5.5 0 0 1 .5.5v5a.5.5 0 1 1-1 0V4.5H6a.5.5 0 0 1 0-1h5z\" fill-rule=\"nonzero\"/>'\n },\n\n podcast: {\n width: 15,\n height: 15,\n content:\n '<path d=\"M5.252 11.432A.5.5 0 0 1 4.5 11V4a.5.5 0 0 1 .752-.432l6 3.5a.5.5 0 0 1 0 .864l-6 3.5zm.248-1.303L10.008 7.5 5.5 4.87v5.26z\" fill-rule=\"nonzero\" />'\n },\n\n arrow: {\n width: 12,\n height: 12,\n content:\n '<path d=\"M3 7l3 3.5L9 7M6 10V1\" fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.2\" vector-effect=\"non-scaling-stroke\" />'\n },\n\n brent: {\n width: 9,\n height: 12,\n content:\n '<g fill=\"#999\" fill-rule=\"nonzero\"><path d=\"M4.332 0l.528.606c2.528 2.902 3.804 5.07 3.804 6.634A4.332 4.332 0 110 7.24C0 5.676 1.276 3.508 3.804.606L4.332 0zm0 2.143l-.176.212C2.313 4.589 1.4 6.248 1.4 7.24a2.932 2.932 0 105.864 0c0-.992-.914-2.651-2.756-4.885l-.176-.212z\"/><path d=\"M2.973 7.475c0 .415.417.863.835.924l.097.008v.7c-.79 0-1.548-.716-1.626-1.5l-.006-.132h.7z\"/></g> '\n },\n\n user: {\n width: 16,\n height: 16,\n content:\n '<path fill=\"currentColor\" fill-rule=\"nonzero\" d=\"M8 1a4.25 4.25 0 012.676 7.552 6.751 6.751 0 014.074 6.198.75.75 0 11-1.5 0 5.25 5.25 0 00-10.5 0 .75.75 0 11-1.5 0 6.752 6.752 0 014.074-6.199A4.25 4.25 0 018 1zm0 1.5A2.75 2.75 0 108 8a2.75 2.75 0 000-5.5z\" />'\n },\n\n bookmark: {\n width: 17,\n height: 21,\n content:\n '<path d=\"M16 20l-7.5-6.333L1 20V1h15z\" stroke=\"currentColor\" fill-rule=\"evenodd\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>'\n },\n\n receipt: {\n width: 10,\n height: 13,\n content:\n '<g fill=\"currentColor\" fill-rule=\"nonzero\"><path d=\"M10 0H0v13l2-1.74 1.5 1.305L5 11.26l1.5 1.305L8 11.26 10 13V0zM9 .997v9.81l-1-.87-1.5 1.304L5 9.937 3.5 11.24 2 9.937l-1 .87V.996h8z\"/><path d=\"M7 3v1H3V3zM7 6v1H3V6z\"/></g>'\n },\n\n read: {\n width: 15,\n height: 15,\n content:\n '<g fill=\"none\" fill-rule=\"evenodd\"><path opacity=\".98\" d=\"M0 0h15v15H0z\"/><path d=\"M13.085 1.694a.513.513 0 01.855.56l-.051.077-3.163 3.975a.514.514 0 01-.73.075l-.068-.069-1.812-2.208a.512.512 0 01.729-.716l.065.066 1.409 1.718 2.766-3.478z\" fill=\"#6EAC65\" fill-rule=\"nonzero\"/><path d=\"M6.454 12.997l-.06-.01-.078-.023a.49.49 0 01-.266-.24l.011.015a2.349 2.349 0 00-.535-.607c-.89-.745-2.117-.917-3.813-.12a.5.5 0 01-.706-.37L1 11.558V4.568a.5.5 0 01.287-.453c2.053-.963 3.695-.733 4.88.26.327.272.556.548.698.77l.084.144.018.04.022.076.01.071L7 11.233l.126-.09c.95-.656 2.16-.857 3.608-.417l.266.087v-2.81a.5.5 0 01.41-.491l.09-.008a.5.5 0 01.492.41l.008.09v3.555a.5.5 0 01-.713.452c-1.696-.796-2.922-.624-3.813.12a2.533 2.533 0 00-.497.544l-.038.064a.486.486 0 01-.485.258zm-4.29-8.17L2 4.892v5.92c1.637-.572 2.977-.348 4 .42l.002-5.58a2.605 2.605 0 00-.476-.513c-.81-.677-1.897-.88-3.362-.314z\" fill=\"currentColor\" fill-rule=\"nonzero\"/></g>'\n },\n listened: {\n width: 15,\n height: 15,\n content:\n '<g fill-rule=\"nonzero\"><path d=\"M4.978 4.354a.5.5 0 01-.332.624c-1.197.367-2.064 1.527-2.14 2.897l-.005.167a.749.749 0 01.999.708v3a.75.75 0 01-1.458.248L2 12a1 1 0 01-1-1v-1a1 1 0 01.5-.866V8.072c0-1.886 1.172-3.535 2.854-4.05a.5.5 0 01.624.332zM10 7a.5.5 0 01.492.41l.008.09.001 1.634a1 1 0 01.492.745L11 10v1a1 1 0 01-.883.993L10 12l-.042-.002a.75.75 0 01-1.451-.146L8.5 11.75v-3a.75.75 0 011.001-.707L9.5 7.5l.008-.09A.5.5 0 0110 7z\" fill=\"currentColor\" /><path d=\"M11.585 1.194a.513.513 0 01.855.56l-.051.077-3.163 3.975a.514.514 0 01-.73.075l-.068-.069-1.812-2.208a.512.512 0 01.729-.716l.065.066 1.409 1.718 2.766-3.478z\" fill=\"#6EAC65\" /></g>'\n }\n}\n","import React from 'react'\nimport { SvgSymbolProps } from './SvgSymbol.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport { icons } from './icons'\n\nimport styles from './SvgSymbol.module.css'\n\nexport const SvgSymbol: React.FC<SvgSymbolProps> = ({\n icon,\n size,\n styleContext\n}) => {\n const data = icons[icon]\n\n return (\n <svg\n data-testid=\"svg-symbol\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n className={makeClassName([\n [styles.root, true],\n [styles[size], !!styles[size]],\n [styles[icon], !!styles[icon]],\n [styles[styleContext], !!styles[styleContext]]\n ])}\n width={data.width}\n height={data.height}\n viewBox={`0 0 ${data.width} ${data.height}`}\n dangerouslySetInnerHTML={{ __html: data.content }}\n />\n )\n}\n","import React from 'react'\nimport { SwitcherProps } from './Switcher.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport styles from './Switcher.module.css'\n\nexport const Switcher: React.FC<SwitcherProps> = ({\n enabled,\n children,\n childrenPosition = 'left',\n onChange,\n styleContext,\n theme = 'light'\n}) => (\n <label\n data-testid=\"switcher\"\n className={makeClassName([\n [styles.root, true],\n [styles[theme], !!styles[theme]],\n [styles[styleContext], !!styles[styleContext]]\n ])}\n >\n {children && childrenPosition === 'left' && (\n <div\n className={makeClassName([\n [styles.children, true],\n [styles.left, true]\n ])}\n >\n {children}\n </div>\n )}\n <input\n className={styles.input}\n type=\"checkbox\"\n checked={enabled}\n onChange={onChange}\n />\n <span className={styles.control}>\n <span className={styles.knob} />\n </span>\n {children && childrenPosition === 'right' && (\n <div\n className={makeClassName([\n [styles.children, true],\n [styles.right, true]\n ])}\n >\n {children}\n </div>\n )}\n </label>\n)\n","import React from 'react'\n\nconst BlockContext = React.createContext({ lightBox: null })\n\nexport const BlockProvider = BlockContext.Provider\n\nexport default BlockContext\n","type viewportSize = {\n width: number\n height: number\n}\n\nexport default (): viewportSize => ({\n width:\n window.innerWidth ||\n document.documentElement.clientWidth ||\n document.body.clientWidth,\n height:\n window.innerHeight ||\n document.documentElement.clientHeight ||\n document.body.clientHeight\n})\n","const POST_MESSAGE_PREFIX = 'mdzKitMsg'\n\nconst postMessage = (\n category: string,\n element: string,\n action: string\n): void => {\n const target = window.top\n\n const msg = `${POST_MESSAGE_PREFIX}=${JSON.stringify({\n category,\n element,\n action\n })}`\n\n if (typeof target !== 'undefined') {\n target.postMessage(msg, '*')\n }\n}\n\nexport default postMessage\n","export const MediaQuerySizes = {\n MOBILE: 512,\n PORTRAIT_TABLET: 768,\n LANDSCAPE_TABLET: 1024,\n DESKTOP: 1010,\n WIDE_DESKTOP: 1200\n}\n\nexport const imageBreakpoints = {\n 325: '(min-width: 0)',\n 520: '(min-width: 325px)',\n 600: '(min-width: 600px)',\n 650: '(min-width: 650px)',\n 980: '(min-width: 1000px)',\n 1335: '(min-width: 1000px)'\n}\n\nexport const imageConditionalKeys = {\n xs: [325],\n superFull: [1335, 650, 520, 325],\n full: [980, 650, 520, 325],\n default: [650, 520, 325],\n narrow: [600, 325]\n}\n","import React, { useState, useEffect } from 'react'\nimport { useInView } from 'react-intersection-observer'\nimport { makeClassName } from '../utils/makeClassName'\nimport { LazyProps } from './Lazy.types'\n\nimport styles from './Lazy.module.css'\n\nexport const Lazy: React.FC<LazyProps> = ({ children, threshold }) => {\n const [ref, inView, entry] = useInView({\n threshold: threshold || 0\n })\n\n const [visible, setVisible] = useState(false)\n\n useEffect(() => {\n if (entry && entry.boundingClientRect && entry.boundingClientRect.y < 0) {\n setVisible(true)\n }\n }, [entry])\n\n useEffect(() => {\n if (inView) {\n setVisible(true)\n }\n }, [inView])\n\n return (\n <div\n className={makeClassName([\n [styles.root, true],\n [styles.visible, visible]\n ])}\n ref={ref}\n data-testid=\"lazy\"\n >\n {visible && children}\n </div>\n )\n}\n","export const toCamel = (s: string): string =>\n s.replace(/([_][a-z])/gi, (str) => str.toUpperCase().replace('_', ''))\n\nexport const toCapitalize = (s: string): string =>\n s[0].toUpperCase() + s.slice(1)\n","import React, { useState, useEffect } from 'react'\nimport { PictureProps } from './Image.types'\nimport { imageBreakpoints, imageConditionalKeys } from '../constants'\nimport { toCamel } from '../utils/converCase'\n\nexport const RenderPicture: React.FC<PictureProps> = ({\n source,\n fallbackSource,\n optimized,\n alt,\n display,\n onLoad\n}) => {\n const [fallback, setFallback] = useState(false)\n\n useEffect(() => {\n setFallback(!window.HTMLPictureElement)\n }, [])\n\n const keys =\n imageConditionalKeys[toCamel(display)] || imageConditionalKeys.default\n\n return (\n <picture>\n {source && (\n <source media=\"(min-width: 325px)\" srcSet={`${source[1]} 2x`} />\n )}\n\n {optimized && !optimized.w325 && (\n <source media=\"(min-width: 0)\" srcSet={`${optimized.original}`} />\n )}\n\n {optimized &&\n keys.map((key) => {\n const breakpoint = optimized[`w${key}`]\n\n if (!breakpoint) {\n return null\n }\n\n return (\n <React.Fragment key={key}>\n <source\n type=\"image/webp\"\n media={imageBreakpoints[key]}\n srcSet={`${breakpoint['2x_webp']} 2x, ${breakpoint['1x_webp']} 1x `}\n />\n\n <source\n type=\"image/png\"\n media={imageBreakpoints[key]}\n srcSet={`${breakpoint['2x']} 2x, ${breakpoint['1x']} 1x `}\n />\n </React.Fragment>\n )\n })}\n\n <img\n src={\n fallback\n ? fallbackSource\n : 'data:image/gif;base64,R0lGODlhAQABAPAAAPLy8gAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw=='\n }\n alt={alt}\n onLoad={() => onLoad(true)}\n />\n </picture>\n )\n}\n\nexport default RenderPicture\n","import React, { useContext, useState } from 'react'\nimport { ImageProps } from './Image.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport BlockContext from '../utils/BlockContext'\nimport viewportSize from '../utils/viewportSize'\nimport postMessage from '../utils/postMessage'\nimport { MediaQuerySizes } from '../constants'\nimport { Lazy } from '../Lazy'\nimport RenderPicture from './RenderPicture'\n\nimport styles from './Image.module.css'\n\nexport const Image: React.FC<ImageProps> = ({\n alt,\n display,\n optimized,\n width,\n height,\n source,\n lazy,\n fullscreen,\n ratio\n}) => {\n const { lightBox } = useContext(BlockContext)\n const [isLoaded, setIsLoaded] = useState(false)\n\n const handleClick = (): void => {\n if (!fullscreen || !lightBox || (optimized && !optimized.original)) {\n return\n }\n\n const { width: viewportWidth } = viewportSize()\n\n const disableFullscreenDesktop =\n viewportWidth >= MediaQuerySizes.LANDSCAPE_TABLET && !fullscreen.desktop\n\n const disableFullscreenMobile =\n viewportWidth < MediaQuerySizes.LANDSCAPE_TABLET && !fullscreen.mobile\n\n if (disableFullscreenDesktop || disableFullscreenMobile) {\n return\n }\n\n postMessage('', 'fullscreen_click', 'click')\n lightBox.show(optimized, width, height, alt)\n }\n\n const blockStyles = {\n maxWidth: width <= 649 ? width : '100%'\n }\n\n const pictureStyles = {\n paddingBottom: `${100 / (ratio || width / height)}%`\n }\n\n /* fallback w325 url until w6 was released */\n const fallbackSource =\n (source && source[0]) ||\n (optimized.w325 && optimized.w325['1x']) ||\n optimized.original\n\n return (\n <div\n className={makeClassName([\n [styles.root, true],\n [styles.isLoaded, isLoaded],\n [styles.fullscreen, fullscreen && fullscreen.desktop]\n ])}\n style={blockStyles}\n data-testid=\"image\"\n >\n <div\n className={styles.wrapper}\n style={pictureStyles}\n onClick={(): void => handleClick()}\n onKeyPress={(): void => handleClick()}\n role=\"button\"\n tabIndex={0}\n >\n {lazy ? (\n <>\n <Lazy threshold={0.25}>\n <RenderPicture\n fallbackSource={fallbackSource}\n source={source}\n optimized={optimized}\n alt={alt}\n display={display}\n onLoad={setIsLoaded}\n />\n </Lazy>\n <noscript>\n <img src={fallbackSource} alt={alt} />\n </noscript>\n </>\n ) : (\n <RenderPicture\n fallbackSource={fallbackSource}\n source={source}\n optimized={optimized}\n alt={alt}\n display={display}\n onLoad={setIsLoaded}\n />\n )}\n </div>\n </div>\n )\n}\n","import React, { useState, useEffect } from 'react'\nimport { PopoverProps } from './Popover.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport styles from './Popover.module.css'\n\nexport const Popover: React.FC<PopoverProps> = ({ children, onClose }) => {\n const [visible, setVisible] = useState(true)\n\n const handleClose = (): void => {\n setVisible(false)\n setTimeout(onClose, 350)\n }\n\n const handleScroll = (): void => {\n handleClose()\n }\n\n const escFunction = (event: KeyboardEvent): void => {\n if (event.key === 'Escape') {\n handleClose()\n }\n }\n\n useEffect(() => {\n document.body.dataset.popover = 'true'\n\n window.addEventListener('keydown', escFunction, false)\n window.addEventListener('scroll', handleScroll, false)\n\n return () => {\n document.body.removeAttribute('data-popover')\n\n window.removeEventListener('keydown', escFunction, false)\n window.removeEventListener('scroll', handleScroll, false)\n }\n }, [visible])\n\n /* eslint-disable jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions */\n return (\n <div\n data-testid=\"popover\"\n className={makeClassName([\n [styles.root, true],\n [styles.visible, visible]\n ])}\n >\n <div className={styles.overlay} onClick={(): void => handleClose()} />\n\n <div className={styles.container}>\n <button\n type=\"button\"\n className={styles.dismiss}\n onClick={(): void => handleClose()}\n aria-label=\"dismiss\"\n />\n <svg width=\"100%\" className={styles.background}>\n <defs>\n <mask id=\"myMask\" x=\"0\" y=\"0\" width=\"100%\" height=\"100%\">\n <rect fill=\"white\" y=\"0\" width=\"100%\" height=\"100%\" x=\"0\" />\n <svg x=\"50%\" overflow=\"visible\">\n <g transform=\"translate(-12 0)\">\n <path d=\"M4.61852778e-14,9.76996262e-15 L9.84597532,5.80270273 C11.0992017,6.54128882 12.6546044,6.54128882 13.9078308,5.80270273 L23.7538061,9.76996262e-15 L4.61852778e-14,9.76996262e-15 Z\" />\n </g>\n </svg>\n </mask>\n </defs>\n <rect\n fill=\"#F7F7F7\"\n id=\"base-mask\"\n mask=\"url(#myMask)\"\n x=\"0\"\n y=\"0\"\n width=\"100%\"\n height=\"100%\"\n />\n </svg>\n <div className={styles.body}>{children}</div>\n </div>\n </div>\n )\n}\n","import React from 'react'\nimport { FootnoteProps } from './Footnote.types'\nimport makeClassName from '../utils/makeClassName'\n\nimport { SvgSymbol } from '../SvgSymbol'\n\nimport styles from './Footnote.module.css'\n\nexport const Footnote: React.FC<FootnoteProps> = ({ children, onClose }) => {\n return (\n <div\n data-testid=\"footnote\"\n className={makeClassName([[styles.root, true]])}\n >\n <button\n className={styles.dismiss}\n type=\"button\"\n onClick={(): void => onClose()}\n >\n <SvgSymbol icon=\"cross\" size=\"unset\" />\n </button>\n\n <div className={styles.body}>{children}</div>\n </div>\n )\n}\n","import React, { useState, useEffect, useRef } from 'react'\nimport { useInView } from 'react-intersection-observer'\n\nimport { PopoverData, DotsOnImageProps, SingleDot } from './DotsOnImage.types'\n\nimport { Image } from '../Image'\nimport { Popover } from '../Popover'\nimport { Footnote } from '../Footnote'\n\nimport viewportSize from '../utils/viewportSize'\nimport { MediaQuerySizes } from '../constants'\n\nimport makeClassName from '../utils/makeClassName'\n\nimport styles from './DotsOnImage.module.css'\n\nexport const DotsOnImage: React.FC<DotsOnImageProps> = ({\n block: { optimized, width, height, credit, display, dots }\n}) => {\n const [ratio, setRatio] = useState(1)\n const [ref, inView, entry] = useInView({\n threshold: 0.5\n })\n\n const container = useRef(null)\n\n const [popover, setPopover] = useState<PopoverData>({\n title: null,\n body: null,\n show: false,\n id: null\n })\n\n const [visible, setVisible] = useState(false)\n const defaultWidth = 375\n\n useEffect(() => {\n if (entry && entry.boundingClientRect && entry.boundingClientRect.y < 0) {\n setVisible(true)\n }\n }, [entry])\n\n useEffect(() => {\n if (inView) {\n setVisible(true)\n }\n }, [inView])\n\n useEffect(() => {\n if (popover.id) {\n document.addEventListener('click', handleClickOutside)\n } else {\n document.removeEventListener('click', handleClickOutside)\n }\n\n return () => document.removeEventListener('click', handleClickOutside)\n }, [popover])\n\n useEffect(() => {\n setDotSize()\n window.addEventListener('resize', setDotSize)\n\n return () => document.removeEventListener('resize', setDotSize)\n }, [visible])\n\n const setDotSize = () => {\n const width = window.innerWidth\n\n if (width < defaultWidth) {\n const ratio = width / defaultWidth\n setRatio(ratio)\n } else {\n setRatio(1)\n }\n }\n\n const handleClickOutside = (event: MouseEvent): void => {\n const path = event.composedPath()\n\n if (path.indexOf(container.current) === -1) {\n setPopover({ show: false })\n }\n }\n\n const handleDotClick = (dot: SingleDot): void => {\n const shouldShow = dot.id !== popover.id\n const side = dot.position.x > 50 ? 'isLeft' : 'isRight'\n const align = dot.position.y > 50 ? 'isBottom' : 'isTop'\n\n const style = { top: `${dot.position.y}%`, left: `${dot.position.x}%` }\n\n setPopover({\n title: dot.title,\n body: dot.body,\n show: shouldShow,\n id: shouldShow ? dot.id : null,\n style,\n side,\n align\n })\n }\n\n return (\n <div\n className={makeClassName([\n [styles.root, true],\n [styles.isVisible, visible]\n ])}\n data-testid=\"dots-on-image\"\n ref={ref}\n >\n <Image\n optimized={optimized}\n width={width}\n height={height}\n alt={credit}\n display={display}\n fullscreen={{ mobile: false, desktop: false }}\n />\n\n <div ref={container}>\n {dots.map((dot) => (\n <div\n className={styles.dot}\n key={dot.id}\n style={{\n top: `${dot.position.y}%`,\n left: `${dot.position.x}%`,\n transform: `scale(${ratio}) translate(-${50 / ratio}%, -${\n 50 / ratio\n }%)`\n }}\n >\n <button\n className={makeClassName([\n [styles.marker, true],\n [styles.isActive, dot.id === popover.id]\n ])}\n type=\"button\"\n style={{\n backgroundColor: dot.icon.color\n }}\n onClick={(): void => handleDotClick(dot)}\n >\n {dot.icon.type === 'svg' && (\n <div\n dangerouslySetInnerHTML={{ __html: dot.icon.svg_string }}\n />\n )}\n {dot.icon.type === 'number' && dot.icon.number}\n </button>\n </div>\n ))}\n\n {popover.show && (\n <>\n {viewportSize().width >= MediaQuerySizes.LANDSCAPE_TABLET ? (\n <div\n className={makeClassName([\n [styles.popover, true],\n [styles[popover.side], !!popover.side],\n [styles[popover.align], !!popover.align]\n ])}\n style={popover.style}\n >\n <Footnote\n onClose={(): void => {\n setPopover({ show: false })\n }}\n >\n {popover.title && <h3>{popover.title}</h3>}\n <div dangerouslySetInnerHTML={{ __html: popover.body }} />\n </Footnote>\n </div>\n ) : (\n <Popover\n onClose={(): void => {\n setPopover({ show: false })\n }}\n >\n {popover.title && <h3>{popover.title}</h3>}\n <div dangerouslySetInnerHTML={{ __html: popover.body }} />\n </Popover>\n )}\n </>\n )}\n </div>\n </div>\n )\n}\n","import { ClassNames } from './makeClassName'\n\nconst makeStyleContext = (\n classNames: ClassNames,\n styleContext: string[] | string,\n styles: Record<string, string>\n): ClassNames => {\n const context = Array.isArray(styleContext)\n ? styleContext\n .filter((ctx) => styles[ctx])\n .map((ctx) => [[styles[ctx]], true])\n : [[styles[styleContext], !!styleContext && !!styles[styleContext]]]\n\n return classNames.concat(context)\n}\n\nexport default makeStyleContext\n","import React from 'react'\nimport { TagProps } from './Tag.types'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport styles from './Tag.module.css'\n\nexport const Tag: React.FC<TagProps> = ({\n children,\n size = 'small',\n theme = 'gold',\n styleContext,\n correlation,\n onlyOn\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[size], !!size && !!styles[size]],\n [styles[theme], !!theme && !!styles[theme]],\n [styles[onlyOn], !!onlyOn && !!styles[onlyOn]],\n [styles[correlation], !!correlation && !!styles[correlation]]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"tag\" className={makeClassName(classNames)}>\n {children}\n </div>\n )\n}\n","import React from 'react'\nimport { MediaCaptionProps } from './MediaCaption.types'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport styles from './MediaCaption.module.css'\n\nexport const MediaCaption: React.FC<MediaCaptionProps> = ({\n credit,\n caption,\n styleContext\n}) => {\n let classNames: ClassNames = [[styles.root, true]]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"media-caption\" className={makeClassName(classNames)}>\n {caption && (\n <div\n className={styles.caption}\n dangerouslySetInnerHTML={{ __html: caption }}\n />\n )}\n {credit && (\n <div\n className={styles.credit}\n dangerouslySetInnerHTML={{ __html: credit }}\n />\n )}\n </div>\n )\n}\n","import React from 'react'\nimport { TableProps } from './Table.types'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport { MediaCaption } from '../MediaCaption'\n\nimport styles from './Table.module.css'\n\nexport const Table: React.FC<TableProps> = ({\n styleContext,\n block: {\n rows,\n options,\n display,\n columns_widths: columnsWidth,\n table_credit: tableCredit\n }\n}) => {\n const colors = {\n '#ffffff': 'white',\n '#f5f5f5': 'gray',\n '#feeeee': 'pink',\n '#e6f3ff': 'blue',\n '#fffde6': 'yellow',\n '#fff9f2': 'orange',\n '#e7f2ef': 'green',\n '#f4f0f8': 'violet'\n }\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[display], !!display && !!styles[display]]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"table\" className={makeClassName(classNames)}>\n <div className={styles.wrapper}>\n <div className={styles.table}>\n <div className={styles.tracks}>\n {rows.map((row, i) => {\n return (\n <div key={row.key} className={styles.row}>\n {row.cells.map((cell, j) => (\n <div\n key={cell.key}\n className={makeClassName([\n [styles.cell, true],\n [styles.header, options.header && i === 0],\n [styles[colors[cell.color]], true],\n [styles[columnsWidth[j]], true],\n [\n styles.fixedColumn,\n options.fixed_first_column && j === 0\n ]\n ])}\n dangerouslySetInnerHTML={{ __html: cell.val }}\n />\n ))}\n </div>\n )\n })}\n </div>\n </div>\n </div>\n\n {tableCredit && (\n <MediaCaption credit={tableCredit} styleContext={styleContext} />\n )}\n </div>\n )\n}\n","import React from 'react'\nimport { MaterialNoteProps } from './MaterialNote.types'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport styles from './MaterialNote.module.css'\n\nexport const MaterialNote: React.FC<MaterialNoteProps> = ({\n block: { data },\n styleContext\n}) => {\n let classNames: ClassNames = [[styles.root, true]]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"material-note\" className={makeClassName(classNames)}>\n {data &&\n data.map((item) => (\n <p\n className={styles[item.type]}\n key={item.id}\n dangerouslySetInnerHTML={{ __html: item.data }}\n />\n ))}\n </div>\n )\n}\n","import React from 'react'\nimport { BookmarkButtonProps } from './BookmarkButton.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { SvgSymbol } from '../SvgSymbol'\nimport styles from './BookmarkButton.module.css'\n\nexport const BookmarkButton: React.FC<BookmarkButtonProps> = ({\n styleContext,\n theme,\n isInBookmarks,\n onClick\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles.isInBookmarks, isInBookmarks],\n [styles[theme], !!theme && !!styles[theme]]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"bookmark-button\" className={makeClassName(classNames)}>\n <button\n className={styles.control}\n onClick={(): void => onClick()}\n type=\"button\"\n >\n <SvgSymbol icon=\"bookmark\" size=\"unset\" />\n </button>\n </div>\n )\n}\n","import React from 'react'\nimport { MaterialTitleProps } from './MaterialTitle.types'\n\nimport styles from './MaterialTitle.module.css'\n\nexport const Primary: React.FC<MaterialTitleProps> = ({ children }) => {\n return <span className={styles.primary}>{children}</span>\n}\n\nexport const Secondary: React.FC<MaterialTitleProps> = ({ children }) => {\n return <span className={styles.secondary}>{children}</span>\n}\n\nexport const MaterialTitle: React.FC<MaterialTitleProps> = ({ children }) => {\n return (\n <h1 className={styles.root} data-testid=\"material-title\">\n {children}\n </h1>\n )\n}\n","import React from 'react'\nimport { DropdownProps } from './Dropdown.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './Dropdown.module.css'\n\nexport const Menu: React.FC<DropdownProps> = ({ children }) => {\n return (\n <div data-testid=\"dropdown\" className={styles.menu}>\n {children}\n </div>\n )\n}\n\nexport const Dropdown: React.FC<DropdownProps> = ({\n children,\n active,\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles.active, !!active && !!styles.active]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"dropdown\" className={makeClassName(classNames)}>\n {children}\n </div>\n )\n}\n","import React, { Children } from 'react'\nimport { ToolbarProps } from './Toolbar.types'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport styles from './Toolbar.module.css'\n\nexport const Toolbar: React.FC<ToolbarProps> = ({ children, styleContext }) => {\n let classNames: ClassNames = [[styles.root, true]]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n const renderItems = (): JSX.Element[] =>\n Children.map(children, (item: JSX.Element, index) => (\n <li className={styles.item} key={`${index}-${item.props.type}`}>\n {React.cloneElement(item)}\n </li>\n ))\n\n return (\n <div data-testid=\"toolbar\" className={makeClassName(classNames)}>\n <ul className={styles.list}>{renderItems()}</ul>\n </div>\n )\n}\n","import React from 'react'\nimport { MetaProps } from './Meta.types'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport styles from './Meta.module.css'\n\nexport const Meta: React.FC<MetaProps> = ({\n hasSource,\n theme,\n children,\n onlyOn,\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[theme], !!theme && !!styles[theme]],\n [styles[onlyOn], !!onlyOn],\n [styles.hasSource, hasSource]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"meta\" className={makeClassName(classNames)}>\n {children}\n </div>\n )\n}\n","import React from 'react'\nimport { TimestampProps } from './Timestamp.types'\nimport dayjs from 'dayjs'\nimport 'dayjs/locale/ru'\nimport relativeTime from 'dayjs/plugin/relativeTime'\n\nimport styles from './Timestamp.module.css'\n\nexport const Timestamp: React.FC<TimestampProps> = ({\n publishedAt,\n locale = 'ru',\n type\n}) => {\n let published\n const timeFormat =\n locale === 'ru' ? 'HH:mm, D MMMM YYYY' : 'h:mm a, MMMM D, YYYY'\n\n const preparedPublishedAt = publishedAt * 1000\n\n dayjs.locale(locale)\n dayjs.extend(relativeTime)\n\n if (type === 'fromNow') {\n published = dayjs(preparedPublishedAt).fromNow()\n } else if (type === 'format') {\n published = dayjs(preparedPublishedAt).format('HH:mm')\n } else if (type === 'date') {\n published = dayjs(preparedPublishedAt).format(timeFormat)\n } else {\n throw new Error('Unknown time type')\n }\n\n return (\n <time data-testid=\"timestamp\" className={styles.root}>\n {published}\n </time>\n )\n}\n","import React, { useCallback, useEffect, useRef, useState } from 'react'\n\ntype DangerousHtmlProps = {\n className?: string\n html: string\n tagName?: keyof JSX.IntrinsicElements\n}\n\nconst DangerousHTML: React.FC<DangerousHtmlProps> = ({\n className = '',\n tagName: TagName = 'div',\n html\n}) => {\n const element = useRef<HTMLDivElement>(null)\n const [canRenderHtml, setCanRenderHtml] = useState(false)\n\n useEffect(() => {\n setCanRenderHtml(true)\n }, [])\n\n const replaceScriptElementsRecursive = useCallback((node) => {\n if (\n node.tagName === 'SCRIPT' &&\n (!node.id || node.id.indexOf('script-') !== 0)\n ) {\n const script = document.createElement('script')\n\n script.id = `script-${Math.random().toString(16).slice(2)}`\n script.innerHTML = node.innerHTML\n\n const attrs = node.attributes\n\n for (let i = 0; i < attrs.length; i += 1) {\n const { name, value } = attrs[i]\n\n script.setAttribute(name, value)\n }\n\n node.parentElement.replaceChild(script, node)\n } else {\n let i = 0\n const children = node.childNodes\n\n while (i < children.length) {\n replaceScriptElementsRecursive(children[i])\n i += 1\n }\n }\n }, [])\n\n const prepareAnchors = useCallback(() => {\n const anchors = Array.from(element.current.querySelectorAll('a'))\n\n anchors.forEach((a) => {\n a.setAttribute('target', '_blank')\n })\n }, [])\n\n useEffect(() => {\n if (\n canRenderHtml &&\n html.indexOf('script') > -1 &&\n element.current.firstElementChild\n ) {\n element.current.firstElementChild.innerHTML = html\n replaceScriptElementsRecursive(element.current.firstElementChild)\n prepareAnchors()\n }\n }, [\n canRenderHtml,\n element,\n html,\n replaceScriptElementsRecursive,\n prepareAnchors\n ])\n\n return (\n <div ref={element}>\n <TagName\n className={className}\n dangerouslySetInnerHTML={{ __html: html }}\n />\n </div>\n )\n}\n\nexport default DangerousHTML\n","import React, { useState, useEffect, useRef } from 'react'\nimport enableInlineVideo from 'iphone-inline-video'\nimport viewportSize from '../utils/viewportSize'\nimport { MediaQuerySizes } from '../constants'\nimport { EmbedGifProps } from './EmbedBlock.types'\n\nimport styles from './EmbedBlock.module.css'\n\nexport const EmbedGif: React.FC<EmbedGifProps> = ({ gif, mp4Url, style }) => {\n const [videoFrozen, setVideoFrozen] = useState(false)\n const videoElem = useRef(null)\n\n const handleVideoTouch = (): void => {\n videoElem.current.play()\n setVideoFrozen(false)\n }\n\n const handleVideoError = (): void => {\n const video = videoElem.current\n\n video.setAttribute('poster', video.dataset.gif)\n\n setVideoFrozen(false)\n }\n\n useEffect(() => {\n const video = videoElem.current\n const { width: viewportWidth } = viewportSize()\n\n enableInlineVideo(video)\n\n if (viewportWidth >= MediaQuerySizes.MOBILE) {\n video.setAttribute('autoplay', true)\n video.play()\n } else {\n setVideoFrozen(true)\n video.pause()\n video.addEventListener('touchstart', handleVideoTouch)\n }\n\n video.addEventListener('error', handleVideoError)\n\n return (): void => {\n video.removeEventListener('touchstart', handleVideoTouch)\n video.removeEventListener('error', handleVideoError)\n }\n }, [])\n\n return (\n <div className={styles.figure}>\n <div\n className={styles.objectWrap}\n style={style}\n data-frozen={videoFrozen}\n >\n <video\n playsInline\n muted\n loop\n autoPlay\n preload=\"metadata\"\n data-gif={gif}\n ref={videoElem}\n >\n <source src={`https://meduza.io${mp4Url}`} type=\"video/mp4\" />\n </video>\n </div>\n </div>\n )\n}\n","import React, { useState } from 'react'\nimport { Image } from '../Image'\nimport { Popover } from '../Popover'\nimport { MediaCaption } from '../MediaCaption'\nimport { DotsOnImage } from '../DotsOnImage'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport DangerousHTML from '../utils/DangerousHtml'\nimport { EmbedGif } from './EmbedGif'\nimport { EmbedBlockProps } from './EmbedBlock.types'\n\nimport styles from './EmbedBlock.module.css'\n\nexport const EmbedBlock: React.FC<EmbedBlockProps> = ({\n block,\n block: {\n data,\n data: {\n html,\n display,\n only_on: onlyOn,\n provider,\n cc,\n optimized,\n small_url: small,\n large_url: large,\n gif_url: gifUrl,\n mp4_url: mp4Url\n }\n },\n styleContext,\n children\n}) => {\n const [isPopoverShown, setIsPopoverShown] = useState(false)\n const style: React.CSSProperties = {}\n const isProportional = block.data.height && block.data.width\n\n const fullWidthProviders = [\n 'youtube',\n 'vimeo',\n 'onetv',\n 'coub',\n 'facebook_video'\n ]\n\n const mobileFullwidth =\n fullWidthProviders.indexOf(provider) > -1 || block.type === 'dots_on_image'\n\n const renderCC = (context?: string | string[]): JSX.Element => (\n <MediaCaption\n credit={data.credit}\n caption={data.caption}\n styleContext={context || styleContext}\n />\n )\n\n const renderEmbed = (style: React.CSSProperties): JSX.Element => {\n switch (block.type) {\n case 'gif': {\n return <EmbedGif gif={gifUrl} mp4Url={mp4Url} style={style} />\n }\n case 'image': {\n return (\n <div className={styles.figure}>\n <Image\n fullscreen={{ desktop: block.data.fullscreen, mobile: true }}\n source={!optimized && [small, large]}\n optimized={block.data.optimized}\n width={block.data.width}\n height={block.data.height}\n alt={block.data.caption}\n display={block.data.display}\n lazy={block.data.lazy}\n />\n </div>\n )\n }\n case 'game_embed': {\n return (\n <div className={styles.gameEmbed}>\n <iframe\n src={block.data.game_src}\n id={block.data.game_id}\n title=\"Game embed\"\n />\n </div>\n )\n }\n case 'dots_on_image': {\n return (\n <div className={styles.figure}>\n <DotsOnImage block={data} />\n </div>\n )\n }\n\n default: {\n return (\n <div className={styles.object}>\n <div className={styles.wrapper} style={style}>\n <DangerousHTML className={styles.objectWrap} html={html} />\n </div>\n </div>\n )\n }\n }\n }\n\n if (isProportional) {\n style.paddingBottom = `${(block.data.height / block.data.width) * 100}%`\n style.height = 0\n }\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles.cc, cc],\n [styles[display], !!display && styles[display]],\n [styles[provider], !!provider && !!styles[provider]],\n [styles[onlyOn], !!onlyOn && styles[onlyOn]],\n [styles.mobileFullwidth, mobileFullwidth],\n [styles.proportional, isProportional]\n ]\n\n // Убираем из контекста все, что не начинается с приставки isIn,\n // чтобы не применились лишние модификаторы\n // TODO: в w6 модификаторы должны передаваться явно\n\n if (styleContext && Array.isArray(styleContext)) {\n const filteredContext = styleContext\n .filter((key) => key.startsWith('isIn') && styles[key])\n .reduce((acc, key) => {\n acc.push(key)\n\n return acc\n }, [])\n\n classNames = makeStyleContext(classNames, filteredContext, styles)\n }\n\n return (\n <figure className={makeClassName(classNames)}>\n {children && (\n <div className={styles.object}>\n <div className={styles.wrapper} style={style}>\n <div className={styles.objectWrap}>{children}</div>\n </div>\n </div>\n )}\n\n {!children && renderEmbed(style)}\n\n {cc === 'default' && <figcaption>{renderCC()}</figcaption>}\n\n {cc === 'button' && (\n <button\n className={styles.control}\n type=\"button\"\n aria-label=\"Open\"\n onClick={(): void => {\n setIsPopoverShown(!isPopoverShown)\n }}\n />\n )}\n\n {cc === 'button' && isPopoverShown && (\n <Popover\n onClose={(): void => {\n setIsPopoverShown(false)\n }}\n >\n {renderCC('isInPopover')}\n </Popover>\n )}\n </figure>\n )\n}\n","import React, { useEffect, useRef } from 'react'\nimport { EmbedBlockProps } from './EmbedBlock.types'\nimport { EmbedBlock } from './EmbedBlock'\n\nexport const IframeBlock: React.FC<EmbedBlockProps> = ({\n block,\n block: { id },\n styleContext,\n lang = 'ru'\n}) => {\n const element = useRef(null)\n\n const renderIframe = (): void => {\n const rootEl = document.createElement('div')\n const contentEl = document.createElement('div')\n const scriptEl = document.createElement('script')\n const style = document.createElement('style')\n const range = document.createRange()\n\n range.setStart(contentEl, 0)\n contentEl.setAttribute('id', 'content')\n scriptEl.textContent = `\n function getDocHeight() {\n var doc = document;\n var body = doc.body;\n var html = doc.documentElement;\n var height = Math.max( body.scrollHeight, body.offsetHeight,\n html.clientHeight, html.scrollHeight, html.offsetHeight );\n\n doc.body.style.margin=\"0\";\n\n return document.getElementById('content') ? document.getElementById('content').offsetHeight : height;\n }\n\n function sendDocHeightMsg() {\n var height = getDocHeight();\n var message = JSON.stringify({\n action: {\n type: \"UPDATE_HEIGHT\",\n payload: {\n id: \"${block.id}\",\n height: height\n }\n }\n });\n parent.postMessage(\"mdzMaterialEmbedHeight=\" + message, '*');\n }\n\n setInterval(sendDocHeightMsg, 300);\n `\n\n style.type = 'text/css'\n style.innerHTML =\n block.type === 'embed_code'\n ? '.twitter-tweet { padding-top: 15px; margin: 0 !important; }'\n : '.twitter-tweet { margin: 0 !important; } .fb-post { display: block; } .instagram-media { min-width: 0 !important; }'\n\n contentEl.appendChild(range.createContextualFragment(block.data.html))\n rootEl.appendChild(scriptEl)\n rootEl.appendChild(contentEl)\n contentEl.appendChild(style)\n\n const frame = element.current.querySelector('iframe').contentDocument\n\n frame.open()\n frame.close()\n frame.documentElement.setAttribute('lang', lang)\n frame.body.appendChild(rootEl)\n }\n\n useEffect(() => {\n renderIframe()\n }, [])\n\n return (\n <EmbedBlock block={block} styleContext={styleContext}>\n <div\n ref={element}\n dangerouslySetInnerHTML={{\n __html: `<iframe id=${id} frameBorder=\"0\" scrolling=\"no\"></iframe>`\n }}\n />\n </EmbedBlock>\n )\n}\n","import React from 'react'\nimport { EmbedBlockProps } from './EmbedBlock.types'\nimport { EmbedBlock } from './EmbedBlock'\nimport { IframeBlock } from './IframeBlock'\n\nexport const EmbedBlockContainer: React.FC<EmbedBlockProps> = ({\n block,\n styleContext,\n lang\n}) => {\n if (block.data && block.data.wrap_with_iframe) {\n return <IframeBlock block={block} styleContext={styleContext} lang={lang} />\n }\n return <EmbedBlock block={block} styleContext={styleContext} />\n}\n","import React from 'react'\nimport { QuoteBlockProps } from './QuoteBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './QuoteBlock.module.css'\n\nexport const QuoteBlock: React.FC<QuoteBlockProps> = ({\n block: { data },\n styleContext\n}) => {\n let classNames: ClassNames = [[styles.root, true]]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"quote-block\" className={makeClassName(classNames)}>\n <p dangerouslySetInnerHTML={{ __html: data }} />\n </div>\n )\n}\n","import React from 'react'\nimport { CardTitleProps } from './CardTitle.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport styles from './CardTitle.module.css'\n\nexport const CardTitle: React.FC<CardTitleProps> = ({\n block: {\n data: { only_on: onlyOn, index, text }\n },\n styleContext\n}) => {\n return (\n <div\n data-testid=\"card-title\"\n className={makeClassName([\n [styles.root, true],\n [styles[onlyOn], !!onlyOn],\n [styles[styleContext], !!styleContext && !!styles[styleContext]]\n ])}\n >\n <div className={styles.index}>{index}</div>\n <h3 className={styles.title}>{text}</h3>\n </div>\n )\n}\n","import React from 'react'\nimport { ChapterBlockProps } from './ChapterBlock.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport styles from './ChapterBlock.module.css'\n\nexport const ChapterBlock: React.FC<ChapterBlockProps> = ({\n block: { data, only_on: onlyOn },\n styleContext\n}) => {\n return (\n <div\n data-testid=\"chapter-block\"\n className={makeClassName([\n [styles.root, true],\n [styles[onlyOn], !!onlyOn]\n ])}\n >\n <div\n className={makeClassName([\n [styles.subtitle, true],\n [styles[styleContext], !!styleContext && !!styles[styleContext]]\n ])}\n dangerouslySetInnerHTML={{ __html: data }}\n />\n </div>\n )\n}\n","const generateGradient = (color: string, type: string): string => {\n const steps = {\n mediaBlockBottom: [\n [0, 7],\n [0.08, 12],\n [0.16, 17],\n [0.22, 21],\n [0.32, 26],\n [0.42, 32],\n [0.52, 38],\n [0.62, 47],\n [0.72, 57],\n [0.82, 65],\n [1, 82]\n ],\n mediaBlockTop: [\n [0.5, 0],\n [0, 97]\n ]\n }\n\n const gradient = steps[type].map((i) => `rgba(${color}, ${i[0]}) ${i[1]}%`)\n\n return `linear-gradient(-180deg, ${gradient})`\n}\n\nexport default generateGradient\n","import React from 'react'\nimport { SimpleTitleProps } from './SimpleTitle.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './SimpleTitle.module.css'\n\nexport const SimpleTitle: React.FC<SimpleTitleProps> = ({\n block: {\n data: { first },\n only_on: onlyOn\n },\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"simple-title\" className={makeClassName(classNames)}>\n {first}\n </div>\n )\n}\n","import React from 'react'\nimport { RichTitleProps } from './RichTitle.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './RichTitle.module.css'\n\nexport const RichTitle: React.FC<RichTitleProps> = ({\n block: {\n only_on: onlyOn,\n data: { featured, first, second, as: TagName = 'h1' }\n },\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true],\n [styles.featured, !!featured]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <TagName data-testid=\"rich-title\" className={makeClassName(classNames)}>\n {first}\n {second && <span> {second}</span>}\n </TagName>\n )\n}\n","import React from 'react'\nimport { SimpleBlockProps } from './SimpleBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './SimpleBlock.module.css'\n\nexport const SimpleBlock: React.FC<SimpleBlockProps> = ({\n block: { data, type, only_on: onlyOn },\n styleContext\n}) => {\n let TagName\n\n let classNames: ClassNames = [\n [styles[type], !!type && !!styles[type]],\n [styles[onlyOn], true]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n switch (type) {\n case 'context_p':\n case 'lead':\n case 'note_caption':\n case 'note_credit': {\n TagName = 'p'\n break\n }\n case 'lead_hr': {\n TagName = 'div'\n break\n }\n default:\n TagName = type\n }\n return (\n <TagName\n className={makeClassName(classNames)}\n dangerouslySetInnerHTML={{ __html: data }}\n />\n )\n}\n","import React from 'react'\nimport { ListBlockProps } from './ListBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './ListBlock.module.css'\n\nexport const ListBlock: React.FC<ListBlockProps> = ({\n block: { type, data, only_on: onlyOn },\n styleContext\n}) => {\n const TagName = type\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true],\n [styles[type], !!type && !!styles[type]]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <TagName className={makeClassName(classNames)} data-testid=\"list-block\">\n {data.map((item, index) => (\n <li key={index} dangerouslySetInnerHTML={{ __html: item }} />\n ))}\n </TagName>\n )\n}\n","import React from 'react'\nimport { RelatedBlockProps } from './RelatedBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './RelatedBlock.module.css'\n\nexport const RelatedBlock: React.FC<RelatedBlockProps> = ({\n block: {\n data: { title, related },\n only_on: onlyOn\n },\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"related-block\" className={makeClassName(classNames)}>\n <h3 className={styles.header}>{title}</h3>\n <ul className={styles.items}>\n {related.map((item, index) => (\n <li key={item.id || index} className={styles[item.layout]}>\n <a\n href={item.full_url || `/${item.url}`}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <span className={styles.first}>{item.title}</span>\n {item.second_title && ' '}\n {item.second_title && <span>{item.second_title}</span>}\n </a>\n </li>\n ))}\n </ul>\n </div>\n )\n}\n","import React from 'react'\nimport { SourceBlockProps } from './SourceBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './SourceBlock.module.css'\n\nexport const SourceBlock: React.FC<SourceBlockProps> = ({\n block: {\n only_on: onlyOn,\n data: { quote, origin, url }\n },\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <blockquote\n data-testid=\"source-block\"\n cite={url}\n className={makeClassName(classNames)}\n >\n <a\n className={styles.text}\n href={url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {quote.map((item, index) => (\n <p key={index} dangerouslySetInnerHTML={{ __html: item.data }} />\n ))}\n <footer>\n <cite className={styles.origin}>{origin}</cite>\n </footer>\n </a>\n </blockquote>\n )\n}\n","import React, { useState } from 'react'\nimport { SensitiveBlockProps } from './SensitiveBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport { EmbedBlockContainer } from '../EmbedBlock'\nimport { MediaCaption } from '../MediaCaption'\nimport { Button } from '../Button'\n\nimport styles from './SensitiveBlock.module.css'\n\nexport const SensitiveBlock: React.FC<SensitiveBlockProps> = ({\n block,\n block: { cc, caption, credit, blurred_image: blurredImage },\n block: {\n item: {\n data: { display }\n }\n },\n styleContext\n}) => {\n const [visible, isVisible] = useState(false)\n\n const handleClick = () => {\n isVisible(true)\n }\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles.visible, visible],\n [styles[display], display && styles[display]]\n ]\n\n let context = ['isInSensitiveBlock']\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n context = [...styleContext, 'isInSensitiveBlock']\n }\n\n return (\n <div data-testid=\"sensitive-block\" className={makeClassName(classNames)}>\n <div className={styles.container}>\n <div\n className={styles.overlay}\n style={{ backgroundImage: `url(${blurredImage})` }}\n >\n <div className={styles.content}>\n <p dangerouslySetInnerHTML={{ __html: block.title }} />\n\n <div className={styles.button}>\n <Button onClick={() => handleClick()} theme=\"light\">\n {block.button.text}\n </Button>\n </div>\n </div>\n </div>\n <div className={styles.media}>\n <EmbedBlockContainer block={block.item} styleContext={context} />\n </div>\n </div>\n\n {cc && (\n <figcaption className={styles.figcaption}>\n <MediaCaption\n credit={credit}\n caption={caption}\n styleContext={styleContext}\n />\n </figcaption>\n )}\n </div>\n )\n}\n","import React from 'react'\nimport { GroupedBlockProps } from './GroupedBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { SensitiveBlock } from '../SensitiveBlock'\nimport { EmbedBlockContainer } from '../EmbedBlock'\nimport { MediaCaption } from '../MediaCaption'\n\nimport styles from './GroupedBlock.module.css'\n\nexport const GroupedBlock: React.FC<GroupedBlockProps> = ({\n block,\n block: { only_on: onlyOn },\n styleContext\n}) => {\n const maxHeight = Math.min(\n ...block.data.map(\n (item) => (item.data && item.data.height) || item.item.data.height\n )\n )\n\n const normalizedBoxesWidth = block.data.map((item) => {\n const width = (item.data && item.data.width) || item.item.data.heigh\n const height = (item.data && item.data.height) || item.item.data.heigh\n return width / (height / maxHeight)\n })\n\n const sumWidth = normalizedBoxesWidth.reduce((sum, x) => sum + x)\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true],\n [styles.hasFigcaption, block.cc === 'default'],\n [styles[block.display], !!block.display && styles[block.display]]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"grouped-block\" className={makeClassName(classNames)}>\n <div className={styles.items}>\n {block.data.map((item, index) => {\n const percentWidth = (normalizedBoxesWidth[index] / sumWidth) * 100\n\n return (\n <div\n className={styles.item}\n key={item.id}\n style={{ width: `${percentWidth}%` }}\n >\n {item.type === 'sensitive' ? (\n <SensitiveBlock\n block={item}\n styleContext={['isInGroupedBlock']}\n />\n ) : (\n <EmbedBlockContainer\n block={item}\n styleContext={['isInGroupedBlock']}\n />\n )}\n </div>\n )\n })}\n </div>\n {block.cc && (\n <figcaption className={styles.figcaption}>\n <MediaCaption\n credit={block.credit}\n caption={block.caption}\n styleContext={styleContext}\n />\n </figcaption>\n )}\n </div>\n )\n}\n","import React from 'react'\nimport { MetaItemProps } from './MetaItem.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport styles from './MetaItem.module.css'\n\nexport const MetaItem: React.FC<MetaItemProps> = ({\n hasSource,\n type,\n children,\n bullets\n}) => {\n const classNames = [\n [styles.root, true],\n [styles[type], !!type && !!styles[type]],\n [styles.hasSource, !!hasSource],\n [styles.hasBullets, !!bullets]\n ]\n\n return (\n <div data-testid=\"meta-item\" className={makeClassName(classNames)}>\n {children}\n </div>\n )\n}\n","import React from 'react'\nimport { MetaItemLiveProps } from './MetaItemLive.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport styles from './MetaItemLive.module.css'\n\nexport const MetaItemLive: React.FC<MetaItemLiveProps> = ({\n theme = 'gold'\n}) => {\n const classNames = [\n [styles.root, true],\n [styles[theme], !!theme && styles[theme]]\n ]\n\n return (\n <div\n data-testid=\"meta-item-live\"\n data-meta=\"live\"\n className={makeClassName(classNames)}\n >\n <div className={styles.frame} />\n </div>\n )\n}\n","const pluralize = (\n number: number,\n one: string,\n two: string,\n five: string\n): string => {\n let n = Math.abs(number)\n n %= 100\n\n if (n >= 5 && n <= 20) {\n return five\n }\n\n n %= 10\n\n if (n === 1) {\n return one\n }\n\n if (n >= 2 && n <= 4) {\n return two\n }\n\n return five\n}\n\nexport default pluralize\n","import React from 'react'\nimport { DocumentItemsCountProps } from './DocumentItemsCount.types'\nimport pluralize from '../utils/pluralize'\n\nimport styles from './DocumentItemsCount.module.css'\n\nexport const DocumentItemsCount: React.FC<DocumentItemsCountProps> = ({\n type,\n lang = 'ru',\n items,\n children\n}) => {\n const i18n = {\n ru: {\n card: {\n one: 'карточка',\n two: 'карточки',\n five: 'карточек'\n },\n podcast: {\n one: 'эпизод',\n two: 'эпизода',\n five: 'эпизодов'\n }\n },\n en: {\n card: {\n one: 'card',\n two: 'cards',\n five: 'cards'\n },\n podcast: {\n one: 'episode',\n two: 'episodes',\n five: 'episodes'\n }\n }\n }\n\n const itemsCount = `${items} ${pluralize(\n items,\n i18n[lang][type].one,\n i18n[lang][type].two,\n i18n[lang][type].five\n )}`\n\n return (\n <div data-testid=\"document-items-count\" className={styles.root}>\n {children}\n <span className={styles.items}>{itemsCount}</span>\n </div>\n )\n}\n","import React from 'react'\nimport { toCamel } from '../utils/converCase'\n\nimport { MetaContainerProps } from './Meta.types'\nimport { Meta } from './'\nimport { MetaItem } from '../MetaItem'\nimport { MetaItemLive } from '../MetaItemLive'\nimport { DocumentItemsCount } from '../DocumentItemsCount'\nimport { BookmarkButton } from '../BookmarkButton'\nimport { Timestamp } from '../Timestamp'\nimport { SvgSymbol } from '../SvgSymbol'\n\nimport { TimestampProps } from '../Timestamp/Timestamp.types'\n\nimport styles from './Meta.module.css'\n\nexport const MetaContainer: React.FC<MetaContainerProps> = ({\n lang,\n block,\n isRead,\n isListened,\n bookmarkAction,\n isInBookmarks,\n block: {\n data: { components, theme }\n },\n styleContext\n}) => {\n const themeColor =\n styleContext && styleContext.indexOf('dark') !== -1 ? 'light' : 'unset'\n const isPodcast = styleContext && styleContext.indexOf('podcast') !== -1\n const isSlides = styleContext && styleContext.indexOf('slide') !== -1\n\n let context = []\n\n if (styleContext && Array.isArray(styleContext)) {\n context = styleContext.filter((item) => {\n return item !== 'dark'\n })\n }\n\n const hasSource = !!components.find((item) => item.type === 'source_name')\n\n return (\n <Meta\n styleContext={context}\n theme={theme || themeColor}\n onlyOn={block.only_on}\n hasSource={hasSource}\n >\n {components.map((component) => {\n switch (component.type) {\n case 'source_name': {\n return (\n <MetaItem hasSource={hasSource} bullets key={component.id}>\n <>\n {lang === 'ru' ? 'Источник: ' : 'Source: '}\n {component.url && (\n <a\n href={component.url}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n {component.text}\n </a>\n )}\n {!component.url && component.text}\n </>\n </MetaItem>\n )\n }\n case 'duration': {\n return (\n <MetaItem hasSource={hasSource} bullets key={component.id}>\n <>\n <SvgSymbol icon=\"podcast\" size=\"small\" />\n {component.text}\n </>\n </MetaItem>\n )\n }\n case 'datetime': {\n const format = ((component.format && toCamel(component.format)) ||\n 'date') as TimestampProps['type']\n\n return (\n <MetaItem\n hasSource={hasSource}\n bullets\n key={component.id}\n type=\"datetime\"\n >\n <Timestamp\n publishedAt={component.datetime}\n type={format || 'date'}\n locale={lang}\n />\n </MetaItem>\n )\n }\n\n case 'items_count': {\n return (\n <MetaItem hasSource={hasSource} bullets key={component.id}>\n <DocumentItemsCount\n items={component.count}\n type={isPodcast ? 'podcast' : 'card'}\n lang={lang}\n >\n <SvgSymbol icon=\"card\" size=\"unset\" />\n </DocumentItemsCount>\n </MetaItem>\n )\n }\n case 'broadcast_active': {\n return (\n <MetaItem hasSource={hasSource} bullets key={component.id}>\n <>\n <MetaItemLive /> Прямой эфир\n </>\n </MetaItem>\n )\n }\n case 'broadcast': {\n return (\n <MetaItem hasSource={hasSource} bullets key={component.id}>\n <>\n {component.with_icon && <MetaItemLive />}\n\n {component.label}\n </>\n </MetaItem>\n )\n }\n\n default: {\n return null\n }\n }\n })}\n {(isRead || isListened) && (\n <MetaItem\n hasSource={hasSource}\n bullets\n type={isListened ? 'listened' : 'read'}\n >\n <SvgSymbol icon={isListened ? 'listened' : 'read'} size=\"unset\" />\n </MetaItem>\n )}\n\n {isSlides && lang === 'ru' && (\n <div className={styles.bookmark}>\n <BookmarkButton\n isInBookmarks={isInBookmarks}\n onClick={(): void => bookmarkAction('bookmark', 'top')}\n />\n </div>\n )}\n </Meta>\n )\n}\n","import React from 'react'\nimport { RenderBlocksProps } from './RenderBlocks.types'\nimport { Tag } from '../Tag'\nimport { SimpleTitle } from '../SimpleTitle'\nimport { RichTitle } from '../RichTitle'\nimport { SimpleBlock } from '../SimpleBlock'\nimport { ListBlock } from '../ListBlock'\nimport { ChapterBlock } from '../ChapterBlock'\nimport { QuoteBlock } from '../QuoteBlock'\nimport { CardTitle } from '../CardTitle'\nimport { RelatedBlock } from '../RelatedBlock'\nimport { SourceBlock } from '../SourceBlock'\nimport { EmbedBlockContainer } from '../EmbedBlock'\nimport { GroupedBlock } from '../GroupedBlock'\nimport { MetaContainer } from '../Meta/MetaContainer'\nimport { Table } from '../Table'\nimport { MaterialNote } from '../MaterialNote'\nimport { SensitiveBlock } from '../SensitiveBlock'\n\nexport const RenderBlocks: React.FC<RenderBlocksProps> = ({\n block,\n styleContext,\n lang,\n isRead,\n isListened,\n bookmarkAction,\n isInBookmarks\n}) => {\n switch (block.type) {\n case 'tag': {\n return (\n <Tag\n size=\"large\"\n onlyOn={block.only_on}\n theme={block.data.theme}\n styleContext={styleContext}\n >\n {block.data.text}\n </Tag>\n )\n }\n\n case 'simple_title': {\n return <SimpleTitle block={block} styleContext={styleContext} />\n }\n\n case 'rich_title': {\n return <RichTitle block={block} styleContext={styleContext} />\n }\n\n case 'meta': {\n return (\n <MetaContainer\n block={block}\n lang={block.data.lang}\n styleContext={styleContext}\n isRead={isRead}\n isListened={isListened}\n isInBookmarks={isInBookmarks}\n bookmarkAction={bookmarkAction}\n />\n )\n }\n\n case 'h1':\n case 'h2':\n case 'h3':\n case 'h4':\n case 'blockquote':\n case 'p':\n case 'context_p':\n case 'lead':\n case 'lead_hr': {\n return <SimpleBlock block={block} styleContext={styleContext} />\n }\n\n case 'quote':\n return <QuoteBlock block={block} styleContext={styleContext} />\n\n case 'ol':\n case 'ul': {\n return <ListBlock block={block} styleContext={styleContext} />\n }\n\n case 'chapter-subtitle': {\n return <ChapterBlock block={block} styleContext={styleContext} />\n }\n\n case 'card_title': {\n return <CardTitle block={block} styleContext={styleContext} />\n }\n\n case 'related': {\n return <RelatedBlock block={block} styleContext={styleContext} />\n }\n\n case 'source':\n return <SourceBlock block={block} styleContext={styleContext} />\n\n case 'table':\n return <Table block={block} styleContext={styleContext} />\n\n case 'sensitive':\n return <SensitiveBlock block={block} styleContext={styleContext} />\n\n case 'embed':\n case 'embed_code':\n case 'game_embed':\n case 'image':\n case 'dots_on_image':\n case 'gif':\n return (\n <EmbedBlockContainer\n block={block}\n styleContext={styleContext}\n lang={lang}\n />\n )\n case 'grouped':\n return <GroupedBlock block={block} styleContext={styleContext} />\n\n case 'material_note':\n return <MaterialNote block={block} styleContext={styleContext} />\n\n default: {\n return null\n }\n }\n}\n","import React, { useState } from 'react'\nimport { CoverProps } from './Cover.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport generateGradient from '../utils/generateGradient'\nimport { RenderBlocks } from '../RenderBlocks'\nimport { MediaCaption } from '../MediaCaption'\nimport { Image } from '../Image'\nimport { Popover } from '../Popover'\n\nimport styles from './Cover.module.css'\n\nexport const Cover: React.FC<CoverProps> = ({\n block: {\n only_on: onlyOn,\n data: {\n blocks,\n cover: { credit, caption, urls, mobile_ratio: mobileRatio, gradients, cc }\n }\n },\n styleContext\n}) => {\n const [isPopoverShown, setIsPopoverShown] = useState(false)\n\n const style: React.CSSProperties = {}\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], !!onlyOn && !!styles[onlyOn]]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n if (gradients) {\n const theme = [gradients.text_rgb === '0,0,0' ? 'dark' : 'light']\n\n classNames = makeStyleContext(classNames, theme, styles)\n\n style.backgroundImage = generateGradient(gradients.bg_rgb, 'mediaBlockBottom')\n }\n\n const renderCC = (context?: string): JSX.Element => (\n <MediaCaption\n credit={credit}\n caption={caption}\n styleContext={context || styleContext}\n />\n )\n\n return (\n <div data-testid=\"cover\" className={makeClassName(classNames)}>\n <div className={styles.image}>\n <Image optimized={urls} ratio={mobileRatio} display=\"narrow\" />\n </div>\n <div className={styles.body} style={style}>\n {blocks.map((item) => (\n <RenderBlocks\n key={item.id}\n block={item}\n styleContext={styleContext}\n />\n ))}\n </div>\n {cc === 'button' && (\n <button\n className={styles.control}\n type=\"button\"\n aria-label=\"Open\"\n onClick={(): void => {\n setIsPopoverShown(!isPopoverShown)\n }}\n />\n )}\n\n {cc === 'button' && isPopoverShown && (\n <Popover\n onClose={(): void => {\n setIsPopoverShown(false)\n }}\n >\n {renderCC('isInPopover')}\n </Popover>\n )}\n </div>\n )\n}\n","import React from 'react'\nimport { HalfBlockProps } from './HalfBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { RenderBlocks } from '../RenderBlocks'\nimport { Image } from '../Image'\nimport { MediaCaption } from '../MediaCaption'\n\nimport styles from './HalfBlock.module.css'\n\nexport const HalfBlock: React.FC<HalfBlockProps> = ({\n block: {\n only_on: onlyOn,\n data,\n data: {\n cover: { optimized, ratio, credit, caption }\n }\n },\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"half-block\" className={makeClassName(classNames)}>\n <div className={styles.main}>\n <div className={styles.image}>\n <Image optimized={optimized} ratio={ratio} display=\"super_full\" />\n </div>\n <div className={styles.body}>\n {data.blocks.map((item) => (\n <RenderBlocks key={item.id} block={item} styleContext={['rich']} />\n ))}\n </div>\n </div>\n <div className={styles.footer}>\n <MediaCaption\n credit={credit}\n caption={caption}\n styleContext={styleContext}\n />\n </div>\n </div>\n )\n}\n","import React from 'react'\nimport { ImportantLeadProps } from './ImportantLead.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { RenderBlocks } from '../RenderBlocks'\n\nimport styles from './ImportantLead.module.css'\n\nexport const ImportantLead: React.FC<ImportantLeadProps> = ({\n block: { only_on: onlyOn, data },\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], !!onlyOn]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"important-lead\" className={makeClassName(classNames)}>\n {data.map((item) => (\n <RenderBlocks\n key={item.id}\n block={item}\n styleContext=\"isInImportantLead\"\n />\n ))}\n </div>\n )\n}\n","import React, { useState, useRef } from 'react'\nimport { SpoilerProps } from './Spoiler.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport postMessage from '../utils/postMessage'\nimport { RenderBlocks } from '../RenderBlocks'\nimport { Button } from '../Button'\nimport { SvgSymbol } from '../SvgSymbol'\n\nimport styles from './Spoiler.module.css'\n\nexport const Spoiler: React.FC<SpoilerProps> = ({\n block: {\n display,\n button,\n only_on: onlyOn,\n btn_title: buttonTitle,\n title,\n blocks\n },\n styleContext\n}) => {\n const [spoiled, setSpoiled] = useState(false)\n const ref = useRef(null)\n\n const handleButtonClick = (): void => {\n setSpoiled(!spoiled)\n\n if (spoiled) {\n postMessage('', 'closeSpoiler', 'click')\n const rect = ref.current.getBoundingClientRect()\n if (rect.top < 0) {\n ref.current.scrollIntoView({ behavior: 'smooth' })\n }\n } else {\n postMessage('', 'openSpoiler', 'click')\n }\n }\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], !!onlyOn],\n [styles[display], !!display && styles[display]],\n [[styles.spoiled], !!spoiled]\n ]\n\n const context = ['center']\n\n if (styleContext) {\n context.concat(styleContext)\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n const buttonCollapse = button ? button.collapse : 'Свернуть'\n const buttonExpande = button ? button.expand : buttonTitle\n\n return (\n <div ref={ref} className={makeClassName(classNames)} data-testid=\"spoiler\">\n <div className={styles.header}>{title && <h3>{title}</h3>}</div>\n <div className={styles.body}>\n {blocks.map((item) => (\n <RenderBlocks key={item.id} block={item} styleContext={context} />\n ))}\n </div>\n <div className={styles.footer}>\n <Button\n size=\"default\"\n theme=\"gray\"\n onClick={(): void => handleButtonClick()}\n styleContext=\"isInSpoiler\"\n >\n {spoiled ? buttonCollapse : buttonExpande}\n <SvgSymbol icon=\"arrow\" />\n </Button>\n </div>\n </div>\n )\n}\n","/* eslint-disable react/jsx-no-target-blank */\nimport React, { useEffect } from 'react'\nimport { useInView } from 'react-intersection-observer'\nimport { RelatedRichBlockProps } from './RelatedRichBlock.types'\n\nimport postMessage from '../utils/postMessage'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport generateGradient from '../utils/generateGradient'\nimport { toCapitalize } from '../utils/converCase'\n\nimport { Tag } from '../Tag'\nimport { RenderBlocks } from '../RenderBlocks'\nimport { Image } from '../Image'\n\nimport styles from './RelatedRichBlock.module.css'\n\nexport const RelatedRichBlock: React.FC<RelatedRichBlockProps> = ({\n block: {\n only_on: onlyOn,\n data: {\n blocks,\n url,\n cover: { urls, gradients, tag, layout, ratio }\n }\n },\n styleContext\n}) => {\n const style: React.CSSProperties = {}\n const styleHeader: React.CSSProperties = {}\n\n const cardType = `is${toCapitalize(layout)}`\n\n const [ref, inView] = useInView({\n threshold: 0,\n triggerOnce: true\n })\n\n useEffect(() => {\n if (inView) {\n if (\n (onlyOn === 'mobile' && window.innerWidth <= 511) ||\n (onlyOn === 'desktop' && window.innerWidth >= 512) ||\n !onlyOn\n ) {\n postMessage('richRelated', url, 'view')\n }\n }\n }, [inView])\n\n const handleClick = () => {\n postMessage('richRelated', url, 'click')\n }\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[cardType], !!layout && !!styles[cardType]],\n [styles.hasGradient, !!gradients],\n [styles[onlyOn], !!onlyOn && !!styles[onlyOn]]\n ]\n\n let context = ['isInMediaBlock']\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n\n context = [...styleContext, 'isInMediaBlock']\n }\n\n if (gradients) {\n styleHeader.backgroundImage = generateGradient(\n gradients.bg_rgb,\n 'mediaBlockTop'\n )\n\n const theme = [gradients.text_rgb === '0,0,0' ? 'dark' : 'light']\n classNames = makeStyleContext(classNames, theme, styles)\n\n if (onlyOn === 'desktop') {\n style.backgroundImage = generateGradient(\n gradients.bg_rgb,\n 'mediaBlockBottom'\n )\n }\n }\n\n return (\n <a\n data-testid=\"related-rich-block\"\n className={makeClassName(classNames)}\n href={`/${url}`}\n target=\"_blank\"\n onClick={(): void => handleClick()}\n ref={ref}\n >\n {layout === 'rich' && (\n <>\n <div className={styles.overlay} style={style} />\n <div className={styles.overlayHeader} style={styleHeader} />\n </>\n )}\n\n <div className={styles.tag}>\n <Tag size=\"small\" theme=\"inherit\" styleContext=\"richRelated\">\n {tag}\n </Tag>\n </div>\n <div className={styles.cover}>\n <div className={styles.picture}>\n <Image optimized={urls} ratio={ratio} display=\"narrow\" />\n </div>\n </div>\n <div className={styles.body}>\n {blocks.map((item) => (\n <RenderBlocks key={item.id} block={item} styleContext={context} />\n ))}\n </div>\n </a>\n )\n}\n","import React from 'react'\nimport { RawHtmlBlockProps } from './RawHtmlBlock.types'\nimport { ImportantLead } from '../ImportantLead'\nimport { RenderBlocks } from '../RenderBlocks'\nimport { Spoiler } from '../Spoiler'\nimport { HalfBlock } from '../HalfBlock'\nimport { Cover } from '../Cover'\nimport { RelatedRichBlock } from '../RelatedRichBlock'\nimport { BlockProvider } from '../utils/BlockContext'\n\nexport const RawHtmlBlock: React.FC<RawHtmlBlockProps> = ({\n block,\n styleContext,\n isRead,\n isListened,\n isInBookmarks,\n bookmarkAction,\n lightBox\n}) => {\n const context = {\n lightBox: lightBox || null\n }\n\n switch (block.type) {\n case 'important_lead': {\n return <ImportantLead block={block} styleContext={styleContext} />\n }\n\n case 'spoiler': {\n return (\n <BlockProvider value={context}>\n <Spoiler block={block} styleContext={styleContext} />\n </BlockProvider>\n )\n }\n\n case 'cover': {\n return <Cover block={block} styleContext={styleContext} />\n }\n\n case 'half': {\n return <HalfBlock block={block} styleContext={styleContext} />\n }\n\n case 'related_rich': {\n return <RelatedRichBlock block={block} styleContext={styleContext} />\n }\n\n default: {\n return (\n <BlockProvider value={context}>\n <RenderBlocks\n block={block}\n styleContext={styleContext}\n isRead={isRead}\n isListened={isListened}\n isInBookmarks={isInBookmarks}\n bookmarkAction={bookmarkAction}\n />\n </BlockProvider>\n )\n }\n }\n}\n","import React from 'react'\nimport { ToolbarButtonProps } from './ToolbarButton.types'\nimport { SvgSymbol } from '../SvgSymbol/'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport styles from './ToolbarButton.module.css'\n\nexport const ToolbarButton: React.FC<ToolbarButtonProps> = ({\n children,\n type,\n theme,\n isActive,\n onClick\n}) => {\n const classNames: ClassNames = [\n [styles.root, true],\n [styles[type], !!styles[type]],\n [styles[theme], !!styles[theme] && !!theme],\n [styles.isActive, !!isActive]\n ]\n\n return (\n <button\n data-testid=\"toolbar-button\"\n className={makeClassName(classNames)}\n type=\"button\"\n onClick={(): void => onClick(type)}\n >\n <SvgSymbol size=\"medium\" icon={type} styleContext=\"isInToolbar\" />\n {children && <span className={styles.text}>{children}</span>}\n </button>\n )\n}\n"],"names":["makeClassName","list","filter","active","map","className","join","Loader","React","width","height","viewBox","xmlns","d","opacity","fillRule","attributeName","type","from","to","dur","repeatCount","Button","theme","size","state","styleContext","disabled","onClick","children","handleClick","styles","root","loader","icons","meduzaLogo","content","menu","fb","tw","vk","ok","tg","meduzaSymbol","backward","forward","download","play","pause","speedHalf","speedOne","speedOneHalf","speedTwo","podcastBookmark","reaction","cross","link","search","card","podcast","arrow","brent","user","bookmark","receipt","read","listened","SvgSymbol","icon","data","xmlnsXlink","dangerouslySetInnerHTML","__html","Switcher","enabled","childrenPosition","onChange","left","input","checked","control","knob","right","BlockContext","createContext","lightBox","BlockProvider","Provider","window","innerWidth","document","documentElement","clientWidth","body","innerHeight","clientHeight","POST_MESSAGE_PREFIX","postMessage","category","element","action","target","top","msg","JSON","stringify","MediaQuerySizes","MOBILE","PORTRAIT_TABLET","LANDSCAPE_TABLET","DESKTOP","WIDE_DESKTOP","imageBreakpoints","imageConditionalKeys","xs","superFull","full","narrow","Lazy","threshold","useInView","ref","inView","entry","useState","visible","setVisible","useEffect","boundingClientRect","y","toCamel","s","replace","str","toUpperCase","toCapitalize","slice","RenderPicture","source","fallbackSource","optimized","alt","display","onLoad","fallback","setFallback","HTMLPictureElement","keys","media","srcSet","w325","original","key","breakpoint","Fragment","src","Image","lazy","fullscreen","ratio","useContext","isLoaded","setIsLoaded","viewportSize","viewportWidth","disableFullscreenDesktop","desktop","disableFullscreenMobile","mobile","show","blockStyles","maxWidth","pictureStyles","paddingBottom","style","wrapper","onKeyPress","role","tabIndex","Popover","onClose","handleClose","setTimeout","handleScroll","escFunction","event","dataset","popover","addEventListener","removeAttribute","removeEventListener","overlay","container","dismiss","background","id","x","fill","overflow","transform","mask","Footnote","DotsOnImage","block","credit","dots","setRatio","useRef","title","setPopover","defaultWidth","handleClickOutside","setDotSize","path","composedPath","indexOf","current","handleDotClick","dot","shouldShow","side","position","align","isVisible","marker","isActive","backgroundColor","color","svg_string","number","makeStyleContext","classNames","context","Array","isArray","ctx","concat","Tag","correlation","onlyOn","MediaCaption","caption","Table","rows","options","columnsWidth","columns_widths","tableCredit","table_credit","colors","table","tracks","row","i","cells","cell","j","header","fixedColumn","fixed_first_column","val","MaterialNote","item","BookmarkButton","isInBookmarks","Primary","primary","Secondary","secondary","MaterialTitle","Menu","Dropdown","Toolbar","renderItems","Children","index","props","cloneElement","Meta","hasSource","Timestamp","publishedAt","locale","published","timeFormat","preparedPublishedAt","dayjs","extend","relativeTime","fromNow","format","Error","DangerousHTML","tagName","TagName","html","canRenderHtml","setCanRenderHtml","replaceScriptElementsRecursive","useCallback","node","script","createElement","Math","random","toString","innerHTML","attrs","attributes","length","name","value","setAttribute","parentElement","replaceChild","childNodes","prepareAnchors","anchors","querySelectorAll","forEach","a","firstElementChild","EmbedGif","gif","mp4Url","videoFrozen","setVideoFrozen","videoElem","handleVideoTouch","handleVideoError","video","enableInlineVideo","figure","objectWrap","playsInline","muted","loop","autoPlay","preload","EmbedBlock","only_on","provider","cc","small","small_url","large","large_url","gifUrl","gif_url","mp4_url","isPopoverShown","setIsPopoverShown","isProportional","fullWidthProviders","mobileFullwidth","renderCC","renderEmbed","gameEmbed","game_src","game_id","object","proportional","filteredContext","startsWith","reduce","acc","push","IframeBlock","lang","renderIframe","rootEl","contentEl","scriptEl","range","createRange","setStart","textContent","appendChild","createContextualFragment","frame","querySelector","contentDocument","open","close","EmbedBlockContainer","wrap_with_iframe","QuoteBlock","CardTitle","text","ChapterBlock","subtitle","generateGradient","steps","mediaBlockBottom","mediaBlockTop","gradient","SimpleTitle","first","RichTitle","featured","second","as","SimpleBlock","ListBlock","RelatedBlock","related","items","layout","href","full_url","url","rel","second_title","SourceBlock","quote","origin","cite","SensitiveBlock","blurredImage","blurred_image","backgroundImage","button","figcaption","GroupedBlock","maxHeight","min","normalizedBoxesWidth","heigh","sumWidth","sum","hasFigcaption","percentWidth","MetaItem","bullets","hasBullets","MetaItemLive","pluralize","one","two","five","n","abs","DocumentItemsCount","i18n","ru","en","itemsCount","MetaContainer","isRead","isListened","bookmarkAction","components","themeColor","isPodcast","isSlides","find","component","datetime","count","with_icon","label","RenderBlocks","Cover","blocks","cover","urls","mobileRatio","mobile_ratio","gradients","text_rgb","bg_rgb","image","HalfBlock","main","footer","ImportantLead","Spoiler","buttonTitle","btn_title","spoiled","setSpoiled","handleButtonClick","rect","getBoundingClientRect","scrollIntoView","behavior","buttonCollapse","collapse","buttonExpande","expand","RelatedRichBlock","tag","styleHeader","cardType","triggerOnce","hasGradient","overlayHeader","picture","RawHtmlBlock","ToolbarButton"],"mappings":";;;;;;;;;;;;;;AAEO,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CAACC,IAAD;AAC3B,SAAOA,IAAI,CACRC,MADI,CACG;AAAA,QAAIC,MAAJ;AAAA,WAAgBA,MAAhB;AAAA,GADH,EAEJC,GAFI,CAEA;AAAA,QAAEC,SAAF;AAAA,WAAiBA,SAAjB;AAAA,GAFA,EAGJC,IAHI,CAGC,GAHD,CAAP;AAID,CALM;;ACAP,IAAMC,MAAM,GAAa,SAAnBA,MAAmB;AAAA,SACvBC,4BAAA,MAAA;AACEC,IAAAA,KAAK,EAAC;AACNC,IAAAA,MAAM,EAAC;AACPC,IAAAA,OAAO,EAAC;AACRC,IAAAA,KAAK,EAAC;GAJR,EAMEJ,4BAAA,IAAA,MAAA,EACEA,4BAAA,OAAA;AACEK,IAAAA,CAAC,EAAC;AACFC,IAAAA,OAAO,EAAC;GAFV,CADF,CANF,EAYEN,4BAAA,IAAA;AAAGO,IAAAA,QAAQ,EAAC;GAAZ,EACEP,4BAAA,mBAAA;AACEQ,IAAAA,aAAa,EAAC;AACdC,IAAAA,IAAI,EAAC;AACLC,IAAAA,IAAI,EAAC;AACLC,IAAAA,EAAE,EAAC;AACHC,IAAAA,GAAG,EAAC;AACJC,IAAAA,WAAW,EAAC;GANd,CADF,EASEb,4BAAA,OAAA;AAAMK,IAAAA,CAAC,EAAC;GAAR,CATF,CAZF,CADuB;AAAA,CAAzB;;;;ICKaS,MAAM,GAAoB,SAA1BA,MAA0B;wBACrCC;MAAAA,gCAAQ;uBACRC;MAAAA,8BAAO;wBACPC;MAAAA,gCAAQ;+BACRC;MAAAA,8CAAe;2BACfC;MAAAA,sCAAW;MACXC,eAAAA;MACAC,gBAAAA;;AAEA,MAAMC,WAAW,GAAG,SAAdA,WAAc;AAClB,QAAIH,QAAQ,IAAI,CAACC,OAAjB,EAA0B;AACxB;AACD;;AAEDA,IAAAA,OAAO;AACR,GAND;;AAQA,SACEpB,4BAAA,SAAA;mBACc;AACZH,IAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,MAAM,CAACC,IAAR,EAAc,IAAd,CADuB,EAEvB,CAACD,MAAM,CAACP,IAAD,CAAP,EAAe,CAAC,CAACA,IAAjB,CAFuB,EAGvB,CAACO,MAAM,CAACR,KAAD,CAAP,EAAgB,CAAC,CAACA,KAAlB,CAHuB,EAIvB,CAACQ,MAAM,CAACN,KAAD,CAAP,EAAgB,CAAC,CAACA,KAAF,IAAW,CAAC,CAACM,MAAM,CAACN,KAAD,CAAnC,CAJuB,EAKvB,CAACM,MAAM,CAACL,YAAD,CAAP,EAAuB,CAAC,CAACA,YAAzB,CALuB,CAAD;AAOxBC,IAAAA,QAAQ,EAAEA;AACVC,IAAAA,OAAO,EAAEE;AACTb,IAAAA,IAAI,EAAC;GAXP,EAaGQ,KAAK,KAAK,WAAV,GACCjB,4BAAA,OAAA;AAAMH,IAAAA,SAAS,EAAE0B,MAAM,CAACE;GAAxB,EACEzB,4BAAA,CAACD,MAAD,MAAA,CADF,CADD,GAKCsB,QAlBJ,CADF;AAuBD,CAxCM;;ACPA,IAAMK,KAAK,GAAG;AACnBC,EAAAA,UAAU,EAAE;AACV1B,IAAAA,KAAK,EAAE,GADG;AAEVC,IAAAA,MAAM,EAAE,GAFE;AAGV0B,IAAAA,OAAO,EACL;AAJQ,GADO;AAQnBC,EAAAA,IAAI,EAAE;AACJ5B,IAAAA,KAAK,EAAE,EADH;AAEJC,IAAAA,MAAM,EAAE,EAFJ;AAGJ0B,IAAAA,OAAO,EACL;AAJE,GARa;AAenBE,EAAAA,EAAE,EAAE;AACF7B,IAAAA,KAAK,EAAE,EADL;AAEFC,IAAAA,MAAM,EAAE,EAFN;AAGF0B,IAAAA,OAAO,EACL;AAJA,GAfe;AAsBnBG,EAAAA,EAAE,EAAE;AACF9B,IAAAA,KAAK,EAAE,EADL;AAEFC,IAAAA,MAAM,EAAE,EAFN;AAGF0B,IAAAA,OAAO,EACL;AAJA,GAtBe;AA6BnBI,EAAAA,EAAE,EAAE;AACF/B,IAAAA,KAAK,EAAE,EADL;AAEFC,IAAAA,MAAM,EAAE,EAFN;AAGF0B,IAAAA,OAAO,EACL;AAJA,GA7Be;AAoCnBK,EAAAA,EAAE,EAAE;AACFhC,IAAAA,KAAK,EAAE,CADL;AAEFC,IAAAA,MAAM,EAAE,EAFN;AAGF0B,IAAAA,OAAO,EACL;AAJA,GApCe;AA2CnBM,EAAAA,EAAE,EAAE;AACFjC,IAAAA,KAAK,EAAE,EADL;AAEFC,IAAAA,MAAM,EAAE,EAFN;AAGF0B,IAAAA,OAAO,EACL;AAJA,GA3Ce;AAkDnBO,EAAAA,YAAY,EAAE;AACZlC,IAAAA,KAAK,EAAE,EADK;AAEZC,IAAAA,MAAM,EAAE,EAFI;AAGZ0B,IAAAA,OAAO,EACL;AAJU,GAlDK;AAyDnBQ,EAAAA,QAAQ,EAAE;AACRnC,IAAAA,KAAK,EAAE,EADC;AAERC,IAAAA,MAAM,EAAE,EAFA;AAGR0B,IAAAA,OAAO,EACL;AAJM,GAzDS;AAgEnBS,EAAAA,OAAO,EAAE;AACPpC,IAAAA,KAAK,EAAE,EADA;AAEPC,IAAAA,MAAM,EAAE,EAFD;AAGP0B,IAAAA,OAAO,EACL;AAJK,GAhEU;AAuEnBU,EAAAA,QAAQ,EAAE;AACRrC,IAAAA,KAAK,EAAE,EADC;AAERC,IAAAA,MAAM,EAAE,EAFA;AAGR0B,IAAAA,OAAO,EACL;AAJM,GAvES;AA8EnBW,EAAAA,IAAI,EAAE;AACJtC,IAAAA,KAAK,EAAE,EADH;AAEJC,IAAAA,MAAM,EAAE,EAFJ;AAGJ0B,IAAAA,OAAO,EACL;AAJE,GA9Ea;AAqFnBY,EAAAA,KAAK,EAAE;AACLvC,IAAAA,KAAK,EAAE,EADF;AAELC,IAAAA,MAAM,EAAE,EAFH;AAGL0B,IAAAA,OAAO,EACL;AAJG,GArFY;AA4FnBa,EAAAA,SAAS,EAAE;AACTxC,IAAAA,KAAK,EAAE,EADE;AAETC,IAAAA,MAAM,EAAE,EAFC;AAGT0B,IAAAA,OAAO,EACL;AAJO,GA5FQ;AAmGnBc,EAAAA,QAAQ,EAAE;AACRzC,IAAAA,KAAK,EAAE,EADC;AAERC,IAAAA,MAAM,EAAE,EAFA;AAGR0B,IAAAA,OAAO,EACL;AAJM,GAnGS;AA0GnBe,EAAAA,YAAY,EAAE;AACZ1C,IAAAA,KAAK,EAAE,EADK;AAEZC,IAAAA,MAAM,EAAE,EAFI;AAGZ0B,IAAAA,OAAO,EACL;AAJU,GA1GK;AAiHnBgB,EAAAA,QAAQ,EAAE;AACR3C,IAAAA,KAAK,EAAE,EADC;AAERC,IAAAA,MAAM,EAAE,EAFA;AAGR0B,IAAAA,OAAO,EACL;AAJM,GAjHS;AAwHnBiB,EAAAA,eAAe,EAAE;AACf5C,IAAAA,KAAK,EAAE,EADQ;AAEfC,IAAAA,MAAM,EAAE,EAFO;AAGf0B,IAAAA,OAAO,EACL;AAJa,GAxHE;AA+HnBkB,EAAAA,QAAQ,EAAE;AACR7C,IAAAA,KAAK,EAAE,EADC;AAERC,IAAAA,MAAM,EAAE,EAFA;AAGR0B,IAAAA,OAAO,EACL;AAJM,GA/HS;AAsInBmB,EAAAA,KAAK,EAAE;AACL9C,IAAAA,KAAK,EAAE,EADF;AAELC,IAAAA,MAAM,EAAE,EAFH;AAGL0B,IAAAA,OAAO,EACL;AAJG,GAtIY;AA6InBoB,EAAAA,IAAI,EAAE;AACJ/C,IAAAA,KAAK,EAAE,EADH;AAEJC,IAAAA,MAAM,EAAE,EAFJ;AAGJ0B,IAAAA,OAAO,EACL;AAJE,GA7Ia;AAoJnBqB,EAAAA,MAAM,EAAE;AACNhD,IAAAA,KAAK,EAAE,EADD;AAENC,IAAAA,MAAM,EAAE,EAFF;AAGN0B,IAAAA,OAAO,EACL;AAJI,GApJW;AA2JnBsB,EAAAA,IAAI,EAAE;AACJjD,IAAAA,KAAK,EAAE,EADH;AAEJC,IAAAA,MAAM,EAAE,EAFJ;AAGJ0B,IAAAA,OAAO,EACL;AAJE,GA3Ja;AAkKnBuB,EAAAA,OAAO,EAAE;AACPlD,IAAAA,KAAK,EAAE,EADA;AAEPC,IAAAA,MAAM,EAAE,EAFD;AAGP0B,IAAAA,OAAO,EACL;AAJK,GAlKU;AAyKnBwB,EAAAA,KAAK,EAAE;AACLnD,IAAAA,KAAK,EAAE,EADF;AAELC,IAAAA,MAAM,EAAE,EAFH;AAGL0B,IAAAA,OAAO,EACL;AAJG,GAzKY;AAgLnByB,EAAAA,KAAK,EAAE;AACLpD,IAAAA,KAAK,EAAE,CADF;AAELC,IAAAA,MAAM,EAAE,EAFH;AAGL0B,IAAAA,OAAO,EACL;AAJG,GAhLY;AAuLnB0B,EAAAA,IAAI,EAAE;AACJrD,IAAAA,KAAK,EAAE,EADH;AAEJC,IAAAA,MAAM,EAAE,EAFJ;AAGJ0B,IAAAA,OAAO,EACL;AAJE,GAvLa;AA8LnB2B,EAAAA,QAAQ,EAAE;AACRtD,IAAAA,KAAK,EAAE,EADC;AAERC,IAAAA,MAAM,EAAE,EAFA;AAGR0B,IAAAA,OAAO,EACL;AAJM,GA9LS;AAqMnB4B,EAAAA,OAAO,EAAE;AACPvD,IAAAA,KAAK,EAAE,EADA;AAEPC,IAAAA,MAAM,EAAE,EAFD;AAGP0B,IAAAA,OAAO,EACL;AAJK,GArMU;AA4MnB6B,EAAAA,IAAI,EAAE;AACJxD,IAAAA,KAAK,EAAE,EADH;AAEJC,IAAAA,MAAM,EAAE,EAFJ;AAGJ0B,IAAAA,OAAO,EACL;AAJE,GA5Ma;AAkNnB8B,EAAAA,QAAQ,EAAE;AACRzD,IAAAA,KAAK,EAAE,EADC;AAERC,IAAAA,MAAM,EAAE,EAFA;AAGR0B,IAAAA,OAAO,EACL;AAJM;AAlNS,CAAd;;;;ICOM+B,SAAS,GAA6B,SAAtCA,SAAsC;MACjDC,YAAAA;MACA5C,YAAAA;MACAE,oBAAAA;AAEA,MAAM2C,IAAI,GAAGnC,KAAK,CAACkC,IAAD,CAAlB;AAEA,SACE5D,4BAAA,MAAA;mBACc;AACZI,IAAAA,KAAK,EAAC;AACN0D,IAAAA,UAAU,EAAC;AACXjE,IAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAACC,IAAR,EAAc,IAAd,CADuB,EAEvB,CAACD,QAAM,CAACP,IAAD,CAAP,EAAe,CAAC,CAACO,QAAM,CAACP,IAAD,CAAvB,CAFuB,EAGvB,CAACO,QAAM,CAACqC,IAAD,CAAP,EAAe,CAAC,CAACrC,QAAM,CAACqC,IAAD,CAAvB,CAHuB,EAIvB,CAACrC,QAAM,CAACL,YAAD,CAAP,EAAuB,CAAC,CAACK,QAAM,CAACL,YAAD,CAA/B,CAJuB,CAAD;AAMxBjB,IAAAA,KAAK,EAAE4D,IAAI,CAAC5D;AACZC,IAAAA,MAAM,EAAE2D,IAAI,CAAC3D;AACbC,IAAAA,OAAO,WAAS0D,IAAI,CAAC5D,KAAd,SAAuB4D,IAAI,CAAC3D;AACnC6D,IAAAA,uBAAuB,EAAE;AAAEC,MAAAA,MAAM,EAAEH,IAAI,CAACjC;AAAf;GAb3B,CADF;AAiBD,CAxBM;;;;ICFMqC,QAAQ,GAA4B,SAApCA,QAAoC;AAAA,MAC/CC,OAD+C,QAC/CA,OAD+C;AAAA,MAE/C7C,QAF+C,QAE/CA,QAF+C;AAAA,mCAG/C8C,gBAH+C;AAAA,MAG/CA,gBAH+C,sCAG5B,MAH4B;AAAA,MAI/CC,QAJ+C,QAI/CA,QAJ+C;AAAA,MAK/ClD,YAL+C,QAK/CA,YAL+C;AAAA,wBAM/CH,KAN+C;AAAA,MAM/CA,KAN+C,2BAMvC,OANuC;AAAA,SAQ/Cf,4BAAA,QAAA;mBACc;AACZH,IAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAACC,IAAR,EAAc,IAAd,CADuB,EAEvB,CAACD,QAAM,CAACR,KAAD,CAAP,EAAgB,CAAC,CAACQ,QAAM,CAACR,KAAD,CAAxB,CAFuB,EAGvB,CAACQ,QAAM,CAACL,YAAD,CAAP,EAAuB,CAAC,CAACK,QAAM,CAACL,YAAD,CAA/B,CAHuB,CAAD;GAF1B,EAQGG,QAAQ,IAAI8C,gBAAgB,KAAK,MAAjC,IACCnE,4BAAA,MAAA;AACEH,IAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAACF,QAAR,EAAkB,IAAlB,CADuB,EAEvB,CAACE,QAAM,CAAC8C,IAAR,EAAc,IAAd,CAFuB,CAAD;GAD1B,EAMGhD,QANH,CATJ,EAkBErB,4BAAA,QAAA;AACEH,IAAAA,SAAS,EAAE0B,QAAM,CAAC+C;AAClB7D,IAAAA,IAAI,EAAC;AACL8D,IAAAA,OAAO,EAAEL;AACTE,IAAAA,QAAQ,EAAEA;GAJZ,CAlBF,EAwBEpE,4BAAA,OAAA;AAAMH,IAAAA,SAAS,EAAE0B,QAAM,CAACiD;GAAxB,EACExE,4BAAA,OAAA;AAAMH,IAAAA,SAAS,EAAE0B,QAAM,CAACkD;GAAxB,CADF,CAxBF,EA2BGpD,QAAQ,IAAI8C,gBAAgB,KAAK,OAAjC,IACCnE,4BAAA,MAAA;AACEH,IAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAACF,QAAR,EAAkB,IAAlB,CADuB,EAEvB,CAACE,QAAM,CAACmD,KAAR,EAAe,IAAf,CAFuB,CAAD;GAD1B,EAMGrD,QANH,CA5BJ,CAR+C;AAAA,CAA1C;;ACHP,IAAMsD,YAAY,gBAAG3E,cAAK,CAAC4E,aAAN,CAAoB;AAAEC,EAAAA,QAAQ,EAAE;AAAZ,CAApB,CAArB;AAEA,AAAO,IAAMC,aAAa,GAAGH,YAAY,CAACI,QAAnC;;ACCP,oBAAe;AAAA,SAAqB;AAClC9E,IAAAA,KAAK,EACH+E,MAAM,CAACC,UAAP,IACAC,QAAQ,CAACC,eAAT,CAAyBC,WADzB,IAEAF,QAAQ,CAACG,IAAT,CAAcD,WAJkB;AAKlClF,IAAAA,MAAM,EACJ8E,MAAM,CAACM,WAAP,IACAJ,QAAQ,CAACC,eAAT,CAAyBI,YADzB,IAEAL,QAAQ,CAACG,IAAT,CAAcE;AARkB,GAArB;AAAA,CAAf;;ACLA,IAAMC,mBAAmB,GAAG,WAA5B;;AAEA,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAClBC,QADkB,EAElBC,OAFkB,EAGlBC,MAHkB;AAKlB,MAAMC,MAAM,GAAGb,MAAM,CAACc,GAAtB;AAEA,MAAMC,GAAG,GAAMP,mBAAN,SAA6BQ,IAAI,CAACC,SAAL,CAAe;AACnDP,IAAAA,QAAQ,EAARA,QADmD;AAEnDC,IAAAA,OAAO,EAAPA,OAFmD;AAGnDC,IAAAA,MAAM,EAANA;AAHmD,GAAf,CAAtC;;AAMA,MAAI,OAAOC,MAAP,KAAkB,WAAtB,EAAmC;AACjCA,IAAAA,MAAM,CAACJ,WAAP,CAAmBM,GAAnB,EAAwB,GAAxB;AACD;AACF,CAhBD;;ACFO,IAAMG,eAAe,GAAG;AAC7BC,EAAAA,MAAM,EAAE,GADqB;AAE7BC,EAAAA,eAAe,EAAE,GAFY;AAG7BC,EAAAA,gBAAgB,EAAE,IAHW;AAI7BC,EAAAA,OAAO,EAAE,IAJoB;AAK7BC,EAAAA,YAAY,EAAE;AALe,CAAxB;AAQP,AAAO,IAAMC,gBAAgB,GAAG;AAC9B,OAAK,gBADyB;AAE9B,OAAK,oBAFyB;AAG9B,OAAK,oBAHyB;AAI9B,OAAK,oBAJyB;AAK9B,OAAK,qBALyB;AAM9B,QAAM;AANwB,CAAzB;AASP,AAAO,IAAMC,oBAAoB,GAAG;AAClCC,EAAAA,EAAE,EAAE,CAAC,GAAD,CAD8B;AAElCC,EAAAA,SAAS,EAAE,CAAC,IAAD,EAAO,GAAP,EAAY,GAAZ,EAAiB,GAAjB,CAFuB;AAGlCC,EAAAA,IAAI,EAAE,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,EAAgB,GAAhB,CAH4B;AAIlC,aAAS,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAJyB;AAKlCC,EAAAA,MAAM,EAAE,CAAC,GAAD,EAAM,GAAN;AAL0B,CAA7B;;;;ICVMC,IAAI,GAAwB,SAA5BA,IAA4B;MAAGzF,gBAAAA;MAAU0F,iBAAAA;;mBACvBC,mCAAS,CAAC;AACrCD,IAAAA,SAAS,EAAEA,SAAS,IAAI;AADa,GAAD;MAA/BE;MAAKC;MAAQC;;kBAIUC,cAAQ,CAAC,KAAD;MAA/BC;MAASC;;AAEhBC,EAAAA,eAAS,CAAC;AACR,QAAIJ,KAAK,IAAIA,KAAK,CAACK,kBAAf,IAAqCL,KAAK,CAACK,kBAAN,CAAyBC,CAAzB,GAA6B,CAAtE,EAAyE;AACvEH,MAAAA,UAAU,CAAC,IAAD,CAAV;AACD;AACF,GAJQ,EAIN,CAACH,KAAD,CAJM,CAAT;AAMAI,EAAAA,eAAS,CAAC;AACR,QAAIL,MAAJ,EAAY;AACVI,MAAAA,UAAU,CAAC,IAAD,CAAV;AACD;AACF,GAJQ,EAIN,CAACJ,MAAD,CAJM,CAAT;AAMA,SACElH,4BAAA,MAAA;AACEH,IAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAACC,IAAR,EAAc,IAAd,CADuB,EAEvB,CAACD,QAAM,CAAC8F,OAAR,EAAiBA,OAAjB,CAFuB,CAAD;AAIxBJ,IAAAA,GAAG,EAAEA;mBACO;GANd,EAQGI,OAAO,IAAIhG,QARd,CADF;AAYD,CA/BM;;ACPA,IAAMqG,OAAO,GAAG,SAAVA,OAAU,CAACC,CAAD;AAAA,SACrBA,CAAC,CAACC,OAAF,CAAU,cAAV,EAA0B,UAACC,GAAD;AAAA,WAASA,GAAG,CAACC,WAAJ,GAAkBF,OAAlB,CAA0B,GAA1B,EAA+B,EAA/B,CAAT;AAAA,GAA1B,CADqB;AAAA,CAAhB;AAGP,AAAO,IAAMG,YAAY,GAAG,SAAfA,YAAe,CAACJ,CAAD;AAAA,SAC1BA,CAAC,CAAC,CAAD,CAAD,CAAKG,WAAL,KAAqBH,CAAC,CAACK,KAAF,CAAQ,CAAR,CADK;AAAA,CAArB;;ACEA,IAAMC,aAAa,GAA2B,SAAxCA,aAAwC;MACnDC,cAAAA;MACAC,sBAAAA;MACAC,iBAAAA;MACAC,WAAAA;MACAC,eAAAA;MACAC,eAAAA;;kBAEgCnB,cAAQ,CAAC,KAAD;MAAjCoB;MAAUC;;AAEjBlB,EAAAA,eAAS,CAAC;AACRkB,IAAAA,WAAW,CAAC,CAACzD,MAAM,CAAC0D,kBAAT,CAAX;AACD,GAFQ,EAEN,EAFM,CAAT;AAIA,MAAMC,IAAI,GACRlC,oBAAoB,CAACiB,OAAO,CAACY,OAAD,CAAR,CAApB,IAA0C7B,oBAAoB,WADhE;AAGA,SACEzG,4BAAA,UAAA,MAAA,EACGkI,MAAM,IACLlI,4BAAA,SAAA;AAAQ4I,IAAAA,KAAK,EAAC;AAAqBC,IAAAA,MAAM,EAAKX,MAAM,CAAC,CAAD,CAAX;GAAzC,CAFJ,EAKGE,SAAS,IAAI,CAACA,SAAS,CAACU,IAAxB,IACC9I,4BAAA,SAAA;AAAQ4I,IAAAA,KAAK,EAAC;AAAiBC,IAAAA,MAAM,OAAKT,SAAS,CAACW;GAApD,CANJ,EASGX,SAAS,IACRO,IAAI,CAAC/I,GAAL,CAAS,UAACoJ,GAAD;AACP,QAAMC,UAAU,GAAGb,SAAS,OAAKY,GAAL,CAA5B;;AAEA,QAAI,CAACC,UAAL,EAAiB;AACf,aAAO,IAAP;AACD;;AAED,WACEjJ,4BAAA,CAACA,cAAK,CAACkJ,QAAP;AAAgBF,MAAAA,GAAG,EAAEA;KAArB,EACEhJ,4BAAA,SAAA;AACES,MAAAA,IAAI,EAAC;AACLmI,MAAAA,KAAK,EAAEpC,gBAAgB,CAACwC,GAAD;AACvBH,MAAAA,MAAM,EAAKI,UAAU,CAAC,SAAD,CAAf,aAAkCA,UAAU,CAAC,SAAD,CAA5C;KAHR,CADF,EAOEjJ,4BAAA,SAAA;AACES,MAAAA,IAAI,EAAC;AACLmI,MAAAA,KAAK,EAAEpC,gBAAgB,CAACwC,GAAD;AACvBH,MAAAA,MAAM,EAAKI,UAAU,CAAC,IAAD,CAAf,aAA6BA,UAAU,CAAC,IAAD,CAAvC;KAHR,CAPF,CADF;AAeD,GAtBD,CAVJ,EAkCEjJ,4BAAA,MAAA;AACEmJ,IAAAA,GAAG,EACDX,QAAQ,GACJL,cADI,GAEJ;AAENE,IAAAA,GAAG,EAAEA;AACLE,IAAAA,MAAM,EAAE;AAAA,aAAMA,OAAM,CAAC,IAAD,CAAZ;AAAA;GAPV,CAlCF,CADF;AA8CD,CA/DM;;;;ICOMa,KAAK,GAAyB,SAA9BA,KAA8B;MACzCf,WAAAA;MACAC,eAAAA;MACAF,iBAAAA;MACAnI,aAAAA;MACAC,cAAAA;MACAgI,cAAAA;MACAmB,YAAAA;MACAC,kBAAAA;MACAC,aAAAA;;oBAEqBC,gBAAU,CAAC7E,YAAD;MAAvBE,uBAAAA;;kBACwBuC,cAAQ,CAAC,KAAD;MAAjCqC;MAAUC;;AAEjB,MAAMpI,WAAW,GAAG,SAAdA,WAAc;AAClB,QAAI,CAACgI,UAAD,IAAe,CAACzE,QAAhB,IAA6BuD,SAAS,IAAI,CAACA,SAAS,CAACW,QAAzD,EAAoE;AAClE;AACD;;wBAEgCY,YAAY;QAA9BC,8BAAP3J;;AAER,QAAM4J,wBAAwB,GAC5BD,aAAa,IAAI1D,eAAe,CAACG,gBAAjC,IAAqD,CAACiD,UAAU,CAACQ,OADnE;AAGA,QAAMC,uBAAuB,GAC3BH,aAAa,GAAG1D,eAAe,CAACG,gBAAhC,IAAoD,CAACiD,UAAU,CAACU,MADlE;;AAGA,QAAIH,wBAAwB,IAAIE,uBAAhC,EAAyD;AACvD;AACD;;AAEDtE,IAAAA,WAAW,CAAC,EAAD,EAAK,kBAAL,EAAyB,OAAzB,CAAX;AACAZ,IAAAA,QAAQ,CAACoF,IAAT,CAAc7B,SAAd,EAAyBnI,KAAzB,EAAgCC,MAAhC,EAAwCmI,GAAxC;AACD,GAnBD;;AAqBA,MAAM6B,WAAW,GAAG;AAClBC,IAAAA,QAAQ,EAAElK,KAAK,IAAI,GAAT,GAAeA,KAAf,GAAuB;AADf,GAApB;AAIA,MAAMmK,aAAa,GAAG;AACpBC,IAAAA,aAAa,EAAK,OAAOd,KAAK,IAAItJ,KAAK,GAAGC,MAAxB,CAAL;AADO,GAAtB;AAIA;;AACA,MAAMiI,cAAc,GACjBD,MAAM,IAAIA,MAAM,CAAC,CAAD,CAAjB,IACCE,SAAS,CAACU,IAAV,IAAkBV,SAAS,CAACU,IAAV,CAAe,IAAf,CADnB,IAEAV,SAAS,CAACW,QAHZ;AAKA,SACE/I,4BAAA,MAAA;AACEH,IAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAACC,IAAR,EAAc,IAAd,CADuB,EAEvB,CAACD,QAAM,CAACkI,QAAR,EAAkBA,QAAlB,CAFuB,EAGvB,CAAClI,QAAM,CAAC+H,UAAR,EAAoBA,UAAU,IAAIA,UAAU,CAACQ,OAA7C,CAHuB,CAAD;AAKxBQ,IAAAA,KAAK,EAAEJ;mBACK;GAPd,EASElK,4BAAA,MAAA;AACEH,IAAAA,SAAS,EAAE0B,QAAM,CAACgJ;AAClBD,IAAAA,KAAK,EAAEF;AACPhJ,IAAAA,OAAO,EAAE;AAAA,aAAYE,WAAW,EAAvB;AAAA;AACTkJ,IAAAA,UAAU,EAAE;AAAA,aAAYlJ,WAAW,EAAvB;AAAA;AACZmJ,IAAAA,IAAI,EAAC;AACLC,IAAAA,QAAQ,EAAE;GANZ,EAQGrB,IAAI,GACHrJ,4BAAA,wBAAA,MAAA,EACEA,4BAAA,CAAC8G,IAAD;AAAMC,IAAAA,SAAS,EAAE;GAAjB,EACE/G,4BAAA,CAACiI,aAAD;AACEE,IAAAA,cAAc,EAAEA;AAChBD,IAAAA,MAAM,EAAEA;AACRE,IAAAA,SAAS,EAAEA;AACXC,IAAAA,GAAG,EAAEA;AACLC,IAAAA,OAAO,EAAEA;AACTC,IAAAA,MAAM,EAAEmB;GANV,CADF,CADF,EAWE1J,4BAAA,WAAA,MAAA,EACEA,4BAAA,MAAA;AAAKmJ,IAAAA,GAAG,EAAEhB;AAAgBE,IAAAA,GAAG,EAAEA;GAA/B,CADF,CAXF,CADG,GAiBHrI,4BAAA,CAACiI,aAAD;AACEE,IAAAA,cAAc,EAAEA;AAChBD,IAAAA,MAAM,EAAEA;AACRE,IAAAA,SAAS,EAAEA;AACXC,IAAAA,GAAG,EAAEA;AACLC,IAAAA,OAAO,EAAEA;AACTC,IAAAA,MAAM,EAAEmB;GANV,CAzBJ,CATF,CADF;AA+CD,CAhGM;;;;ICPMiB,OAAO,GAA2B,SAAlCA,OAAkC;MAAGtJ,gBAAAA;MAAUuJ,eAAAA;;kBAC5BxD,cAAQ,CAAC,IAAD;MAA/BC;MAASC;;AAEhB,MAAMuD,WAAW,GAAG,SAAdA,WAAc;AAClBvD,IAAAA,UAAU,CAAC,KAAD,CAAV;AACAwD,IAAAA,UAAU,CAACF,OAAD,EAAU,GAAV,CAAV;AACD,GAHD;;AAKA,MAAMG,YAAY,GAAG,SAAfA,YAAe;AACnBF,IAAAA,WAAW;AACZ,GAFD;;AAIA,MAAMG,WAAW,GAAG,SAAdA,WAAc,CAACC,KAAD;AAClB,QAAIA,KAAK,CAACjC,GAAN,KAAc,QAAlB,EAA4B;AAC1B6B,MAAAA,WAAW;AACZ;AACF,GAJD;;AAMAtD,EAAAA,eAAS,CAAC;AACRrC,IAAAA,QAAQ,CAACG,IAAT,CAAc6F,OAAd,CAAsBC,OAAtB,GAAgC,MAAhC;AAEAnG,IAAAA,MAAM,CAACoG,gBAAP,CAAwB,SAAxB,EAAmCJ,WAAnC,EAAgD,KAAhD;AACAhG,IAAAA,MAAM,CAACoG,gBAAP,CAAwB,QAAxB,EAAkCL,YAAlC,EAAgD,KAAhD;AAEA,WAAO;AACL7F,MAAAA,QAAQ,CAACG,IAAT,CAAcgG,eAAd,CAA8B,cAA9B;AAEArG,MAAAA,MAAM,CAACsG,mBAAP,CAA2B,SAA3B,EAAsCN,WAAtC,EAAmD,KAAnD;AACAhG,MAAAA,MAAM,CAACsG,mBAAP,CAA2B,QAA3B,EAAqCP,YAArC,EAAmD,KAAnD;AACD,KALD;AAMD,GAZQ,EAYN,CAAC1D,OAAD,CAZM,CAAT;AAcA;;AACA,SACErH,4BAAA,MAAA;mBACc;AACZH,IAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAACC,IAAR,EAAc,IAAd,CADuB,EAEvB,CAACD,QAAM,CAAC8F,OAAR,EAAiBA,OAAjB,CAFuB,CAAD;GAF1B,EAOErH,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACgK;AAASnK,IAAAA,OAAO,EAAE;AAAA,aAAYyJ,WAAW,EAAvB;AAAA;GAAzC,CAPF,EASE7K,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACiK;GAAvB,EACExL,4BAAA,SAAA;AACES,IAAAA,IAAI,EAAC;AACLZ,IAAAA,SAAS,EAAE0B,QAAM,CAACkK;AAClBrK,IAAAA,OAAO,EAAE;AAAA,aAAYyJ,WAAW,EAAvB;AAAA;kBACE;GAJb,CADF,EAOE7K,4BAAA,MAAA;AAAKC,IAAAA,KAAK,EAAC;AAAOJ,IAAAA,SAAS,EAAE0B,QAAM,CAACmK;GAApC,EACE1L,4BAAA,OAAA,MAAA,EACEA,4BAAA,OAAA;AAAM2L,IAAAA,EAAE,EAAC;AAASC,IAAAA,CAAC,EAAC;AAAInE,IAAAA,CAAC,EAAC;AAAIxH,IAAAA,KAAK,EAAC;AAAOC,IAAAA,MAAM,EAAC;GAAlD,EACEF,4BAAA,OAAA;AAAM6L,IAAAA,IAAI,EAAC;AAAQpE,IAAAA,CAAC,EAAC;AAAIxH,IAAAA,KAAK,EAAC;AAAOC,IAAAA,MAAM,EAAC;AAAO0L,IAAAA,CAAC,EAAC;GAAtD,CADF,EAEE5L,4BAAA,MAAA;AAAK4L,IAAAA,CAAC,EAAC;AAAME,IAAAA,QAAQ,EAAC;GAAtB,EACE9L,4BAAA,IAAA;AAAG+L,IAAAA,SAAS,EAAC;GAAb,EACE/L,4BAAA,OAAA;AAAMK,IAAAA,CAAC,EAAC;GAAR,CADF,CADF,CAFF,CADF,CADF,EAWEL,4BAAA,OAAA;AACE6L,IAAAA,IAAI,EAAC;AACLF,IAAAA,EAAE,EAAC;AACHK,IAAAA,IAAI,EAAC;AACLJ,IAAAA,CAAC,EAAC;AACFnE,IAAAA,CAAC,EAAC;AACFxH,IAAAA,KAAK,EAAC;AACNC,IAAAA,MAAM,EAAC;GAPT,CAXF,CAPF,EA4BEF,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC8D;GAAvB,EAA8BhE,QAA9B,CA5BF,CATF,CADF;AA0CD,CA3EM;;;;ICGM4K,QAAQ,GAA4B,SAApCA,QAAoC;MAAG5K,gBAAAA;MAAUuJ,eAAAA;AAC5D,SACE5K,4BAAA,MAAA;mBACc;AACZH,IAAAA,SAAS,EAAEL,aAAa,CAAC,CAAC,CAAC+B,QAAM,CAACC,IAAR,EAAc,IAAd,CAAD,CAAD;GAF1B,EAIExB,4BAAA,SAAA;AACEH,IAAAA,SAAS,EAAE0B,QAAM,CAACkK;AAClBhL,IAAAA,IAAI,EAAC;AACLW,IAAAA,OAAO,EAAE;AAAA,aAAYwJ,OAAO,EAAnB;AAAA;GAHX,EAKE5K,4BAAA,CAAC2D,SAAD;AAAWC,IAAAA,IAAI,EAAC;AAAQ5C,IAAAA,IAAI,EAAC;GAA7B,CALF,CAJF,EAYEhB,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC8D;GAAvB,EAA8BhE,QAA9B,CAZF,CADF;AAgBD,CAjBM;;;;ICQM6K,WAAW,GAA+B,SAA1CA,WAA0C;wBACrDC;MAAS/D,uBAAAA;MAAWnI,mBAAAA;MAAOC,oBAAAA;MAAQkM,oBAAAA;MAAQ9D,qBAAAA;MAAS+D,kBAAAA;;kBAE1BjF,cAAQ,CAAC,CAAD;MAA3BmC;MAAO+C;;mBACetF,mCAAS,CAAC;AACrCD,IAAAA,SAAS,EAAE;AAD0B,GAAD;MAA/BE;MAAKC;MAAQC;;AAIpB,MAAMqE,SAAS,GAAGe,YAAM,CAAC,IAAD,CAAxB;;mBAE8BnF,cAAQ,CAAc;AAClDoF,IAAAA,KAAK,EAAE,IAD2C;AAElDnH,IAAAA,IAAI,EAAE,IAF4C;AAGlD4E,IAAAA,IAAI,EAAE,KAH4C;AAIlD0B,IAAAA,EAAE,EAAE;AAJ8C,GAAd;MAA/BR;MAASsB;;mBAOcrF,cAAQ,CAAC,KAAD;MAA/BC;MAASC;;AAChB,MAAMoF,YAAY,GAAG,GAArB;AAEAnF,EAAAA,eAAS,CAAC;AACR,QAAIJ,KAAK,IAAIA,KAAK,CAACK,kBAAf,IAAqCL,KAAK,CAACK,kBAAN,CAAyBC,CAAzB,GAA6B,CAAtE,EAAyE;AACvEH,MAAAA,UAAU,CAAC,IAAD,CAAV;AACD;AACF,GAJQ,EAIN,CAACH,KAAD,CAJM,CAAT;AAMAI,EAAAA,eAAS,CAAC;AACR,QAAIL,MAAJ,EAAY;AACVI,MAAAA,UAAU,CAAC,IAAD,CAAV;AACD;AACF,GAJQ,EAIN,CAACJ,MAAD,CAJM,CAAT;AAMAK,EAAAA,eAAS,CAAC;AACR,QAAI4D,OAAO,CAACQ,EAAZ,EAAgB;AACdzG,MAAAA,QAAQ,CAACkG,gBAAT,CAA0B,OAA1B,EAAmCuB,kBAAnC;AACD,KAFD,MAEO;AACLzH,MAAAA,QAAQ,CAACoG,mBAAT,CAA6B,OAA7B,EAAsCqB,kBAAtC;AACD;;AAED,WAAO;AAAA,aAAMzH,QAAQ,CAACoG,mBAAT,CAA6B,OAA7B,EAAsCqB,kBAAtC,CAAN;AAAA,KAAP;AACD,GARQ,EAQN,CAACxB,OAAD,CARM,CAAT;AAUA5D,EAAAA,eAAS,CAAC;AACRqF,IAAAA,UAAU;AACV5H,IAAAA,MAAM,CAACoG,gBAAP,CAAwB,QAAxB,EAAkCwB,UAAlC;AAEA,WAAO;AAAA,aAAM1H,QAAQ,CAACoG,mBAAT,CAA6B,QAA7B,EAAuCsB,UAAvC,CAAN;AAAA,KAAP;AACD,GALQ,EAKN,CAACvF,OAAD,CALM,CAAT;;AAOA,MAAMuF,UAAU,GAAG,SAAbA,UAAa;AACjB,QAAM3M,KAAK,GAAG+E,MAAM,CAACC,UAArB;;AAEA,QAAIhF,KAAK,GAAGyM,YAAZ,EAA0B;AACxB,UAAMnD,MAAK,GAAGtJ,KAAK,GAAGyM,YAAtB;;AACAJ,MAAAA,QAAQ,CAAC/C,MAAD,CAAR;AACD,KAHD,MAGO;AACL+C,MAAAA,QAAQ,CAAC,CAAD,CAAR;AACD;AACF,GATD;;AAWA,MAAMK,kBAAkB,GAAG,SAArBA,kBAAqB,CAAC1B,KAAD;AACzB,QAAM4B,IAAI,GAAG5B,KAAK,CAAC6B,YAAN,EAAb;;AAEA,QAAID,IAAI,CAACE,OAAL,CAAavB,SAAS,CAACwB,OAAvB,MAAoC,CAAC,CAAzC,EAA4C;AAC1CP,MAAAA,UAAU,CAAC;AAAExC,QAAAA,IAAI,EAAE;AAAR,OAAD,CAAV;AACD;AACF,GAND;;AAQA,MAAMgD,cAAc,GAAG,SAAjBA,cAAiB,CAACC,GAAD;AACrB,QAAMC,UAAU,GAAGD,GAAG,CAACvB,EAAJ,KAAWR,OAAO,CAACQ,EAAtC;AACA,QAAMyB,IAAI,GAAGF,GAAG,CAACG,QAAJ,CAAazB,CAAb,GAAiB,EAAjB,GAAsB,QAAtB,GAAiC,SAA9C;AACA,QAAM0B,KAAK,GAAGJ,GAAG,CAACG,QAAJ,CAAa5F,CAAb,GAAiB,EAAjB,GAAsB,UAAtB,GAAmC,OAAjD;AAEA,QAAM6C,KAAK,GAAG;AAAExE,MAAAA,GAAG,EAAKoH,GAAG,CAACG,QAAJ,CAAa5F,CAAlB,MAAL;AAA6BpD,MAAAA,IAAI,EAAK6I,GAAG,CAACG,QAAJ,CAAazB,CAAlB;AAAjC,KAAd;AAEAa,IAAAA,UAAU,CAAC;AACTD,MAAAA,KAAK,EAAEU,GAAG,CAACV,KADF;AAETnH,MAAAA,IAAI,EAAE6H,GAAG,CAAC7H,IAFD;AAGT4E,MAAAA,IAAI,EAAEkD,UAHG;AAITxB,MAAAA,EAAE,EAAEwB,UAAU,GAAGD,GAAG,CAACvB,EAAP,GAAY,IAJjB;AAKTrB,MAAAA,KAAK,EAALA,KALS;AAMT8C,MAAAA,IAAI,EAAJA,IANS;AAOTE,MAAAA,KAAK,EAALA;AAPS,KAAD,CAAV;AASD,GAhBD;;AAkBA,SACEtN,4BAAA,MAAA;AACEH,IAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAACC,IAAR,EAAc,IAAd,CADuB,EAEvB,CAACD,QAAM,CAACgM,SAAR,EAAmBlG,OAAnB,CAFuB,CAAD;mBAIZ;AACZJ,IAAAA,GAAG,EAAEA;GANP,EAQEjH,4BAAA,CAACoJ,KAAD;AACEhB,IAAAA,SAAS,EAAEA;AACXnI,IAAAA,KAAK,EAAEA;AACPC,IAAAA,MAAM,EAAEA;AACRmI,IAAAA,GAAG,EAAE+D;AACL9D,IAAAA,OAAO,EAAEA;AACTgB,IAAAA,UAAU,EAAE;AAAEU,MAAAA,MAAM,EAAE,KAAV;AAAiBF,MAAAA,OAAO,EAAE;AAA1B;GANd,CARF,EAiBE9J,4BAAA,MAAA;AAAKiH,IAAAA,GAAG,EAAEuE;GAAV,EACGa,IAAI,CAACzM,GAAL,CAAS,UAACsN,GAAD;AAAA,WACRlN,4BAAA,MAAA;AACEH,MAAAA,SAAS,EAAE0B,QAAM,CAAC2L;AAClBlE,MAAAA,GAAG,EAAEkE,GAAG,CAACvB;AACTrB,MAAAA,KAAK,EAAE;AACLxE,QAAAA,GAAG,EAAKoH,GAAG,CAACG,QAAJ,CAAa5F,CAAlB,MADE;AAELpD,QAAAA,IAAI,EAAK6I,GAAG,CAACG,QAAJ,CAAazB,CAAlB,MAFC;AAGLG,QAAAA,SAAS,aAAWxC,KAAX,qBAAgC,KAAKA,KAArC,YACP,KAAKA,KADE;AAHJ;KAHT,EAWEvJ,4BAAA,SAAA;AACEH,MAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAACiM,MAAR,EAAgB,IAAhB,CADuB,EAEvB,CAACjM,QAAM,CAACkM,QAAR,EAAkBP,GAAG,CAACvB,EAAJ,KAAWR,OAAO,CAACQ,EAArC,CAFuB,CAAD;AAIxBlL,MAAAA,IAAI,EAAC;AACL6J,MAAAA,KAAK,EAAE;AACLoD,QAAAA,eAAe,EAAER,GAAG,CAACtJ,IAAJ,CAAS+J;AADrB;AAGPvM,MAAAA,OAAO,EAAE;AAAA,eAAY6L,cAAc,CAACC,GAAD,CAA1B;AAAA;KATX,EAWGA,GAAG,CAACtJ,IAAJ,CAASnD,IAAT,KAAkB,KAAlB,IACCT,4BAAA,MAAA;AACE+D,MAAAA,uBAAuB,EAAE;AAAEC,QAAAA,MAAM,EAAEkJ,GAAG,CAACtJ,IAAJ,CAASgK;AAAnB;KAD3B,CAZJ,EAgBGV,GAAG,CAACtJ,IAAJ,CAASnD,IAAT,KAAkB,QAAlB,IAA8ByM,GAAG,CAACtJ,IAAJ,CAASiK,MAhB1C,CAXF,CADQ;AAAA,GAAT,CADH,EAkCG1C,OAAO,CAAClB,IAAR,IACCjK,4BAAA,wBAAA,MAAA,EACG2J,YAAY,GAAG1J,KAAf,IAAwBiG,eAAe,CAACG,gBAAxC,GACCrG,4BAAA,MAAA;AACEH,IAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAAC4J,OAAR,EAAiB,IAAjB,CADuB,EAEvB,CAAC5J,QAAM,CAAC4J,OAAO,CAACiC,IAAT,CAAP,EAAuB,CAAC,CAACjC,OAAO,CAACiC,IAAjC,CAFuB,EAGvB,CAAC7L,QAAM,CAAC4J,OAAO,CAACmC,KAAT,CAAP,EAAwB,CAAC,CAACnC,OAAO,CAACmC,KAAlC,CAHuB,CAAD;AAKxBhD,IAAAA,KAAK,EAAEa,OAAO,CAACb;GANjB,EAQEtK,4BAAA,CAACiM,QAAD;AACErB,IAAAA,OAAO,EAAE;AACP6B,MAAAA,UAAU,CAAC;AAAExC,QAAAA,IAAI,EAAE;AAAR,OAAD,CAAV;AACD;GAHH,EAKGkB,OAAO,CAACqB,KAAR,IAAiBxM,4BAAA,KAAA,MAAA,EAAKmL,OAAO,CAACqB,KAAb,CALpB,EAMExM,4BAAA,MAAA;AAAK+D,IAAAA,uBAAuB,EAAE;AAAEC,MAAAA,MAAM,EAAEmH,OAAO,CAAC9F;AAAlB;GAA9B,CANF,CARF,CADD,GAmBCrF,4BAAA,CAAC2K,OAAD;AACEC,IAAAA,OAAO,EAAE;AACP6B,MAAAA,UAAU,CAAC;AAAExC,QAAAA,IAAI,EAAE;AAAR,OAAD,CAAV;AACD;GAHH,EAKGkB,OAAO,CAACqB,KAAR,IAAiBxM,4BAAA,KAAA,MAAA,EAAKmL,OAAO,CAACqB,KAAb,CALpB,EAMExM,4BAAA,MAAA;AAAK+D,IAAAA,uBAAuB,EAAE;AAAEC,MAAAA,MAAM,EAAEmH,OAAO,CAAC9F;AAAlB;GAA9B,CANF,CApBJ,CAnCJ,CAjBF,CADF;AAuFD,CA7KM;;ACdP,IAAMyI,gBAAgB,GAAG,SAAnBA,gBAAmB,CACvBC,UADuB,EAEvB7M,YAFuB,EAGvBK,MAHuB;AAKvB,MAAMyM,OAAO,GAAGC,KAAK,CAACC,OAAN,CAAchN,YAAd,IACZA,YAAY,CACTxB,MADH,CACU,UAACyO,GAAD;AAAA,WAAS5M,MAAM,CAAC4M,GAAD,CAAf;AAAA,GADV,EAEGvO,GAFH,CAEO,UAACuO,GAAD;AAAA,WAAS,CAAC,CAAC5M,MAAM,CAAC4M,GAAD,CAAP,CAAD,EAAgB,IAAhB,CAAT;AAAA,GAFP,CADY,GAIZ,CAAC,CAAC5M,MAAM,CAACL,YAAD,CAAP,EAAuB,CAAC,CAACA,YAAF,IAAkB,CAAC,CAACK,MAAM,CAACL,YAAD,CAAjD,CAAD,CAJJ;AAMA,SAAO6M,UAAU,CAACK,MAAX,CAAkBJ,OAAlB,CAAP;AACD,CAZD;;;;ICKaK,GAAG,GAAuB,SAA1BA,GAA0B;MACrChN,gBAAAA;uBACAL;MAAAA,8BAAO;wBACPD;MAAAA,gCAAQ;MACRG,oBAAAA;MACAoN,mBAAAA;MACAC,cAAAA;AAEA,MAAIR,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACP,IAAD,CAAP,EAAe,CAAC,CAACA,IAAF,IAAU,CAAC,CAACO,QAAM,CAACP,IAAD,CAAjC,CAF2B,EAG3B,CAACO,QAAM,CAACR,KAAD,CAAP,EAAgB,CAAC,CAACA,KAAF,IAAW,CAAC,CAACQ,QAAM,CAACR,KAAD,CAAnC,CAH2B,EAI3B,CAACQ,QAAM,CAACgN,MAAD,CAAP,EAAiB,CAAC,CAACA,MAAF,IAAY,CAAC,CAAChN,QAAM,CAACgN,MAAD,CAArC,CAJ2B,EAK3B,CAAChN,QAAM,CAAC+M,WAAD,CAAP,EAAsB,CAAC,CAACA,WAAF,IAAiB,CAAC,CAAC/M,QAAM,CAAC+M,WAAD,CAA/C,CAL2B,CAA7B;;AAQA,MAAIpN,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,MAAA;mBAAiB;AAAMH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAA/C,EACG1M,QADH,CADF;AAKD,CAzBM;;;;ICAMmN,YAAY,GAAgC,SAA5CA,YAA4C;MACvDpC,cAAAA;MACAqC,eAAAA;MACAvN,oBAAAA;AAEA,MAAI6M,UAAU,GAAe,CAAC,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAAD,CAA7B;;AAEA,MAAIN,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,MAAA;mBAAiB;AAAgBH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAAzD,EACGU,OAAO,IACNzO,4BAAA,MAAA;AACEH,IAAAA,SAAS,EAAE0B,QAAM,CAACkN;AAClB1K,IAAAA,uBAAuB,EAAE;AAAEC,MAAAA,MAAM,EAAEyK;AAAV;GAF3B,CAFJ,EAOGrC,MAAM,IACLpM,4BAAA,MAAA;AACEH,IAAAA,SAAS,EAAE0B,QAAM,CAAC6K;AAClBrI,IAAAA,uBAAuB,EAAE;AAAEC,MAAAA,MAAM,EAAEoI;AAAV;GAF3B,CARJ,CADF;AAgBD,CA3BM;;;;ICEMsC,KAAK,GAAyB,SAA9BA,KAA8B;MACzCxN,oBAAAA;wBACAiL;MACEwC,kBAAAA;MACAC,qBAAAA;MACAtG,qBAAAA;MACgBuG,0BAAhBC;MACcC,yBAAdC;AAGF,MAAMC,MAAM,GAAG;AACb,eAAW,OADE;AAEb,eAAW,MAFE;AAGb,eAAW,MAHE;AAIb,eAAW,MAJE;AAKb,eAAW,QALE;AAMb,eAAW,QANE;AAOb,eAAW,OAPE;AAQb,eAAW;AARE,GAAf;AAWA,MAAIlB,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAAC+G,OAAD,CAAP,EAAkB,CAAC,CAACA,OAAF,IAAa,CAAC,CAAC/G,QAAM,CAAC+G,OAAD,CAAvC,CAF2B,CAA7B;;AAKA,MAAIpH,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,MAAA;mBAAiB;AAAQH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAAjD,EACE/N,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACgJ;GAAvB,EACEvK,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC2N;GAAvB,EACElP,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC4N;GAAvB,EACGR,IAAI,CAAC/O,GAAL,CAAS,UAACwP,GAAD,EAAMC,CAAN;AACR,WACErP,4BAAA,MAAA;AAAKgJ,MAAAA,GAAG,EAAEoG,GAAG,CAACpG;AAAKnJ,MAAAA,SAAS,EAAE0B,QAAM,CAAC6N;KAArC,EACGA,GAAG,CAACE,KAAJ,CAAU1P,GAAV,CAAc,UAAC2P,IAAD,EAAOC,CAAP;AAAA,aACbxP,4BAAA,MAAA;AACEgJ,QAAAA,GAAG,EAAEuG,IAAI,CAACvG;AACVnJ,QAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAACgO,IAAR,EAAc,IAAd,CADuB,EAEvB,CAAChO,QAAM,CAACkO,MAAR,EAAgBb,OAAO,CAACa,MAAR,IAAkBJ,CAAC,KAAK,CAAxC,CAFuB,EAGvB,CAAC9N,QAAM,CAAC0N,MAAM,CAACM,IAAI,CAAC5B,KAAN,CAAP,CAAP,EAA6B,IAA7B,CAHuB,EAIvB,CAACpM,QAAM,CAACsN,YAAY,CAACW,CAAD,CAAb,CAAP,EAA0B,IAA1B,CAJuB,EAKvB,CACEjO,QAAM,CAACmO,WADT,EAEEd,OAAO,CAACe,kBAAR,IAA8BH,CAAC,KAAK,CAFtC,CALuB,CAAD;AAUxBzL,QAAAA,uBAAuB,EAAE;AAAEC,UAAAA,MAAM,EAAEuL,IAAI,CAACK;AAAf;OAZ3B,CADa;AAAA,KAAd,CADH,CADF;AAoBD,GArBA,CADH,CADF,CADF,CADF,EA8BGb,WAAW,IACV/O,4BAAA,CAACwO,YAAD;AAAcpC,IAAAA,MAAM,EAAE2C;AAAa7N,IAAAA,YAAY,EAAEA;GAAjD,CA/BJ,CADF;AAoCD,CAlEM;;;;ICFM2O,YAAY,GAAgC,SAA5CA,YAA4C;MAC9ChM,YAATsI,MAAStI;MACT3C,oBAAAA;AAEA,MAAI6M,UAAU,GAAe,CAAC,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAAD,CAA7B;;AAEA,MAAIN,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,MAAA;mBAAiB;AAAgBH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAAzD,EACGlK,IAAI,IACHA,IAAI,CAACjE,GAAL,CAAS,UAACkQ,IAAD;AAAA,WACP9P,4BAAA,IAAA;AACEH,MAAAA,SAAS,EAAE0B,QAAM,CAACuO,IAAI,CAACrP,IAAN;AACjBuI,MAAAA,GAAG,EAAE8G,IAAI,CAACnE;AACV5H,MAAAA,uBAAuB,EAAE;AAAEC,QAAAA,MAAM,EAAE8L,IAAI,CAACjM;AAAf;KAH3B,CADO;AAAA,GAAT,CAFJ,CADF;AAYD,CAtBM;;;;ICAMkM,cAAc,GAAkC,SAAhDA,cAAgD;MAC3D7O,oBAAAA;MACAH,aAAAA;MACAiP,qBAAAA;MACA5O,gBAAAA;AAEA,MAAI2M,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACyO,aAAR,EAAuBA,aAAvB,CAF2B,EAG3B,CAACzO,QAAM,CAACR,KAAD,CAAP,EAAgB,CAAC,CAACA,KAAF,IAAW,CAAC,CAACQ,QAAM,CAACR,KAAD,CAAnC,CAH2B,CAA7B;;AAMA,MAAIG,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,MAAA;mBAAiB;AAAkBH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAA3D,EACE/N,4BAAA,SAAA;AACEH,IAAAA,SAAS,EAAE0B,QAAM,CAACiD;AAClBpD,IAAAA,OAAO,EAAE;AAAA,aAAYA,QAAO,EAAnB;AAAA;AACTX,IAAAA,IAAI,EAAC;GAHP,EAKET,4BAAA,CAAC2D,SAAD;AAAWC,IAAAA,IAAI,EAAC;AAAW5C,IAAAA,IAAI,EAAC;GAAhC,CALF,CADF,CADF;AAWD,CA3BM;;;;ICFMiP,OAAO,GAAiC,SAAxCA,OAAwC;MAAG5O,gBAAAA;AACtD,SAAOrB,4BAAA,OAAA;AAAMH,IAAAA,SAAS,EAAE0B,QAAM,CAAC2O;GAAxB,EAAkC7O,QAAlC,CAAP;AACD,CAFM;AAIP,IAAa8O,SAAS,GAAiC,SAA1CA,SAA0C;MAAG9O,iBAAAA;AACxD,SAAOrB,4BAAA,OAAA;AAAMH,IAAAA,SAAS,EAAE0B,QAAM,CAAC6O;GAAxB,EAAoC/O,QAApC,CAAP;AACD,CAFM;AAIP,IAAagP,aAAa,GAAiC,SAA9CA,aAA8C;MAAGhP,iBAAAA;AAC5D,SACErB,4BAAA,KAAA;AAAIH,IAAAA,SAAS,EAAE0B,QAAM,CAACC;mBAAkB;GAAxC,EACGH,QADH,CADF;AAKD,CANM;;;;ICNMiP,IAAI,GAA4B,SAAhCA,IAAgC;MAAGjP,gBAAAA;AAC9C,SACErB,4BAAA,MAAA;mBAAiB;AAAWH,IAAAA,SAAS,EAAE0B,QAAM,CAACM;GAA9C,EACGR,QADH,CADF;AAKD,CANM;AAQP,IAAakP,QAAQ,GAA4B,SAApCA,QAAoC;MAC/ClP,iBAAAA;MACA1B,eAAAA;MACAuB,qBAAAA;AAEA,MAAI6M,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAAC5B,MAAR,EAAgB,CAAC,CAACA,MAAF,IAAY,CAAC,CAAC4B,QAAM,CAAC5B,MAArC,CAF2B,CAA7B;;AAKA,MAAIuB,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,MAAA;mBAAiB;AAAWH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAApD,EACG1M,QADH,CADF;AAKD,CAnBM;;;;ICRMmP,OAAO,GAA2B,SAAlCA,OAAkC;MAAGnP,gBAAAA;MAAUH,oBAAAA;AAC1D,MAAI6M,UAAU,GAAe,CAAC,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAAD,CAA7B;;AAEA,MAAIN,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,MAAMkP,WAAW,GAAG,SAAdA,WAAc;AAAA,WAClBC,cAAQ,CAAC9Q,GAAT,CAAayB,QAAb,EAAuB,UAACyO,IAAD,EAAoBa,KAApB;AAAA,aACrB3Q,4BAAA,KAAA;AAAIH,QAAAA,SAAS,EAAE0B,QAAM,CAACuO;AAAM9G,QAAAA,GAAG,EAAK2H,KAAL,SAAcb,IAAI,CAACc,KAAL,CAAWnQ;OAAxD,EACGT,cAAK,CAAC6Q,YAAN,CAAmBf,IAAnB,CADH,CADqB;AAAA,KAAvB,CADkB;AAAA,GAApB;;AAOA,SACE9P,4BAAA,MAAA;mBAAiB;AAAUH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAAnD,EACE/N,4BAAA,KAAA;AAAIH,IAAAA,SAAS,EAAE0B,QAAM,CAAC9B;GAAtB,EAA6BgR,WAAW,EAAxC,CADF,CADF;AAKD,CAnBM;;;;ICAMK,IAAI,GAAwB,SAA5BA,IAA4B;MACvCC,iBAAAA;MACAhQ,aAAAA;MACAM,gBAAAA;MACAkN,cAAAA;MACArN,oBAAAA;AAEA,MAAI6M,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACR,KAAD,CAAP,EAAgB,CAAC,CAACA,KAAF,IAAW,CAAC,CAACQ,QAAM,CAACR,KAAD,CAAnC,CAF2B,EAG3B,CAACQ,QAAM,CAACgN,MAAD,CAAP,EAAiB,CAAC,CAACA,MAAnB,CAH2B,EAI3B,CAAChN,QAAM,CAACwP,SAAR,EAAmBA,SAAnB,CAJ2B,CAA7B;;AAOA,MAAI7P,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,MAAA;mBAAiB;AAAOH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAAhD,EACG1M,QADH,CADF;AAKD,CAvBM;;;;ICCM2P,SAAS,GAA6B,SAAtCA,SAAsC;MACjDC,mBAAAA;yBACAC;MAAAA,kCAAS;MACTzQ,YAAAA;AAEA,MAAI0Q,SAAJ;AACA,MAAMC,UAAU,GACdF,MAAM,KAAK,IAAX,GAAkB,oBAAlB,GAAyC,sBAD3C;AAGA,MAAMG,mBAAmB,GAAGJ,WAAW,GAAG,IAA1C;AAEAK,EAAAA,KAAK,CAACJ,MAAN,CAAaA,MAAb;AACAI,EAAAA,KAAK,CAACC,MAAN,CAAaC,YAAb;;AAEA,MAAI/Q,IAAI,KAAK,SAAb,EAAwB;AACtB0Q,IAAAA,SAAS,GAAGG,KAAK,CAACD,mBAAD,CAAL,CAA2BI,OAA3B,EAAZ;AACD,GAFD,MAEO,IAAIhR,IAAI,KAAK,QAAb,EAAuB;AAC5B0Q,IAAAA,SAAS,GAAGG,KAAK,CAACD,mBAAD,CAAL,CAA2BK,MAA3B,CAAkC,OAAlC,CAAZ;AACD,GAFM,MAEA,IAAIjR,IAAI,KAAK,MAAb,EAAqB;AAC1B0Q,IAAAA,SAAS,GAAGG,KAAK,CAACD,mBAAD,CAAL,CAA2BK,MAA3B,CAAkCN,UAAlC,CAAZ;AACD,GAFM,MAEA;AACL,UAAM,IAAIO,KAAJ,CAAU,mBAAV,CAAN;AACD;;AAED,SACE3R,4BAAA,OAAA;mBAAkB;AAAYH,IAAAA,SAAS,EAAE0B,QAAM,CAACC;GAAhD,EACG2P,SADH,CADF;AAKD,CA7BM;;ACAP,IAAMS,aAAa,GAAiC,SAA9CA,aAA8C;4BAClD/R;MAAAA,wCAAY;0BACZgS;MAASC,oCAAU;MACnBC,YAAAA;AAEA,MAAMpM,OAAO,GAAG4G,YAAM,CAAiB,IAAjB,CAAtB;;kBAC0CnF,cAAQ,CAAC,KAAD;MAA3C4K;MAAeC;;AAEtB1K,EAAAA,eAAS,CAAC;AACR0K,IAAAA,gBAAgB,CAAC,IAAD,CAAhB;AACD,GAFQ,EAEN,EAFM,CAAT;AAIA,MAAMC,8BAA8B,GAAGC,iBAAW,CAAC,UAACC,IAAD;AACjD,QACEA,IAAI,CAACP,OAAL,KAAiB,QAAjB,KACC,CAACO,IAAI,CAACzG,EAAN,IAAYyG,IAAI,CAACzG,EAAL,CAAQoB,OAAR,CAAgB,SAAhB,MAA+B,CAD5C,CADF,EAGE;AACA,UAAMsF,MAAM,GAAGnN,QAAQ,CAACoN,aAAT,CAAuB,QAAvB,CAAf;AAEAD,MAAAA,MAAM,CAAC1G,EAAP,eAAsB4G,IAAI,CAACC,MAAL,GAAcC,QAAd,CAAuB,EAAvB,EAA2BzK,KAA3B,CAAiC,CAAjC,CAAtB;AACAqK,MAAAA,MAAM,CAACK,SAAP,GAAmBN,IAAI,CAACM,SAAxB;AAEA,UAAMC,KAAK,GAAGP,IAAI,CAACQ,UAAnB;;AAEA,WAAK,IAAIvD,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGsD,KAAK,CAACE,MAA1B,EAAkCxD,CAAC,IAAI,CAAvC,EAA0C;AAAA,uBAChBsD,KAAK,CAACtD,CAAD,CADW;AAAA,YAChCyD,IADgC,YAChCA,IADgC;AAAA,YAC1BC,KAD0B,YAC1BA,KAD0B;AAGxCV,QAAAA,MAAM,CAACW,YAAP,CAAoBF,IAApB,EAA0BC,KAA1B;AACD;;AAEDX,MAAAA,IAAI,CAACa,aAAL,CAAmBC,YAAnB,CAAgCb,MAAhC,EAAwCD,IAAxC;AACD,KAlBD,MAkBO;AACL,UAAI/C,EAAC,GAAG,CAAR;AACA,UAAMhO,QAAQ,GAAG+Q,IAAI,CAACe,UAAtB;;AAEA,aAAO9D,EAAC,GAAGhO,QAAQ,CAACwR,MAApB,EAA4B;AAC1BX,QAAAA,8BAA8B,CAAC7Q,QAAQ,CAACgO,EAAD,CAAT,CAA9B;AACAA,QAAAA,EAAC,IAAI,CAAL;AACD;AACF;AACF,GA5BiD,EA4B/C,EA5B+C,CAAlD;AA8BA,MAAM+D,cAAc,GAAGjB,iBAAW,CAAC;AACjC,QAAMkB,OAAO,GAAGpF,KAAK,CAACvN,IAAN,CAAWiF,OAAO,CAACqH,OAAR,CAAgBsG,gBAAhB,CAAiC,GAAjC,CAAX,CAAhB;AAEAD,IAAAA,OAAO,CAACE,OAAR,CAAgB,UAACC,CAAD;AACdA,MAAAA,CAAC,CAACR,YAAF,CAAe,QAAf,EAAyB,QAAzB;AACD,KAFD;AAGD,GANiC,EAM/B,EAN+B,CAAlC;AAQAzL,EAAAA,eAAS,CAAC;AACR,QACEyK,aAAa,IACbD,IAAI,CAAChF,OAAL,CAAa,QAAb,IAAyB,CAAC,CAD1B,IAEApH,OAAO,CAACqH,OAAR,CAAgByG,iBAHlB,EAIE;AACA9N,MAAAA,OAAO,CAACqH,OAAR,CAAgByG,iBAAhB,CAAkCf,SAAlC,GAA8CX,IAA9C;AACAG,MAAAA,8BAA8B,CAACvM,OAAO,CAACqH,OAAR,CAAgByG,iBAAjB,CAA9B;AACAL,MAAAA,cAAc;AACf;AACF,GAVQ,EAUN,CACDpB,aADC,EAEDrM,OAFC,EAGDoM,IAHC,EAIDG,8BAJC,EAKDkB,cALC,CAVM,CAAT;AAkBA,SACEpT,4BAAA,MAAA;AAAKiH,IAAAA,GAAG,EAAEtB;GAAV,EACE3F,4BAAA,CAAC8R,OAAD;AACEjS,IAAAA,SAAS,EAAEA;AACXkE,IAAAA,uBAAuB,EAAE;AAAEC,MAAAA,MAAM,EAAE+N;AAAV;GAF3B,CADF,CADF;AAQD,CA5ED;;;;ACAO,IAAM2B,QAAQ,GAA4B,SAApCA,QAAoC;MAAGC,WAAAA;MAAKC,cAAAA;MAAQtJ,aAAAA;;kBACzBlD,cAAQ,CAAC,KAAD;MAAvCyM;MAAaC;;AACpB,MAAMC,SAAS,GAAGxH,YAAM,CAAC,IAAD,CAAxB;;AAEA,MAAMyH,gBAAgB,GAAG,SAAnBA,gBAAmB;AACvBD,IAAAA,SAAS,CAAC/G,OAAV,CAAkBzK,IAAlB;AACAuR,IAAAA,cAAc,CAAC,KAAD,CAAd;AACD,GAHD;;AAKA,MAAMG,gBAAgB,GAAG,SAAnBA,gBAAmB;AACvB,QAAMC,KAAK,GAAGH,SAAS,CAAC/G,OAAxB;AAEAkH,IAAAA,KAAK,CAAClB,YAAN,CAAmB,QAAnB,EAA6BkB,KAAK,CAAChJ,OAAN,CAAcyI,GAA3C;AAEAG,IAAAA,cAAc,CAAC,KAAD,CAAd;AACD,GAND;;AAQAvM,EAAAA,eAAS,CAAC;AACR,QAAM2M,KAAK,GAAGH,SAAS,CAAC/G,OAAxB;;wBACiCrD,YAAY;QAA9BC,8BAAP3J;;AAERkU,IAAAA,iBAAiB,CAACD,KAAD,CAAjB;;AAEA,QAAItK,aAAa,IAAI1D,eAAe,CAACC,MAArC,EAA6C;AAC3C+N,MAAAA,KAAK,CAAClB,YAAN,CAAmB,UAAnB,EAA+B,IAA/B;AACAkB,MAAAA,KAAK,CAAC3R,IAAN;AACD,KAHD,MAGO;AACLuR,MAAAA,cAAc,CAAC,IAAD,CAAd;AACAI,MAAAA,KAAK,CAAC1R,KAAN;AACA0R,MAAAA,KAAK,CAAC9I,gBAAN,CAAuB,YAAvB,EAAqC4I,gBAArC;AACD;;AAEDE,IAAAA,KAAK,CAAC9I,gBAAN,CAAuB,OAAvB,EAAgC6I,gBAAhC;AAEA,WAAO;AACLC,MAAAA,KAAK,CAAC5I,mBAAN,CAA0B,YAA1B,EAAwC0I,gBAAxC;AACAE,MAAAA,KAAK,CAAC5I,mBAAN,CAA0B,OAA1B,EAAmC2I,gBAAnC;AACD,KAHD;AAID,GArBQ,EAqBN,EArBM,CAAT;AAuBA,SACEjU,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC6S;GAAvB,EACEpU,4BAAA,MAAA;AACEH,IAAAA,SAAS,EAAE0B,QAAM,CAAC8S;AAClB/J,IAAAA,KAAK,EAAEA;mBACMuJ;GAHf,EAKE7T,4BAAA,QAAA;AACEsU,IAAAA,WAAW;AACXC,IAAAA,KAAK;AACLC,IAAAA,IAAI;AACJC,IAAAA,QAAQ;AACRC,IAAAA,OAAO,EAAC;gBACEf;AACV1M,IAAAA,GAAG,EAAE8M;GAPP,EASE/T,4BAAA,SAAA;AAAQmJ,IAAAA,GAAG,wBAAsByK;AAAUnT,IAAAA,IAAI,EAAC;GAAhD,CATF,CALF,CADF,CADF;AAqBD,CA7DM;;ACKA,IAAMkU,UAAU,GAA8B,SAAxCA,UAAwC;MACnDxI,aAAAA;wBACAA;MACEtI,kBAAAA;mCACAA;MACEkO,uBAAAA;MACAzJ,0BAAAA;MACSiG,yBAATqG;MACAC,2BAAAA;MACAC,qBAAAA;MACA1M,4BAAAA;MACW2M,wBAAXC;MACWC,wBAAXC;MACSC,yBAATC;MACSxB,yBAATyB;MAGJnU,oBAAAA;MACAG,gBAAAA;;kBAE4C+F,cAAQ,CAAC,KAAD;MAA7CkO;MAAgBC;;AACvB,MAAMjL,KAAK,GAAwB,EAAnC;AACA,MAAMkL,cAAc,GAAGrJ,KAAK,CAACtI,IAAN,CAAW3D,MAAX,IAAqBiM,KAAK,CAACtI,IAAN,CAAW5D,KAAvD;AAEA,MAAMwV,kBAAkB,GAAG,CACzB,SADyB,EAEzB,OAFyB,EAGzB,OAHyB,EAIzB,MAJyB,EAKzB,gBALyB,CAA3B;AAQA,MAAMC,eAAe,GACnBD,kBAAkB,CAAC1I,OAAnB,CAA2B8H,QAA3B,IAAuC,CAAC,CAAxC,IAA6C1I,KAAK,CAAC1L,IAAN,KAAe,eAD9D;;AAGA,MAAMkV,QAAQ,GAAG,SAAXA,QAAW,CAAC3H,OAAD;AAAA,WACfhO,4BAAA,CAACwO,YAAD;AACEpC,MAAAA,MAAM,EAAEvI,IAAI,CAACuI;AACbqC,MAAAA,OAAO,EAAE5K,IAAI,CAAC4K;AACdvN,MAAAA,YAAY,EAAE8M,OAAO,IAAI9M;KAH3B,CADe;AAAA,GAAjB;;AAQA,MAAM0U,WAAW,GAAG,SAAdA,WAAc,CAACtL,KAAD;AAClB,YAAQ6B,KAAK,CAAC1L,IAAd;AACE,WAAK,KAAL;AAAY;AACV,iBAAOT,4BAAA,CAAC0T,QAAD;AAAUC,YAAAA,GAAG,EAAEwB;AAAQvB,YAAAA,MAAM,EAAEA;AAAQtJ,YAAAA,KAAK,EAAEA;WAA9C,CAAP;AACD;;AACD,WAAK,OAAL;AAAc;AACZ,iBACEtK,4BAAA,MAAA;AAAKH,YAAAA,SAAS,EAAE0B,QAAM,CAAC6S;WAAvB,EACEpU,4BAAA,CAACoJ,KAAD;AACEE,YAAAA,UAAU,EAAE;AAAEQ,cAAAA,OAAO,EAAEqC,KAAK,CAACtI,IAAN,CAAWyF,UAAtB;AAAkCU,cAAAA,MAAM,EAAE;AAA1C;AACZ9B,YAAAA,MAAM,EAAE,CAACE,SAAD,IAAc,CAAC2M,KAAD,EAAQE,KAAR;AACtB7M,YAAAA,SAAS,EAAE+D,KAAK,CAACtI,IAAN,CAAWuE;AACtBnI,YAAAA,KAAK,EAAEkM,KAAK,CAACtI,IAAN,CAAW5D;AAClBC,YAAAA,MAAM,EAAEiM,KAAK,CAACtI,IAAN,CAAW3D;AACnBmI,YAAAA,GAAG,EAAE8D,KAAK,CAACtI,IAAN,CAAW4K;AAChBnG,YAAAA,OAAO,EAAE6D,KAAK,CAACtI,IAAN,CAAWyE;AACpBe,YAAAA,IAAI,EAAE8C,KAAK,CAACtI,IAAN,CAAWwF;WARnB,CADF,CADF;AAcD;;AACD,WAAK,YAAL;AAAmB;AACjB,iBACErJ,4BAAA,MAAA;AAAKH,YAAAA,SAAS,EAAE0B,QAAM,CAACsU;WAAvB,EACE7V,4BAAA,SAAA;AACEmJ,YAAAA,GAAG,EAAEgD,KAAK,CAACtI,IAAN,CAAWiS;AAChBnK,YAAAA,EAAE,EAAEQ,KAAK,CAACtI,IAAN,CAAWkS;AACfvJ,YAAAA,KAAK,EAAC;WAHR,CADF,CADF;AASD;;AACD,WAAK,eAAL;AAAsB;AACpB,iBACExM,4BAAA,MAAA;AAAKH,YAAAA,SAAS,EAAE0B,QAAM,CAAC6S;WAAvB,EACEpU,4BAAA,CAACkM,WAAD;AAAaC,YAAAA,KAAK,EAAEtI;WAApB,CADF,CADF;AAKD;;AAED;AAAS;AACP,iBACE7D,4BAAA,MAAA;AAAKH,YAAAA,SAAS,EAAE0B,QAAM,CAACyU;WAAvB,EACEhW,4BAAA,MAAA;AAAKH,YAAAA,SAAS,EAAE0B,QAAM,CAACgJ;AAASD,YAAAA,KAAK,EAAEA;WAAvC,EACEtK,4BAAA,CAAC4R,aAAD;AAAe/R,YAAAA,SAAS,EAAE0B,QAAM,CAAC8S;AAAYtC,YAAAA,IAAI,EAAEA;WAAnD,CADF,CADF,CADF;AAOD;AA/CH;AAiDD,GAlDD;;AAoDA,MAAIyD,cAAJ,EAAoB;AAClBlL,IAAAA,KAAK,CAACD,aAAN,GAA0B8B,KAAK,CAACtI,IAAN,CAAW3D,MAAX,GAAoBiM,KAAK,CAACtI,IAAN,CAAW5D,KAAhC,GAAyC,GAAlE;AACAqK,IAAAA,KAAK,CAACpK,MAAN,GAAe,CAAf;AACD;;AAED,MAAI6N,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACuT,EAAR,EAAYA,EAAZ,CAF2B,EAG3B,CAACvT,QAAM,CAAC+G,OAAD,CAAP,EAAkB,CAAC,CAACA,OAAF,IAAa/G,QAAM,CAAC+G,OAAD,CAArC,CAH2B,EAI3B,CAAC/G,QAAM,CAACsT,QAAD,CAAP,EAAmB,CAAC,CAACA,QAAF,IAAc,CAAC,CAACtT,QAAM,CAACsT,QAAD,CAAzC,CAJ2B,EAK3B,CAACtT,QAAM,CAACgN,MAAD,CAAP,EAAiB,CAAC,CAACA,MAAF,IAAYhN,QAAM,CAACgN,MAAD,CAAnC,CAL2B,EAM3B,CAAChN,QAAM,CAACmU,eAAR,EAAyBA,eAAzB,CAN2B,EAO3B,CAACnU,QAAM,CAAC0U,YAAR,EAAsBT,cAAtB,CAP2B,CAA7B;AAWA;AACA;;AAEA,MAAItU,YAAY,IAAI+M,KAAK,CAACC,OAAN,CAAchN,YAAd,CAApB,EAAiD;AAC/C,QAAMgV,eAAe,GAAGhV,YAAY,CACjCxB,MADqB,CACd,UAACsJ,GAAD;AAAA,aAASA,GAAG,CAACmN,UAAJ,CAAe,MAAf,KAA0B5U,QAAM,CAACyH,GAAD,CAAzC;AAAA,KADc,EAErBoN,MAFqB,CAEd,UAACC,GAAD,EAAMrN,GAAN;AACNqN,MAAAA,GAAG,CAACC,IAAJ,CAAStN,GAAT;AAEA,aAAOqN,GAAP;AACD,KANqB,EAMnB,EANmB,CAAxB;AAQAtI,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAamI,eAAb,EAA8B3U,QAA9B,CAA7B;AACD;;AAED,SACEvB,4BAAA,SAAA;AAAQH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAAhC,EACG1M,QAAQ,IACPrB,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACyU;GAAvB,EACEhW,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACgJ;AAASD,IAAAA,KAAK,EAAEA;GAAvC,EACEtK,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC8S;GAAvB,EAAoChT,QAApC,CADF,CADF,CAFJ,EASG,CAACA,QAAD,IAAauU,WAAW,CAACtL,KAAD,CAT3B,EAWGwK,EAAE,KAAK,SAAP,IAAoB9U,4BAAA,aAAA,MAAA,EAAa2V,QAAQ,EAArB,CAXvB,EAaGb,EAAE,KAAK,QAAP,IACC9U,4BAAA,SAAA;AACEH,IAAAA,SAAS,EAAE0B,QAAM,CAACiD;AAClB/D,IAAAA,IAAI,EAAC;kBACM;AACXW,IAAAA,OAAO,EAAE;AACPmU,MAAAA,iBAAiB,CAAC,CAACD,cAAF,CAAjB;AACD;GANH,CAdJ,EAwBGR,EAAE,KAAK,QAAP,IAAmBQ,cAAnB,IACCtV,4BAAA,CAAC2K,OAAD;AACEC,IAAAA,OAAO,EAAE;AACP2K,MAAAA,iBAAiB,CAAC,KAAD,CAAjB;AACD;GAHH,EAKGI,QAAQ,CAAC,aAAD,CALX,CAzBJ,CADF;AAoCD,CAlKM;;ACTA,IAAMY,WAAW,GAA8B,SAAzCA,WAAyC;MACpDpK,aAAAA;MACSR,UAATQ,MAASR;MACTzK,oBAAAA;uBACAsV;MAAAA,8BAAO;AAEP,MAAM7Q,OAAO,GAAG4G,YAAM,CAAC,IAAD,CAAtB;;AAEA,MAAMkK,YAAY,GAAG,SAAfA,YAAe;AACnB,QAAMC,MAAM,GAAGxR,QAAQ,CAACoN,aAAT,CAAuB,KAAvB,CAAf;AACA,QAAMqE,SAAS,GAAGzR,QAAQ,CAACoN,aAAT,CAAuB,KAAvB,CAAlB;AACA,QAAMsE,QAAQ,GAAG1R,QAAQ,CAACoN,aAAT,CAAuB,QAAvB,CAAjB;AACA,QAAMhI,KAAK,GAAGpF,QAAQ,CAACoN,aAAT,CAAuB,OAAvB,CAAd;AACA,QAAMuE,KAAK,GAAG3R,QAAQ,CAAC4R,WAAT,EAAd;AAEAD,IAAAA,KAAK,CAACE,QAAN,CAAeJ,SAAf,EAA0B,CAA1B;AACAA,IAAAA,SAAS,CAAC3D,YAAV,CAAuB,IAAvB,EAA6B,SAA7B;AACA4D,IAAAA,QAAQ,CAACI,WAAT,quBAmB2B7K,KAAK,CAACR,EAnBjC;AA8BArB,IAAAA,KAAK,CAAC7J,IAAN,GAAa,UAAb;AACA6J,IAAAA,KAAK,CAACoI,SAAN,GACEvG,KAAK,CAAC1L,IAAN,KAAe,YAAf,GACI,6DADJ,GAEI,qHAHN;AAKAkW,IAAAA,SAAS,CAACM,WAAV,CAAsBJ,KAAK,CAACK,wBAAN,CAA+B/K,KAAK,CAACtI,IAAN,CAAWkO,IAA1C,CAAtB;AACA2E,IAAAA,MAAM,CAACO,WAAP,CAAmBL,QAAnB;AACAF,IAAAA,MAAM,CAACO,WAAP,CAAmBN,SAAnB;AACAA,IAAAA,SAAS,CAACM,WAAV,CAAsB3M,KAAtB;AAEA,QAAM6M,KAAK,GAAGxR,OAAO,CAACqH,OAAR,CAAgBoK,aAAhB,CAA8B,QAA9B,EAAwCC,eAAtD;AAEAF,IAAAA,KAAK,CAACG,IAAN;AACAH,IAAAA,KAAK,CAACI,KAAN;AACAJ,IAAAA,KAAK,CAAChS,eAAN,CAAsB6N,YAAtB,CAAmC,MAAnC,EAA2CwD,IAA3C;AACAW,IAAAA,KAAK,CAAC9R,IAAN,CAAW4R,WAAX,CAAuBP,MAAvB;AACD,GAxDD;;AA0DAnP,EAAAA,eAAS,CAAC;AACRkP,IAAAA,YAAY;AACb,GAFQ,EAEN,EAFM,CAAT;AAIA,SACEzW,4BAAA,CAAC2U,UAAD;AAAYxI,IAAAA,KAAK,EAAEA;AAAOjL,IAAAA,YAAY,EAAEA;GAAxC,EACElB,4BAAA,MAAA;AACEiH,IAAAA,GAAG,EAAEtB;AACL5B,IAAAA,uBAAuB,EAAE;AACvBC,MAAAA,MAAM,kBAAgB2H,EAAhB;AADiB;GAF3B,CADF,CADF;AAUD,CAhFM;;ICCM6L,mBAAmB,GAA8B,SAAjDA,mBAAiD;MAC5DrL,aAAAA;MACAjL,oBAAAA;MACAsV,YAAAA;;AAEA,MAAIrK,KAAK,CAACtI,IAAN,IAAcsI,KAAK,CAACtI,IAAN,CAAW4T,gBAA7B,EAA+C;AAC7C,WAAOzX,4BAAA,CAACuW,WAAD;AAAapK,MAAAA,KAAK,EAAEA;AAAOjL,MAAAA,YAAY,EAAEA;AAAcsV,MAAAA,IAAI,EAAEA;KAA7D,CAAP;AACD;;AACD,SAAOxW,4BAAA,CAAC2U,UAAD;AAAYxI,IAAAA,KAAK,EAAEA;AAAOjL,IAAAA,YAAY,EAAEA;GAAxC,CAAP;AACD,CATM;;;;ICEMwW,UAAU,GAA8B,SAAxCA,UAAwC;MAC1C7T,YAATsI,MAAStI;MACT3C,oBAAAA;AAEA,MAAI6M,UAAU,GAAe,CAAC,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAAD,CAA7B;;AAEA,MAAIN,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,MAAA;mBAAiB;AAAcH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAAvD,EACE/N,4BAAA,IAAA;AAAG+D,IAAAA,uBAAuB,EAAE;AAAEC,MAAAA,MAAM,EAAEH;AAAV;GAA5B,CADF,CADF;AAKD,CAfM;;;;ICFM8T,SAAS,GAA6B,SAAtCA,SAAsC;6BACjDxL,MACEtI;MAAiB0K,yBAATqG;MAAiBjE,wBAAAA;MAAOiH,uBAAAA;MAElC1W,oBAAAA;AAEA,SACElB,4BAAA,MAAA;mBACc;AACZH,IAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAACC,IAAR,EAAc,IAAd,CADuB,EAEvB,CAACD,QAAM,CAACgN,MAAD,CAAP,EAAiB,CAAC,CAACA,MAAnB,CAFuB,EAGvB,CAAChN,QAAM,CAACL,YAAD,CAAP,EAAuB,CAAC,CAACA,YAAF,IAAkB,CAAC,CAACK,QAAM,CAACL,YAAD,CAAjD,CAHuB,CAAD;GAF1B,EAQElB,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACoP;GAAvB,EAA+BA,KAA/B,CARF,EASE3Q,4BAAA,KAAA;AAAIH,IAAAA,SAAS,EAAE0B,QAAM,CAACiL;GAAtB,EAA8BoL,IAA9B,CATF,CADF;AAaD,CAnBM;;;;ICAMC,YAAY,GAAgC,SAA5CA,YAA4C;wBACvD1L;MAAStI,kBAAAA;MAAe0K,oBAATqG;MACf1T,oBAAAA;AAEA,SACElB,4BAAA,MAAA;mBACc;AACZH,IAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAACC,IAAR,EAAc,IAAd,CADuB,EAEvB,CAACD,QAAM,CAACgN,MAAD,CAAP,EAAiB,CAAC,CAACA,MAAnB,CAFuB,CAAD;GAF1B,EAOEvO,4BAAA,MAAA;AACEH,IAAAA,SAAS,EAAEL,aAAa,CAAC,CACvB,CAAC+B,QAAM,CAACuW,QAAR,EAAkB,IAAlB,CADuB,EAEvB,CAACvW,QAAM,CAACL,YAAD,CAAP,EAAuB,CAAC,CAACA,YAAF,IAAkB,CAAC,CAACK,QAAM,CAACL,YAAD,CAAjD,CAFuB,CAAD;AAIxB6C,IAAAA,uBAAuB,EAAE;AAAEC,MAAAA,MAAM,EAAEH;AAAV;GAL3B,CAPF,CADF;AAiBD,CArBM;;ACLP,IAAMkU,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACpK,KAAD,EAAgBlN,IAAhB;AACvB,MAAMuX,KAAK,GAAG;AACZC,IAAAA,gBAAgB,EAAE,CAChB,CAAC,CAAD,EAAI,CAAJ,CADgB,EAEhB,CAAC,IAAD,EAAO,EAAP,CAFgB,EAGhB,CAAC,IAAD,EAAO,EAAP,CAHgB,EAIhB,CAAC,IAAD,EAAO,EAAP,CAJgB,EAKhB,CAAC,IAAD,EAAO,EAAP,CALgB,EAMhB,CAAC,IAAD,EAAO,EAAP,CANgB,EAOhB,CAAC,IAAD,EAAO,EAAP,CAPgB,EAQhB,CAAC,IAAD,EAAO,EAAP,CARgB,EAShB,CAAC,IAAD,EAAO,EAAP,CATgB,EAUhB,CAAC,IAAD,EAAO,EAAP,CAVgB,EAWhB,CAAC,CAAD,EAAI,EAAJ,CAXgB,CADN;AAcZC,IAAAA,aAAa,EAAE,CACb,CAAC,GAAD,EAAM,CAAN,CADa,EAEb,CAAC,CAAD,EAAI,EAAJ,CAFa;AAdH,GAAd;AAoBA,MAAMC,QAAQ,GAAGH,KAAK,CAACvX,IAAD,CAAL,CAAYb,GAAZ,CAAgB,UAACyP,CAAD;AAAA,qBAAe1B,KAAf,UAAyB0B,CAAC,CAAC,CAAD,CAA1B,UAAkCA,CAAC,CAAC,CAAD,CAAnC;AAAA,GAAhB,CAAjB;AAEA,uCAAmC8I,QAAnC;AACD,CAxBD;;;;ICOaC,WAAW,GAA+B,SAA1CA,WAA0C;wBACrDjM;MACUkM,mBAARxU,KAAQwU;MACC9J,oBAATqG;MAEF1T,oBAAAA;AAEA,MAAI6M,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACgN,MAAD,CAAP,EAAiB,IAAjB,CAF2B,CAA7B;;AAKA,MAAIrN,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,MAAA;mBAAiB;AAAeH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAAxD,EACGsK,KADH,CADF;AAKD,CArBM;;;;ICAMC,SAAS,GAA6B,SAAtCA,SAAsC;wBACjDnM;MACWoC,oBAATqG;mCACA/Q;MAAQ0U,2BAAAA;MAAUF,wBAAAA;MAAOG,yBAAAA;2CAAQC;MAAI3G,0CAAU;MAEjD5Q,oBAAAA;AAEA,MAAI6M,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACgN,MAAD,CAAP,EAAiB,IAAjB,CAF2B,EAG3B,CAAChN,QAAM,CAACgX,QAAR,EAAkB,CAAC,CAACA,QAApB,CAH2B,CAA7B;;AAMA,MAAIrX,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,CAAC8R,OAAD;mBAAqB;AAAajS,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAA1D,EACGsK,KADH,EAEGG,MAAM,IAAIxY,4BAAA,OAAA,MAAA,KAAA,EAAQwY,MAAR,CAFb,CADF;AAMD,CAvBM;;;;ICAME,WAAW,GAA+B,SAA1CA,WAA0C;wBACrDvM;MAAStI,kBAAAA;MAAMpD,kBAAAA;MAAe8N,oBAATqG;MACrB1T,oBAAAA;AAEA,MAAI4Q,OAAJ;AAEA,MAAI/D,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACd,IAAD,CAAP,EAAe,CAAC,CAACA,IAAF,IAAU,CAAC,CAACc,QAAM,CAACd,IAAD,CAAjC,CAD2B,EAE3B,CAACc,QAAM,CAACgN,MAAD,CAAP,EAAiB,IAAjB,CAF2B,CAA7B;;AAKA,MAAIrN,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,UAAQd,IAAR;AACE,SAAK,WAAL;AACA,SAAK,MAAL;AACA,SAAK,cAAL;AACA,SAAK,aAAL;AAAoB;AAClBqR,QAAAA,OAAO,GAAG,GAAV;AACA;AACD;;AACD,SAAK,SAAL;AAAgB;AACdA,QAAAA,OAAO,GAAG,KAAV;AACA;AACD;;AACD;AACEA,MAAAA,OAAO,GAAGrR,IAAV;AAbJ;;AAeA,SACET,4BAAA,CAAC8R,OAAD;AACEjS,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;AACxBhK,IAAAA,uBAAuB,EAAE;AAAEC,MAAAA,MAAM,EAAEH;AAAV;GAF3B,CADF;AAMD,CApCM;;;;ICAM8U,SAAS,GAA6B,SAAtCA,SAAsC;wBACjDxM;MAAS1L,kBAAAA;MAAMoD,kBAAAA;MAAe0K,oBAATqG;MACrB1T,oBAAAA;AAEA,MAAM4Q,OAAO,GAAGrR,IAAhB;AAEA,MAAIsN,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACgN,MAAD,CAAP,EAAiB,IAAjB,CAF2B,EAG3B,CAAChN,QAAM,CAACd,IAAD,CAAP,EAAe,CAAC,CAACA,IAAF,IAAU,CAAC,CAACc,QAAM,CAACd,IAAD,CAAjC,CAH2B,CAA7B;;AAMA,MAAIS,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,CAAC8R,OAAD;AAASjS,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;mBAA0B;GAA3D,EACGlK,IAAI,CAACjE,GAAL,CAAS,UAACkQ,IAAD,EAAOa,KAAP;AAAA,WACR3Q,4BAAA,KAAA;AAAIgJ,MAAAA,GAAG,EAAE2H;AAAO5M,MAAAA,uBAAuB,EAAE;AAAEC,QAAAA,MAAM,EAAE8L;AAAV;KAAzC,CADQ;AAAA,GAAT,CADH,CADF;AAOD,CAvBM;;;;ICCM8I,YAAY,GAAgC,SAA5CA,YAA4C;wBACvDzM;mCACEtI;MAAQ2I,wBAAAA;MAAOqM,0BAAAA;MACNtK,oBAATqG;MAEF1T,oBAAAA;AAEA,MAAI6M,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACgN,MAAD,CAAP,EAAiB,IAAjB,CAF2B,CAA7B;;AAKA,MAAIrN,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,MAAA;mBAAiB;AAAgBH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAAzD,EACE/N,4BAAA,KAAA;AAAIH,IAAAA,SAAS,EAAE0B,QAAM,CAACkO;GAAtB,EAA+BjD,KAA/B,CADF,EAEExM,4BAAA,KAAA;AAAIH,IAAAA,SAAS,EAAE0B,QAAM,CAACuX;GAAtB,EACGD,OAAO,CAACjZ,GAAR,CAAY,UAACkQ,IAAD,EAAOa,KAAP;AAAA,WACX3Q,4BAAA,KAAA;AAAIgJ,MAAAA,GAAG,EAAE8G,IAAI,CAACnE,EAAL,IAAWgF;AAAO9Q,MAAAA,SAAS,EAAE0B,QAAM,CAACuO,IAAI,CAACiJ,MAAN;KAA5C,EACE/Y,4BAAA,IAAA;AACEgZ,MAAAA,IAAI,EAAElJ,IAAI,CAACmJ,QAAL,UAAqBnJ,IAAI,CAACoJ;AAChCrT,MAAAA,MAAM,EAAC;AACPsT,MAAAA,GAAG,EAAC;KAHN,EAKEnZ,4BAAA,OAAA;AAAMH,MAAAA,SAAS,EAAE0B,QAAM,CAAC8W;KAAxB,EAAgCvI,IAAI,CAACtD,KAArC,CALF,EAMGsD,IAAI,CAACsJ,YAAL,IAAqB,GANxB,EAOGtJ,IAAI,CAACsJ,YAAL,IAAqBpZ,4BAAA,OAAA,MAAA,EAAO8P,IAAI,CAACsJ,YAAZ,CAPxB,CADF,CADW;AAAA,GAAZ,CADH,CAFF,CADF;AAoBD,CApCM;;;;ICDMC,WAAW,GAA+B,SAA1CA,WAA0C;wBACrDlN;MACWoC,oBAATqG;mCACA/Q;MAAQyV,wBAAAA;MAAOC,yBAAAA;MAAQL,sBAAAA;MAEzBhY,oBAAAA;AAEA,MAAI6M,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACgN,MAAD,CAAP,EAAiB,IAAjB,CAF2B,CAA7B;;AAKA,MAAIrN,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,aAAA;mBACc;AACZwZ,IAAAA,IAAI,EAAEN;AACNrZ,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAH1B,EAKE/N,4BAAA,IAAA;AACEH,IAAAA,SAAS,EAAE0B,QAAM,CAACqW;AAClBoB,IAAAA,IAAI,EAAEE;AACNrT,IAAAA,MAAM,EAAC;AACPsT,IAAAA,GAAG,EAAC;GAJN,EAMGG,KAAK,CAAC1Z,GAAN,CAAU,UAACkQ,IAAD,EAAOa,KAAP;AAAA,WACT3Q,4BAAA,IAAA;AAAGgJ,MAAAA,GAAG,EAAE2H;AAAO5M,MAAAA,uBAAuB,EAAE;AAAEC,QAAAA,MAAM,EAAE8L,IAAI,CAACjM;AAAf;KAAxC,CADS;AAAA,GAAV,CANH,EASE7D,4BAAA,SAAA,MAAA,EACEA,4BAAA,OAAA;AAAMH,IAAAA,SAAS,EAAE0B,QAAM,CAACgY;GAAxB,EAAiCA,MAAjC,CADF,CATF,CALF,CADF;AAqBD,CArCM;;;;ICIME,cAAc,GAAkC,SAAhDA,cAAgD;MAC3DtN,aAAAA;wBACAA;MAAS2I,gBAAAA;MAAIrG,qBAAAA;MAASrC,oBAAAA;MAAuBsN,0BAAfC;MAGlBrR,eAFZ6D,MACE2D,KACEjM,KAAQyE;MAGZpH,oBAAAA;;kBAE6BkG,cAAQ,CAAC,KAAD;MAA9BC;MAASkG;;AAEhB,MAAMjM,WAAW,GAAG,SAAdA,WAAc;AAClBiM,IAAAA,SAAS,CAAC,IAAD,CAAT;AACD,GAFD;;AAIA,MAAIQ,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAAC8F,OAAR,EAAiBA,OAAjB,CAF2B,EAG3B,CAAC9F,QAAM,CAAC+G,OAAD,CAAP,EAAkBA,OAAO,IAAI/G,QAAM,CAAC+G,OAAD,CAAnC,CAH2B,CAA7B;AAMA,MAAI0F,OAAO,GAAG,CAAC,oBAAD,CAAd;;AAEA,MAAI9M,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACAyM,IAAAA,OAAO,aAAO9M,YAAP,GAAqB,oBAArB,EAAP;AACD;;AAED,SACElB,4BAAA,MAAA;mBAAiB;AAAkBH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAA3D,EACE/N,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACiK;GAAvB,EACExL,4BAAA,MAAA;AACEH,IAAAA,SAAS,EAAE0B,QAAM,CAACgK;AAClBjB,IAAAA,KAAK,EAAE;AAAEsP,MAAAA,eAAe,WAASF,YAAT;AAAjB;GAFT,EAIE1Z,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACK;GAAvB,EACE5B,4BAAA,IAAA;AAAG+D,IAAAA,uBAAuB,EAAE;AAAEC,MAAAA,MAAM,EAAEmI,KAAK,CAACK;AAAhB;GAA5B,CADF,EAGExM,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACsY;GAAvB,EACE7Z,4BAAA,CAACc,MAAD;AAAQM,IAAAA,OAAO,EAAE;AAAA,aAAME,WAAW,EAAjB;AAAA;AAAqBP,IAAAA,KAAK,EAAC;GAA5C,EACGoL,KAAK,CAAC0N,MAAN,CAAajC,IADhB,CADF,CAHF,CAJF,CADF,EAeE5X,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACqH;GAAvB,EACE5I,4BAAA,CAACwX,mBAAD;AAAqBrL,IAAAA,KAAK,EAAEA,KAAK,CAAC2D;AAAM5O,IAAAA,YAAY,EAAE8M;GAAtD,CADF,CAfF,CADF,EAqBG8G,EAAE,IACD9U,4BAAA,aAAA;AAAYH,IAAAA,SAAS,EAAE0B,QAAM,CAACuY;GAA9B,EACE9Z,4BAAA,CAACwO,YAAD;AACEpC,IAAAA,MAAM,EAAEA;AACRqC,IAAAA,OAAO,EAAEA;AACTvN,IAAAA,YAAY,EAAEA;GAHhB,CADF,CAtBJ,CADF;AAiCD,CA9DM;;;;ICDM6Y,YAAY,GAAgC,SAA5CA,YAA4C;MACvD5N,aAAAA;MACkBoC,cAAlBpC,MAASyI;MACT1T,oBAAAA;AAEA,MAAM8Y,SAAS,GAAGzH,IAAI,CAAC0H,GAAL,OAAA1H,IAAI,EACjBpG,KAAK,CAACtI,IAAN,CAAWjE,GAAX,CACD,UAACkQ,IAAD;AAAA,WAAWA,IAAI,CAACjM,IAAL,IAAaiM,IAAI,CAACjM,IAAL,CAAU3D,MAAxB,IAAmC4P,IAAI,CAACA,IAAL,CAAUjM,IAAV,CAAe3D,MAA5D;AAAA,GADC,CADiB,CAAtB;AAMA,MAAMga,oBAAoB,GAAG/N,KAAK,CAACtI,IAAN,CAAWjE,GAAX,CAAe,UAACkQ,IAAD;AAC1C,QAAM7P,KAAK,GAAI6P,IAAI,CAACjM,IAAL,IAAaiM,IAAI,CAACjM,IAAL,CAAU5D,KAAxB,IAAkC6P,IAAI,CAACA,IAAL,CAAUjM,IAAV,CAAesW,KAA/D;AACA,QAAMja,MAAM,GAAI4P,IAAI,CAACjM,IAAL,IAAaiM,IAAI,CAACjM,IAAL,CAAU3D,MAAxB,IAAmC4P,IAAI,CAACA,IAAL,CAAUjM,IAAV,CAAesW,KAAjE;AACA,WAAOla,KAAK,IAAIC,MAAM,GAAG8Z,SAAb,CAAZ;AACD,GAJ4B,CAA7B;AAMA,MAAMI,QAAQ,GAAGF,oBAAoB,CAAC9D,MAArB,CAA4B,UAACiE,GAAD,EAAMzO,CAAN;AAAA,WAAYyO,GAAG,GAAGzO,CAAlB;AAAA,GAA5B,CAAjB;AAEA,MAAImC,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACgN,MAAD,CAAP,EAAiB,IAAjB,CAF2B,EAG3B,CAAChN,QAAM,CAAC+Y,aAAR,EAAuBnO,KAAK,CAAC2I,EAAN,KAAa,SAApC,CAH2B,EAI3B,CAACvT,QAAM,CAAC4K,KAAK,CAAC7D,OAAP,CAAP,EAAwB,CAAC,CAAC6D,KAAK,CAAC7D,OAAR,IAAmB/G,QAAM,CAAC4K,KAAK,CAAC7D,OAAP,CAAjD,CAJ2B,CAA7B;;AAOA,MAAIpH,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,MAAA;mBAAiB;AAAgBH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAAzD,EACE/N,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACuX;GAAvB,EACG3M,KAAK,CAACtI,IAAN,CAAWjE,GAAX,CAAe,UAACkQ,IAAD,EAAOa,KAAP;AACd,QAAM4J,YAAY,GAAIL,oBAAoB,CAACvJ,KAAD,CAApB,GAA8ByJ,QAA/B,GAA2C,GAAhE;AAEA,WACEpa,4BAAA,MAAA;AACEH,MAAAA,SAAS,EAAE0B,QAAM,CAACuO;AAClB9G,MAAAA,GAAG,EAAE8G,IAAI,CAACnE;AACVrB,MAAAA,KAAK,EAAE;AAAErK,QAAAA,KAAK,EAAKsa,YAAL;AAAP;KAHT,EAKGzK,IAAI,CAACrP,IAAL,KAAc,WAAd,GACCT,4BAAA,CAACyZ,cAAD;AACEtN,MAAAA,KAAK,EAAE2D;AACP5O,MAAAA,YAAY,EAAE,CAAC,kBAAD;KAFhB,CADD,GAMClB,4BAAA,CAACwX,mBAAD;AACErL,MAAAA,KAAK,EAAE2D;AACP5O,MAAAA,YAAY,EAAE,CAAC,kBAAD;KAFhB,CAXJ,CADF;AAmBD,GAtBA,CADH,CADF,EA0BGiL,KAAK,CAAC2I,EAAN,IACC9U,4BAAA,aAAA;AAAYH,IAAAA,SAAS,EAAE0B,QAAM,CAACuY;GAA9B,EACE9Z,4BAAA,CAACwO,YAAD;AACEpC,IAAAA,MAAM,EAAED,KAAK,CAACC;AACdqC,IAAAA,OAAO,EAAEtC,KAAK,CAACsC;AACfvN,IAAAA,YAAY,EAAEA;GAHhB,CADF,CA3BJ,CADF;AAsCD,CApEM;;;;ICLMsZ,QAAQ,GAA4B,SAApCA,QAAoC;MAC/CzJ,iBAAAA;MACAtQ,YAAAA;MACAY,gBAAAA;MACAoZ,eAAAA;AAEA,MAAM1M,UAAU,GAAG,CACjB,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CADiB,EAEjB,CAACD,QAAM,CAACd,IAAD,CAAP,EAAe,CAAC,CAACA,IAAF,IAAU,CAAC,CAACc,QAAM,CAACd,IAAD,CAAjC,CAFiB,EAGjB,CAACc,QAAM,CAACwP,SAAR,EAAmB,CAAC,CAACA,SAArB,CAHiB,EAIjB,CAACxP,QAAM,CAACmZ,UAAR,EAAoB,CAAC,CAACD,OAAtB,CAJiB,CAAnB;AAOA,SACEza,4BAAA,MAAA;mBAAiB;AAAYH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAArD,EACG1M,QADH,CADF;AAKD,CAlBM;;;;ICAMsZ,YAAY,GAAgC,SAA5CA,YAA4C;wBACvD5Z;MAAAA,gCAAQ;AAER,MAAMgN,UAAU,GAAG,CACjB,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CADiB,EAEjB,CAACD,QAAM,CAACR,KAAD,CAAP,EAAgB,CAAC,CAACA,KAAF,IAAWQ,QAAM,CAACR,KAAD,CAAjC,CAFiB,CAAnB;AAKA,SACEf,4BAAA,MAAA;mBACc;iBACF;AACVH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAH1B,EAKE/N,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC4V;GAAvB,CALF,CADF;AASD,CAjBM;;ACLP,IAAMyD,SAAS,GAAG,SAAZA,SAAY,CAChB/M,MADgB,EAEhBgN,GAFgB,EAGhBC,GAHgB,EAIhBC,IAJgB;AAMhB,MAAIC,CAAC,GAAGzI,IAAI,CAAC0I,GAAL,CAASpN,MAAT,CAAR;AACAmN,EAAAA,CAAC,IAAI,GAAL;;AAEA,MAAIA,CAAC,IAAI,CAAL,IAAUA,CAAC,IAAI,EAAnB,EAAuB;AACrB,WAAOD,IAAP;AACD;;AAEDC,EAAAA,CAAC,IAAI,EAAL;;AAEA,MAAIA,CAAC,KAAK,CAAV,EAAa;AACX,WAAOH,GAAP;AACD;;AAED,MAAIG,CAAC,IAAI,CAAL,IAAUA,CAAC,IAAI,CAAnB,EAAsB;AACpB,WAAOF,GAAP;AACD;;AAED,SAAOC,IAAP;AACD,CAxBD;;;;ICMaG,kBAAkB,GAAsC,SAAxDA,kBAAwD;MACnEza,YAAAA;uBACA+V;MAAAA,8BAAO;MACPsC,aAAAA;MACAzX,gBAAAA;AAEA,MAAM8Z,IAAI,GAAG;AACXC,IAAAA,EAAE,EAAE;AACFlY,MAAAA,IAAI,EAAE;AACJ2X,QAAAA,GAAG,EAAE,UADD;AAEJC,QAAAA,GAAG,EAAE,UAFD;AAGJC,QAAAA,IAAI,EAAE;AAHF,OADJ;AAMF5X,MAAAA,OAAO,EAAE;AACP0X,QAAAA,GAAG,EAAE,QADE;AAEPC,QAAAA,GAAG,EAAE,SAFE;AAGPC,QAAAA,IAAI,EAAE;AAHC;AANP,KADO;AAaXM,IAAAA,EAAE,EAAE;AACFnY,MAAAA,IAAI,EAAE;AACJ2X,QAAAA,GAAG,EAAE,MADD;AAEJC,QAAAA,GAAG,EAAE,OAFD;AAGJC,QAAAA,IAAI,EAAE;AAHF,OADJ;AAMF5X,MAAAA,OAAO,EAAE;AACP0X,QAAAA,GAAG,EAAE,SADE;AAEPC,QAAAA,GAAG,EAAE,UAFE;AAGPC,QAAAA,IAAI,EAAE;AAHC;AANP;AAbO,GAAb;AA2BA,MAAMO,UAAU,GAAMxC,KAAN,SAAe8B,SAAS,CACtC9B,KADsC,EAEtCqC,IAAI,CAAC3E,IAAD,CAAJ,CAAW/V,IAAX,EAAiBoa,GAFqB,EAGtCM,IAAI,CAAC3E,IAAD,CAAJ,CAAW/V,IAAX,EAAiBqa,GAHqB,EAItCK,IAAI,CAAC3E,IAAD,CAAJ,CAAW/V,IAAX,EAAiBsa,IAJqB,CAAxC;AAOA,SACE/a,4BAAA,MAAA;mBAAiB;AAAuBH,IAAAA,SAAS,EAAE0B,QAAM,CAACC;GAA1D,EACGH,QADH,EAEErB,4BAAA,OAAA;AAAMH,IAAAA,SAAS,EAAE0B,QAAM,CAACuX;GAAxB,EAAgCwC,UAAhC,CAFF,CADF;AAMD,CA9CM;;ACUA,IAAMC,aAAa,GAAiC,SAA9CA,aAA8C;MACzD/E,YAAAA;MACArK,aAAAA;MACAqP,cAAAA;MACAC,kBAAAA;MACAC,sBAAAA;MACA1L,qBAAAA;6BACA7D,MACEtI;MAAQ8X,6BAAAA;MAAY5a,wBAAAA;MAEtBG,oBAAAA;AAEA,MAAM0a,UAAU,GACd1a,YAAY,IAAIA,YAAY,CAAC6L,OAAb,CAAqB,MAArB,MAAiC,CAAC,CAAlD,GAAsD,OAAtD,GAAgE,OADlE;AAEA,MAAM8O,SAAS,GAAG3a,YAAY,IAAIA,YAAY,CAAC6L,OAAb,CAAqB,SAArB,MAAoC,CAAC,CAAvE;AACA,MAAM+O,QAAQ,GAAG5a,YAAY,IAAIA,YAAY,CAAC6L,OAAb,CAAqB,OAArB,MAAkC,CAAC,CAApE;AAEA,MAAIiB,OAAO,GAAG,EAAd;;AAEA,MAAI9M,YAAY,IAAI+M,KAAK,CAACC,OAAN,CAAchN,YAAd,CAApB,EAAiD;AAC/C8M,IAAAA,OAAO,GAAG9M,YAAY,CAACxB,MAAb,CAAoB,UAACoQ,IAAD;AAC5B,aAAOA,IAAI,KAAK,MAAhB;AACD,KAFS,CAAV;AAGD;;AAED,MAAMiB,SAAS,GAAG,CAAC,CAAC4K,UAAU,CAACI,IAAX,CAAgB,UAACjM,IAAD;AAAA,WAAUA,IAAI,CAACrP,IAAL,KAAc,aAAxB;AAAA,GAAhB,CAApB;AAEA,SACET,4BAAA,CAAC8Q,IAAD;AACE5P,IAAAA,YAAY,EAAE8M;AACdjN,IAAAA,KAAK,EAAEA,KAAK,IAAI6a;AAChBrN,IAAAA,MAAM,EAAEpC,KAAK,CAACyI;AACd7D,IAAAA,SAAS,EAAEA;GAJb,EAMG4K,UAAU,CAAC/b,GAAX,CAAe,UAACoc,SAAD;AACd,YAAQA,SAAS,CAACvb,IAAlB;AACE,WAAK,aAAL;AAAoB;AAClB,iBACET,4BAAA,CAACwa,QAAD;AAAUzJ,YAAAA,SAAS,EAAEA;AAAW0J,YAAAA,OAAO;AAACzR,YAAAA,GAAG,EAAEgT,SAAS,CAACrQ;WAAvD,EACE3L,4BAAA,wBAAA,MAAA,EACGwW,IAAI,KAAK,IAAT,GAAgB,YAAhB,GAA+B,UADlC,EAEGwF,SAAS,CAAC9C,GAAV,IACClZ,4BAAA,IAAA;AACEgZ,YAAAA,IAAI,EAAEgD,SAAS,CAAC9C;AAChBC,YAAAA,GAAG,EAAC;AACJtT,YAAAA,MAAM,EAAC;WAHT,EAKGmW,SAAS,CAACpE,IALb,CAHJ,EAWG,CAACoE,SAAS,CAAC9C,GAAX,IAAkB8C,SAAS,CAACpE,IAX/B,CADF,CADF;AAiBD;;AACD,WAAK,UAAL;AAAiB;AACf,iBACE5X,4BAAA,CAACwa,QAAD;AAAUzJ,YAAAA,SAAS,EAAEA;AAAW0J,YAAAA,OAAO;AAACzR,YAAAA,GAAG,EAAEgT,SAAS,CAACrQ;WAAvD,EACE3L,4BAAA,wBAAA,MAAA,EACEA,4BAAA,CAAC2D,SAAD;AAAWC,YAAAA,IAAI,EAAC;AAAU5C,YAAAA,IAAI,EAAC;WAA/B,CADF,EAEGgb,SAAS,CAACpE,IAFb,CADF,CADF;AAQD;;AACD,WAAK,UAAL;AAAiB;AACf,cAAMlG,MAAM,GAAKsK,SAAS,CAACtK,MAAV,IAAoBhK,OAAO,CAACsU,SAAS,CAACtK,MAAX,CAA5B,IACd,MADF;AAGA,iBACE1R,4BAAA,CAACwa,QAAD;AACEzJ,YAAAA,SAAS,EAAEA;AACX0J,YAAAA,OAAO;AACPzR,YAAAA,GAAG,EAAEgT,SAAS,CAACrQ;AACflL,YAAAA,IAAI,EAAC;WAJP,EAMET,4BAAA,CAACgR,SAAD;AACEC,YAAAA,WAAW,EAAE+K,SAAS,CAACC;AACvBxb,YAAAA,IAAI,EAAEiR,MAAM,IAAI;AAChBR,YAAAA,MAAM,EAAEsF;WAHV,CANF,CADF;AAcD;;AAED,WAAK,aAAL;AAAoB;AAClB,iBACExW,4BAAA,CAACwa,QAAD;AAAUzJ,YAAAA,SAAS,EAAEA;AAAW0J,YAAAA,OAAO;AAACzR,YAAAA,GAAG,EAAEgT,SAAS,CAACrQ;WAAvD,EACE3L,4BAAA,CAACkb,kBAAD;AACEpC,YAAAA,KAAK,EAAEkD,SAAS,CAACE;AACjBzb,YAAAA,IAAI,EAAEob,SAAS,GAAG,SAAH,GAAe;AAC9BrF,YAAAA,IAAI,EAAEA;WAHR,EAKExW,4BAAA,CAAC2D,SAAD;AAAWC,YAAAA,IAAI,EAAC;AAAO5C,YAAAA,IAAI,EAAC;WAA5B,CALF,CADF,CADF;AAWD;;AACD,WAAK,kBAAL;AAAyB;AACvB,iBACEhB,4BAAA,CAACwa,QAAD;AAAUzJ,YAAAA,SAAS,EAAEA;AAAW0J,YAAAA,OAAO;AAACzR,YAAAA,GAAG,EAAEgT,SAAS,CAACrQ;WAAvD,EACE3L,4BAAA,wBAAA,MAAA,EACEA,4BAAA,CAAC2a,YAAD,MAAA,CADF,kEAAA,CADF,CADF;AAOD;;AACD,WAAK,WAAL;AAAkB;AAChB,iBACE3a,4BAAA,CAACwa,QAAD;AAAUzJ,YAAAA,SAAS,EAAEA;AAAW0J,YAAAA,OAAO;AAACzR,YAAAA,GAAG,EAAEgT,SAAS,CAACrQ;WAAvD,EACE3L,4BAAA,wBAAA,MAAA,EACGgc,SAAS,CAACG,SAAV,IAAuBnc,4BAAA,CAAC2a,YAAD,MAAA,CAD1B,EAGGqB,SAAS,CAACI,KAHb,CADF,CADF;AASD;;AAED;AAAS;AACP,iBAAO,IAAP;AACD;AAtFH;AAwFD,GAzFA,CANH,EAgGG,CAACZ,MAAM,IAAIC,UAAX,KACCzb,4BAAA,CAACwa,QAAD;AACEzJ,IAAAA,SAAS,EAAEA;AACX0J,IAAAA,OAAO;AACPha,IAAAA,IAAI,EAAEgb,UAAU,GAAG,UAAH,GAAgB;GAHlC,EAKEzb,4BAAA,CAAC2D,SAAD;AAAWC,IAAAA,IAAI,EAAE6X,UAAU,GAAG,UAAH,GAAgB;AAAQza,IAAAA,IAAI,EAAC;GAAxD,CALF,CAjGJ,EA0GG8a,QAAQ,IAAItF,IAAI,KAAK,IAArB,IACCxW,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACgC;GAAvB,EACEvD,4BAAA,CAAC+P,cAAD;AACEC,IAAAA,aAAa,EAAEA;AACf5O,IAAAA,OAAO,EAAE;AAAA,aAAYsa,cAAc,CAAC,UAAD,EAAa,KAAb,CAA1B;AAAA;GAFX,CADF,CA3GJ,CADF;AAqHD,CAhJM;;ICGMW,YAAY,GAAgC,SAA5CA,YAA4C;MACvDlQ,aAAAA;MACAjL,oBAAAA;MACAsV,YAAAA;MACAgF,cAAAA;MACAC,kBAAAA;MACAC,sBAAAA;MACA1L,qBAAAA;;AAEA,UAAQ7D,KAAK,CAAC1L,IAAd;AACE,SAAK,KAAL;AAAY;AACV,eACET,4BAAA,CAACqO,GAAD;AACErN,UAAAA,IAAI,EAAC;AACLuN,UAAAA,MAAM,EAAEpC,KAAK,CAACyI;AACd7T,UAAAA,KAAK,EAAEoL,KAAK,CAACtI,IAAN,CAAW9C;AAClBG,UAAAA,YAAY,EAAEA;SAJhB,EAMGiL,KAAK,CAACtI,IAAN,CAAW+T,IANd,CADF;AAUD;;AAED,SAAK,cAAL;AAAqB;AACnB,eAAO5X,4BAAA,CAACoY,WAAD;AAAajM,UAAAA,KAAK,EAAEA;AAAOjL,UAAAA,YAAY,EAAEA;SAAzC,CAAP;AACD;;AAED,SAAK,YAAL;AAAmB;AACjB,eAAOlB,4BAAA,CAACsY,SAAD;AAAWnM,UAAAA,KAAK,EAAEA;AAAOjL,UAAAA,YAAY,EAAEA;SAAvC,CAAP;AACD;;AAED,SAAK,MAAL;AAAa;AACX,eACElB,4BAAA,CAACub,aAAD;AACEpP,UAAAA,KAAK,EAAEA;AACPqK,UAAAA,IAAI,EAAErK,KAAK,CAACtI,IAAN,CAAW2S;AACjBtV,UAAAA,YAAY,EAAEA;AACdsa,UAAAA,MAAM,EAAEA;AACRC,UAAAA,UAAU,EAAEA;AACZzL,UAAAA,aAAa,EAAEA;AACf0L,UAAAA,cAAc,EAAEA;SAPlB,CADF;AAWD;;AAED,SAAK,IAAL;AACA,SAAK,IAAL;AACA,SAAK,IAAL;AACA,SAAK,IAAL;AACA,SAAK,YAAL;AACA,SAAK,GAAL;AACA,SAAK,WAAL;AACA,SAAK,MAAL;AACA,SAAK,SAAL;AAAgB;AACd,eAAO1b,4BAAA,CAAC0Y,WAAD;AAAavM,UAAAA,KAAK,EAAEA;AAAOjL,UAAAA,YAAY,EAAEA;SAAzC,CAAP;AACD;;AAED,SAAK,OAAL;AACE,aAAOlB,4BAAA,CAAC0X,UAAD;AAAYvL,QAAAA,KAAK,EAAEA;AAAOjL,QAAAA,YAAY,EAAEA;OAAxC,CAAP;;AAEF,SAAK,IAAL;AACA,SAAK,IAAL;AAAW;AACT,eAAOlB,4BAAA,CAAC2Y,SAAD;AAAWxM,UAAAA,KAAK,EAAEA;AAAOjL,UAAAA,YAAY,EAAEA;SAAvC,CAAP;AACD;;AAED,SAAK,kBAAL;AAAyB;AACvB,eAAOlB,4BAAA,CAAC6X,YAAD;AAAc1L,UAAAA,KAAK,EAAEA;AAAOjL,UAAAA,YAAY,EAAEA;SAA1C,CAAP;AACD;;AAED,SAAK,YAAL;AAAmB;AACjB,eAAOlB,4BAAA,CAAC2X,SAAD;AAAWxL,UAAAA,KAAK,EAAEA;AAAOjL,UAAAA,YAAY,EAAEA;SAAvC,CAAP;AACD;;AAED,SAAK,SAAL;AAAgB;AACd,eAAOlB,4BAAA,CAAC4Y,YAAD;AAAczM,UAAAA,KAAK,EAAEA;AAAOjL,UAAAA,YAAY,EAAEA;SAA1C,CAAP;AACD;;AAED,SAAK,QAAL;AACE,aAAOlB,4BAAA,CAACqZ,WAAD;AAAalN,QAAAA,KAAK,EAAEA;AAAOjL,QAAAA,YAAY,EAAEA;OAAzC,CAAP;;AAEF,SAAK,OAAL;AACE,aAAOlB,4BAAA,CAAC0O,KAAD;AAAOvC,QAAAA,KAAK,EAAEA;AAAOjL,QAAAA,YAAY,EAAEA;OAAnC,CAAP;;AAEF,SAAK,WAAL;AACE,aAAOlB,4BAAA,CAACyZ,cAAD;AAAgBtN,QAAAA,KAAK,EAAEA;AAAOjL,QAAAA,YAAY,EAAEA;OAA5C,CAAP;;AAEF,SAAK,OAAL;AACA,SAAK,YAAL;AACA,SAAK,YAAL;AACA,SAAK,OAAL;AACA,SAAK,eAAL;AACA,SAAK,KAAL;AACE,aACElB,4BAAA,CAACwX,mBAAD;AACErL,QAAAA,KAAK,EAAEA;AACPjL,QAAAA,YAAY,EAAEA;AACdsV,QAAAA,IAAI,EAAEA;OAHR,CADF;;AAOF,SAAK,SAAL;AACE,aAAOxW,4BAAA,CAAC+Z,YAAD;AAAc5N,QAAAA,KAAK,EAAEA;AAAOjL,QAAAA,YAAY,EAAEA;OAA1C,CAAP;;AAEF,SAAK,eAAL;AACE,aAAOlB,4BAAA,CAAC6P,YAAD;AAAc1D,QAAAA,KAAK,EAAEA;AAAOjL,QAAAA,YAAY,EAAEA;OAA1C,CAAP;;AAEF;AAAS;AACP,eAAO,IAAP;AACD;AAlGH;AAoGD,CA7GM;;;;ICPMob,KAAK,GAAyB,SAA9BA,KAA8B;wBACzCnQ;MACWoC,oBAATqG;mCACA/Q;MACE0Y,yBAAAA;8CACAC;MAASpQ,+BAAAA;MAAQqC,gCAAAA;MAASgO,6BAAAA;MAAoBC,oCAAdC;MAA2BC,kCAAAA;MAAW9H,2BAAAA;MAG1E5T,oBAAAA;;kBAE4CkG,cAAQ,CAAC,KAAD;MAA7CkO;MAAgBC;;AAEvB,MAAMjL,KAAK,GAAwB,EAAnC;AAEA,MAAIyD,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACgN,MAAD,CAAP,EAAiB,CAAC,CAACA,MAAF,IAAY,CAAC,CAAChN,QAAM,CAACgN,MAAD,CAArC,CAF2B,CAA7B;;AAKA,MAAIrN,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,MAAIqb,SAAJ,EAAe;AACb,QAAM7b,KAAK,GAAG,CAAC6b,SAAS,CAACC,QAAV,KAAuB,OAAvB,GAAiC,MAAjC,GAA0C,OAA3C,CAAd;AAEA9O,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAahN,KAAb,EAAoBQ,QAApB,CAA7B;AAEA+I,IAAAA,KAAK,CAACsP,eAAN,GAAwB7B,gBAAgB,CAAC6E,SAAS,CAACE,MAAX,EAAmB,kBAAnB,CAAxC;AACD;;AAED,MAAMnH,QAAQ,GAAG,SAAXA,QAAW,CAAC3H,OAAD;AAAA,WACfhO,4BAAA,CAACwO,YAAD;AACEpC,MAAAA,MAAM,EAAEA;AACRqC,MAAAA,OAAO,EAAEA;AACTvN,MAAAA,YAAY,EAAE8M,OAAO,IAAI9M;KAH3B,CADe;AAAA,GAAjB;;AAQA,SACElB,4BAAA,MAAA;mBAAiB;AAAQH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAAjD,EACE/N,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACwb;GAAvB,EACE/c,4BAAA,CAACoJ,KAAD;AAAOhB,IAAAA,SAAS,EAAEqU;AAAMlT,IAAAA,KAAK,EAAEmT;AAAapU,IAAAA,OAAO,EAAC;GAApD,CADF,CADF,EAIEtI,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC8D;AAAMiF,IAAAA,KAAK,EAAEA;GAApC,EACGiS,MAAM,CAAC3c,GAAP,CAAW,UAACkQ,IAAD;AAAA,WACV9P,4BAAA,CAACqc,YAAD;AACErT,MAAAA,GAAG,EAAE8G,IAAI,CAACnE;AACVQ,MAAAA,KAAK,EAAE2D;AACP5O,MAAAA,YAAY,EAAEA;KAHhB,CADU;AAAA,GAAX,CADH,CAJF,EAaG4T,EAAE,KAAK,QAAP,IACC9U,4BAAA,SAAA;AACEH,IAAAA,SAAS,EAAE0B,QAAM,CAACiD;AAClB/D,IAAAA,IAAI,EAAC;kBACM;AACXW,IAAAA,OAAO,EAAE;AACPmU,MAAAA,iBAAiB,CAAC,CAACD,cAAF,CAAjB;AACD;GANH,CAdJ,EAwBGR,EAAE,KAAK,QAAP,IAAmBQ,cAAnB,IACCtV,4BAAA,CAAC2K,OAAD;AACEC,IAAAA,OAAO,EAAE;AACP2K,MAAAA,iBAAiB,CAAC,KAAD,CAAjB;AACD;GAHH,EAKGI,QAAQ,CAAC,aAAD,CALX,CAzBJ,CADF;AAoCD,CA3EM;;;;ICFMqH,SAAS,GAA6B,SAAtCA,SAAsC;wBACjD7Q;MACWoC,oBAATqG;MACA/Q,kBAAAA;yCACAA,KACE2Y;MAASpU,kCAAAA;MAAWmB,8BAAAA;MAAO6C,+BAAAA;MAAQqC,gCAAAA;MAGvCvN,oBAAAA;AAEA,MAAI6M,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACgN,MAAD,CAAP,EAAiB,IAAjB,CAF2B,CAA7B;;AAKA,MAAIrN,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,MAAA;mBAAiB;AAAaH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAAtD,EACE/N,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC0b;GAAvB,EACEjd,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACwb;GAAvB,EACE/c,4BAAA,CAACoJ,KAAD;AAAOhB,IAAAA,SAAS,EAAEA;AAAWmB,IAAAA,KAAK,EAAEA;AAAOjB,IAAAA,OAAO,EAAC;GAAnD,CADF,CADF,EAIEtI,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC8D;GAAvB,EACGxB,IAAI,CAAC0Y,MAAL,CAAY3c,GAAZ,CAAgB,UAACkQ,IAAD;AAAA,WACf9P,4BAAA,CAACqc,YAAD;AAAcrT,MAAAA,GAAG,EAAE8G,IAAI,CAACnE;AAAIQ,MAAAA,KAAK,EAAE2D;AAAM5O,MAAAA,YAAY,EAAE,CAAC,MAAD;KAAvD,CADe;AAAA,GAAhB,CADH,CAJF,CADF,EAWElB,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC2b;GAAvB,EACEld,4BAAA,CAACwO,YAAD;AACEpC,IAAAA,MAAM,EAAEA;AACRqC,IAAAA,OAAO,EAAEA;AACTvN,IAAAA,YAAY,EAAEA;GAHhB,CADF,CAXF,CADF;AAqBD,CAxCM;;;;ICFMic,aAAa,GAAiC,SAA9CA,aAA8C;wBACzDhR;MAAkBoC,oBAATqG;MAAiB/Q,kBAAAA;MAC1B3C,oBAAAA;AAEA,MAAI6M,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACgN,MAAD,CAAP,EAAiB,CAAC,CAACA,MAAnB,CAF2B,CAA7B;;AAKA,MAAIrN,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,SACEvB,4BAAA,MAAA;mBAAiB;AAAiBH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;GAA1D,EACGlK,IAAI,CAACjE,GAAL,CAAS,UAACkQ,IAAD;AAAA,WACR9P,4BAAA,CAACqc,YAAD;AACErT,MAAAA,GAAG,EAAE8G,IAAI,CAACnE;AACVQ,MAAAA,KAAK,EAAE2D;AACP5O,MAAAA,YAAY,EAAC;KAHf,CADQ;AAAA,GAAT,CADH,CADF;AAWD,CAxBM;;;;ICIMkc,OAAO,GAA2B,SAAlCA,OAAkC;wBAC7CjR;MACE7D,qBAAAA;MACAuR,oBAAAA;MACStL,oBAATqG;MACWyI,yBAAXC;MACA9Q,mBAAAA;MACA+P,oBAAAA;MAEFrb,oBAAAA;;kBAE8BkG,cAAQ,CAAC,KAAD;MAA/BmW;MAASC;;AAChB,MAAMvW,GAAG,GAAGsF,YAAM,CAAC,IAAD,CAAlB;;AAEA,MAAMkR,iBAAiB,GAAG,SAApBA,iBAAoB;AACxBD,IAAAA,UAAU,CAAC,CAACD,OAAF,CAAV;;AAEA,QAAIA,OAAJ,EAAa;AACX9X,MAAAA,WAAW,CAAC,EAAD,EAAK,cAAL,EAAqB,OAArB,CAAX;AACA,UAAMiY,IAAI,GAAGzW,GAAG,CAAC+F,OAAJ,CAAY2Q,qBAAZ,EAAb;;AACA,UAAID,IAAI,CAAC5X,GAAL,GAAW,CAAf,EAAkB;AAChBmB,QAAAA,GAAG,CAAC+F,OAAJ,CAAY4Q,cAAZ,CAA2B;AAAEC,UAAAA,QAAQ,EAAE;AAAZ,SAA3B;AACD;AACF,KAND,MAMO;AACLpY,MAAAA,WAAW,CAAC,EAAD,EAAK,aAAL,EAAoB,OAApB,CAAX;AACD;AACF,GAZD;;AAcA,MAAIsI,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAACgN,MAAD,CAAP,EAAiB,CAAC,CAACA,MAAnB,CAF2B,EAG3B,CAAChN,QAAM,CAAC+G,OAAD,CAAP,EAAkB,CAAC,CAACA,OAAF,IAAa/G,QAAM,CAAC+G,OAAD,CAArC,CAH2B,EAI3B,CAAC,CAAC/G,QAAM,CAACgc,OAAR,CAAD,EAAmB,CAAC,CAACA,OAArB,CAJ2B,CAA7B;AAOA,MAAMvP,OAAO,GAAG,CAAC,QAAD,CAAhB;;AAEA,MAAI9M,YAAJ,EAAkB;AAChB8M,AACAD,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AACD;;AAED,MAAMuc,cAAc,GAAGjE,MAAM,GAAGA,MAAM,CAACkE,QAAV,GAAqB,UAAlD;AACA,MAAMC,aAAa,GAAGnE,MAAM,GAAGA,MAAM,CAACoE,MAAV,GAAmBZ,WAA/C;AAEA,SACErd,4BAAA,MAAA;AAAKiH,IAAAA,GAAG,EAAEA;AAAKpH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;mBAA0B;GAAjE,EACE/N,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACkO;GAAvB,EAAgCjD,KAAK,IAAIxM,4BAAA,KAAA,MAAA,EAAKwM,KAAL,CAAzC,CADF,EAEExM,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC8D;GAAvB,EACGkX,MAAM,CAAC3c,GAAP,CAAW,UAACkQ,IAAD;AAAA,WACV9P,4BAAA,CAACqc,YAAD;AAAcrT,MAAAA,GAAG,EAAE8G,IAAI,CAACnE;AAAIQ,MAAAA,KAAK,EAAE2D;AAAM5O,MAAAA,YAAY,EAAE8M;KAAvD,CADU;AAAA,GAAX,CADH,CAFF,EAOEhO,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC2b;GAAvB,EACEld,4BAAA,CAACc,MAAD;AACEE,IAAAA,IAAI,EAAC;AACLD,IAAAA,KAAK,EAAC;AACNK,IAAAA,OAAO,EAAE;AAAA,aAAYqc,iBAAiB,EAA7B;AAAA;AACTvc,IAAAA,YAAY,EAAC;GAJf,EAMGqc,OAAO,GAAGO,cAAH,GAAoBE,aAN9B,EAOEhe,4BAAA,CAAC2D,SAAD;AAAWC,IAAAA,IAAI,EAAC;GAAhB,CAPF,CADF,CAPF,CADF;AAqBD,CAlEM;;;;ACZP;AACA,IAgBasa,gBAAgB,GAAoC,SAApDA,gBAAoD;wBAC/D/R;MACWoC,oBAATqG;mCACA/Q;MACE0Y,yBAAAA;MACArD,sBAAAA;8CACAsD;MAASC,6BAAAA;MAAMG,kCAAAA;MAAWuB,4BAAAA;MAAKpF,+BAAAA;MAAQxP,8BAAAA;MAG3CrI,oBAAAA;AAEA,MAAMoJ,KAAK,GAAwB,EAAnC;AACA,MAAM8T,WAAW,GAAwB,EAAzC;AAEA,MAAMC,QAAQ,UAAQtW,YAAY,CAACgR,MAAD,CAAlC;;mBAEsB/R,mCAAS,CAAC;AAC9BD,IAAAA,SAAS,EAAE,CADmB;AAE9BuX,IAAAA,WAAW,EAAE;AAFiB,GAAD;MAAxBrX;MAAKC;;AAKZK,EAAAA,eAAS,CAAC;AACR,QAAIL,MAAJ,EAAY;AACV,UACGqH,MAAM,KAAK,QAAX,IAAuBvJ,MAAM,CAACC,UAAP,IAAqB,GAA7C,IACCsJ,MAAM,KAAK,SAAX,IAAwBvJ,MAAM,CAACC,UAAP,IAAqB,GAD9C,IAEA,CAACsJ,MAHH,EAIE;AACA9I,QAAAA,WAAW,CAAC,aAAD,EAAgByT,GAAhB,EAAqB,MAArB,CAAX;AACD;AACF;AACF,GAVQ,EAUN,CAAChS,MAAD,CAVM,CAAT;;AAYA,MAAM5F,WAAW,GAAG,SAAdA,WAAc;AAClBmE,IAAAA,WAAW,CAAC,aAAD,EAAgByT,GAAhB,EAAqB,OAArB,CAAX;AACD,GAFD;;AAIA,MAAInL,UAAU,GAAe,CAC3B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD2B,EAE3B,CAACD,QAAM,CAAC8c,QAAD,CAAP,EAAmB,CAAC,CAACtF,MAAF,IAAY,CAAC,CAACxX,QAAM,CAAC8c,QAAD,CAAvC,CAF2B,EAG3B,CAAC9c,QAAM,CAACgd,WAAR,EAAqB,CAAC,CAAC3B,SAAvB,CAH2B,EAI3B,CAACrb,QAAM,CAACgN,MAAD,CAAP,EAAiB,CAAC,CAACA,MAAF,IAAY,CAAC,CAAChN,QAAM,CAACgN,MAAD,CAArC,CAJ2B,CAA7B;AAOA,MAAIP,OAAO,GAAG,CAAC,gBAAD,CAAd;;AAEA,MAAI9M,YAAJ,EAAkB;AAChB6M,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAa7M,YAAb,EAA2BK,QAA3B,CAA7B;AAEAyM,IAAAA,OAAO,aAAO9M,YAAP,GAAqB,gBAArB,EAAP;AACD;;AAED,MAAI0b,SAAJ,EAAe;AACbwB,IAAAA,WAAW,CAACxE,eAAZ,GAA8B7B,gBAAgB,CAC5C6E,SAAS,CAACE,MADkC,EAE5C,eAF4C,CAA9C;AAKA,QAAM/b,KAAK,GAAG,CAAC6b,SAAS,CAACC,QAAV,KAAuB,OAAvB,GAAiC,MAAjC,GAA0C,OAA3C,CAAd;AACA9O,IAAAA,UAAU,GAAGD,gBAAgB,CAACC,UAAD,EAAahN,KAAb,EAAoBQ,QAApB,CAA7B;;AAEA,QAAIgN,MAAM,KAAK,SAAf,EAA0B;AACxBjE,MAAAA,KAAK,CAACsP,eAAN,GAAwB7B,gBAAgB,CACtC6E,SAAS,CAACE,MAD4B,EAEtC,kBAFsC,CAAxC;AAID;AACF;;AAED,SACE9c,4BAAA,IAAA;mBACc;AACZH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;AACxBiL,IAAAA,IAAI,QAAME;AACVrT,IAAAA,MAAM,EAAC;AACPzE,IAAAA,OAAO,EAAE;AAAA,aAAYE,WAAW,EAAvB;AAAA;AACT2F,IAAAA,GAAG,EAAEA;GANP,EAQG8R,MAAM,KAAK,MAAX,IACC/Y,4BAAA,wBAAA,MAAA,EACEA,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACgK;AAASjB,IAAAA,KAAK,EAAEA;GAAvC,CADF,EAEEtK,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACid;AAAelU,IAAAA,KAAK,EAAE8T;GAA7C,CAFF,CATJ,EAeEpe,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC4c;GAAvB,EACEne,4BAAA,CAACqO,GAAD;AAAKrN,IAAAA,IAAI,EAAC;AAAQD,IAAAA,KAAK,EAAC;AAAUG,IAAAA,YAAY,EAAC;GAA/C,EACGid,GADH,CADF,CAfF,EAoBEne,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACib;GAAvB,EACExc,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAACkd;GAAvB,EACEze,4BAAA,CAACoJ,KAAD;AAAOhB,IAAAA,SAAS,EAAEqU;AAAMlT,IAAAA,KAAK,EAAEA;AAAOjB,IAAAA,OAAO,EAAC;GAA9C,CADF,CADF,CApBF,EAyBEtI,4BAAA,MAAA;AAAKH,IAAAA,SAAS,EAAE0B,QAAM,CAAC8D;GAAvB,EACGkX,MAAM,CAAC3c,GAAP,CAAW,UAACkQ,IAAD;AAAA,WACV9P,4BAAA,CAACqc,YAAD;AAAcrT,MAAAA,GAAG,EAAE8G,IAAI,CAACnE;AAAIQ,MAAAA,KAAK,EAAE2D;AAAM5O,MAAAA,YAAY,EAAE8M;KAAvD,CADU;AAAA,GAAX,CADH,CAzBF,CADF;AAiCD,CAtGM;;ICPM0Q,YAAY,GAAgC,SAA5CA,YAA4C;MACvDvS,aAAAA;MACAjL,oBAAAA;MACAsa,cAAAA;MACAC,kBAAAA;MACAzL,qBAAAA;MACA0L,sBAAAA;MACA7W,gBAAAA;AAEA,MAAMmJ,OAAO,GAAG;AACdnJ,IAAAA,QAAQ,EAAEA,QAAQ,IAAI;AADR,GAAhB;;AAIA,UAAQsH,KAAK,CAAC1L,IAAd;AACE,SAAK,gBAAL;AAAuB;AACrB,eAAOT,4BAAA,CAACmd,aAAD;AAAehR,UAAAA,KAAK,EAAEA;AAAOjL,UAAAA,YAAY,EAAEA;SAA3C,CAAP;AACD;;AAED,SAAK,SAAL;AAAgB;AACd,eACElB,4BAAA,CAAC8E,aAAD;AAAeiO,UAAAA,KAAK,EAAE/E;SAAtB,EACEhO,4BAAA,CAACod,OAAD;AAASjR,UAAAA,KAAK,EAAEA;AAAOjL,UAAAA,YAAY,EAAEA;SAArC,CADF,CADF;AAKD;;AAED,SAAK,OAAL;AAAc;AACZ,eAAOlB,4BAAA,CAACsc,KAAD;AAAOnQ,UAAAA,KAAK,EAAEA;AAAOjL,UAAAA,YAAY,EAAEA;SAAnC,CAAP;AACD;;AAED,SAAK,MAAL;AAAa;AACX,eAAOlB,4BAAA,CAACgd,SAAD;AAAW7Q,UAAAA,KAAK,EAAEA;AAAOjL,UAAAA,YAAY,EAAEA;SAAvC,CAAP;AACD;;AAED,SAAK,cAAL;AAAqB;AACnB,eAAOlB,4BAAA,CAACke,gBAAD;AAAkB/R,UAAAA,KAAK,EAAEA;AAAOjL,UAAAA,YAAY,EAAEA;SAA9C,CAAP;AACD;;AAED;AAAS;AACP,eACElB,4BAAA,CAAC8E,aAAD;AAAeiO,UAAAA,KAAK,EAAE/E;SAAtB,EACEhO,4BAAA,CAACqc,YAAD;AACElQ,UAAAA,KAAK,EAAEA;AACPjL,UAAAA,YAAY,EAAEA;AACdsa,UAAAA,MAAM,EAAEA;AACRC,UAAAA,UAAU,EAAEA;AACZzL,UAAAA,aAAa,EAAEA;AACf0L,UAAAA,cAAc,EAAEA;SANlB,CADF,CADF;AAYD;AAtCH;AAwCD,CArDM;;;;ICHMiD,aAAa,GAAiC,SAA9CA,aAA8C;MACzDtd,gBAAAA;MACAZ,YAAAA;MACAM,aAAAA;MACA0M,gBAAAA;MACArM,gBAAAA;AAEA,MAAM2M,UAAU,GAAe,CAC7B,CAACxM,QAAM,CAACC,IAAR,EAAc,IAAd,CAD6B,EAE7B,CAACD,QAAM,CAACd,IAAD,CAAP,EAAe,CAAC,CAACc,QAAM,CAACd,IAAD,CAAvB,CAF6B,EAG7B,CAACc,QAAM,CAACR,KAAD,CAAP,EAAgB,CAAC,CAACQ,QAAM,CAACR,KAAD,CAAR,IAAmB,CAAC,CAACA,KAArC,CAH6B,EAI7B,CAACQ,QAAM,CAACkM,QAAR,EAAkB,CAAC,CAACA,QAApB,CAJ6B,CAA/B;AAOA,SACEzN,4BAAA,SAAA;mBACc;AACZH,IAAAA,SAAS,EAAEL,aAAa,CAACuO,UAAD;AACxBtN,IAAAA,IAAI,EAAC;AACLW,IAAAA,OAAO,EAAE;AAAA,aAAYA,QAAO,CAACX,IAAD,CAAnB;AAAA;GAJX,EAMET,4BAAA,CAAC2D,SAAD;AAAW3C,IAAAA,IAAI,EAAC;AAAS4C,IAAAA,IAAI,EAAEnD;AAAMS,IAAAA,YAAY,EAAC;GAAlD,CANF,EAOGG,QAAQ,IAAIrB,4BAAA,OAAA;AAAMH,IAAAA,SAAS,EAAE0B,QAAM,CAACqW;GAAxB,EAA+BvW,QAA/B,CAPf,CADF;AAWD,CAzBM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"ui-kit-2.cjs.development.js","sources":["../src/utils/makeClassName.ts","../src/Button/loader.tsx","../src/Button/index.tsx","../src/SvgSymbol/icons.ts","../src/SvgSymbol/index.tsx","../src/Switcher/index.tsx","../src/utils/makeStyleContext.ts","../src/utils/BlockContext.ts","../src/utils/postMessage.ts","../src/Lazy/index.tsx","../src/constants.ts","../src/utils/converCase.ts","../src/Image/RenderPicture.tsx","../src/Image/index.tsx","../src/Popover/index.tsx","../src/Footnote/index.tsx","../src/utils/viewportSize.ts","../src/DotsOnImage/index.tsx","../src/Tag/index.tsx","../src/MediaCaption/index.tsx","../src/Table/index.tsx","../src/MaterialNote/index.tsx","../src/BookmarkButton/index.tsx","../src/MaterialTitle/index.tsx","../src/Dropdown/index.tsx","../src/Toolbar/index.tsx","../src/Meta/index.tsx","../src/Timestamp/index.tsx","../src/utils/DangerousHtml.tsx","../src/EmbedBlock/EmbedGif.tsx","../src/EmbedBlock/EmbedBlock.tsx","../src/EmbedBlock/IframeBlock.tsx","../src/EmbedBlock/index.tsx","../src/QuoteBlock/index.tsx","../src/CardTitle/index.tsx","../src/ChapterBlock/index.tsx","../src/utils/generateGradient.ts","../src/SimpleTitle/index.tsx","../src/RichTitle/index.tsx","../src/SimpleBlock/index.tsx","../src/ListBlock/index.tsx","../src/RelatedBlock/index.tsx","../src/SourceBlock/index.tsx","../src/SensitiveBlock/index.tsx","../src/GroupedBlock/index.tsx","../src/MetaItem/index.tsx","../src/MetaItemLive/index.tsx","../src/utils/pluralize.ts","../src/DocumentItemsCount/index.tsx","../src/Meta/MetaContainer.tsx","../src/RenderBlocks/index.tsx","../src/Cover/index.tsx","../src/HalfBlock/index.tsx","../src/ImportantLead/index.tsx","../src/Spoiler/index.tsx","../src/RelatedRichBlock/index.tsx","../src/RawHtmlBlock/index.tsx","../src/ToolbarButton/index.tsx"],"sourcesContent":["export type ClassNames = (string[] | string | boolean)[][]\n\nexport const makeClassName = (list: ClassNames): string => {\n return list\n .filter(([, active]) => active)\n .map(([className]) => className)\n .join(' ')\n}\n\nexport default makeClassName\n","import React from 'react'\n\nconst Loader: React.FC = () => (\n <svg\n width=\"30px\"\n height=\"30px\"\n viewBox=\"0 0 30 30\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g>\n <path\n d=\"M15 0C6.716 0 0 6.716 0 15c0 8.284 6.716 15 15 15 8.284 0 15-6.716 15-15 0-8.284-6.716-15-15-15zm0 2c7.18 0 13 5.82 13 13s-5.82 13-13 13S2 22.18 2 15 7.82 2 15 2z\"\n opacity=\"0.3\"\n />\n </g>\n <g fillRule=\"evenodd\">\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"0 15 15\"\n to=\"360 15 15\"\n dur=\"1000ms\"\n repeatCount=\"indefinite\"\n />\n <path d=\"M15 0c8.18 0 14.83 6.547 14.997 14.686L30 15h-2c0-7.077-5.655-12.833-12.693-12.996L15 2V0z\" />\n </g>\n </svg>\n)\n\nexport default Loader\n","import React, { FC } from 'react'\nimport { makeClassName } from '../utils/makeClassName'\nimport Loader from './loader'\nimport { ButtonProps } from './Button.types'\n\nimport styles from './Button.module.css'\n\nexport const Button: FC<ButtonProps> = ({\n theme = 'gold',\n size = 'default',\n state = 'isDefault',\n styleContext = 'isInToolbar',\n disabled = false,\n onClick,\n children\n}) => {\n const handleClick = (): void => {\n if (disabled || !onClick) {\n return\n }\n\n onClick()\n }\n\n return (\n <button\n data-testid=\"button\"\n className={makeClassName([\n [styles.root, true],\n [styles[size], !!size],\n [styles[theme], !!theme],\n [styles[state], !!state && !!styles[state]],\n [styles[styleContext], !!styleContext]\n ])}\n disabled={disabled}\n onClick={handleClick}\n type=\"button\"\n >\n {state === 'isLoading' ? (\n <span className={styles.loader}>\n <Loader />\n </span>\n ) : (\n children\n )}\n </button>\n )\n}\n","export const icons = {\n meduzaLogo: {\n width: 544,\n height: 115,\n content:\n '<path d=\"M59.1008614,49.65632 L59.1008614,106.01472 L84.9480411,114.24 L84.9480411,49.65632 L101.574882,49.65632 L101.574882,106.01472 L127.270909,114.24 L144.048902,91.392 L127.422062,91.392 L127.422062,35.7952 L101.726035,26.80832 L84.9480411,46.60992 L84.9480411,35.7952 L59.2520145,26.80832 L42.4740206,46.60992 L42.4740206,35.7952 L16.7779939,26.80832 L0,49.65632 L16.6268408,49.65632 L16.6268408,106.01472 L42.4740206,114.24 L42.4740206,49.65632 L59.1008614,49.65632 L59.1008614,49.65632 Z M336.61795,91.392 L336.61795,35.0336 L310.770769,26.80832 L310.770769,105.25312 L336.466796,114.24 L353.24479,94.4384 L353.24479,105.25312 L378.940817,114.24 L395.71881,91.392 L379.091969,91.392 L379.091969,35.0336 L353.24479,26.80832 L353.24479,91.392 L336.61795,91.392 L336.61795,91.392 Z M527.373159,38.08 L502.130592,26.80832 L472.202278,41.1264 L502.130592,52.39808 L461.016949,72.352 L461.016949,104.94848 L486.86413,114.24 L502.130592,94.28608 L502.130592,105.25312 L527.977771,114.24 L544,91.23968 L527.373159,91.23968 L527.373159,38.08 L527.373159,38.08 Z M177.453737,114.24 L207.079744,102.35904 L177.453737,91.23968 L177.453737,75.24608 L216.300083,56.3584 L194.231731,26.80832 L151.606557,47.37152 L151.606557,103.12064 L177.453737,114.24 L177.453737,114.24 Z M455.424284,89.56416 L423.984441,79.968 L453.459295,42.19264 L416.577937,26.80832 L397.230341,51.48416 L428.821339,61.23264 L398.741873,98.85568 L436.076687,114.24 L455.424284,89.56416 L455.424284,89.56416 Z M486.86413,91.392 L486.86413,68.84864 L502.130592,61.53728 L502.130592,91.392 L486.86413,91.392 L486.86413,91.392 Z M177.453737,41.58336 L190.452904,59.55712 L177.453737,65.80224 L177.453737,41.58336 L177.453737,41.58336 Z M222.95082,103.12064 L248.797999,114.24 L291.27202,97.18016 L291.27202,29.7024 L222.95082,0 L222.95082,26.30784 L265.424841,43.21536 L265.424841,97.33248 L248.797999,91.23968 L248.797999,43.71584 L222.95082,51.94112 L222.95082,103.12064 L222.95082,103.12064 Z\" />'\n },\n\n menu: {\n width: 24,\n height: 24,\n content:\n '<path d=\"M2 21h20M2 12h20M2 3h20\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" vector-effect=\"non-scaling-stroke\" />'\n },\n\n fb: {\n width: 16,\n height: 18,\n content:\n '<path d=\"M15.117 1H.883A.883.883 0 0 0 0 1.883v14.234A.883.883 0 0 0 .883 17h7.663v-6.196H6.461V8.389h2.085V6.61a2.91 2.91 0 0 1 3.106-3.192c.622-.003 1.244.03 1.863.095v2.16h-1.279c-1.002 0-1.196.476-1.196 1.176v1.541h2.39l-.31 2.415h-2.08V17h4.077a.883.883 0 0 0 .883-.883V1.883A.883.883 0 0 0 15.117 1\" />'\n },\n\n tw: {\n width: 20,\n height: 18,\n content:\n '<path d=\"M20 3.1c-.7.3-1.5.6-2.4.7.8-.5 1.5-1.4 1.8-2.4-.8.5-1.7.8-2.6 1-.7-.8-1.8-1.4-3-1.4-2.3 0-4.1 1.9-4.1 4.3 0 .3 0 .7.1 1-3.3-.1-6.4-1.8-8.4-4.4-.3.6-.5 1.4-.5 2.2 0 1.5.7 2.8 1.8 3.6-.7 0-1.3-.2-1.9-.5v.1c0 2.1 1.4 3.8 3.3 4.2-.3.1-.7.2-1.1.2-.3 0-.5 0-.8-.1.5 1.7 2 2.9 3.8 3-1.3 1-3.1 1.6-5 1.6-.3 0-.7 0-1-.1C1.8 17.3 4 18 6.3 18 13.8 18 18 11.5 18 5.8v-.6c.8-.5 1.5-1.2 2-2.1\" fill-rule=\"nonzero\"/>'\n },\n\n vk: {\n width: 20,\n height: 18,\n content:\n '<path d=\"M16.517 9.851s2.587-3.768 2.886-5.058c.1-.396-.1-.694-.498-.694h-2.288c-.498 0-.697.199-.896.595 0 0-1.194 2.678-2.686 4.364-.498.496-.697.694-.995.694-.2 0-.299-.198-.299-.694V4.793c0-.595-.1-.793-.597-.793H7.463c-.2 0-.398.198-.398.397 0 .595.796.694.796 2.28v3.174c0 .595 0 .893-.299.893-.796 0-2.686-2.777-3.681-5.851-.2-.595-.398-.794-.995-.794H.597C.299 4.1 0 4.298 0 4.694c0 .595.697 3.471 3.483 7.34C5.373 14.611 7.86 16 10.05 16c1.393 0 1.691-.198 1.691-.793v-1.984c0-.496.2-.694.498-.694s.895.1 2.189 1.388C15.92 15.405 16.02 16 16.915 16h2.587c.299 0 .498-.1.498-.595 0-.595-.796-1.587-1.89-2.876-.498-.595-1.195-1.29-1.493-1.686-.398-.397-.299-.595-.1-.992\" fill-rule=\"nonzero\"/>'\n },\n\n ok: {\n width: 9,\n height: 18,\n content:\n '<path d=\"M4.5 2c-2.2 0-4 1.8-4 4s1.8 4 4 4 4-1.8 4-4-1.8-4-4-4m0 5.7c-.9 0-1.6-.8-1.6-1.7 0-.9.7-1.6 1.6-1.6.9 0 1.7.7 1.7 1.7 0 .8-.8 1.6-1.7 1.6\" fill-rule=\"nonzero\"/> <path d=\"M6.127 12.982a9.194 9.194 0 0 0 2.307-.904c.602-.301.703-1.004.402-1.507-.301-.502-1.104-.703-1.605-.401-1.605 1.004-3.812 1.004-5.417 0-.502-.302-1.304-.201-1.605.3-.401.604-.2 1.206.401 1.608a9.194 9.194 0 0 0 2.307.904L.61 15.092c-.502.401-.502 1.104 0 1.607a1.357 1.357 0 0 0 1.705 0l2.207-2.11L6.73 16.7a1.357 1.357 0 0 0 1.705 0c.502-.402.502-1.105 0-1.608l-2.307-2.109\" fill-rule=\"nonzero\"/>'\n },\n\n tg: {\n width: 18,\n height: 18,\n content:\n '<path d=\"M9 18c-5 0-9-4-9-9s4-9 9-9 9 4 9 9-4 9-9 9zm-1.5-7.4c1.1 1 2 3.3 2 3.3.4.2.7.1.8-.4l2.1-7.4c.1-.6-.2-.8-.6-.7L4 8.3c-.6.2-.6.5-.1.7 0 .1 2.4.6 3.6 1.6z\" fill-rule=\"nonzero\"/>'\n },\n\n meduzaSymbol: {\n width: 24,\n height: 18,\n content:\n '<path d=\"M10.026233,17.0968697 L13.9737671,18.3530831 L13.9737671,10.9855851 L13.9737671,8.48948164 L16.5131165,8.48948164 L16.5131165,17.0968697 L20.4375656,18.3530831 L23,14.8636014 L20.4606507,14.8636014 L20.4606507,6.37252945 L16.5362015,5 L13.9737671,8.02421743 L13.9737671,6.37252945 L10.049318,5 L7.48688354,8.02421743 L7.48688354,6.37252945 L3.56243443,5 L1,8.48948164 L3.53934943,8.48948164 L3.53934943,17.0968697 L7.48688354,18.3530831 L7.48688354,8.48948164 L10.026233,8.48948164 L10.026233,17.0968697 Z\" />'\n },\n\n backward: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M13 0v2.01c6.672.263 12 5.754 12 12.49C25 21.404 19.404 27 12.5 27S0 21.404 0 14.5c0-3.493 1.441-6.758 3.936-9.105a.75.75 0 111.028 1.092A10.965 10.965 0 001.5 14.5c0 6.075 4.925 11 11 11s11-4.925 11-11c0-5.907-4.656-10.727-10.499-10.989L13 6 8 3l5-3zm3.295 11.33v1.25h-3.16v1.63c.32-.32.86-.56 1.47-.56 1.13 0 2.14.81 2.14 2.16 0 1.42-1.06 2.31-2.67 2.31-1.16 0-2-.38-2.57-1l.79-.99c.45.47 1.07.73 1.77.73.79 0 1.24-.45 1.24-.99 0-.59-.44-.99-1.2-.99-.55 0-1 .16-1.4.54l-.99-.26v-3.83h4.58zm-5.94 0V18h-1.42v-4.84l-1.11 1.13-.81-.85 2.1-2.11h1.24z\" fill-rule=\"nonzero\"/>'\n },\n\n forward: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M12 0l5 3-5 3V3.511C6.157 3.773 1.5 8.592 1.5 14.5c0 6.075 4.925 11 11 11s11-4.925 11-11c0-3.075-1.267-5.946-3.464-8.013a.75.75 0 011.028-1.092A12.465 12.465 0 0125 14.5C25 21.404 19.404 27 12.5 27S0 21.404 0 14.5C0 7.764 5.328 2.272 12 2.01V0zm4.295 11.33v1.25h-3.16v1.63c.32-.32.86-.56 1.47-.56 1.13 0 2.14.81 2.14 2.16 0 1.42-1.06 2.31-2.67 2.31-1.16 0-2-.38-2.57-1l.79-.99c.45.47 1.07.73 1.77.73.79 0 1.24-.45 1.24-.99 0-.59-.44-.99-1.2-.99-.55 0-1 .16-1.4.54l-.99-.26v-3.83h4.58zm-5.94 0V18h-1.42v-4.84l-1.11 1.13-.81-.85 2.1-2.11h1.24z\" fill-rule=\"nonzero\"/>'\n },\n\n download: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M12.5 2C19.404 2 25 7.596 25 14.5S19.404 27 12.5 27 0 21.404 0 14.5 5.596 2 12.5 2zm0 1.5c-6.075 0-11 4.925-11 11s4.925 11 11 11 11-4.925 11-11-4.925-11-11-11zm6 15.75a.75.75 0 01.102 1.493l-.102.007h-12a.75.75 0 01-.102-1.493l.102-.007h12zm-6-12a.75.75 0 01.743.648L13.25 8v7.598l1.834-1.222a.75.75 0 11.832 1.248l-3 2a.75.75 0 01-.832 0l-3-2a.75.75 0 11.832-1.248l1.834 1.223V8a.75.75 0 01.648-.743l.102-.007z\" fill-rule=\"nonzero\" fill=\"currentColor\" />'\n },\n\n play: {\n width: 62,\n height: 62,\n content:\n '<path d=\"M24.35 41.772a.5.5 0 0 1-.739-.439V20.667a.5.5 0 0 1 .74-.44l18.944 10.334a.5.5 0 0 1 0 .878L24.351 41.772z\" fill-rule=\"nonzero\"/>'\n },\n\n pause: {\n width: 22,\n height: 22,\n content:\n '<path d=\"M12.832 4h2.8c.276 0 .5.224.5.5v12.394c0 .277-.224.5-.5.5h-2.8c-.276 0-.5-.223-.5-.5V4.5c0-.276.224-.5.5-.5zM6.5 4h2.8c.277 0 .5.224.5.5v12.394c0 .277-.223.5-.5.5H6.5c-.276 0-.5-.223-.5-.5V4.5c0-.276.224-.5.5-.5z\" />'\n },\n\n speedHalf: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M7.212 15.198V12.29l-.676.724L6 12.406 7.35 11h.825v4.198h-.963zM8.056 18H7.3l4.23-7h.765l-4.24 7zm2.99 0v-.735c1.717-1.27 2.134-1.679 2.134-2.14 0-.389-.288-.578-.665-.578-.467 0-.884.263-1.083.525l-.496-.64c.417-.493 1.053-.693 1.599-.693.913 0 1.599.462 1.599 1.312 0 .682-.556 1.28-1.708 2.14h1.737V18h-3.118zm5.998-2.918l-1.39 1.48-.567-.577 1.4-1.49-1.4-1.48.566-.588 1.39 1.49 1.4-1.49.557.588-1.4 1.48 1.4 1.49-.556.577-1.4-1.48z\" /><path d=\"M12.5 27C19.404 27 25 21.404 25 14.5S19.404 2 12.5 2 0 7.596 0 14.5 5.596 27 12.5 27zm0-1.5c-6.075 0-11-4.925-11-11s4.925-11 11-11 11 4.925 11 11-4.925 11-11 11z\" />'\n },\n\n speedOne: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M9.955 18v-4.84l-1.11 1.13-.81-.85 2.1-2.11h1.24V18h-1.42zm4.6-2.78l-1.4 1.41-.57-.55 1.41-1.42-1.41-1.41.57-.56 1.4 1.42 1.41-1.42.56.56-1.41 1.41 1.41 1.42-.56.55-1.41-1.41z\" fill-rule=\"nonzero\"/><path d=\"M12.5 27C19.404 27 25 21.404 25 14.5S19.404 2 12.5 2 0 7.596 0 14.5 5.596 27 12.5 27zm0-1.5c-6.075 0-11-4.925-11-11s4.925-11 11-11 11 4.925 11 11-4.925 11-11 11z\" fill-rule=\"nonzero\"/>'\n },\n\n speedOneHalf: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M5.62 18v-4.84l-1.11 1.13-.81-.85 2.1-2.11h1.24V18H5.62zm3.37-2.67v-2.77l-.68.69-.54-.58 1.36-1.34h.83v4h-.97zM9.84 18h-.76l4.26-6.67h.77L9.84 18zm3.01 0v-.7c1.73-1.21 2.15-1.6 2.15-2.04 0-.37-.29-.55-.67-.55-.47 0-.89.25-1.09.5l-.5-.61c.42-.47 1.06-.66 1.61-.66.92 0 1.61.44 1.61 1.25 0 .65-.56 1.22-1.72 2.04h1.75V18h-3.14zm6.04-2.78l-1.4 1.41-.57-.55 1.41-1.42-1.41-1.41.57-.56 1.4 1.42 1.41-1.42.56.56-1.41 1.41 1.41 1.42-.56.55-1.41-1.41z\" fill-rule=\"nonzero\"/><path d=\"M12.5 27C19.404 27 25 21.404 25 14.5S19.404 2 12.5 2 0 7.596 0 14.5 5.596 27 12.5 27zm0-1.5c-6.075 0-11-4.925-11-11s4.925-11 11-11 11 4.925 11 11-4.925 11-11 11z\" fill-rule=\"nonzero\"/>'\n },\n\n speedTwo: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M7.147 18v-1.158c2.685-2.078 3.471-2.792 3.471-3.64 0-.6-.52-.9-1.061-.9-.748 0-1.318.311-1.76.797L7 12.127C7.64 11.352 8.613 11 9.527 11c1.396 0 2.507.827 2.507 2.202 0 1.18-.924 2.203-2.625 3.506h2.675V18H7.147zm7.916-2.874l-1.377 1.457-.56-.568 1.386-1.468-1.386-1.458.56-.58 1.377 1.469 1.386-1.468.551.579-1.386 1.458L17 16.015l-.55.568-1.387-1.457z\" fill-rule=\"nonzero\"/><path d=\"M12.5 27C19.404 27 25 21.404 25 14.5S19.404 2 12.5 2 0 7.596 0 14.5 5.596 27 12.5 27zm0-1.5c-6.075 0-11-4.925-11-11s4.925-11 11-11 11 4.925 11 11-4.925 11-11 11z\" fill-rule=\"nonzero\"/>'\n },\n\n podcastBookmark: {\n width: 25,\n height: 27,\n content:\n '<path d=\"M12.5 27C19.404 27 25 21.404 25 14.5S19.404 2 12.5 2 0 7.596 0 14.5 5.596 27 12.5 27zm0-1.5c-6.075 0-11-4.925-11-11s4.925-11 11-11 11 4.925 11 11-4.925 11-11 11z\" /> <path d=\"M17.071 8.25H8a.75.75 0 00-.75.75v11.545l.007.104a.75.75 0 001.228.468l4.05-3.437 4.051 3.437a.75.75 0 001.235-.572V9a.75.75 0 00-.75-.75zm-.75 1.499v9.176l-3.3-2.8-.098-.07a.75.75 0 00-.873.07l-3.3 2.799V9.749h7.571z\" data-stroke=\"true\" /> <path d=\"M17.071 8.25H8a.75.75 0 00-.75.75v11.545l.007.104a.75.75 0 001.228.468l4.05-3.437 4.051 3.437a.75.75 0 001.235-.572V9a.75.75 0 00-.75-.75z\" data-fill=\"true\" />'\n },\n\n reaction: {\n width: 16,\n height: 16,\n content:\n '<path data-theme=\"light\" fill=\"#D09959\" d=\"M1 2h14v12H1z\"/> <path d=\"M0 1.778C0 .8.8 0 1.778 0h12.444C15.2 0 16 .8 16 1.778v12.444C16 15.2 15.2 16 14.222 16H1.778C.8 16 0 15.2 0 14.222V1.778zM6.8 11.7l2.5.8V6.2h1.6v5.5l2.5.8 1.6-2.3h-1.6V4.8L10.9 4 9.3 5.9V4.8L6.8 4 5.1 5.9V4.8L2.6 4 1 6.2h1.6v5.5l2.5.8V6.2h1.7v5.5z\" />'\n },\n\n cross: {\n width: 18,\n height: 18,\n content:\n '<path fill=\"none\" fill-rule=\"evenodd\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\" vector-effect=\"non-scaling-stroke\" d=\"M2 2l14 14M16 2L2 16\" />'\n },\n\n link: {\n width: 24,\n height: 24,\n content:\n '<path d=\"M9.158 18.928c-1.065 0-2.13-.405-2.94-1.215-1.624-1.623-1.624-4.262 0-5.884l.643-.645c.327-.326.854-.326 1.18 0 .325.326.325.853 0 1.178l-.645.645c-.972.972-.972 2.554 0 3.526.973.972 2.554.973 3.526 0l2.842-2.84c.97-.972.97-2.555 0-3.527-.325-.325-.325-.854 0-1.18.325-.324.853-.324 1.178 0 1.623 1.625 1.623 4.264 0 5.885l-2.84 2.84c-.81.81-1.877 1.216-2.942 1.216\" /> <path d=\"M10.578 14.184c-.213 0-.426-.082-.59-.244-.784-.785-1.217-1.83-1.217-2.94 0-1.113.433-2.158 1.22-2.944l2.84-2.84c1.622-1.62 4.26-1.62 5.883 0 1.622 1.623 1.622 4.262 0 5.883l-.645.643c-.325.326-.852.326-1.178 0-.325-.325-.325-.852 0-1.178l.645-.644c.972-.97.972-2.554 0-3.526s-2.556-.972-3.527 0l-2.84 2.842c-.47.47-.73 1.096-.73 1.762 0 .667.26 1.293.73 1.763.325.327.325.854 0 1.18-.163.162-.376.244-.59.244\" />'\n },\n\n search: {\n width: 16,\n height: 16,\n content:\n '<g transform=\"translate(2 1)\" fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\" vector-effect=\"non-scaling-stroke\"><circle cx=\"5.5\" cy=\"5.5\" r=\"5.5\"/><path d=\"M11.37 13.442l-.995-1.272\"/></g>'\n },\n\n card: {\n width: 15,\n height: 15,\n content:\n '<path d=\"M9 5.5a.5.5 0 0 1 .5.5v5a.5.5 0 0 1-.5.5H4a.5.5 0 0 1-.5-.5V6a.5.5 0 0 1 .5-.5h5zm-.5 1h-4v4h4v-4zm2.5-3a.5.5 0 0 1 .5.5v5a.5.5 0 1 1-1 0V4.5H6a.5.5 0 0 1 0-1h5z\" fill-rule=\"nonzero\"/>'\n },\n\n podcast: {\n width: 15,\n height: 15,\n content:\n '<path d=\"M5.252 11.432A.5.5 0 0 1 4.5 11V4a.5.5 0 0 1 .752-.432l6 3.5a.5.5 0 0 1 0 .864l-6 3.5zm.248-1.303L10.008 7.5 5.5 4.87v5.26z\" fill-rule=\"nonzero\" />'\n },\n\n arrow: {\n width: 12,\n height: 12,\n content:\n '<path d=\"M3 7l3 3.5L9 7M6 10V1\" fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.2\" vector-effect=\"non-scaling-stroke\" />'\n },\n\n brent: {\n width: 9,\n height: 12,\n content:\n '<g fill=\"#999\" fill-rule=\"nonzero\"><path d=\"M4.332 0l.528.606c2.528 2.902 3.804 5.07 3.804 6.634A4.332 4.332 0 110 7.24C0 5.676 1.276 3.508 3.804.606L4.332 0zm0 2.143l-.176.212C2.313 4.589 1.4 6.248 1.4 7.24a2.932 2.932 0 105.864 0c0-.992-.914-2.651-2.756-4.885l-.176-.212z\"/><path d=\"M2.973 7.475c0 .415.417.863.835.924l.097.008v.7c-.79 0-1.548-.716-1.626-1.5l-.006-.132h.7z\"/></g> '\n },\n\n user: {\n width: 16,\n height: 16,\n content:\n '<path fill=\"currentColor\" fill-rule=\"nonzero\" d=\"M8 1a4.25 4.25 0 012.676 7.552 6.751 6.751 0 014.074 6.198.75.75 0 11-1.5 0 5.25 5.25 0 00-10.5 0 .75.75 0 11-1.5 0 6.752 6.752 0 014.074-6.199A4.25 4.25 0 018 1zm0 1.5A2.75 2.75 0 108 8a2.75 2.75 0 000-5.5z\" />'\n },\n\n bookmark: {\n width: 17,\n height: 21,\n content:\n '<path d=\"M16 20l-7.5-6.333L1 20V1h15z\" stroke=\"currentColor\" fill-rule=\"evenodd\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>'\n },\n\n receipt: {\n width: 10,\n height: 13,\n content:\n '<g fill=\"currentColor\" fill-rule=\"nonzero\"><path d=\"M10 0H0v13l2-1.74 1.5 1.305L5 11.26l1.5 1.305L8 11.26 10 13V0zM9 .997v9.81l-1-.87-1.5 1.304L5 9.937 3.5 11.24 2 9.937l-1 .87V.996h8z\"/><path d=\"M7 3v1H3V3zM7 6v1H3V6z\"/></g>'\n },\n\n read: {\n width: 15,\n height: 15,\n content:\n '<g fill=\"none\" fill-rule=\"evenodd\"><path opacity=\".98\" d=\"M0 0h15v15H0z\"/><path d=\"M13.085 1.694a.513.513 0 01.855.56l-.051.077-3.163 3.975a.514.514 0 01-.73.075l-.068-.069-1.812-2.208a.512.512 0 01.729-.716l.065.066 1.409 1.718 2.766-3.478z\" fill=\"#6EAC65\" fill-rule=\"nonzero\"/><path d=\"M6.454 12.997l-.06-.01-.078-.023a.49.49 0 01-.266-.24l.011.015a2.349 2.349 0 00-.535-.607c-.89-.745-2.117-.917-3.813-.12a.5.5 0 01-.706-.37L1 11.558V4.568a.5.5 0 01.287-.453c2.053-.963 3.695-.733 4.88.26.327.272.556.548.698.77l.084.144.018.04.022.076.01.071L7 11.233l.126-.09c.95-.656 2.16-.857 3.608-.417l.266.087v-2.81a.5.5 0 01.41-.491l.09-.008a.5.5 0 01.492.41l.008.09v3.555a.5.5 0 01-.713.452c-1.696-.796-2.922-.624-3.813.12a2.533 2.533 0 00-.497.544l-.038.064a.486.486 0 01-.485.258zm-4.29-8.17L2 4.892v5.92c1.637-.572 2.977-.348 4 .42l.002-5.58a2.605 2.605 0 00-.476-.513c-.81-.677-1.897-.88-3.362-.314z\" fill=\"currentColor\" fill-rule=\"nonzero\"/></g>'\n },\n listened: {\n width: 15,\n height: 15,\n content:\n '<g fill-rule=\"nonzero\"><path d=\"M4.978 4.354a.5.5 0 01-.332.624c-1.197.367-2.064 1.527-2.14 2.897l-.005.167a.749.749 0 01.999.708v3a.75.75 0 01-1.458.248L2 12a1 1 0 01-1-1v-1a1 1 0 01.5-.866V8.072c0-1.886 1.172-3.535 2.854-4.05a.5.5 0 01.624.332zM10 7a.5.5 0 01.492.41l.008.09.001 1.634a1 1 0 01.492.745L11 10v1a1 1 0 01-.883.993L10 12l-.042-.002a.75.75 0 01-1.451-.146L8.5 11.75v-3a.75.75 0 011.001-.707L9.5 7.5l.008-.09A.5.5 0 0110 7z\" fill=\"currentColor\" /><path d=\"M11.585 1.194a.513.513 0 01.855.56l-.051.077-3.163 3.975a.514.514 0 01-.73.075l-.068-.069-1.812-2.208a.512.512 0 01.729-.716l.065.066 1.409 1.718 2.766-3.478z\" fill=\"#6EAC65\" /></g>'\n }\n}\n","import React from 'react'\nimport { SvgSymbolProps } from './SvgSymbol.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport { icons } from './icons'\n\nimport styles from './SvgSymbol.module.css'\n\nexport const SvgSymbol: React.FC<SvgSymbolProps> = ({\n icon,\n size,\n styleContext\n}) => {\n const data = icons[icon]\n\n return (\n <svg\n data-testid=\"svg-symbol\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n className={makeClassName([\n [styles.root, true],\n [styles[size], !!styles[size]],\n [styles[icon], !!styles[icon]],\n [styles[styleContext], !!styles[styleContext]]\n ])}\n width={data.width}\n height={data.height}\n viewBox={`0 0 ${data.width} ${data.height}`}\n dangerouslySetInnerHTML={{ __html: data.content }}\n />\n )\n}\n","import React from 'react'\nimport { SwitcherProps } from './Switcher.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport styles from './Switcher.module.css'\n\nexport const Switcher: React.FC<SwitcherProps> = ({\n enabled,\n children,\n childrenPosition = 'left',\n onChange,\n styleContext,\n theme = 'light'\n}) => (\n <label\n data-testid=\"switcher\"\n className={makeClassName([\n [styles.root, true],\n [styles[theme], !!styles[theme]],\n [styles[styleContext], !!styles[styleContext]]\n ])}\n >\n {children && childrenPosition === 'left' && (\n <div\n className={makeClassName([\n [styles.children, true],\n [styles.left, true]\n ])}\n >\n {children}\n </div>\n )}\n <input\n className={styles.input}\n type=\"checkbox\"\n checked={enabled}\n onChange={onChange}\n />\n <span className={styles.control}>\n <span className={styles.knob} />\n </span>\n {children && childrenPosition === 'right' && (\n <div\n className={makeClassName([\n [styles.children, true],\n [styles.right, true]\n ])}\n >\n {children}\n </div>\n )}\n </label>\n)\n","import { ClassNames } from './makeClassName'\n\nconst makeStyleContext = (\n classNames: ClassNames,\n styleContext: string[] | string,\n styles: Record<string, string>\n): ClassNames => {\n const context = Array.isArray(styleContext)\n ? styleContext\n .filter((ctx) => styles[ctx])\n .map((ctx) => [[styles[ctx]], true])\n : [[styles[styleContext], !!styleContext && !!styles[styleContext]]]\n\n return classNames.concat(context)\n}\n\nexport default makeStyleContext\n","import React from 'react'\n\nconst BlockContext = React.createContext({ lightBox: null })\n\nexport const BlockProvider = BlockContext.Provider\n\nexport default BlockContext\n","const POST_MESSAGE_PREFIX = 'mdzKitMsg'\n\nconst postMessage = (\n category: string,\n element: string,\n action: string\n): void => {\n const target = window.top\n\n const msg = `${POST_MESSAGE_PREFIX}=${JSON.stringify({\n category,\n element,\n action\n })}`\n\n if (typeof target !== 'undefined') {\n target.postMessage(msg, '*')\n }\n}\n\nexport default postMessage\n","import React, { useState, useEffect } from 'react'\nimport { useInView } from 'react-intersection-observer'\nimport { makeClassName } from '../utils/makeClassName'\nimport { LazyProps } from './Lazy.types'\n\nimport styles from './Lazy.module.css'\n\nexport const Lazy: React.FC<LazyProps> = ({ children, threshold }) => {\n const [ref, inView, entry] = useInView({\n threshold: threshold || 0\n })\n\n const [visible, setVisible] = useState(false)\n\n useEffect(() => {\n if (entry && entry.boundingClientRect && entry.boundingClientRect.y < 0) {\n setVisible(true)\n }\n }, [entry])\n\n useEffect(() => {\n if (inView) {\n setVisible(true)\n }\n }, [inView])\n\n return (\n <div\n className={makeClassName([\n [styles.root, true],\n [styles.visible, visible]\n ])}\n ref={ref}\n data-testid=\"lazy\"\n >\n {visible && children}\n </div>\n )\n}\n","export const MediaQuerySizes = {\n MOBILE: 512,\n PORTRAIT_TABLET: 768,\n LANDSCAPE_TABLET: 1024,\n DESKTOP: 1010,\n WIDE_DESKTOP: 1200\n}\n\nexport const imageBreakpoints = {\n 325: '(min-width: 0)',\n 520: '(min-width: 325px)',\n 600: '(min-width: 600px)',\n 650: '(min-width: 650px)',\n 980: '(min-width: 1000px)',\n 1335: '(min-width: 1000px)'\n}\n\nexport const imageConditionalKeys = {\n xs: [325],\n superFull: [1335, 650, 520, 325],\n full: [980, 650, 520, 325],\n default: [650, 520, 325],\n narrow: [600, 325]\n}\n","export const toCamel = (s: string): string =>\n s.replace(/([_][a-z])/gi, (str) => str.toUpperCase().replace('_', ''))\n\nexport const toCapitalize = (s: string): string =>\n s[0].toUpperCase() + s.slice(1)\n","import React, { useState, useEffect } from 'react'\nimport { PictureProps } from './Image.types'\nimport { imageBreakpoints, imageConditionalKeys } from '../constants'\nimport { toCamel } from '../utils/converCase'\n\nexport const RenderPicture: React.FC<PictureProps> = ({\n source,\n fallbackSource,\n optimized,\n alt,\n display,\n onLoad\n}) => {\n const [fallback, setFallback] = useState(false)\n\n useEffect(() => {\n setFallback(!window.HTMLPictureElement)\n }, [])\n\n const keys =\n imageConditionalKeys[toCamel(display)] || imageConditionalKeys.default\n\n return (\n <picture>\n {source && (\n <source media=\"(min-width: 325px)\" srcSet={`${source[1]} 2x`} />\n )}\n\n {optimized && !optimized.w325 && (\n <source media=\"(min-width: 0)\" srcSet={`${optimized.original}`} />\n )}\n\n {optimized &&\n keys.map((key) => {\n const breakpoint = optimized[`w${key}`]\n\n if (!breakpoint) {\n return null\n }\n\n return (\n <React.Fragment key={key}>\n <source\n type=\"image/webp\"\n media={imageBreakpoints[key]}\n srcSet={`${breakpoint['2x_webp']} 2x, ${breakpoint['1x_webp']} 1x `}\n />\n\n <source\n type=\"image/png\"\n media={imageBreakpoints[key]}\n srcSet={`${breakpoint['2x']} 2x, ${breakpoint['1x']} 1x `}\n />\n </React.Fragment>\n )\n })}\n\n <img\n src={\n fallback\n ? fallbackSource\n : 'data:image/gif;base64,R0lGODlhAQABAPAAAPLy8gAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw=='\n }\n alt={alt}\n onLoad={() => onLoad(true)}\n />\n </picture>\n )\n}\n\nexport default RenderPicture\n","import React, { useContext, useState } from 'react'\nimport { ImageProps } from './Image.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport BlockContext from '../utils/BlockContext'\nimport postMessage from '../utils/postMessage'\nimport { Lazy } from '../Lazy'\nimport RenderPicture from './RenderPicture'\n\nimport styles from './Image.module.css'\n\nexport const Image: React.FC<ImageProps> = ({\n alt,\n display,\n optimized,\n width,\n height,\n source,\n lazy,\n fullscreen,\n ratio,\n styleContext\n}) => {\n const { lightBox } = useContext(BlockContext)\n const [isLoaded, setIsLoaded] = useState(false)\n\n const handleClick = (): void => {\n if (!lightBox || (optimized && !optimized.original)) {\n return\n }\n\n postMessage('', 'fullscreen_click', 'click')\n lightBox.show(optimized, width, height, alt)\n }\n\n const blockStyles = {\n maxWidth: width <= 649 ? width : '100%'\n }\n\n const pictureStyles = {\n paddingBottom: `${100 / (ratio || width / height)}%`\n }\n\n /* fallback w325 url until w6 was released */\n const fallbackSource =\n (source && source[0]) ||\n (optimized.w325 && optimized.w325['1x']) ||\n optimized.original\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles.isLoaded, isLoaded],\n [styles.fullscreen, fullscreen && fullscreen.desktop]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div\n className={makeClassName(classNames)}\n style={blockStyles}\n data-testid=\"image\"\n >\n <div\n className={styles.wrapper}\n style={pictureStyles}\n onClick={(): void => handleClick()}\n onKeyPress={(): void => handleClick()}\n role=\"button\"\n tabIndex={0}\n >\n {lazy ? (\n <>\n <Lazy threshold={0.25}>\n <RenderPicture\n fallbackSource={fallbackSource}\n source={source}\n optimized={optimized}\n alt={alt}\n display={display}\n onLoad={setIsLoaded}\n />\n </Lazy>\n <noscript>\n <img src={fallbackSource} alt={alt} />\n </noscript>\n </>\n ) : (\n <RenderPicture\n fallbackSource={fallbackSource}\n source={source}\n optimized={optimized}\n alt={alt}\n display={display}\n onLoad={setIsLoaded}\n />\n )}\n </div>\n </div>\n )\n}\n","import React, { useState, useEffect } from 'react'\nimport { PopoverProps } from './Popover.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport styles from './Popover.module.css'\n\nexport const Popover: React.FC<PopoverProps> = ({ children, onClose }) => {\n const [visible, setVisible] = useState(true)\n\n const handleClose = (): void => {\n setVisible(false)\n setTimeout(onClose, 350)\n }\n\n const handleScroll = (): void => {\n handleClose()\n }\n\n const escFunction = (event: KeyboardEvent): void => {\n if (event.key === 'Escape') {\n handleClose()\n }\n }\n\n useEffect(() => {\n document.body.dataset.popover = 'true'\n\n window.addEventListener('keydown', escFunction, false)\n window.addEventListener('scroll', handleScroll, false)\n\n return () => {\n document.body.removeAttribute('data-popover')\n\n window.removeEventListener('keydown', escFunction, false)\n window.removeEventListener('scroll', handleScroll, false)\n }\n }, [visible])\n\n /* eslint-disable jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions */\n return (\n <div\n data-testid=\"popover\"\n className={makeClassName([\n [styles.root, true],\n [styles.visible, visible]\n ])}\n >\n <div className={styles.overlay} onClick={(): void => handleClose()} />\n\n <div className={styles.container}>\n <button\n type=\"button\"\n className={styles.dismiss}\n onClick={(): void => handleClose()}\n aria-label=\"dismiss\"\n />\n <svg width=\"100%\" className={styles.background}>\n <defs>\n <mask id=\"myMask\" x=\"0\" y=\"0\" width=\"100%\" height=\"100%\">\n <rect fill=\"white\" y=\"0\" width=\"100%\" height=\"100%\" x=\"0\" />\n <svg x=\"50%\" overflow=\"visible\">\n <g transform=\"translate(-12 0)\">\n <path d=\"M4.61852778e-14,9.76996262e-15 L9.84597532,5.80270273 C11.0992017,6.54128882 12.6546044,6.54128882 13.9078308,5.80270273 L23.7538061,9.76996262e-15 L4.61852778e-14,9.76996262e-15 Z\" />\n </g>\n </svg>\n </mask>\n </defs>\n <rect\n fill=\"#F7F7F7\"\n id=\"base-mask\"\n mask=\"url(#myMask)\"\n x=\"0\"\n y=\"0\"\n width=\"100%\"\n height=\"100%\"\n />\n </svg>\n <div className={styles.body}>{children}</div>\n </div>\n </div>\n )\n}\n","import React from 'react'\nimport { FootnoteProps } from './Footnote.types'\nimport makeClassName from '../utils/makeClassName'\n\nimport { SvgSymbol } from '../SvgSymbol'\n\nimport styles from './Footnote.module.css'\n\nexport const Footnote: React.FC<FootnoteProps> = ({ children, onClose }) => {\n return (\n <div\n data-testid=\"footnote\"\n className={makeClassName([[styles.root, true]])}\n >\n <button\n className={styles.dismiss}\n type=\"button\"\n onClick={(): void => onClose()}\n >\n <SvgSymbol icon=\"cross\" size=\"unset\" />\n </button>\n\n <div className={styles.body}>{children}</div>\n </div>\n )\n}\n","type viewportSize = {\n width: number\n height: number\n}\n\nexport default (): viewportSize => ({\n width:\n window.innerWidth ||\n document.documentElement.clientWidth ||\n document.body.clientWidth,\n height:\n window.innerHeight ||\n document.documentElement.clientHeight ||\n document.body.clientHeight\n})\n","import React, { useState, useEffect, useRef } from 'react'\nimport { useInView } from 'react-intersection-observer'\n\nimport { PopoverData, DotsOnImageProps, SingleDot } from './DotsOnImage.types'\n\nimport { Image } from '../Image'\nimport { Popover } from '../Popover'\nimport { Footnote } from '../Footnote'\n\nimport viewportSize from '../utils/viewportSize'\nimport { MediaQuerySizes } from '../constants'\n\nimport makeClassName from '../utils/makeClassName'\n\nimport styles from './DotsOnImage.module.css'\n\nexport const DotsOnImage: React.FC<DotsOnImageProps> = ({\n block: { optimized, width, height, credit, display, dots }\n}) => {\n const [ratio, setRatio] = useState(1)\n const [ref, inView, entry] = useInView({\n threshold: 0.5\n })\n\n const container = useRef(null)\n\n const [popover, setPopover] = useState<PopoverData>({\n title: null,\n body: null,\n show: false,\n id: null\n })\n\n const [visible, setVisible] = useState(false)\n const defaultWidth = 375\n\n useEffect(() => {\n if (entry && entry.boundingClientRect && entry.boundingClientRect.y < 0) {\n setVisible(true)\n }\n }, [entry])\n\n useEffect(() => {\n if (inView) {\n setVisible(true)\n }\n }, [inView])\n\n useEffect(() => {\n if (popover.id) {\n document.addEventListener('click', handleClickOutside)\n } else {\n document.removeEventListener('click', handleClickOutside)\n }\n\n return () => document.removeEventListener('click', handleClickOutside)\n }, [popover])\n\n useEffect(() => {\n setDotSize()\n window.addEventListener('resize', setDotSize)\n\n return () => document.removeEventListener('resize', setDotSize)\n }, [visible])\n\n const setDotSize = () => {\n const width = window.innerWidth\n\n if (width < defaultWidth) {\n const ratio = width / defaultWidth\n setRatio(ratio)\n } else {\n setRatio(1)\n }\n }\n\n const handleClickOutside = (event: MouseEvent): void => {\n const path = event.composedPath()\n\n if (path.indexOf(container.current) === -1) {\n setPopover({ show: false })\n }\n }\n\n const handleDotClick = (dot: SingleDot): void => {\n const shouldShow = dot.id !== popover.id\n const side = dot.position.x > 50 ? 'isLeft' : 'isRight'\n const align = dot.position.y > 50 ? 'isBottom' : 'isTop'\n\n const style = { top: `${dot.position.y}%`, left: `${dot.position.x}%` }\n\n setPopover({\n title: dot.title,\n body: dot.body,\n show: shouldShow,\n id: shouldShow ? dot.id : null,\n style,\n side,\n align\n })\n }\n\n return (\n <div\n className={makeClassName([\n [styles.root, true],\n [styles.isVisible, visible]\n ])}\n data-testid=\"dots-on-image\"\n ref={ref}\n >\n <Image\n optimized={optimized}\n width={width}\n height={height}\n alt={credit}\n display={display}\n fullscreen={{ mobile: false, desktop: false }}\n />\n\n <div ref={container}>\n {dots.map((dot) => (\n <div\n className={styles.dot}\n key={dot.id}\n style={{\n top: `${dot.position.y}%`,\n left: `${dot.position.x}%`,\n transform: `scale(${ratio}) translate(-${50 / ratio}%, -${\n 50 / ratio\n }%)`\n }}\n >\n <button\n className={makeClassName([\n [styles.marker, true],\n [styles.isActive, dot.id === popover.id]\n ])}\n type=\"button\"\n style={{\n backgroundColor: dot.icon.color\n }}\n onClick={(): void => handleDotClick(dot)}\n >\n {dot.icon.type === 'svg' && (\n <div\n dangerouslySetInnerHTML={{ __html: dot.icon.svg_string }}\n />\n )}\n {dot.icon.type === 'number' && dot.icon.number}\n </button>\n </div>\n ))}\n\n {popover.show && (\n <>\n {viewportSize().width >= MediaQuerySizes.LANDSCAPE_TABLET ? (\n <div\n className={makeClassName([\n [styles.popover, true],\n [styles[popover.side], !!popover.side],\n [styles[popover.align], !!popover.align]\n ])}\n style={popover.style}\n >\n <Footnote\n onClose={(): void => {\n setPopover({ show: false })\n }}\n >\n {popover.title && <h3>{popover.title}</h3>}\n <div dangerouslySetInnerHTML={{ __html: popover.body }} />\n </Footnote>\n </div>\n ) : (\n <Popover\n onClose={(): void => {\n setPopover({ show: false })\n }}\n >\n {popover.title && <h3>{popover.title}</h3>}\n <div dangerouslySetInnerHTML={{ __html: popover.body }} />\n </Popover>\n )}\n </>\n )}\n </div>\n </div>\n )\n}\n","import React from 'react'\nimport { TagProps } from './Tag.types'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport styles from './Tag.module.css'\n\nexport const Tag: React.FC<TagProps> = ({\n children,\n size = 'small',\n theme = 'gold',\n styleContext,\n correlation,\n onlyOn\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[size], !!size && !!styles[size]],\n [styles[theme], !!theme && !!styles[theme]],\n [styles[onlyOn], !!onlyOn && !!styles[onlyOn]],\n [styles[correlation], !!correlation && !!styles[correlation]]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"tag\" className={makeClassName(classNames)}>\n {children}\n </div>\n )\n}\n","import React from 'react'\nimport { MediaCaptionProps } from './MediaCaption.types'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport styles from './MediaCaption.module.css'\n\nexport const MediaCaption: React.FC<MediaCaptionProps> = ({\n credit,\n caption,\n styleContext\n}) => {\n let classNames: ClassNames = [[styles.root, true]]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"media-caption\" className={makeClassName(classNames)}>\n {caption && (\n <div\n className={styles.caption}\n dangerouslySetInnerHTML={{ __html: caption }}\n />\n )}\n {credit && (\n <div\n className={styles.credit}\n dangerouslySetInnerHTML={{ __html: credit }}\n />\n )}\n </div>\n )\n}\n","import React from 'react'\nimport { TableProps } from './Table.types'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport { MediaCaption } from '../MediaCaption'\n\nimport styles from './Table.module.css'\n\nexport const Table: React.FC<TableProps> = ({\n styleContext,\n block: {\n rows,\n options,\n display,\n columns_widths: columnsWidth,\n table_credit: tableCredit\n }\n}) => {\n const colors = {\n '#ffffff': 'white',\n '#f5f5f5': 'gray',\n '#feeeee': 'pink',\n '#e6f3ff': 'blue',\n '#fffde6': 'yellow',\n '#fff9f2': 'orange',\n '#e7f2ef': 'green',\n '#f4f0f8': 'violet'\n }\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[display], !!display && !!styles[display]]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"table\" className={makeClassName(classNames)}>\n <div className={styles.wrapper}>\n <div className={styles.table}>\n <div className={styles.tracks}>\n {rows.map((row, i) => {\n return (\n <div key={row.key} className={styles.row}>\n {row.cells.map((cell, j) => (\n <div\n key={cell.key}\n className={makeClassName([\n [styles.cell, true],\n [styles.header, options.header && i === 0],\n [styles[colors[cell.color]], true],\n [styles[columnsWidth[j]], true],\n [\n styles.fixedColumn,\n options.fixed_first_column && j === 0\n ]\n ])}\n dangerouslySetInnerHTML={{ __html: cell.val }}\n />\n ))}\n </div>\n )\n })}\n </div>\n </div>\n </div>\n\n {tableCredit && (\n <MediaCaption credit={tableCredit} styleContext={styleContext} />\n )}\n </div>\n )\n}\n","import React from 'react'\nimport { MaterialNoteProps } from './MaterialNote.types'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport styles from './MaterialNote.module.css'\n\nexport const MaterialNote: React.FC<MaterialNoteProps> = ({\n block: { data },\n styleContext\n}) => {\n let classNames: ClassNames = [[styles.root, true]]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"material-note\" className={makeClassName(classNames)}>\n {data &&\n data.map((item) => (\n <p\n className={styles[item.type]}\n key={item.id}\n dangerouslySetInnerHTML={{ __html: item.data }}\n />\n ))}\n </div>\n )\n}\n","import React from 'react'\nimport { BookmarkButtonProps } from './BookmarkButton.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { SvgSymbol } from '../SvgSymbol'\nimport styles from './BookmarkButton.module.css'\n\nexport const BookmarkButton: React.FC<BookmarkButtonProps> = ({\n styleContext,\n theme,\n isInBookmarks,\n onClick\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles.isInBookmarks, isInBookmarks],\n [styles[theme], !!theme && !!styles[theme]]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"bookmark-button\" className={makeClassName(classNames)}>\n <button\n className={styles.control}\n onClick={(): void => onClick()}\n type=\"button\"\n >\n <SvgSymbol icon=\"bookmark\" size=\"unset\" />\n </button>\n </div>\n )\n}\n","import React from 'react'\nimport { MaterialTitleProps } from './MaterialTitle.types'\n\nimport styles from './MaterialTitle.module.css'\n\nexport const Primary: React.FC<MaterialTitleProps> = ({ children }) => {\n return <span className={styles.primary}>{children}</span>\n}\n\nexport const Secondary: React.FC<MaterialTitleProps> = ({ children }) => {\n return <span className={styles.secondary}>{children}</span>\n}\n\nexport const MaterialTitle: React.FC<MaterialTitleProps> = ({ children }) => {\n return (\n <h1 className={styles.root} data-testid=\"material-title\">\n {children}\n </h1>\n )\n}\n","import React from 'react'\nimport { DropdownProps } from './Dropdown.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './Dropdown.module.css'\n\nexport const Menu: React.FC<DropdownProps> = ({ children }) => {\n return (\n <div data-testid=\"dropdown\" className={styles.menu}>\n {children}\n </div>\n )\n}\n\nexport const Dropdown: React.FC<DropdownProps> = ({\n children,\n active,\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles.active, !!active && !!styles.active]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"dropdown\" className={makeClassName(classNames)}>\n {children}\n </div>\n )\n}\n","import React, { Children } from 'react'\nimport { ToolbarProps } from './Toolbar.types'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport styles from './Toolbar.module.css'\n\nexport const Toolbar: React.FC<ToolbarProps> = ({ children, styleContext }) => {\n let classNames: ClassNames = [[styles.root, true]]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n const renderItems = (): JSX.Element[] =>\n Children.map(children, (item: JSX.Element, index) => (\n <li className={styles.item} key={`${index}-${item.props.type}`}>\n {React.cloneElement(item)}\n </li>\n ))\n\n return (\n <div data-testid=\"toolbar\" className={makeClassName(classNames)}>\n <ul className={styles.list}>{renderItems()}</ul>\n </div>\n )\n}\n","import React from 'react'\nimport { MetaProps } from './Meta.types'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport styles from './Meta.module.css'\n\nexport const Meta: React.FC<MetaProps> = ({\n hasSource,\n theme,\n children,\n onlyOn,\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[theme], !!theme && !!styles[theme]],\n [styles[onlyOn], !!onlyOn],\n [styles.hasSource, hasSource]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"meta\" className={makeClassName(classNames)}>\n {children}\n </div>\n )\n}\n","import React from 'react'\nimport { TimestampProps } from './Timestamp.types'\nimport dayjs from 'dayjs'\nimport 'dayjs/locale/ru'\nimport relativeTime from 'dayjs/plugin/relativeTime'\n\nimport styles from './Timestamp.module.css'\n\nexport const Timestamp: React.FC<TimestampProps> = ({\n publishedAt,\n locale = 'ru',\n type\n}) => {\n let published\n const timeFormat =\n locale === 'ru' ? 'HH:mm, D MMMM YYYY' : 'h:mm a, MMMM D, YYYY'\n\n const preparedPublishedAt = publishedAt * 1000\n\n dayjs.locale(locale)\n dayjs.extend(relativeTime)\n\n if (type === 'fromNow') {\n published = dayjs(preparedPublishedAt).fromNow()\n } else if (type === 'format') {\n published = dayjs(preparedPublishedAt).format('HH:mm')\n } else if (type === 'date') {\n published = dayjs(preparedPublishedAt).format(timeFormat)\n } else {\n throw new Error('Unknown time type')\n }\n\n return (\n <time data-testid=\"timestamp\" className={styles.root}>\n {published}\n </time>\n )\n}\n","import React, { useCallback, useEffect, useRef, useState } from 'react'\n\ntype DangerousHtmlProps = {\n className?: string\n html: string\n tagName?: keyof JSX.IntrinsicElements\n}\n\nconst DangerousHTML: React.FC<DangerousHtmlProps> = ({\n className = '',\n tagName: TagName = 'div',\n html\n}) => {\n const element = useRef<HTMLDivElement>(null)\n const [canRenderHtml, setCanRenderHtml] = useState(false)\n\n useEffect(() => {\n setCanRenderHtml(true)\n }, [])\n\n const replaceScriptElementsRecursive = useCallback((node) => {\n if (\n node.tagName === 'SCRIPT' &&\n (!node.id || node.id.indexOf('script-') !== 0)\n ) {\n const script = document.createElement('script')\n\n script.id = `script-${Math.random().toString(16).slice(2)}`\n script.innerHTML = node.innerHTML\n\n const attrs = node.attributes\n\n for (let i = 0; i < attrs.length; i += 1) {\n const { name, value } = attrs[i]\n\n script.setAttribute(name, value)\n }\n\n node.parentElement.replaceChild(script, node)\n } else {\n let i = 0\n const children = node.childNodes\n\n while (i < children.length) {\n replaceScriptElementsRecursive(children[i])\n i += 1\n }\n }\n }, [])\n\n const prepareAnchors = useCallback(() => {\n const anchors = Array.from(element.current.querySelectorAll('a'))\n\n anchors.forEach((a) => {\n a.setAttribute('target', '_blank')\n })\n }, [])\n\n useEffect(() => {\n if (\n canRenderHtml &&\n html.indexOf('script') > -1 &&\n element.current.firstElementChild\n ) {\n element.current.firstElementChild.innerHTML = html\n replaceScriptElementsRecursive(element.current.firstElementChild)\n prepareAnchors()\n }\n }, [\n canRenderHtml,\n element,\n html,\n replaceScriptElementsRecursive,\n prepareAnchors\n ])\n\n return (\n <div ref={element}>\n <TagName\n className={className}\n dangerouslySetInnerHTML={{ __html: html }}\n />\n </div>\n )\n}\n\nexport default DangerousHTML\n","import React, { useState, useEffect, useRef } from 'react'\nimport enableInlineVideo from 'iphone-inline-video'\nimport viewportSize from '../utils/viewportSize'\nimport { MediaQuerySizes } from '../constants'\nimport { EmbedGifProps } from './EmbedBlock.types'\n\nimport styles from './EmbedBlock.module.css'\n\nexport const EmbedGif: React.FC<EmbedGifProps> = ({ gif, mp4Url, style }) => {\n const [videoFrozen, setVideoFrozen] = useState(false)\n const videoElem = useRef(null)\n\n const handleVideoTouch = (): void => {\n videoElem.current.play()\n setVideoFrozen(false)\n }\n\n const handleVideoError = (): void => {\n const video = videoElem.current\n\n video.setAttribute('poster', video.dataset.gif)\n\n setVideoFrozen(false)\n }\n\n useEffect(() => {\n const video = videoElem.current\n const { width: viewportWidth } = viewportSize()\n\n enableInlineVideo(video)\n\n if (viewportWidth >= MediaQuerySizes.MOBILE) {\n video.setAttribute('autoplay', true)\n video.play()\n } else {\n setVideoFrozen(true)\n video.pause()\n video.addEventListener('touchstart', handleVideoTouch)\n }\n\n video.addEventListener('error', handleVideoError)\n\n return (): void => {\n video.removeEventListener('touchstart', handleVideoTouch)\n video.removeEventListener('error', handleVideoError)\n }\n }, [])\n\n return (\n <div className={styles.figure}>\n <div\n className={styles.objectWrap}\n style={style}\n data-frozen={videoFrozen}\n >\n <video\n playsInline\n muted\n loop\n autoPlay\n preload=\"metadata\"\n data-gif={gif}\n ref={videoElem}\n >\n <source src={`https://meduza.io${mp4Url}`} type=\"video/mp4\" />\n </video>\n </div>\n </div>\n )\n}\n","import React, { useState } from 'react'\nimport { Image } from '../Image'\nimport { Popover } from '../Popover'\nimport { MediaCaption } from '../MediaCaption'\nimport { DotsOnImage } from '../DotsOnImage'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport DangerousHTML from '../utils/DangerousHtml'\nimport { EmbedGif } from './EmbedGif'\nimport { EmbedBlockProps } from './EmbedBlock.types'\n\nimport styles from './EmbedBlock.module.css'\n\nexport const EmbedBlock: React.FC<EmbedBlockProps> = ({\n block,\n block: {\n data,\n data: {\n html,\n display,\n only_on: onlyOn,\n provider,\n cc,\n optimized,\n small_url: small,\n large_url: large,\n gif_url: gifUrl,\n mp4_url: mp4Url\n }\n },\n styleContext,\n children\n}) => {\n const [isPopoverShown, setIsPopoverShown] = useState(false)\n const style: React.CSSProperties = {}\n const isProportional = block.data.height && block.data.width\n\n const fullWidthProviders = [\n 'youtube',\n 'vimeo',\n 'onetv',\n 'coub',\n 'facebook_video'\n ]\n\n const mobileFullwidth =\n fullWidthProviders.indexOf(provider) > -1 || block.type === 'dots_on_image'\n\n const renderCC = (context?: string | string[]): JSX.Element => (\n <MediaCaption\n credit={data.credit}\n caption={data.caption}\n styleContext={context || styleContext}\n />\n )\n\n const renderEmbed = (style: React.CSSProperties): JSX.Element => {\n switch (block.type) {\n case 'gif': {\n return <EmbedGif gif={gifUrl} mp4Url={mp4Url} style={style} />\n }\n case 'image': {\n return (\n <div className={styles.figure}>\n <Image\n fullscreen={{ desktop: block.data.fullscreen, mobile: true }}\n source={!optimized && [small, large]}\n optimized={block.data.optimized}\n width={block.data.width}\n height={block.data.height}\n alt={block.data.caption}\n display={block.data.display}\n lazy={block.data.lazy}\n styleContext={styleContext}\n />\n </div>\n )\n }\n case 'game_embed': {\n return (\n <div className={styles.gameEmbed}>\n <iframe\n src={block.data.game_src}\n id={block.data.game_id}\n title=\"Game embed\"\n />\n </div>\n )\n }\n case 'dots_on_image': {\n return (\n <div className={styles.figure}>\n <DotsOnImage block={data} />\n </div>\n )\n }\n\n default: {\n return (\n <div className={styles.object}>\n <div className={styles.wrapper} style={style}>\n <DangerousHTML className={styles.objectWrap} html={html} />\n </div>\n </div>\n )\n }\n }\n }\n\n if (isProportional) {\n style.paddingBottom = `${(block.data.height / block.data.width) * 100}%`\n style.height = 0\n }\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles.cc, cc],\n [styles[display], !!display && styles[display]],\n [styles[provider], !!provider && !!styles[provider]],\n [styles[onlyOn], !!onlyOn && styles[onlyOn]],\n [styles.mobileFullwidth, mobileFullwidth],\n [styles.proportional, isProportional]\n ]\n\n // Убираем из контекста все, что не начинается с приставки isIn,\n // чтобы не применились лишние модификаторы\n // TODO: в w6 модификаторы должны передаваться явно\n\n if (styleContext && Array.isArray(styleContext)) {\n const filteredContext = styleContext\n .filter((key) => key.startsWith('isIn') && styles[key])\n .reduce((acc, key) => {\n acc.push(key)\n\n return acc\n }, [])\n\n classNames = makeStyleContext(classNames, filteredContext, styles)\n }\n\n return (\n <figure className={makeClassName(classNames)}>\n {children && (\n <div className={styles.object}>\n <div className={styles.wrapper} style={style}>\n <div className={styles.objectWrap}>{children}</div>\n </div>\n </div>\n )}\n\n {!children && renderEmbed(style)}\n\n {cc === 'default' && <figcaption>{renderCC()}</figcaption>}\n\n {cc === 'button' && (\n <button\n className={styles.control}\n type=\"button\"\n aria-label=\"Open\"\n onClick={(): void => {\n setIsPopoverShown(!isPopoverShown)\n }}\n />\n )}\n\n {cc === 'button' && isPopoverShown && (\n <Popover\n onClose={(): void => {\n setIsPopoverShown(false)\n }}\n >\n {renderCC('isInPopover')}\n </Popover>\n )}\n </figure>\n )\n}\n","import React, { useEffect, useRef } from 'react'\nimport { EmbedBlockProps } from './EmbedBlock.types'\nimport { EmbedBlock } from './EmbedBlock'\n\nexport const IframeBlock: React.FC<EmbedBlockProps> = ({\n block,\n block: { id },\n styleContext,\n lang = 'ru'\n}) => {\n const element = useRef(null)\n\n const renderIframe = (): void => {\n const rootEl = document.createElement('div')\n const contentEl = document.createElement('div')\n const scriptEl = document.createElement('script')\n const style = document.createElement('style')\n const range = document.createRange()\n\n range.setStart(contentEl, 0)\n contentEl.setAttribute('id', 'content')\n scriptEl.textContent = `\n function getDocHeight() {\n var doc = document;\n var body = doc.body;\n var html = doc.documentElement;\n var height = Math.max( body.scrollHeight, body.offsetHeight,\n html.clientHeight, html.scrollHeight, html.offsetHeight );\n\n doc.body.style.margin=\"0\";\n\n return document.getElementById('content') ? document.getElementById('content').offsetHeight : height;\n }\n\n function sendDocHeightMsg() {\n var height = getDocHeight();\n var message = JSON.stringify({\n action: {\n type: \"UPDATE_HEIGHT\",\n payload: {\n id: \"${block.id}\",\n height: height\n }\n }\n });\n parent.postMessage(\"mdzMaterialEmbedHeight=\" + message, '*');\n }\n\n setInterval(sendDocHeightMsg, 300);\n `\n\n style.type = 'text/css'\n style.innerHTML =\n block.type === 'embed_code'\n ? '.twitter-tweet { padding-top: 15px; margin: 0 !important; }'\n : '.twitter-tweet { margin: 0 !important; } .fb-post { display: block; } .instagram-media { min-width: 0 !important; }'\n\n contentEl.appendChild(range.createContextualFragment(block.data.html))\n rootEl.appendChild(scriptEl)\n rootEl.appendChild(contentEl)\n contentEl.appendChild(style)\n\n const frame = element.current.querySelector('iframe').contentDocument\n\n frame.open()\n frame.close()\n frame.documentElement.setAttribute('lang', lang)\n frame.body.appendChild(rootEl)\n }\n\n useEffect(() => {\n renderIframe()\n }, [])\n\n return (\n <EmbedBlock block={block} styleContext={styleContext}>\n <div\n ref={element}\n dangerouslySetInnerHTML={{\n __html: `<iframe id=${id} frameBorder=\"0\" scrolling=\"no\"></iframe>`\n }}\n />\n </EmbedBlock>\n )\n}\n","import React from 'react'\nimport { EmbedBlockProps } from './EmbedBlock.types'\nimport { EmbedBlock } from './EmbedBlock'\nimport { IframeBlock } from './IframeBlock'\n\nexport const EmbedBlockContainer: React.FC<EmbedBlockProps> = ({\n block,\n styleContext,\n lang\n}) => {\n if (block.data && block.data.wrap_with_iframe) {\n return <IframeBlock block={block} styleContext={styleContext} lang={lang} />\n }\n return <EmbedBlock block={block} styleContext={styleContext} />\n}\n","import React from 'react'\nimport { QuoteBlockProps } from './QuoteBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './QuoteBlock.module.css'\n\nexport const QuoteBlock: React.FC<QuoteBlockProps> = ({\n block: { data },\n styleContext\n}) => {\n let classNames: ClassNames = [[styles.root, true]]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"quote-block\" className={makeClassName(classNames)}>\n <p dangerouslySetInnerHTML={{ __html: data }} />\n </div>\n )\n}\n","import React from 'react'\nimport { CardTitleProps } from './CardTitle.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport styles from './CardTitle.module.css'\n\nexport const CardTitle: React.FC<CardTitleProps> = ({\n block: {\n data: { only_on: onlyOn, index, text }\n },\n styleContext\n}) => {\n return (\n <div\n data-testid=\"card-title\"\n className={makeClassName([\n [styles.root, true],\n [styles[onlyOn], !!onlyOn],\n [styles[styleContext], !!styleContext && !!styles[styleContext]]\n ])}\n >\n <div className={styles.index}>{index}</div>\n <h3 className={styles.title}>{text}</h3>\n </div>\n )\n}\n","import React from 'react'\nimport { ChapterBlockProps } from './ChapterBlock.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport styles from './ChapterBlock.module.css'\n\nexport const ChapterBlock: React.FC<ChapterBlockProps> = ({\n block: { data, only_on: onlyOn },\n styleContext\n}) => {\n return (\n <div\n data-testid=\"chapter-block\"\n className={makeClassName([\n [styles.root, true],\n [styles[onlyOn], !!onlyOn]\n ])}\n >\n <div\n className={makeClassName([\n [styles.subtitle, true],\n [styles[styleContext], !!styleContext && !!styles[styleContext]]\n ])}\n dangerouslySetInnerHTML={{ __html: data }}\n />\n </div>\n )\n}\n","const generateGradient = (color: string, type: string): string => {\n const steps = {\n mediaBlockBottom: [\n [0, 7],\n [0.08, 12],\n [0.16, 17],\n [0.22, 21],\n [0.32, 26],\n [0.42, 32],\n [0.52, 38],\n [0.62, 47],\n [0.72, 57],\n [0.82, 65],\n [1, 82]\n ],\n mediaBlockTop: [\n [0.5, 0],\n [0, 97]\n ]\n }\n\n const gradient = steps[type].map((i) => `rgba(${color}, ${i[0]}) ${i[1]}%`)\n\n return `linear-gradient(-180deg, ${gradient})`\n}\n\nexport default generateGradient\n","import React from 'react'\nimport { SimpleTitleProps } from './SimpleTitle.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './SimpleTitle.module.css'\n\nexport const SimpleTitle: React.FC<SimpleTitleProps> = ({\n block: {\n data: { first },\n only_on: onlyOn\n },\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"simple-title\" className={makeClassName(classNames)}>\n {first}\n </div>\n )\n}\n","import React from 'react'\nimport { RichTitleProps } from './RichTitle.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './RichTitle.module.css'\n\nexport const RichTitle: React.FC<RichTitleProps> = ({\n block: {\n only_on: onlyOn,\n data: { featured, first, second, as: TagName = 'h1' }\n },\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true],\n [styles.featured, !!featured]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <TagName data-testid=\"rich-title\" className={makeClassName(classNames)}>\n {first}\n {second && <span> {second}</span>}\n </TagName>\n )\n}\n","import React from 'react'\nimport { SimpleBlockProps } from './SimpleBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './SimpleBlock.module.css'\n\nexport const SimpleBlock: React.FC<SimpleBlockProps> = ({\n block: { data, type, only_on: onlyOn },\n styleContext\n}) => {\n let TagName\n\n let classNames: ClassNames = [\n [styles[type], !!type && !!styles[type]],\n [styles[onlyOn], true]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n switch (type) {\n case 'context_p':\n case 'lead':\n case 'note_caption':\n case 'note_credit': {\n TagName = 'p'\n break\n }\n case 'lead_hr': {\n TagName = 'div'\n break\n }\n default:\n TagName = type\n }\n return (\n <TagName\n className={makeClassName(classNames)}\n dangerouslySetInnerHTML={{ __html: data }}\n />\n )\n}\n","import React from 'react'\nimport { ListBlockProps } from './ListBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './ListBlock.module.css'\n\nexport const ListBlock: React.FC<ListBlockProps> = ({\n block: { type, data, only_on: onlyOn },\n styleContext\n}) => {\n const TagName = type\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true],\n [styles[type], !!type && !!styles[type]]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <TagName className={makeClassName(classNames)} data-testid=\"list-block\">\n {data.map((item, index) => (\n <li key={index} dangerouslySetInnerHTML={{ __html: item }} />\n ))}\n </TagName>\n )\n}\n","import React from 'react'\nimport { RelatedBlockProps } from './RelatedBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './RelatedBlock.module.css'\n\nexport const RelatedBlock: React.FC<RelatedBlockProps> = ({\n block: {\n data: { title, related },\n only_on: onlyOn\n },\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"related-block\" className={makeClassName(classNames)}>\n <h3 className={styles.header}>{title}</h3>\n <ul className={styles.items}>\n {related.map((item, index) => (\n <li key={item.id || index} className={styles[item.layout]}>\n <a\n href={item.full_url || `/${item.url}`}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <span className={styles.first}>{item.title}</span>\n {item.second_title && ' '}\n {item.second_title && <span>{item.second_title}</span>}\n </a>\n </li>\n ))}\n </ul>\n </div>\n )\n}\n","import React from 'react'\nimport { SourceBlockProps } from './SourceBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport styles from './SourceBlock.module.css'\n\nexport const SourceBlock: React.FC<SourceBlockProps> = ({\n block: {\n only_on: onlyOn,\n data: { quote, origin, url }\n },\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <blockquote\n data-testid=\"source-block\"\n cite={url}\n className={makeClassName(classNames)}\n >\n <a\n className={styles.text}\n href={url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {quote.map((item, index) => (\n <p key={index} dangerouslySetInnerHTML={{ __html: item.data }} />\n ))}\n <footer>\n <cite className={styles.origin}>{origin}</cite>\n </footer>\n </a>\n </blockquote>\n )\n}\n","import React, { useState } from 'react'\nimport { SensitiveBlockProps } from './SensitiveBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport { EmbedBlockContainer } from '../EmbedBlock'\nimport { MediaCaption } from '../MediaCaption'\nimport { Button } from '../Button'\n\nimport styles from './SensitiveBlock.module.css'\n\nexport const SensitiveBlock: React.FC<SensitiveBlockProps> = ({\n block,\n block: { cc, caption, credit, blurred_image: blurredImage },\n block: {\n item: {\n data: { display }\n }\n },\n styleContext\n}) => {\n const [visible, isVisible] = useState(false)\n\n const handleClick = () => {\n isVisible(true)\n }\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles.visible, visible],\n [styles[display], display && styles[display]]\n ]\n\n let context = ['isInSensitiveBlock']\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n context = [...styleContext, 'isInSensitiveBlock']\n }\n\n return (\n <div data-testid=\"sensitive-block\" className={makeClassName(classNames)}>\n <div className={styles.container}>\n <div\n className={styles.overlay}\n style={{ backgroundImage: `url(${blurredImage})` }}\n >\n <div className={styles.content}>\n <p dangerouslySetInnerHTML={{ __html: block.title }} />\n\n <div className={styles.button}>\n <Button onClick={() => handleClick()} theme=\"light\">\n {block.button.text}\n </Button>\n </div>\n </div>\n </div>\n <div className={styles.media}>\n <EmbedBlockContainer block={block.item} styleContext={context} />\n </div>\n </div>\n\n {cc && (\n <figcaption className={styles.figcaption}>\n <MediaCaption\n credit={credit}\n caption={caption}\n styleContext={styleContext}\n />\n </figcaption>\n )}\n </div>\n )\n}\n","import React from 'react'\nimport { GroupedBlockProps } from './GroupedBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { SensitiveBlock } from '../SensitiveBlock'\nimport { EmbedBlockContainer } from '../EmbedBlock'\nimport { MediaCaption } from '../MediaCaption'\n\nimport styles from './GroupedBlock.module.css'\n\nexport const GroupedBlock: React.FC<GroupedBlockProps> = ({\n block,\n block: { only_on: onlyOn },\n styleContext\n}) => {\n const maxHeight = Math.min(\n ...block.data.map(\n (item) => (item.data && item.data.height) || item.item.data.height\n )\n )\n\n const normalizedBoxesWidth = block.data.map((item) => {\n const width = (item.data && item.data.width) || item.item.data.heigh\n const height = (item.data && item.data.height) || item.item.data.heigh\n return width / (height / maxHeight)\n })\n\n const sumWidth = normalizedBoxesWidth.reduce((sum, x) => sum + x)\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true],\n [styles.hasFigcaption, block.cc === 'default'],\n [styles[block.display], !!block.display && styles[block.display]]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"grouped-block\" className={makeClassName(classNames)}>\n <div className={styles.items}>\n {block.data.map((item, index) => {\n const percentWidth = (normalizedBoxesWidth[index] / sumWidth) * 100\n\n return (\n <div\n className={styles.item}\n key={item.id}\n style={{ width: `${percentWidth}%` }}\n >\n {item.type === 'sensitive' ? (\n <SensitiveBlock\n block={item}\n styleContext={['isInGroupedBlock']}\n />\n ) : (\n <EmbedBlockContainer\n block={item}\n styleContext={['isInGroupedBlock']}\n />\n )}\n </div>\n )\n })}\n </div>\n {block.cc && (\n <figcaption className={styles.figcaption}>\n <MediaCaption\n credit={block.credit}\n caption={block.caption}\n styleContext={styleContext}\n />\n </figcaption>\n )}\n </div>\n )\n}\n","import React from 'react'\nimport { MetaItemProps } from './MetaItem.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport styles from './MetaItem.module.css'\n\nexport const MetaItem: React.FC<MetaItemProps> = ({\n hasSource,\n type,\n children,\n bullets\n}) => {\n const classNames = [\n [styles.root, true],\n [styles[type], !!type && !!styles[type]],\n [styles.hasSource, !!hasSource],\n [styles.hasBullets, !!bullets]\n ]\n\n return (\n <div data-testid=\"meta-item\" className={makeClassName(classNames)}>\n {children}\n </div>\n )\n}\n","import React from 'react'\nimport { MetaItemLiveProps } from './MetaItemLive.types'\nimport { makeClassName } from '../utils/makeClassName'\nimport styles from './MetaItemLive.module.css'\n\nexport const MetaItemLive: React.FC<MetaItemLiveProps> = ({\n theme = 'gold'\n}) => {\n const classNames = [\n [styles.root, true],\n [styles[theme], !!theme && styles[theme]]\n ]\n\n return (\n <div\n data-testid=\"meta-item-live\"\n data-meta=\"live\"\n className={makeClassName(classNames)}\n >\n <div className={styles.frame} />\n </div>\n )\n}\n","const pluralize = (\n number: number,\n one: string,\n two: string,\n five: string\n): string => {\n let n = Math.abs(number)\n n %= 100\n\n if (n >= 5 && n <= 20) {\n return five\n }\n\n n %= 10\n\n if (n === 1) {\n return one\n }\n\n if (n >= 2 && n <= 4) {\n return two\n }\n\n return five\n}\n\nexport default pluralize\n","import React from 'react'\nimport { DocumentItemsCountProps } from './DocumentItemsCount.types'\nimport pluralize from '../utils/pluralize'\n\nimport styles from './DocumentItemsCount.module.css'\n\nexport const DocumentItemsCount: React.FC<DocumentItemsCountProps> = ({\n type,\n lang = 'ru',\n items,\n children\n}) => {\n const i18n = {\n ru: {\n card: {\n one: 'карточка',\n two: 'карточки',\n five: 'карточек'\n },\n podcast: {\n one: 'эпизод',\n two: 'эпизода',\n five: 'эпизодов'\n }\n },\n en: {\n card: {\n one: 'card',\n two: 'cards',\n five: 'cards'\n },\n podcast: {\n one: 'episode',\n two: 'episodes',\n five: 'episodes'\n }\n }\n }\n\n const itemsCount = `${items} ${pluralize(\n items,\n i18n[lang][type].one,\n i18n[lang][type].two,\n i18n[lang][type].five\n )}`\n\n return (\n <div data-testid=\"document-items-count\" className={styles.root}>\n {children}\n <span className={styles.items}>{itemsCount}</span>\n </div>\n )\n}\n","import React from 'react'\nimport { toCamel } from '../utils/converCase'\n\nimport { MetaContainerProps } from './Meta.types'\nimport { Meta } from './'\nimport { MetaItem } from '../MetaItem'\nimport { MetaItemLive } from '../MetaItemLive'\nimport { DocumentItemsCount } from '../DocumentItemsCount'\nimport { BookmarkButton } from '../BookmarkButton'\nimport { Timestamp } from '../Timestamp'\nimport { SvgSymbol } from '../SvgSymbol'\n\nimport { TimestampProps } from '../Timestamp/Timestamp.types'\n\nimport styles from './Meta.module.css'\n\nexport const MetaContainer: React.FC<MetaContainerProps> = ({\n lang,\n block,\n isRead,\n isListened,\n bookmarkAction,\n isInBookmarks,\n block: {\n data: { components, theme }\n },\n styleContext\n}) => {\n const themeColor =\n styleContext && styleContext.indexOf('dark') !== -1 ? 'light' : 'unset'\n const isPodcast = styleContext && styleContext.indexOf('podcast') !== -1\n const isSlides = styleContext && styleContext.indexOf('slide') !== -1\n\n let context = []\n\n if (styleContext && Array.isArray(styleContext)) {\n context = styleContext.filter((item) => {\n return item !== 'dark'\n })\n }\n\n const hasSource = !!components.find((item) => item.type === 'source_name')\n\n return (\n <Meta\n styleContext={context}\n theme={theme || themeColor}\n onlyOn={block.only_on}\n hasSource={hasSource}\n >\n {components.map((component) => {\n switch (component.type) {\n case 'source_name': {\n return (\n <MetaItem hasSource={hasSource} bullets key={component.id}>\n <>\n {lang === 'ru' ? 'Источник: ' : 'Source: '}\n {component.url && (\n <a\n href={component.url}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n {component.text}\n </a>\n )}\n {!component.url && component.text}\n </>\n </MetaItem>\n )\n }\n case 'duration': {\n return (\n <MetaItem hasSource={hasSource} bullets key={component.id}>\n <>\n <SvgSymbol icon=\"podcast\" size=\"small\" />\n {component.text}\n </>\n </MetaItem>\n )\n }\n case 'datetime': {\n const format = ((component.format && toCamel(component.format)) ||\n 'date') as TimestampProps['type']\n\n return (\n <MetaItem\n hasSource={hasSource}\n bullets\n key={component.id}\n type=\"datetime\"\n >\n <Timestamp\n publishedAt={component.datetime}\n type={format || 'date'}\n locale={lang}\n />\n </MetaItem>\n )\n }\n\n case 'items_count': {\n return (\n <MetaItem hasSource={hasSource} bullets key={component.id}>\n <DocumentItemsCount\n items={component.count}\n type={isPodcast ? 'podcast' : 'card'}\n lang={lang}\n >\n <SvgSymbol icon=\"card\" size=\"unset\" />\n </DocumentItemsCount>\n </MetaItem>\n )\n }\n case 'broadcast_active': {\n return (\n <MetaItem hasSource={hasSource} bullets key={component.id}>\n <>\n <MetaItemLive /> Прямой эфир\n </>\n </MetaItem>\n )\n }\n case 'broadcast': {\n return (\n <MetaItem hasSource={hasSource} bullets key={component.id}>\n <>\n {component.with_icon && <MetaItemLive />}\n\n {component.label}\n </>\n </MetaItem>\n )\n }\n\n default: {\n return null\n }\n }\n })}\n {(isRead || isListened) && (\n <MetaItem\n hasSource={hasSource}\n bullets\n type={isListened ? 'listened' : 'read'}\n >\n <SvgSymbol icon={isListened ? 'listened' : 'read'} size=\"unset\" />\n </MetaItem>\n )}\n\n {isSlides && lang === 'ru' && (\n <div className={styles.bookmark}>\n <BookmarkButton\n isInBookmarks={isInBookmarks}\n onClick={(): void => bookmarkAction('bookmark', 'top')}\n />\n </div>\n )}\n </Meta>\n )\n}\n","import React from 'react'\nimport { RenderBlocksProps } from './RenderBlocks.types'\nimport { Tag } from '../Tag'\nimport { SimpleTitle } from '../SimpleTitle'\nimport { RichTitle } from '../RichTitle'\nimport { SimpleBlock } from '../SimpleBlock'\nimport { ListBlock } from '../ListBlock'\nimport { ChapterBlock } from '../ChapterBlock'\nimport { QuoteBlock } from '../QuoteBlock'\nimport { CardTitle } from '../CardTitle'\nimport { RelatedBlock } from '../RelatedBlock'\nimport { SourceBlock } from '../SourceBlock'\nimport { EmbedBlockContainer } from '../EmbedBlock'\nimport { GroupedBlock } from '../GroupedBlock'\nimport { MetaContainer } from '../Meta/MetaContainer'\nimport { Table } from '../Table'\nimport { MaterialNote } from '../MaterialNote'\nimport { SensitiveBlock } from '../SensitiveBlock'\n\nexport const RenderBlocks: React.FC<RenderBlocksProps> = ({\n block,\n styleContext,\n lang,\n isRead,\n isListened,\n bookmarkAction,\n isInBookmarks\n}) => {\n switch (block.type) {\n case 'tag': {\n return (\n <Tag\n size=\"large\"\n onlyOn={block.only_on}\n theme={block.data.theme}\n styleContext={styleContext}\n >\n {block.data.text}\n </Tag>\n )\n }\n\n case 'simple_title': {\n return <SimpleTitle block={block} styleContext={styleContext} />\n }\n\n case 'rich_title': {\n return <RichTitle block={block} styleContext={styleContext} />\n }\n\n case 'meta': {\n return (\n <MetaContainer\n block={block}\n lang={block.data.lang}\n styleContext={styleContext}\n isRead={isRead}\n isListened={isListened}\n isInBookmarks={isInBookmarks}\n bookmarkAction={bookmarkAction}\n />\n )\n }\n\n case 'h1':\n case 'h2':\n case 'h3':\n case 'h4':\n case 'blockquote':\n case 'p':\n case 'context_p':\n case 'lead':\n case 'lead_hr': {\n return <SimpleBlock block={block} styleContext={styleContext} />\n }\n\n case 'quote':\n return <QuoteBlock block={block} styleContext={styleContext} />\n\n case 'ol':\n case 'ul': {\n return <ListBlock block={block} styleContext={styleContext} />\n }\n\n case 'chapter-subtitle': {\n return <ChapterBlock block={block} styleContext={styleContext} />\n }\n\n case 'card_title': {\n return <CardTitle block={block} styleContext={styleContext} />\n }\n\n case 'related': {\n return <RelatedBlock block={block} styleContext={styleContext} />\n }\n\n case 'source':\n return <SourceBlock block={block} styleContext={styleContext} />\n\n case 'table':\n return <Table block={block} styleContext={styleContext} />\n\n case 'sensitive':\n return <SensitiveBlock block={block} styleContext={styleContext} />\n\n case 'embed':\n case 'embed_code':\n case 'game_embed':\n case 'image':\n case 'dots_on_image':\n case 'gif':\n return (\n <EmbedBlockContainer\n block={block}\n styleContext={styleContext}\n lang={lang}\n />\n )\n case 'grouped':\n return <GroupedBlock block={block} styleContext={styleContext} />\n\n case 'material_note':\n return <MaterialNote block={block} styleContext={styleContext} />\n\n default: {\n return null\n }\n }\n}\n","import React, { useState } from 'react'\nimport { CoverProps } from './Cover.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport generateGradient from '../utils/generateGradient'\nimport { RenderBlocks } from '../RenderBlocks'\nimport { MediaCaption } from '../MediaCaption'\nimport { Image } from '../Image'\nimport { Popover } from '../Popover'\n\nimport styles from './Cover.module.css'\n\nexport const Cover: React.FC<CoverProps> = ({\n block: {\n only_on: onlyOn,\n data: {\n blocks,\n cover: { credit, caption, urls, mobile_ratio: mobileRatio, gradients, cc }\n }\n },\n styleContext\n}) => {\n const [isPopoverShown, setIsPopoverShown] = useState(false)\n\n const style: React.CSSProperties = {}\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], !!onlyOn && !!styles[onlyOn]]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n if (gradients) {\n const theme = [gradients.text_rgb === '0,0,0' ? 'dark' : 'light']\n\n classNames = makeStyleContext(classNames, theme, styles)\n\n style.backgroundImage = generateGradient(gradients.bg_rgb, 'mediaBlockBottom')\n }\n\n const renderCC = (context?: string): JSX.Element => (\n <MediaCaption\n credit={credit}\n caption={caption}\n styleContext={context || styleContext}\n />\n )\n\n return (\n <div data-testid=\"cover\" className={makeClassName(classNames)}>\n <div className={styles.image}>\n <Image optimized={urls} ratio={mobileRatio} display=\"narrow\" />\n </div>\n <div className={styles.body} style={style}>\n {blocks.map((item) => (\n <RenderBlocks\n key={item.id}\n block={item}\n styleContext={styleContext}\n />\n ))}\n </div>\n {cc === 'button' && (\n <button\n className={styles.control}\n type=\"button\"\n aria-label=\"Open\"\n onClick={(): void => {\n setIsPopoverShown(!isPopoverShown)\n }}\n />\n )}\n\n {cc === 'button' && isPopoverShown && (\n <Popover\n onClose={(): void => {\n setIsPopoverShown(false)\n }}\n >\n {renderCC('isInPopover')}\n </Popover>\n )}\n </div>\n )\n}\n","import React from 'react'\nimport { HalfBlockProps } from './HalfBlock.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { RenderBlocks } from '../RenderBlocks'\nimport { Image } from '../Image'\nimport { MediaCaption } from '../MediaCaption'\n\nimport styles from './HalfBlock.module.css'\n\nexport const HalfBlock: React.FC<HalfBlockProps> = ({\n block: {\n only_on: onlyOn,\n data,\n data: {\n cover: { optimized, ratio, credit, caption }\n }\n },\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], true]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"half-block\" className={makeClassName(classNames)}>\n <div className={styles.main}>\n <div className={styles.image}>\n <Image optimized={optimized} ratio={ratio} display=\"super_full\" />\n </div>\n <div className={styles.body}>\n {data.blocks.map((item) => (\n <RenderBlocks key={item.id} block={item} styleContext={['rich']} />\n ))}\n </div>\n </div>\n <div className={styles.footer}>\n <MediaCaption\n credit={credit}\n caption={caption}\n styleContext={styleContext}\n />\n </div>\n </div>\n )\n}\n","import React from 'react'\nimport { ImportantLeadProps } from './ImportantLead.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport { RenderBlocks } from '../RenderBlocks'\n\nimport styles from './ImportantLead.module.css'\n\nexport const ImportantLead: React.FC<ImportantLeadProps> = ({\n block: { only_on: onlyOn, data },\n styleContext\n}) => {\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], !!onlyOn]\n ]\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n return (\n <div data-testid=\"important-lead\" className={makeClassName(classNames)}>\n {data.map((item) => (\n <RenderBlocks\n key={item.id}\n block={item}\n styleContext=\"isInImportantLead\"\n />\n ))}\n </div>\n )\n}\n","import React, { useState, useRef } from 'react'\nimport { SpoilerProps } from './Spoiler.types'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\n\nimport postMessage from '../utils/postMessage'\nimport { RenderBlocks } from '../RenderBlocks'\nimport { Button } from '../Button'\nimport { SvgSymbol } from '../SvgSymbol'\n\nimport styles from './Spoiler.module.css'\n\nexport const Spoiler: React.FC<SpoilerProps> = ({\n block: {\n display,\n button,\n only_on: onlyOn,\n btn_title: buttonTitle,\n title,\n blocks\n },\n styleContext\n}) => {\n const [spoiled, setSpoiled] = useState(false)\n const ref = useRef(null)\n\n const handleButtonClick = (): void => {\n setSpoiled(!spoiled)\n\n if (spoiled) {\n postMessage('', 'closeSpoiler', 'click')\n const rect = ref.current.getBoundingClientRect()\n if (rect.top < 0) {\n ref.current.scrollIntoView({ behavior: 'smooth' })\n }\n } else {\n postMessage('', 'openSpoiler', 'click')\n }\n }\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[onlyOn], !!onlyOn],\n [styles[display], !!display && styles[display]],\n [[styles.spoiled], !!spoiled]\n ]\n\n const context = ['center']\n\n if (styleContext) {\n context.concat(styleContext)\n classNames = makeStyleContext(classNames, styleContext, styles)\n }\n\n const buttonCollapse = button ? button.collapse : 'Свернуть'\n const buttonExpande = button ? button.expand : buttonTitle\n\n return (\n <div ref={ref} className={makeClassName(classNames)} data-testid=\"spoiler\">\n <div className={styles.header}>{title && <h3>{title}</h3>}</div>\n <div className={styles.body}>\n {blocks.map((item) => (\n <RenderBlocks key={item.id} block={item} styleContext={context} />\n ))}\n </div>\n <div className={styles.footer}>\n <Button\n size=\"default\"\n theme=\"gray\"\n onClick={(): void => handleButtonClick()}\n styleContext=\"isInSpoiler\"\n >\n {spoiled ? buttonCollapse : buttonExpande}\n <SvgSymbol icon=\"arrow\" />\n </Button>\n </div>\n </div>\n )\n}\n","/* eslint-disable react/jsx-no-target-blank */\nimport React, { useEffect } from 'react'\nimport { useInView } from 'react-intersection-observer'\nimport { RelatedRichBlockProps } from './RelatedRichBlock.types'\n\nimport postMessage from '../utils/postMessage'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\nimport makeStyleContext from '../utils/makeStyleContext'\nimport generateGradient from '../utils/generateGradient'\nimport { toCapitalize } from '../utils/converCase'\n\nimport { Tag } from '../Tag'\nimport { RenderBlocks } from '../RenderBlocks'\nimport { Image } from '../Image'\n\nimport styles from './RelatedRichBlock.module.css'\n\nexport const RelatedRichBlock: React.FC<RelatedRichBlockProps> = ({\n block: {\n only_on: onlyOn,\n data: {\n blocks,\n url,\n cover: { urls, gradients, tag, layout, ratio }\n }\n },\n styleContext\n}) => {\n const style: React.CSSProperties = {}\n const styleHeader: React.CSSProperties = {}\n\n const cardType = `is${toCapitalize(layout)}`\n\n const [ref, inView] = useInView({\n threshold: 0,\n triggerOnce: true\n })\n\n useEffect(() => {\n if (inView) {\n if (\n (onlyOn === 'mobile' && window.innerWidth <= 511) ||\n (onlyOn === 'desktop' && window.innerWidth >= 512) ||\n !onlyOn\n ) {\n postMessage('richRelated', url, 'view')\n }\n }\n }, [inView])\n\n const handleClick = () => {\n postMessage('richRelated', url, 'click')\n }\n\n let classNames: ClassNames = [\n [styles.root, true],\n [styles[cardType], !!layout && !!styles[cardType]],\n [styles.hasGradient, !!gradients],\n [styles[onlyOn], !!onlyOn && !!styles[onlyOn]]\n ]\n\n let context = ['isInMediaBlock']\n\n if (styleContext) {\n classNames = makeStyleContext(classNames, styleContext, styles)\n\n context = [...styleContext, 'isInMediaBlock']\n }\n\n if (gradients) {\n styleHeader.backgroundImage = generateGradient(\n gradients.bg_rgb,\n 'mediaBlockTop'\n )\n\n const theme = [gradients.text_rgb === '0,0,0' ? 'dark' : 'light']\n classNames = makeStyleContext(classNames, theme, styles)\n\n if (onlyOn === 'desktop') {\n style.backgroundImage = generateGradient(\n gradients.bg_rgb,\n 'mediaBlockBottom'\n )\n }\n }\n\n return (\n <a\n data-testid=\"related-rich-block\"\n className={makeClassName(classNames)}\n href={`/${url}`}\n target=\"_blank\"\n onClick={(): void => handleClick()}\n ref={ref}\n >\n {layout === 'rich' && (\n <>\n <div className={styles.overlay} style={style} />\n <div className={styles.overlayHeader} style={styleHeader} />\n </>\n )}\n\n <div className={styles.tag}>\n <Tag size=\"small\" theme=\"inherit\" styleContext=\"richRelated\">\n {tag}\n </Tag>\n </div>\n <div className={styles.cover}>\n <div className={styles.picture}>\n <Image optimized={urls} ratio={ratio} display=\"narrow\" />\n </div>\n </div>\n <div className={styles.body}>\n {blocks.map((item) => (\n <RenderBlocks key={item.id} block={item} styleContext={context} />\n ))}\n </div>\n </a>\n )\n}\n","import React from 'react'\nimport { RawHtmlBlockProps } from './RawHtmlBlock.types'\nimport { ImportantLead } from '../ImportantLead'\nimport { RenderBlocks } from '../RenderBlocks'\nimport { Spoiler } from '../Spoiler'\nimport { HalfBlock } from '../HalfBlock'\nimport { Cover } from '../Cover'\nimport { RelatedRichBlock } from '../RelatedRichBlock'\nimport { BlockProvider } from '../utils/BlockContext'\n\nexport const RawHtmlBlock: React.FC<RawHtmlBlockProps> = ({\n block,\n styleContext,\n isRead,\n isListened,\n isInBookmarks,\n bookmarkAction,\n lightBox\n}) => {\n const context = {\n lightBox: lightBox || null\n }\n\n switch (block.type) {\n case 'important_lead': {\n return <ImportantLead block={block} styleContext={styleContext} />\n }\n\n case 'spoiler': {\n return (\n <BlockProvider value={context}>\n <Spoiler block={block} styleContext={styleContext} />\n </BlockProvider>\n )\n }\n\n case 'cover': {\n return <Cover block={block} styleContext={styleContext} />\n }\n\n case 'half': {\n return <HalfBlock block={block} styleContext={styleContext} />\n }\n\n case 'related_rich': {\n return <RelatedRichBlock block={block} styleContext={styleContext} />\n }\n\n default: {\n return (\n <BlockProvider value={context}>\n <RenderBlocks\n block={block}\n styleContext={styleContext}\n isRead={isRead}\n isListened={isListened}\n isInBookmarks={isInBookmarks}\n bookmarkAction={bookmarkAction}\n />\n </BlockProvider>\n )\n }\n }\n}\n","import React from 'react'\nimport { ToolbarButtonProps } from './ToolbarButton.types'\nimport { SvgSymbol } from '../SvgSymbol/'\nimport { makeClassName, ClassNames } from '../utils/makeClassName'\n\nimport styles from './ToolbarButton.module.css'\n\nexport const ToolbarButton: React.FC<ToolbarButtonProps> = ({\n children,\n type,\n theme,\n isActive,\n onClick\n}) => {\n const classNames: ClassNames = [\n [styles.root, true],\n [styles[type], !!styles[type]],\n [styles[theme], !!styles[theme] && !!theme],\n [styles.isActive, !!isActive]\n ]\n\n return (\n <button\n data-testid=\"toolbar-button\"\n className={makeClassName(classNames)}\n type=\"button\"\n onClick={(): void => onClick(type)}\n >\n <SvgSymbol size=\"medium\" icon={type} styleContext=\"isInToolbar\" />\n {children && <span className={styles.text}>{children}</span>}\n </button>\n )\n}\n"],"names":["makeClassName","list","filter","active","map","className","join","Loader","React","width","height","viewBox","xmlns","d","opacity","fillRule","attributeName","type","from","to","dur","repeatCount","Button","theme","size","state","styleContext","disabled","onClick","children","handleClick","styles","root","loader","icons","meduzaLogo","content","menu","fb","tw","vk","ok","tg","meduzaSymbol","backward","forward","download","play","pause","speedHalf","speedOne","speedOneHalf","speedTwo","podcastBookmark","reaction","cross","link","search","card","podcast","arrow","brent","user","bookmark","receipt","read","listened","SvgSymbol","icon","data","xmlnsXlink","dangerouslySetInnerHTML","__html","Switcher","enabled","childrenPosition","onChange","left","input","checked","control","knob","right","makeStyleContext","classNames","context","Array","isArray","ctx","concat","BlockContext","createContext","lightBox","BlockProvider","Provider","POST_MESSAGE_PREFIX","postMessage","category","element","action","target","window","top","msg","JSON","stringify","Lazy","threshold","useInView","ref","inView","entry","useState","visible","setVisible","useEffect","boundingClientRect","y","MediaQuerySizes","MOBILE","PORTRAIT_TABLET","LANDSCAPE_TABLET","DESKTOP","WIDE_DESKTOP","imageBreakpoints","imageConditionalKeys","xs","superFull","full","narrow","toCamel","s","replace","str","toUpperCase","toCapitalize","slice","RenderPicture","source","fallbackSource","optimized","alt","display","onLoad","fallback","setFallback","HTMLPictureElement","keys","media","srcSet","w325","original","key","breakpoint","Fragment","src","Image","lazy","fullscreen","ratio","useContext","isLoaded","setIsLoaded","show","blockStyles","maxWidth","pictureStyles","paddingBottom","desktop","style","wrapper","onKeyPress","role","tabIndex","Popover","onClose","handleClose","setTimeout","handleScroll","escFunction","event","document","body","dataset","popover","addEventListener","removeAttribute","removeEventListener","overlay","container","dismiss","background","id","x","fill","overflow","transform","mask","Footnote","innerWidth","documentElement","clientWidth","innerHeight","clientHeight","DotsOnImage","block","credit","dots","setRatio","useRef","title","setPopover","defaultWidth","handleClickOutside","setDotSize","path","composedPath","indexOf","current","handleDotClick","dot","shouldShow","side","position","align","isVisible","mobile","marker","isActive","backgroundColor","color","svg_string","number","viewportSize","Tag","correlation","onlyOn","MediaCaption","caption","Table","rows","options","columnsWidth","columns_widths","tableCredit","table_credit","colors","table","tracks","row","i","cells","cell","j","header","fixedColumn","fixed_first_column","val","MaterialNote","item","BookmarkButton","isInBookmarks","Primary","primary","Secondary","secondary","MaterialTitle","Menu","Dropdown","Toolbar","renderItems","Children","index","props","cloneElement","Meta","hasSource","Timestamp","publishedAt","locale","published","timeFormat","preparedPublishedAt","dayjs","extend","relativeTime","fromNow","format","Error","DangerousHTML","tagName","TagName","html","canRenderHtml","setCanRenderHtml","replaceScriptElementsRecursive","useCallback","node","script","createElement","Math","random","toString","innerHTML","attrs","attributes","length","name","value","setAttribute","parentElement","replaceChild","childNodes","prepareAnchors","anchors","querySelectorAll","forEach","a","firstElementChild","EmbedGif","gif","mp4Url","videoFrozen","setVideoFrozen","videoElem","handleVideoTouch","handleVideoError","video","viewportWidth","enableInlineVideo","figure","objectWrap","playsInline","muted","loop","autoPlay","preload","EmbedBlock","only_on","provider","cc","small","small_url","large","large_url","gifUrl","gif_url","mp4_url","isPopoverShown","setIsPopoverShown","isProportional","fullWidthProviders","mobileFullwidth","renderCC","renderEmbed","gameEmbed","game_src","game_id","object","proportional","filteredContext","startsWith","reduce","acc","push","IframeBlock","lang","renderIframe","rootEl","contentEl","scriptEl","range","createRange","setStart","textContent","appendChild","createContextualFragment","frame","querySelector","contentDocument","open","close","EmbedBlockContainer","wrap_with_iframe","QuoteBlock","CardTitle","text","ChapterBlock","subtitle","generateGradient","steps","mediaBlockBottom","mediaBlockTop","gradient","SimpleTitle","first","RichTitle","featured","second","as","SimpleBlock","ListBlock","RelatedBlock","related","items","layout","href","full_url","url","rel","second_title","SourceBlock","quote","origin","cite","SensitiveBlock","blurredImage","blurred_image","backgroundImage","button","figcaption","GroupedBlock","maxHeight","min","normalizedBoxesWidth","heigh","sumWidth","sum","hasFigcaption","percentWidth","MetaItem","bullets","hasBullets","MetaItemLive","pluralize","one","two","five","n","abs","DocumentItemsCount","i18n","ru","en","itemsCount","MetaContainer","isRead","isListened","bookmarkAction","components","themeColor","isPodcast","isSlides","find","component","datetime","count","with_icon","label","RenderBlocks","Cover","blocks","cover","urls","mobileRatio","mobile_ratio","gradients","text_rgb","bg_rgb","image","HalfBlock","main","footer","ImportantLead","Spoiler","buttonTitle","btn_title","spoiled","setSpoiled","handleButtonClick","rect","getBoundingClientRect","scrollIntoView","behavior","buttonCollapse","collapse","buttonExpande","expand","RelatedRichBlock","tag","styleHeader","cardType","triggerOnce","hasGradient","overlayHeader","picture","RawHtmlBlock","ToolbarButton"],"mappings":"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"}
|