ljmerza / light-entity-card

Control any light or switch entity
MIT License
233 stars 41 forks source link

No color wheel on HA 0.115 #47

Closed matt8707 closed 3 years ago

matt8707 commented 3 years ago

The color wheel doesn't seem to render at all on 0.115 (beta 9) even with color_picker: true. effects_list, brightness and color_temp works though.

ljmerza commented 3 years ago

just took a look at the latest RC and the UI is pretty broken overall. I checked the color picker code and nothing major has changed so my best guess is HA still needs some work for next release. I'll keep this open as a reference.

jimz011 commented 3 years ago

The custom more-info card is also affected by this change in HA. Might it be because they have split up the core more-info and history window with 2 separate tabs?

Edit: the effects list also seem to be semi-broken for me (it renders the list, but not in a dropdown)

ljmerza commented 3 years ago

I tried taking a look around but don't see any changes that would break it. Checkbox and select drop-down doesn't work either. Not sure what's going on.

jimz011 commented 3 years ago

Yeah it is odd, I also tried looking around the official HA discord, but I can't really find any mentions to this (I understand they develop for core, but still). I find it odd, because I believe the first 3 beta's worked fine with the color wheel (but I am not sure)

ljmerza commented 3 years ago

yup and the color wheel works in the entities list and the codes hasnt changed there... ive been updating to latest RC so have been keeping track of this.

On Wed, Sep 16, 2020 at 9:33 PM Jimmy Schings notifications@github.com wrote:

Yeah it is odd, I also tried looking around the official HA discord, but I can't really find any mentions to this (I understand they develop for core, but still). I find it odd, because I believe the first 3 beta's worked fine with the color wheel (but I am not sure)

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/ljmerza/light-entity-card/issues/47#issuecomment-693754388, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA7FQBLGGIDVT4YLLOTN4SDSGFRPXANCNFSM4RMIGCEA .

max83cb commented 3 years ago

I have the same problem. I updated yesterday to 0.115 and neither the color wheel nor the checkboxes come out. Screenshot_2020-09-18-07-19-24-629_io homeassistant companion android

Doa132 commented 3 years ago

I had this same thing happen. Then I pressed on another card to show the light card popup with the color wheel. After exiting that, the color wheel was back in my light-entity-cards

jimz011 commented 3 years ago

Could you try in incognito mode? Because cached cards would still work. Pretty sure it wont work when the cache is clear. But I will try what you say.

Get Outlook for Androidhttps://aka.ms/ghei36


