Skip to content

Updating to latest deps and ensuring compatibility with future API changes#135

Open
yinzara wants to merge 9 commits intoimprov-wifi:mainfrom
yinzara:main
Open

Updating to latest deps and ensuring compatibility with future API changes#135
yinzara wants to merge 9 commits intoimprov-wifi:mainfrom
yinzara:main

Conversation

@yinzara
Copy link
Copy Markdown

@yinzara yinzara commented Dec 26, 2025

Minor change to support allowing more than YES/NO security attributes was in first commit.
2nd commit updates to latest deps and sets the design to follow modern material design guidelines.

High level the changes are as follows:

  1. There is now only a single dialog box that contains the device info and wifi networks and everything. No more two step process where it shows device info and you have to click "Connect to Wifi". One click and you have everything.
  2. The wifi dropdown box is now much more informative with signal strength and security requirements.
  3. The password box now works like everyone expects with an eye to reveal the password.
  4. The device info is now in a nicely formatted box and shows all the information available
  5. The network name box will now only show properly when there are no found SSIDs or you select the Join Other Network option
  6. We now use the action bar with buttons instead of text links for all dialog actions.
  7. Overall styling now follows modern Material Design guidelines.

Screenshots are from local dev environment
Screenshot 2025-12-26 at 2 26 30 PM
Screenshot 2025-12-26 at 2 24 08 PM
Screenshot 2025-12-26 at 2 23 51 PM
Screenshot 2025-12-26 at 4 19 26 PM

This required reformatting all files in the repo which caused some changes
to serial.ts and provision.ts that were non-functional.

This dialog now follow modern Material Design guidelines
@yinzara yinzara changed the title Minor change to support allowing more than YES/NO security attributes Updating to latest deps and ensuring compatibility with future API changes Dec 26, 2025
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

All the changes to this file were because of the update to prettier.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

All deps updated to latest so this PR can close all those other PRs that bump dependency versions from years ago.

@yinzara
Copy link
Copy Markdown
Author

yinzara commented Dec 27, 2025

After reviews with @balloob here are the final screenshots
Screenshot 2025-12-27 at 9 39 43 AM
Screenshot 2025-12-27 at 9 39 36 AM

>
<md-dialog open @close=${this._handleClose}>
<div slot="headline">${heading}</div>
<form slot="content" id="improv-form" method="dialog">${content}</form>
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

We always render a form ? Why is that not part of the actual form

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Yeah it's how it does form validation properly.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Right, but shouldn't we render this only when we are rendering the actual form, not the other options?

${
// Show input box if command not supported or "Join Other" selected
!selectedSsid
this._ssids === null || this._selectedSsid === null
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

We will now show a text box when the SSIDs are still loading? Can we just show a loading spinner and wait up to 5s for first SSIDs to come in?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

This is for when Scanning Wifi is not supported as well. I can also fix it to not show until there are at least some SSIDs retrieved when scan wifi is supported. Don't need the timeout.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I often see that right after rebooting, it can take a bit of time before refresh returns any SSIDs. Probably starting up still.

There is ofc always the option that there are no SSIDs 😬

href=${this._client!.nextUrl}
class="has-button"
>
<is-button label="Visit Device"></is-button>
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This was a very important button. It allowed users to re-connect later to the device and visit the device without setting it up again.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

We can put this in the device info box.

@yinzara
Copy link
Copy Markdown
Author

yinzara commented Dec 29, 2025

New screenshots after review.

Screenshot 2025-12-29 at 9 37 06 AM Screenshot 2025-12-29 at 9 36 55 AM

@yinzara
Copy link
Copy Markdown
Author

yinzara commented Dec 29, 2025

Shown with an error. Is there any other formatting we want on the error message or is this good enough?
Screenshot 2025-12-29 at 9 57 31 AM

@balloob
Copy link
Copy Markdown
Contributor

balloob commented Jan 16, 2026

let's make the background white, otherwise I think it's good to go. Sorry for the delay. Vegas and stuff 😅

@yinzara
Copy link
Copy Markdown
Author

yinzara commented Jan 21, 2026

Screenshot 2026-01-20 at 7 01 24 PM

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.

2 participants