VaKeR CYBER ARMY
Logo of a company Server : Apache/2.4.41 (Ubuntu)
System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Directory :  /opt/mattermost/client/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //opt/mattermost/client/6549.adf8e3cb32b364f47100.js.map
{"version":3,"file":"6549.adf8e3cb32b364f47100.js","mappings":"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","sources":["webpack://mattermost-webapp/./src/components/component_library/hooks.tsx","webpack://mattermost-webapp/./src/components/component_library/utils.tsx","webpack://mattermost-webapp/./src/components/component_library/section_notice.cl.tsx","webpack://mattermost-webapp/./src/components/component_library/index.tsx"],"sourcesContent":["// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.\n// See LICENSE.txt for license information.\n\nimport React, {useCallback, useMemo, useState} from 'react';\n\nimport './component_library.scss';\n\ntype HookResult<T> = [\n    {[x: string]: T},\n    JSX.Element,\n]\nexport const useStringProp = (\n    propName: string,\n    defaultValue: string,\n    isTextarea: boolean,\n): HookResult<string> => {\n    const [value, setValue] = useState(defaultValue);\n    const onChange = useCallback((e: React.ChangeEvent<HTMLTextAreaElement | HTMLInputElement>) => setValue(e.target.value), []);\n    const selector = useMemo(() => {\n        const input = isTextarea ? (\n            <textarea\n                onChange={onChange}\n                value={value}\n            />\n        ) : (\n            <input\n                type='text'\n                onChange={onChange}\n                value={value}\n            />\n        );\n        return (\n            <label className='clInput'>\n                {`${propName}: `}\n                {input}\n            </label>\n        );\n    }, [onChange, value, propName, isTextarea]);\n    const preparedProp = useMemo(() => ({[propName]: value}), [propName, value]);\n\n    return [preparedProp, selector];\n};\n\nexport const useBooleanProp = (\n    propName: string,\n    defaultValue: boolean,\n): HookResult<boolean> => {\n    const [value, setValue] = useState(defaultValue);\n    const onChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => setValue(e.target.checked), []);\n    const selector = useMemo(() => (\n        <label className='clInput'>\n            {`${propName}: `}\n            <input\n                type='checkbox'\n                onChange={onChange}\n                checked={value}\n            />\n        </label>\n    ), [onChange, propName, value]);\n    const preparedProp = useMemo(() => ({[propName]: value}), [propName, value]);\n\n    return [preparedProp, selector];\n};\n\nconst ALL_OPTION = 'ALL';\ntype DropdownHookResult = [\n    {[x: string]: string} | undefined,\n    {[x: string]: string[]} | undefined,\n    JSX.Element,\n];\nexport const useDropdownProp = (\n    propName: string,\n    defaultValue: string,\n    options: string[],\n    allowAll: boolean,\n): DropdownHookResult => {\n    const [value, setValue] = useState(defaultValue);\n    const onChange = useCallback((e: React.ChangeEvent<HTMLSelectElement>) => setValue(e.target.value), []);\n    const renderedOptions = useMemo(() => {\n        const toReturn = options.map((v) => (\n            <option\n                key={v}\n                value={v}\n            >\n                {v}\n            </option>\n        ));\n        if (allowAll) {\n            toReturn.unshift((\n                <option\n                    key={ALL_OPTION}\n                    value={ALL_OPTION}\n                >\n                    {ALL_OPTION}\n                </option>\n            ));\n        }\n        return toReturn;\n    }, [options, allowAll]);\n    const selector = useMemo(() => (\n        <label className='clInput'>\n            {`${propName}: `}\n            <select\n                onChange={onChange}\n                value={value}\n            >\n                {renderedOptions}\n            </select>\n        </label>\n    ), [onChange, propName, renderedOptions, value]);\n    const preparedProp = useMemo(() => (value === ALL_OPTION ? undefined : ({[propName]: value})), [propName, value]);\n    const preparedPossibilities = useMemo(() => (value === ALL_OPTION ? ({[propName]: options}) : undefined), [propName, value, options]);\n    return [preparedProp, preparedPossibilities, selector];\n};\n","// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.\n// See LICENSE.txt for license information.\n\nimport React from 'react';\n\nfunction buildPropsLists(inputPossibilities: {[x: string]: any[]}): Array<{[x: string]: any}> {\n    const keys = Object.keys(inputPossibilities);\n    if (!keys.length) {\n        return [{}];\n    }\n\n    const selectedKey = keys[0];\n    const restPossibilities = {...inputPossibilities};\n    delete restPossibilities[selectedKey];\n    const subProps = buildPropsLists(restPossibilities);\n    const result: Array<{[x: string]: any}> = [];\n    inputPossibilities[selectedKey].forEach((v) => {\n        subProps.forEach((rest) => {\n            result.push({...rest, [selectedKey]: v});\n        });\n    });\n\n    return result;\n}\n\nfunction buildPropString(inputProps: {[x: string]: any}) {\n    const propKeys = Object.keys(inputProps);\n    if (!propKeys.length) {\n        return undefined;\n    }\n\n    const result = [(<>{'PROPS: '}</>)];\n    propKeys.forEach((v) => {\n        result.push((<><b>{v}</b>{`: ${inputProps[v]}, `}</>));\n    });\n    return result;\n}\n\nexport function buildComponent(\n    Component: React.ComponentType<any>,\n    propPossibilities: {[x: string]: any[]},\n    dropdownPossibilities: Array<{[x: string]: string[]} | undefined>,\n    setProps: Array<{[x: string]: any} | undefined>,\n) {\n    const res: React.ReactNode[] = [];\n    let currentPropPossibilities = {...propPossibilities};\n    dropdownPossibilities.forEach((v) => {\n        if (v) {\n            currentPropPossibilities = {\n                ...currentPropPossibilities,\n                ...v,\n            };\n        }\n    });\n\n    const propsVariations = buildPropsLists(currentPropPossibilities);\n    let builtSetProps = {};\n    setProps.forEach((v) => {\n        if (v) {\n            builtSetProps = {\n                ...builtSetProps,\n                ...v,\n            };\n        }\n    });\n    propsVariations.forEach((v) => {\n        const propString = buildPropString(v);\n        res.push(\n            <>\n                {Boolean(propString) && <p>{propString}</p>}\n                <Component\n                    {...builtSetProps}\n                    {...v}\n                />\n            </>,\n        );\n    });\n    return res;\n}\n","// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.\n// See LICENSE.txt for license information.\n\n/* eslint-disable no-alert */\n\nimport classNames from 'classnames';\nimport React, {useCallback, useMemo, useState} from 'react';\n\nimport SectionNotice from 'components/section_notice';\n\nimport {useBooleanProp, useDropdownProp, useStringProp} from './hooks';\nimport {buildComponent} from './utils';\n\nimport './component_library.scss';\n\nconst propPossibilities = {};\n\nconst sectionTypeValues = ['danger', 'info', 'success', 'welcome', 'warning'];\n\nconst primaryButton = {primaryButton: {onClick: () => window.alert('primary!'), text: 'Primary'}};\nconst secondaryButton = {secondaryButton: {onClick: () => window.alert('secondary!'), text: 'Secondary'}};\nconst linkButton = {linkButton: {onClick: () => window.alert('link!'), text: 'Link'}};\n\ntype Props = {\n    backgroundClass: string;\n};\n\nconst SectionNoticeComponentLibrary = ({\n    backgroundClass,\n}: Props) => {\n    const [text, textSelector] = useStringProp('text', 'Some text', true);\n    const [title, titleSelector] = useStringProp('title', 'Some text', false);\n    const [dismissable, dismissableSelector] = useBooleanProp('isDismissable', true);\n    const [sectionType, sectionTypePosibilities, sectionTypeSelector] = useDropdownProp('type', 'danger', sectionTypeValues, true);\n\n    const [showPrimaryButton, setShowPrimaryButton] = useState(false);\n    const onChangePrimaryButton = useCallback((e: React.ChangeEvent<HTMLInputElement>) => setShowPrimaryButton(e.target.checked), []);\n\n    const [showSecondaryButton, setShowSecondaryButton] = useState(false);\n    const onChangeSecondaryButton = useCallback((e: React.ChangeEvent<HTMLInputElement>) => setShowSecondaryButton(e.target.checked), []);\n\n    const [showLinkButton, setShowLinkButton] = useState(false);\n    const onChangeLinkButton = useCallback((e: React.ChangeEvent<HTMLInputElement>) => setShowLinkButton(e.target.checked), []);\n\n    const components = useMemo(\n        () => buildComponent(SectionNotice, propPossibilities, [sectionTypePosibilities], [\n            text,\n            title,\n            dismissable,\n            sectionType,\n            showPrimaryButton ? primaryButton : undefined,\n            showSecondaryButton ? secondaryButton : undefined,\n            showLinkButton ? linkButton : undefined,\n            {onDismissClick: () => window.alert('dismiss!')},\n        ]),\n        [dismissable, sectionType, sectionTypePosibilities, showLinkButton, showPrimaryButton, showSecondaryButton, text, title],\n    );\n\n    return (\n        <>\n            {textSelector}\n            {titleSelector}\n            {dismissableSelector}\n            {sectionTypeSelector}\n            <label className='clInput'>\n                {'Show primary button: '}\n                <input\n                    type='checkbox'\n                    onChange={onChangePrimaryButton}\n                    checked={showPrimaryButton}\n                />\n            </label>\n            <label className='clInput'>\n                {'Show secondary button: '}\n                <input\n                    type='checkbox'\n                    onChange={onChangeSecondaryButton}\n                    checked={showSecondaryButton}\n                />\n            </label>\n            <label className='clInput'>\n                {'Show link button: '}\n                <input\n                    type='checkbox'\n                    onChange={onChangeLinkButton}\n                    checked={showLinkButton}\n                />\n            </label>\n            <div className={classNames('clWrapper', backgroundClass)}>{components}</div>\n        </>\n    );\n};\n\nexport default SectionNoticeComponentLibrary;\n","// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.\n// See LICENSE.txt for license information.\n\nimport classNames from 'classnames';\nimport React, {useCallback, useEffect, useMemo, useState} from 'react';\n\nimport {Preferences} from 'mattermost-redux/constants';\n\nimport {applyTheme} from 'utils/utils';\n\nimport SectionNoticeComponentLibrary from './section_notice.cl';\n\nimport './component_library.scss';\n\nconst componentMap = {\n    'Section Notice': SectionNoticeComponentLibrary,\n};\n\ntype ComponentName = keyof typeof componentMap\nconst defaultComponent = Object.keys(componentMap)[0] as ComponentName;\n\ntype ThemeName = keyof typeof Preferences.THEMES;\nconst defaultTheme = Object.keys(Preferences.THEMES)[0] as ThemeName;\n\ntype BackgroundType = 'center' | 'sidebar';\n\nconst ComponentLibrary = () => {\n    const [selectedComponent, setSelectedComponent] = useState<ComponentName>(defaultComponent);\n    const onSelectComponent = useCallback((e: React.ChangeEvent<HTMLSelectElement>) => {\n        setSelectedComponent(e.target.value as ComponentName);\n    }, []);\n\n    const [selectedTheme, setSelectedTheme] = useState(defaultTheme);\n    const onSelectTheme = useCallback((e: React.ChangeEvent<HTMLSelectElement>) => {\n        setSelectedTheme(e.target.value as ThemeName);\n    }, []);\n\n    const [selectedBackground, setSelectedBackground] = useState<BackgroundType>('center');\n    const onSelectBackground = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n        setSelectedBackground(e.currentTarget.value as BackgroundType);\n    }, []);\n\n    useEffect(() => {\n        applyTheme(Preferences.THEMES[selectedTheme]);\n    }, [selectedTheme]);\n\n    const componentOptions = useMemo(() => {\n        return Object.keys(componentMap).map((v) => (\n            <option\n                key={v}\n                value={v}\n            >\n                {v}\n            </option>\n        ));\n    }, []);\n\n    const themeOptions = useMemo(() => {\n        return Object.keys(Preferences.THEMES).map((v) => (\n            <option\n                key={v}\n                value={v}\n            >\n                {v}\n            </option>\n        ));\n    }, []);\n\n    const SelectedComponent = componentMap[selectedComponent];\n    return (\n        <div className={'clWrapper'}>\n            <label className={'clInput'}>\n                {'Component: '}\n                <select\n                    onChange={onSelectComponent}\n                    value={selectedComponent}\n                >\n                    {componentOptions}\n                </select>\n            </label>\n            <label className={'clInput'}>\n                {'Theme: '}\n                <select\n                    onChange={onSelectTheme}\n                    value={selectedTheme}\n                >\n                    {themeOptions}\n                </select>\n            </label>\n            <label className={'clInput'}>\n                {'Background: '}\n                <label>\n                    {'Center channel'}\n                    <input\n                        onChange={onSelectBackground}\n                        name={'background'}\n                        value={'center'}\n                        type={'radio'}\n                        checked={selectedBackground === 'center'}\n                    />\n                </label>\n                <label>\n                    {'Sidebar'}\n                    <input\n                        onChange={onSelectBackground}\n                        name={'background'}\n                        value={'sidebar'}\n                        type={'radio'}\n                        checked={selectedBackground === 'sidebar'}\n                    />\n                </label>\n            </label>\n            <div className={'clWrapper'}>\n                <SelectedComponent\n                    backgroundClass={classNames({\n                        clCenterBackground: selectedBackground === 'center',\n                        clSidebarBackground: selectedBackground === 'sidebar',\n                    })}\n                />\n            </div>\n        </div>\n    );\n};\n\nexport default ComponentLibrary;\n"],"names":["useStringProp","propName","defaultValue","isTextarea","value","setValue","useState","onChange","useCallback","e","target","selector","useMemo","input","React","type","className","concat","ALL_OPTION","buildPropsLists","inputPossibilities","keys","Object","length","selectedKey","restPossibilities","_objectSpread","subProps","result","forEach","v","rest","push","buildComponent","Component","propPossibilities","dropdownPossibilities","setProps","res","currentPropPossibilities","propsVariations","builtSetProps","propString","inputProps","propKeys","buildPropString","Boolean","assign","sectionTypeValues","primaryButton","onClick","window","alert","text","secondaryButton","linkButton","SectionNoticeComponentLibrary","_ref","backgroundClass","textSelector","title","titleSelector","dismissable","dismissableSelector","useBooleanProp","checked","sectionType","sectionTypePosibilities","sectionTypeSelector","useDropdownProp","options","allowAll","renderedOptions","toReturn","map","key","unshift","undefined","showPrimaryButton","setShowPrimaryButton","onChangePrimaryButton","showSecondaryButton","setShowSecondaryButton","onChangeSecondaryButton","showLinkButton","setShowLinkButton","onChangeLinkButton","components","SectionNotice","onDismissClick","classNames","propTypes","_pt","isRequired","componentMap","defaultComponent","defaultTheme","Preferences","THEMES","ComponentLibrary","selectedComponent","setSelectedComponent","onSelectComponent","selectedTheme","setSelectedTheme","onSelectTheme","selectedBackground","setSelectedBackground","onSelectBackground","currentTarget","useEffect","applyTheme","componentOptions","themeOptions","SelectedComponent","name","clCenterBackground","clSidebarBackground"],"sourceRoot":""}

VaKeR 2022