import React from 'react'; import distanceInWordsToNow from 'date-fns/distance_in_words_to_now'; import Value from 'react-redux-values'; import remcalc from 'remcalc'; import titleCase from 'title-case'; import { Row, Col, Anchor, FormGroup, Input, FormLabel, Checkbox, Button, Table, TableThead, TableTr, TableTh, TableTd, TableTbody, Footer, StatusLoader, Message, MessageTitle, MessageDescription, Popover, PopoverContainer, PopoverTarget, PopoverItem, PopoverDivider, QueryBreakpoints, DotIcon, StartIcon, StopIcon, ResetIcon, DeleteIcon, ArrowIcon, ActionsIcon } from 'joyent-ui-toolkit'; const { SmallOnly, Medium } = QueryBreakpoints; const stateColor = { PROVISIONING: 'primary', RUNNING: 'green', STOPPING: 'grey', STOPPED: 'grey', DELETED: 'secondaryActive', FAILED: 'red' }; export const MenuForm = ({ handleSubmit, searchable }) => (
Filter instances
); export const Actions = ({ submitting = false, allowedActions = {}, onStart = () => null, onStop = () => null, onReboot = () => null, onDelete = () => null }) => ( ); export const Item = ({ id = '', name, state, created, allowedActions = {}, submitting, onStart, onStop, onReboot, onDelete }) => ( {name} {({ value: mutating }) => mutating ? ( ) : ( {' '} {titleCase(state)} ) } {distanceInWordsToNow(created)} {id.substring(0, 7)} onStart({ id })} > Start onStop({ id })} > Stop onReboot({ id })}>Reboot onDelete({ id })}>Delete ); export default ({ items = [], allowedActions = {}, sortBy = 'name', sortOrder = 'desc', error = null, submitting = false, actionable = false, allSelected = false, toggleSelectAll = () => null, onStart = () => null, onStop = () => null, onReboot = () => null, onDelete = () => null, onSortBy = () => null }) => (
{error ? ( Ooops! {error} ) : null} onSortBy('name')} left middle actionable> Name {sortBy !== 'name' ? null : ( )} onSortBy('state')} left middle actionable > Status {sortBy !== 'state' ? null : ( )} onSortBy('created')} left middle actionable > Created {sortBy !== 'created' ? null : ( )} onSortBy('id')} left middle actionable > Short ID {sortBy !== 'id' ? null : ( )} {items.map(({ id, ...rest }) => ( ))}
{actionable ? ( ) : null} );