aboutsummaryrefslogtreecommitdiff
path: root/playground
diff options
context:
space:
mode:
Diffstat (limited to 'playground')
-rw-r--r--playground/README1
-rw-r--r--playground/animation.html34
-rw-r--r--playground/contract.html68
-rw-r--r--playground/contract_full.html116
4 files changed, 219 insertions, 0 deletions
diff --git a/playground/README b/playground/README
new file mode 100644
index 000000000..9c3d9704a
--- /dev/null
+++ b/playground/README
@@ -0,0 +1 @@
+Contains files with small experiments / prototypes for designers.
diff --git a/playground/animation.html b/playground/animation.html
new file mode 100644
index 000000000..eec913c65
--- /dev/null
+++ b/playground/animation.html
@@ -0,0 +1,34 @@
+<!doctype html>
+<html>
+ <head>
+ <title>Spinner playground</title>
+ <script src="../lib/vendor/system-csp-production.src.js"></script>
+ </head>
+ <html>
+ <div style="display: none;">
+ <img src="../img/icon.png" id="taler-logo" style="display:hidden;">
+ </div>
+ <br />
+ <div id="container"></div>
+ <script>
+ "use strict";
+
+ System.config({
+ defaultJSExtensions: true,
+ });
+
+ System.import("../lib/wallet/chromeBadge")
+ .then((badge) => {
+ let b = new badge.ChromeBadge(window);
+ window.badge = b;
+ document.getElementById("container").appendChild(b.canvas);
+ })
+ .catch((e) => {
+ console.error(e.stack);
+ });
+ </script>
+ <br />
+ <button onclick="badge.startBusy()">start</button>
+ <button onclick="badge.stopBusy()">stop</button>
+ </html>
+</html>
diff --git a/playground/contract.html b/playground/contract.html
new file mode 100644
index 000000000..3bc7d3480
--- /dev/null
+++ b/playground/contract.html
@@ -0,0 +1,68 @@
+<!doctype html>
+<html>
+<head>
+ <title>Contract playground</title>
+ <meta charset="UTF-8">
+ <script src="../lib/vendor/mithril.js"></script>
+ <script src="../lib/i18n.js"></script>
+ <script src="../lib/vendor/system-csp-production.src.js"></script>
+ <script type="application/javascript">
+ var contract = {
+ "H_wire": "ADVPV6Q9P0GF74CD5H5ENYCC862AM34ZS93JDQR2G09SR8868YMPYCVQP8WGGVVYZDY2ZMG703TQESN837VBAEDCGMS2D2RADKFKW08",
+ "amount": {
+ "currency": "KUDOS", "fraction": 100000, "value": 0
+ }
+ ,
+ "auditors": [],
+ "exchanges": [{
+ "master_pub": "CQQZ9DY3MZ1ARMN5K1VKDETS04Y2QCKMMCFHZSWJWWVN82BTTH00",
+ "url": "https://exchange.demo.taler.net/"
+ }],
+ "expiry": "/Date(1483798537)/",
+ "fulfillment_url": "https://blog.demo.taler.net/essay/7._Why_Schools_Should_Exclusively_Use_Free%C2%A0Software?uuid=${H_contract}&timestamp=1475158537&tid=501210171398673",
+ "locations": {}
+ ,
+ "max_fee": {
+ "currency": "KUDOS", "fraction": 0, "value": 3
+ }
+ ,
+ "merchant": {
+ "address": "nowhere", "jurisdiction": "none", "name": "Kudos Inc."
+ }
+ ,
+ "merchant_pub": "9K5V0G537N2RPKGQVYV2Q9WBS8R7QB93RTC7BJF1YE6XQQQ6BS2G",
+ "products": [{
+ "description": "Essay: 7. Why Schools Should Exclusively Use Free Software",
+ "price": {"currency": "KUDOS", "fraction": 100000, "value": 0},
+ "product_id": 0,
+ "quantity": 1
+ }],
+ "refund_deadline": "/Date(1475158537)/",
+ "timestamp": "/Date(1475158537)/",
+ "transaction_id": 501210171398673
+ };
+ </script>
+</head>
+<body>
+ <div id="container"></div>
+<script>
+ "use strict";
+ System.config({
+ defaultJSExtensions: true,
+ });
+
+ document.addEventListener("DOMContentLoaded", () => {
+ System.import("../lib/wallet/renderHtml")
+ .then((render) => {
+ let r = render.renderContract(contract);
+ let component = {view: function () {return r;}}
+ m.mount(document.getElementById("container"), component);
+ }
+ )
+ .catch((e) => {
+ console.error(e.stack);
+ });
+ });
+</script>
+</body>
+</html>
diff --git a/playground/contract_full.html b/playground/contract_full.html
new file mode 100644
index 000000000..e00c2b90f
--- /dev/null
+++ b/playground/contract_full.html
@@ -0,0 +1,116 @@
+<!doctype html>
+<html>
+<head>
+ <title>Contract playground</title>
+ <meta charset="UTF-8">
+ <script src="../lib/vendor/mithril.js"></script>
+ <script src="../lib/i18n.js"></script>
+ <script src="../lib/vendor/system-csp-production.src.js"></script>
+ <script type="application/javascript">
+ var contract = {
+ "H_wire": "ADVPV6Q9P0GF74CD5H5ENYCC862AM34ZS93JDQR2G09SR8868YMPYCVQP8WGGVVYZDY2ZMG703TQESN837VBAEDCGMS2D2RADKFKW08",
+ "amount": {
+ "currency": "KUDOS", "fraction": 100000, "value": 0
+ }
+ ,
+ "auditors": [{
+ "auditor_pub": "ERFPOJ0FRKRLM909ILKDETS04Y2QCKMMCFHZSWJWWVN82BTTH00",
+ "auditor_url": "https://auditor.example.gov/",
+ "denomination_keys": [{"denom_pub_h": "ERFPOJ0FRKRLM909ILKDETS04Y2QCKMMCFHZSWJWWVN82BTTH00",
+ "auditor_sig": "XPROFERPOJERVJPROJ45ETS04Y2QCKMMCFHZSWJWWVN82BTTH00"}]
+ },
+ {
+ "auditor_pub": "09FGKJ0FRKRLM909ILKDETS04Y2QCKMMCFHZSWJWWVN82BTTH00",
+ "auditor_url": "https://auditor-alt.example.gov/",
+ "denomination_keys": [{"denom_pub_h": "RCC0U8KPOKN76PO9ILKDETS04Y2QCKMMCFHZSWJWWVN82BTTH00",
+ "auditor_sig": "VBOOP575JJWRVJPROJ45ETS04Y2QCKMMCFHZSWJWWVN82BTTH00"}]
+ }
+ ],
+ "exchanges": [{
+ "master_pub": "CQQZ9DY3MZ1ARMN5K1VKDETS04Y2QCKMMCFHZSWJWWVN82BTTH00",
+ "url": "https://exchange.demo.taler.net/"
+ },
+ {
+ "master_pub": "OIJ23JIO4Z1ARMN5K1VKDETS04Y2QCKMMCFHZSWJWWVN82BTTH00",
+ "url": "https://exchange.example.com/"
+ }],
+ "expiry": "/Date(1483798537)/",
+ "fulfillment_url": "https://playground-purchase.example.com/fulfillment?x=123",
+ "locations": {"LOC0": {"country": "France",
+ "city": "Bordeaux",
+ "region": "Nouvelle-Aquitaine",
+ "province": "Gironde",
+ "zip_code": "33000",
+ "street": "Pas connu",
+ "street_number": 8},
+ "LOC1": {"country": "USA",
+ "city": "La Fayette",
+ "state": "Louisiana",
+ "zip_code": "70508",
+ "street": "Not given",
+ "street_number": 8}}
+ ,
+ "max_fee": {
+ "currency": "KUDOS", "fraction": 0, "value": 3
+ }
+ ,
+ "merchant": {
+ "address": "nowhere", "jurisdiction": "none", "name": "Kudos Inc."
+ }
+ ,
+ "merchant_pub": "9K5V0G537N2RPKGQVYV2Q9WBS8R7QB93RTC7BJF1YE6XQQQ6BS2G",
+ "products": [{
+ "description": "Essay: 7. Why Schools Should Exclusively Use Free Software",
+ "price": {"currency": "KUDOS", "fraction": 100000, "value": 0},
+ "product_id": 0,
+ "quantity": 1
+ },
+ {
+ "description": "E-reader for playground reads",
+ "price": {"currency": "KUDOS", "fraction": 100000, "value": 10},
+ "product_id": 9,
+ "quantity": 3,
+ "taxes": [{"teatax": {"currency": "KUDOS", "fraction": 1000, "value": 0}},
+ {"IVA": {"currency": "KUDOS", "fraction": 1000, "value": 0}}],
+ "delivery_date": "/Date(1475148537)/",
+ "delivery_location": "LOC1"
+ },
+ {
+ "description": "Fancy playground bookmark",
+ "price": {"currency": "KUDOS", "fraction": 500000, "value": 0},
+ "product_id": 4,
+ "quantity": 1,
+ "taxes": [{"IMP": {"currency": "KUDOS", "fraction": 3000, "value": 0}},
+ {"EUX": {"currency": "KUDOS", "fraction": 10, "value": 0}}],
+ "delivery_date": "/Date(1475138597)/",
+ "delivery_location": "LOC1"
+ }],
+ "refund_deadline": "/Date(1475158537)/",
+ "timestamp": "/Date(1475158537)/",
+ "transaction_id": 501210171398673
+ };
+ </script>
+</head>
+<body>
+ <div id="container"></div>
+<script>
+ "use strict";
+ System.config({
+ defaultJSExtensions: true,
+ });
+
+ document.addEventListener("DOMContentLoaded", () => {
+ System.import("../lib/wallet/renderHtml")
+ .then((render) => {
+ let r = render.renderContract(contract);
+ let component = {view: function () {return r;}}
+ m.mount(document.getElementById("container"), component);
+ }
+ )
+ .catch((e) => {
+ console.error(e.stack);
+ });
+ });
+</script>
+</body>
+</html>