finish addressing review comments

pull/2904/head
Joseph Izang 2 years ago
parent b4c7696918
commit f11362b68d
  1. 4
      libs/remix-ui/run-tab/src/lib/components/contractDropdownUI.tsx
  2. 30
      libs/remix-ui/run-tab/src/lib/components/contractGUI.tsx
  3. 17
      libs/remix-ui/run-tab/src/lib/components/deployButton.tsx
  4. 28
      libs/remix-ui/run-tab/src/lib/components/deployInput.tsx
  5. 37
      libs/remix-ui/run-tab/src/lib/components/instanceContainerUI.tsx
  6. 12
      libs/remix-ui/run-tab/src/lib/components/multiDeployInput.tsx
  7. 22
      libs/remix-ui/run-tab/src/lib/components/universalDappUI.tsx

@ -323,8 +323,8 @@ export function ContractDropdownUI(props: ContractDropdownProps) {
checked={props.ipfsCheckedState} checked={props.ipfsCheckedState}
/> />
<OverlayTrigger placement={'right'} overlay={ <OverlayTrigger placement={'right'} overlay={
<Tooltip className="text-nowrap" id="remixIpfsUdappTooltip"> <Tooltip className="text-wrap" id="remixIpfsUdappTooltip">
<span>{"Publishing the source code and metadata to IPFS facilitates source code verification using Sourcify and will greatly foster contract adoption (auditing, debugging, calling it, etc...)"}</span> <span>Publishing the source code and metadata to IPFS facilitates source code verification <br />using Sourcify and will greatly foster contract adoption (auditing, debugging, calling it, etc...)</span>
</Tooltip> </Tooltip>
}> }>
<label <label

@ -248,10 +248,10 @@ export function ContractGUI (props: ContractGUIProps) {
style={{ display: toggleContainer ? "none" : "flex" }} style={{ display: toggleContainer ? "none" : "flex" }}
> >
<OverlayTrigger <OverlayTrigger
placement={"right"} placement={"right-start"}
overlay={ overlay={
<Tooltip <Tooltip
className="text-nowrap" className="text-wrap"
id="remixUdappInstanceButtonTooltip" id="remixUdappInstanceButtonTooltip"
> >
<span>{buttonOptions.title}</span> <span>{buttonOptions.title}</span>
@ -337,15 +337,23 @@ export function ContractGUI (props: ContractGUIProps) {
return ( return (
<div className="udapp_multiArg" key={index}> <div className="udapp_multiArg" key={index}>
<label htmlFor={inp.name}> {inp.name}: </label> <label htmlFor={inp.name}> {inp.name}: </label>
<input <OverlayTrigger
ref={(el) => { placement="left-end"
multiFields.current[index] = el; overlay={
}} <Tooltip id="udappContractActionsTooltip" className="text-nowrap">
className="form-control" <span>{inp.name}</span>
placeholder={inp.type} </Tooltip>
title={inp.name} }
data-id={`multiParamManagerInput${inp.name}`} >
/> <input
ref={(el) => {
multiFields.current[index] = el;
}}
className="form-control"
placeholder={inp.type}
data-id={`multiParamManagerInput${inp.name}`}
/>
</OverlayTrigger>
</div> </div>
); );
})} })}

