All Downloads are FREE. Search and download functionalities are using the official Maven repository.

theme.keycloak.v2.admin.resources.assets.ScrollForm-c201dcc9.js.map Maven / Gradle / Ivy

There is a newer version: 25.0.1
Show newest version
{"version":3,"file":"ScrollForm-c201dcc9.js","sources":["../../../../node_modules/.pnpm/@[email protected]/node_modules/@patternfly/react-styles/css/components/JumpLinks/jump-links.mjs","../../../../node_modules/.pnpm/@[email protected]/node_modules/@patternfly/react-styles/css/components/Sidebar/sidebar.mjs","../../../../node_modules/.pnpm/@[email protected][email protected][email protected]/node_modules/@patternfly/react-core/dist/esm/components/JumpLinks/JumpLinksList.js","../../../../node_modules/.pnpm/@[email protected][email protected][email protected]/node_modules/@patternfly/react-core/dist/esm/components/JumpLinks/JumpLinksItem.js","../../../../node_modules/.pnpm/@[email protected]/node_modules/@patternfly/react-tokens/dist/esm/c_jump_links__toggle_Display.js","../../../../node_modules/.pnpm/@[email protected][email protected][email protected]/node_modules/@patternfly/react-core/dist/esm/components/JumpLinks/JumpLinks.js","../../src/components/scroll-form/ScrollPanel.tsx","../../src/components/scroll-form/ScrollForm.tsx"],"sourcesContent":["import './jump-links.css';\nexport default {\n  \"button\": \"pf-c-button\",\n  \"jumpLinks\": \"pf-c-jump-links\",\n  \"jumpLinksItem\": \"pf-c-jump-links__item\",\n  \"jumpLinksLabel\": \"pf-c-jump-links__label\",\n  \"jumpLinksLink\": \"pf-c-jump-links__link\",\n  \"jumpLinksLinkText\": \"pf-c-jump-links__link-text\",\n  \"jumpLinksList\": \"pf-c-jump-links__list\",\n  \"jumpLinksMain\": \"pf-c-jump-links__main\",\n  \"jumpLinksToggle\": \"pf-c-jump-links__toggle\",\n  \"jumpLinksToggleIcon\": \"pf-c-jump-links__toggle-icon\",\n  \"jumpLinksToggleText\": \"pf-c-jump-links__toggle-text\",\n  \"modifiers\": {\n    \"center\": \"pf-m-center\",\n    \"vertical\": \"pf-m-vertical\",\n    \"expandable\": \"pf-m-expandable\",\n    \"nonExpandable\": \"pf-m-non-expandable\",\n    \"expandableOnSm\": \"pf-m-expandable-on-sm\",\n    \"nonExpandableOnSm\": \"pf-m-non-expandable-on-sm\",\n    \"expandableOnMd\": \"pf-m-expandable-on-md\",\n    \"nonExpandableOnMd\": \"pf-m-non-expandable-on-md\",\n    \"expandableOnLg\": \"pf-m-expandable-on-lg\",\n    \"nonExpandableOnLg\": \"pf-m-non-expandable-on-lg\",\n    \"expandableOnXl\": \"pf-m-expandable-on-xl\",\n    \"nonExpandableOnXl\": \"pf-m-non-expandable-on-xl\",\n    \"expandableOn_2xl\": \"pf-m-expandable-on-2xl\",\n    \"nonExpandableOn_2xl\": \"pf-m-non-expandable-on-2xl\",\n    \"expanded\": \"pf-m-expanded\",\n    \"current\": \"pf-m-current\"\n  }\n};","import './sidebar.css';\nexport default {\n  \"modifiers\": {\n    \"gutter\": \"pf-m-gutter\",\n    \"panelRight\": \"pf-m-panel-right\",\n    \"stack\": \"pf-m-stack\",\n    \"split\": \"pf-m-split\",\n    \"sticky\": \"pf-m-sticky\",\n    \"static\": \"pf-m-static\",\n    \"noBackground\": \"pf-m-no-background\",\n    \"widthDefault\": \"pf-m-width-default\",\n    \"width_25\": \"pf-m-width-25\",\n    \"width_33\": \"pf-m-width-33\",\n    \"width_50\": \"pf-m-width-50\",\n    \"width_66\": \"pf-m-width-66\",\n    \"width_75\": \"pf-m-width-75\",\n    \"width_100\": \"pf-m-width-100\",\n    \"widthDefaultOnSm\": \"pf-m-width-default-on-sm\",\n    \"width_25OnSm\": \"pf-m-width-25-on-sm\",\n    \"width_33OnSm\": \"pf-m-width-33-on-sm\",\n    \"width_50OnSm\": \"pf-m-width-50-on-sm\",\n    \"width_66OnSm\": \"pf-m-width-66-on-sm\",\n    \"width_75OnSm\": \"pf-m-width-75-on-sm\",\n    \"width_100OnSm\": \"pf-m-width-100-on-sm\",\n    \"widthDefaultOnMd\": \"pf-m-width-default-on-md\",\n    \"width_25OnMd\": \"pf-m-width-25-on-md\",\n    \"width_33OnMd\": \"pf-m-width-33-on-md\",\n    \"width_50OnMd\": \"pf-m-width-50-on-md\",\n    \"width_66OnMd\": \"pf-m-width-66-on-md\",\n    \"width_75OnMd\": \"pf-m-width-75-on-md\",\n    \"width_100OnMd\": \"pf-m-width-100-on-md\",\n    \"widthDefaultOnLg\": \"pf-m-width-default-on-lg\",\n    \"width_25OnLg\": \"pf-m-width-25-on-lg\",\n    \"width_33OnLg\": \"pf-m-width-33-on-lg\",\n    \"width_50OnLg\": \"pf-m-width-50-on-lg\",\n    \"width_66OnLg\": \"pf-m-width-66-on-lg\",\n    \"width_75OnLg\": \"pf-m-width-75-on-lg\",\n    \"width_100OnLg\": \"pf-m-width-100-on-lg\",\n    \"widthDefaultOnXl\": \"pf-m-width-default-on-xl\",\n    \"width_25OnXl\": \"pf-m-width-25-on-xl\",\n    \"width_33OnXl\": \"pf-m-width-33-on-xl\",\n    \"width_50OnXl\": \"pf-m-width-50-on-xl\",\n    \"width_66OnXl\": \"pf-m-width-66-on-xl\",\n    \"width_75OnXl\": \"pf-m-width-75-on-xl\",\n    \"width_100OnXl\": \"pf-m-width-100-on-xl\",\n    \"widthDefaultOn_2xl\": \"pf-m-width-default-on-2xl\",\n    \"width_25On_2xl\": \"pf-m-width-25-on-2xl\",\n    \"width_33On_2xl\": \"pf-m-width-33-on-2xl\",\n    \"width_50On_2xl\": \"pf-m-width-50-on-2xl\",\n    \"width_66On_2xl\": \"pf-m-width-66-on-2xl\",\n    \"width_75On_2xl\": \"pf-m-width-75-on-2xl\",\n    \"width_100On_2xl\": \"pf-m-width-100-on-2xl\"\n  },\n  \"sidebar\": \"pf-c-sidebar\",\n  \"sidebarContent\": \"pf-c-sidebar__content\",\n  \"sidebarMain\": \"pf-c-sidebar__main\",\n  \"sidebarPanel\": \"pf-c-sidebar__panel\"\n};","import { __rest } from \"tslib\";\nimport * as React from 'react';\nimport { css } from '@patternfly/react-styles';\nimport styles from '@patternfly/react-styles/css/components/JumpLinks/jump-links';\nexport const JumpLinksList = (_a) => {\n    var { children, className } = _a, props = __rest(_a, [\"children\", \"className\"]);\n    return (React.createElement(\"ul\", Object.assign({ className: css(styles.jumpLinksList, className) }, props), children));\n};\nJumpLinksList.displayName = 'JumpLinksList';\n//# sourceMappingURL=JumpLinksList.js.map","import { __rest } from \"tslib\";\nimport * as React from 'react';\nimport { css } from '@patternfly/react-styles';\nimport styles from '@patternfly/react-styles/css/components/JumpLinks/jump-links';\nimport { JumpLinksList } from './JumpLinksList';\nexport const JumpLinksItem = (_a) => {\n    var { isActive, href, \n    // eslint-disable-next-line\n    node, children, onClick, className } = _a, props = __rest(_a, [\"isActive\", \"href\", \"node\", \"children\", \"onClick\", \"className\"]);\n    const childrenArr = React.Children.toArray(children);\n    const sublists = childrenArr.filter(child => child.type === JumpLinksList);\n    children = childrenArr.filter(child => child.type !== JumpLinksList);\n    return (React.createElement(\"li\", Object.assign({ className: css(styles.jumpLinksItem, isActive && styles.modifiers.current, className) }, (isActive && { 'aria-current': 'location' }), props),\n        React.createElement(\"a\", { className: styles.jumpLinksLink, href: href, onClick: onClick },\n            React.createElement(\"span\", { className: styles.jumpLinksLinkText }, children)),\n        sublists));\n};\nJumpLinksItem.displayName = 'JumpLinksItem';\n//# sourceMappingURL=JumpLinksItem.js.map","export const c_jump_links__toggle_Display = {\n  \"name\": \"--pf-c-jump-links__toggle--Display\",\n  \"value\": \"none\",\n  \"var\": \"var(--pf-c-jump-links__toggle--Display)\"\n};\nexport default c_jump_links__toggle_Display;","import { __rest } from \"tslib\";\nimport * as React from 'react';\nimport { css } from '@patternfly/react-styles';\nimport styles from '@patternfly/react-styles/css/components/JumpLinks/jump-links';\nimport sidebarStyles from '@patternfly/react-styles/css/components/Sidebar/sidebar';\nimport { JumpLinksItem } from './JumpLinksItem';\nimport { JumpLinksList } from './JumpLinksList';\nimport { formatBreakpointMods } from '../../helpers/util';\nimport { Button } from '../Button';\nimport AngleRightIcon from '@patternfly/react-icons/dist/esm/icons/angle-right-icon';\nimport cssToggleDisplayVar from '@patternfly/react-tokens/dist/esm/c_jump_links__toggle_Display';\nimport { canUseDOM } from '../../helpers/util';\n// Recursively find JumpLinkItems and return an array of all their scrollNodes\nconst getScrollItems = (children, res) => {\n    React.Children.forEach(children, (child) => {\n        if (canUseDOM && document.getElementById && document.querySelector && child.type === JumpLinksItem) {\n            const scrollNode = child.props.node || child.props.href;\n            if (typeof scrollNode === 'string') {\n                if (scrollNode.startsWith('#')) {\n                    // Allow spaces and other special characters as `id`s to be nicer to consumers\n                    // https://stackoverflow.com/questions/70579/what-are-valid-values-for-the-id-attribute-in-html\n                    res.push(document.getElementById(scrollNode.substr(1)));\n                }\n                else {\n                    res.push(document.querySelector(scrollNode));\n                }\n            }\n            else if (scrollNode instanceof HTMLElement) {\n                res.push(scrollNode);\n            }\n        }\n        if ([React.Fragment, JumpLinksList, JumpLinksItem].includes(child.type)) {\n            getScrollItems(child.props.children, res);\n        }\n    });\n    return res;\n};\nfunction isResponsive(jumpLinks) {\n    // https://github.com/patternfly/patternfly/blob/main/src/patternfly/components/JumpLinks/jump-links.scss#L103\n    return (jumpLinks &&\n        getComputedStyle(jumpLinks)\n            .getPropertyValue(cssToggleDisplayVar.name)\n            .includes('block'));\n}\nexport const JumpLinks = (_a) => {\n    var { isCentered, isVertical, children, label, 'aria-label': ariaLabel = typeof label === 'string' ? label : null, scrollableSelector, activeIndex: activeIndexProp = 0, offset = 0, expandable, isExpanded: isExpandedProp = false, alwaysShowLabel = true, toggleAriaLabel = 'Toggle jump links', className } = _a, props = __rest(_a, [\"isCentered\", \"isVertical\", \"children\", \"label\", 'aria-label', \"scrollableSelector\", \"activeIndex\", \"offset\", \"expandable\", \"isExpanded\", \"alwaysShowLabel\", \"toggleAriaLabel\", \"className\"]);\n    const hasScrollSpy = Boolean(scrollableSelector);\n    const [scrollItems, setScrollItems] = React.useState(hasScrollSpy ? getScrollItems(children, []) : []);\n    const [activeIndex, setActiveIndex] = React.useState(activeIndexProp);\n    const [isExpanded, setIsExpanded] = React.useState(isExpandedProp);\n    // Boolean to disable scroll listener from overriding active state of clicked jumplink\n    const isLinkClicked = React.useRef(false);\n    // Allow expanding to be controlled for a niche use case\n    React.useEffect(() => setIsExpanded(isExpandedProp), [isExpandedProp]);\n    const navRef = React.useRef();\n    let scrollableElement;\n    const scrollSpy = React.useCallback(() => {\n        if (!canUseDOM || !hasScrollSpy || !(scrollableElement instanceof HTMLElement)) {\n            return;\n        }\n        if (isLinkClicked.current) {\n            isLinkClicked.current = false;\n            return;\n        }\n        const scrollPosition = Math.ceil(scrollableElement.scrollTop + offset);\n        window.requestAnimationFrame(() => {\n            let newScrollItems = scrollItems;\n            // Items might have rendered after this component. Do a quick refresh.\n            if (!newScrollItems[0] || newScrollItems.includes(null)) {\n                newScrollItems = getScrollItems(children, []);\n                setScrollItems(newScrollItems);\n            }\n            const scrollElements = newScrollItems\n                .map((e, index) => ({\n                y: e ? e.offsetTop : null,\n                index\n            }))\n                .filter(({ y }) => y !== null)\n                .sort((e1, e2) => e2.y - e1.y);\n            for (const { y, index } of scrollElements) {\n                if (scrollPosition >= y) {\n                    return setActiveIndex(index);\n                }\n            }\n        });\n    }, [scrollItems, hasScrollSpy, scrollableElement, offset]);\n    React.useEffect(() => {\n        scrollableElement = document.querySelector(scrollableSelector);\n        if (!(scrollableElement instanceof HTMLElement)) {\n            return;\n        }\n        scrollableElement.addEventListener('scroll', scrollSpy);\n        return () => scrollableElement.removeEventListener('scroll', scrollSpy);\n    }, [scrollableSelector, scrollSpy]);\n    React.useEffect(() => {\n        scrollSpy();\n    }, []);\n    let jumpLinkIndex = 0;\n    const cloneChildren = (children) => !hasScrollSpy\n        ? children\n        : React.Children.map(children, (child) => {\n            if (child.type === JumpLinksItem) {\n                const { onClick: onClickProp, isActive: isActiveProp } = child.props;\n                const itemIndex = jumpLinkIndex++;\n                const scrollItem = scrollItems[itemIndex];\n                return React.cloneElement(child, {\n                    onClick(ev) {\n                        isLinkClicked.current = true;\n                        // Items might have rendered after this component. Do a quick refresh.\n                        let newScrollItems;\n                        if (!scrollItem) {\n                            newScrollItems = getScrollItems(children, []);\n                            setScrollItems(newScrollItems);\n                        }\n                        const newScrollItem = scrollItem || newScrollItems[itemIndex];\n                        if (newScrollItem) {\n                            // we have to support scrolling to an offset due to sticky sidebar\n                            const scrollableElement = document.querySelector(scrollableSelector);\n                            if (scrollableElement instanceof HTMLElement) {\n                                if (isResponsive(navRef.current)) {\n                                    // Remove class immediately so we can get collapsed height\n                                    if (navRef.current) {\n                                        navRef.current.classList.remove(styles.modifiers.expanded);\n                                    }\n                                    let stickyParent = navRef.current && navRef.current.parentElement;\n                                    while (stickyParent && !stickyParent.classList.contains(sidebarStyles.modifiers.sticky)) {\n                                        stickyParent = stickyParent.parentElement;\n                                    }\n                                    setIsExpanded(false);\n                                    if (stickyParent) {\n                                        offset += stickyParent.scrollHeight;\n                                    }\n                                }\n                                scrollableElement.scrollTo(0, newScrollItem.offsetTop - offset);\n                            }\n                            newScrollItem.focus();\n                            ev.preventDefault();\n                            setActiveIndex(itemIndex);\n                        }\n                        if (onClickProp) {\n                            onClickProp(ev);\n                        }\n                    },\n                    isActive: isActiveProp || activeIndex === itemIndex,\n                    children: cloneChildren(child.props.children)\n                });\n            }\n            else if (child.type === React.Fragment) {\n                return cloneChildren(child.props.children);\n            }\n            else if (child.type === JumpLinksList) {\n                return React.cloneElement(child, { children: cloneChildren(child.props.children) });\n            }\n            return child;\n        });\n    return (React.createElement(\"nav\", Object.assign({ className: css(styles.jumpLinks, isCentered && styles.modifiers.center, isVertical && styles.modifiers.vertical, formatBreakpointMods(expandable, styles), isExpanded && styles.modifiers.expanded, className), \"aria-label\": ariaLabel, ref: navRef }, props),\n        React.createElement(\"div\", { className: styles.jumpLinksMain },\n            React.createElement(\"div\", { className: css('pf-c-jump-links__header') },\n                expandable && (React.createElement(\"div\", { className: styles.jumpLinksToggle },\n                    React.createElement(Button, { variant: \"plain\", onClick: () => setIsExpanded(!isExpanded), \"aria-label\": toggleAriaLabel, \"aria-expanded\": isExpanded },\n                        React.createElement(\"span\", { className: styles.jumpLinksToggleIcon },\n                            React.createElement(AngleRightIcon, null)),\n                        label && React.createElement(\"span\", { className: css(styles.jumpLinksToggleText) },\n                            \" \",\n                            label,\n                            \" \")))),\n                label && alwaysShowLabel && React.createElement(\"div\", { className: css(styles.jumpLinksLabel) }, label)),\n            React.createElement(\"ul\", { className: styles.jumpLinksList }, cloneChildren(children)))));\n};\nJumpLinks.displayName = 'JumpLinks';\n//# sourceMappingURL=JumpLinks.js.map","/* eslint-disable react/jsx-no-useless-fragment */\n// See: https://github.com/i18next/react-i18next/issues/1543\nimport { Title } from \"@patternfly/react-core\";\nimport { HTMLProps } from \"react\";\n\nimport \"./form-panel.css\";\n\ntype ScrollPanelProps = HTMLProps & {\n  title: string;\n  scrollId: string;\n};\n\nexport const ScrollPanel = (props: ScrollPanelProps) => {\n  const { title, children, scrollId, ...rest } = props;\n  return (\n    
\n <>\n \n {title}\n \n {children}\n \n
\n );\n};\n","import {\n Grid,\n GridItem,\n GridProps,\n JumpLinks,\n JumpLinksItem,\n PageSection,\n} from \"@patternfly/react-core\";\nimport { Fragment, ReactNode, useMemo } from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { mainPageContentId } from \"../../App\";\nimport { FormPanel } from \"./FormPanel\";\nimport { ScrollPanel } from \"./ScrollPanel\";\n\nimport \"./scroll-form.css\";\n\ntype ScrollSection = {\n title: string;\n panel: ReactNode;\n isHidden?: boolean;\n};\n\ntype ScrollFormProps = GridProps & {\n sections: ScrollSection[];\n borders?: boolean;\n};\n\nconst spacesToHyphens = (string: string): string => {\n return string.replace(/\\s+/g, \"-\");\n};\n\nexport const ScrollForm = ({\n sections,\n borders = false,\n ...rest\n}: ScrollFormProps) => {\n const { t } = useTranslation(\"common\");\n const shownSections = useMemo(\n () => sections.filter(({ isHidden }) => !isHidden),\n [sections]\n );\n\n return (\n \n \n {shownSections.map(({ title, panel }) => {\n const scrollId = spacesToHyphens(title.toLowerCase());\n\n return (\n \n {borders ? (\n \n {panel}\n \n ) : (\n \n {panel}\n \n )}\n \n );\n })}\n \n \n \n \n {shownSections.map(({ title }) => {\n const scrollId = spacesToHyphens(title.toLowerCase());\n\n return (\n // note that JumpLinks currently does not work with spaces in the href\n \n {title}\n \n );\n })}\n \n \n \n \n );\n};\n"],"names":["styles$1","styles","JumpLinksList","_a","children","className","props","__rest","React.createElement","css","JumpLinksItem","isActive","href","node","onClick","childrenArr","React.Children","sublists","child","c_jump_links__toggle_Display","cssToggleDisplayVar","getScrollItems","res","canUseDOM","scrollNode","React.Fragment","isResponsive","jumpLinks","JumpLinks","isCentered","isVertical","label","ariaLabel","scrollableSelector","activeIndexProp","offset","expandable","isExpandedProp","alwaysShowLabel","toggleAriaLabel","hasScrollSpy","scrollItems","setScrollItems","React.useState","activeIndex","setActiveIndex","isExpanded","setIsExpanded","isLinkClicked","React.useRef","React.useEffect","navRef","scrollableElement","scrollSpy","React.useCallback","scrollPosition","newScrollItems","scrollElements","e","index","y","e1","e2","jumpLinkIndex","cloneChildren","onClickProp","isActiveProp","itemIndex","scrollItem","React.cloneElement","ev","newScrollItem","stickyParent","sidebarStyles","formatBreakpointMods","Button","AngleRightIcon","ScrollPanel","title","scrollId","rest","jsxs","Fragment","jsx","Title","spacesToHyphens","string","ScrollForm","sections","borders","useTranslation","shownSections","useMemo","isHidden","Grid","GridItem","panel","FormPanel","PageSection","mainPageContentId"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5]}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy