-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy path.eslintcache
More file actions
1 lines (1 loc) · 58.3 KB
/
.eslintcache
File metadata and controls
1 lines (1 loc) · 58.3 KB
1
[{"D:\\coding\\vba_vault\\vba_react\\src\\index.js":"1","D:\\coding\\vba_vault\\vba_react\\src\\components\\mainAppLayout\\appHeader.js":"2","D:\\coding\\vba_vault\\vba_react\\src\\reducers\\index.js":"3","D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\index.js":"4","D:\\coding\\vba_vault\\vba_react\\src\\components\\about_page\\index.js":"5","D:\\coding\\vba_vault\\vba_react\\src\\reducers\\vaultBuilderReducer.js":"6","D:\\coding\\vba_vault\\vba_react\\src\\reducers\\appStateReducer.js":"7","D:\\coding\\vba_vault\\vba_react\\src\\reducers\\columnChoicesReducer.js":"8","D:\\coding\\vba_vault\\vba_react\\src\\actions\\index.js":"9","D:\\coding\\vba_vault\\vba_react\\src\\apis\\parseRequest.js":"10","D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\informationBoxContainer.js":"11","D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\menuConstructor.js":"12","D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\templateInputArea.js":"13","D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\templateDisplayConstructor.js":"14","D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\decorator_component\\navLinkBar.js":"15","D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\decorator_component\\setPasswordModal.js":"16","D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\decorator_component\\enterEditorPwModal.js":"17","D:\\coding\\vba_vault\\vba_react\\src\\components\\mainAppLayout\\testPage.js":"18"},{"size":719,"mtime":1624767103417,"results":"19","hashOfConfig":"20"},{"size":3671,"mtime":1625007795107,"results":"21","hashOfConfig":"20"},{"size":472,"mtime":1616901700000,"results":"22","hashOfConfig":"20"},{"size":3504,"mtime":1625026816216,"results":"23","hashOfConfig":"20"},{"size":2347,"mtime":1615535622000,"results":"24","hashOfConfig":"20"},{"size":1536,"mtime":1624681346961,"results":"25","hashOfConfig":"20"},{"size":1394,"mtime":1618553776000,"results":"26","hashOfConfig":"20"},{"size":456,"mtime":1613262140000,"results":"27","hashOfConfig":"20"},{"size":5471,"mtime":1624507162144,"results":"28","hashOfConfig":"20"},{"size":163,"mtime":1630550578104,"results":"29","hashOfConfig":"20"},{"size":7084,"mtime":1624941192036,"results":"30","hashOfConfig":"20"},{"size":10219,"mtime":1630561219391,"results":"31","hashOfConfig":"20"},{"size":8973,"mtime":1630558771689,"results":"32","hashOfConfig":"20"},{"size":7834,"mtime":1624766653577,"results":"33","hashOfConfig":"20"},{"size":1963,"mtime":1618039378000,"results":"34","hashOfConfig":"20"},{"size":4996,"mtime":1618381980000,"results":"35","hashOfConfig":"20"},{"size":1912,"mtime":1622086120628,"results":"36","hashOfConfig":"20"},{"size":427,"mtime":1625007776723,"results":"37","hashOfConfig":"20"},{"filePath":"38","messages":"39","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"40","usedDeprecatedRules":"41"},"owxyhk",{"filePath":"42","messages":"43","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"44","usedDeprecatedRules":"41"},{"filePath":"45","messages":"46","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"41"},{"filePath":"47","messages":"48","errorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":"49","usedDeprecatedRules":"41"},{"filePath":"50","messages":"51","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"41"},{"filePath":"52","messages":"53","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"41"},{"filePath":"54","messages":"55","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"41"},{"filePath":"56","messages":"57","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"41"},{"filePath":"58","messages":"59","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"41"},{"filePath":"60","messages":"61","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"41"},{"filePath":"62","messages":"63","errorCount":0,"warningCount":5,"fixableErrorCount":0,"fixableWarningCount":0,"source":"64","usedDeprecatedRules":"41"},{"filePath":"65","messages":"66","errorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"67","messages":"68","errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"69","usedDeprecatedRules":"41"},{"filePath":"70","messages":"71","errorCount":0,"warningCount":14,"fixableErrorCount":0,"fixableWarningCount":0,"source":"72","usedDeprecatedRules":"41"},{"filePath":"73","messages":"74","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"41"},{"filePath":"75","messages":"76","errorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":"77","usedDeprecatedRules":"41"},{"filePath":"78","messages":"79","errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"80","usedDeprecatedRules":"81"},{"filePath":"82","messages":"83","errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"84","usedDeprecatedRules":"41"},"D:\\coding\\vba_vault\\vba_react\\src\\index.js",["85"],"import React from \"react\";\r\nimport ReactDom from \"react-dom\";\r\nimport { Provider } from \"react-redux\";\r\nimport { createStore, applyMiddleware, compose } from \"redux\";\r\nimport { BrowserRouter, HashRouter } from \"react-router-dom\";\r\nimport reduxThunk from \"redux-thunk\";\r\nimport reducers from \"./reducers\";\r\nimport AppHeader from \"../src/components/mainAppLayout/appHeader\";\r\n\r\nconst composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;\r\nconst store = createStore(\r\n reducers,\r\n composeEnhancers(applyMiddleware(reduxThunk))\r\n);\r\n\r\nReactDom.render(\r\n <Provider store={store}>\r\n <BrowserRouter>\r\n <AppHeader />\r\n </BrowserRouter>\r\n </Provider>,\r\n document.getElementById(\"root\")\r\n);\r\n",["86","87"],"D:\\coding\\vba_vault\\vba_react\\src\\components\\mainAppLayout\\appHeader.js",["88","89"],"import React, { useEffect, useState } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Menu } from \"semantic-ui-react\";\r\nimport { Link, Route, Redirect, Switch, useHistory } from \"react-router-dom\";\r\nimport { setVaultID } from \"../../actions\";\r\nimport AboutPage from \"../about_page/index\";\r\nimport CustomVaultBuild from \"../create_vault/index\";\r\nimport TestPage from \"./testPage\";\r\n\r\nconst MainAppHeader = (props) => {\r\n\r\n const [activeItem, setActiveItem] = useState(\"vault-viewer\");\r\n const newVault = makeid(8) \r\n let history = useHistory()\r\n // let vaultID = null\r\n\r\n function makeid(length) {\r\n var result = \"\";\r\n var characters = \"abcdefghijklmnopqrstuvwxyz0123456789\";\r\n var charactersLength = characters.length;\r\n for (var i = 0; i < length; i++) {\r\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\r\n }\r\n return result;\r\n }\r\n\r\n useEffect(() => {\r\n console.log(\"mainAppHeader useeffect ran\");\r\n }, [activeItem]);\r\n\r\n return (\r\n <React.Fragment>\r\n <Menu className=\"top-app-menu\">\r\n {/*todo: vault-viewer => Special vault ID*/}\r\n <Menu.Item\r\n onClick={(syntheticE, menuProps) => {\r\n setActiveItem(menuProps.name);\r\n }}\r\n name=\"vault-viewer\"\r\n active={activeItem === \"vault-viewer\"}\r\n className=\"top-menu-btn\"\r\n >\r\n <Link\r\n to={\"/vaultID/\" + (props.vaultID !== \"\" ? props.vaultID + \"/\" : \"\")}\r\n >\r\n Vault Viewer\r\n </Link>\r\n </Menu.Item>\r\n\r\n <Menu.Item\r\n onClick={(syntheticE, menuProps) => {\r\n setActiveItem(menuProps.name);\r\n }}\r\n name=\"about-page\"\r\n active={activeItem === \"about-page\"}\r\n className=\"top-menu-btn\"\r\n >\r\n <Link to=\"/about\">What is this?</Link>\r\n </Menu.Item>\r\n\r\n <Menu.Item\r\n onClick={(syntheticE, menuProps) => {\r\n \r\n console.log('menu clicked ', newVault)\r\n \r\n // props.setVaultID(newVault);\r\n setActiveItem(menuProps.name);\r\n }}\r\n name=\"create-vault\"\r\n active={activeItem === \"create-vault\"}\r\n className=\"top-menu-btn\"\r\n >\r\n <Link\r\n to={\"/vaultID/\" + makeid(8)}\r\n >\r\n Create your own vault\r\n </Link>\r\n\r\n </Menu.Item>\r\n\r\n <Menu.Item\r\n onClick={(syntheticE, menuProps) => {\r\n history.push(\"/vaultID/\" + makeid(8))\r\n setActiveItem(menuProps.name);\r\n }}\r\n name=\"test-page\"\r\n active={activeItem === \"test-page\"}\r\n className=\"top-menu-btn\"\r\n >\r\n <Link\r\n // onClick={() => {\r\n // history.push(\"/vaultID/\" + makeid(8));\r\n // }}\r\n to={\"/testPage/\" + makeid(8)}\r\n >\r\n Test Page\r\n </Link>\r\n \r\n </Menu.Item>\r\n\r\n </Menu>\r\n\r\n\r\n {/* <Route exact path=\"/vaultId/\">\r\n <Redirect to=\"/about/\" />\r\n </Route> */}\r\n <Route exact path=\"/about\" component={AboutPage}></Route>\r\n {/* <Route\r\n path=\"/vaultID\"\r\n component={CustomVaultBuild}\r\n >\r\n </Route> */}\r\n <Route path=\"/testpage/:id?/:templateid?\" component={TestPage}></Route>\r\n <Route path=\"/vaultID/:id?/:templateid?\" component={CustomVaultBuild}></Route>\r\n\r\n </React.Fragment>\r\n );\r\n};\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n vaultID: state.appState[\"vaultid\"],\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, { setVaultID })(MainAppHeader);\r\n","D:\\coding\\vba_vault\\vba_react\\src\\reducers\\index.js",[],"D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\index.js",["90","91","92","93","94","95"],"import React, { useEffect, useState } from 'react';\r\nimport { setVaultID, setFirstTimeLoad, vaultViewSwitch, vaultMenuClickParse, vaultMenuParseMenuItem, vaultTagValueParse } from '../../actions';\r\nimport { Button } from 'react-bootstrap';\r\nimport { Switch, Route } from 'react-router-dom';\r\nimport parseRequestAxio from '../../apis/parseRequest';\r\nimport VaultMenu from './vault_constructors/menuConstructor'\r\nimport TemplateDisplay from './vault_constructors/templateDisplayConstructor'\r\nimport InformationBoxContainer from './vault_constructors/informationBoxContainer'\r\nimport { useHistory } from \"react-router-dom\"\r\nimport { connect } from 'react-redux';\r\nimport TemplateInputArea from './vault_constructors/templateInputArea';\r\n\r\nconst CustomVaultBuild = (props) => {\r\n let history = useHistory();\r\n\r\n function makeid(length) {\r\n var result = '';\r\n var characters = 'abcdefghijklmnopqrstuvwxyz0123456789';\r\n var charactersLength = characters.length;\r\n for ( var i = 0; i < length; i++ ) {\r\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\r\n }\r\n return result;\r\n }\r\n\r\n useEffect(()=>{\r\n console.log('create_vault useeffect rendered. vaultid: ', props.vaultid)\r\n let vaultIDExtract = /(?<=\\/vaultID\\/)(.{8})(?=\\/)|(?<=\\/vaultID\\/)(.{8})/\r\n let vaultIDCapture = window.location.href.match(vaultIDExtract)\r\n \r\n if ((vaultIDCapture === null) && (props.vaultid === '')) {\r\n let uniqueID = makeid(8)\r\n history.push('/vaultID/' + uniqueID)\r\n // props.setVaultID(uniqueID)\r\n \r\n } else {\r\n if (props.vaultid !== vaultIDCapture[0]) {\r\n // props.vaultViewSwitch(false)\r\n console.log('vault tag value parse runs here ', vaultIDCapture[0])\r\n props.setVaultID(vaultIDCapture[0])\r\n if (props.match.params.templateid){\r\n props.vaultMenuParseMenuItem(props.match.params.templateid)\r\n props.vaultTagValueParse(vaultIDCapture[0], props.match.params.templateid)\r\n \r\n }\r\n }\r\n }\r\n\r\n \r\n // setvaultidloaded(true)\r\n }, [props.vaultid, props.viewerMode])\r\n\r\n const templateDisplay = () => {\r\n \r\n if (!(props.viewerMode)) {\r\n return (\r\n <TemplateInputArea />\r\n )\r\n } else if (props.viewerMode) {\r\n return (\r\n <TemplateDisplay/>\r\n )\r\n }\r\n }\r\n\r\n const displayInformationBox = () => {\r\n if (props.viewerMode) {\r\n return <InformationBoxContainer />\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n const testFunction = () => {\r\n console.log('create vault does run')\r\n }\r\n return (\r\n <React.Fragment>\r\n <div id=\"main-app-layout\">\r\n {testFunction()}\r\n <VaultMenu />\r\n {templateDisplay()}\r\n {displayInformationBox()}\r\n </div>\r\n </React.Fragment>\r\n )\r\n \r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n vaultid : state.appState['vaultid'],\r\n viewerMode : state.appState['viewerMode']\r\n }\r\n}\r\n\r\nexport default connect(mapStateToProps, { setFirstTimeLoad, setVaultID, vaultMenuParseMenuItem, vaultTagValueParse, vaultMenuClickParse, vaultViewSwitch })(CustomVaultBuild);","D:\\coding\\vba_vault\\vba_react\\src\\components\\about_page\\index.js",[],"D:\\coding\\vba_vault\\vba_react\\src\\reducers\\vaultBuilderReducer.js",[],"D:\\coding\\vba_vault\\vba_react\\src\\reducers\\appStateReducer.js",[],"D:\\coding\\vba_vault\\vba_react\\src\\reducers\\columnChoicesReducer.js",[],"D:\\coding\\vba_vault\\vba_react\\src\\actions\\index.js",[],"D:\\coding\\vba_vault\\vba_react\\src\\apis\\parseRequest.js",[],"D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\informationBoxContainer.js",["96","97","98","99","100"],"import React, { useEffect, useState } from \"react\";\r\nimport { connect } from \"react-redux\";\r\nimport { Resizable } from \"re-resizable\";\r\nimport { propTypes } from \"react-bootstrap/esm/Image\";\r\nimport { Accordion, Icon, Button, Tab } from \"semantic-ui-react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { vaultFunctionClicked } from \"../../../actions\";\r\n\r\nconst InformationBoxContainer = (props) => {\r\n let history = useHistory();\r\n const [popupActive, setpopupActive] = useState(false);\r\n const [codeHash, setCodeHash] = useState(\"\");\r\n\r\n const codeBlockDescription = () => {\r\n // console.log('this is the code hash', functionSelected)\r\n let funcDesciptionTxt;\r\n let funcHeaderTxt;\r\n\r\n if (props.templateCode !== \"\") {\r\n if (props.functionSelected === \"overall_descrip\") {\r\n funcDesciptionTxt = props.templateTagData[\"overall_descrip\"];\r\n funcHeaderTxt = \"Overall Description\";\r\n } else {\r\n funcDesciptionTxt =\r\n props.templateTagData[\"func_descrip\"][props.functionSelected];\r\n funcHeaderTxt = props.functionSelected + \" Description\";\r\n }\r\n\r\n funcDesciptionTxt =\r\n funcDesciptionTxt === \"\" ? \"No Descrption Provided\" : funcDesciptionTxt;\r\n\r\n return (\r\n <div>\r\n <p className=\"descrip-header\">{funcHeaderTxt}</p>\r\n <p className=\"descrip-txt\">{funcDesciptionTxt}</p>\r\n </div>\r\n );\r\n }\r\n\r\n return null;\r\n };\r\n\r\n useEffect(() => {\r\n console.log(\"info box container loaded\");\r\n }, [\r\n props.menuOptions,\r\n props.vaultMenuClicked,\r\n props.menuItemSelected,\r\n props.functionList,\r\n ]);\r\n\r\n const paneConstructor = () => {\r\n let indPanes;\r\n if (props.menuOptions !== \"\" && props.menuItemSelected === \"\") {\r\n return <div>Must click on a template to start</div>;\r\n } else if (\r\n (props.menuItemSelected !== \"\" && props.functionList !== \"\") ||\r\n props.templateCode !== \"\"\r\n ) {\r\n indPanes = [\r\n {\r\n menuItem: \"Subroutines\",\r\n render: () => populateFunctions(\"sub\"),\r\n },\r\n {\r\n menuItem: \"Functions\",\r\n render: () => populateFunctions(\"func\"),\r\n },\r\n ];\r\n\r\n return (\r\n <Tab\r\n className=\"breakdown-btn-cont\"\r\n menu={{ pointing: true }}\r\n panes={indPanes}\r\n />\r\n );\r\n }\r\n };\r\n\r\n const copyCodeLinkOnClick = (codeBlockName) => {\r\n let fullUrl =\r\n window.location.origin + history.location.pathname + \"#\" + codeBlockName;\r\n // console.log ('this is the fullUrl ', fullUrl)\r\n navigator.clipboard.writeText(fullUrl);\r\n };\r\n\r\n const getCopyLinkPopupStatus = (codeBlockName) => {\r\n if (codeBlockName === codeHash) {\r\n return \"copy-link-popup active\";\r\n } else {\r\n return \"copy-link-popup\";\r\n }\r\n };\r\n\r\n const getFunctionButtonActiveStatus = (codeBlockName) => {\r\n if (codeBlockName === props.functionSelected) {\r\n return \"breakdown-btn active\";\r\n } else {\r\n return \"breakdown-btn\";\r\n }\r\n };\r\n\r\n const populateFunctions = (mode = null) => {\r\n let functionButtonArea;\r\n if (mode === \"sub\") {\r\n functionButtonArea = props.functionList[\"sub\"].map((funcName) => {\r\n return (\r\n <div className=\"code-btn-breakdown-cont\">\r\n <Button\r\n basic\r\n color=\"blue\"\r\n className={getFunctionButtonActiveStatus(funcName)}\r\n onClick={() => {\r\n document.getElementById(funcName).scrollIntoView();\r\n props.vaultFunctionClicked(funcName);\r\n history.push(\"#\" + funcName);\r\n }}\r\n >\r\n {funcName}\r\n </Button>\r\n <div className={getCopyLinkPopupStatus(funcName)}>Link Copied</div>\r\n <Button\r\n basic\r\n color=\"blue\"\r\n className=\"copy-link\"\r\n onMouseLeave={() => {\r\n setCodeHash(\"\");\r\n }}\r\n onClick={() => {\r\n copyCodeLinkOnClick(funcName);\r\n setCodeHash(funcName);\r\n }}\r\n >\r\n 🔗\r\n </Button>\r\n </div>\r\n );\r\n });\r\n\r\n functionButtonArea.splice(\r\n 0,\r\n 0,\r\n <div className=\"code-btn-breakdown-cont\">\r\n <Button\r\n basic\r\n color=\"blue\"\r\n className={getFunctionButtonActiveStatus(\"overall_descrip\")}\r\n onClick={() => {\r\n props.vaultFunctionClicked(\"overall_descrip\");\r\n }}\r\n >\r\n Overall Description\r\n </Button>\r\n </div>\r\n );\r\n } else if (mode === \"func\") {\r\n functionButtonArea = props.functionList[\"function\"].map((funcName) => {\r\n return (\r\n <div className=\"code-btn-breakdown-cont\">\r\n <Button\r\n className={getFunctionButtonActiveStatus(funcName)}\r\n basic\r\n color=\"blue\"\r\n onClick={() => {\r\n document.getElementById(funcName).scrollIntoView();\r\n props.vaultFunctionClicked(funcName);\r\n history.push(\"#\" + funcName);\r\n }}\r\n >\r\n {funcName}\r\n </Button>\r\n <div className={getCopyLinkPopupStatus(funcName)}>Link Copied</div>\r\n <Button\r\n className=\"copy-link\"\r\n basic\r\n color=\"blue\"\r\n onMouseLeave={() => {\r\n setCodeHash(\"\");\r\n }}\r\n onClick={() => {\r\n copyCodeLinkOnClick(funcName);\r\n setCodeHash(funcName);\r\n }}\r\n >\r\n 🔗\r\n </Button>\r\n </div>\r\n );\r\n });\r\n }\r\n\r\n // return <Tab.Pane attached={false}>{functionButtonArea}</Tab.Pane>\r\n return functionButtonArea;\r\n };\r\n\r\n return (\r\n <Resizable\r\n defaultSize={{\r\n width: 377,\r\n height: \"calc(100vh - 44px)\",\r\n }}\r\n className=\"informationBox\"\r\n minWidth=\"400px\"\r\n maxWidth=\"677px\"\r\n enable={{\r\n top: false,\r\n right: false,\r\n bottom: false,\r\n left: true,\r\n topRight: false,\r\n bottomRight: false,\r\n bottomLeft: false,\r\n topLeft: false,\r\n }}\r\n >\r\n <div className=\"template-code-breakdown\">{paneConstructor()}</div>\r\n\r\n <div className=\"template-info-cont\">{codeBlockDescription()}</div>\r\n </Resizable>\r\n );\r\n};\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n functionSelected: state.appState[\"functionSelected\"],\r\n templateTagData: state.templateTags[\"data\"],\r\n menuOptions: state.vaultSessionMenuData[\"data\"],\r\n vaultMenuClicked: state.appState[\"menuClickedFlag\"],\r\n menuItemSelected: state.appState[\"menuIdSelected\"],\r\n functionList: state.templateTags[\"funcList\"],\r\n templateCode: state.templateTags[\"templateCode\"],\r\n };\r\n};\r\n\r\nexport default connect(mapStateToProps, { vaultFunctionClicked })(\r\n InformationBoxContainer\r\n);\r\n","D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\menuConstructor.js",["101","102","103","104","105","106"],"D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\templateInputArea.js",["107","108","109"],"import React, { useEffect, useState } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { connect } from \"react-redux\";\r\nimport { setVaultID, vaultTemplateSubmitted } from \"../../../actions\";\r\nimport parseRequestAxio from \"../../../apis/parseRequest\";\r\nimport { Button, Label } from \"semantic-ui-react\";\r\nimport { Formik, Form, Field } from \"formik\";\r\nimport Modal from \"@material-ui/core/Modal\";\r\nimport Backdrop from \"@material-ui/core/Backdrop\";\r\nimport Fade from \"@material-ui/core/Fade\";\r\n\r\nconst TemplateInputArea = (props) => {\r\n let history = useHistory();\r\n const [passwordDisplay, showPasswordDisplay] = useState(false);\r\n const [postStatus, setPostStatus] = useState(false);\r\n const [editorPw, setEditorPw] = useState(\"\");\r\n\r\n useEffect(() => {\r\n setEditorPw(makeid(4));\r\n console.log(\"use effect ran on templateInputArea\");\r\n }, []);\r\n\r\n const resetVault = () => {\r\n let tmp_vaultid;\r\n tmp_vaultid = makeid(8);\r\n history.push(\"/vaultID/\" + tmp_vaultid);\r\n props.setVaultID(tmp_vaultid);\r\n };\r\n\r\n const validateInputs = (inputValues) => {\r\n let error;\r\n\r\n const getErrorMessage = (mode, parsingType = null) => {\r\n // let parsingRegexBegin = new RegExp(\"(?<!_\\n)^((private |public |friend |static )*)\" + mode + \".+\", 'gim')\r\n let parsingRegexBegin = new RegExp(\r\n \"(?<!_\\n)^((private |public |friend |static )*)(\" + mode + \" ).+$\",\r\n \"gim\"\r\n );\r\n let parsingRegexEnd = new RegExp(\"(?<!_\\\\n)^end \" + mode + \".*\", \"gim\");\r\n let parsingStatus = { codeExists: false, errorMsg: null };\r\n let parsingResultBegin = inputValues.match(parsingRegexBegin);\r\n let parsingResultEnd = inputValues.match(parsingRegexEnd);\r\n\r\n console.log(\"parsing results \", parsingResultBegin, parsingResultEnd);\r\n\r\n if (parsingResultBegin || parsingResultEnd) {\r\n parsingStatus[\"codeExists\"] = true;\r\n }\r\n\r\n if (parsingStatus[\"codeExists\"]) {\r\n if (\r\n !parsingResultBegin ||\r\n !parsingResultEnd ||\r\n parsingResultBegin.length !== parsingResultEnd.length\r\n ) {\r\n parsingStatus[\"errorMsg\"] =\r\n \"One or more of your \" + mode + \" is not closed\";\r\n }\r\n }\r\n\r\n return parsingStatus;\r\n };\r\n\r\n let functionParsingStatus = getErrorMessage(\"function\");\r\n let subParsingStatus = getErrorMessage(\"sub\");\r\n if (\r\n !functionParsingStatus[\"codeExists\"] &&\r\n !subParsingStatus[\"codeExists\"]\r\n ) {\r\n error = \"The code input area cannot be empty\";\r\n }\r\n\r\n if (functionParsingStatus[\"errorMsg\"]) {\r\n error = functionParsingStatus[\"errorMsg\"];\r\n }\r\n\r\n if (subParsingStatus[\"errorMsg\"]) {\r\n error = subParsingStatus[\"errorMsg\"];\r\n }\r\n\r\n return error;\r\n };\r\n\r\n const validateCateName = (values) => {\r\n let errors;\r\n if (values === \"test\") {\r\n errors = \"this is supposed to happen\";\r\n } else if (!values) {\r\n errors = \"no input here\";\r\n }\r\n\r\n return errors;\r\n };\r\n\r\n const validateTemplateName = (values) => {\r\n let errors;\r\n if (!values) {\r\n errors = \"Must have an input here\";\r\n }\r\n\r\n return errors;\r\n };\r\n\r\n const postNewVault = async (values) => {\r\n values[\"vaultID\"] = props.vaultID;\r\n let response = await parseRequestAxio.post(\r\n \"/postNewVaultTemplate/\",\r\n values\r\n );\r\n if (props.templateCodeFlag) {\r\n props.vaultTemplateSubmitted(false);\r\n } else {\r\n props.vaultTemplateSubmitted(true);\r\n }\r\n };\r\n\r\n const displayAreaSize = () => {\r\n if (props.viewerMode) {\r\n return \"column2-area active\";\r\n } else {\r\n return \"column2-area\";\r\n }\r\n };\r\n\r\n const handleClose = () => {\r\n showPasswordDisplay(false);\r\n };\r\n\r\n function makeid(length) {\r\n var result = \"\";\r\n var characters = \"abcdefghijklmnopqrstuvwxyz0123456789\";\r\n var charactersLength = characters.length;\r\n for (var i = 0; i < length; i++) {\r\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\r\n }\r\n return result;\r\n }\r\n\r\n const generateEditPassword = () => {\r\n console.log(\"generate Edit Password loaded\");\r\n if (passwordDisplay && !postStatus) {\r\n console.log(\"this is the post status ==>\", postStatus);\r\n parseRequestAxio.post(\"/postEditPassword/\", {\r\n vaultId: props.vaultID,\r\n editorPw: editorPw,\r\n });\r\n setPostStatus(true);\r\n }\r\n\r\n return null;\r\n };\r\n\r\n const showEditPassword = () => {\r\n if (postStatus) {\r\n return <h1>{editorPw}</h1>;\r\n } else {\r\n return null;\r\n }\r\n };\r\n\r\n return (\r\n <React.Fragment>\r\n <Modal\r\n aria-labelledby=\"transition-modal-title\"\r\n aria-describedby=\"transition-modal-description\"\r\n className=\"set-pw-modal-cont\"\r\n open={passwordDisplay}\r\n onClose={handleClose}\r\n closeAfterTransition\r\n BackdropComponent={Backdrop}\r\n BackdropProps={{\r\n timeout: 500,\r\n }}\r\n >\r\n <Fade in={passwordDisplay}>\r\n <div className=\"show-pw-modal\">\r\n <h1>\r\n COPY DOWN THIS PASSWORD AS IT WILL ALLOW YOU TO DELETE TEMPLATES\r\n </h1>\r\n {generateEditPassword()}\r\n {showEditPassword()}\r\n </div>\r\n </Fade>\r\n </Modal>\r\n <Formik\r\n initialValues={{\r\n vbaInput: \"\",\r\n templateNameInput: \"\",\r\n templateCateInput: \"\",\r\n }}\r\n onSubmit={\r\n (values) => {\r\n values.templateCateInput =\r\n values.templateCateInput === \"\"\r\n ? \"All Category\"\r\n : values.templateCateInput;\r\n postNewVault(values);\r\n if (props.firstTimeLoad) {\r\n console.log(\"showPasswordIdsplay shows up\");\r\n showPasswordDisplay(true);\r\n }\r\n } // }\r\n }\r\n validateOnChange={false}\r\n >\r\n {({ errors, touched, validateField, values, validateForm }) => (\r\n <div className={displayAreaSize()}>\r\n <Form className=\"vba-codeinput\">\r\n <div className=\"input-options-cont\">\r\n <div>\r\n <label\r\n className=\"inputTemplateLabel\"\r\n htmlFor=\"templateCateInput\"\r\n >\r\n Template Category Name:\r\n </label>\r\n <Field\r\n id=\"templateCateInput\"\r\n name=\"templateCateInput\"\r\n className=\"templateShortInput\"\r\n placeholder='Defaults to \"All Category\"'\r\n value={values.templateCateInput}\r\n />\r\n </div>\r\n\r\n <div style={{ marginTop: \"20px\" }}>\r\n <label\r\n className=\"inputTemplateLabel\"\r\n htmlFor=\"templateNameInput\"\r\n >\r\n Template Name:\r\n </label>\r\n <Field\r\n validate={validateTemplateName}\r\n id=\"templateNameInput\"\r\n name=\"templateNameInput\"\r\n className=\"templateShortInput\"\r\n value={values.templateNameInput}\r\n />\r\n </div>\r\n {errors.templateNameInput && touched.templateNameInput && (\r\n <Label id=\"template-name-error\" basic color=\"red\" pointing>\r\n {errors.templateNameInput}\r\n </Label>\r\n )}\r\n\r\n <div className=\"inputAreaTitle\">\r\n <label className=\"inputTemplateLabel\" htmlFor=\"vbaInput\">\r\n Input your vba code\r\n </label>\r\n <Button id=\"add-code-btn\" type=\"submit\" basic color=\"blue\">\r\n {\" \"}\r\n Add Code{\" \"}\r\n </Button>\r\n </div>\r\n </div>\r\n {errors.vbaInput && touched.vbaInput && (\r\n <Label id=\"template-input-error\" basic color=\"red\">\r\n {errors.vbaInput}\r\n </Label>\r\n )}\r\n <Field\r\n validate={validateInputs}\r\n as=\"textarea\"\r\n id=\"vbaInput\"\r\n name=\"vbaInput\"\r\n className=\"vba-code-textarea\"\r\n placeholder=\"VBA Code Here\"\r\n value={values.vbaInput}\r\n />\r\n </Form>\r\n </div>\r\n )}\r\n </Formik>\r\n </React.Fragment>\r\n );\r\n};\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n vaultID: state.appState[\"vaultid\"],\r\n templateCodeFlag: state.appState[\"templateSubmittedFlag\"],\r\n viewerMode: state.appState[\"viewerMode\"],\r\n firstTimeLoad: state.appState[\"firstTimeLoad\"],\r\n };\r\n};\r\nexport default connect(mapStateToProps, { setVaultID, vaultTemplateSubmitted })(\r\n TemplateInputArea\r\n);\r\n","D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\templateDisplayConstructor.js",["110","111","112","113","114","115","116","117","118","119","120","121","122","123"],"import React, { useState, useRef, useEffect, createRef } from 'react';\r\nimport { Accordion, Icon, Button} from 'semantic-ui-react';\r\nimport { connect } from 'react-redux';\r\nimport { Alert } from 'react-bootstrap'\r\nimport SyntaxHighlighter from 'react-syntax-highlighter';\r\nimport { vaultFunctionClicked } from '../../../actions'\r\nimport { useHistory } from 'react-router-dom';\r\nimport NavLinkBar from './decorator_component/navLinkBar'\r\n\r\nconst VaultTemplateDisplay = (props) => {\r\n let history = useHistory()\r\n const [popUp, setPopUp] = useState(false)\r\n const [activeAccordianIndex, setActiveAccordianIndex] = useState([0, 1])\r\n const templateCodeRef = useRef();\r\n let previousState;\r\n \r\n\r\n useEffect( () => {\r\n console.log('vaultTemplateDisplay useeffect for menuItemSelected is run' )\r\n if (props.templateCode !== '') {\r\n if (history.location.hash === \"\") {\r\n props.vaultFunctionClicked(\"overall_descrip\");\r\n } else {\r\n let functionId = history.location.hash.split(\"#\")[1];\r\n if (functionId in props.functionList) {\r\n props.vaultFunctionClicked(functionId);\r\n document.getElementById(functionId).scrollIntoView();\r\n }\r\n }\r\n }\r\n }, [props.menuItemSelected, props.functionList])\r\n\r\n const getActiveStatus = (mode, functionName) => {\r\n if (functionName == props.functionFocus) {\r\n if (mode === \"code\") {\r\n return 'codeBlock codeDiv highlighted'\r\n }\r\n } else {\r\n return 'codeBlock'\r\n }\r\n }\r\n\r\n const markTemplateCode = () => {\r\n let func_block_regex = new RegExp('^((private |public |friend |static )*function ([a-zA-Z1-9 ()_,]+)\\n*?.*?\\nend function.*?)', 'igms')\r\n let sub_block_regex = new RegExp('^((private |public |friend |static )*sub ([a-zA-Z1-9 ()_,]+)\\n*?.*?\\nend sub.*?)', 'igms')\r\n\r\n let func_title_regex = new RegExp('^(private |public |friend |static )*function ([a-zA-Z1-9 ()_,]+)', 'igms')\r\n let sub_title_regex = new RegExp('^(private |public |friend |static )*sub ([a-zA-Z1-9 ()_,]+)', 'igms')\r\n\r\n let all_code = [...props.templateCode.matchAll(sub_block_regex), ...props.templateCode.matchAll(func_block_regex)]\r\n let all_titles = [...props.templateCode.matchAll(func_title_regex), ...props.templateCode.matchAll(sub_title_regex)]\r\n\r\n console.log('all code ===>', all_code, 'all titles ===>', all_titles)\r\n\r\n let [split_code_sub, split_code_func] = props.templateCode.split(new RegExp('end sub', 'i'))\r\n split_code_func = split_code_func != null ? split_code_func.split(new RegExp('end function', 'i')) : ''\r\n split_code_sub = split_code_sub != null ? split_code_sub.split(new RegExp('end sub', 'i')) : ''\r\n\r\n let code = all_code.map((codeBlock) => {\r\n if (codeBlock !== '') {\r\n let codeBlockTitle = codeBlock[codeBlock.length - 1].split('(')[0]\r\n return (\r\n <React.Fragment>\r\n <div id={codeBlockTitle} className={getActiveStatus('code', codeBlockTitle)}>\r\n <SyntaxHighlighter language='vba'>\r\n {codeBlock}\r\n </SyntaxHighlighter>\r\n </div>\r\n </React.Fragment>\r\n \r\n )\r\n }\r\n })\r\n \r\n return code\r\n\r\n }\r\n\r\n const handleTitleClick = (index) => {\r\n let tmp_index\r\n if (activeAccordianIndex.includes(index)){\r\n activeAccordianIndex.splice(activeAccordianIndex.indexOf(index), 1)\r\n setActiveAccordianIndex([...activeAccordianIndex])\r\n \r\n } else {\r\n activeAccordianIndex.push(index)\r\n setActiveAccordianIndex([...activeAccordianIndex])\r\n } \r\n }\r\n\r\n const linkBarFunctions = {\r\n rawCodeCopy : () => {\r\n navigator.clipboard.writeText(props.templateCode)\r\n setPopUp(true)\r\n },\r\n\r\n vaultLinkCopy : () => {\r\n navigator.clipboard.writeText(window.location.origin + '/vaultID/' + props.vaultid)\r\n setPopUp(true)\r\n },\r\n\r\n templateLinkCopy : () => {\r\n navigator.clipboard.writeText(window.location.origin + history.location.pathname)\r\n setPopUp(true)\r\n }\r\n }\r\n const getCopyLinkPopupStatus = () => {\r\n if (popUp) {\r\n return 'linkbar-popup active'\r\n } else {\r\n return 'linkbar-popup'\r\n }\r\n }\r\n\r\n const linkBar = () => {\r\n return (\r\n <div className=\"link-bar\">\r\n <button \r\n onClick={linkBarFunctions['rawCodeCopy']} \r\n className=\"link-btn\"\r\n onMouseLeave={()=>{setPopUp(false)}}> \r\n Raw Code\r\n </button>\r\n <button \r\n onClick={linkBarFunctions['vaultLinkCopy']} \r\n className=\"link-btn\"\r\n onMouseLeave={()=>{setPopUp(false)}}> \r\n Vault Link \r\n </button>\r\n <button \r\n onClick={linkBarFunctions['templateLinkCopy']} \r\n className=\"link-btn\"\r\n onMouseLeave={()=>{setPopUp(false)}}>\r\n Template Link\r\n </button>\r\n <div className={getCopyLinkPopupStatus()}>\r\n Link Copied\r\n </div>\r\n </div>\r\n )\r\n }\r\n\r\n const renderTemplateCode = () => {\r\n let split_code;\r\n if ((props.menuClicked !== '') || (props.templateCode)){\r\n if (props.templateCode !== '') {\r\n split_code = markTemplateCode()\r\n // previousTemplateCode = UsePrevious(props.templateCode)\r\n }\r\n \r\n return (\r\n <React.Fragment>\r\n <NavLinkBar/>\r\n {split_code}\r\n </React.Fragment>\r\n )\r\n\r\n } else {\r\n\r\n return null\r\n\r\n }\r\n }\r\n\r\n const displayCode = () => {\r\n\r\n return (\r\n\r\n <Accordion className=\"template-display-inner-cont\">\r\n <Accordion.Title\r\n onClick={() => handleTitleClick(1)}\r\n active={activeAccordianIndex.includes(1)}\r\n index={1}\r\n className=\"menu-header-h1 menu-choice\"\r\n >\r\n <Icon name='dropdown' />\r\n CODE\r\n </Accordion.Title>\r\n\r\n <Accordion.Content \r\n className=\"template-code-cont\" \r\n active={activeAccordianIndex.includes(1)}>\r\n {renderTemplateCode()}\r\n </Accordion.Content>\r\n </Accordion>\r\n )\r\n \r\n }\r\n\r\n return (\r\n <React.Fragment>\r\n <div className=\"macro-generator-container\">\r\n {displayCode()}\r\n </div>\r\n </React.Fragment>\r\n )\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return {\r\n menuClicked : state.appState['menuClickedFlag'],\r\n templateCode : state.templateTags['templateCode'],\r\n vaultMenuClicked: state.appState['menuClickedFlag'],\r\n vaultid: state.appState['vaultid'],\r\n menuOptions: state.vaultSessionMenuData['data'],\r\n functionList: state.templateTags['data']['func_descrip'],\r\n functionFocus: state.appState['functionSelected'],\r\n menuItemSelected: state.appState['menuIdSelected']\r\n }\r\n}\r\nexport default connect( mapStateToProps, { vaultFunctionClicked })(VaultTemplateDisplay);","D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\decorator_component\\navLinkBar.js",[],"D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\decorator_component\\setPasswordModal.js",["124","125","126","127"],"import React from 'react';\r\nimport { connect } from 'react-router-dom'\r\nimport {Field, Formik, Form} from 'formik';\r\nimport { Button, Label} from 'semantic-ui-react';\r\nimport Switch from 'react-switch'\r\nimport ReactDOM from 'react-dom';\r\n\r\nconst SetPasswordModal = (props) => {\r\n\r\n const validateInitialPw = (value) => {\r\n let error;\r\n let pwRegex = new RegExp(\"\\W\", 'gm')\r\n if (value.match(/\\W+/g)){\r\n error = \"Must not contain any non-words\"\r\n } else if (value === ''){\r\n error = \"Must not be blank unless no password is enabled\"\r\n }\r\n\r\n return error\r\n }\r\n\r\n const validateConfirmPw = (initialPw, value) => {\r\n console.log(initialPw, value)\r\n let error;\r\n if (initialPw !== value){\r\n error = \"The passwords don't match! DUMBASS\"\r\n } else if (value === '') {\r\n error = \"Must not be blank unless no password is enabled. DUMBASS\"\r\n }\r\n console.log('this is the error', error)\r\n return error\r\n }\r\n\r\n\r\n return (\r\n <React.Fragment>\r\n <Formik \r\n initialValues = {{\r\n 'initialPw':'',\r\n 'confirmPw':''\r\n }}\r\n \r\n onSubmit = {(values)=>{\r\n console.log('formik set pw values', values)\r\n }}\r\n >\r\n \r\n {({values, errors, touched}) => (\r\n \r\n <Form className='set-pw-form'>\r\n <p className=\"set-pw-maintitle\">Enter a password for deleting permissions</p>\r\n <div className=\"set-pw-inner-cont\" style={{display:\"flex\"}}>\r\n <p className=\"set-pw-subtitle\">Don't set any password</p>\r\n <Switch\r\n // checked={props.viewerMode}\r\n // onChange={() => {props.vaultViewSwitch(props.viewerMode == true ? false : true )}}\r\n onColor=\"#86d3ff\"\r\n onHandleColor=\"#2693e6\"\r\n handleDiameter={30}\r\n uncheckedIcon={false}\r\n checkedIcon={false}\r\n boxShadow=\"0px 1px 5px rgba(0, 0, 0, 0.6)\"\r\n activeBoxShadow=\"0px 0px 1px 10px rgba(0, 0, 0, 0.2)\"\r\n height={20}\r\n width={48}\r\n className=\"react-switch adding-priv-toggle\"\r\n id=\"material-switch\"\r\n />\r\n <Button basic className=\"adding-priv-info\" color='green'>\r\n ?\r\n </Button>\r\n </div>\r\n <div className=\"set-pw-inner-cont\" style={{display:\"flex\"}}>\r\n <p className=\"set-pw-subtitle\">Enable for Adding templates</p>\r\n <Switch\r\n // checked={props.viewerMode}\r\n // onChange={() => {props.vaultViewSwitch(props.viewerMode == true ? false : true )}}\r\n onColor=\"#86d3ff\"\r\n onHandleColor=\"#2693e6\"\r\n handleDiameter={30}\r\n uncheckedIcon={false}\r\n checkedIcon={false}\r\n boxShadow=\"0px 1px 5px rgba(0, 0, 0, 0.6)\"\r\n activeBoxShadow=\"0px 0px 1px 10px rgba(0, 0, 0, 0.2)\"\r\n height={20}\r\n width={48}\r\n className=\"react-switch adding-priv-toggle\"\r\n id=\"material-switch\"\r\n />\r\n <Button basic className=\"adding-priv-info\" color='green'>\r\n ?\r\n </Button>\r\n </div>\r\n <div className=\"set-pw-input\">\r\n <Field type=\"password\"\r\n validate={validateInitialPw} \r\n id=\"initialPw\" \r\n name=\"initialPw\"\r\n value={values.initialPw}></Field>\r\n {errors.initialPw && touched.initialPw && <Label className=\"set-pw-error\" basic color='red' pointing>{errors.initialPw}</Label>}\r\n \r\n <Field type=\"password\"\r\n validate={(value) => validateConfirmPw(values.initialPw, value)}\r\n id=\"confirmPw\" \r\n name=\"confirmPw\"\r\n value={values.confirmPw}></Field>\r\n\r\n {errors.confirmPw && touched.confirmPw && <Label className=\"set-pw-error\" basic color='red' pointing>{errors.confirmPw}</Label>}\r\n <Button type=\"submit\" basic color='blue'> Submit Password </Button>\r\n </div>\r\n \r\n </Form>\r\n )}\r\n </Formik>\r\n </React.Fragment>\r\n )\r\n}\r\n\r\nexport default SetPasswordModal;","D:\\coding\\vba_vault\\vba_react\\src\\components\\create_vault\\vault_constructors\\decorator_component\\enterEditorPwModal.js",["128","129"],"import React from 'react';\r\nimport { Formik, Form, Field } from 'formik';\r\nimport { Button, Label} from 'semantic-ui-react';\r\nimport parseRequestAxio from '../../../../apis/parseRequest';\r\nimport { connect } from 'react-redux';\r\n\r\n\r\nconst EditorPwModalForm = (props) => {\r\n \r\n const validateEditorPw = (value) => {\r\n console.log('this validate runs here')\r\n let validPw;\r\n let error;\r\n parseRequestAxio.get('/validateEditPw/', {'vaultId': props.vaultID, 'editorPw': value}).then((response) => {\r\n console.log('response from validateEditorPw', response)\r\n validPw = response;\r\n })\r\n\r\n error = \"test error\"\r\n return error\r\n }\r\n\r\n return (\r\n <React.Fragment>\r\n <Formik \r\n initialValues = {{\r\n 'initialPw':''\r\n }}\r\n \r\n onSubmit = {(values)=>{\r\n console.log('formik set pw values', values)\r\n }}\r\n >\r\n \r\n {({values, validate, errors, touched}) => (\r\n \r\n <Form className='set-pw-form'>\r\n <p className=\"set-pw-maintitle\">Enter the password for editing permissions</p>\r\n <Field type=\"password\" \r\n id=\"initialPw\"\r\n name=\"initialPw\"\r\n validate={validateEditorPw}\r\n value={values.initialPw}> \r\n </Field>\r\n {errors.initialPw && touched.initialPw && <div>{errors.initialPw}</div>}\r\n <Button type=\"submit\" basic color='blue'> Submit </Button>\r\n </Form>\r\n )}\r\n </Formik>\r\n </React.Fragment>\r\n )\r\n}\r\n\r\nconst mapStateToProps = (state) => {\r\n return (\r\n {'vaultID': state.appState['vaultid']}\r\n )\r\n}\r\n\r\nexport default connect(mapStateToProps)(EditorPwModalForm)",["130","131"],"D:\\coding\\vba_vault\\vba_react\\src\\components\\mainAppLayout\\testPage.js",["132"],"import React, { useEffect } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\nconst TestPage = (props) => {\r\n useEffect( () => {\r\n console.log(\"this is history from useEffect\", props.match);\r\n })\r\n const testHistory = () => {\r\n console.log(\"this is history \", props.match);\r\n };\r\n return (\r\n <div>\r\n <h1>test Page</h1>\r\n {testHistory()}\r\n </div>\r\n );\r\n};\r\n\r\nexport default TestPage;\r\n",{"ruleId":"133","severity":1,"message":"134","line":5,"column":25,"nodeType":"135","messageId":"136","endLine":5,"endColumn":35},{"ruleId":"137","replacedBy":"138"},{"ruleId":"139","replacedBy":"140"},{"ruleId":"133","severity":1,"message":"141","line":4,"column":23,"nodeType":"135","messageId":"136","endLine":4,"endColumn":31},{"ruleId":"133","severity":1,"message":"142","line":4,"column":33,"nodeType":"135","messageId":"136","endLine":4,"endColumn":39},{"ruleId":"133","severity":1,"message":"143","line":1,"column":28,"nodeType":"135","messageId":"136","endLine":1,"endColumn":36},{"ruleId":"133","severity":1,"message":"144","line":3,"column":10,"nodeType":"135","messageId":"136","endLine":3,"endColumn":16},{"ruleId":"133","severity":1,"message":"142","line":4,"column":10,"nodeType":"135","messageId":"136","endLine":4,"endColumn":16},{"ruleId":"133","severity":1,"message":"145","line":4,"column":18,"nodeType":"135","messageId":"136","endLine":4,"endColumn":23},{"ruleId":"133","severity":1,"message":"146","line":5,"column":8,"nodeType":"135","messageId":"136","endLine":5,"endColumn":24},{"ruleId":"147","severity":1,"message":"148","line":51,"column":8,"nodeType":"149","endLine":51,"endColumn":41,"suggestions":"150"},{"ruleId":"133","severity":1,"message":"151","line":4,"column":10,"nodeType":"135","messageId":"136","endLine":4,"endColumn":19},{"ruleId":"133","severity":1,"message":"152","line":5,"column":10,"nodeType":"135","messageId":"136","endLine":5,"endColumn":19},{"ruleId":"133","severity":1,"message":"153","line":5,"column":21,"nodeType":"135","messageId":"136","endLine":5,"endColumn":25},{"ruleId":"133","severity":1,"message":"154","line":11,"column":10,"nodeType":"135","messageId":"136","endLine":11,"endColumn":21},{"ruleId":"133","severity":1,"message":"155","line":11,"column":23,"nodeType":"135","messageId":"136","endLine":11,"endColumn":37},{"ruleId":"133","severity":1,"message":"156","line":14,"column":35,"nodeType":"135","messageId":"136","endLine":14,"endColumn":40},{"ruleId":"133","severity":1,"message":"157","line":15,"column":10,"nodeType":"135","messageId":"136","endLine":15,"endColumn":20},{"ruleId":"147","severity":1,"message":"158","line":33,"column":6,"nodeType":"149","endLine":33,"endColumn":45,"suggestions":"159"},{"ruleId":"147","severity":1,"message":"158","line":44,"column":6,"nodeType":"149","endLine":44,"endColumn":73,"suggestions":"160"},{"ruleId":"161","severity":1,"message":"162","line":102,"column":47,"nodeType":"163","messageId":"164","endLine":102,"endColumn":49},{"ruleId":"133","severity":1,"message":"165","line":158,"column":9,"nodeType":"135","messageId":"136","endLine":158,"endColumn":23},{"ruleId":"133","severity":1,"message":"166","line":23,"column":9,"nodeType":"135","messageId":"136","endLine":23,"endColumn":19},{"ruleId":"133","severity":1,"message":"167","line":84,"column":9,"nodeType":"135","messageId":"136","endLine":84,"endColumn":25},{"ruleId":"133","severity":1,"message":"168","line":106,"column":9,"nodeType":"135","messageId":"136","endLine":106,"endColumn":17},{"ruleId":"133","severity":1,"message":"169","line":1,"column":46,"nodeType":"135","messageId":"136","endLine":1,"endColumn":55},{"ruleId":"133","severity":1,"message":"144","line":2,"column":27,"nodeType":"135","messageId":"136","endLine":2,"endColumn":33},{"ruleId":"133","severity":1,"message":"170","line":4,"column":10,"nodeType":"135","messageId":"136","endLine":4,"endColumn":15},{"ruleId":"133","severity":1,"message":"171","line":14,"column":11,"nodeType":"135","messageId":"136","endLine":14,"endColumn":26},{"ruleId":"133","severity":1,"message":"172","line":15,"column":9,"nodeType":"135","messageId":"136","endLine":15,"endColumn":22},{"ruleId":"147","severity":1,"message":"173","line":31,"column":8,"nodeType":"149","endLine":31,"endColumn":52,"suggestions":"174"},{"ruleId":"161","severity":1,"message":"162","line":34,"column":26,"nodeType":"163","messageId":"164","endLine":34,"endColumn":28},{"ruleId":"175","severity":1,"message":"176","line":44,"column":43,"nodeType":"177","messageId":"164","endLine":44,"endColumn":135},{"ruleId":"175","severity":1,"message":"176","line":45,"column":42,"nodeType":"177","messageId":"164","endLine":45,"endColumn":124},{"ruleId":"133","severity":1,"message":"178","line":56,"column":53,"nodeType":"135","messageId":"136","endLine":56,"endColumn":68},{"ruleId":"133","severity":1,"message":"179","line":57,"column":51,"nodeType":"135","messageId":"136","endLine":57,"endColumn":65},{"ruleId":"180","severity":1,"message":"181","line":59,"column":45,"nodeType":"182","messageId":"183","endLine":59,"endColumn":47},{"ruleId":"133","severity":1,"message":"184","line":80,"column":13,"nodeType":"135","messageId":"136","endLine":80,"endColumn":22},{"ruleId":"133","severity":1,"message":"185","line":115,"column":11,"nodeType":"135","messageId":"136","endLine":115,"endColumn":18},{"ruleId":"133","severity":1,"message":"186","line":2,"column":10,"nodeType":"135","messageId":"136","endLine":2,"endColumn":17},{"ruleId":"133","severity":1,"message":"187","line":6,"column":8,"nodeType":"135","messageId":"136","endLine":6,"endColumn":16},{"ruleId":"133","severity":1,"message":"188","line":12,"column":13,"nodeType":"135","messageId":"136","endLine":12,"endColumn":20},{"ruleId":"189","severity":1,"message":"190","line":12,"column":35,"nodeType":"177","messageId":"191","endLine":12,"endColumn":36,"suggestions":"192"},{"ruleId":"133","severity":1,"message":"156","line":3,"column":18,"nodeType":"135","messageId":"136","endLine":3,"endColumn":23},{"ruleId":"133","severity":1,"message":"193","line":16,"column":13,"nodeType":"135","messageId":"136","endLine":16,"endColumn":20},{"ruleId":"137","replacedBy":"194"},{"ruleId":"139","replacedBy":"195"},{"ruleId":"133","severity":1,"message":"157","line":2,"column":10,"nodeType":"135","messageId":"136","endLine":2,"endColumn":20},"no-unused-vars","'HashRouter' is defined but never used.","Identifier","unusedVar","no-native-reassign",["196"],"no-negated-in-lhs",["197"],"'Redirect' is defined but never used.","'Switch' is defined but never used.","'useState' is defined but never used.","'Button' is defined but never used.","'Route' is defined but never used.","'parseRequestAxio' is defined but never used.","react-hooks/exhaustive-deps","React Hook useEffect has missing dependencies: 'history' and 'props'. Either include them or remove the dependency array. However, 'props' will change when *any* prop changes, so the preferred fix is to destructure the 'props' object outside of the useEffect call and refer to those specific props inside useEffect.","ArrayExpression",["198"],"'propTypes' is defined but never used.","'Accordion' is defined but never used.","'Icon' is defined but never used.","'popupActive' is assigned a value but never used.","'setpopupActive' is assigned a value but never used.","'Label' is defined but never used.","'useHistory' is defined but never used.","React Hook useEffect has a missing dependency: 'props'. Either include it or remove the dependency array. However, 'props' will change when *any* prop changes, so the preferred fix is to destructure the 'props' object outside of the useEffect call and refer to those specific props inside useEffect.",["199"],["200"],"eqeqeq","Expected '===' and instead saw '=='.","BinaryExpression","unexpected","'showSetPwModal' is assigned a value but never used.","'resetVault' is assigned a value but never used.","'validateCateName' is assigned a value but never used.","'response' is assigned a value but never used.","'createRef' is defined but never used.","'Alert' is defined but never used.","'templateCodeRef' is assigned a value but never used.","'previousState' is defined but never used.","React Hook useEffect has missing dependencies: 'history.location.hash' and 'props'. Either include them or remove the dependency array. However, 'props' will change when *any* prop changes, so the preferred fix is to destructure the 'props' object outside of the useEffect call and refer to those specific props inside useEffect.",["201"],"no-control-regex","Unexpected control character(s) in regular expression: \\x0a, \\x0a.","Literal","'split_code_func' is assigned a value but never used.","'split_code_sub' is assigned a value but never used.","array-callback-return","Array.prototype.map() expects a value to be returned at the end of arrow function.","ArrowFunctionExpression","expectedAtEnd","'tmp_index' is defined but never used.","'linkBar' is assigned a value but never used.","'connect' is defined but never used.","'ReactDOM' is defined but never used.","'pwRegex' is assigned a value but never used.","no-useless-escape","Unnecessary escape character: \\W.","unnecessaryEscape",["202","203"],"'validPw' is assigned a value but never used.",["196"],["197"],"no-global-assign","no-unsafe-negation",{"desc":"204","fix":"205"},{"desc":"206","fix":"207"},{"desc":"208","fix":"209"},{"desc":"210","fix":"211"},{"messageId":"212","fix":"213","desc":"214"},{"messageId":"215","fix":"216","desc":"217"},"Update the dependencies array to be: [history, props, props.vaultid, props.viewerMode]",{"range":"218","text":"219"},"Update the dependencies array to be: [props, props.templateCodeFlag, props.vaultid]",{"range":"220","text":"221"},"Update the dependencies array to be: [props.menuOptions, props.menuItemSelected, props.vaultMenuClicked, props]",{"range":"222","text":"223"},"Update the dependencies array to be: [props.menuItemSelected, props.functionList, props, history.location.hash]",{"range":"224","text":"225"},"removeEscape",{"range":"226","text":"227"},"Remove the `\\`. This maintains the current functionality.","escapeBackslash",{"range":"228","text":"229"},"Replace the `\\` with `\\\\` to include the actual backslash character.",[2274,2307],"[history, props, props.vaultid, props.viewerMode]",[1246,1285],"[props, props.templateCodeFlag, props.vaultid]",[1603,1670],"[props.menuOptions, props.menuItemSelected, props.vaultMenuClicked, props]",[1295,1339],"[props.menuItemSelected, props.functionList, props, history.location.hash]",[379,380],"",[379,379],"\\"]