@diplodoc/components 3.3.1 → 3.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/components/BookmarkButton/BookmarkButton.css.map +1 -1
- package/build/cjs/components/Breadcrumbs/Breadcrumbs.css.map +1 -1
- package/build/cjs/components/ContributorAvatars/ContributorAvatars.css.map +1 -1
- package/build/cjs/components/Contributors/Contributors.css.map +1 -1
- package/build/cjs/components/Control/Control.css.map +1 -1
- package/build/cjs/components/Control/Control.d.ts +1 -0
- package/build/cjs/components/Control/Control.js +3 -1
- package/build/cjs/components/Control/Control.js.map +2 -2
- package/build/cjs/components/Controls/Controls.css.map +1 -1
- package/build/cjs/components/Controls/Controls.js +3 -0
- package/build/cjs/components/Controls/Controls.js.map +2 -2
- package/build/cjs/components/Controls/ControlsLayout.d.ts +1 -0
- package/build/cjs/components/Controls/ControlsLayout.js +3 -0
- package/build/cjs/components/Controls/ControlsLayout.js.map +2 -2
- package/build/cjs/components/Controls/single-controls/DividerControl/DividerControl.css.map +1 -1
- package/build/cjs/components/Controls/single-controls/SettingsControl/SettingsControl.css.map +1 -1
- package/build/cjs/components/Controls/single-controls/SettingsControl/SettingsControl.js +2 -1
- package/build/cjs/components/Controls/single-controls/SettingsControl/SettingsControl.js.map +2 -2
- package/build/cjs/components/DocLayout/DocLayout.css.map +1 -1
- package/build/cjs/components/DocLeadingPage/DocLeadingPage.css.map +1 -1
- package/build/cjs/components/DocPage/DocPage.css +1 -1
- package/build/cjs/components/DocPage/DocPage.css.map +2 -2
- package/build/cjs/components/DocPageTitle/DocPageTitle.css.map +1 -1
- package/build/cjs/components/ErrorBoundary/ErrorBoundary.js +2 -2
- package/build/cjs/components/ErrorBoundary/ErrorBoundary.js.map +3 -3
- package/build/cjs/components/ErrorPage/ErrorPage.css.map +1 -1
- package/build/cjs/components/Feedback/Feedback.css.map +1 -1
- package/build/cjs/components/Mark/Mark.css +0 -1
- package/build/cjs/components/Mark/Mark.css.map +3 -3
- package/build/cjs/components/MiniToc/MiniToc.css.map +1 -1
- package/build/cjs/components/MiniToc/MiniToc.js +2 -1
- package/build/cjs/components/MiniToc/MiniToc.js.map +2 -2
- package/build/cjs/components/Paginator/Paginator.css.map +1 -1
- package/build/cjs/components/Scrollspy/Scrollspy.d.ts +2 -2
- package/build/cjs/components/Scrollspy/Scrollspy.js +32 -6
- package/build/cjs/components/Scrollspy/Scrollspy.js.map +3 -3
- package/build/cjs/components/SearchBar/SearchBar.css.map +1 -1
- package/build/cjs/components/SearchBar/hooks.js +12 -2
- package/build/cjs/components/SearchBar/hooks.js.map +3 -3
- package/build/cjs/components/SearchItem/SearchItem.css.map +1 -1
- package/build/cjs/components/SearchPage/SearchPage.css.map +1 -1
- package/build/cjs/components/Subscribe/Subscribe.css.map +1 -1
- package/build/cjs/components/Toc/Toc.css +4 -0
- package/build/cjs/components/Toc/Toc.css.map +3 -3
- package/build/cjs/components/Toc/Toc.d.ts +1 -0
- package/build/cjs/components/Toc/Toc.js +8 -5
- package/build/cjs/components/Toc/Toc.js.map +3 -3
- package/build/cjs/components/TocItem/TocItem.css.map +1 -1
- package/build/cjs/components/TocNavPanel/TocNavPanel.css.map +1 -1
- package/build/cjs/components/ToggleArrow/ToggleArrow.css.map +1 -1
- package/build/cjs/config/i18n.js +3 -2
- package/build/cjs/config/i18n.js.map +2 -2
- package/build/esm/components/BookmarkButton/BookmarkButton.css.map +1 -1
- package/build/esm/components/Breadcrumbs/Breadcrumbs.css.map +1 -1
- package/build/esm/components/ContributorAvatars/ContributorAvatars.css.map +1 -1
- package/build/esm/components/Contributors/Contributors.css.map +1 -1
- package/build/esm/components/Control/Control.css.map +1 -1
- package/build/esm/components/Control/Control.d.ts +1 -0
- package/build/esm/components/Control/Control.js +3 -1
- package/build/esm/components/Control/Control.js.map +2 -2
- package/build/esm/components/Controls/Controls.css.map +1 -1
- package/build/esm/components/Controls/Controls.js +3 -0
- package/build/esm/components/Controls/Controls.js.map +2 -2
- package/build/esm/components/Controls/ControlsLayout.d.ts +1 -0
- package/build/esm/components/Controls/ControlsLayout.js +3 -0
- package/build/esm/components/Controls/ControlsLayout.js.map +2 -2
- package/build/esm/components/Controls/single-controls/DividerControl/DividerControl.css.map +1 -1
- package/build/esm/components/Controls/single-controls/SettingsControl/SettingsControl.css.map +1 -1
- package/build/esm/components/Controls/single-controls/SettingsControl/SettingsControl.js +2 -1
- package/build/esm/components/Controls/single-controls/SettingsControl/SettingsControl.js.map +2 -2
- package/build/esm/components/DocLayout/DocLayout.css.map +1 -1
- package/build/esm/components/DocLeadingPage/DocLeadingPage.css.map +1 -1
- package/build/esm/components/DocPage/DocPage.css +1 -1
- package/build/esm/components/DocPage/DocPage.css.map +2 -2
- package/build/esm/components/DocPageTitle/DocPageTitle.css.map +1 -1
- package/build/esm/components/ErrorBoundary/ErrorBoundary.js +1 -1
- package/build/esm/components/ErrorBoundary/ErrorBoundary.js.map +2 -2
- package/build/esm/components/ErrorPage/ErrorPage.css.map +1 -1
- package/build/esm/components/Feedback/Feedback.css.map +1 -1
- package/build/esm/components/Mark/Mark.css +0 -1
- package/build/esm/components/Mark/Mark.css.map +3 -3
- package/build/esm/components/MiniToc/MiniToc.css.map +1 -1
- package/build/esm/components/MiniToc/MiniToc.js +2 -1
- package/build/esm/components/MiniToc/MiniToc.js.map +2 -2
- package/build/esm/components/Paginator/Paginator.css.map +1 -1
- package/build/esm/components/Scrollspy/Scrollspy.d.ts +2 -2
- package/build/esm/components/Scrollspy/Scrollspy.js +30 -3
- package/build/esm/components/Scrollspy/Scrollspy.js.map +2 -2
- package/build/esm/components/SearchBar/SearchBar.css.map +1 -1
- package/build/esm/components/SearchBar/hooks.js +1 -1
- package/build/esm/components/SearchBar/hooks.js.map +2 -2
- package/build/esm/components/SearchItem/SearchItem.css.map +1 -1
- package/build/esm/components/SearchPage/SearchPage.css.map +1 -1
- package/build/esm/components/Subscribe/Subscribe.css.map +1 -1
- package/build/esm/components/Toc/Toc.css +4 -0
- package/build/esm/components/Toc/Toc.css.map +3 -3
- package/build/esm/components/Toc/Toc.d.ts +1 -0
- package/build/esm/components/Toc/Toc.js +6 -3
- package/build/esm/components/Toc/Toc.js.map +2 -2
- package/build/esm/components/TocItem/TocItem.css.map +1 -1
- package/build/esm/components/TocNavPanel/TocNavPanel.css.map +1 -1
- package/build/esm/components/ToggleArrow/ToggleArrow.css.map +1 -1
- package/build/esm/config/i18n.js +3 -2
- package/build/esm/config/i18n.js.map +2 -2
- package/build/index.css.map +1 -1
- package/build/themes/common/index.css +0 -1
- package/build/themes/common/index.css.map +3 -3
- package/package.json +2 -2
- package/src/i18n/en.json +2 -1
- package/src/i18n/ru.json +2 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/components/Scrollspy/Scrollspy.tsx"],
|
|
4
|
-
"sourcesContent": ["import React, {ReactElement} from 'react';\n\nimport {debounce, isEqual} from 'lodash';\nimport scrollIntoView from 'scroll-into-view-if-needed';\n\nimport {Router} from '../../models';\nimport {InnerProps} from '../../utils';\n\ninterface ScrollspyDefaultProps {\n currentClassName: string;\n sectionOffset: number;\n headerHeight: number;\n}\n\nexport interface ScrollspyProps extends Partial<ScrollspyDefaultProps> {\n items: string[];\n children: ReactElement[];\n router: Router;\n onSectionClick?: (event: MouseEvent) => void;\n className?: string;\n scrollToListItem?: boolean;\n}\n\ninterface ScrollspyState {\n targetItems: HTMLElement[];\n inViewState: boolean[];\n}\n\ntype ScrollspyInnerProps = InnerProps<ScrollspyProps, ScrollspyDefaultProps>;\n\nexport class Scrollspy extends React.Component<ScrollspyInnerProps, ScrollspyState> {\n static defaultProps: ScrollspyDefaultProps = {\n currentClassName: 'Scrollspy',\n sectionOffset: 20,\n headerHeight: 0,\n };\n\n containerRef = React.createRef<HTMLUListElement>();\n itemRefs = this.props.items.map(() => React.createRef<HTMLDivElement>());\n\n scrollByClick: boolean;\n firstItemIndexInView: number;\n lastItemIndexInView: number;\n\n constructor(props: ScrollspyInnerProps) {\n super(props);\n\n this.state = {\n targetItems: [],\n inViewState: [],\n };\n\n this.scrollByClick = false;\n this.firstItemIndexInView = -1;\n this.lastItemIndexInView = -1;\n }\n\n componentDidMount() {\n this.initItems();\n window.addEventListener('scroll', this.handleScroll);\n\n const containerEl = this.containerRef.current;\n if (containerEl) {\n containerEl.addEventListener('scroll', this.updateScrollValues);\n }\n }\n\n componentDidUpdate(prevProps: Readonly<ScrollspyProps>, prevState: Readonly<ScrollspyState>) {\n const {items, router} = this.props;\n const {inViewState} = this.state;\n\n if (!isEqual(inViewState, prevState.inViewState)) {\n this.scrollToListItem();\n }\n\n if (!isEqual(items, prevProps.items) || prevProps.router.pathname !== router.pathname) {\n this.initItems();\n }\n\n if (router.hash !== prevProps.router.hash) {\n this.pauseScrollHandler();\n this.saveActiveItems(router.hash);\n }\n }\n\n componentWillUnmount() {\n window.removeEventListener('scroll', this.handleScroll);\n\n const containerEl = this.containerRef.current;\n if (containerEl) {\n containerEl.removeEventListener('scroll', this.updateScrollValues);\n }\n }\n\n render() {\n const {children, currentClassName, className} = this.props;\n const {inViewState} = this.state;\n\n const items = children.map((child, index) => {\n if (!child) {\n return null;\n }\n\n const ChildTag = child.type;\n let childClassNames = child.props.className;\n\n if (inViewState[index] && currentClassName.length > 0) {\n childClassNames += ` ${currentClassName}`;\n\n this.syncScroll(index);\n }\n\n return (\n <ChildTag\n key={child.key}\n className={childClassNames}\n onClick={this.handleSectionClick}\n ref={this.itemRefs[index]}\n aria-current={inViewState[index] ? 'location' : undefined}\n >\n {child.props.children}\n </ChildTag>\n );\n });\n\n return (\n <ul className={className} ref={this.containerRef}>\n {items}\n </ul>\n );\n }\n\n private updateFirstItemIndexInView(maxItemsInView: number) {\n this.firstItemIndexInView = Math.max(this.lastItemIndexInView - (maxItemsInView - 1), 0);\n }\n\n private getContainerValues(containerEl: HTMLUListElement) {\n const {children} = this.props;\n\n /* Average values */\n const childHeight = Math.round(containerEl.scrollHeight / children.length);\n const maxItemsInView = Math.round(containerEl.clientHeight / childHeight);\n\n return {childHeight, maxItemsInView};\n }\n\n private updateScrollValues = () => {\n const containerEl = this.containerRef.current;\n\n if (!containerEl) {\n return;\n }\n\n const {childHeight, maxItemsInView} = this.getContainerValues(containerEl);\n this.lastItemIndexInView =\n Math.round(containerEl.scrollTop / childHeight) + maxItemsInView - 1;\n\n this.updateFirstItemIndexInView(maxItemsInView);\n };\n\n private syncScroll(index: number) {\n const {children} = this.props;\n const containerEl = this.containerRef.current;\n\n if (!containerEl) {\n return;\n }\n\n const {childHeight, maxItemsInView} = this.getContainerValues(containerEl);\n\n if (this.lastItemIndexInView === -1) {\n this.lastItemIndexInView = maxItemsInView - 1;\n }\n\n this.updateFirstItemIndexInView(maxItemsInView);\n\n let itemInView = false;\n if (index >= this.lastItemIndexInView) {\n this.lastItemIndexInView = Math.min(index + 1, children.length - 1);\n } else if (index <= this.firstItemIndexInView) {\n this.lastItemIndexInView = Math.max(index + maxItemsInView - 2, maxItemsInView - 1);\n } else {\n itemInView = true;\n }\n\n this.updateFirstItemIndexInView(maxItemsInView);\n\n const endIsNear = index + maxItemsInView / 2 > children.length;\n if (itemInView) {\n return;\n } else if (endIsNear) {\n containerEl.scrollTop = containerEl.scrollHeight;\n } else {\n containerEl.scrollTop = childHeight * this.firstItemIndexInView;\n }\n }\n\n private scrollToListItem = () => {\n if (!this.props.scrollToListItem) {\n return;\n }\n\n let itemIndex = this.state.inViewState.findIndex((isActive) => isActive);\n\n if (itemIndex < 0) {\n itemIndex = 0;\n }\n\n const ref = this.itemRefs[itemIndex] && this.itemRefs[itemIndex].current;\n\n if (ref) {\n scrollIntoView(ref, {\n scrollMode: 'if-needed',\n block: 'nearest',\n inline: 'nearest',\n behavior: 'smooth',\n });\n }\n };\n\n private initItems() {\n const {items} = this.props;\n const targetItems = items\n .map((item) => document.getElementById(item.split('#')[1]))\n .filter(Boolean) as HTMLElement[];\n\n this.setState({targetItems}, this.initSections);\n this.scrollToListItem();\n }\n\n private initSections = () => {\n this.saveActiveItems();\n };\n\n private saveActiveItems(hash?: string) {\n const visibleItems = this.getViewState(hash);\n\n this.setState({inViewState: visibleItems});\n }\n\n private getViewState(hash?: string) {\n const {targetItems, inViewState} = this.state;\n const {headerHeight} = this.props;\n const currentOffset = window.pageYOffset;\n const visibleItemOffset: boolean[] = [];\n let isOneActive = false;\n\n const pureHash = hash && hash.startsWith('#') ? hash.substring(1) : hash;\n\n targetItems.forEach((item, index) => {\n if (!item) {\n return;\n }\n\n const offsetTop = item.getBoundingClientRect().top;\n const isVisibleItem = offsetTop < headerHeight + 1;\n\n if (pureHash) {\n if (pureHash === item.getAttribute('id')) {\n visibleItemOffset.push(true);\n isOneActive = true;\n } else {\n visibleItemOffset.push(false);\n }\n } else if (isVisibleItem) {\n if (visibleItemOffset[index - 1]) {\n visibleItemOffset[index - 1] = false;\n }\n\n visibleItemOffset.push(true);\n isOneActive = true;\n } else {\n visibleItemOffset.push(false);\n }\n });\n\n if (targetItems && targetItems.length && !isOneActive) {\n if (currentOffset < targetItems[0].getBoundingClientRect().top) {\n visibleItemOffset[0] = true;\n isOneActive = true;\n }\n }\n\n return isOneActive ? visibleItemOffset : inViewState;\n }\n\n private handleScroll = () => {\n if (this.scrollByClick) {\n // the end of smooth auto-scroll\n window.removeEventListener('scroll', this.handleScrollDebounced);\n window.addEventListener('scroll', this.handleScroll);\n this.scrollByClick = false;\n }\n this.saveActiveItems();\n };\n\n // eslint-disable-next-line @typescript-eslint/member-ordering, react/sort-comp\n private handleScrollDebounced = debounce(this.handleScroll, 100);\n\n private pauseScrollHandler() {\n // wait for the end of smooth auto-scroll\n this.scrollByClick = true;\n window.removeEventListener('scroll', this.handleScroll);\n window.addEventListener('scroll', this.handleScrollDebounced);\n }\n\n private handleSectionClick = (event: MouseEvent) => {\n const {onSectionClick} = this.props;\n const {target} = event;\n\n if (target && (target as HTMLElement).tagName === 'A') {\n event.stopPropagation();\n this.pauseScrollHandler();\n this.saveActiveItems((target as HTMLAnchorElement).hash);\n\n if (onSectionClick) {\n onSectionClick(event);\n }\n }\n };\n}\n"],
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": ["React", "scrollIntoView"]
|
|
4
|
+
"sourcesContent": ["import React, {HTMLProps, ReactElement} from 'react';\n\nimport debounce from 'lodash/debounce';\nimport isEqual from 'lodash/isEqual';\nimport scrollIntoView from 'scroll-into-view-if-needed';\n\nimport {Router} from '../../models';\nimport {InnerProps} from '../../utils';\n\ninterface ScrollspyDefaultProps {\n currentClassName: string;\n sectionOffset: number;\n headerHeight: number;\n}\n\nexport interface ScrollspyProps\n extends Partial<ScrollspyDefaultProps>,\n Partial<HTMLProps<HTMLUListElement>> {\n items: string[];\n children: ReactElement[];\n router: Router;\n onSectionClick?: (event: MouseEvent) => void;\n className?: string;\n scrollToListItem?: boolean;\n}\n\ninterface ScrollspyState {\n targetItems: HTMLElement[];\n inViewState: boolean[];\n}\n\ntype ScrollspyInnerProps = InnerProps<ScrollspyProps, ScrollspyDefaultProps>;\n\nexport class Scrollspy extends React.Component<ScrollspyInnerProps, ScrollspyState> {\n static defaultProps: ScrollspyDefaultProps = {\n currentClassName: 'Scrollspy',\n sectionOffset: 20,\n headerHeight: 0,\n };\n\n containerRef = React.createRef<HTMLUListElement>();\n itemRefs = this.props.items.map(() => React.createRef<HTMLDivElement>());\n\n scrollByClick: boolean;\n firstItemIndexInView: number;\n lastItemIndexInView: number;\n\n constructor(props: ScrollspyInnerProps) {\n super(props);\n\n this.state = {\n targetItems: [],\n inViewState: [],\n };\n\n this.scrollByClick = false;\n this.firstItemIndexInView = -1;\n this.lastItemIndexInView = -1;\n }\n\n componentDidMount() {\n this.initItems();\n window.addEventListener('scroll', this.handleScroll);\n\n const containerEl = this.containerRef.current;\n if (containerEl) {\n containerEl.addEventListener('scroll', this.updateScrollValues);\n }\n }\n\n componentDidUpdate(prevProps: Readonly<ScrollspyProps>, prevState: Readonly<ScrollspyState>) {\n const {items, router} = this.props;\n const {inViewState} = this.state;\n\n if (!isEqual(inViewState, prevState.inViewState)) {\n this.scrollToListItem();\n }\n\n if (!isEqual(items, prevProps.items) || prevProps.router.pathname !== router.pathname) {\n this.initItems();\n }\n\n if (router.hash !== prevProps.router.hash) {\n this.pauseScrollHandler();\n this.saveActiveItems(router.hash);\n }\n }\n\n componentWillUnmount() {\n window.removeEventListener('scroll', this.handleScroll);\n\n const containerEl = this.containerRef.current;\n if (containerEl) {\n containerEl.removeEventListener('scroll', this.updateScrollValues);\n }\n }\n\n render() {\n const {children, currentClassName, className, ...rest} = this.props;\n const {inViewState} = this.state;\n\n const items = children.map((child, index) => {\n if (!child) {\n return null;\n }\n\n const ChildTag = child.type;\n let childClassNames = child.props.className;\n\n if (inViewState[index] && currentClassName.length > 0) {\n childClassNames += ` ${currentClassName}`;\n\n this.syncScroll(index);\n }\n\n return (\n <ChildTag\n key={child.key}\n className={childClassNames}\n onClick={this.handleSectionClick}\n ref={this.itemRefs[index]}\n aria-current={inViewState[index] ? 'location' : undefined}\n >\n {child.props.children}\n </ChildTag>\n );\n });\n\n return (\n <ul className={className} ref={this.containerRef} {...rest}>\n {items}\n </ul>\n );\n }\n\n private updateFirstItemIndexInView(maxItemsInView: number) {\n this.firstItemIndexInView = Math.max(this.lastItemIndexInView - (maxItemsInView - 1), 0);\n }\n\n private getContainerValues(containerEl: HTMLUListElement) {\n const {children} = this.props;\n\n /* Average values */\n const childHeight = Math.round(containerEl.scrollHeight / children.length);\n const maxItemsInView = Math.round(containerEl.clientHeight / childHeight);\n\n return {childHeight, maxItemsInView};\n }\n\n private updateScrollValues = () => {\n const containerEl = this.containerRef.current;\n\n if (!containerEl) {\n return;\n }\n\n const {childHeight, maxItemsInView} = this.getContainerValues(containerEl);\n this.lastItemIndexInView =\n Math.round(containerEl.scrollTop / childHeight) + maxItemsInView - 1;\n\n this.updateFirstItemIndexInView(maxItemsInView);\n };\n\n private syncScroll(index: number) {\n const {children} = this.props;\n const containerEl = this.containerRef.current;\n\n if (!containerEl) {\n return;\n }\n\n const {childHeight, maxItemsInView} = this.getContainerValues(containerEl);\n\n if (this.lastItemIndexInView === -1) {\n this.lastItemIndexInView = maxItemsInView - 1;\n }\n\n this.updateFirstItemIndexInView(maxItemsInView);\n\n let itemInView = false;\n if (index >= this.lastItemIndexInView) {\n this.lastItemIndexInView = Math.min(index + 1, children.length - 1);\n } else if (index <= this.firstItemIndexInView) {\n this.lastItemIndexInView = Math.max(index + maxItemsInView - 2, maxItemsInView - 1);\n } else {\n itemInView = true;\n }\n\n this.updateFirstItemIndexInView(maxItemsInView);\n\n const endIsNear = index + maxItemsInView / 2 > children.length;\n if (itemInView) {\n return;\n } else if (endIsNear) {\n containerEl.scrollTop = containerEl.scrollHeight;\n } else {\n containerEl.scrollTop = childHeight * this.firstItemIndexInView;\n }\n }\n\n private scrollToListItem = () => {\n if (!this.props.scrollToListItem) {\n return;\n }\n\n let itemIndex = this.state.inViewState.findIndex((isActive) => isActive);\n\n if (itemIndex < 0) {\n itemIndex = 0;\n }\n\n const ref = this.itemRefs[itemIndex] && this.itemRefs[itemIndex].current;\n\n if (ref) {\n scrollIntoView(ref, {\n scrollMode: 'if-needed',\n block: 'nearest',\n inline: 'nearest',\n behavior: 'smooth',\n });\n }\n };\n\n private initItems() {\n const {items} = this.props;\n const targetItems = items\n .map((item) => document.getElementById(item.split('#')[1]))\n .filter(Boolean) as HTMLElement[];\n\n this.setState({targetItems}, this.initSections);\n this.scrollToListItem();\n }\n\n private initSections = () => {\n this.saveActiveItems();\n };\n\n private saveActiveItems(hash?: string) {\n const visibleItems = this.getViewState(hash);\n\n this.setState({inViewState: visibleItems});\n }\n\n private getViewState(hash?: string) {\n const {targetItems, inViewState} = this.state;\n const {headerHeight} = this.props;\n const currentOffset = window.pageYOffset;\n const visibleItemOffset: boolean[] = [];\n let isOneActive = false;\n\n const pureHash = hash && hash.startsWith('#') ? hash.substring(1) : hash;\n\n targetItems.forEach((item, index) => {\n if (!item) {\n return;\n }\n\n const offsetTop = item.getBoundingClientRect().top;\n const isVisibleItem = offsetTop < headerHeight + 1;\n\n if (pureHash) {\n if (pureHash === item.getAttribute('id')) {\n visibleItemOffset.push(true);\n isOneActive = true;\n } else {\n visibleItemOffset.push(false);\n }\n } else if (isVisibleItem) {\n if (visibleItemOffset[index - 1]) {\n visibleItemOffset[index - 1] = false;\n }\n\n visibleItemOffset.push(true);\n isOneActive = true;\n } else {\n visibleItemOffset.push(false);\n }\n });\n\n if (targetItems && targetItems.length && !isOneActive) {\n if (currentOffset < targetItems[0].getBoundingClientRect().top) {\n visibleItemOffset[0] = true;\n isOneActive = true;\n }\n }\n\n return isOneActive ? visibleItemOffset : inViewState;\n }\n\n private handleScroll = () => {\n if (this.scrollByClick) {\n // the end of smooth auto-scroll\n window.removeEventListener('scroll', this.handleScrollDebounced);\n window.addEventListener('scroll', this.handleScroll);\n this.scrollByClick = false;\n }\n this.saveActiveItems();\n };\n\n // eslint-disable-next-line @typescript-eslint/member-ordering, react/sort-comp\n private handleScrollDebounced = debounce(this.handleScroll, 100);\n\n private pauseScrollHandler() {\n // wait for the end of smooth auto-scroll\n this.scrollByClick = true;\n window.removeEventListener('scroll', this.handleScroll);\n window.addEventListener('scroll', this.handleScrollDebounced);\n }\n\n private handleSectionClick = (event: MouseEvent) => {\n const {onSectionClick} = this.props;\n const {target} = event;\n\n if (target && (target as HTMLElement).tagName === 'A') {\n event.stopPropagation();\n this.pauseScrollHandler();\n this.saveActiveItems((target as HTMLAnchorElement).hash);\n\n if (onSectionClick) {\n onSectionClick(event);\n }\n }\n };\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "scrollIntoView", "debounce", "isEqual"]
|
|
7
7
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/components/SearchBar/home/runner/work/components/components/src/components/SearchBar/SearchBar.scss", "../../../../src/components/SearchBar/%3Cinput%20css%
|
|
3
|
+
"sources": ["../../../../src/components/SearchBar/home/runner/work/components/components/src/components/SearchBar/SearchBar.scss", "../../../../src/components/SearchBar/%3Cinput%20css%20XZ57y7%3E"],
|
|
4
4
|
"sourcesContent": ["@import '../../styles/variables';\n@import '../../styles/mixins';\n\n.dc-search-bar {\n width: 100%;\n height: 100%;\n border-radius: 5px;\n box-sizing: border-box;\n box-shadow: 0px 3px 10px var(--g-color-base-generic-accent);\n padding: 11px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n font-size: var(--g-text-body-short-font-size);\n line-height: var(--g-text-body-short-line-height);\n\n &__search-query-label {\n color: var(--g-color-text-secondary);\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n\n @media (max-width: map-get($screenBreakpoints, 'md') + 1) {\n display: none;\n }\n }\n\n &__search-query {\n max-width: 400px;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n\n @media (max-width: map-get($screenBreakpoints, 'md') + 1) {\n display: none;\n }\n }\n\n &__left {\n width: 90%;\n display: flex;\n align-items: center;\n }\n\n &__navigation {\n display: flex;\n align-items: center;\n margin-right: 11px;\n }\n\n &__next-arrow {\n transform: rotate(-180deg);\n }\n\n &__counter {\n margin: 0 4px;\n }\n}\n\n$hl-class: '.dc-search-highlighted';\n\n#{$hl-class} {\n background: var(--dc-text-highlight);\n\n &_selected {\n background: var(--dc-text-highlight-selected);\n }\n}\n", ".dc-search-bar {\n width: 100%;\n height: 100%;\n border-radius: 5px;\n box-sizing: border-box;\n box-shadow: 0px 3px 10px var(--g-color-base-generic-accent);\n padding: 11px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n font-size: var(--g-text-body-short-font-size);\n line-height: var(--g-text-body-short-line-height);\n}\n.dc-search-bar__search-query-label {\n color: var(--g-color-text-secondary);\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n@media (max-width: 770px) {\n .dc-search-bar__search-query-label {\n display: none;\n }\n}\n.dc-search-bar__search-query {\n max-width: 400px;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n@media (max-width: 770px) {\n .dc-search-bar__search-query {\n display: none;\n }\n}\n.dc-search-bar__left {\n width: 90%;\n display: flex;\n align-items: center;\n}\n.dc-search-bar__navigation {\n display: flex;\n align-items: center;\n margin-right: 11px;\n}\n.dc-search-bar__next-arrow {\n transform: rotate(-180deg);\n}\n.dc-search-bar__counter {\n margin: 0 4px;\n}\n\n.dc-search-highlighted {\n background: var(--dc-text-highlight);\n}\n.dc-search-highlighted_selected {\n background: var(--dc-text-highlight-selected);\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvY29tcG9uZW50cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL1NlYXJjaEJhciIsInNvdXJjZXMiOlsiU2VhcmNoQmFyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFOSjtJQU9ROzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBTko7SUFPUTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOzs7QUFNUjtFQUNJOztBQUVBO0VBQ0kiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0ICcuLi8uLi9zdHlsZXMvdmFyaWFibGVzJztcbkBpbXBvcnQgJy4uLy4uL3N0eWxlcy9taXhpbnMnO1xuXG4uZGMtc2VhcmNoLWJhciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaGFkb3c6IDBweCAzcHggMTBweCB2YXIoLS1nLWNvbG9yLWJhc2UtZ2VuZXJpYy1hY2NlbnQpO1xuICAgIHBhZGRpbmc6IDExcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIGZvbnQtc2l6ZTogdmFyKC0tZy10ZXh0LWJvZHktc2hvcnQtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tZy10ZXh0LWJvZHktc2hvcnQtbGluZS1oZWlnaHQpO1xuXG4gICAgJl9fc2VhcmNoLXF1ZXJ5LWxhYmVsIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWctY29sb3ItdGV4dC1zZWNvbmRhcnkpO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogbWFwLWdldCgkc2NyZWVuQnJlYWtwb2ludHMsICdtZCcpICsgMSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NlYXJjaC1xdWVyeSB7XG4gICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBtYXAtZ2V0KCRzY3JlZW5CcmVha3BvaW50cywgJ21kJykgKyAxKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGVmdCB7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJl9fbmF2aWdhdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTFweDtcbiAgICB9XG5cbiAgICAmX19uZXh0LWFycm93IHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgfVxuXG4gICAgJl9fY291bnRlciB7XG4gICAgICAgIG1hcmdpbjogMCA0cHg7XG4gICAgfVxufVxuXG4kaGwtY2xhc3M6ICcuZGMtc2VhcmNoLWhpZ2hsaWdodGVkJztcblxuI3skaGwtY2xhc3N9IHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1kYy10ZXh0LWhpZ2hsaWdodCk7XG5cbiAgICAmX3NlbGVjdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZGMtdGV4dC1oaWdobGlnaHQtc2VsZWN0ZWQpO1xuICAgIH1cbn1cbiJdfQ== */"],
|
|
5
5
|
"mappings": ";AAGA,CAAA;AACI,SAAA;AACA,UAAA;AACA,iBAAA;AACA,cAAA;AACA,cAAA,IAAA,IAAA,KAAA,IAAA;AACA,WAAA;AACA,WAAA;AACA,eAAA;AACA,mBAAA;AAEA,aAAA,IAAA;AACA,eAAA,IAAA;ACHJ;ADKI,CAAA;AACI,SAAA,IAAA;AACA,eAAA;AACA,iBAAA;AACA,YAAA;ACHR;ADKQ,OAAA,CAAA,SAAA,EAAA;AANJ,GAAA;AAOQ,aAAA;ACFV;AACF;ADKI,CAAA;AACI,aAAA;AACA,eAAA;AACA,iBAAA;AACA,YAAA;ACHR;ADKQ,OAAA,CAAA,SAAA,EAAA;AANJ,GAAA;AAOQ,aAAA;ACFV;AACF;ADKI,CAAA;AACI,SAAA;AACA,WAAA;AACA,eAAA;ACHR;ADMI,CAAA;AACI,WAAA;AACA,eAAA;AACA,gBAAA;ACJR;ADOI,CAAA;AACI,aAAA,OAAA;ACLR;ADQI,CAAA;AACI,UAAA,EAAA;ACNR;ADYA,CAAA;AACI,cAAA,IAAA;ACTJ;ADWI,CAAA;AACI,cAAA,IAAA;ACTR;",
|
|
6
6
|
"names": []
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
2
3
|
var __defProp = Object.defineProperty;
|
|
3
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
5
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
8
|
var __export = (target, all) => {
|
|
7
9
|
for (var name in all)
|
|
@@ -15,6 +17,14 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
15
17
|
}
|
|
16
18
|
return to;
|
|
17
19
|
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
18
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
29
|
|
|
20
30
|
// src/components/SearchBar/hooks.ts
|
|
@@ -28,7 +38,7 @@ __export(hooks_exports, {
|
|
|
28
38
|
});
|
|
29
39
|
module.exports = __toCommonJS(hooks_exports);
|
|
30
40
|
var import_react = require("react");
|
|
31
|
-
var
|
|
41
|
+
var import_throttle = __toESM(require("lodash/throttle"));
|
|
32
42
|
var import_constants = require("./constants");
|
|
33
43
|
var import_utils = require("./utils");
|
|
34
44
|
function useHighlightedSearchWords({
|
|
@@ -279,7 +289,7 @@ function useCurrentWordSelectionSyncScrollEffect({
|
|
|
279
289
|
highlightedDOMElements,
|
|
280
290
|
headerHeight
|
|
281
291
|
]);
|
|
282
|
-
const handleScrollThrottled = (0,
|
|
292
|
+
const handleScrollThrottled = (0, import_throttle.default)(handleScroll, 50);
|
|
283
293
|
(0, import_react.useEffect)(() => {
|
|
284
294
|
if (searchBarIsVisible) {
|
|
285
295
|
window.addEventListener("scroll", handleScrollThrottled);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/components/SearchBar/hooks.ts"],
|
|
4
|
-
"sourcesContent": ["import {SyntheticEvent, useCallback, useEffect, useRef, useState} from 'react';\n\nimport {throttle} from 'lodash';\n\nimport {CLASSNAME, CLASSNAME_SELECTED, HIGHLIGHT_OPTIONS} from './constants';\nimport {getHighlightedItemIndexInView, highlight, scrollToItem} from './utils';\n\ntype UseHighlightedSearchWords = {\n html: string;\n searchWords: string[];\n showSearchBar: boolean;\n onNotFoundWords?: () => void;\n onContentMutation?: () => void;\n onContentLoaded?: () => void;\n};\n\nexport function useHighlightedSearchWords({\n html,\n searchWords,\n showSearchBar,\n onContentMutation: _onContentMutation,\n onContentLoaded: _onContentLoaded,\n onNotFoundWords,\n}: UseHighlightedSearchWords) {\n const highlightedHtml = useHighlightedHTMLString(html, searchWords, showSearchBar);\n\n const {wasChangedDOM, onContentMutation, onContentLoaded} = useCallbackDOMChange({\n onContentMutation: _onContentMutation,\n onContentLoaded: _onContentLoaded,\n });\n\n const highlightedDOMElements = useHighlightedDOMElements(\n highlightedHtml,\n wasChangedDOM,\n showSearchBar,\n );\n\n const searchBarIsVisible = useSearchBarIsVisible({\n showSearchBar,\n searchWords,\n highlightedHtml,\n html,\n });\n\n useNoSearchWordsFoundEffect({highlightedDOMElements, showSearchBar, onNotFoundWords});\n\n return {\n highlightedHtml,\n highlightedDOMElements,\n searchBarIsVisible,\n wasChangedDOM,\n onContentMutation,\n onContentLoaded,\n };\n}\n\nfunction useHighlightedDOMElements(\n highlightedHtml: string,\n wasChangedDOM: boolean,\n showSearchBar: boolean,\n) {\n const cachedHighlightedDOMElements = useRef<Element[]>([] as Element[]);\n\n useEffect(() => {\n cachedHighlightedDOMElements.current = [];\n }, [highlightedHtml]);\n\n useEffect(() => {\n if (wasChangedDOM) {\n cachedHighlightedDOMElements.current = [];\n }\n }, [wasChangedDOM]);\n\n if (cachedHighlightedDOMElements.current.length) {\n return cachedHighlightedDOMElements.current;\n }\n\n if (!showSearchBar || typeof document === 'undefined') {\n return [];\n }\n\n const elements = document.querySelectorAll(`.${CLASSNAME}`);\n cachedHighlightedDOMElements.current = [...elements];\n\n return cachedHighlightedDOMElements.current;\n}\n\n/* Try wrapping the search words in an html string by span elements with a highlight class */\nfunction useHighlightedHTMLString(html: string, searchWords: string[], showSearchBar: boolean) {\n const [highlightedHtml, setHighlightedHtml] = useState(html);\n\n useEffect(() => {\n if (!searchWords.length || !showSearchBar) {\n setHighlightedHtml(html);\n return;\n }\n\n const highlightedResult = highlight({\n html,\n keywords: searchWords,\n options: HIGHLIGHT_OPTIONS,\n });\n\n if (highlightedResult.includes(CLASSNAME)) {\n setHighlightedHtml(highlightedResult);\n } else {\n setHighlightedHtml(html);\n }\n }, [html, searchWords, showSearchBar]);\n\n return highlightedHtml;\n}\n\ntype UseSearchBarIsVisible = {\n showSearchBar: boolean;\n searchWords: string[];\n html: string;\n highlightedHtml: string;\n};\n\nfunction useSearchBarIsVisible({\n showSearchBar,\n searchWords,\n highlightedHtml,\n html,\n}: UseSearchBarIsVisible) {\n const [searchBarIsVisible, setSearchBarIsVisible] = useState(showSearchBar);\n\n useEffect(() => {\n setSearchBarIsVisible(\n showSearchBar && Boolean(searchWords && searchWords.length) && highlightedHtml !== html,\n );\n }, [showSearchBar, searchWords, highlightedHtml, html]);\n\n return searchBarIsVisible;\n}\n\ntype UseCallbackDOMChange = {\n onContentMutation?: () => void;\n onContentLoaded?: () => void;\n};\n\nfunction useCallbackDOMChange({\n onContentMutation: _onContentMutation,\n onContentLoaded: _onContentLoaded,\n}: UseCallbackDOMChange) {\n const [wasChangedDOM, setWasChangedDOM] = useState(false);\n\n useEffect(() => {\n if (wasChangedDOM) {\n setWasChangedDOM(false);\n }\n }, [wasChangedDOM]);\n\n /* Callback for dangerouslySetInnerHTML when inserting content */\n const onContentMutation = useCallback(() => {\n if (_onContentMutation) {\n _onContentMutation();\n }\n\n setWasChangedDOM(true);\n }, [_onContentMutation]);\n\n /* Callback for loading resources after inserting content */\n const onContentLoaded = useCallback(() => {\n if (_onContentLoaded) {\n _onContentLoaded();\n }\n\n setWasChangedDOM(true);\n }, [_onContentLoaded]);\n\n return {\n wasChangedDOM,\n onContentMutation,\n onContentLoaded,\n };\n}\n\ntype UseNoSearchWordsFoundEffect = {\n showSearchBar: boolean;\n highlightedDOMElements: Element[];\n onNotFoundWords?: () => void;\n};\n\nexport function useNoSearchWordsFoundEffect({\n showSearchBar,\n highlightedDOMElements,\n onNotFoundWords,\n}: UseNoSearchWordsFoundEffect) {\n useEffect(() => {\n if (!onNotFoundWords) {\n return;\n }\n\n if (showSearchBar && !highlightedDOMElements.length) {\n onNotFoundWords();\n }\n }, [highlightedDOMElements, showSearchBar, onNotFoundWords]);\n}\n\ntype UseSearchBarNavigation = {\n highlightedDOMElements: Element[];\n stopSyncOnScroll: () => void;\n headerHeight: number;\n hash?: string;\n};\n\nexport function useSearchBarNavigation({\n highlightedDOMElements,\n stopSyncOnScroll,\n headerHeight,\n hash,\n}: UseSearchBarNavigation) {\n const [searchCurrentIndex, setSearchCurrentIndex] = useState(1);\n const [searchCountResults, setSearchCountResults] = useState(1);\n\n useEffect(() => {\n const startIndex =\n getHighlightedItemIndexInView({highlightedDOMElements, headerHeight, hash}) || 1;\n\n setSearchCurrentIndex(startIndex);\n setSearchCountResults(highlightedDOMElements.length || 1);\n }, [highlightedDOMElements, headerHeight, hash]);\n\n const onClickNextSearch = useCallback(\n (e: SyntheticEvent) => {\n e.stopPropagation();\n e.preventDefault();\n\n stopSyncOnScroll();\n\n if (!highlightedDOMElements.length) {\n return;\n }\n\n let newIndex = searchCurrentIndex + 1;\n if (newIndex > highlightedDOMElements.length) {\n newIndex = 1;\n }\n\n setSearchCurrentIndex(newIndex);\n },\n [highlightedDOMElements, searchCurrentIndex, setSearchCurrentIndex, stopSyncOnScroll],\n );\n\n const onClickPrevSearch = useCallback(\n (e: SyntheticEvent) => {\n e.stopPropagation();\n e.preventDefault();\n\n stopSyncOnScroll();\n\n if (!highlightedDOMElements.length) {\n return;\n }\n\n let newIndex = searchCurrentIndex - 1;\n if (newIndex < 1) {\n newIndex = highlightedDOMElements.length;\n }\n\n setSearchCurrentIndex(newIndex);\n },\n [highlightedDOMElements, searchCurrentIndex, setSearchCurrentIndex, stopSyncOnScroll],\n );\n\n return {\n searchCurrentIndex,\n setSearchCurrentIndex,\n searchCountResults,\n onClickPrevSearch,\n onClickNextSearch,\n };\n}\n\ntype UseHighlightCurrentWordEffect = {\n highlightedDOMElements: Element[];\n searchCurrentIndex: number;\n wasChangedDOM: boolean;\n syncOnScroll: boolean;\n hash?: string;\n};\n\nexport function useCurrentWordSelectionEffect({\n searchCurrentIndex,\n highlightedDOMElements,\n wasChangedDOM,\n syncOnScroll,\n hash,\n}: UseHighlightCurrentWordEffect) {\n useEffect(() => {\n try {\n if (!highlightedDOMElements || !highlightedDOMElements.length) {\n return;\n }\n\n for (let index = 0; index < highlightedDOMElements.length; index++) {\n const item = highlightedDOMElements[index];\n\n item.classList.remove(CLASSNAME_SELECTED);\n }\n\n const item = highlightedDOMElements[searchCurrentIndex - 1];\n item.classList.add(CLASSNAME_SELECTED);\n } catch (e) {\n console.error(e);\n }\n }, [highlightedDOMElements, searchCurrentIndex, wasChangedDOM]);\n\n useEffect(() => {\n if (syncOnScroll) {\n return;\n }\n\n scrollToItem(highlightedDOMElements[searchCurrentIndex - 1]);\n }, [wasChangedDOM, searchCurrentIndex, highlightedDOMElements, syncOnScroll, hash]);\n}\n\ntype UseCurrentWordSelectionSyncScrollEffect = {\n highlightedDOMElements: Element[];\n searchWords: string[];\n syncOnScroll: boolean;\n searchBarIsVisible: boolean;\n setSearchCurrentIndex: (index: number) => void;\n headerHeight: number;\n setSyncOnScroll: (flag: boolean) => void;\n};\n\nexport function useCurrentWordSelectionSyncScrollEffect({\n highlightedDOMElements,\n searchWords,\n syncOnScroll,\n searchBarIsVisible,\n setSearchCurrentIndex,\n headerHeight,\n setSyncOnScroll,\n}: UseCurrentWordSelectionSyncScrollEffect) {\n const scrollEndTimer = useRef<ReturnType<typeof setTimeout>>();\n\n const handleScroll = useCallback(() => {\n if (scrollEndTimer.current) {\n clearTimeout(scrollEndTimer.current);\n }\n\n scrollEndTimer.current = setTimeout(() => {\n setSyncOnScroll(true);\n }, 50);\n\n if (!syncOnScroll || !searchBarIsVisible) {\n return;\n }\n\n const highlightedItemIndexInView = getHighlightedItemIndexInView({\n highlightedDOMElements,\n headerHeight,\n });\n\n if (isNaN(highlightedItemIndexInView as number)) {\n return;\n }\n\n setSearchCurrentIndex(highlightedItemIndexInView as number);\n }, [\n setSyncOnScroll,\n searchBarIsVisible,\n syncOnScroll,\n setSearchCurrentIndex,\n highlightedDOMElements,\n headerHeight,\n ]);\n\n const handleScrollThrottled = throttle(handleScroll, 50);\n\n useEffect(() => {\n if (searchBarIsVisible) {\n window.addEventListener('scroll', handleScrollThrottled);\n }\n return () => {\n window.removeEventListener('scroll', handleScrollThrottled);\n };\n }, [searchBarIsVisible, searchWords, handleScrollThrottled]);\n}\n"],
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": ["item"]
|
|
4
|
+
"sourcesContent": ["import {SyntheticEvent, useCallback, useEffect, useRef, useState} from 'react';\n\nimport throttle from 'lodash/throttle';\n\nimport {CLASSNAME, CLASSNAME_SELECTED, HIGHLIGHT_OPTIONS} from './constants';\nimport {getHighlightedItemIndexInView, highlight, scrollToItem} from './utils';\n\ntype UseHighlightedSearchWords = {\n html: string;\n searchWords: string[];\n showSearchBar: boolean;\n onNotFoundWords?: () => void;\n onContentMutation?: () => void;\n onContentLoaded?: () => void;\n};\n\nexport function useHighlightedSearchWords({\n html,\n searchWords,\n showSearchBar,\n onContentMutation: _onContentMutation,\n onContentLoaded: _onContentLoaded,\n onNotFoundWords,\n}: UseHighlightedSearchWords) {\n const highlightedHtml = useHighlightedHTMLString(html, searchWords, showSearchBar);\n\n const {wasChangedDOM, onContentMutation, onContentLoaded} = useCallbackDOMChange({\n onContentMutation: _onContentMutation,\n onContentLoaded: _onContentLoaded,\n });\n\n const highlightedDOMElements = useHighlightedDOMElements(\n highlightedHtml,\n wasChangedDOM,\n showSearchBar,\n );\n\n const searchBarIsVisible = useSearchBarIsVisible({\n showSearchBar,\n searchWords,\n highlightedHtml,\n html,\n });\n\n useNoSearchWordsFoundEffect({highlightedDOMElements, showSearchBar, onNotFoundWords});\n\n return {\n highlightedHtml,\n highlightedDOMElements,\n searchBarIsVisible,\n wasChangedDOM,\n onContentMutation,\n onContentLoaded,\n };\n}\n\nfunction useHighlightedDOMElements(\n highlightedHtml: string,\n wasChangedDOM: boolean,\n showSearchBar: boolean,\n) {\n const cachedHighlightedDOMElements = useRef<Element[]>([] as Element[]);\n\n useEffect(() => {\n cachedHighlightedDOMElements.current = [];\n }, [highlightedHtml]);\n\n useEffect(() => {\n if (wasChangedDOM) {\n cachedHighlightedDOMElements.current = [];\n }\n }, [wasChangedDOM]);\n\n if (cachedHighlightedDOMElements.current.length) {\n return cachedHighlightedDOMElements.current;\n }\n\n if (!showSearchBar || typeof document === 'undefined') {\n return [];\n }\n\n const elements = document.querySelectorAll(`.${CLASSNAME}`);\n cachedHighlightedDOMElements.current = [...elements];\n\n return cachedHighlightedDOMElements.current;\n}\n\n/* Try wrapping the search words in an html string by span elements with a highlight class */\nfunction useHighlightedHTMLString(html: string, searchWords: string[], showSearchBar: boolean) {\n const [highlightedHtml, setHighlightedHtml] = useState(html);\n\n useEffect(() => {\n if (!searchWords.length || !showSearchBar) {\n setHighlightedHtml(html);\n return;\n }\n\n const highlightedResult = highlight({\n html,\n keywords: searchWords,\n options: HIGHLIGHT_OPTIONS,\n });\n\n if (highlightedResult.includes(CLASSNAME)) {\n setHighlightedHtml(highlightedResult);\n } else {\n setHighlightedHtml(html);\n }\n }, [html, searchWords, showSearchBar]);\n\n return highlightedHtml;\n}\n\ntype UseSearchBarIsVisible = {\n showSearchBar: boolean;\n searchWords: string[];\n html: string;\n highlightedHtml: string;\n};\n\nfunction useSearchBarIsVisible({\n showSearchBar,\n searchWords,\n highlightedHtml,\n html,\n}: UseSearchBarIsVisible) {\n const [searchBarIsVisible, setSearchBarIsVisible] = useState(showSearchBar);\n\n useEffect(() => {\n setSearchBarIsVisible(\n showSearchBar && Boolean(searchWords && searchWords.length) && highlightedHtml !== html,\n );\n }, [showSearchBar, searchWords, highlightedHtml, html]);\n\n return searchBarIsVisible;\n}\n\ntype UseCallbackDOMChange = {\n onContentMutation?: () => void;\n onContentLoaded?: () => void;\n};\n\nfunction useCallbackDOMChange({\n onContentMutation: _onContentMutation,\n onContentLoaded: _onContentLoaded,\n}: UseCallbackDOMChange) {\n const [wasChangedDOM, setWasChangedDOM] = useState(false);\n\n useEffect(() => {\n if (wasChangedDOM) {\n setWasChangedDOM(false);\n }\n }, [wasChangedDOM]);\n\n /* Callback for dangerouslySetInnerHTML when inserting content */\n const onContentMutation = useCallback(() => {\n if (_onContentMutation) {\n _onContentMutation();\n }\n\n setWasChangedDOM(true);\n }, [_onContentMutation]);\n\n /* Callback for loading resources after inserting content */\n const onContentLoaded = useCallback(() => {\n if (_onContentLoaded) {\n _onContentLoaded();\n }\n\n setWasChangedDOM(true);\n }, [_onContentLoaded]);\n\n return {\n wasChangedDOM,\n onContentMutation,\n onContentLoaded,\n };\n}\n\ntype UseNoSearchWordsFoundEffect = {\n showSearchBar: boolean;\n highlightedDOMElements: Element[];\n onNotFoundWords?: () => void;\n};\n\nexport function useNoSearchWordsFoundEffect({\n showSearchBar,\n highlightedDOMElements,\n onNotFoundWords,\n}: UseNoSearchWordsFoundEffect) {\n useEffect(() => {\n if (!onNotFoundWords) {\n return;\n }\n\n if (showSearchBar && !highlightedDOMElements.length) {\n onNotFoundWords();\n }\n }, [highlightedDOMElements, showSearchBar, onNotFoundWords]);\n}\n\ntype UseSearchBarNavigation = {\n highlightedDOMElements: Element[];\n stopSyncOnScroll: () => void;\n headerHeight: number;\n hash?: string;\n};\n\nexport function useSearchBarNavigation({\n highlightedDOMElements,\n stopSyncOnScroll,\n headerHeight,\n hash,\n}: UseSearchBarNavigation) {\n const [searchCurrentIndex, setSearchCurrentIndex] = useState(1);\n const [searchCountResults, setSearchCountResults] = useState(1);\n\n useEffect(() => {\n const startIndex =\n getHighlightedItemIndexInView({highlightedDOMElements, headerHeight, hash}) || 1;\n\n setSearchCurrentIndex(startIndex);\n setSearchCountResults(highlightedDOMElements.length || 1);\n }, [highlightedDOMElements, headerHeight, hash]);\n\n const onClickNextSearch = useCallback(\n (e: SyntheticEvent) => {\n e.stopPropagation();\n e.preventDefault();\n\n stopSyncOnScroll();\n\n if (!highlightedDOMElements.length) {\n return;\n }\n\n let newIndex = searchCurrentIndex + 1;\n if (newIndex > highlightedDOMElements.length) {\n newIndex = 1;\n }\n\n setSearchCurrentIndex(newIndex);\n },\n [highlightedDOMElements, searchCurrentIndex, setSearchCurrentIndex, stopSyncOnScroll],\n );\n\n const onClickPrevSearch = useCallback(\n (e: SyntheticEvent) => {\n e.stopPropagation();\n e.preventDefault();\n\n stopSyncOnScroll();\n\n if (!highlightedDOMElements.length) {\n return;\n }\n\n let newIndex = searchCurrentIndex - 1;\n if (newIndex < 1) {\n newIndex = highlightedDOMElements.length;\n }\n\n setSearchCurrentIndex(newIndex);\n },\n [highlightedDOMElements, searchCurrentIndex, setSearchCurrentIndex, stopSyncOnScroll],\n );\n\n return {\n searchCurrentIndex,\n setSearchCurrentIndex,\n searchCountResults,\n onClickPrevSearch,\n onClickNextSearch,\n };\n}\n\ntype UseHighlightCurrentWordEffect = {\n highlightedDOMElements: Element[];\n searchCurrentIndex: number;\n wasChangedDOM: boolean;\n syncOnScroll: boolean;\n hash?: string;\n};\n\nexport function useCurrentWordSelectionEffect({\n searchCurrentIndex,\n highlightedDOMElements,\n wasChangedDOM,\n syncOnScroll,\n hash,\n}: UseHighlightCurrentWordEffect) {\n useEffect(() => {\n try {\n if (!highlightedDOMElements || !highlightedDOMElements.length) {\n return;\n }\n\n for (let index = 0; index < highlightedDOMElements.length; index++) {\n const item = highlightedDOMElements[index];\n\n item.classList.remove(CLASSNAME_SELECTED);\n }\n\n const item = highlightedDOMElements[searchCurrentIndex - 1];\n item.classList.add(CLASSNAME_SELECTED);\n } catch (e) {\n // eslint-disable-next-line no-console\n console.error(e);\n }\n }, [highlightedDOMElements, searchCurrentIndex, wasChangedDOM]);\n\n useEffect(() => {\n if (syncOnScroll) {\n return;\n }\n\n scrollToItem(highlightedDOMElements[searchCurrentIndex - 1]);\n }, [wasChangedDOM, searchCurrentIndex, highlightedDOMElements, syncOnScroll, hash]);\n}\n\ntype UseCurrentWordSelectionSyncScrollEffect = {\n highlightedDOMElements: Element[];\n searchWords: string[];\n syncOnScroll: boolean;\n searchBarIsVisible: boolean;\n setSearchCurrentIndex: (index: number) => void;\n headerHeight: number;\n setSyncOnScroll: (flag: boolean) => void;\n};\n\nexport function useCurrentWordSelectionSyncScrollEffect({\n highlightedDOMElements,\n searchWords,\n syncOnScroll,\n searchBarIsVisible,\n setSearchCurrentIndex,\n headerHeight,\n setSyncOnScroll,\n}: UseCurrentWordSelectionSyncScrollEffect) {\n const scrollEndTimer = useRef<ReturnType<typeof setTimeout>>();\n\n const handleScroll = useCallback(() => {\n if (scrollEndTimer.current) {\n clearTimeout(scrollEndTimer.current);\n }\n\n scrollEndTimer.current = setTimeout(() => {\n setSyncOnScroll(true);\n }, 50);\n\n if (!syncOnScroll || !searchBarIsVisible) {\n return;\n }\n\n const highlightedItemIndexInView = getHighlightedItemIndexInView({\n highlightedDOMElements,\n headerHeight,\n });\n\n if (isNaN(highlightedItemIndexInView as number)) {\n return;\n }\n\n setSearchCurrentIndex(highlightedItemIndexInView as number);\n }, [\n setSyncOnScroll,\n searchBarIsVisible,\n syncOnScroll,\n setSearchCurrentIndex,\n highlightedDOMElements,\n headerHeight,\n ]);\n\n const handleScrollThrottled = throttle(handleScroll, 50);\n\n useEffect(() => {\n if (searchBarIsVisible) {\n window.addEventListener('scroll', handleScrollThrottled);\n }\n return () => {\n window.removeEventListener('scroll', handleScrollThrottled);\n };\n }, [searchBarIsVisible, searchWords, handleScrollThrottled]);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["item", "throttle"]
|
|
7
7
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/components/SearchItem/home/runner/work/components/components/src/components/SearchItem/SearchItem.scss", "../../../../src/components/SearchItem/%3Cinput%20css%
|
|
3
|
+
"sources": ["../../../../src/components/SearchItem/home/runner/work/components/components/src/components/SearchItem/SearchItem.scss", "../../../../src/components/SearchItem/%3Cinput%20css%20LX2fN1%3E", "../../../../src/components/SearchItem/home/runner/work/components/components/src/styles/mixins.scss"],
|
|
4
4
|
"sourcesContent": ["@import '../../styles/variables';\n@import '../../styles/mixins';\n\n.SearchItem {\n &__link {\n cursor: pointer;\n color: inherit;\n\n &:hover,\n &:active {\n color: var(--g-color-text-link-hover);\n }\n }\n\n &__marks-wrapper {\n display: none;\n justify-content: flex-end;\n align-items: center;\n }\n\n &__marks {\n height: 16px;\n margin-top: 10px;\n }\n\n &__mark {\n margin-right: 20px;\n\n &:last-child {\n margin-right: 0;\n }\n }\n\n &__item-wrapper:hover &__marks-wrapper {\n display: flex;\n }\n\n &__item-wrapper {\n margin-bottom: 20px;\n @include text-size(body-1);\n }\n\n &__item {\n display: block;\n overflow: hidden;\n text-decoration: none;\n\n cursor: pointer;\n text-overflow: ellipsis;\n border-radius: var(--g-focus-border-radius);\n @include focusable();\n\n &-title,\n &-description {\n display: block;\n overflow: hidden;\n\n text-overflow: ellipsis;\n }\n\n &-title {\n margin-bottom: 4px;\n }\n\n &-title,\n &-title &-search-token {\n @include link();\n color: var(--g-color-text-primary);\n @include text-size(subheader-3);\n }\n\n &-title:hover &-search-token {\n color: var(--g-color-text-link-hover);\n }\n\n &-description {\n display: inline-block;\n color: var(--g-color-text-secondary);\n\n em {\n font-weight: bolder;\n }\n\n &::after {\n content: '...';\n display: inline;\n }\n }\n &-description &-search-token {\n color: var(--g-color-text-primary);\n }\n }\n}\n", ".SearchItem__link {\n cursor: pointer;\n color: inherit;\n}\n.SearchItem__link:hover, .SearchItem__link:active {\n color: var(--g-color-text-link-hover);\n}\n.SearchItem__marks-wrapper {\n display: none;\n justify-content: flex-end;\n align-items: center;\n}\n.SearchItem__marks {\n height: 16px;\n margin-top: 10px;\n}\n.SearchItem__mark {\n margin-right: 20px;\n}\n.SearchItem__mark:last-child {\n margin-right: 0;\n}\n.SearchItem__item-wrapper:hover .SearchItem__marks-wrapper {\n display: flex;\n}\n.SearchItem__item-wrapper {\n margin-bottom: 20px;\n font-size: var(--g-text-body-1-font-size);\n line-height: var(--g-text-body-1-line-height);\n}\n.SearchItem__item {\n display: block;\n overflow: hidden;\n text-decoration: none;\n cursor: pointer;\n text-overflow: ellipsis;\n border-radius: var(--g-focus-border-radius);\n}\n.SearchItem__item:focus {\n outline: 2px solid var(--g-color-line-focus);\n outline-offset: 0;\n}\n.SearchItem__item:focus:not(:focus-visible) {\n outline: 0;\n}\n.SearchItem__item-title, .SearchItem__item-description {\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.SearchItem__item-title {\n margin-bottom: 4px;\n}\n.SearchItem__item-title, .SearchItem__item-title .SearchItem__item-search-token {\n outline: none;\n color: var(--g-color-text-link);\n text-decoration: none;\n cursor: pointer;\n border-radius: var(--g-focus-border-radius);\n color: var(--g-color-text-primary);\n font-size: var(--g-text-subheader-3-font-size);\n line-height: var(--g-text-subheader-3-line-height);\n}\n.utilityfocus .SearchItem__item-title:focus, .utilityfocus .SearchItem__item-title .SearchItem__item-search-token:focus {\n outline: 2px solid #ffdb4d;\n}\n.SearchItem__item-title:focus, .SearchItem__item-title .SearchItem__item-search-token:focus {\n box-shadow: 0 0 0 2px var(--g-color-line-focus);\n outline: 0;\n}\n.SearchItem__item-title:focus:not(:focus-visible), .SearchItem__item-title .SearchItem__item-search-token:focus:not(:focus-visible) {\n box-shadow: none;\n}\n.SearchItem__item-title:hover, .SearchItem__item-title:active, .SearchItem__item-title .SearchItem__item-search-token:hover, .SearchItem__item-title .SearchItem__item-search-token:active {\n color: var(--g-color-text-link-hover);\n}\n.SearchItem__item-title:hover .SearchItem__item-search-token {\n color: var(--g-color-text-link-hover);\n}\n.SearchItem__item-description {\n display: inline-block;\n color: var(--g-color-text-secondary);\n}\n.SearchItem__item-description em {\n font-weight: bolder;\n}\n.SearchItem__item-description::after {\n content: \"...\";\n display: inline;\n}\n.SearchItem__item-description .SearchItem__item-search-token {\n color: var(--g-color-text-primary);\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvY29tcG9uZW50cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL1NlYXJjaEl0ZW0iLCJzb3VyY2VzIjpbIlNlYXJjaEl0ZW0uc2NzcyIsIi4uLy4uL3N0eWxlcy9taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJSTtFQUNJO0VBQ0E7O0FBRUE7RUFFSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7O0FBR0o7RUFDSTtFQ25DSjtFQUNBOztBRHNDQTtFQUNJO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTs7QUNoQkE7RUFDSTtFQUNBLGdCQUpjOztBQU1sQjtFQUNJOztBRGNKO0VBRUk7RUFDQTtFQUVBOztBQUdKO0VBQ0k7O0FBR0o7RUN4Q0o7RUFpQ0E7RUFDQTtFQUNBO0VBQ0E7RURPUTtFQ2hFUjtFQUNBOztBQXNCQTtFQUNJOztBQWdCQTtFQUNJO0VBQ0E7O0FBRUo7RUFDSTs7QUFjUjtFQUVJOztBRE9BO0VBQ0k7O0FBR0o7RUFDSTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtFQUNBOztBQUdSO0VBQ0kiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0ICcuLi8uLi9zdHlsZXMvdmFyaWFibGVzJztcbkBpbXBvcnQgJy4uLy4uL3N0eWxlcy9taXhpbnMnO1xuXG4uU2VhcmNoSXRlbSB7XG4gICAgJl9fbGluayB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWctY29sb3ItdGV4dC1saW5rLWhvdmVyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21hcmtzLXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgICZfX21hcmtzIHtcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cblxuICAgICZfX21hcmsge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2l0ZW0td3JhcHBlcjpob3ZlciAmX19tYXJrcy13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAmX19pdGVtLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBAaW5jbHVkZSB0ZXh0LXNpemUoYm9keS0xKTtcbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nLWZvY3VzLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICBAaW5jbHVkZSBmb2N1c2FibGUoKTtcblxuICAgICAgICAmLXRpdGxlLFxuICAgICAgICAmLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIH1cblxuICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtdGl0bGUsXG4gICAgICAgICYtdGl0bGUgJi1zZWFyY2gtdG9rZW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbGluaygpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWctY29sb3ItdGV4dC1wcmltYXJ5KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRleHQtc2l6ZShzdWJoZWFkZXItMyk7XG4gICAgICAgIH1cblxuICAgICAgICAmLXRpdGxlOmhvdmVyICYtc2VhcmNoLXRva2VuIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1nLWNvbG9yLXRleHQtbGluay1ob3Zlcik7XG4gICAgICAgIH1cblxuICAgICAgICAmLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1nLWNvbG9yLXRleHQtc2Vjb25kYXJ5KTtcblxuICAgICAgICAgICAgZW0ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnLi4uJztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1kZXNjcmlwdGlvbiAmLXNlYXJjaC10b2tlbiB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZy1jb2xvci10ZXh0LXByaW1hcnkpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQGltcG9ydCAnLi92YXJpYWJsZXMnO1xuXG5AbWl4aW4gdGV4dC1zaXplKCRuYW1lKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1nLXRleHQtI3skbmFtZX0tZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tZy10ZXh0LSN7JG5hbWV9LWxpbmUtaGVpZ2h0KTtcbn1cblxuQG1peGluIHJlc2V0LWxpc3Qtc3R5bGUoKSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuQG1peGluIGZpeEFuY2hvclBvc2l0aW9uKCRvZmZzZXQ6IDBweCkge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWRjLWhlYWRlci1oZWlnaHQsICN7JGhlYWRlckhlaWdodH0pKTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCN7JG9mZnNldH0gLSB2YXIoLS1kYy1oZWFkZXItaGVpZ2h0LCAjeyRoZWFkZXJIZWlnaHR9KSk7XG59XG5cbkBtaXhpbiByZXNldC1saW5rLXN0eWxlKCkge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuQG1peGluIGlzbGFuZHMtZm9jdXMoKSB7XG4gICAgb3V0bGluZTogbm9uZTtcblxuICAgIC51dGlsaXR5Zm9jdXMgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCAjZmZkYjRkO1xuICAgIH1cbn1cblxuQG1peGluIGZvY3VzYWJsZSgkb2Zmc2V0OiAwLCAkbW9kZTogJ291dGxpbmUnKSB7XG4gICAgQGlmICRtb2RlID09ICdvdXRsaW5lJyB7XG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWctY29sb3ItbGluZS1mb2N1cyk7XG4gICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogJG9mZnNldDtcbiAgICAgICAgfVxuICAgICAgICAmOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkbW9kZSA9PSAnYm94LXNoYWRvdycge1xuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1nLWNvbG9yLWxpbmUtZm9jdXMpO1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgfVxuICAgICAgICAmOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGxpbmsoKSB7XG4gICAgQGluY2x1ZGUgaXNsYW5kcy1mb2N1cygpO1xuICAgIEBpbmNsdWRlIGZvY3VzYWJsZSgwLCAnYm94LXNoYWRvdycpO1xuXG4gICAgY29sb3I6IHZhcigtLWctY29sb3ItdGV4dC1saW5rKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWctZm9jdXMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWctY29sb3ItdGV4dC1saW5rLWhvdmVyKTtcbiAgICB9XG59XG5cbkBtaXhpbiBoZWFkaW5nMSgpIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXNpemUoZGlzcGxheS0zKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbkJyZWFrcG9pbnRzLCAnbWQnKSAtIDEpIHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dC1zaXplKGRpc3BsYXktMik7XG4gICAgfVxufVxuXG5AbWl4aW4gaGVhZGluZzIoKSB7XG4gICAgQGluY2x1ZGUgdGV4dC1zaXplKGRpc3BsYXktMSk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuQG1peGluIGhlYWRpbmczKCkge1xuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShoZWFkZXItMik7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuQG1peGluIGhlYWRpbmc0KCkge1xuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShoZWFkZXItMSk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuQG1peGluIGhlYWRpbmc1KCkge1xuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShib2R5LTMpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbkBtaXhpbiBoZWFkaW5nNigpIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXNpemUoYm9keS0zKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xufVxuXG5AbWl4aW4gY29udHJpYnV0b3JzLXRleHQoKSB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuXG5AbWl4aW4gdGV4dC1ib2R5LTEoKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1nLXRleHQtYm9keS0xLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWctdGV4dC1ib2R5LTEtbGluZS1oZWlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1nLXRleHQtYm9keS1mb250LXdlaWdodCk7XG59XG5cbkBtaXhpbiBkZXNrdG9wLW9ubHkoKSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbkJyZWFrcG9pbnRzLCAnbWQnKSAtIDEpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wLXRhYmxldC1vbmx5KCkge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBtYXAtZ2V0KCRzY3JlZW5CcmVha3BvaW50cywgJ3NtJykgLSAxKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWl4aW4gbW9iaWxlLXRhYmxldC1vbmx5KCkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRzY3JlZW5CcmVha3BvaW50cywgJ21kJykpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbkBtaXhpbiBtb2JpbGUtb25seSgpIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkc2NyZWVuQnJlYWtwb2ludHMsICdzbScpKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuIl19 */", "@import './variables';\n\n@mixin text-size($name) {\n font-size: var(--g-text-#{$name}-font-size);\n line-height: var(--g-text-#{$name}-line-height);\n}\n\n@mixin reset-list-style() {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n@mixin fixAnchorPosition($offset: 0px) {\n padding-top: calc(var(--dc-header-height, #{$headerHeight}));\n margin-top: calc(#{$offset} - var(--dc-header-height, #{$headerHeight}));\n}\n\n@mixin reset-link-style() {\n color: inherit;\n text-decoration: none;\n}\n\n@mixin islands-focus() {\n outline: none;\n\n .utilityfocus &:focus {\n outline: 2px solid #ffdb4d;\n }\n}\n\n@mixin focusable($offset: 0, $mode: 'outline') {\n @if $mode == 'outline' {\n &:focus {\n outline: 2px solid var(--g-color-line-focus);\n outline-offset: $offset;\n }\n &:focus:not(:focus-visible) {\n outline: 0;\n }\n }\n\n @if $mode == 'box-shadow' {\n &:focus {\n box-shadow: 0 0 0 2px var(--g-color-line-focus);\n outline: 0;\n }\n &:focus:not(:focus-visible) {\n box-shadow: none;\n }\n }\n}\n\n@mixin link() {\n @include islands-focus();\n @include focusable(0, 'box-shadow');\n\n color: var(--g-color-text-link);\n text-decoration: none;\n cursor: pointer;\n border-radius: var(--g-focus-border-radius);\n\n &:hover,\n &:active {\n color: var(--g-color-text-link-hover);\n }\n}\n\n@mixin heading1() {\n @include text-size(display-3);\n font-weight: 500;\n\n @media (max-width: map-get($screenBreakpoints, 'md') - 1) {\n @include text-size(display-2);\n }\n}\n\n@mixin heading2() {\n @include text-size(display-1);\n font-weight: 500;\n}\n\n@mixin heading3() {\n @include text-size(header-2);\n font-weight: 500;\n}\n\n@mixin heading4() {\n @include text-size(header-1);\n font-weight: 500;\n}\n\n@mixin heading5() {\n @include text-size(body-3);\n font-weight: 500;\n}\n\n@mixin heading6() {\n @include text-size(body-3);\n font-weight: 400;\n}\n\n@mixin contributors-text() {\n font-size: 13px;\n font-weight: 400;\n margin-right: 5px;\n align-self: center;\n}\n\n@mixin text-body-1() {\n font-size: var(--g-text-body-1-font-size);\n line-height: var(--g-text-body-1-line-height);\n font-weight: var(--g-text-body-font-weight);\n}\n\n@mixin desktop-only() {\n @media (max-width: map-get($screenBreakpoints, 'md') - 1) {\n display: none;\n }\n}\n\n@mixin desktop-tablet-only() {\n @media (max-width: map-get($screenBreakpoints, 'sm') - 1) {\n display: none;\n }\n}\n\n@mixin mobile-tablet-only() {\n @media (min-width: map-get($screenBreakpoints, 'md')) {\n display: none;\n }\n}\n\n@mixin mobile-only() {\n @media (min-width: map-get($screenBreakpoints, 'sm')) {\n display: none;\n }\n}\n"],
|
|
5
5
|
"mappings": ";AAII,CAAA;AACI,UAAA;AACA,SAAA;ACHR;ADKQ,CAJJ,gBAII;AAAA,CAJJ,gBAII;AAEI,SAAA,IAAA;ACJZ;ADQI,CAAA;AACI,WAAA;AACA,mBAAA;AACA,eAAA;ACNR;ADSI,CAAA;AACI,UAAA;AACA,cAAA;ACPR;ADUI,CAAA;AACI,gBAAA;ACRR;ADUQ,CAHJ,gBAGI;AACI,gBAAA;ACRZ;ADYI,CAAA,wBAAA,OAAA,CAnBA;AAoBI,WAAA;ACVR;ADaI,CAJA;AAKI,iBAAA;AEnCJ,aAAA,IAAA;AACA,eAAA,IAAA;ADyBJ;ADaI,CAAA;AACI,WAAA;AACA,YAAA;AACA,2BAAA;AAAA,mBAAA;AAEA,UAAA;AACA,iBAAA;AACA,iBAAA,IAAA;ACZR;ACJQ,CFSJ,gBETI;AACI,WAAA,IAAA,MAAA,IAAA;AACA,kBAAA;ADMZ;ACJQ,CFKJ,gBELI,MAAA,KAAA;AACI,WAAA;ADMZ;ADQQ,CAAA;AAAA,CAAA;AAEI,WAAA;AACA,YAAA;AAEA,iBAAA;ACRZ;ADWQ,CARA;AASI,iBAAA;ACTZ;ADYQ,CAZA;AAYA,CAZA,uBAYA,CAAA;AExCJ,WAAA;AAiCA,SAAA,IAAA;AACA,2BAAA;AAAA,mBAAA;AACA,UAAA;AACA,iBAAA,IAAA;AFOQ,SAAA,IAAA;AEhER,aAAA,IAAA;AACA,eAAA,IAAA;AD0DJ;ACpCI,CAAA,aAAA,CF0BI,sBE1BJ;AAAA,CAAA,aAAA,CF0BI,uBE1BJ,CFsCI,6BEtCJ;AACI,WAAA,IAAA,MAAA;ADsCR;ACtBQ,CFSA,sBETA;AAAA,CFSA,uBETA,CFqBA,6BErBA;AACI,cAAA,EAAA,EAAA,EAAA,IAAA,IAAA;AACA,WAAA;ADwBZ;ACtBQ,CFKA,sBELA,MAAA,KAAA;AAAA,CFKA,uBELA,CFiBA,6BEjBA,MAAA,KAAA;AACI,cAAA;ADwBZ;ACVI,CFVI,sBEUJ;AAAA,CFVI,sBEUJ;AAAA,CFVI,uBEUJ,CFEI,6BEFJ;AAAA,CFVI,uBEUJ,CFEI,6BEFJ;AAEI,SAAA,IAAA;ADWR;ADJQ,CAnBA,sBAmBA,OAAA,CAPA;AAQI,SAAA,IAAA;ACMZ;ADHQ,CAvBA;AAwBI,WAAA;AACA,SAAA,IAAA;ACKZ;ADHY,CA3BJ,6BA2BI;AACI,eAAA;ACKhB;ADFY,CA/BJ,4BA+BI;AACI,WAAA;AACA,WAAA;ACIhB;ADDQ,CApCA,6BAoCA,CAxBA;AAyBI,SAAA,IAAA;ACGZ;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/components/SearchPage/home/runner/work/components/components/src/components/SearchPage/SearchPage.scss", "../../../../src/components/SearchPage/%3Cinput%20css%
|
|
3
|
+
"sources": ["../../../../src/components/SearchPage/home/runner/work/components/components/src/components/SearchPage/SearchPage.scss", "../../../../src/components/SearchPage/%3Cinput%20css%20dOGk9D%3E"],
|
|
4
4
|
"sourcesContent": ["@import '../../styles/variables';\n@import '../../styles/mixins';\n\n.dc-search-page {\n margin-top: 26px;\n display: flex;\n justify-content: center;\n\n &__layout {\n max-width: $centerBlockMaxWidth;\n width: 100%;\n }\n\n &__search-field-wrapper {\n display: flex;\n align-items: center;\n }\n\n &__search-button {\n margin-left: 10px;\n }\n\n &__search {\n &-field,\n &-item {\n margin-bottom: 36px;\n }\n }\n\n &__subtitle {\n margin-bottom: 18px;\n }\n\n &__paginator {\n padding: 10px 0;\n border-top: 1px solid var(--g-color-line-generic);\n }\n\n @media (max-width: map-get($screenBreakpoints, 'md')) {\n margin-top: 16px;\n\n &__layout {\n padding: 0 12px;\n }\n\n &__search {\n &-field {\n margin-bottom: 24px;\n }\n\n &-item {\n margin-bottom: 40px;\n }\n }\n }\n}\n", ".dc-search-page {\n margin-top: 26px;\n display: flex;\n justify-content: center;\n}\n.dc-search-page__layout {\n max-width: 736px;\n width: 100%;\n}\n.dc-search-page__search-field-wrapper {\n display: flex;\n align-items: center;\n}\n.dc-search-page__search-button {\n margin-left: 10px;\n}\n.dc-search-page__search-field, .dc-search-page__search-item {\n margin-bottom: 36px;\n}\n.dc-search-page__subtitle {\n margin-bottom: 18px;\n}\n.dc-search-page__paginator {\n padding: 10px 0;\n border-top: 1px solid var(--g-color-line-generic);\n}\n@media (max-width: 769px) {\n .dc-search-page {\n margin-top: 16px;\n }\n .dc-search-page__layout {\n padding: 0 12px;\n }\n .dc-search-page__search-field {\n margin-bottom: 24px;\n }\n .dc-search-page__search-item {\n margin-bottom: 40px;\n }\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvY29tcG9uZW50cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL1NlYXJjaFBhZ2UiLCJzb3VyY2VzIjpbIlNlYXJjaFBhZ2Uuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQTtFQUNJO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FBSUE7RUFFSTs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQW5DSjtJQW9DUTs7RUFFQTtJQUNJOztFQUlBO0lBQ0k7O0VBR0o7SUFDSSIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJy4uLy4uL3N0eWxlcy92YXJpYWJsZXMnO1xuQGltcG9ydCAnLi4vLi4vc3R5bGVzL21peGlucyc7XG5cbi5kYy1zZWFyY2gtcGFnZSB7XG4gICAgbWFyZ2luLXRvcDogMjZweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgJl9fbGF5b3V0IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY2VudGVyQmxvY2tNYXhXaWR0aDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJl9fc2VhcmNoLWZpZWxkLXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgICZfX3NlYXJjaC1idXR0b24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB9XG5cbiAgICAmX19zZWFyY2gge1xuICAgICAgICAmLWZpZWxkLFxuICAgICAgICAmLWl0ZW0ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzZweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3N1YnRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICB9XG5cbiAgICAmX19wYWdpbmF0b3Ige1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1nLWNvbG9yLWxpbmUtZ2VuZXJpYyk7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbkJyZWFrcG9pbnRzLCAnbWQnKSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuXG4gICAgICAgICZfX2xheW91dCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEycHg7XG4gICAgICAgIH1cblxuICAgICAgICAmX19zZWFyY2gge1xuICAgICAgICAgICAgJi1maWVsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1pdGVtIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIl19 */"],
|
|
5
5
|
"mappings": ";AAGA,CAAA;AACI,cAAA;AACA,WAAA;AACA,mBAAA;ACFJ;ADII,CAAA;AACI,aAAA;AACA,SAAA;ACFR;ADKI,CAAA;AACI,WAAA;AACA,eAAA;ACHR;ADMI,CAAA;AACI,eAAA;ACJR;ADQQ,CAAA;AAAA,CAAA;AAEI,iBAAA;ACPZ;ADWI,CAAA;AACI,iBAAA;ACTR;ADYI,CAAA;AACI,WAAA,KAAA;AACA,cAAA,IAAA,MAAA,IAAA;ACVR;ADaI,OAAA,CAAA,SAAA,EAAA;AAnCJ,GAAA;AAoCQ,gBAAA;ACVN;ADYM,GAjCJ;AAkCQ,aAAA,EAAA;ACVV;ADcU,GAvBJ;AAwBQ,mBAAA;ACZd;ADeU,GA3BJ;AA4BQ,mBAAA;ACbd;AACF;",
|
|
6
6
|
"names": []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/components/Subscribe/home/runner/work/components/components/src/components/Subscribe/Subscribe.scss", "../../../../src/components/Subscribe/%3Cinput%20css%
|
|
3
|
+
"sources": ["../../../../src/components/Subscribe/home/runner/work/components/components/src/components/Subscribe/Subscribe.scss", "../../../../src/components/Subscribe/%3Cinput%20css%20ElNeyj%3E", "../../../../src/components/Subscribe/home/runner/work/components/components/src/styles/variables.scss"],
|
|
4
4
|
"sourcesContent": ["@import '../../styles/mixins';\n@import '../../styles/variables';\n\n$popupWidth: 320px;\n\n@mixin tooltip-in-center {\n @media screen and (max-width: map-get($screenBreakpoints, 'xs')) {\n & {\n // stylelint-disable declaration-no-important\n right: 0 !important;\n left: 0 !important;\n margin: auto;\n }\n }\n}\n\n.dc-subscribe {\n &__container {\n &_view_wide {\n display: flex;\n align-items: center;\n flex-direction: column;\n width: 100%;\n }\n }\n\n &__container-row {\n display: flex;\n justify-content: center;\n width: 100%;\n padding: 28px;\n\n border: 1px solid var(--g-color-line-generic);\n border-radius: 8px;\n\n &_view_wide {\n display: flex;\n align-items: center;\n }\n }\n\n &__success-popup {\n padding: $popupPadding;\n width: $popupWidth;\n\n &_view_wide {\n @include tooltip-in-center();\n }\n }\n\n &__variants-popup {\n padding: $popupPadding;\n width: $popupWidth;\n\n &_view_wide {\n @include tooltip-in-center();\n }\n }\n\n &__popup-title {\n font-size: var(--g-text-body2-font-size);\n line-height: var(--g-text-body2-line-height);\n padding-bottom: 8px;\n }\n\n &__popup-text {\n font-size: var(--g-text-body-1-font-size);\n line-height: var(--g-text-body-1-line-height);\n }\n\n &__variants-actions {\n display: flex;\n justify-content: flex-end;\n }\n\n &__variants-action {\n margin-left: 10px;\n }\n\n &__variant__list-item {\n padding: 6px 12px;\n }\n\n &__textarea {\n padding: 8px 0;\n }\n\n &__title {\n &_view_wide {\n font-size: var(--g-text-body2-font-size);\n line-height: var(--g-text-body2-line-height);\n margin-right: 16px;\n font-weight: 400;\n }\n }\n\n &__controls {\n display: flex;\n\n &_view_wide {\n display: flex;\n }\n }\n\n &__control {\n &:last-child {\n font-size: 13px;\n line-height: 18px;\n display: flex;\n align-items: center;\n }\n\n &_view_wide {\n margin-right: 12px;\n\n &:last-child {\n margin-right: 0;\n }\n }\n\n &_view_regular {\n margin-right: 4px;\n\n &:last-child {\n margin-right: 0;\n }\n }\n }\n}\n", ".dc-subscribe__container_view_wide {\n display: flex;\n align-items: center;\n flex-direction: column;\n width: 100%;\n}\n.dc-subscribe__container-row {\n display: flex;\n justify-content: center;\n width: 100%;\n padding: 28px;\n border: 1px solid var(--g-color-line-generic);\n border-radius: 8px;\n}\n.dc-subscribe__container-row_view_wide {\n display: flex;\n align-items: center;\n}\n.dc-subscribe__success-popup {\n padding: 16px;\n width: 320px;\n}\n@media screen and (max-width: 375px) {\n .dc-subscribe__success-popup_view_wide {\n right: 0 !important;\n left: 0 !important;\n margin: auto;\n }\n}\n.dc-subscribe__variants-popup {\n padding: 16px;\n width: 320px;\n}\n@media screen and (max-width: 375px) {\n .dc-subscribe__variants-popup_view_wide {\n right: 0 !important;\n left: 0 !important;\n margin: auto;\n }\n}\n.dc-subscribe__popup-title {\n font-size: var(--g-text-body2-font-size);\n line-height: var(--g-text-body2-line-height);\n padding-bottom: 8px;\n}\n.dc-subscribe__popup-text {\n font-size: var(--g-text-body-1-font-size);\n line-height: var(--g-text-body-1-line-height);\n}\n.dc-subscribe__variants-actions {\n display: flex;\n justify-content: flex-end;\n}\n.dc-subscribe__variants-action {\n margin-left: 10px;\n}\n.dc-subscribe__variant__list-item {\n padding: 6px 12px;\n}\n.dc-subscribe__textarea {\n padding: 8px 0;\n}\n.dc-subscribe__title_view_wide {\n font-size: var(--g-text-body2-font-size);\n line-height: var(--g-text-body2-line-height);\n margin-right: 16px;\n font-weight: 400;\n}\n.dc-subscribe__controls {\n display: flex;\n}\n.dc-subscribe__controls_view_wide {\n display: flex;\n}\n.dc-subscribe__control:last-child {\n font-size: 13px;\n line-height: 18px;\n display: flex;\n align-items: center;\n}\n.dc-subscribe__control_view_wide {\n margin-right: 12px;\n}\n.dc-subscribe__control_view_wide:last-child {\n margin-right: 0;\n}\n.dc-subscribe__control_view_regular {\n margin-right: 4px;\n}\n.dc-subscribe__control_view_regular:last-child {\n margin-right: 0;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvY29tcG9uZW50cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL1N1YnNjcmliZSIsInNvdXJjZXMiOlsiU3Vic2NyaWJlLnNjc3MiLCIuLi8uLi9zdHlsZXMvdmFyaWFibGVzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBa0JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUlSO0VBQ0ksU0NsQ087RURtQ1AsT0F4Q0s7O0FBR1Q7RUFDSTtJQUVJO0lBQ0E7SUFDQTs7O0FBdUNSO0VBQ0ksU0MzQ087RUQ0Q1AsT0FqREs7O0FBR1Q7RUFDSTtJQUVJO0lBQ0E7SUFDQTs7O0FBZ0RSO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7O0FBSUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtFQUNJOztBQUVBO0VBQ0k7O0FBS0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUVBO0VBQ0k7O0FBSVI7RUFDSTs7QUFFQTtFQUNJIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnLi4vLi4vc3R5bGVzL21peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9zdHlsZXMvdmFyaWFibGVzJztcblxuJHBvcHVwV2lkdGg6IDMyMHB4O1xuXG5AbWl4aW4gdG9vbHRpcC1pbi1jZW50ZXIge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbkJyZWFrcG9pbnRzLCAneHMnKSkge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICAgICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRjLXN1YnNjcmliZSB7XG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgJl92aWV3X3dpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250YWluZXItcm93IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAyOHB4O1xuXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWctY29sb3ItbGluZS1nZW5lcmljKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuXG4gICAgICAgICZfdmlld193aWRlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc3VjY2Vzcy1wb3B1cCB7XG4gICAgICAgIHBhZGRpbmc6ICRwb3B1cFBhZGRpbmc7XG4gICAgICAgIHdpZHRoOiAkcG9wdXBXaWR0aDtcblxuICAgICAgICAmX3ZpZXdfd2lkZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0b29sdGlwLWluLWNlbnRlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdmFyaWFudHMtcG9wdXAge1xuICAgICAgICBwYWRkaW5nOiAkcG9wdXBQYWRkaW5nO1xuICAgICAgICB3aWR0aDogJHBvcHVwV2lkdGg7XG5cbiAgICAgICAgJl92aWV3X3dpZGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9vbHRpcC1pbi1jZW50ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3BvcHVwLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1nLXRleHQtYm9keTItZm9udC1zaXplKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWctdGV4dC1ib2R5Mi1saW5lLWhlaWdodCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gICAgfVxuXG4gICAgJl9fcG9wdXAtdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZy10ZXh0LWJvZHktMS1mb250LXNpemUpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tZy10ZXh0LWJvZHktMS1saW5lLWhlaWdodCk7XG4gICAgfVxuXG4gICAgJl9fdmFyaWFudHMtYWN0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgJl9fdmFyaWFudHMtYWN0aW9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgfVxuXG4gICAgJl9fdmFyaWFudF9fbGlzdC1pdGVtIHtcbiAgICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgfVxuXG4gICAgJl9fdGV4dGFyZWEge1xuICAgICAgICBwYWRkaW5nOiA4cHggMDtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgICZfdmlld193aWRlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZy10ZXh0LWJvZHkyLWZvbnQtc2l6ZSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tZy10ZXh0LWJvZHkyLWxpbmUtaGVpZ2h0KTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250cm9scyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgJl92aWV3X3dpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRyb2wge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICZfdmlld193aWRlIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX3ZpZXdfcmVndWxhciB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBTaXplc1xuJGhlYWRlckhlaWdodDogMHB4O1xuJG5vcm1hbE9mZnNldDogMjBweDtcbiRtaW5pVG9jT2Zmc2V0OiA1NnB4O1xuJGJsb2NrTWFyZ2luQm90dG9tTGFyZ2U6IDIwcHg7XG4kYmxvY2tNYXJnaW5Cb3R0b21NZWRpdW06IDE1cHg7XG4kaGVhZGVyTWFyZ2luVG9wTGFyZ2U6IDQwcHg7XG4kaGVhZGVyTWFyZ2luVG9wTWVkaXVtOiAzMnB4O1xuJHBvcHVwUGFkZGluZzogMTZweDtcbiRjZW50ZXJCbG9ja01heFdpZHRoOiA3MzZweDtcblxuJHNjcmVlbkJyZWFrcG9pbnRzOiAoXG4gICAgJ3hzJzogMzc1cHgsXG4gICAgJ3NtJzogNTc3cHgsXG4gICAgJ21kJzogNzY5cHgsXG4gICAgJ2xnJzogMTA4MXB4LFxuICAgICd4bCc6IDExODVweCxcbik7XG4iXX0= */", "// Sizes\n$headerHeight: 0px;\n$normalOffset: 20px;\n$miniTocOffset: 56px;\n$blockMarginBottomLarge: 20px;\n$blockMarginBottomMedium: 15px;\n$headerMarginTopLarge: 40px;\n$headerMarginTopMedium: 32px;\n$popupPadding: 16px;\n$centerBlockMaxWidth: 736px;\n\n$screenBreakpoints: (\n 'xs': 375px,\n 'sm': 577px,\n 'md': 769px,\n 'lg': 1081px,\n 'xl': 1185px,\n);\n"],
|
|
5
5
|
"mappings": ";AAkBQ,CAAA;AACI,WAAA;AACA,eAAA;AACA,kBAAA;AACA,SAAA;ACjBZ;ADqBI,CAAA;AACI,WAAA;AACA,mBAAA;AACA,SAAA;AACA,WAAA;AAEA,UAAA,IAAA,MAAA,IAAA;AACA,iBAAA;ACpBR;ADsBQ,CAAA;AACI,WAAA;AACA,eAAA;ACpBZ;ADwBI,CAAA;AACI,WAAA;AACA,SAAA;ACtBR;ADfI,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA;AACI,GAAA;AAEI,WAAA;AACA,UAAA;ACiBV;ADpBM,GAAA;AAII,YAAA;ACgBV;AACF;ADsBI,CAAA;AACI,WAAA;AACA,SAAA;ACpBR;AD1BI,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA;AACI,GAAA;AAEI,WAAA;AACA,UAAA;AC4BV;AD/BM,GAAA;AAII,YAAA;AC2BV;AACF;ADoBI,CAAA;AACI,aAAA,IAAA;AACA,eAAA,IAAA;AACA,kBAAA;AClBR;ADqBI,CAAA;AACI,aAAA,IAAA;AACA,eAAA,IAAA;ACnBR;ADsBI,CAAA;AACI,WAAA;AACA,mBAAA;ACpBR;ADuBI,CAAA;AACI,eAAA;ACrBR;ADwBI,CAAA;AACI,WAAA,IAAA;ACtBR;ADyBI,CAAA;AACI,WAAA,IAAA;ACvBR;AD2BQ,CAAA;AACI,aAAA,IAAA;AACA,eAAA,IAAA;AACA,gBAAA;AACA,eAAA;ACzBZ;AD6BI,CAAA;AACI,WAAA;AC3BR;AD6BQ,CAAA;AACI,WAAA;AC3BZ;ADgCQ,CAAA,qBAAA;AACI,aAAA;AACA,eAAA;AACA,WAAA;AACA,eAAA;AC9BZ;ADiCQ,CAAA;AACI,gBAAA;AC/BZ;ADiCY,CAHJ,+BAGI;AACI,gBAAA;AC/BhB;ADmCQ,CAAA;AACI,gBAAA;ACjCZ;ADmCY,CAHJ,kCAGI;AACI,gBAAA;ACjChB;",
|
|
6
6
|
"names": []
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/components/Toc/home/runner/work/components/components/src/components/Toc/Toc.scss", "../../../../src/components/Toc/%3Cinput%20css%
|
|
4
|
-
"sourcesContent": ["@import '../../styles/variables';\n@import '../../styles/mixins';\n\n$iconSize: 18px;\n$toggleSize: 10px;\n$leftOffset: 57px;\n\n@mixin toc-header {\n @include text-size(body-2);\n font-weight: 500;\n}\n\n.dc-toc {\n $class: &;\n\n display: flex;\n flex-direction: column;\n height: calc(100vh - var(--dc-header-height, #{$headerHeight}));\n overflow-y: hidden;\n border-right: 1px solid var(--g-color-line-generic);\n\n &__empty {\n padding: 5px 15px 5px 24px;\n }\n\n &__top {\n flex-grow: 0;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n padding: 10px 10px 8px 0;\n\n &_scrolled {\n border-bottom: 1px solid var(--g-color-line-generic);\n }\n\n &-header-icon {\n display: flex;\n margin-right: 5px;\n flex-shrink: 0;\n }\n\n &-header {\n flex-grow: 0;\n $headerClass: &;\n position: relative;\n\n @include text-size(body-2);\n font-weight: 500;\n\n &_link {\n @include reset-link-style();\n display: flex;\n align-items: center;\n border-radius: var(--g-focus-border-radius);\n\n &:hover {\n @include link();\n\n color: var(--g-color-text-primary);\n }\n @include focusable();\n }\n }\n }\n\n &__bottom {\n flex-grow: 0;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n padding: 4px 10px 20px 0;\n\n &_scrolled {\n border-top: 1px solid var(--g-color-line-generic);\n }\n }\n\n &__content {\n --g-scrollbar-width: 6px;\n\n position: relative;\n flex-grow: 1;\n overflow-y: auto;\n scrollbar-width: thin;\n\n &_offset_top {\n padding-top: 24px;\n }\n }\n\n &__list {\n @include reset-list-style();\n\n display: block;\n\n &-item {\n cursor: pointer;\n user-select: none;\n\n &_main > *:first-child {\n color: var(--g-color-text-primary);\n }\n\n &:not(&_opened) > #{$class}__list {\n display: none;\n }\n\n // recurcive padding\n > #{$class}__list {\n padding-left: 20px;\n }\n }\n }\n\n &__content > &__list {\n padding-right: 21px;\n padding-bottom: 30px;\n }\n}\n", ".dc-toc {\n display: flex;\n flex-direction: column;\n height: calc(100vh - var(--dc-header-height, 0px));\n overflow-y: hidden;\n border-right: 1px solid var(--g-color-line-generic);\n}\n.dc-toc__empty {\n padding: 5px 15px 5px 24px;\n}\n.dc-toc__top {\n flex-grow: 0;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n padding: 10px 10px 8px 0;\n}\n.dc-toc__top_scrolled {\n border-bottom: 1px solid var(--g-color-line-generic);\n}\n.dc-toc__top-header-icon {\n display: flex;\n margin-right: 5px;\n flex-shrink: 0;\n}\n.dc-toc__top-header {\n flex-grow: 0;\n position: relative;\n font-size: var(--g-text-body-2-font-size);\n line-height: var(--g-text-body-2-line-height);\n font-weight: 500;\n}\n.dc-toc__top-header_link {\n color: inherit;\n text-decoration: none;\n display: flex;\n align-items: center;\n border-radius: var(--g-focus-border-radius);\n}\n.dc-toc__top-header_link:hover {\n outline: none;\n color: var(--g-color-text-link);\n text-decoration: none;\n cursor: pointer;\n border-radius: var(--g-focus-border-radius);\n color: var(--g-color-text-primary);\n}\n.utilityfocus .dc-toc__top-header_link:hover:focus {\n outline: 2px solid #ffdb4d;\n}\n.dc-toc__top-header_link:hover:focus {\n box-shadow: 0 0 0 2px var(--g-color-line-focus);\n outline: 0;\n}\n.dc-toc__top-header_link:hover:focus:not(:focus-visible) {\n box-shadow: none;\n}\n.dc-toc__top-header_link:hover:hover, .dc-toc__top-header_link:hover:active {\n color: var(--g-color-text-link-hover);\n}\n.dc-toc__top-header_link:focus {\n outline: 2px solid var(--g-color-line-focus);\n outline-offset: 0;\n}\n.dc-toc__top-header_link:focus:not(:focus-visible) {\n outline: 0;\n}\n.dc-toc__bottom {\n flex-grow: 0;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n padding: 4px 10px 20px 0;\n}\n.dc-toc__bottom_scrolled {\n border-top: 1px solid var(--g-color-line-generic);\n}\n.dc-toc__content {\n --g-scrollbar-width: 6px;\n position: relative;\n flex-grow: 1;\n overflow-y: auto;\n scrollbar-width: thin;\n}\n.dc-toc__content_offset_top {\n padding-top: 24px;\n}\n.dc-toc__list {\n margin: 0;\n padding: 0;\n list-style: none;\n display: block;\n}\n.dc-toc__list-item {\n cursor: pointer;\n user-select: none;\n}\n.dc-toc__list-item_main > *:first-child {\n color: var(--g-color-text-primary);\n}\n.dc-toc__list-item:not(.dc-toc__list-item_opened) > .dc-toc__list {\n display: none;\n}\n.dc-toc__list-item > .dc-toc__list {\n padding-left: 20px;\n}\n.dc-toc__content > .dc-toc__list {\n padding-right: 21px;\n padding-bottom: 30px;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvY29tcG9uZW50cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL1RvYyIsInNvdXJjZXMiOlsiVG9jLnNjc3MiLCIuLi8uLi9zdHlsZXMvbWl4aW5zLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBWUE7RUFHSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUVBO0VDMUNSO0VBQ0E7RUQ0Q1E7O0FBRUE7RUMvQlI7RUFDQTtFRGdDWTtFQUNBO0VBQ0E7O0FBRUE7RUNoQ1o7RUFpQ0E7RUFDQTtFQUNBO0VBQ0E7RUREZ0I7O0FDakNoQjtFQUNJOztBQWdCQTtFQUNJO0VBQ0E7O0FBRUo7RUFDSTs7QUFjUjtFQUVJOztBQS9CQTtFQUNJO0VBQ0EsZ0JBSmM7O0FBTWxCO0VBQ0k7O0FENEJSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7RUFFQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUlSO0VDbkZBO0VBQ0E7RUFDQTtFRG9GSTs7QUFFQTtFQUNJO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJOztBQUlKO0VBQ0k7O0FBS1o7RUFDSTtFQUNBIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnLi4vLi4vc3R5bGVzL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICcuLi8uLi9zdHlsZXMvbWl4aW5zJztcblxuJGljb25TaXplOiAxOHB4O1xuJHRvZ2dsZVNpemU6IDEwcHg7XG4kbGVmdE9mZnNldDogNTdweDtcblxuQG1peGluIHRvYy1oZWFkZXIge1xuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShib2R5LTIpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5kYy10b2Mge1xuICAgICRjbGFzczogJjtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1kYy1oZWFkZXItaGVpZ2h0LCAjeyRoZWFkZXJIZWlnaHR9KSk7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWctY29sb3ItbGluZS1nZW5lcmljKTtcblxuICAgICZfX2VtcHR5IHtcbiAgICAgICAgcGFkZGluZzogNXB4IDE1cHggNXB4IDI0cHg7XG4gICAgfVxuXG4gICAgJl9fdG9wIHtcbiAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDhweCAwO1xuXG4gICAgICAgICZfc2Nyb2xsZWQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWctY29sb3ItbGluZS1nZW5lcmljKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtaGVhZGVyLWljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLWhlYWRlciB7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgICAkaGVhZGVyQ2xhc3M6ICY7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHRleHQtc2l6ZShib2R5LTIpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICAgICAgICAgJl9saW5rIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNldC1saW5rLXN0eWxlKCk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWctZm9jdXMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbGluaygpO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1nLWNvbG9yLXRleHQtcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvY3VzYWJsZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYm90dG9tIHtcbiAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogNHB4IDEwcHggMjBweCAwO1xuXG4gICAgICAgICZfc2Nyb2xsZWQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWctY29sb3ItbGluZS1nZW5lcmljKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICAtLWctc2Nyb2xsYmFyLXdpZHRoOiA2cHg7XG5cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIHNjcm9sbGJhci13aWR0aDogdGhpbjtcblxuICAgICAgICAmX29mZnNldF90b3Age1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDI0cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saXN0IHtcbiAgICAgICAgQGluY2x1ZGUgcmVzZXQtbGlzdC1zdHlsZSgpO1xuXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICYtaXRlbSB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgICAgICAgICAgJl9tYWluID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWctY29sb3ItdGV4dC1wcmltYXJ5KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpub3QoJl9vcGVuZWQpID4gI3skY2xhc3N9X19saXN0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyByZWN1cmNpdmUgcGFkZGluZ1xuICAgICAgICAgICAgPiAjeyRjbGFzc31fX2xpc3Qge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQgPiAmX19saXN0IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjFweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgfVxufVxuIiwiQGltcG9ydCAnLi92YXJpYWJsZXMnO1xuXG5AbWl4aW4gdGV4dC1zaXplKCRuYW1lKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1nLXRleHQtI3skbmFtZX0tZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tZy10ZXh0LSN7JG5hbWV9LWxpbmUtaGVpZ2h0KTtcbn1cblxuQG1peGluIHJlc2V0LWxpc3Qtc3R5bGUoKSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuQG1peGluIGZpeEFuY2hvclBvc2l0aW9uKCRvZmZzZXQ6IDBweCkge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWRjLWhlYWRlci1oZWlnaHQsICN7JGhlYWRlckhlaWdodH0pKTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCN7JG9mZnNldH0gLSB2YXIoLS1kYy1oZWFkZXItaGVpZ2h0LCAjeyRoZWFkZXJIZWlnaHR9KSk7XG59XG5cbkBtaXhpbiByZXNldC1saW5rLXN0eWxlKCkge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuQG1peGluIGlzbGFuZHMtZm9jdXMoKSB7XG4gICAgb3V0bGluZTogbm9uZTtcblxuICAgIC51dGlsaXR5Zm9jdXMgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCAjZmZkYjRkO1xuICAgIH1cbn1cblxuQG1peGluIGZvY3VzYWJsZSgkb2Zmc2V0OiAwLCAkbW9kZTogJ291dGxpbmUnKSB7XG4gICAgQGlmICRtb2RlID09ICdvdXRsaW5lJyB7XG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWctY29sb3ItbGluZS1mb2N1cyk7XG4gICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogJG9mZnNldDtcbiAgICAgICAgfVxuICAgICAgICAmOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkbW9kZSA9PSAnYm94LXNoYWRvdycge1xuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1nLWNvbG9yLWxpbmUtZm9jdXMpO1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgfVxuICAgICAgICAmOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGxpbmsoKSB7XG4gICAgQGluY2x1ZGUgaXNsYW5kcy1mb2N1cygpO1xuICAgIEBpbmNsdWRlIGZvY3VzYWJsZSgwLCAnYm94LXNoYWRvdycpO1xuXG4gICAgY29sb3I6IHZhcigtLWctY29sb3ItdGV4dC1saW5rKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWctZm9jdXMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWctY29sb3ItdGV4dC1saW5rLWhvdmVyKTtcbiAgICB9XG59XG5cbkBtaXhpbiBoZWFkaW5nMSgpIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXNpemUoZGlzcGxheS0zKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbkJyZWFrcG9pbnRzLCAnbWQnKSAtIDEpIHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dC1zaXplKGRpc3BsYXktMik7XG4gICAgfVxufVxuXG5AbWl4aW4gaGVhZGluZzIoKSB7XG4gICAgQGluY2x1ZGUgdGV4dC1zaXplKGRpc3BsYXktMSk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuQG1peGluIGhlYWRpbmczKCkge1xuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShoZWFkZXItMik7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuQG1peGluIGhlYWRpbmc0KCkge1xuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShoZWFkZXItMSk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuQG1peGluIGhlYWRpbmc1KCkge1xuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShib2R5LTMpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbkBtaXhpbiBoZWFkaW5nNigpIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXNpemUoYm9keS0zKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xufVxuXG5AbWl4aW4gY29udHJpYnV0b3JzLXRleHQoKSB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuXG5AbWl4aW4gdGV4dC1ib2R5LTEoKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1nLXRleHQtYm9keS0xLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWctdGV4dC1ib2R5LTEtbGluZS1oZWlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1nLXRleHQtYm9keS1mb250LXdlaWdodCk7XG59XG5cbkBtaXhpbiBkZXNrdG9wLW9ubHkoKSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbkJyZWFrcG9pbnRzLCAnbWQnKSAtIDEpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wLXRhYmxldC1vbmx5KCkge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBtYXAtZ2V0KCRzY3JlZW5CcmVha3BvaW50cywgJ3NtJykgLSAxKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWl4aW4gbW9iaWxlLXRhYmxldC1vbmx5KCkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRzY3JlZW5CcmVha3BvaW50cywgJ21kJykpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbkBtaXhpbiBtb2JpbGUtb25seSgpIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkc2NyZWVuQnJlYWtwb2ludHMsICdzbScpKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuIl19 */", "@import './variables';\n\n@mixin text-size($name) {\n font-size: var(--g-text-#{$name}-font-size);\n line-height: var(--g-text-#{$name}-line-height);\n}\n\n@mixin reset-list-style() {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n@mixin fixAnchorPosition($offset: 0px) {\n padding-top: calc(var(--dc-header-height, #{$headerHeight}));\n margin-top: calc(#{$offset} - var(--dc-header-height, #{$headerHeight}));\n}\n\n@mixin reset-link-style() {\n color: inherit;\n text-decoration: none;\n}\n\n@mixin islands-focus() {\n outline: none;\n\n .utilityfocus &:focus {\n outline: 2px solid #ffdb4d;\n }\n}\n\n@mixin focusable($offset: 0, $mode: 'outline') {\n @if $mode == 'outline' {\n &:focus {\n outline: 2px solid var(--g-color-line-focus);\n outline-offset: $offset;\n }\n &:focus:not(:focus-visible) {\n outline: 0;\n }\n }\n\n @if $mode == 'box-shadow' {\n &:focus {\n box-shadow: 0 0 0 2px var(--g-color-line-focus);\n outline: 0;\n }\n &:focus:not(:focus-visible) {\n box-shadow: none;\n }\n }\n}\n\n@mixin link() {\n @include islands-focus();\n @include focusable(0, 'box-shadow');\n\n color: var(--g-color-text-link);\n text-decoration: none;\n cursor: pointer;\n border-radius: var(--g-focus-border-radius);\n\n &:hover,\n &:active {\n color: var(--g-color-text-link-hover);\n }\n}\n\n@mixin heading1() {\n @include text-size(display-3);\n font-weight: 500;\n\n @media (max-width: map-get($screenBreakpoints, 'md') - 1) {\n @include text-size(display-2);\n }\n}\n\n@mixin heading2() {\n @include text-size(display-1);\n font-weight: 500;\n}\n\n@mixin heading3() {\n @include text-size(header-2);\n font-weight: 500;\n}\n\n@mixin heading4() {\n @include text-size(header-1);\n font-weight: 500;\n}\n\n@mixin heading5() {\n @include text-size(body-3);\n font-weight: 500;\n}\n\n@mixin heading6() {\n @include text-size(body-3);\n font-weight: 400;\n}\n\n@mixin contributors-text() {\n font-size: 13px;\n font-weight: 400;\n margin-right: 5px;\n align-self: center;\n}\n\n@mixin text-body-1() {\n font-size: var(--g-text-body-1-font-size);\n line-height: var(--g-text-body-1-line-height);\n font-weight: var(--g-text-body-font-weight);\n}\n\n@mixin desktop-only() {\n @media (max-width: map-get($screenBreakpoints, 'md') - 1) {\n display: none;\n }\n}\n\n@mixin desktop-tablet-only() {\n @media (max-width: map-get($screenBreakpoints, 'sm') - 1) {\n display: none;\n }\n}\n\n@mixin mobile-tablet-only() {\n @media (min-width: map-get($screenBreakpoints, 'md')) {\n display: none;\n }\n}\n\n@mixin mobile-only() {\n @media (min-width: map-get($screenBreakpoints, 'sm')) {\n display: none;\n }\n}\n"],
|
|
5
|
-
"mappings": ";AAYA,CAAA;AAGI,WAAA;AACA,kBAAA;AACA,UAAA,KAAA,MAAA,EAAA;AAAA,UAAA,KAAA,MAAA,EAAA,IAAA,kBAAA,EAAA;AACA,cAAA;AACA,gBAAA,IAAA,MAAA,IAAA;ACbJ;ADeI,CAAA;AACI,WAAA,IAAA,KAAA,IAAA;
|
|
3
|
+
"sources": ["../../../../src/components/Toc/home/runner/work/components/components/src/components/Toc/Toc.scss", "../../../../src/components/Toc/%3Cinput%20css%20vUWSwZ%3E", "../../../../src/components/Toc/home/runner/work/components/components/src/styles/mixins.scss"],
|
|
4
|
+
"sourcesContent": ["@import '../../styles/variables';\n@import '../../styles/mixins';\n\n$iconSize: 18px;\n$toggleSize: 10px;\n$leftOffset: 57px;\n\n@mixin toc-header {\n @include text-size(body-2);\n font-weight: 500;\n}\n\n.dc-toc {\n $class: &;\n\n display: flex;\n flex-direction: column;\n height: calc(100vh - var(--dc-header-height, #{$headerHeight}));\n overflow-y: hidden;\n border-right: 1px solid var(--g-color-line-generic);\n\n .mobile & {\n border-top: 1px solid var(--g-color-line-generic);\n border-right: none;\n }\n\n &__empty {\n padding: 5px 15px 5px 24px;\n }\n\n &__top {\n flex-grow: 0;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n padding: 10px 10px 8px 0;\n\n &_scrolled {\n border-bottom: 1px solid var(--g-color-line-generic);\n }\n\n &-header-icon {\n display: flex;\n margin-right: 5px;\n flex-shrink: 0;\n }\n\n &-header {\n flex-grow: 0;\n $headerClass: &;\n position: relative;\n\n @include text-size(body-2);\n font-weight: 500;\n\n &_link {\n @include reset-link-style();\n display: flex;\n align-items: center;\n border-radius: var(--g-focus-border-radius);\n\n &:hover {\n @include link();\n\n color: var(--g-color-text-primary);\n }\n @include focusable();\n }\n }\n }\n\n &__bottom {\n flex-grow: 0;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n padding: 4px 10px 20px 0;\n\n &_scrolled {\n border-top: 1px solid var(--g-color-line-generic);\n }\n }\n\n &__content {\n --g-scrollbar-width: 6px;\n\n position: relative;\n flex-grow: 1;\n overflow-y: auto;\n scrollbar-width: thin;\n\n &_offset_top {\n padding-top: 24px;\n }\n }\n\n &__list {\n @include reset-list-style();\n\n display: block;\n\n &-item {\n cursor: pointer;\n user-select: none;\n\n &_main > *:first-child {\n color: var(--g-color-text-primary);\n }\n\n &:not(&_opened) > #{$class}__list {\n display: none;\n }\n\n // recurcive padding\n > #{$class}__list {\n padding-left: 20px;\n }\n }\n }\n\n &__content > &__list {\n padding-right: 21px;\n padding-bottom: 30px;\n }\n}\n", ".dc-toc {\n display: flex;\n flex-direction: column;\n height: calc(100vh - var(--dc-header-height, 0px));\n overflow-y: hidden;\n border-right: 1px solid var(--g-color-line-generic);\n}\n.mobile .dc-toc {\n border-top: 1px solid var(--g-color-line-generic);\n border-right: none;\n}\n.dc-toc__empty {\n padding: 5px 15px 5px 24px;\n}\n.dc-toc__top {\n flex-grow: 0;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n padding: 10px 10px 8px 0;\n}\n.dc-toc__top_scrolled {\n border-bottom: 1px solid var(--g-color-line-generic);\n}\n.dc-toc__top-header-icon {\n display: flex;\n margin-right: 5px;\n flex-shrink: 0;\n}\n.dc-toc__top-header {\n flex-grow: 0;\n position: relative;\n font-size: var(--g-text-body-2-font-size);\n line-height: var(--g-text-body-2-line-height);\n font-weight: 500;\n}\n.dc-toc__top-header_link {\n color: inherit;\n text-decoration: none;\n display: flex;\n align-items: center;\n border-radius: var(--g-focus-border-radius);\n}\n.dc-toc__top-header_link:hover {\n outline: none;\n color: var(--g-color-text-link);\n text-decoration: none;\n cursor: pointer;\n border-radius: var(--g-focus-border-radius);\n color: var(--g-color-text-primary);\n}\n.utilityfocus .dc-toc__top-header_link:hover:focus {\n outline: 2px solid #ffdb4d;\n}\n.dc-toc__top-header_link:hover:focus {\n box-shadow: 0 0 0 2px var(--g-color-line-focus);\n outline: 0;\n}\n.dc-toc__top-header_link:hover:focus:not(:focus-visible) {\n box-shadow: none;\n}\n.dc-toc__top-header_link:hover:hover, .dc-toc__top-header_link:hover:active {\n color: var(--g-color-text-link-hover);\n}\n.dc-toc__top-header_link:focus {\n outline: 2px solid var(--g-color-line-focus);\n outline-offset: 0;\n}\n.dc-toc__top-header_link:focus:not(:focus-visible) {\n outline: 0;\n}\n.dc-toc__bottom {\n flex-grow: 0;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n padding: 4px 10px 20px 0;\n}\n.dc-toc__bottom_scrolled {\n border-top: 1px solid var(--g-color-line-generic);\n}\n.dc-toc__content {\n --g-scrollbar-width: 6px;\n position: relative;\n flex-grow: 1;\n overflow-y: auto;\n scrollbar-width: thin;\n}\n.dc-toc__content_offset_top {\n padding-top: 24px;\n}\n.dc-toc__list {\n margin: 0;\n padding: 0;\n list-style: none;\n display: block;\n}\n.dc-toc__list-item {\n cursor: pointer;\n user-select: none;\n}\n.dc-toc__list-item_main > *:first-child {\n color: var(--g-color-text-primary);\n}\n.dc-toc__list-item:not(.dc-toc__list-item_opened) > .dc-toc__list {\n display: none;\n}\n.dc-toc__list-item > .dc-toc__list {\n padding-left: 20px;\n}\n.dc-toc__content > .dc-toc__list {\n padding-right: 21px;\n padding-bottom: 30px;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvY29tcG9uZW50cy9jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL1RvYyIsInNvdXJjZXMiOlsiVG9jLnNjc3MiLCIuLi8uLi9zdHlsZXMvbWl4aW5zLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBWUE7RUFHSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFFQTtFQy9DUjtFQUNBO0VEaURROztBQUVBO0VDcENSO0VBQ0E7RURxQ1k7RUFDQTtFQUNBOztBQUVBO0VDckNaO0VBaUNBO0VBQ0E7RUFDQTtFQUNBO0VESWdCOztBQ3RDaEI7RUFDSTs7QUFnQkE7RUFDSTtFQUNBOztBQUVKO0VBQ0k7O0FBY1I7RUFFSTs7QUEvQkE7RUFDSTtFQUNBLGdCQUpjOztBQU1sQjtFQUNJOztBRGlDUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQUNJO0VBRUE7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQ3hGQTtFQUNBO0VBQ0E7RUR5Rkk7O0FBRUE7RUFDSTtFQUNBOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTs7QUFJSjtFQUNJOztBQUtaO0VBQ0k7RUFDQSIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJy4uLy4uL3N0eWxlcy92YXJpYWJsZXMnO1xuQGltcG9ydCAnLi4vLi4vc3R5bGVzL21peGlucyc7XG5cbiRpY29uU2l6ZTogMThweDtcbiR0b2dnbGVTaXplOiAxMHB4O1xuJGxlZnRPZmZzZXQ6IDU3cHg7XG5cbkBtaXhpbiB0b2MtaGVhZGVyIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXNpemUoYm9keS0yKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uZGMtdG9jIHtcbiAgICAkY2xhc3M6ICY7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tZGMtaGVhZGVyLWhlaWdodCwgI3skaGVhZGVySGVpZ2h0fSkpO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1nLWNvbG9yLWxpbmUtZ2VuZXJpYyk7XG5cbiAgICAubW9iaWxlICYge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZy1jb2xvci1saW5lLWdlbmVyaWMpO1xuICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fZW1wdHkge1xuICAgICAgICBwYWRkaW5nOiA1cHggMTVweCA1cHggMjRweDtcbiAgICB9XG5cbiAgICAmX190b3Age1xuICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggOHB4IDA7XG5cbiAgICAgICAgJl9zY3JvbGxlZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZy1jb2xvci1saW5lLWdlbmVyaWMpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1oZWFkZXItaWNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtaGVhZGVyIHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgICRoZWFkZXJDbGFzczogJjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgdGV4dC1zaXplKGJvZHktMik7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICAgICAmX2xpbmsge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc2V0LWxpbmstc3R5bGUoKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZy1mb2N1cy1ib3JkZXItcmFkaXVzKTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsaW5rKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWctY29sb3ItdGV4dC1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9jdXNhYmxlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ib3R0b20ge1xuICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiA0cHggMTBweCAyMHB4IDA7XG5cbiAgICAgICAgJl9zY3JvbGxlZCB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZy1jb2xvci1saW5lLWdlbmVyaWMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIC0tZy1zY3JvbGxiYXItd2lkdGg6IDZweDtcblxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuXG4gICAgICAgICZfb2Zmc2V0X3RvcCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMjRweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpc3Qge1xuICAgICAgICBAaW5jbHVkZSByZXNldC1saXN0LXN0eWxlKCk7XG5cbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgJi1pdGVtIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgICAgICAgICAmX21haW4gPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZy1jb2xvci10ZXh0LXByaW1hcnkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCgmX29wZW5lZCkgPiAjeyRjbGFzc31fX2xpc3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIHJlY3VyY2l2ZSBwYWRkaW5nXG4gICAgICAgICAgICA+ICN7JGNsYXNzfV9fbGlzdCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29udGVudCA+ICZfX2xpc3Qge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICB9XG59XG4iLCJAaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XG5cbkBtaXhpbiB0ZXh0LXNpemUoJG5hbWUpIHtcbiAgICBmb250LXNpemU6IHZhcigtLWctdGV4dC0jeyRuYW1lfS1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1nLXRleHQtI3skbmFtZX0tbGluZS1oZWlnaHQpO1xufVxuXG5AbWl4aW4gcmVzZXQtbGlzdC1zdHlsZSgpIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5AbWl4aW4gZml4QW5jaG9yUG9zaXRpb24oJG9mZnNldDogMHB4KSB7XG4gICAgcGFkZGluZy10b3A6IGNhbGModmFyKC0tZGMtaGVhZGVyLWhlaWdodCwgI3skaGVhZGVySGVpZ2h0fSkpO1xuICAgIG1hcmdpbi10b3A6IGNhbGMoI3skb2Zmc2V0fSAtIHZhcigtLWRjLWhlYWRlci1oZWlnaHQsICN7JGhlYWRlckhlaWdodH0pKTtcbn1cblxuQG1peGluIHJlc2V0LWxpbmstc3R5bGUoKSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5AbWl4aW4gaXNsYW5kcy1mb2N1cygpIHtcbiAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgLnV0aWxpdHlmb2N1cyAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkICNmZmRiNGQ7XG4gICAgfVxufVxuXG5AbWl4aW4gZm9jdXNhYmxlKCRvZmZzZXQ6IDAsICRtb2RlOiAnb3V0bGluZScpIHtcbiAgICBAaWYgJG1vZGUgPT0gJ291dGxpbmUnIHtcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tZy1jb2xvci1saW5lLWZvY3VzKTtcbiAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAkb2Zmc2V0O1xuICAgICAgICB9XG4gICAgICAgICY6Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRtb2RlID09ICdib3gtc2hhZG93JyB7XG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWctY29sb3ItbGluZS1mb2N1cyk7XG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICB9XG4gICAgICAgICY6Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gbGluaygpIHtcbiAgICBAaW5jbHVkZSBpc2xhbmRzLWZvY3VzKCk7XG4gICAgQGluY2x1ZGUgZm9jdXNhYmxlKDAsICdib3gtc2hhZG93Jyk7XG5cbiAgICBjb2xvcjogdmFyKC0tZy1jb2xvci10ZXh0LWxpbmspO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZy1mb2N1cy1ib3JkZXItcmFkaXVzKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogdmFyKC0tZy1jb2xvci10ZXh0LWxpbmstaG92ZXIpO1xuICAgIH1cbn1cblxuQG1peGluIGhlYWRpbmcxKCkge1xuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShkaXNwbGF5LTMpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogbWFwLWdldCgkc2NyZWVuQnJlYWtwb2ludHMsICdtZCcpIC0gMSkge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0LXNpemUoZGlzcGxheS0yKTtcbiAgICB9XG59XG5cbkBtaXhpbiBoZWFkaW5nMigpIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXNpemUoZGlzcGxheS0xKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xufVxuXG5AbWl4aW4gaGVhZGluZzMoKSB7XG4gICAgQGluY2x1ZGUgdGV4dC1zaXplKGhlYWRlci0yKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xufVxuXG5AbWl4aW4gaGVhZGluZzQoKSB7XG4gICAgQGluY2x1ZGUgdGV4dC1zaXplKGhlYWRlci0xKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xufVxuXG5AbWl4aW4gaGVhZGluZzUoKSB7XG4gICAgQGluY2x1ZGUgdGV4dC1zaXplKGJvZHktMyk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuQG1peGluIGhlYWRpbmc2KCkge1xuICAgIEBpbmNsdWRlIHRleHQtc2l6ZShib2R5LTMpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbkBtaXhpbiBjb250cmlidXRvcnMtdGV4dCgpIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG5cbkBtaXhpbiB0ZXh0LWJvZHktMSgpIHtcbiAgICBmb250LXNpemU6IHZhcigtLWctdGV4dC1ib2R5LTEtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tZy10ZXh0LWJvZHktMS1saW5lLWhlaWdodCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWctdGV4dC1ib2R5LWZvbnQtd2VpZ2h0KTtcbn1cblxuQG1peGluIGRlc2t0b3Atb25seSgpIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogbWFwLWdldCgkc2NyZWVuQnJlYWtwb2ludHMsICdtZCcpIC0gMSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuQG1peGluIGRlc2t0b3AtdGFibGV0LW9ubHkoKSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IG1hcC1nZXQoJHNjcmVlbkJyZWFrcG9pbnRzLCAnc20nKSAtIDEpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbkBtaXhpbiBtb2JpbGUtdGFibGV0LW9ubHkoKSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC1nZXQoJHNjcmVlbkJyZWFrcG9pbnRzLCAnbWQnKSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuQG1peGluIG1vYmlsZS1vbmx5KCkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRzY3JlZW5CcmVha3BvaW50cywgJ3NtJykpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4iXX0= */", "@import './variables';\n\n@mixin text-size($name) {\n font-size: var(--g-text-#{$name}-font-size);\n line-height: var(--g-text-#{$name}-line-height);\n}\n\n@mixin reset-list-style() {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n@mixin fixAnchorPosition($offset: 0px) {\n padding-top: calc(var(--dc-header-height, #{$headerHeight}));\n margin-top: calc(#{$offset} - var(--dc-header-height, #{$headerHeight}));\n}\n\n@mixin reset-link-style() {\n color: inherit;\n text-decoration: none;\n}\n\n@mixin islands-focus() {\n outline: none;\n\n .utilityfocus &:focus {\n outline: 2px solid #ffdb4d;\n }\n}\n\n@mixin focusable($offset: 0, $mode: 'outline') {\n @if $mode == 'outline' {\n &:focus {\n outline: 2px solid var(--g-color-line-focus);\n outline-offset: $offset;\n }\n &:focus:not(:focus-visible) {\n outline: 0;\n }\n }\n\n @if $mode == 'box-shadow' {\n &:focus {\n box-shadow: 0 0 0 2px var(--g-color-line-focus);\n outline: 0;\n }\n &:focus:not(:focus-visible) {\n box-shadow: none;\n }\n }\n}\n\n@mixin link() {\n @include islands-focus();\n @include focusable(0, 'box-shadow');\n\n color: var(--g-color-text-link);\n text-decoration: none;\n cursor: pointer;\n border-radius: var(--g-focus-border-radius);\n\n &:hover,\n &:active {\n color: var(--g-color-text-link-hover);\n }\n}\n\n@mixin heading1() {\n @include text-size(display-3);\n font-weight: 500;\n\n @media (max-width: map-get($screenBreakpoints, 'md') - 1) {\n @include text-size(display-2);\n }\n}\n\n@mixin heading2() {\n @include text-size(display-1);\n font-weight: 500;\n}\n\n@mixin heading3() {\n @include text-size(header-2);\n font-weight: 500;\n}\n\n@mixin heading4() {\n @include text-size(header-1);\n font-weight: 500;\n}\n\n@mixin heading5() {\n @include text-size(body-3);\n font-weight: 500;\n}\n\n@mixin heading6() {\n @include text-size(body-3);\n font-weight: 400;\n}\n\n@mixin contributors-text() {\n font-size: 13px;\n font-weight: 400;\n margin-right: 5px;\n align-self: center;\n}\n\n@mixin text-body-1() {\n font-size: var(--g-text-body-1-font-size);\n line-height: var(--g-text-body-1-line-height);\n font-weight: var(--g-text-body-font-weight);\n}\n\n@mixin desktop-only() {\n @media (max-width: map-get($screenBreakpoints, 'md') - 1) {\n display: none;\n }\n}\n\n@mixin desktop-tablet-only() {\n @media (max-width: map-get($screenBreakpoints, 'sm') - 1) {\n display: none;\n }\n}\n\n@mixin mobile-tablet-only() {\n @media (min-width: map-get($screenBreakpoints, 'md')) {\n display: none;\n }\n}\n\n@mixin mobile-only() {\n @media (min-width: map-get($screenBreakpoints, 'sm')) {\n display: none;\n }\n}\n"],
|
|
5
|
+
"mappings": ";AAYA,CAAA;AAGI,WAAA;AACA,kBAAA;AACA,UAAA,KAAA,MAAA,EAAA;AAAA,UAAA,KAAA,MAAA,EAAA,IAAA,kBAAA,EAAA;AACA,cAAA;AACA,gBAAA,IAAA,MAAA,IAAA;ACbJ;ADeI,CAAA,OAAA,CATJ;AAUQ,cAAA,IAAA,MAAA,IAAA;AACA,gBAAA;ACbR;ADgBI,CAAA;AACI,WAAA,IAAA,KAAA,IAAA;ACdR;ADiBI,CAAA;AACI,aAAA;AACA,eAAA;AACA,WAAA;AACA,eAAA;AACA,WAAA,KAAA,KAAA,IAAA;ACfR;ADiBQ,CAAA;AACI,iBAAA,IAAA,MAAA,IAAA;ACfZ;ADkBQ,CAAA;AACI,WAAA;AACA,gBAAA;AACA,eAAA;AChBZ;ADmBQ,CAAA;AACI,aAAA;AAEA,YAAA;AE/CR,aAAA,IAAA;AACA,eAAA,IAAA;AFiDQ,eAAA;AClBZ;ADoBY,CAAA;AEpCR,SAAA;AACA,2BAAA;AAAA,mBAAA;AFqCY,WAAA;AACA,eAAA;AACA,iBAAA,IAAA;ACjBhB;ADmBgB,CANJ,uBAMI;AErCZ,WAAA;AAiCA,SAAA,IAAA;AACA,2BAAA;AAAA,mBAAA;AACA,UAAA;AACA,iBAAA,IAAA;AFIgB,SAAA,IAAA;ACdpB;ACxBI,CAAA,aAAA,CF6BQ,uBE7BR,MAAA;AACI,WAAA,IAAA,MAAA;AD0BR;ACVQ,CFYI,uBEZJ,MAAA;AACI,cAAA,EAAA,EAAA,EAAA,IAAA,IAAA;AACA,WAAA;ADYZ;ACVQ,CFQI,uBERJ,MAAA,MAAA,KAAA;AACI,cAAA;ADYZ;ACEI,CFPQ,uBEOR,MAAA;AAAA,CFPQ,uBEOR,MAAA;AAEI,SAAA,IAAA;ADDR;AC9BQ,CFsBI,uBEtBJ;AACI,WAAA,IAAA,MAAA,IAAA;AACA,kBAAA;ADgCZ;AC9BQ,CFkBI,uBElBJ,MAAA,KAAA;AACI,WAAA;ADgCZ;ADCI,CAAA;AACI,aAAA;AACA,eAAA;AACA,WAAA;AACA,eAAA;AACA,WAAA,IAAA,KAAA,KAAA;ACCR;ADCQ,CAAA;AACI,cAAA,IAAA,MAAA,IAAA;ACCZ;ADGI,CAAA;AACI,uBAAA;AAEA,YAAA;AACA,aAAA;AACA,cAAA;AACA,mBAAA;ACFR;ADIQ,CAAA;AACI,eAAA;ACFZ;ADMI,CAAA;AExFA,UAAA;AACA,WAAA;AACA,cAAA;AFyFI,WAAA;ACHR;ADKQ,CAAA;AACI,UAAA;AACA,uBAAA;AAAA,oBAAA;AAAA,eAAA;ACHZ;ADKY,CAAA,uBAAA,EAAA,CAAA;AACI,SAAA,IAAA;ACHhB;ADMY,CARJ,iBAQI,KAAA,CAAA,0BAAA,EAAA,CAbR;AAcY,WAAA;ACJhB;ADQY,CAbJ,kBAaI,EAAA,CAlBR;AAmBY,gBAAA;ACNhB;ADWI,CArCA,gBAqCA,EAAA,CAxBA;AAyBI,iBAAA;AACA,kBAAA;ACTR;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -24,6 +24,7 @@ declare class Toc extends React.Component<TocProps, TocState> {
|
|
|
24
24
|
activeRef: React.RefObject<Item>;
|
|
25
25
|
containerEl: HTMLElement | null;
|
|
26
26
|
footerEl: HTMLElement | null;
|
|
27
|
+
tocTopId: string;
|
|
27
28
|
constructor(props: TocProps);
|
|
28
29
|
getInitialState(): {
|
|
29
30
|
registry: TocItemRegistry;
|
|
@@ -55,8 +55,9 @@ __export(Toc_exports, {
|
|
|
55
55
|
});
|
|
56
56
|
module.exports = __toCommonJS(Toc_exports);
|
|
57
57
|
var import_react = __toESM(require("react"));
|
|
58
|
+
var import_uikit = require("@gravity-ui/uikit");
|
|
58
59
|
var import_bem_cn_lite = __toESM(require("bem-cn-lite"));
|
|
59
|
-
var
|
|
60
|
+
var import_omit = __toESM(require("lodash/omit"));
|
|
60
61
|
var import_hooks = require("../../hooks");
|
|
61
62
|
var import_models = require("../../models");
|
|
62
63
|
var import_utils = require("../../utils");
|
|
@@ -78,6 +79,7 @@ var Toc = class extends import_react.default.Component {
|
|
|
78
79
|
__publicField(this, "activeRef", import_react.default.createRef());
|
|
79
80
|
__publicField(this, "containerEl", null);
|
|
80
81
|
__publicField(this, "footerEl", null);
|
|
82
|
+
__publicField(this, "tocTopId");
|
|
81
83
|
__publicField(this, "normalizeUrl", (path, hash) => {
|
|
82
84
|
const { singlePage } = this.props;
|
|
83
85
|
return singlePage ? (0, import_utils.normalizeHash)(hash) : (0, import_utils.normalizePath)(path);
|
|
@@ -88,7 +90,7 @@ var Toc = class extends import_react.default.Component {
|
|
|
88
90
|
const { activeId, fixedById } = this.state;
|
|
89
91
|
const activeItem = activeId && this.state.registry.getItemById(activeId);
|
|
90
92
|
const activeScope = activeItem ? zip([activeId].concat(this.state.registry.getParentIds(activeId)), true) : {};
|
|
91
|
-
return /* @__PURE__ */ import_react.default.createElement("ul", { className: b("list") }, items.map((item, index) => {
|
|
93
|
+
return /* @__PURE__ */ import_react.default.createElement("ul", { className: b("list"), "aria-labelledby": this.tocTopId }, items.map((item, index) => {
|
|
92
94
|
const main = !this.state.registry.getParentId(item.id);
|
|
93
95
|
const active = singlePage && !activeId && index === 0 && main || item.id === activeId;
|
|
94
96
|
const opened = fixedById[item.id] === "opened";
|
|
@@ -145,7 +147,7 @@ var Toc = class extends import_react.default.Component {
|
|
|
145
147
|
__publicField(this, "closeItem", (id) => {
|
|
146
148
|
const ids = this.state.registry.getChildIds(id);
|
|
147
149
|
this.setState((prevState) => __spreadProps(__spreadValues({}, prevState), {
|
|
148
|
-
fixedById: __spreadProps(__spreadValues({}, (0,
|
|
150
|
+
fixedById: __spreadProps(__spreadValues({}, (0, import_omit.default)(prevState.fixedById, ids)), {
|
|
149
151
|
[id]: "closed"
|
|
150
152
|
})
|
|
151
153
|
}));
|
|
@@ -158,6 +160,7 @@ var Toc = class extends import_react.default.Component {
|
|
|
158
160
|
}
|
|
159
161
|
});
|
|
160
162
|
this.state = this.computeState(this.getInitialState());
|
|
163
|
+
this.tocTopId = (0, import_uikit.getUniqId)();
|
|
161
164
|
}
|
|
162
165
|
getInitialState() {
|
|
163
166
|
return {
|
|
@@ -216,7 +219,7 @@ var Toc = class extends import_react.default.Component {
|
|
|
216
219
|
const expandedIds = [activeId].concat(prevState.registry.getParentIds(activeId));
|
|
217
220
|
const dropClosedSign = expandedIds.filter((id) => prevState.fixedById[id] === "closed");
|
|
218
221
|
if (dropClosedSign.length) {
|
|
219
|
-
fixedById = (0,
|
|
222
|
+
fixedById = (0, import_omit.default)(fixedById, dropClosedSign);
|
|
220
223
|
}
|
|
221
224
|
}
|
|
222
225
|
return __spreadProps(__spreadValues({}, prevState), { activeId, fixedById });
|
|
@@ -245,7 +248,7 @@ var Toc = class extends import_react.default.Component {
|
|
|
245
248
|
} else {
|
|
246
249
|
topHeader = /* @__PURE__ */ import_react.default.createElement("div", { className: b("top-header") }, /* @__PURE__ */ import_react.default.createElement(import_HTML.HTML, null, title));
|
|
247
250
|
}
|
|
248
|
-
return /* @__PURE__ */ import_react.default.createElement("div", { className: b("top", { scrolled: contentScrolled }) }, tocTitleIcon ? /* @__PURE__ */ import_react.default.createElement("div", { className: b("top-header-icon") }, tocTitleIcon) : null, topHeader);
|
|
251
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { className: b("top", { scrolled: contentScrolled }), id: this.tocTopId }, tocTitleIcon ? /* @__PURE__ */ import_react.default.createElement("div", { className: b("top-header-icon"), "aria-hidden": "true" }, tocTitleIcon) : null, topHeader);
|
|
249
252
|
}
|
|
250
253
|
renderBottom() {
|
|
251
254
|
const { singlePage, onChangeSinglePage, pdfLink } = this.props;
|