feat(xo-web/proxies): move proxy actions to dropdown (#5688)
This commit is contained in:
@@ -27,3 +27,4 @@
|
|||||||
- @xen-orchestra/xapi minor
|
- @xen-orchestra/xapi minor
|
||||||
- @xen-orchestra/backups minor
|
- @xen-orchestra/backups minor
|
||||||
- xo-server patch
|
- xo-server patch
|
||||||
|
- xo-web minor
|
||||||
|
|||||||
@@ -186,13 +186,14 @@ const CollapsedActions = decorate([
|
|||||||
computed: {
|
computed: {
|
||||||
dropdownId: generateId,
|
dropdownId: generateId,
|
||||||
actions: (_, { actions, items, userData }) =>
|
actions: (_, { actions, items, userData }) =>
|
||||||
actions.map(({ disabled, grouped, handler, icon, label, redirectOnSuccess }) => {
|
actions.map(({ disabled, grouped, handler, icon, label, level, redirectOnSuccess }) => {
|
||||||
const actionItems = Array.isArray(items) || !grouped ? items : [items]
|
const actionItems = Array.isArray(items) || !grouped ? items : [items]
|
||||||
return {
|
return {
|
||||||
disabled: handleFnProps(disabled, actionItems, userData),
|
disabled: handleFnProps(disabled, actionItems, userData),
|
||||||
handler: () => handler(actionItems, userData),
|
handler: () => handler(actionItems, userData),
|
||||||
icon: handleFnProps(icon, actionItems, userData),
|
icon: handleFnProps(icon, actionItems, userData),
|
||||||
label: handleFnProps(label, actionItems, userData),
|
label: handleFnProps(label, actionItems, userData),
|
||||||
|
level: handleFnProps(level, actionItems, userData),
|
||||||
redirectOnSuccess: handleFnProps(redirectOnSuccess, actionItems, userData),
|
redirectOnSuccess: handleFnProps(redirectOnSuccess, actionItems, userData),
|
||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
@@ -204,7 +205,12 @@ const CollapsedActions = decorate([
|
|||||||
<DropdownToggle bsSize='small' bsStyle='secondary' />
|
<DropdownToggle bsSize='small' bsStyle='secondary' />
|
||||||
<DropdownMenu className='dropdown-menu-right'>
|
<DropdownMenu className='dropdown-menu-right'>
|
||||||
{state.actions.map((action, key) => (
|
{state.actions.map((action, key) => (
|
||||||
<MenuItem disabled={action.disabled} key={key} onClick={() => effects.execute(action)}>
|
<MenuItem
|
||||||
|
className={action.level !== undefined ? `text-${action.level}` : ''}
|
||||||
|
disabled={action.disabled}
|
||||||
|
key={key}
|
||||||
|
onClick={() => effects.execute(action)}
|
||||||
|
>
|
||||||
<Icon icon={action.icon} /> {action.label}
|
<Icon icon={action.icon} /> {action.label}
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
))}
|
))}
|
||||||
|
|||||||
@@ -38,12 +38,14 @@ const HEADER = (
|
|||||||
|
|
||||||
const ACTIONS = [
|
const ACTIONS = [
|
||||||
{
|
{
|
||||||
|
collapsed: true,
|
||||||
handler: forgetProxyAppliances,
|
handler: forgetProxyAppliances,
|
||||||
icon: 'forget',
|
icon: 'forget',
|
||||||
label: _('forgetProxies'),
|
label: _('forgetProxies'),
|
||||||
level: 'danger',
|
level: 'danger',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
collapsed: true,
|
||||||
handler: destroyProxyAppliances,
|
handler: destroyProxyAppliances,
|
||||||
icon: 'destroy',
|
icon: 'destroy',
|
||||||
label: _('destroyProxies'),
|
label: _('destroyProxies'),
|
||||||
@@ -53,6 +55,7 @@ const ACTIONS = [
|
|||||||
|
|
||||||
const INDIVIDUAL_ACTIONS = [
|
const INDIVIDUAL_ACTIONS = [
|
||||||
{
|
{
|
||||||
|
collapsed: true,
|
||||||
handler: (proxy, { deployProxy }) =>
|
handler: (proxy, { deployProxy }) =>
|
||||||
deployProxy({
|
deployProxy({
|
||||||
proxy,
|
proxy,
|
||||||
|
|||||||
Reference in New Issue
Block a user