@@ -14,6 +14,7 @@ card_media_player:
14
14
ulm_card_media_player_player_controls_entity : " [[[ return entity.entity_id ]]]"
15
15
ulm_card_media_player_enable_popup : false
16
16
ulm_card_media_player_more_info : false
17
+ ulm_card_media_player_power_button : false
17
18
triggers_update : " all"
18
19
show_icon : false
19
20
show_name : false
@@ -62,6 +63,11 @@ card_media_player:
62
63
: ''
63
64
]]]
64
65
custom_fields :
66
+ power :
67
+ - display : " [[[ return variables.ulm_card_media_player_power_button ? 'block' : 'none']]]"
68
+ - position : " absolute"
69
+ - top : " 12px"
70
+ - right : " 12px"
65
71
item2 :
66
72
- display : |
67
73
[[[
@@ -85,6 +91,32 @@ card_media_player:
85
91
return "none";
86
92
]]]
87
93
custom_fields :
94
+ power :
95
+ card :
96
+ type : " custom:button-card"
97
+ entity : " [[[ return entity.entity_id ]]]"
98
+ template : " widget_icon"
99
+ icon : " mdi:power"
100
+ tap_action :
101
+ action : " toggle"
102
+ styles :
103
+ img_cell :
104
+ - width : " 42px"
105
+ - heigth : " 42px"
106
+ card :
107
+ - background-color : |
108
+ [[[
109
+ return variables.ulm_card_media_player_enable_art && states[entity.entity_id].attributes.entity_picture != null
110
+ ? 'rgba(0, 0, 0, 0.2)'
111
+ : 'rgba(var(--color-theme),0.05)'
112
+ ]]]
113
+ icon :
114
+ - color : |
115
+ [[[
116
+ return variables.ulm_card_media_player_enable_art && states[entity.entity_id].attributes.entity_picture != null
117
+ ? 'white'
118
+ : 'rgba(var(--color-theme), 0.9)'
119
+ ]]]
88
120
item1 :
89
121
card :
90
122
type : " custom:button-card"
@@ -225,7 +257,7 @@ card_media_player:
225
257
item2 :
226
258
card :
227
259
type : " custom:button-card"
228
- template : " list_3_items "
260
+ template : " list_4_items "
229
261
styles :
230
262
card :
231
263
- padding : " 0px"
@@ -293,17 +325,19 @@ card_media_player:
293
325
entity : " [[[ return entity.entity_id; ]]]"
294
326
tap_action :
295
327
action : " call-service"
296
- service : " media_player.media_play_pause"
328
+ service : " [[[ return (entity.attributes?.media_duration > 0) ? ' media_player.media_play_pause' : entity.state =='playing' ? 'media_player.media_stop' : 'media_player.media_play']]] "
297
329
service_data :
298
330
entity_id : " [[[ return variables.ulm_card_media_player_player_controls_entity ]]]"
299
- icon : " mdi:pause"
331
+ icon : " [[[ return (entity.attributes?.media_duration > 0) ? ' mdi:pause' : 'mdi:stop' ]]] "
300
332
state :
301
333
- value : " paused"
302
334
icon : " mdi:play"
303
335
- value : " off"
304
336
icon : " mdi:play"
305
337
- value : " standby"
306
338
icon : " mdi:play"
339
+ - value : " idle"
340
+ icon : " mdi:play"
307
341
styles :
308
342
card :
309
343
- background-color : |
@@ -358,6 +392,73 @@ card_media_player:
358
392
? 'white'
359
393
: 'rgba(var(--color-theme), 0.9)'
360
394
]]]
395
+ item4 :
396
+ card :
397
+ type : " custom:button-card"
398
+ template : " widget_icon"
399
+ icon : " mdi:playlist-music"
400
+ entity : " [[[ return entity.entity_id; ]]]"
401
+ styles :
402
+ card :
403
+ - background-color : |
404
+ [[[
405
+ return variables.ulm_card_media_player_enable_art && states[entity.entity_id].attributes.entity_picture != null
406
+ ? 'rgba(0, 0, 0, 0.2)'
407
+ : 'rgba(var(--color-theme),0.05)'
408
+ ]]]
409
+ icon :
410
+ - color : |
411
+ [[[
412
+ return variables.ulm_card_media_player_enable_art && states[entity.entity_id].attributes.entity_picture != null
413
+ ? 'white'
414
+ : 'rgba(var(--color-theme), 0.9)'
415
+ ]]]
416
+ hold_action :
417
+ action : >
418
+ [[[
419
+ return variables.ulm_card_media_player_enable_popup && entity.attributes?.source_list ? "fire-dom-event" : "more-info";
420
+ ]]]
421
+ browser_mod :
422
+ service : " browser_mod.popup"
423
+ data :
424
+ large : true
425
+ hide_header : true
426
+ content :
427
+ type : " custom:button-card"
428
+ template : " popup_media_player_source_card"
429
+ entity : " [[[ return entity.entity_id; ]]]"
430
+ tap_action :
431
+ action : >
432
+ [[[
433
+ return variables.ulm_card_media_player_enable_popup && entity.attributes?.source_list ? "fire-dom-event" : "more-info";
434
+ ]]]
435
+ browser_mod :
436
+ service : " browser_mod.popup"
437
+ data :
438
+ large : true
439
+ hide_header : true
440
+ style : |
441
+ --popup-background-color: var(--primary-background-color);
442
+ --popup-border-radius: 20px;
443
+ --popup-padding-x: 24px;
444
+ --popup-padding-y: 20px;
445
+ --popup-max-width: auto
446
+ --popup-min-width: 800px;
447
+ card_mod :
448
+ style :
449
+ ha-dialog$ : |
450
+ @media (max-width: 800px){
451
+ div.mdc-dialog__container {
452
+ --mdc-dialog-min-width: 100vw;
453
+ --mdc-dialog-max-width: 100vw;
454
+ --mdc-dialog-min-height: 100%;
455
+ --ha-dialog-border-radius: 0px;
456
+ }
457
+ }
458
+ content :
459
+ type : " custom:button-card"
460
+ template : " popup_media_player_source_card"
461
+ entity : " [[[ return entity.entity_id; ]]]"
361
462
item3 :
362
463
card :
363
464
type : " custom:my-slider"
0 commit comments