From: Doa132 notifications@github.com Sent: Friday, September 18, 2020 2:55:20 PM To: ljmerza/light-entity-card light-entity-card@noreply.github.com Cc: Jimmy Schings jimz@live.nl; Comment comment@noreply.github.com Subject: Re: [ljmerza/light-entity-card] No color wheel on HA 0.115 (#47)

I had this same thing happen. Then I pressed on another card to show the light card popup with the color wheel. After exiting that, the color wheel was back in my light-entity-cards

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fljmerza%2Flight-entity-card%2Fissues%2F47%23issuecomment-694850337&data=02%7C01%7C%7C57fae56ae8704760163b08d85bd21a4d%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637360305218272742&sdata=NI3tDj0JmQ%2B8pOgcoI1iG0Q7GvmHuUS6q3zOgWXZifA%3D&reserved=0, or unsubscribehttps://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FALG6BXUPTL2U2EUEPDCIZQLSGNKDRANCNFSM4RMIGCEA&data=02%7C01%7C%7C57fae56ae8704760163b08d85bd21a4d%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637360305218282736&sdata=TedtZW9zaRg8YxoJz9DE5hwkquVJGZ%2FAfY4heuW3WbI%3D&reserved=0.

Doa132 commented 3 years ago

Tried it in incognito. As before, the color wheels didn't show up until after I had clicked on the other card to bring up the light popup. Refreshed the page to try again. Color wheels disappeared. Clicked on a card that doesn't involve a light to see if just any pop up window would make it work. It didn't until after the light card was clicked on again. Also tried it in HA ios app. Same deal. Closing the app and reopening makes the color wheels disappear again.

jimz011 commented 3 years ago

I tried your method and it seems that you are correct, amazing never thought it would behave like that. Hm well I guess this information is very good for @ljmerza as to track what the problem is. I will try to work around it for now, great find!

matt8707 commented 3 years ago

Sounds like lazy loading to me

max83cb commented 3 years ago

I had this same thing happen. Then I pressed on another card to show the light card popup with the color wheel. After exiting that, the color wheel was back in my light-entity-cards

I also had done the same test with the same result

ljmerza commented 3 years ago

After looking into this, HA has decided as of v0.115 that all custom elements be lazy loaded, thus any custom cards that use those custom elements from HA would break. To fix this would require me to build my own custom elements for each of my custom cards which is not something I have the time to do. The commit that broke this card and essentially all my other cards is here https://github.com/home-assistant/frontend/pull/6936/files

I could possible get to this sometime down the road but it wont be anytime soon unfortunately.

jimz011 commented 3 years ago

I asked this on the official discord channel and got a rather quick response. @ljmerza Would this be something difficult to do?

jimz011Today at 10:12 PM the other question would be @OpDataDev is there a workaround so that (e.g. the more-info dialog) can be loaded like in pre 0.115.x?

LudeeusToday at 10:21 PM Doing that is generally not a good idea, it might work, it might not. The best option is to include the base of the elements in your card

LudeeusToday at 10:25 PM Usually the elements are just used for the component decleration, some also adds styles in that element, but if you look at it, you most likely see refrences to the base element it's based on, and style elements if they exsist

I wonder simply because it sounds so simple 😆

ljmerza commented 3 years ago

At the very least the color-picker and dropdown components would need imported but the code is in typescript so would need converting which isnt the hard part. The time consuming part is these elements import functions which import functions themselves and other custom components and etc and etc and you would need to recursively find everything you need in order to get these working properly. This would add a ton of bloat and duplicate code to the card. You would also need to do this for the checkbox to get the editor card working. If someone wants to do this I don't mind but this isn't the first time HA has throw custom cards creators under the bus. It has essentially broken all my custom cards in one way or another and I barely have the time to maintain them much less rewrite them.

As I said, maybe down the road I can get to it but it wouldn't be soon.

jimz011 commented 3 years ago

Ah yeah I see (wasn't meant to rush you in any way). It's pretty annoying that this happens quite often, so I totally feel you. No hard feelings if you don't get to it at all. I mean I might understand if you'll get fed-up by this at some point.

Still thanks for the great card we had (have if you have pre 0.115.x 🤣 )

pollinolas commented 3 years ago

Guys, did you try to open the lights from development tools? I did it and can't see the color wheel neither

ljmerza commented 3 years ago

you have to clear cache. its buggy so hopefully HA reverses the commit that broke all of this.

matt8707 commented 3 years ago

So if HA makes changes to the more-info card you have to copy the code over from now on? Why not just call for it to be loaded when it's needed for custom cards...

ljmerza commented 3 years ago

loading happens at the babel level so its not something you can port in. I dont need to import the whole more-info card just the 2-3 custom elements this card uses.

I might look into using js libraries such as this https://iro.js.org/

matt8707 commented 3 years ago

Yes I mean it would be better if there was an api for that, than having duplicate code.

That does look super nice

jimmyhawkin commented 3 years ago

To use from "the office" NO PLEASE GOD NO! Please dont give upp on this projekt... Its one part of what make the ugly look of homeassistant make any sens. Id hate for it to go away. If id have any coding skills what so ever i would fix it on the spot.

Please.... please dont.. leave us... Im gonna go and cry now.

ljmerza commented 3 years ago

The issue is HA will continue down this road of stripping access to custom elements for custom card creators. This is how they are getting the load time down in the past few releases. I've talked to baloob in the past and he has made it clear he has no interest in custom cards and I doubt that position has changed. I've spent many hours on this card so I'd hate to see it go too but the issues this card faces now is only the beginning. This release is a kick in the face and the response by baloob on this gives me no hope HA will ever cater to custom card creators. If someone wants to fork this card they can do so. This project was supposed to be fun but it isn't anymore. I might change my mind down the road but right now I'm stepping away from this mess.

jimmyhawkin commented 3 years ago

The issue is HA will continue down this road of stripping access to custom elements for custom card creators. This is how they are getting the load time down in the past few releases. I've talked to baloob in the past and he has made it clear he has no interest in custom cards and I doubt that position has changed. I've spent many hours on this card so I'd hate to see it go too but the issues this card faces now is only the beginning. This release is a kick in the face and the response by baloob on this gives me no hope HA will ever cater to custom card creators. If someone wants to fork this card they can do so. This project was supposed to be fun but it isn't anymore. I might change my mind down the road but right now I'm stepping away from this mess.

Well i hope you change down the road sooner rather then later. Im sad to see that Ha developers killed yett another card that dont have any replacements.

canedje commented 3 years ago

Same over here: Running HA : 0.115.2 before: image after: image (The last picture is switched off, but the same reult as switched on)

I'm using Dwains theme. There the colorwheel is not showing up. At entities and stndard Lovelace the colorwheel is running oke

jimz011 commented 3 years ago

Balloob may not be so interested in custom card devs, however Iantrich is and I bet Thomas Loven is too. I heard Ian talk about this on the official discord that he was looking for some way to better cater the custom card devs (though I could have misunderstood, since the official discord server can be messy when looking for answers).

This kinda sucks yeah and I dont think they will revert the commit since, well for core it is actually better. Though both Bram Kragten and Balloob pretty much want that people develop for core instead of custom cards (which I can understand though).

It's a shame though, my coding skills are meh (I've tried to make some sense of your code but hm out of my league).

I really do hope you'll pick this up, cause lets be fair, it's the nicest color wheel there was available (and the only one besides core). But I do understand if you are fed up with it and if you don't pick it up I can respect that. (Though one should always have hope).

In any case, thank you for your amazing cards and lets hope it's not the last we see from you regarding Home Assistant.

canedje commented 3 years ago

Tried it in incognito. As before, the color wheels didn't show up until after I had clicked on the other card to bring up the light popup. Refreshed the page to try again. Color wheels disappeared. Clicked on a card that doesn't involve a light to see if just any pop up window would make it work. It didn't until after the light card was clicked on again. Also tried it in HA ios app. Same deal. Closing the app and reopening makes the color wheels disappear again.

I tried this also and indeed the wheel shows up again But the sliders above the wheel are still not working, except the temperature slider

jimmyhawkin commented 3 years ago

Balloob may not be so interested in custom card devs, however Iantrich is and I bet Thomas Loven is too. I heard Ian talk about this on the official discord that he was looking for some way to better cater the custom card devs (though I could have misunderstood, since the official discord server can be messy when looking for answers).

This kinda sucks yeah and I dont think they will revert the commit since, well for core it is actually better. Though both Bram Kragten and Balloob pretty much want that people develop for core instead of custom cards (which I can understand though).

It's a shame though, my coding skills are meh (I've tried to make some sense of your code but hm out of my league).

I really do hope you'll pick this up, cause lets be fair, it's the nicest color wheel there was available (and the only one besides core). But I do understand if you are fed up with it and if you don't pick it up I can respect that. (Though one should always have hope).

In any case, thank you for your amazing cards and lets hope it's not the last we see from you regarding Home Assistant.

Imo it was the last time i updated Homeassistant.

mikeage commented 3 years ago

Does the advice at https://github.com/home-assistant/frontend/issues/7098 help at all?

ljmerza commented 3 years ago

This is what's breaking this card. If they find a way to manually load custom elements from within a custom card I can fix this card.

zsarnett commented 3 years ago

We are going to add the More info Elements to the Lovelace Create Element functions and expose them. So if you need to use the elements that these Elements in the More info dialogs use you can import them using the methods described in the linked Frontend issue to load these.

We talked at length today about how to make Custom Cards better and easier for devs to use HA elements. The only issue is to do that would be making Core much slower and the other solution would lead to error in the Custom Element Registry which will break custom cards or HA frontend. We are looking for a solution and Bram is willing to help Custom Cards. but there is no clear easy solution. As described in the Frontend issue, the goal would eventually be to allow devs to import HA elements but that only comes after the Custom Element registry is fixed.

max83cb commented 3 years ago

with 0.115.3 it works

matt8707 commented 3 years ago

FYI 0.116.0b0 breaks it again in the same way. Let's hope it works when it leaves beta.

jimz011 commented 3 years ago

What I understood is that they have reverted the lazy loading to give developers more time to adapt the new changes. So I guess that change is just inevitable.

matt8707 commented 3 years ago

Oh right. I've missed that

zsarnett commented 3 years ago

It was stated that this would be reverted until 0.116. A new way to load the more info dialogs so the components are loaded

ljmerza commented 3 years ago

What I understood is that they have reverted the lazy loading to give developers more time to adapt the new changes. So I guess that change is just inevitable.

What new changes? The only change I'm aware of is you cannot use HA custom components from custom cards anymore. That destroys this card.

zsarnett commented 3 years ago

@ljmerza have you seen the PRs that allow you to load More info dialogs?

You can load the more info for a light and that will load your components you need

zsarnett commented 3 years ago

https://github.com/home-assistant/frontend/pull/7131

ljmerza commented 3 years ago

Will fix before release. Thanks for linking.

ljmerza commented 3 years ago

ok added the lazy loader in v4.3.0. unfortunately, this doesn't fix checkboxes so that's still broken on the card editor.

zsarnett commented 3 years ago

You can probably load a different more info that has them?