Browse Source

fix: format code

YuKun Liu 3 years ago
parent
commit
92561612c7
2 changed files with 63 additions and 62 deletions
  1. 29 30
      packages/desktop/src/index.js
  2. 34 32
      packages/web/src/dom.rs

+ 29 - 30
packages/desktop/src/index.js

@@ -1,3 +1,32 @@
+const bool_attrs = [
+  "allowfullscreen",
+  "allowpaymentrequest",
+  "async",
+  "autofocus",
+  "autoplay",
+  "checked",
+  "controls",
+  "default",
+  "defer",
+  "disabled",
+  "formnovalidate",
+  "hidden",
+  "ismap",
+  "itemscope",
+  "loop",
+  "multiple",
+  "muted",
+  "nomodule",
+  "novalidate",
+  "open",
+  "playsinline",
+  "readonly",
+  "required",
+  "reversed",
+  "selected",
+  "truespeed",
+]
+
 function serialize_event(event) {
   switch (event.type) {
     case "copy":
@@ -369,36 +398,6 @@ class Interpreter {
           node.innerHTML = value;
           break;
         default:
-
-          const bool_attrs = [
-            "allowfullscreen",
-            "allowpaymentrequest",
-            "async",
-            "autofocus",
-            "autoplay",
-            "checked",
-            "controls",
-            "default",
-            "defer",
-            "disabled",
-            "formnovalidate",
-            "hidden",
-            "ismap",
-            "itemscope",
-            "loop",
-            "multiple",
-            "muted",
-            "nomodule",
-            "novalidate",
-            "open",
-            "playsinline",
-            "readonly",
-            "required",
-            "reversed",
-            "selected",
-            "truespeed",
-          ]
-
           // https://github.com/facebook/react/blob/8b88ac2592c5f555f315f9440cbb665dd1e7457a/packages/react-dom/src/shared/DOMProperty.js#L352-L364
           if (value == "false" && bool_attrs.indexOf(name)) {
             node.removeAttribute(name);

+ 34 - 32
packages/web/src/dom.rs

@@ -348,40 +348,42 @@ impl WebsysDom {
                     }
                 }
                 _ => {
-
-                    let bool_attrs = vec![
-                        "allowfullscreen",
-                        "allowpaymentrequest",
-                        "async",
-                        "autofocus",
-                        "autoplay",
-                        "checked",
-                        "controls",
-                        "default",
-                        "defer",
-                        "disabled",
-                        "formnovalidate",
-                        "hidden",
-                        "ismap",
-                        "itemscope",
-                        "loop",
-                        "multiple",
-                        "muted",
-                        "nomodule",
-                        "novalidate",
-                        "open",
-                        "playsinline",
-                        "readonly",
-                        "required",
-                        "reversed",
-                        "selected",
-                        "truespeed",
-                    ];
-
                     // https://github.com/facebook/react/blob/8b88ac2592c5f555f315f9440cbb665dd1e7457a/packages/react-dom/src/shared/DOMProperty.js#L352-L364
-                    if value == "false" && bool_attrs.contains(&name) {
+                    if value == "false" {
                         if let Some(el) = node.dyn_ref::<Element>() {
-                            let _ = el.remove_attribute(name);
+                            match name {
+                                "allowfullscreen"
+                                | "allowpaymentrequest"
+                                | "async"
+                                | "autofocus"
+                                | "autoplay"
+                                | "checked"
+                                | "controls"
+                                | "default"
+                                | "defer"
+                                | "disabled"
+                                | "formnovalidate"
+                                | "hidden"
+                                | "ismap"
+                                | "itemscope"
+                                | "loop"
+                                | "multiple"
+                                | "muted"
+                                | "nomodule"
+                                | "novalidate"
+                                | "open"
+                                | "playsinline"
+                                | "readonly"
+                                | "required"
+                                | "reversed"
+                                | "selected"
+                                | "truespeed" => {
+                                    let _ = el.remove_attribute(name);
+                                }
+                                _ => {
+                                    let _ = el.set_attribute(name, value);
+                                }
+                            };
                         }
                     } else {
                         fallback();