Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(ui): improved control panel #900

Merged
merged 12 commits into from
Mar 18, 2021
Merged

feat(ui): improved control panel #900

merged 12 commits into from
Mar 18, 2021

Conversation

robertsLando
Copy link
Member

@robertsLando robertsLando commented Mar 16, 2021

Based on #524

Peek 17-03-2021 16-07

@zwave-js-assistant
Copy link

🚧 It seems like this PR has lint errors 🚧

I should be able to fix them for you. If you want me to, just comment
@zwave-js-bot fix lint

@zwave-js-assistant
Copy link

🚧 It seems like this PR has lint errors 🚧

I should be able to fix them for you. If you want me to, just comment
@zwave-js-bot fix lint

@zwave-js-assistant
Copy link

🚧 It seems like this PR has lint errors 🚧

I should be able to fix them for you. If you want me to, just comment
@zwave-js-bot fix lint

@coveralls
Copy link

coveralls commented Mar 17, 2021

Pull Request Test Coverage Report for Build 663723075

  • 0 of 3 (0.0%) changed or added relevant lines in 1 file are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.002%) to 18.204%

Changes Missing Coverage Covered Lines Changed/Added Lines %
lib/ZwaveClient.js 0 3 0.0%
Totals Coverage Status
Change from base Build 663704691: 0.002%
Covered Lines: 2025
Relevant Lines: 11408

💛 - Coveralls

@ahochsteger
Copy link
Collaborator

@robertsLando may you provide a quick summary about the major differences between #524 and this PR?

@robertsLando
Copy link
Member Author

robertsLando commented Mar 17, 2021

@ahochsteger

I have took the controller status, info box (the box with the homeid and applications version) and the advanced dialog from #524. What I did then is to completely refactor how the advanced dialog works like passing actions as an arguments and handle the new action event. This makes it more easier to use in both node and controller action expecially paired with args. I also added all missing actions and make some other style fixes

What I have not implemented from #524 is the main idea about the compact control panel table that require some more work expecially in the dialog to control node stuff (everything that ATM we have on expanded node in the table)

cc @jarrettv

Comment on lines 118 to 238
desc: 'All retained messages of this node will be removed from broker'
},
{
text: 'Update topics',
options: [
{
name: 'Update',
action: 'updateNodeTopics',
args: {
mqtt: true,
confirm: 'Are you sure you want to update all topics?'
}
}
],
icon: 'update',
desc: 'Update all node topics. Useful when name/location has changed'
},
{
text: 'Firmware update',
options: [
{ name: 'Begin', action: 'beginFirmwareUpdate' },
{ name: 'Abort', action: 'abortFirmwareUpdate' }
],
icon: 'update',
desc: 'Start/Stop a firmware update'
},
{
text: 'Heal Node',
options: [{ name: 'Heal', action: 'healNode' }],
icon: 'healing',
desc: 'Force nodes to establish better connections to the controller'
},
{
text: 'Refresh Values',
options: [
{
name: 'Refresh',
action: 'refreshValues',
args: {
confirm:
'Are you sure you want to refresh values of this node? This action increases network traffic'
}
}
],
icon: 'cached',
desc:
'Update all CC values and metadata. Use when many values seems stale'
},
{
text: 'Re-interview Node',
options: [
{
name: 'Interview',
action: 'refreshInfo',
args: {
confirm:
"Are you sure you want to re-interview this node? Battery powered nodes need to be woken up, interaction with the node won't be reliable until the interview is done"
}
}
],
icon: 'history',
desc:
'Clear all info about this node and make a new full interview. Use when the node has wrong/missing some capabilities'
},
{
text: 'Failed Nodes',
options: [
{ name: 'Check', action: 'isFailedNode' },
{ name: 'Remove', action: 'removeFailedNode' },
{ name: 'Replace', action: 'replaceFailedNode' }
],
icon: 'dangerous',
desc:
'Manage nodes that are dead and/or marked as failed with the controller'
},
{
text: 'Associations',
options: [
{
name: 'Clear',
action: 'removeAllAssociations',
args: {
confirm:
"This action will remove all associations of this node. Does clearing a node's associations include the lifeline? If so, the node won't report until that is set up again"
}
},
{
name: 'Remove',
action: 'removeNodeFromAllAssociations',
args: {
confirm:
'This action will remove this node from all associations with others'
}
}
],
icon: 'link_off',
desc:
'Clear all node associations / Remove node from all associations'
}
]
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comment on lines +85 to +147
icon: 'save',
desc: 'Save or load `nodes.json` file with names and locations'
},
{
text: 'Re-interview Node',
value: 'refreshInfo'
text: 'Dump',
options: [{ name: 'Export', action: 'exportDump' }],
icon: 'bug_report',
desc: 'Export all nodes in a json file. Useful for debugging purposes'
},
{
text: 'Refresh values',
value: 'refreshValues'
},
{
text: 'Is Failed Node',
value: 'isFailedNode'
},
{
text: 'Remove failed node',
value: 'removeFailedNode'
},
{
text: 'Replace failed node',
value: 'replaceFailedNode'
},
{
text: 'Begin Firmware update',
value: 'beginFirmwareUpdate'
},
{
text: 'Abort Firmware update',
value: 'abortFirmwareUpdate'
},
{
text: 'Remove all associations',
value: 'removeAllAssociations'
},
{
text: 'Remove node from all associations',
value: 'removeNodeFromAllAssociations'
}
],
cnt_action: 'healNetwork',
cnt_actions: [
{
text: 'Heal Network',
value: 'beginHealingNetwork'
options: [
{
name: 'Begin',
action: 'beginHealingNetwork',
args: {
confirm:
'Healing network causes a lot of traffic, can take minutes up to hours and users have to expect degraded performance while it is going on'
}
},
{ name: 'Stop', action: 'stopHealingNetwork' }
],
icon: 'healing',
desc: 'Force nodes to establish better connections to the controller'
},
{
text: 'Stop Heal Network',
value: 'stopHealingNetwork'
text: 'Hard Reset',
options: [
{
name: 'Factory Reset',
action: 'hardReset'
}
],
icon: 'warning',
color: 'red',
desc:
'Reset controller to factory defaults (all paired devices will be removed)'
},
{
text: 'Hard reset',
value: 'hardReset'
text: 'Failed Nodes',
options: [
{
name: 'Check all',
action: 'isFailedNode',
args: { broadcast: true }
},
{
name: 'Remove all',
action: 'removeFailedNode',
args: {
broadcast: true,
confirm: 'This action will remove all failed nodes'
}
}
],
icon: 'dangerous',
desc:
'Manage nodes that are dead and/or marked as failed with the controller'
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

src/components/nodes-table/NodeDetails.vue Show resolved Hide resolved
src/components/nodes-table/NodeDetails.vue Outdated Show resolved Hide resolved
src/components/nodes-table/NodeDetails.vue Outdated Show resolved Hide resolved
src/components/nodes-table/NodeDetails.vue Outdated Show resolved Hide resolved
src/components/nodes-table/NodeDetails.vue Outdated Show resolved Hide resolved
src/components/nodes-table/NodeDetails.vue Outdated Show resolved Hide resolved
@robertsLando robertsLando requested a review from AlCalzone March 17, 2021 16:18
@robertsLando robertsLando changed the title style(ui): refactor control panel actions feat(ui): improved control panel Mar 18, 2021
@robertsLando robertsLando merged commit 3b3785e into master Mar 18, 2021
@robertsLando robertsLando deleted the compact-cp-partial branch March 18, 2021 07:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants