Skip to content

Commit 7b5040b

Browse files
committed
Update 1.0.4
1 parent e96b5e1 commit 7b5040b

File tree

1 file changed

+16
-5
lines changed

1 file changed

+16
-5
lines changed

lovelace-multiline-text-input-card.js

+16-5
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@
4848
width: 100%;
4949
word-spacing: inherit;
5050
}
51+
.text-center {
52+
text-align: center;
53+
}
5154
.text-bold {
5255
font-weight: bold;
5356
}
@@ -69,6 +72,9 @@
6972
.hidden {
7073
display: none;
7174
}
75+
.position-absolute {
76+
position: absolute;
77+
}
7278
.opacity-0 {
7379
opacity: 0 !important;
7480
}
@@ -80,7 +86,6 @@
8086
pointer-events: none;
8187
}
8288
#serviceMessage {
83-
position: absolute;
8489
padding: 5px;
8590
background-color: var(--primary-background-color);
8691
border: 1px solid var(--primary-color);
@@ -110,10 +115,11 @@
110115
<textarea maxlength="${this.state.max_length !== -1 ? this.state.max_length : ""}" @keyup="${() => this.onKeyupTextarea()}" class="textarea" placeholder="${this.state.placeholder_text}">${this.getState()}</textarea>
111116
<span class="text-red text-small text-italic text-left" id="spanMinCharactersInfoText"></span>
112117
<span class="text-small text-italic text-right" id="spanMaxCharactersInfoText"></span>
118+
${!this.state.showButtons ? html`<div id="serviceMessage" class="text-center text-small invisible opacity-0">&nbsp;</div>` : null}
113119
</div>
114120
${this.state.showButtons ? html`
115121
<div class="flex">
116-
<div id="serviceMessage" class="text-small invisible opacity-0"></div>
122+
<div id="serviceMessage" class="position-absolute text-small invisible opacity-0">&nbsp;</div>
117123
${Object.keys(this.state.buttons_ordered).map(this.renderButton.bind(this))}
118124
</div>` : null}
119125
</ha-card>` : null;
@@ -270,13 +276,17 @@
270276
}
271277

272278
displayMessage(service, success) {
273-
// todo: translations
274-
if(!this.shadowRoot || !service || service.length < 1) {
279+
if(!this.state.show_success_messages || !this.shadowRoot || !service || service.length < 1) {
275280
return;
276281
}
277282

278283
let serviceMessageContainer = this.shadowRoot.querySelector('#serviceMessage');
279284

285+
if(!serviceMessageContainer) {
286+
return;
287+
}
288+
289+
// todo: translations
280290
let message = "";
281291
if(success) {
282292
if(service == "save") {
@@ -302,7 +312,7 @@
302312
}, 1500);
303313
setTimeout(function() {
304314
serviceMessageContainer.classList.add("invisible");
305-
serviceMessageContainer.innerHTML = "";
315+
serviceMessageContainer.innerHTML = "&nbsp;";
306316
}, 2000);
307317
}
308318
}
@@ -382,6 +392,7 @@
382392
min_length: parseInt(config.min_length) || 0,
383393
placeholder_text: config.placeholder_text || "",
384394
save_on_clear: config.save_on_clear === true,
395+
show_success_messages: config.show_success_messages !== false,
385396
title: config.title,
386397

387398
autosave_timeout: null,

0 commit comments

Comments
 (0)