Skip to content

Commit 59a02e2

Browse files
ADD: Add 'Show Settings Code' button to card dialog
1 parent ef95539 commit 59a02e2

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

heartbeat_monitor/src/jsMain/kotlin/heartbeatmonitor/plugins/KanbanBroFirebaseHeartbeatCardProviderPlugin.kt

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import heartbeatmonitor.core.Dispatcher
77
import heartbeatmonitor.core.Expand
88
import heartbeatmonitor.core.center
99
import heartbeatmonitor.core.clickable
10+
import heartbeatmonitor.core.closeButton
1011
import heartbeatmonitor.core.container
1112
import heartbeatmonitor.core.element
1213
import heartbeatmonitor.core.frame
@@ -309,6 +310,41 @@ object KanbanBroFirebaseHeartbeatCardProviderPlugin : AbstractPlugin("KanbanBroF
309310
}
310311
})
311312
}
313+
center {
314+
textButton("Show Settings Code") {
315+
onClick {
316+
MainScope().launch {
317+
val settings = settingsCache.await() ?: run {
318+
showToast("Settings not available")
319+
return@launch
320+
}
321+
val settingsCode = settings["settings_code"].get()?.value
322+
323+
console.log("[Show Settings Code] settings_code object:", settingsCode)
324+
showDialog {
325+
frame {
326+
container {
327+
this.style.overflowX = "auto"
328+
this.style.overflowY = "auto"
329+
element(document.createDivElement().also { textArea ->
330+
textArea.classList.add("dialog-textbox")
331+
textArea.textContent = JSON.stringify(settingsCode, null, " ")
332+
textArea.contentEditable = "true"
333+
textArea.style.maxWidth = "max(400px,50vw)"
334+
textArea.style.whiteSpace = "pre"
335+
textArea.style.overflowX = "auto"
336+
textArea.style.overflowY = "auto"
337+
})
338+
center {
339+
closeButton()
340+
}
341+
}
342+
}
343+
}
344+
}
345+
}
346+
}
347+
}
312348

313349
right {
314350
textButton("Close") {

0 commit comments

Comments
 (0)