feat_fix_n_refactor: exptracted checkbox as a reusable component and fix selec all and auto run,

rebasing extracted checkbox as reusable component
pull/1104/head
tizah 4 years ago
parent 420eb68b9e
commit ca85da35e2
  1. 8
      libs/remix-ui/static-analyser/src/lib/Checkbox/StaticAnalyserCheckedBox.tsx
  2. 63
      libs/remix-ui/static-analyser/src/lib/remix-ui-static-analyser.tsx

@ -24,7 +24,7 @@ const StaticAnalyserCheckedBox = ({
categoryId
}: StaticAnalyserCheckBoxProps) => {
return (
<div className="pt-1 h-80 mx-3 align-items-center listenOnNetwork_2A0YE0 custom-control custom-checkbox " onClick={onClick}>
<div className="listenOnNetwork_2A0YE0 custom-control custom-checkbox" style={{ display: 'flex', alignItems: 'center' }} onClick={onClick}>
<input
id={id}
type={inputType}
@ -34,9 +34,9 @@ const StaticAnalyserCheckedBox = ({
className="custom-control-input"
checked={checked}
/>
<label className="pt-1 form-check-label custom-control-label" id={`heading${categoryId}`} >
{name ? <h6>{itemName}</h6> : ''}
<p>{label}</p>
<label className="form-check-label custom-control-label" id={`heading${categoryId}`} style={{ paddingTop: '0.15rem' }}>
{name ? <div className="font-weight-bold">{itemName}</div> : ''}
{label}
</label>
</div>
)

@ -58,50 +58,50 @@ export const RemixUiStaticAnalyser = (props: RemixUiStaticAnalyserProps) => {
const [categoryIndex, setCategoryIndex] = useState(groupedModuleIndex(groupedModules))
const warningContainer = React.useRef(null)
const [runButtonState, setRunButtonState] = useState(true)
const [result, setResult] = useState({
lastCompilationResult: null,
lastCompilationSource: null,
currentFile: 'No file compiled'
})
const [, setModuleNameResult] = useState(null)
const [, setWarning] = useState({
msg: '',
options: {},
hasWarning: false,
warningErrors: []
})
const [warningState, setWarningState] = useState([])
const [state, dispatch] = useReducer(analysisReducer, initialState)
useEffect(() => {
<<<<<<< HEAD
compilation(props.analysisModule, dispatch)
}, [])
<<<<<<< HEAD
useEffect(() => {
if (autoRun) {
if (state.data !== null) {
run(state.data, state.source, state.file)
=======
=======
if (autoRun) {
const setCompilationResult = async (data, source, file) => {
await setResult({ lastCompilationResult: data, lastCompilationSource: source, currentFile: file })
}
>>>>>>> 8a85ae84e (fix failing test)
if (props.analysisModule) {
props.analysisModule.on(
'solidity',
'compilationFinished',
(file, source, languageVersion, data) => {
if (languageVersion.indexOf('soljson') !== 0) return
setCompilationResult(data, source, file)
if(categoryIndex.length > 0){
if (categoryIndex.length > 0) {
run(data, source, file)
}
}
)
>>>>>>> 19de4ba6b (commiting code to detect failing test)
}
} else {
setAutoRun(true)
}
return () => { }
<<<<<<< HEAD
}, [autoRun, categoryIndex, state])
const message = (name, warning, more, fileName, locationString) : string => {
@ -117,27 +117,12 @@ export const RemixUiStaticAnalyser = (props: RemixUiStaticAnalyserProps) => {
</span>`
)
}
=======
}, [autoRun, categoryIndex])
>>>>>>> 8a85ae84e (fix failing test)
const run = (lastCompilationResult, lastCompilationSource, currentFile) => {
<<<<<<< HEAD
if (autoRun) {
if (lastCompilationResult && categoryIndex.length > 0) {
let warningCount = 0
const warningMessage = []
=======
// const highlightLocation = async (location, fileName) => {
// await props.analysisModule.call('editor', 'discardHighlight')
// await props.analysisModule.call('editor', 'highlight', location, fileName)
// }
setResult({ lastCompilationResult, lastCompilationSource, currentFile })
if (lastCompilationResult && categoryIndex.length) {
setRunButtonState(false)
let warningCount = 0
const warningMessage = []
>>>>>>> 19de4ba6b (commiting code to detect failing test)
runner.run(lastCompilationResult, categoryIndex, results => {
results.map((result) => {
@ -215,25 +200,11 @@ export const RemixUiStaticAnalyser = (props: RemixUiStaticAnalyserProps) => {
if (categoryIndex.length > 0) {
props.event.trigger('staticAnaysisWarning', [warningCount])
}
<<<<<<< HEAD
} else {
if (categoryIndex.length) {
warningContainer.current.innerText = 'No compiled AST available'
}
props.event.trigger('staticAnaysisWarning', [-1])
=======
const groupedCategory = groupBy(resultArray, 'warningModuleName')
setWarningState(groupedCategory)
})
if(categoryIndex.length > 0){
props.event.trigger('staticAnaysisWarning', [warningCount])
}
} else {
setRunButtonState(true)
if (categoryIndex.length) {
warningContainer.current.innerText = 'No compiled AST available'
>>>>>>> 8a85ae84e (fix failing test)
}
}
}
@ -247,9 +218,8 @@ export const RemixUiStaticAnalyser = (props: RemixUiStaticAnalyserProps) => {
})
)
} else {
setCategoryIndex(_.uniq([...categoryIndex]))
setCategoryIndex(_.uniq([...categoryIndex, ...index]))
}
}
const handleCheckOrUncheckCategory = (category) => {
@ -342,6 +312,7 @@ export const RemixUiStaticAnalyser = (props: RemixUiStaticAnalyserProps) => {
<div className="analysis_3ECCBV px-3 pb-1">
<div className="my-2 d-flex flex-column align-items-left">
<div className="d-flex justify-content-between" id="staticanalysisButton">
<div className="d-flex justify-content-between">
<RemixUiCheckbox
id="checkAllEntries"
inputType="checkbox"

Loading…
Cancel
Save