@ -1,6 +1,6 @@
import React, { useState } from 'react' import React, { useState } from 'react'
import { DeployButtonProps } from '../types' import { DeployButtonProps } from '../types'
import { ButtonGroup, Dropdown } from 'react-bootstrap' import { ButtonGroup, Dropdown, OverlayTrigger, Tooltip } from 'react-bootstrap'
export function DeployButton (props: DeployButtonProps) { export function DeployButton (props: DeployButtonProps) {
const [showOptions, setShowOptions] = useState<boolean>(false) const [showOptions, setShowOptions] = useState<boolean>(false)
@ -24,9 +24,18 @@ export function DeployButton (props: DeployButtonProps) {
} }
</Dropdown.Menu> </Dropdown.Menu>
</Dropdown> : </Dropdown> :
<button onClick={props.handleActionClick} title={props.buttonOptions.title} className={`udapp_instanceButton ${props.buttonOptions.widthClass} btn btn-sm ${props.buttonOptions.classList}`} data-id={props.buttonOptions.dataId}> <OverlayTrigger
Deploy placement="right-start"
</button> overlay={
<Tooltip id="deployButtonTooltip" className="text-nowrap">
<span>{props.buttonOptions.title}</span>
</Tooltip>
}
>
<button onClick={props.handleActionClick} className={`udapp_instanceButton ${props.buttonOptions.widthClass} btn btn-sm ${props.buttonOptions.classList}`} data-id={props.buttonOptions.dataId}>
Deploy
</button>
</OverlayTrigger>
} }
</> </>
) )

@ -1,4 +1,5 @@
import React from 'react' import React from 'react'
import { OverlayTrigger, Tooltip } from 'react-bootstrap'
import { DeployInputProps } from '../types' import { DeployInputProps } from '../types'
import { DeployButton } from './deployButton' import { DeployButton } from './deployButton'
@ -6,15 +7,24 @@ export function DeployInput (props: DeployInputProps) {
return ( return (
<div className="udapp_contractActionsContainerSingle pt-2" style={{ display: 'flex' }}> <div className="udapp_contractActionsContainerSingle pt-2" style={{ display: 'flex' }}>
<DeployButton buttonOptions={props.buttonOptions} selectedIndex={props.selectedIndex} setSelectedIndex={props.setSelectedIndex} handleActionClick={props.handleActionClick} deployOptions={props.deployOptions} /> <DeployButton buttonOptions={props.buttonOptions} selectedIndex={props.selectedIndex} setSelectedIndex={props.setSelectedIndex} handleActionClick={props.handleActionClick} deployOptions={props.deployOptions} />
<input <OverlayTrigger
className="form-control" placement="right-start"
data-id={props.funcABI.type === 'fallback' || props.funcABI.type === 'receive' ? `'(${props.funcABI.type}')` : 'multiParamManagerBasicInputField'} overlay={
placeholder={props.inputs} <Tooltip id="deployInputTooltip" className="text-nowrap">
title={props.funcABI.type === 'fallback' || props.funcABI.type === 'receive' ? `'(${props.funcABI.type}')` : props.inputs} <span>{props.funcABI.type === 'fallback' || props.funcABI.type === 'receive' ? `'(${props.funcABI.type}')` : props.inputs}</span>
onChange={props.handleBasicInput} </Tooltip>
ref={props.basicInputRef} }
style={{ visibility: !props.inputs ? 'hidden' : 'visible' }} >
/> <input
className="form-control"
data-id={props.funcABI.type === 'fallback' || props.funcABI.type === 'receive' ? `'(${props.funcABI.type}')` : 'multiParamManagerBasicInputField'}
placeholder={props.inputs}
title={props.funcABI.type === 'fallback' || props.funcABI.type === 'receive' ? `'(${props.funcABI.type}')` : props.inputs}
onChange={props.handleBasicInput}
ref={props.basicInputRef}
style={{ visibility: !props.inputs ? 'hidden' : 'visible' }}
/>
</OverlayTrigger>
</div> </div>
) )
} }

