From 56fdb810c40158009832905cd9a134a4407bf6a5 Mon Sep 17 00:00:00 2001
From: Volker Schukai <volker.schukai@schukai.com>
Date: Sun, 27 Oct 2024 22:45:38 +0100
Subject: [PATCH] fix: argument must be checked against true #255

---
 development/issues/open/255.html              | 22 +++++++++++++
 development/issues/open/255.mjs               | 32 +++++++++++++++++++
 .../components/form/message-state-button.mjs  |  2 +-
 source/components/form/toggle-switch.mjs      |  2 +-
 4 files changed, 56 insertions(+), 2 deletions(-)
 create mode 100644 development/issues/open/255.html
 create mode 100644 development/issues/open/255.mjs

diff --git a/development/issues/open/255.html b/development/issues/open/255.html
new file mode 100644
index 000000000..0883ede23
--- /dev/null
+++ b/development/issues/open/255.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title>disable false for message-state-button does not work #255</title>
+    <script src="./255.mjs" type="module"></script>
+</head>
+<body>
+    <h1>disable false for message-state-button does not work #255</h1>
+    <p>user aborted</p>
+    <ul>
+        <li><a href="https://gitlab.schukai.com/oss/libraries/javascript/monster/-/issues/255">Issue #255</a></li>
+        <li><a href="/">Back to overview</a></li>
+    </ul>
+    <main>
+
+          <monster-message-state-button id="message-state-button" disabled="false">test</monster-message-state-button>
+
+    </main>
+</body>
+</html>
diff --git a/development/issues/open/255.mjs b/development/issues/open/255.mjs
new file mode 100644
index 000000000..a1378831f
--- /dev/null
+++ b/development/issues/open/255.mjs
@@ -0,0 +1,32 @@
+/**
+* @file development/issues/open/255.mjs
+* @url https://gitlab.schukai.com/oss/libraries/javascript/monster/-/issues/255
+* @description disable false for message-state-button does not work
+* @issue 255
+*/
+
+import "../../../source/components/style/property.pcss";
+import "../../../source/components/style/link.pcss";
+import "../../../source/components/style/color.pcss";
+import "../../../source/components/style/theme.pcss";
+import "../../../source/components/style/normalize.pcss";
+import "../../../source/components/style/typography.pcss";
+import "../../../source/components/form/message-state-button.mjs";
+
+document.addEventListener("DOMContentLoaded", () => {
+    const button = document.querySelector("monster-message-state-button");
+    console.log(button);
+    
+    setTimeout(() => {
+        button.setOption("features.disableButton", true);
+        console.log(button.getOption("features.disableButton"));
+        
+        setTimeout(() => {
+            button.setOption("features.disableButton", false);
+            console.log(button.getOption("features.disableButton"));
+        }, 4000);
+        
+    }, 4000);
+    
+
+});
\ No newline at end of file
diff --git a/source/components/form/message-state-button.mjs b/source/components/form/message-state-button.mjs
index acf0e49b7..a9170dd4f 100644
--- a/source/components/form/message-state-button.mjs
+++ b/source/components/form/message-state-button.mjs
@@ -366,7 +366,7 @@ function getTemplate() {
         <div data-monster-role="control" part="control">
 
             <monster-state-button exportparts="button:button-button,control:button-control"
-                                  data-monster-attributes="data-monster-option-classes-button path:classes.button, disabled path:features.disableButton"
+                                  data-monster-attributes="data-monster-option-classes-button path:classes.button, disabled path:features.disableButton | if:true"
                                   part="button"
                                   name="button"
                                   data-monster-role="button">
diff --git a/source/components/form/toggle-switch.mjs b/source/components/form/toggle-switch.mjs
index c00374d9b..903887d4d 100644
--- a/source/components/form/toggle-switch.mjs
+++ b/source/components/form/toggle-switch.mjs
@@ -374,7 +374,7 @@ function toggleValues() {
 
 /**
  * @private
- */
+ */F
 function validateAndSetValue() {
 	const value = this.getOption("value");
 
-- 
GitLab