From 3809114c7f97f42455d2dff37c93ab7fc26822f6 Mon Sep 17 00:00:00 2001 From: Bradlee Speice Date: Sun, 26 Aug 2018 00:59:17 -0400 Subject: [PATCH] Attempt both Yew and Web-View --- electron_percy_wasm/Cargo.toml | 3 - electron_yew_wasm/.compilerc | 42 + electron_yew_wasm/.eslintrc | 9 + electron_yew_wasm/.gitignore | 3 + electron_yew_wasm/Cargo.toml | 12 + electron_yew_wasm/app/.gitignore | 4 + electron_yew_wasm/app/app.js | 3 + electron_yew_wasm/app/app_loader.js | 8 + electron_yew_wasm/app/electron_yew_wasm.js | 10 + electron_yew_wasm/app/index.html | 11 + electron_yew_wasm/app/index.js | 52 + electron_yew_wasm/build_wasm_bundle.sh | 25 + electron_yew_wasm/package.json | 66 + electron_yew_wasm/src/lib.rs | 45 + electron_yew_wasm/yarn.lock | 7736 ++++++++++++++++++++ web-view_wasm/.gitignore | 1 + web-view_wasm/Cargo.lock | 254 + web-view_wasm/Cargo.toml | 11 + web-view_wasm/app/.gitignore | 1 + web-view_wasm/app/Cargo.lock | 191 + web-view_wasm/app/Cargo.toml | 12 + web-view_wasm/app/build.rs | 8 + web-view_wasm/app/src/lib.rs | 20 + web-view_wasm/build.rs | 10 + web-view_wasm/src/app.wasm | Bin 0 -> 3546905 bytes web-view_wasm/src/main.rs | 34 + 26 files changed, 8568 insertions(+), 3 deletions(-) create mode 100644 electron_yew_wasm/.compilerc create mode 100644 electron_yew_wasm/.eslintrc create mode 100644 electron_yew_wasm/.gitignore create mode 100644 electron_yew_wasm/Cargo.toml create mode 100644 electron_yew_wasm/app/.gitignore create mode 100644 electron_yew_wasm/app/app.js create mode 100644 electron_yew_wasm/app/app_loader.js create mode 100644 electron_yew_wasm/app/electron_yew_wasm.js create mode 100644 electron_yew_wasm/app/index.html create mode 100644 electron_yew_wasm/app/index.js create mode 100755 electron_yew_wasm/build_wasm_bundle.sh create mode 100644 electron_yew_wasm/package.json create mode 100644 electron_yew_wasm/src/lib.rs create mode 100644 electron_yew_wasm/yarn.lock create mode 100644 web-view_wasm/.gitignore create mode 100644 web-view_wasm/Cargo.lock create mode 100644 web-view_wasm/Cargo.toml create mode 100644 web-view_wasm/app/.gitignore create mode 100644 web-view_wasm/app/Cargo.lock create mode 100644 web-view_wasm/app/Cargo.toml create mode 100644 web-view_wasm/app/build.rs create mode 100644 web-view_wasm/app/src/lib.rs create mode 100644 web-view_wasm/build.rs create mode 100755 web-view_wasm/src/app.wasm create mode 100644 web-view_wasm/src/main.rs diff --git a/electron_percy_wasm/Cargo.toml b/electron_percy_wasm/Cargo.toml index ca6e9db..0c8fbaf 100644 --- a/electron_percy_wasm/Cargo.toml +++ b/electron_percy_wasm/Cargo.toml @@ -3,9 +3,6 @@ name = "electron_percy_wasm" version = "0.1.0" authors = ["Bradlee Speice "] -[lib] -crate-type = ["cdylib"] - [dependencies] percy-webapis = "0.0.1" virtual-dom-rs = "0.1" diff --git a/electron_yew_wasm/.compilerc b/electron_yew_wasm/.compilerc new file mode 100644 index 0000000..1ecba6f --- /dev/null +++ b/electron_yew_wasm/.compilerc @@ -0,0 +1,42 @@ +{ + "env": { + "development": { + "application/javascript": { + "presets": [ + [ + "env", + { + "targets": { + "electron": 2 + } + } + ], + "react" + ], + "plugins": [ + "transform-async-to-generator" + ], + "sourceMaps": "inline" + } + }, + "production": { + "application/javascript": { + "presets": [ + [ + "env", + { + "targets": { + "electron": 2 + } + } + ], + "react" + ], + "plugins": [ + "transform-async-to-generator" + ], + "sourceMaps": "none" + } + } + } +} \ No newline at end of file diff --git a/electron_yew_wasm/.eslintrc b/electron_yew_wasm/.eslintrc new file mode 100644 index 0000000..64f1252 --- /dev/null +++ b/electron_yew_wasm/.eslintrc @@ -0,0 +1,9 @@ +{ + "extends": "eslint-config-airbnb", + "rules": { + "import/extensions": 0, + "import/no-extraneous-dependencies": 0, + "import/no-unresolved": [2, { "ignore": ["electron"] }], + "linebreak-style": 0 + } +} diff --git a/electron_yew_wasm/.gitignore b/electron_yew_wasm/.gitignore new file mode 100644 index 0000000..c47d6c4 --- /dev/null +++ b/electron_yew_wasm/.gitignore @@ -0,0 +1,3 @@ +node_modules/ +Cargo.lock +target/ \ No newline at end of file diff --git a/electron_yew_wasm/Cargo.toml b/electron_yew_wasm/Cargo.toml new file mode 100644 index 0000000..1a880a0 --- /dev/null +++ b/electron_yew_wasm/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "electron_yew_wasm" +version = "0.1.0" +authors = ["Bradlee Speice "] + +[lib] +crate-type = ["cdylib"] + +[dependencies] +stdweb = "0.4" +wasm-bindgen = "0.2" +yew = { git = "https://github.com/DenisKolodin/yew" } \ No newline at end of file diff --git a/electron_yew_wasm/app/.gitignore b/electron_yew_wasm/app/.gitignore new file mode 100644 index 0000000..64995d2 --- /dev/null +++ b/electron_yew_wasm/app/.gitignore @@ -0,0 +1,4 @@ +*.wasm +*.bundle.js +bundle.js +electron_percy_wasm.js \ No newline at end of file diff --git a/electron_yew_wasm/app/app.js b/electron_yew_wasm/app/app.js new file mode 100644 index 0000000..93558c1 --- /dev/null +++ b/electron_yew_wasm/app/app.js @@ -0,0 +1,3 @@ +import { main } from "./electron_yew_wasm" + +main() \ No newline at end of file diff --git a/electron_yew_wasm/app/app_loader.js b/electron_yew_wasm/app/app_loader.js new file mode 100644 index 0000000..fd75f19 --- /dev/null +++ b/electron_yew_wasm/app/app_loader.js @@ -0,0 +1,8 @@ +// We have to have a two-stage loader because WebPack says we do +const app = import("./app") +app.then(() => { + console.log("Finished resolving application bundle") +}, (e) => { + console.log("Unable to resolve application bundle: ") + console.log(e) +}) \ No newline at end of file diff --git a/electron_yew_wasm/app/electron_yew_wasm.js b/electron_yew_wasm/app/electron_yew_wasm.js new file mode 100644 index 0000000..4d616fb --- /dev/null +++ b/electron_yew_wasm/app/electron_yew_wasm.js @@ -0,0 +1,10 @@ +/* tslint:disable */ +import * as wasm from './electron_yew_wasm_bg'; + +/** +* @returns {void} +*/ +export function main() { + return wasm.main(); +} + diff --git a/electron_yew_wasm/app/index.html b/electron_yew_wasm/app/index.html new file mode 100644 index 0000000..d82f118 --- /dev/null +++ b/electron_yew_wasm/app/index.html @@ -0,0 +1,11 @@ + + + + + + + +
Loading...
+ + ", JS.clone()); + + run("wasm example", Content::Html(html), Some(size), resizable, debug, + move |webview| {}, + move |webview, arg, userdata| {}, + 0); +}