@ -1,5 +1,6 @@
// eslint-disable-next-line no-use-before-define // eslint-disable-next-line no-use-before-define
import React from 'react' import React from 'react'
import { OverlayTrigger, Tooltip } from 'react-bootstrap'
import { InstanceContainerProps } from '../types' import { InstanceContainerProps } from '../types'
import { UniversalDappUI } from './universalDappUI' import { UniversalDappUI } from './universalDappUI'
@ -12,15 +13,35 @@ export function InstanceContainerUI (props: InstanceContainerProps) {
return ( return (
<div className="udapp_instanceContainer mt-3 border-0 list-group-item"> <div className="udapp_instanceContainer mt-3 border-0 list-group-item">
<label className="udapp_deployedContracts d-flex justify-content-between align-items-center pl-2 mb-2" <div className="d-flex justify-content-between align-items-center pl-2 mb-2">
title="Autogenerated generic user interfaces for interaction with deployed contracts"> <OverlayTrigger
Deployed Contracts placement="top-start"
overlay={
<Tooltip className="text-nowrap" id="deployAndRunClearInstancesTooltip">
<span>{"Autogenerated generic user interfaces for interaction with deployed contracts"}</span>
</Tooltip>
}
>
<label className="udapp_deployedContracts">
Deployed Contracts
</label>
</OverlayTrigger>
{ instanceList.length > 0 { instanceList.length > 0
? <i className="mr-2 udapp_icon far fa-trash-alt" data-id="deployAndRunClearInstances" onClick={clearInstance} ? (
title="Clear instances list and reset recorder" aria-hidden="true"> <OverlayTrigger
</i> : null placement="right"
} overlay={
</label> <Tooltip className="text-nowrap" id="deployAndRunClearInstancesTooltip">
<span>{"Clear instances list and reset recorder"}</span>
</Tooltip>
}
>
<i className="mr-2 udapp_icon far fa-trash-alt" data-id="deployAndRunClearInstances" onClick={clearInstance} aria-hidden="true">
</i>
</OverlayTrigger>
) : null
}
</div>
{ instanceList.length > 0 { instanceList.length > 0
? <div> { props.instances.instanceList.map((instance, index) => { ? <div> { props.instances.instanceList.map((instance, index) => {
return <UniversalDappUI return <UniversalDappUI

@ -1,4 +1,5 @@
import React, { useRef, useState } from 'react' import React, { useRef, useState } from 'react'
import { OverlayTrigger, Tooltip } from 'react-bootstrap'
import { MultiDeployInputProps } from '../types' import { MultiDeployInputProps } from '../types'
import { DeployButton } from './deployButton' import { DeployButton } from './deployButton'
@ -16,7 +17,16 @@ export function MultiDeployInput(props: MultiDeployInputProps) {
return ( return (
<div className="udapp_multiArg" key={index}> <div className="udapp_multiArg" key={index}>
<label htmlFor={inp.name}> {inp.name}: </label> <label htmlFor={inp.name}> {inp.name}: </label>
<input ref={el => { multiFields.current[index] = el }} className="form-control" placeholder={inp.type} title={inp.name} data-id={`multiParamManagerInput${inp.name}`} /> <OverlayTrigger
placement="left-end"
overlay={
<Tooltip id="udappMultiArgTooltip" className="text-nowrap">
<span>{inp.name}</span>
</Tooltip>
}
>
<input ref={el => { multiFields.current[index] = el }} className="form-control" placeholder={inp.type} data-id={`multiParamManagerInput${inp.name}`} />
</OverlayTrigger>
</div>) </div>)
})} })}
</div> </div>

@ -244,14 +244,22 @@ export function UniversalDappUI (props: UdappProps) {
</button> </button>
</div> </div>
</div> </div>
<button <OverlayTrigger
className="udapp_udappClose mr-1 p-1 btn btn-secondary align-items-center" placement="right"
data-id="universalDappUiUdappClose" overlay={
onClick={remove} <Tooltip className="text-nowrap" id="udapp_udappCloseTooltip">
title="Remove from the list" <span>{'Remove from the list'}</span>
</Tooltip>
}
> >
<i className="udapp_closeIcon fas fa-times" aria-hidden="true"></i> <button
</button> className="udapp_udappClose mr-1 p-1 btn btn-secondary align-items-center"
data-id="universalDappUiUdappClose"
onClick={remove}
>
<i className="udapp_closeIcon fas fa-times" aria-hidden="true"></i>
</button>
</OverlayTrigger>
</div> </div>
<div <div
className="udapp_cActionsWrapper" className="udapp_cActionsWrapper"

Loading…
Cancel
Save