From 53e2b8f398a32ebf3c4b1de681152789cee4b595 Mon Sep 17 00:00:00 2001 From: danielpeintner Date: Thu, 9 Feb 2023 15:22:42 +0100 Subject: [PATCH 1/3] add tools package to browser-bundle --- package-lock.json | 2 ++ packages/browser-bundle/index.js | 1 + packages/browser-bundle/package.json | 1 + 3 files changed, 4 insertions(+) diff --git a/package-lock.json b/package-lock.json index 2d5b08687..0120ec3b4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12996,6 +12996,7 @@ "@node-wot/binding-http": "0.8.5", "@node-wot/binding-websockets": "0.8.5", "@node-wot/core": "0.8.5", + "@node-wot/td-tools": "0.8.5", "browserify": "^17.0.0", "readable-stream4": "npm:readable-stream@^4.0.0", "tinyify": "2.5.2", @@ -13846,6 +13847,7 @@ "@node-wot/binding-http": "0.8.5", "@node-wot/binding-websockets": "0.8.5", "@node-wot/core": "0.8.5", + "@node-wot/td-tools": "*", "browserify": "^17.0.0", "events": "^2.1.0", "inherits": "^2.0.3", diff --git a/packages/browser-bundle/index.js b/packages/browser-bundle/index.js index 452c2b51d..6867756ca 100644 --- a/packages/browser-bundle/index.js +++ b/packages/browser-bundle/index.js @@ -1,6 +1,7 @@ "use strict"; var Wot = {}; +Wot.Tools = require("@node-wot/td-tools"); Wot.Core = require("@node-wot/core"); Wot.Http = require("@node-wot/binding-http"); Wot.WebSocket = require("@node-wot/binding-websockets"); diff --git a/packages/browser-bundle/package.json b/packages/browser-bundle/package.json index e116fd941..16deb0203 100644 --- a/packages/browser-bundle/package.json +++ b/packages/browser-bundle/package.json @@ -16,6 +16,7 @@ "@node-wot/binding-http": "0.8.5", "@node-wot/binding-websockets": "0.8.5", "@node-wot/core": "0.8.5", + "@node-wot/td-tools": "0.8.5", "browserify": "^17.0.0", "readable-stream4": "npm:readable-stream@^4.0.0", "tinyify": "2.5.2", From 780c0cc020872036d7c9059d27c44a01f23fd0ae Mon Sep 17 00:00:00 2001 From: danielpeintner Date: Thu, 9 Feb 2023 15:23:33 +0100 Subject: [PATCH 2/3] add AID tools sample in browser --- examples/browser/aid-tools.html | 77 +++++++++++++++++++++++++++++++++ examples/browser/aid-tools.js | 42 ++++++++++++++++++ 2 files changed, 119 insertions(+) create mode 100644 examples/browser/aid-tools.html create mode 100644 examples/browser/aid-tools.js diff --git a/examples/browser/aid-tools.html b/examples/browser/aid-tools.html new file mode 100644 index 000000000..0e5bf057a --- /dev/null +++ b/examples/browser/aid-tools.html @@ -0,0 +1,77 @@ + + + + TD-Tools node-wot tryout + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

AID Tranformation to TD via node-wot Tools

+ + + + +
+
+
+
+ +
+
+ + + + diff --git a/examples/browser/aid-tools.js b/examples/browser/aid-tools.js new file mode 100644 index 000000000..3696a925f --- /dev/null +++ b/examples/browser/aid-tools.js @@ -0,0 +1,42 @@ +/** + * In the browser, node-wot only works in client mode with limited support. + * + * After adding the following + * + * you can access all node-wot functionality / supported packages through the "Wot" global object. + * Examples: + * var assetInterfaceDescriptionUtil = new Wot.Tools.AssetInterfaceDescriptionUtil(); + * var servient = new Wot.Core.Servient(); + * var client = new Wot.Http.HttpClient(); + * + **/ + +async function transform_to_td() { + let fileElement = document.getElementById("fileInput"); + + // check if user has selected a file + if (fileElement.files.length === 0) { + alert("Please choose a file"); + return; + } + + var fileReader = new FileReader(); + fileReader.onload = function (fileLoadedEvent) { + var aidFromFileLoaded = fileLoadedEvent.target.result; + const template = { title: "AID-Conversion" }; + let tdAID = assetInterfaceDescriptionUtil.transformAAS2TD(aidFromFileLoaded, JSON.stringify(template)); + // let's pretty print the result + tdAID = JSON.stringify(JSON.parse(tdAID), null, 2); + // Note + document.getElementById("tdJSON").value = tdAID; + editorJSON.setValue(tdAID); + }; + fileReader.readAsText(fileElement.files[0], "UTF-8"); +} + +var assetInterfaceDescriptionUtil = new Wot.Tools.AssetInterfaceDescriptionUtil(); + +document.getElementById("transform").onclick = () => { + transform_to_td(); +}; From acd450e3d4a8f5e13027eef6e53e21068a4a53ae Mon Sep 17 00:00:00 2001 From: danielpeintner Date: Thu, 9 Feb 2023 15:25:56 +0100 Subject: [PATCH 3/3] fix: typos --- examples/browser/aid-tools.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/browser/aid-tools.html b/examples/browser/aid-tools.html index 0e5bf057a..11263112c 100644 --- a/examples/browser/aid-tools.html +++ b/examples/browser/aid-tools.html @@ -42,7 +42,7 @@
-

AID Tranformation to TD via node-wot Tools

+

AID Transformation to TD via node-wot Tools

@@ -54,7 +54,7 @@

AID Tranformation to TD via node-wot Tools