Merge remote-tracking branch 'Superalgos/develop' into develop
This commit is contained in:
commit
5a3063e930
14 files changed
+1489
-1363
No files matched your search
@@ -16,7 +16,9 @@
|
||||
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.13/css/all.css"
|
||||
integrity="sha384-DNOHZ68U8hZfKXOrtjWvjxusGo9WQnrNx2sqG0tfsghAvtVlRW3tvkXWZh58N9jp" crossorigin="anonymous">
|
||||
<link rel="shortcut icon" type="image/png/ico" href="/favicon.ico" />
|
||||
|
||||
<script src="https://unpkg.com/apollo-client-browser@1.7.0"></script>
|
||||
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
|
||||
|
||||
<script type="text/javascript" src="<%= process.env.CANVAS_URL %>Scripts/require.js"></script>
|
||||
<script type="text/javascript" src="<%= process.env.CANVAS_URL %>Scripts/AppPreLoader.js"></script>
|
||||
@@ -55,7 +57,7 @@
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body id="body" onload="loadCanvas()" style=" margin: 0; height: 100%; overflow: hidden" onresize="onResize()">
|
||||
<body id="body" onload="loadCanvas()" style=" margin: 0; height: 100%;" onresize="onResize()">
|
||||
|
||||
<div id="masterApp"></div>
|
||||
<div id="canvasApp"></div>
|
||||
@@ -64,4 +66,4 @@
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
</html>
|
||||
Generated
+99
-112
@@ -1564,18 +1564,20 @@
|
||||
}
|
||||
},
|
||||
"@superalgos/strategizer-client": {
|
||||
"version": "0.0.15",
|
||||
"resolved": "https://registry.npmjs.org/@superalgos/strategizer-client/-/strategizer-client-0.0.15.tgz",
|
||||
"integrity": "sha512-wI/V8jsBlH391qLIY07Q05AOmHUPViES2Ow/klLYCslRaadMbWqYrWYJSoT618eH3Fnlr+M57lkQWIbrSLxvbg==",
|
||||
"version": "0.0.18",
|
||||
"resolved": "https://registry.npmjs.org/@superalgos/strategizer-client/-/strategizer-client-0.0.18.tgz",
|
||||
"integrity": "sha512-A/FwmTej1Gvxt0v66DyJfzOp3YZKR7vga0VKsMfDmX89lUOaQk2qdb3w8W2eCTw8jAwT2uoY67fXBmxiFiQQQA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@material-ui/core": "^3.6.2",
|
||||
"@material-ui/icons": "^3.0.1",
|
||||
"apollo-client": "^2.5.1",
|
||||
"brace": "^0.11.1",
|
||||
"graphql": "^14.0.2",
|
||||
"graphql-tag": "^2.10.0",
|
||||
"lodash": "^4.17.11",
|
||||
"react": "^16.8.4",
|
||||
"react-ace": "^6.5.0",
|
||||
"react-apollo": "^2.5.2",
|
||||
"react-dom": "^16.8.4",
|
||||
"react-markdown": "^4.0.6",
|
||||
@@ -1583,13 +1585,13 @@
|
||||
}
|
||||
},
|
||||
"@superalgos/teams-client": {
|
||||
"version": "0.0.38",
|
||||
"resolved": "https://registry.npmjs.org/@superalgos/teams-client/-/teams-client-0.0.38.tgz",
|
||||
"integrity": "sha512-Mbz0klKWyN9qP8Zds1khpXHx0FEHMWxDh7et5J2Rl/YTF3TqfBILtbgORJ6x6B8toz5FxBhvE6mZjHnvvY05fw==",
|
||||
"version": "0.0.40",
|
||||
"resolved": "https://registry.npmjs.org/@superalgos/teams-client/-/teams-client-0.0.40.tgz",
|
||||
"integrity": "sha512-ss07awABw2V83y6nviWjxQliNykJZgl02UGn2rQcLKQqEmfoPqGnqysAvPBmwhDN/s2CvIGeMuiJrkXMOPrIAg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@azure/storage-blob": "^10.0.0-preview",
|
||||
"@superalgos/web-components": "0.0.22",
|
||||
"@superalgos/web-components": "0.0.23",
|
||||
"apollo-cache-inmemory": "^1.3.5",
|
||||
"apollo-client": "^2.4.2",
|
||||
"apollo-link": "^1.2.3",
|
||||
@@ -1618,9 +1620,9 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"graphql": {
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/graphql/-/graphql-14.2.1.tgz",
|
||||
"integrity": "sha512-2PL1UbvKeSjy/lUeJqHk+eR9CvuErXoCNwJI4jm3oNFEeY+9ELqHNKO1ZuSxAkasPkpWbmT/iMRMFxd3cEL3tQ==",
|
||||
"version": "14.3.0",
|
||||
"resolved": "https://registry.npmjs.org/graphql/-/graphql-14.3.0.tgz",
|
||||
"integrity": "sha512-MdfI4v7kSNC3NhB7cF8KNijDsifuWO2XOtzpyququqaclO8wVuChYv+KogexDwgP5sp7nFI9Z6N4QHgoLkfjrg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"iterall": "^1.2.2"
|
||||
@@ -1686,9 +1688,9 @@
|
||||
}
|
||||
},
|
||||
"@superalgos/web-components": {
|
||||
"version": "0.0.22",
|
||||
"resolved": "https://registry.npmjs.org/@superalgos/web-components/-/web-components-0.0.22.tgz",
|
||||
"integrity": "sha512-TsPUllSXbZtIX1I4kAdA4vgarmEkVLHOhB6Kq5syAwm2gps6uNkl/pSMOb18h803H8osT/rHjhxA2Uyive4/4Q==",
|
||||
"version": "0.0.23",
|
||||
"resolved": "https://registry.npmjs.org/@superalgos/web-components/-/web-components-0.0.23.tgz",
|
||||
"integrity": "sha512-lychWtU8KZ61yh7OYwt/Gp/0lbRRL6ZP7dzGstq1BDxJLf74c+c5DaMJl9bOv60srlZUs0qU4IR6ZJdR3pWkqQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@azure/storage-blob": "^10.3.0",
|
||||
@@ -1704,15 +1706,15 @@
|
||||
"react": "^16.8.6",
|
||||
"react-apollo": "^2.5.4",
|
||||
"react-dom": "^16.8.6",
|
||||
"react-dropzone": "^10.1.3",
|
||||
"react-dropzone": "^10.1.4",
|
||||
"react-helmet": "^5.2.0",
|
||||
"react-router-dom": "^5.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"graphql": {
|
||||
"version": "14.2.1",
|
||||
"resolved": "https://registry.npmjs.org/graphql/-/graphql-14.2.1.tgz",
|
||||
"integrity": "sha512-2PL1UbvKeSjy/lUeJqHk+eR9CvuErXoCNwJI4jm3oNFEeY+9ELqHNKO1ZuSxAkasPkpWbmT/iMRMFxd3cEL3tQ==",
|
||||
"version": "14.3.0",
|
||||
"resolved": "https://registry.npmjs.org/graphql/-/graphql-14.3.0.tgz",
|
||||
"integrity": "sha512-MdfI4v7kSNC3NhB7cF8KNijDsifuWO2XOtzpyququqaclO8wVuChYv+KogexDwgP5sp7nFI9Z6N4QHgoLkfjrg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"iterall": "^1.2.2"
|
||||
@@ -1788,9 +1790,9 @@
|
||||
}
|
||||
},
|
||||
"ts-invariant": {
|
||||
"version": "0.4.1",
|
||||
"resolved": "https://registry.npmjs.org/ts-invariant/-/ts-invariant-0.4.1.tgz",
|
||||
"integrity": "sha512-fdL8AZinDiVKMsOI0cOWHLprS85LWy2p/eVSctVe6fpZF9BAvO59sQYMEWQ37yybBtlKU2zkmILYmy1jrOf6+g==",
|
||||
"version": "0.4.2",
|
||||
"resolved": "https://registry.npmjs.org/ts-invariant/-/ts-invariant-0.4.2.tgz",
|
||||
"integrity": "sha512-PTAAn8lJPEdRBJJEs4ig6MVZWfO12yrFzV7YaPslmyhG7+4MA279y4BXT3f72gXeVl0mC1aAWq2rMX4eKTWU/Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"tslib": "^1.9.3"
|
||||
@@ -2345,7 +2347,7 @@
|
||||
"dependencies": {
|
||||
"@types/tapable": {
|
||||
"version": "0.2.5",
|
||||
"resolved": "http://registry.npmjs.org/@types/tapable/-/tapable-0.2.5.tgz",
|
||||
"resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-0.2.5.tgz",
|
||||
"integrity": "sha512-dEoVvo/I9QFomyhY+4Q6Qk+I+dhG59TYceZgC6Q0mCifVPErx6Y83PNTKGDS5e9h9Eti6q0S2mm16BU6iQK+3w==",
|
||||
"dev": true
|
||||
}
|
||||
@@ -3374,7 +3376,7 @@
|
||||
},
|
||||
"axios": {
|
||||
"version": "0.18.0",
|
||||
"resolved": "http://registry.npmjs.org/axios/-/axios-0.18.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-0.18.0.tgz",
|
||||
"integrity": "sha1-MtU+SFHv3AoRmTts0AB4nXDAUQI=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -3418,7 +3420,7 @@
|
||||
},
|
||||
"chalk": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -3554,7 +3556,7 @@
|
||||
},
|
||||
"babel-plugin-syntax-flow": {
|
||||
"version": "6.18.0",
|
||||
"resolved": "http://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz",
|
||||
"integrity": "sha1-TDqyCiryaqIM0lmVw5jE63AxDI0=",
|
||||
"dev": true
|
||||
},
|
||||
@@ -4327,6 +4329,12 @@
|
||||
"resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
|
||||
"integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24="
|
||||
},
|
||||
"brace": {
|
||||
"version": "0.11.1",
|
||||
"resolved": "https://registry.npmjs.org/brace/-/brace-0.11.1.tgz",
|
||||
"integrity": "sha1-SJb8ydVE7vRfS7dmDbMg07N5/lg=",
|
||||
"dev": true
|
||||
},
|
||||
"brace-expansion": {
|
||||
"version": "1.1.11",
|
||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
|
||||
@@ -4407,7 +4415,7 @@
|
||||
},
|
||||
"browserify-aes": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
|
||||
"integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -4444,7 +4452,7 @@
|
||||
},
|
||||
"browserify-rsa": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
|
||||
"integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -4497,7 +4505,7 @@
|
||||
},
|
||||
"buffer": {
|
||||
"version": "4.9.1",
|
||||
"resolved": "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz",
|
||||
"integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -4605,7 +4613,7 @@
|
||||
},
|
||||
"callsites": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "http://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz",
|
||||
"integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA="
|
||||
},
|
||||
"camel-case": {
|
||||
@@ -5788,7 +5796,7 @@
|
||||
},
|
||||
"core-js": {
|
||||
"version": "1.2.7",
|
||||
"resolved": "http://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz",
|
||||
"resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz",
|
||||
"integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY="
|
||||
},
|
||||
"core-js-compat": {
|
||||
@@ -5846,7 +5854,7 @@
|
||||
},
|
||||
"create-hash": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
|
||||
"integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -5859,7 +5867,7 @@
|
||||
},
|
||||
"create-hmac": {
|
||||
"version": "1.1.7",
|
||||
"resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
|
||||
"resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
|
||||
"integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -5903,13 +5911,13 @@
|
||||
"dependencies": {
|
||||
"node-fetch": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "http://registry.npmjs.org/node-fetch/-/node-fetch-2.1.2.tgz",
|
||||
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.1.2.tgz",
|
||||
"integrity": "sha1-q4hOjn5X44qUR1POxwb3iNF2i7U=",
|
||||
"dev": true
|
||||
},
|
||||
"whatwg-fetch": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "http://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz",
|
||||
"resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz",
|
||||
"integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==",
|
||||
"dev": true
|
||||
}
|
||||
@@ -5963,7 +5971,7 @@
|
||||
},
|
||||
"css-color-names": {
|
||||
"version": "0.0.4",
|
||||
"resolved": "http://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz",
|
||||
"resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz",
|
||||
"integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA="
|
||||
},
|
||||
"css-declaration-sorter": {
|
||||
@@ -6446,7 +6454,7 @@
|
||||
"dependencies": {
|
||||
"globby": {
|
||||
"version": "6.1.0",
|
||||
"resolved": "http://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
|
||||
"integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -6459,7 +6467,7 @@
|
||||
"dependencies": {
|
||||
"pify": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
|
||||
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
|
||||
"dev": true
|
||||
}
|
||||
@@ -6551,6 +6559,12 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"diff-match-patch": {
|
||||
"version": "1.0.4",
|
||||
"resolved": "https://registry.npmjs.org/diff-match-patch/-/diff-match-patch-1.0.4.tgz",
|
||||
"integrity": "sha512-Uv3SW8bmH9nAtHKaKSanOQmj2DnlH65fUpcrMdfdaOxUG02QQ4YGZ8AE7kKOMisF7UqvOlGKVYWRvezdncW9lg==",
|
||||
"dev": true
|
||||
},
|
||||
"diff-sequences": {
|
||||
"version": "24.3.0",
|
||||
"resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-24.3.0.tgz",
|
||||
@@ -6559,7 +6573,7 @@
|
||||
},
|
||||
"diffie-hellman": {
|
||||
"version": "5.0.3",
|
||||
"resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
|
||||
"integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -7975,7 +7989,7 @@
|
||||
},
|
||||
"finalhandler": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "http://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz",
|
||||
"integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -9246,7 +9260,7 @@
|
||||
},
|
||||
"http-errors": {
|
||||
"version": "1.6.3",
|
||||
"resolved": "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
|
||||
"integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -9756,7 +9770,7 @@
|
||||
},
|
||||
"is-obj": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "http://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
|
||||
"integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8="
|
||||
},
|
||||
"is-path-cwd": {
|
||||
@@ -11910,7 +11924,7 @@
|
||||
},
|
||||
"chalk": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -12491,7 +12505,7 @@
|
||||
},
|
||||
"mkdirp": {
|
||||
"version": "0.5.1",
|
||||
"resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
|
||||
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
|
||||
"requires": {
|
||||
"minimist": "0.0.8"
|
||||
@@ -15914,52 +15928,6 @@
|
||||
"read-pkg": "^3.0.0",
|
||||
"shell-quote": "^1.6.1",
|
||||
"string.prototype.padend": "^3.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"load-json-file": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz",
|
||||
"integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"graceful-fs": "^4.1.2",
|
||||
"parse-json": "^4.0.0",
|
||||
"pify": "^3.0.0",
|
||||
"strip-bom": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"path-type": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
|
||||
"integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"pify": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"pify": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
|
||||
"integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
|
||||
"dev": true
|
||||
},
|
||||
"read-pkg": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
|
||||
"integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"load-json-file": "^4.0.0",
|
||||
"normalize-package-data": "^2.3.2",
|
||||
"path-type": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"strip-bom": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
|
||||
"integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"npm-run-path": {
|
||||
@@ -16381,9 +16349,9 @@
|
||||
}
|
||||
},
|
||||
"parse-entities": {
|
||||
"version": "1.2.1",
|
||||
"resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.1.tgz",
|
||||
"integrity": "sha512-NBWYLQm1KSoDKk7GAHyioLTvCZ5QjdH/ASBBQTD3iLiAWJXS5bg1jEWI8nIJ+vgVvsceBVBcDGRWSo0KVQBvvg==",
|
||||
"version": "1.2.2",
|
||||
"resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.2.tgz",
|
||||
"integrity": "sha512-NzfpbxW/NPrzZ/yYSoQxyqUZMZXIdCfE0OIN4ESsnptHJECoUk3FZktxNuzQf4tjt5UEopnxpYJbvYuxIFDdsg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"character-entities": "^1.0.0",
|
||||
@@ -16652,7 +16620,7 @@
|
||||
"dependencies": {
|
||||
"async": {
|
||||
"version": "1.5.2",
|
||||
"resolved": "http://registry.npmjs.org/async/-/async-1.5.2.tgz",
|
||||
"resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
|
||||
"integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=",
|
||||
"dev": true
|
||||
},
|
||||
@@ -17584,7 +17552,7 @@
|
||||
},
|
||||
"acorn-jsx": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "http://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz",
|
||||
"integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -17593,7 +17561,7 @@
|
||||
"dependencies": {
|
||||
"acorn": {
|
||||
"version": "3.3.0",
|
||||
"resolved": "http://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz",
|
||||
"integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=",
|
||||
"dev": true
|
||||
}
|
||||
@@ -17651,7 +17619,7 @@
|
||||
},
|
||||
"eslint": {
|
||||
"version": "4.19.1",
|
||||
"resolved": "http://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz",
|
||||
"integrity": "sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -17697,7 +17665,7 @@
|
||||
},
|
||||
"espree": {
|
||||
"version": "3.5.4",
|
||||
"resolved": "http://registry.npmjs.org/espree/-/espree-3.5.4.tgz",
|
||||
"resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz",
|
||||
"integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -17707,7 +17675,7 @@
|
||||
},
|
||||
"external-editor": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "http://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz",
|
||||
"integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -17774,7 +17742,7 @@
|
||||
},
|
||||
"regexpp": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "http://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz",
|
||||
"integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==",
|
||||
"dev": true
|
||||
},
|
||||
@@ -18466,6 +18434,19 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"react-ace": {
|
||||
"version": "6.5.0",
|
||||
"resolved": "https://registry.npmjs.org/react-ace/-/react-ace-6.5.0.tgz",
|
||||
"integrity": "sha512-W8iA6669Tf3sfjCsBg8gKs2pUVMy6BroX6O6GZcgadnLN+MTq7jhs6Q2Rsjq3E3SrWjyA9vZgs1Uzjy8XgWX5w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"brace": "^0.11.1",
|
||||
"diff-match-patch": "^1.0.4",
|
||||
"lodash.get": "^4.4.2",
|
||||
"lodash.isequal": "^4.5.0",
|
||||
"prop-types": "^15.6.2"
|
||||
}
|
||||
},
|
||||
"react-apollo": {
|
||||
"version": "2.5.2",
|
||||
"resolved": "https://registry.npmjs.org/react-apollo/-/react-apollo-2.5.2.tgz",
|
||||
@@ -18652,15 +18633,21 @@
|
||||
"warning": "^4.0.1"
|
||||
}
|
||||
},
|
||||
"react-fast-compare": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-2.0.4.tgz",
|
||||
"integrity": "sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw==",
|
||||
"dev": true
|
||||
},
|
||||
"react-helmet": {
|
||||
"version": "5.2.0",
|
||||
"resolved": "https://registry.npmjs.org/react-helmet/-/react-helmet-5.2.0.tgz",
|
||||
"integrity": "sha1-qBgR3yExOm1VxfBYxK66XW89l6c=",
|
||||
"version": "5.2.1",
|
||||
"resolved": "https://registry.npmjs.org/react-helmet/-/react-helmet-5.2.1.tgz",
|
||||
"integrity": "sha512-CnwD822LU8NDBnjCpZ4ySh8L6HYyngViTZLfBBb3NjtrpN8m49clH8hidHouq20I51Y6TpCTISCBbqiY5GamwA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"deep-equal": "^1.0.1",
|
||||
"object-assign": "^4.1.1",
|
||||
"prop-types": "^15.5.4",
|
||||
"react-fast-compare": "^2.0.2",
|
||||
"react-side-effect": "^1.1.0"
|
||||
}
|
||||
},
|
||||
@@ -19389,7 +19376,7 @@
|
||||
},
|
||||
"readable-stream": {
|
||||
"version": "2.3.6",
|
||||
"resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
|
||||
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
|
||||
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
|
||||
"requires": {
|
||||
"core-util-is": "~1.0.0",
|
||||
@@ -19916,7 +19903,7 @@
|
||||
"dependencies": {
|
||||
"css-select": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "http://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
|
||||
"integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -20082,7 +20069,7 @@
|
||||
},
|
||||
"callsites": {
|
||||
"version": "0.2.0",
|
||||
"resolved": "http://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz",
|
||||
"integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=",
|
||||
"dev": true
|
||||
},
|
||||
@@ -20809,7 +20796,7 @@
|
||||
},
|
||||
"sha.js": {
|
||||
"version": "2.4.11",
|
||||
"resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
|
||||
"resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
|
||||
"integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -21727,7 +21714,7 @@
|
||||
},
|
||||
"through": {
|
||||
"version": "2.3.8",
|
||||
"resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz",
|
||||
"resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
|
||||
"integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
|
||||
"dev": true
|
||||
},
|
||||
@@ -22477,7 +22464,7 @@
|
||||
},
|
||||
"acorn-jsx": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "http://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz",
|
||||
"integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -22486,7 +22473,7 @@
|
||||
"dependencies": {
|
||||
"acorn": {
|
||||
"version": "3.3.0",
|
||||
"resolved": "http://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz",
|
||||
"integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=",
|
||||
"dev": true
|
||||
}
|
||||
@@ -22503,7 +22490,7 @@
|
||||
},
|
||||
"espree": {
|
||||
"version": "3.5.4",
|
||||
"resolved": "http://registry.npmjs.org/espree/-/espree-3.5.4.tgz",
|
||||
"resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz",
|
||||
"integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -24103,7 +24090,7 @@
|
||||
},
|
||||
"wrap-ansi": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
|
||||
"integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -24191,7 +24178,7 @@
|
||||
},
|
||||
"xmlbuilder": {
|
||||
"version": "9.0.7",
|
||||
"resolved": "http://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz",
|
||||
"resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz",
|
||||
"integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=",
|
||||
"dev": true
|
||||
},
|
||||
|
||||
+4
-4
@@ -36,10 +36,10 @@
|
||||
"@superalgos/key-vault-client": "0.0.32",
|
||||
"@superalgos/logs-client": "0.0.1",
|
||||
"@superalgos/operations-client": "0.0.34",
|
||||
"@superalgos/strategizer-client": "0.0.15",
|
||||
"@superalgos/teams-client": "0.0.38",
|
||||
"@superalgos/users-client": "0.0.26",
|
||||
"@superalgos/web-components": "0.0.22",
|
||||
"@superalgos/strategizer-client": "0.0.18",
|
||||
"@superalgos/teams-client": "0.0.40",
|
||||
"@superalgos/users-client": "0.0.27",
|
||||
"@superalgos/web-components": "0.0.23",
|
||||
"autoprefixer": "^9.2.0",
|
||||
"babel-loader": "^8.0.4",
|
||||
"babel-preset-flow": "6.23.0",
|
||||
|
||||
@@ -2,13 +2,15 @@ import Auth0Lock from 'auth0-lock'
|
||||
import gql from 'graphql-tag'
|
||||
|
||||
import { getItem, setItem } from '../utils/local-storage'
|
||||
import { validObject, deleteCookie } from '../utils/js-helpers'
|
||||
import { validObject, deleteCookie, slugify, isEmpty } from '../utils/js-helpers'
|
||||
import Log from '../utils/log'
|
||||
|
||||
import { client } from '../graphql/apollo'
|
||||
|
||||
import { AUTH_CONFIG } from './Auth0' // create by renaming Auth0.sample.js to Auth0.js and setting vars
|
||||
|
||||
import { setInitialEcosystem } from '../utils/ecosystem'
|
||||
|
||||
const AUTHENTICATE = gql`
|
||||
mutation authenticate($idToken: String!) {
|
||||
users_Authenticate(idToken: $idToken) {
|
||||
@@ -28,6 +30,25 @@ const VERIFY_TEAM_INVITE = gql`
|
||||
}
|
||||
}
|
||||
`
|
||||
const GET_TEAMS_BY_OWNER = gql`
|
||||
query teamsByOwnerQuery {
|
||||
teams_TeamsByOwner {
|
||||
id
|
||||
name
|
||||
slug
|
||||
}
|
||||
}
|
||||
`
|
||||
|
||||
const CREATE_TEAM = gql`
|
||||
mutation CreateTeamMutation($name: String!, $slug: String!, $botName: String!, $botSlug: String!) {
|
||||
teams_CreateTeam(name: $name, slug: $slug, botName: $botName, botSlug: $botSlug) {
|
||||
id
|
||||
name
|
||||
slug
|
||||
}
|
||||
}
|
||||
`
|
||||
|
||||
export const defaultOptions = {
|
||||
oidcConformant: true,
|
||||
@@ -203,7 +224,34 @@ class Auth {
|
||||
authId: response.data.users_Authenticate.authId,
|
||||
alias: response.data.users_Authenticate.alias
|
||||
}
|
||||
if (validObject(user, 'alias')) {
|
||||
Log.info(user.alias)
|
||||
const existingTeam = await client.query({
|
||||
query: GET_TEAMS_BY_OWNER
|
||||
})
|
||||
Log.info(existingTeam)
|
||||
Log.info(existingTeam.data.teams_TeamsByOwner)
|
||||
if (validObject(existingTeam.data, 'teams_TeamsByOwner') && isEmpty(existingTeam.data.teams_TeamsByOwner)) {
|
||||
const slug = slugify(user.alias)
|
||||
const newTeam = await client.mutate({
|
||||
mutation: CREATE_TEAM,
|
||||
variables: {
|
||||
name: slug,
|
||||
slug: slug,
|
||||
botName: `bot-${slug}`,
|
||||
botSlug: `bot-${slug}`
|
||||
}
|
||||
})
|
||||
Log.info(newTeam)
|
||||
Log.info(newTeam.data.teams_CreateTeam)
|
||||
if (!validObject(newTeam.data, 'teams_CreateTeam') || isEmpty(newTeam.data.teams_CreateTeam)) {
|
||||
throw newTeam.data.error
|
||||
}
|
||||
Log.info('Team and Bot Creation Success')
|
||||
}
|
||||
}
|
||||
setItem('user', JSON.stringify(user))
|
||||
|
||||
window.location.href = '/'
|
||||
return response.data
|
||||
} catch (err) {
|
||||
@@ -213,7 +261,10 @@ class Auth {
|
||||
|
||||
logout () {
|
||||
// Clear access token and ID token from local storage
|
||||
window.localStorage.clear()
|
||||
window.localStorage.removeItem('access_token')
|
||||
window.localStorage.removeItem('user')
|
||||
window.localStorage.removeItem('name')
|
||||
window.localStorage.removeItem('ecosystem')
|
||||
deleteCookie('ajs_anonymous_id')
|
||||
deleteCookie('ajs_user_id')
|
||||
deleteCookie('current_tenant')
|
||||
|
||||
@@ -0,0 +1,121 @@
|
||||
import gql from 'graphql-tag'
|
||||
|
||||
export const ECOSYSTEM_QUERY = gql`
|
||||
query {
|
||||
web_GetEcosystem {
|
||||
id
|
||||
devTeams {
|
||||
codeName
|
||||
displayName
|
||||
host {
|
||||
url
|
||||
storage
|
||||
container
|
||||
accessKey
|
||||
}
|
||||
bots {
|
||||
codeName
|
||||
displayName
|
||||
type
|
||||
profilePicture
|
||||
repo
|
||||
configFile
|
||||
products{
|
||||
codeName
|
||||
displayName
|
||||
description
|
||||
dataSets{
|
||||
codeName
|
||||
type
|
||||
validPeriods
|
||||
filePath
|
||||
fileName
|
||||
dataRange{
|
||||
filePath
|
||||
fileName
|
||||
}
|
||||
}
|
||||
exchangeList{
|
||||
name
|
||||
}
|
||||
plotter{
|
||||
devTeam
|
||||
codeName
|
||||
moduleName
|
||||
repo
|
||||
}
|
||||
}
|
||||
}
|
||||
plotters {
|
||||
codeName
|
||||
displayName
|
||||
modules{
|
||||
codeName
|
||||
moduleName
|
||||
description
|
||||
profilePicture
|
||||
panels{
|
||||
codeName
|
||||
moduleName
|
||||
event
|
||||
}
|
||||
}
|
||||
repo
|
||||
configFile
|
||||
}
|
||||
}
|
||||
hosts {
|
||||
codeName
|
||||
displayName
|
||||
host {
|
||||
url
|
||||
storage
|
||||
container
|
||||
accessKey
|
||||
}
|
||||
competitions {
|
||||
codeName
|
||||
displayName
|
||||
description
|
||||
startDatetime
|
||||
finishDatetime
|
||||
formula
|
||||
plotter{
|
||||
devTeam
|
||||
codeName
|
||||
host{
|
||||
url
|
||||
storage
|
||||
container
|
||||
accessKey
|
||||
}
|
||||
moduleName
|
||||
repo
|
||||
}
|
||||
rules
|
||||
prizes
|
||||
participants
|
||||
repo
|
||||
configFile
|
||||
}
|
||||
plotters {
|
||||
codeName
|
||||
displayName
|
||||
modules{
|
||||
codeName
|
||||
moduleName
|
||||
description
|
||||
profilePicture
|
||||
panels{
|
||||
codeName
|
||||
moduleName
|
||||
event
|
||||
}
|
||||
}
|
||||
repo
|
||||
configFile
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
`
|
||||
@@ -15,7 +15,9 @@ const authRetryLink = onError(
|
||||
// User access token has expired
|
||||
// console.log('authLink: ', graphQLErrors) // check for error message to intercept and resend with Auth0 access token
|
||||
if (graphQLErrors[0].message === 'Context creation failed: jwt expired') {
|
||||
window.localStorage.clear()
|
||||
window.localStorage.removeItem('access_token')
|
||||
window.localStorage.removeItem('user')
|
||||
window.localStorage.removeItem('name')
|
||||
location.reload()
|
||||
} else if (graphQLErrors[0].message === 'Not logged in') {
|
||||
// We assume we have auth0 access token needed to run the async request
|
||||
@@ -74,7 +76,7 @@ const defaultOptions = {
|
||||
errorPolicy: 'all'
|
||||
},
|
||||
query: {
|
||||
fetchPolicy: 'cache-and-network',
|
||||
fetchPolicy: 'network-only',
|
||||
errorPolicy: 'all'
|
||||
},
|
||||
mutate: {
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
import { client } from '../graphql/apollo'
|
||||
import { ECOSYSTEM_QUERY } from '../graphql/EcosystemQuery'
|
||||
import Log from './log'
|
||||
|
||||
export async function setInitialEcosystem() {
|
||||
try {
|
||||
const ecosystem = await client.query({ query: ECOSYSTEM_QUERY })
|
||||
window.localStorage.setItem('ecosystem', JSON.stringify(ecosystem.data.web_GetEcosystem))
|
||||
} catch (error) {
|
||||
Log.error('Error getting the ecosystem: ' + error)
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
import debug from 'debug'
|
||||
|
||||
const BASE = 'advanced-algos'
|
||||
const BASE = 'superalgos'
|
||||
const COLOURS = {
|
||||
info: 'blue',
|
||||
warn: 'orange',
|
||||
|
||||
@@ -17,38 +17,17 @@ class Home extends Component {
|
||||
}
|
||||
render () {
|
||||
let user = JSON.parse(this.state.user)
|
||||
if(this.state.user !== undefined && this.state.user !== null){}
|
||||
if (this.state.user !== undefined && this.state.user !== null) {}
|
||||
return (
|
||||
<React.Fragment>
|
||||
{this.state.user !== undefined && this.state.user !== null && (
|
||||
<BannerTopBar
|
||||
size='big landing'
|
||||
title='Superalgos Platform Demo'
|
||||
text='The platform demo is a functional prototype built for exposing and evaluating the multitude of Superalgos platform services. The user experience has not been optimized and will be refined in future use case implementations.'
|
||||
backgroundUrl='https://superalgos.org/img/photos/superalgos-platform.jpg'
|
||||
>
|
||||
<div className='instructions'>
|
||||
<Typography align='center' variant='h4' >DEMO OVERVIEW</Typography>
|
||||
<Typography align='center' variant='subtitle1' >1. <Link to='/teams/manage-teams'>Create a Team and Fork the Template Bots →</Link></Typography>
|
||||
<Typography align='center' variant='subtitle1' >2. <Link to='/strategizer'>Visit the Strategizer and learn how to build a strategy →</Link></Typography>
|
||||
<Typography align='center' variant='subtitle1' >3. <Link to='/clones/add'>Run a clone instance of your Simulator bot to test the strategy →</Link></Typography>
|
||||
<Typography align='center' variant='subtitle1' >4. <Link to='/charts'>View the results of your strategy in the charts →</Link></Typography>
|
||||
<Typography align='center' variant='subtitle1' >5. <Link to='/clones/add'>Now use your strategy with your trading bot by running a backtest clone instance →</Link></Typography>
|
||||
<Typography align='center' variant='subtitle1' gutterBottom>5. <Link to='/keys/addKey'>(Optional) Add an exchange API key to run your trading bot live →</Link></Typography>
|
||||
</div>
|
||||
</BannerTopBar>
|
||||
)}
|
||||
{(this.state.user === undefined || this.state.user === null) && (
|
||||
<BannerTopBar
|
||||
size='big'
|
||||
title='Superalgos Platform Demo'
|
||||
text='People and machines working together to create Superalgos'
|
||||
backgroundUrl='https://superalgos.org/img/photos/superalgos-platform.jpg'
|
||||
/>
|
||||
)}
|
||||
<BannerTopBar
|
||||
size='big'
|
||||
title='Superalgos Platform'
|
||||
text='People and machines working together to create Superalgos'
|
||||
backgroundUrl='https://superalgos.org/img/photos/superalgos-platform.jpg'
|
||||
/>
|
||||
<div className='homePage container'>
|
||||
<Typography variant='h1' align='center' className='title'>Welcome to the Superalgos Platform!</Typography>
|
||||
<Typography variant='h2' align='center' className='subtitle'>TRY OUT THE STRATEGIZER DEMO</Typography>
|
||||
<div className='column'>
|
||||
<Typography align='justify'>
|
||||
Before you begin, please be aware this is an alpha stage deployment.
|
||||
@@ -56,20 +35,12 @@ class Home extends Component {
|
||||
However, you may encounter occasional instability and errors.
|
||||
</Typography>
|
||||
<Typography align='justify'>
|
||||
<strong>At this early stage, the focus of the Superalgos Platform is the Strategizer, a tool directed mostly at traders.</strong>
|
||||
To try out the Demo version hosted here you will need to Sign Up / Login.
|
||||
Once you are logged in, you will find basic instructions on how to proceed,
|
||||
at this home page (click the Superalgos logo to return to this home page).
|
||||
</Typography>
|
||||
</div>
|
||||
<div className='column'>
|
||||
<Typography align='justify'>
|
||||
<strong>If you are a developer, trying out the Strategizer may open your eyes as of what may be achieved with the
|
||||
Strategizer and the Superalgos Platform in general.</strong>
|
||||
</Typography>
|
||||
<Typography align='justify'>
|
||||
The Strategizer is conceived to work with as many indicators and pre programmed strategies as developers are willing to program.
|
||||
</Typography>
|
||||
<Typography align='justify'>
|
||||
If you wish to set up your own indicators and strategies, please get in touch with us and we'll show you how (give us a shout in the Community Telegram)
|
||||
</Typography>
|
||||
|
||||
@@ -34,6 +34,7 @@ export const LoggedIn = props => {
|
||||
<Link to='/users/user' onClick={() => toggleMenuOpen(42, true)}> {displayName} </Link>
|
||||
<ul className='subMenu'>
|
||||
<li><Link to='/users/user' onClick={() => closeAll()}> Your Profile </Link></li>
|
||||
<li><Link to='/teams/manage-teams' onClick={() => closeAll()}> Your Team </Link></li>
|
||||
<li><a href='#' onClick={() => auth.logout()}> Logout </a></li>
|
||||
<li><a href='https://www.superalgos.org/documentation-quick-start.shtml'> Docs </a></li>
|
||||
<li><a href='https://superalgos.org'> Exit Platform </a></li>
|
||||
|
||||
@@ -25,6 +25,7 @@ const usersMenus = {
|
||||
]
|
||||
}
|
||||
|
||||
/*
|
||||
const teamsMenus = {
|
||||
title: 'Teams',
|
||||
to: '/teams',
|
||||
@@ -36,6 +37,7 @@ const teamsMenus = {
|
||||
{ title: 'Report a Bug', to: 'https://github.com/Superalgos/TeamsModule/issues/new', icon: BugReport, externalLink: true }
|
||||
]
|
||||
}
|
||||
*/
|
||||
|
||||
const eventsMenus = {
|
||||
title: 'Events',
|
||||
@@ -85,6 +87,7 @@ const cockpitMenus = {
|
||||
]
|
||||
}
|
||||
|
||||
/*
|
||||
const strategizerMenus = {
|
||||
title: 'Strategizer',
|
||||
to: '/strategizer',
|
||||
@@ -92,14 +95,15 @@ const strategizerMenus = {
|
||||
authenticated: true,
|
||||
submenus: []
|
||||
}
|
||||
*/
|
||||
|
||||
const allMenus = [
|
||||
usersMenus,
|
||||
teamsMenus,
|
||||
// teamsMenus,
|
||||
eventsMenus,
|
||||
keyvaultMenus,
|
||||
operationsMenus,
|
||||
strategizerMenus,
|
||||
// strategizerMenus,
|
||||
cockpitMenus
|
||||
]
|
||||
|
||||
|
||||
@@ -76,7 +76,9 @@ class Header extends Component {
|
||||
let { onTop, mobileOpen, openedMenu } = this.state
|
||||
if (window.localStorage.getItem('access_token')) {
|
||||
if (jwtDecode(window.localStorage.getItem('access_token')).exp < new Date().getTime() / 1000) {
|
||||
window.localStorage.clear()
|
||||
window.localStorage.removeItem('access_token')
|
||||
window.localStorage.removeItem('user')
|
||||
window.localStorage.removeItem('name')
|
||||
window.location.reload()
|
||||
}
|
||||
}
|
||||
@@ -86,7 +88,7 @@ class Header extends Component {
|
||||
if (authenticated && !(this.state.user !== undefined && this.state.user !== null)) {
|
||||
return
|
||||
}
|
||||
let cssChildren = submenus.length === 0 ? null : 'hasChildren';
|
||||
let cssChildren = submenus.length === 0 ? null : 'hasChildren'
|
||||
return (
|
||||
<li
|
||||
onMouseEnter={() => this.toggleMenuOpen(index, bigScreen)}
|
||||
@@ -113,9 +115,6 @@ class Header extends Component {
|
||||
</div>
|
||||
<nav className={mobileOpen ? 'links openedMobile' : 'links'}>
|
||||
<ul className='primaryMenu'>
|
||||
<li className='primaryLink'>
|
||||
<Link to='/'><TutorialIcon className='tutorialIcon' /></Link>
|
||||
</li>
|
||||
<li className='primaryLink'>
|
||||
<Link to='/charts'> Charts </Link>
|
||||
</li>
|
||||
|
||||
Generated
+1156
-1187
File diff suppressed because it is too large.
Load diff
+17
-10
@@ -70,23 +70,27 @@ async function run () {
|
||||
'logs_',
|
||||
process.env.LOGS_API_URL,
|
||||
process.env.LOGS_API_PRESHARED)
|
||||
const transformeStrategizerSchema = await createTransformedRemoteSchema(
|
||||
const transformedStrategizerSchema = await createTransformedRemoteSchema(
|
||||
'strategizer_',
|
||||
process.env.STRATEGIZER_API_URL,
|
||||
process.env.STRATEGIZER_API_PRESHARED)
|
||||
const transformeCockpitSchema = await createTransformedRemoteSchema(
|
||||
const transformedCockpitSchema = await createTransformedRemoteSchema(
|
||||
'cockpit_',
|
||||
process.env.COCKPIT_API_URL,
|
||||
process.env.COCKPIT_API_PRESHARED)
|
||||
const transformedSAWeb = await createTransformedRemoteSchema(
|
||||
'web_',
|
||||
process.env.SAWEB_API_URL,
|
||||
process.env.SAWEB_API_PRESHARED)
|
||||
|
||||
var schemas = []
|
||||
var resolvers = {}
|
||||
|
||||
if (transformedTeamsSchema) {
|
||||
schemas.push(transformedTeamsSchema)
|
||||
if (transformedUsersSchema && transformedEventsSchema && transformeStrategizerSchema) {
|
||||
if (transformedUsersSchema && transformedEventsSchema && transformedStrategizerSchema) {
|
||||
schemas.push(teams.linkSchemaDefs)
|
||||
resolvers = Object.assign(resolvers, teams.resolver(transformedUsersSchema, transformedEventsSchema, transformeStrategizerSchema))
|
||||
resolvers = Object.assign(resolvers, teams.resolver(transformedUsersSchema, transformedEventsSchema, transformedStrategizerSchema))
|
||||
}
|
||||
}
|
||||
if (transformedUsersSchema) {
|
||||
@@ -104,9 +108,9 @@ async function run () {
|
||||
}
|
||||
if (transformedOperationsSchema) {
|
||||
schemas.push(transformedOperationsSchema)
|
||||
if (transformedTeamsSchema && transformeCockpitSchema) {
|
||||
if (transformedTeamsSchema && transformedCockpitSchema) {
|
||||
schemas.push(operations.linkSchemaDefs)
|
||||
resolvers = Object.assign(resolvers, operations.resolver(transformedTeamsSchema, transformeCockpitSchema))
|
||||
resolvers = Object.assign(resolvers, operations.resolver(transformedTeamsSchema, transformedCockpitSchema))
|
||||
}
|
||||
}
|
||||
if (transformedNotificationsSchema) {
|
||||
@@ -115,11 +119,14 @@ async function run () {
|
||||
if (transformedLogsSchema) {
|
||||
schemas.push(transformedLogsSchema)
|
||||
}
|
||||
if (transformeStrategizerSchema) {
|
||||
schemas.push(transformeStrategizerSchema)
|
||||
if (transformedStrategizerSchema) {
|
||||
schemas.push(transformedStrategizerSchema)
|
||||
}
|
||||
if (transformeCockpitSchema) {
|
||||
schemas.push(transformeCockpitSchema)
|
||||
if (transformedCockpitSchema) {
|
||||
schemas.push(transformedCockpitSchema)
|
||||
}
|
||||
if (transformedSAWeb) {
|
||||
schemas.push(transformedSAWeb)
|
||||
}
|
||||
|
||||
const schema = mergeSchemas({
|
||||
|
||||
Reference in new issue
Block a user