Update all js-related examples to the latest version of JS SDK and Aqua compiler (#20)

This commit is contained in:
Pavel
2021-09-12 00:51:50 +03:00
committed by GitHub
parent 43a5e307f4
commit 37e848c9f5
87 changed files with 105592 additions and 40403 deletions

View File

@@ -0,0 +1,2 @@
dist/
src/_aqua/

View File

@@ -1,133 +0,0 @@
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.get_price_par = exports.get_price = void 0;
var api_unstable_1 = require("@fluencelabs/fluence/dist/api.unstable");
function get_price(client, coin, currency, node, pg_sid, mean_sid, config) {
return __awaiter(this, void 0, void 0, function () {
var request, promise;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
promise = new Promise(function (resolve, reject) {
var r = new api_unstable_1.RequestFlowBuilder()
.disableInjections()
.withRawScript("\n(xor\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (call %init_peer_id% (\"getDataSrv\" \"-relay-\") [] -relay-)\n (call %init_peer_id% (\"getDataSrv\" \"coin\") [] coin)\n )\n (call %init_peer_id% (\"getDataSrv\" \"currency\") [] currency)\n )\n (call %init_peer_id% (\"getDataSrv\" \"node\") [] node)\n )\n (call %init_peer_id% (\"getDataSrv\" \"pg_sid\") [] pg_sid)\n )\n (call %init_peer_id% (\"getDataSrv\" \"mean_sid\") [] mean_sid)\n )\n (call -relay- (\"op\" \"noop\") [])\n )\n (xor\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (call node (\"op\" \"string_to_b58\") [node] k)\n (call node (\"peer\" \"timestamp_ms\") [] ts_ms0)\n )\n (call node (pg_sid \"price_getter\") [coin currency ts_ms0] res0)\n )\n (call node (\"op\" \"identity\") [res0.$.result!] $prices)\n )\n (call node (\"peer\" \"timestamp_ms\") [] ts_ms1)\n )\n (call node (pg_sid \"price_getter\") [coin currency ts_ms1] res1)\n )\n (call node (\"op\" \"identity\") [res1.$.result!] $prices)\n )\n (call node (mean_sid \"mean\") [$prices] result)\n )\n (seq\n (call -relay- (\"op\" \"noop\") [])\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 1])\n )\n )\n )\n (call -relay- (\"op\" \"noop\") [])\n )\n (xor\n (call %init_peer_id% (\"callbackSrv\" \"response\") [result])\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 2])\n )\n )\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 3])\n)\n\n ")
.configHandler(function (h) {
h.on('getDataSrv', '-relay-', function () {
return client.relayPeerId;
});
h.on('getDataSrv', 'coin', function () { return coin; });
h.on('getDataSrv', 'currency', function () { return currency; });
h.on('getDataSrv', 'node', function () { return node; });
h.on('getDataSrv', 'pg_sid', function () { return pg_sid; });
h.on('getDataSrv', 'mean_sid', function () { return mean_sid; });
h.onEvent('callbackSrv', 'response', function (args) {
var res = args[0];
resolve(res);
});
h.onEvent('errorHandlingSrv', 'error', function (args) {
// assuming error is the single argument
var err = args[0];
reject(err);
});
})
.handleScriptError(reject)
.handleTimeout(function () {
reject('Request timed out for get_price');
});
if (config === null || config === void 0 ? void 0 : config.ttl) {
r.withTTL(config.ttl);
}
request = r.build();
});
return [4 /*yield*/, client.initiateFlow(request)];
case 1:
_a.sent();
return [2 /*return*/, promise];
}
});
});
}
exports.get_price = get_price;
function get_price_par(client, coin, currency, getter_topo, mean_topo, config) {
return __awaiter(this, void 0, void 0, function () {
var request, promise;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
promise = new Promise(function (resolve, reject) {
var r = new api_unstable_1.RequestFlowBuilder()
.disableInjections()
.withRawScript("\n(xor\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (call %init_peer_id% (\"getDataSrv\" \"-relay-\") [] -relay-)\n (call %init_peer_id% (\"getDataSrv\" \"coin\") [] coin)\n )\n (call %init_peer_id% (\"getDataSrv\" \"currency\") [] currency)\n )\n (call %init_peer_id% (\"getDataSrv\" \"getter_topo\") [] getter_topo)\n )\n (call %init_peer_id% (\"getDataSrv\" \"mean_topo\") [] mean_topo)\n )\n (fold getter_topo topo\n (par\n (seq\n (seq\n (seq\n (call -relay- (\"op\" \"noop\") [])\n (xor\n (seq\n (seq\n (seq\n (call topo.$.node! (\"op\" \"string_to_b58\") [topo.$.node!] k)\n (call topo.$.node! (\"peer\" \"timestamp_ms\") [] ts_ms)\n )\n (call topo.$.node! (topo.$.service_id! \"price_getter\") [coin currency ts_ms] res)\n )\n (call topo.$.node! (\"op\" \"identity\") [res.$.result!] $prices)\n )\n (seq\n (call -relay- (\"op\" \"noop\") [])\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 1])\n )\n )\n )\n (call -relay- (\"op\" \"noop\") [])\n )\n (call %init_peer_id% (\"op\" \"noop\") [])\n )\n (next topo)\n )\n )\n )\n (call %init_peer_id% (\"op\" \"identity\") [$prices.$.[2]!])\n )\n (call -relay- (\"op\" \"noop\") [])\n )\n (xor\n (seq\n (call -relay- (\"op\" \"noop\") [])\n (call mean_topo.$.node! (mean_topo.$.service_id! \"mean\") [$prices] result)\n )\n (seq\n (call -relay- (\"op\" \"noop\") [])\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 2])\n )\n )\n )\n (call -relay- (\"op\" \"noop\") [])\n )\n (xor\n (call %init_peer_id% (\"callbackSrv\" \"response\") [result])\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 3])\n )\n )\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 4])\n)\n\n ")
.configHandler(function (h) {
h.on('getDataSrv', '-relay-', function () {
return client.relayPeerId;
});
h.on('getDataSrv', 'coin', function () { return coin; });
h.on('getDataSrv', 'currency', function () { return currency; });
h.on('getDataSrv', 'getter_topo', function () { return getter_topo; });
h.on('getDataSrv', 'mean_topo', function () { return mean_topo; });
h.onEvent('callbackSrv', 'response', function (args) {
var res = args[0];
resolve(res);
});
h.onEvent('errorHandlingSrv', 'error', function (args) {
// assuming error is the single argument
var err = args[0];
reject(err);
});
})
.handleScriptError(reject)
.handleTimeout(function () {
reject('Request timed out for get_price_par');
});
if (config === null || config === void 0 ? void 0 : config.ttl) {
r.withTTL(config.ttl);
}
request = r.build();
});
return [4 /*yield*/, client.initiateFlow(request)];
case 1:
_a.sent();
return [2 /*return*/, promise];
}
});
});
}
exports.get_price_par = get_price_par;

View File

@@ -1,133 +0,0 @@
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.get_price_par = exports.get_price = void 0;
var api_unstable_1 = require("@fluencelabs/fluence/dist/api.unstable");
function get_price(client, coin, currency, node, pg_sid, mean_sid, config) {
return __awaiter(this, void 0, void 0, function () {
var request, promise;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
promise = new Promise(function (resolve, reject) {
var r = new api_unstable_1.RequestFlowBuilder()
.disableInjections()
.withRawScript("\n(xor\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (call %init_peer_id% (\"getDataSrv\" \"-relay-\") [] -relay-)\n (call %init_peer_id% (\"getDataSrv\" \"coin\") [] coin)\n )\n (call %init_peer_id% (\"getDataSrv\" \"currency\") [] currency)\n )\n (call %init_peer_id% (\"getDataSrv\" \"node\") [] node)\n )\n (call %init_peer_id% (\"getDataSrv\" \"pg_sid\") [] pg_sid)\n )\n (call %init_peer_id% (\"getDataSrv\" \"mean_sid\") [] mean_sid)\n )\n (call -relay- (\"op\" \"noop\") [])\n )\n (xor\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (call node (\"op\" \"string_to_b58\") [node] k)\n (call node (\"peer\" \"timestamp_ms\") [] ts_ms0)\n )\n (call node (pg_sid \"price_getter\") [coin currency ts_ms0] res0)\n )\n (call node (\"op\" \"identity\") [res0.$.result!] $prices)\n )\n (call node (\"peer\" \"timestamp_ms\") [] ts_ms1)\n )\n (call node (pg_sid \"price_getter\") [coin currency ts_ms1] res1)\n )\n (call node (\"op\" \"identity\") [res1.$.result!] $prices)\n )\n (call node (mean_sid \"mean\") [$prices] result)\n )\n (seq\n (call -relay- (\"op\" \"noop\") [])\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 1])\n )\n )\n )\n (call -relay- (\"op\" \"noop\") [])\n )\n (xor\n (call %init_peer_id% (\"callbackSrv\" \"response\") [result])\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 2])\n )\n )\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 3])\n)\n\n ")
.configHandler(function (h) {
h.on('getDataSrv', '-relay-', function () {
return client.relayPeerId;
});
h.on('getDataSrv', 'coin', function () { return coin; });
h.on('getDataSrv', 'currency', function () { return currency; });
h.on('getDataSrv', 'node', function () { return node; });
h.on('getDataSrv', 'pg_sid', function () { return pg_sid; });
h.on('getDataSrv', 'mean_sid', function () { return mean_sid; });
h.onEvent('callbackSrv', 'response', function (args) {
var res = args[0];
resolve(res);
});
h.onEvent('errorHandlingSrv', 'error', function (args) {
// assuming error is the single argument
var err = args[0];
reject(err);
});
})
.handleScriptError(reject)
.handleTimeout(function () {
reject('Request timed out for get_price');
});
if (config && config.ttl) {
r.withTTL(config.ttl);
}
request = r.build();
});
return [4 /*yield*/, client.initiateFlow(request)];
case 1:
_a.sent();
return [2 /*return*/, promise];
}
});
});
}
exports.get_price = get_price;
function get_price_par(client, coin, currency, getter_topo, mean_topo, config) {
return __awaiter(this, void 0, void 0, function () {
var request, promise;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
promise = new Promise(function (resolve, reject) {
var r = new api_unstable_1.RequestFlowBuilder()
.disableInjections()
.withRawScript("\n(xor\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (seq\n (call %init_peer_id% (\"getDataSrv\" \"-relay-\") [] -relay-)\n (call %init_peer_id% (\"getDataSrv\" \"coin\") [] coin)\n )\n (call %init_peer_id% (\"getDataSrv\" \"currency\") [] currency)\n )\n (call %init_peer_id% (\"getDataSrv\" \"getter_topo\") [] getter_topo)\n )\n (call %init_peer_id% (\"getDataSrv\" \"mean_topo\") [] mean_topo)\n )\n (fold getter_topo topo\n (par\n (seq\n (seq\n (call -relay- (\"op\" \"noop\") [])\n (xor\n (seq\n (seq\n (seq\n (call topo.$.node! (\"op\" \"string_to_b58\") [topo.$.node!] k)\n (call topo.$.node! (\"peer\" \"timestamp_ms\") [] ts_ms)\n )\n (call topo.$.node! (topo.$.service_id! \"price_getter\") [coin currency ts_ms] res)\n )\n (call topo.$.node! (\"op\" \"identity\") [res.$.result!] $prices)\n )\n (seq\n (call -relay- (\"op\" \"noop\") [])\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 1])\n )\n )\n )\n (call mean_topo.$.node! (\"op\" \"noop\") [])\n )\n (next topo)\n )\n )\n )\n (call -relay- (\"op\" \"noop\") [])\n )\n (xor\n (seq\n (call -relay- (\"op\" \"noop\") [])\n (call mean_topo.$.node! (mean_topo.$.service_id! \"mean\") [$prices] result)\n )\n (seq\n (call -relay- (\"op\" \"noop\") [])\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 2])\n )\n )\n )\n (call -relay- (\"op\" \"noop\") [])\n )\n (xor\n (call %init_peer_id% (\"callbackSrv\" \"response\") [result])\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 3])\n )\n )\n (call %init_peer_id% (\"errorHandlingSrv\" \"error\") [%last_error% 4])\n)\n\n ")
.configHandler(function (h) {
h.on('getDataSrv', '-relay-', function () {
return client.relayPeerId;
});
h.on('getDataSrv', 'coin', function () { return coin; });
h.on('getDataSrv', 'currency', function () { return currency; });
h.on('getDataSrv', 'getter_topo', function () { return getter_topo; });
h.on('getDataSrv', 'mean_topo', function () { return mean_topo; });
h.onEvent('callbackSrv', 'response', function (args) {
var res = args[0];
resolve(res);
});
h.onEvent('errorHandlingSrv', 'error', function (args) {
// assuming error is the single argument
var err = args[0];
reject(err);
});
})
.handleScriptError(reject)
.handleTimeout(function () {
reject('Request timed out for get_price_par');
});
if (config && config.ttl) {
r.withTTL(config.ttl);
}
request = r.build();
});
return [4 /*yield*/, client.initiateFlow(request)];
case 1:
_a.sent();
return [2 /*return*/, promise];
}
});
});
}
exports.get_price_par = get_price_par;

View File

@@ -1,90 +0,0 @@
"use strict";
/*
* Copyright 2021 Fluence Labs Limited
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
Object.defineProperty(exports, "__esModule", { value: true });
var fluence_1 = require("@fluencelabs/fluence");
var fluence_network_environment_1 = require("@fluencelabs/fluence-network-environment");
var get_crypto_prices_1 = require("./get_crypto_prices");
var getter_topo;
var mean_topo;
getter_topo = Array({ "node": "12D3KooWCMr9mU894i8JXAFqpgoFtx6qnV1LFPSfVc3Y34N4h4LS", "service_id": "c315073d-4311-4db3-be57-8f154f032d28" }, { "node": "12D3KooWFEwNWcHqi9rtsmDhsYcDbRUCDXH84RC4FW6UfsFWaoHi", "service_id": "25f9123a-f386-4cb2-9c1e-bb7c247c9c09" });
mean_topo = { "node": "12D3KooWCMr9mU894i8JXAFqpgoFtx6qnV1LFPSfVc3Y34N4h4LS", "service_id": "dd47389f-25d9-4870-a2a9-909359e73580" };
function main() {
return __awaiter(this, void 0, void 0, function () {
var fluence, network_result, network_result_par;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
console.log("hello crypto investors");
return [4 /*yield*/, fluence_1.createClient(fluence_network_environment_1.krasnodar[2])];
case 1:
fluence = _a.sent();
console.log("created a fluence client %s with relay %s", fluence.selfPeerId, fluence.relayPeerId);
return [4 /*yield*/, get_crypto_prices_1.get_price(fluence, "ethereum", "usd", "12D3KooWFEwNWcHqi9rtsmDhsYcDbRUCDXH84RC4FW6UfsFWaoHi", "25f9123a-f386-4cb2-9c1e-bb7c247c9c09", "b2790307-055e-41ca-9640-3c41856d464b")];
case 2:
network_result = _a.sent();
console.log("seq result: ", network_result);
return [4 /*yield*/, get_crypto_prices_1.get_price_par(fluence, "ethereum", "usd", getter_topo, mean_topo)];
case 3:
network_result_par = _a.sent();
console.log("par result: ", network_result_par);
return [2 /*return*/];
}
});
});
}
main()
.then(function () { return process.exit(0); })
.catch(function (error) {
console.error(error);
process.exit(1);
});

View File

@@ -1,237 +0,0 @@
/**
*
* This file is auto-generated. Do not edit manually: changes may be erased.
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
* Aqua version: 0.1.9-163
*
*/
import { FluenceClient, PeerIdB58 } from '@fluencelabs/fluence';
import { RequestFlowBuilder } from '@fluencelabs/fluence/dist/api.unstable';
import { RequestFlow } from '@fluencelabs/fluence/dist/internal/RequestFlow';
export async function get_price(client: FluenceClient, coin: string, currency: string, node: string, pg_sid: string, mean_sid: string, config?: {ttl?: number}): Promise<{error_msg:string;result:number;success:boolean}> {
let request: RequestFlow;
const promise = new Promise<{error_msg:string;result:number;success:boolean}>((resolve, reject) => {
const r = new RequestFlowBuilder()
.disableInjections()
.withRawScript(
`
(xor
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
(call %init_peer_id% ("getDataSrv" "coin") [] coin)
)
(call %init_peer_id% ("getDataSrv" "currency") [] currency)
)
(call %init_peer_id% ("getDataSrv" "node") [] node)
)
(call %init_peer_id% ("getDataSrv" "pg_sid") [] pg_sid)
)
(call %init_peer_id% ("getDataSrv" "mean_sid") [] mean_sid)
)
(call -relay- ("op" "noop") [])
)
(xor
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(call node ("op" "string_to_b58") [node] k)
(call node ("peer" "timestamp_ms") [] ts_ms0)
)
(call node (pg_sid "price_getter") [coin currency ts_ms0] res0)
)
(call node ("op" "identity") [res0.$.result!] $prices)
)
(call node ("peer" "timestamp_ms") [] ts_ms1)
)
(call node (pg_sid "price_getter") [coin currency ts_ms1] res1)
)
(call node ("op" "identity") [res1.$.result!] $prices)
)
(call node (mean_sid "mean") [$prices] result)
)
(seq
(call -relay- ("op" "noop") [])
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
)
)
)
(call -relay- ("op" "noop") [])
)
(xor
(call %init_peer_id% ("callbackSrv" "response") [result])
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
)
)
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3])
)
`,
)
.configHandler((h) => {
h.on('getDataSrv', '-relay-', () => {
return client.relayPeerId!;
});
h.on('getDataSrv', 'coin', () => {return coin;});
h.on('getDataSrv', 'currency', () => {return currency;});
h.on('getDataSrv', 'node', () => {return node;});
h.on('getDataSrv', 'pg_sid', () => {return pg_sid;});
h.on('getDataSrv', 'mean_sid', () => {return mean_sid;});
h.onEvent('callbackSrv', 'response', (args) => {
const [res] = args;
resolve(res);
});
h.onEvent('errorHandlingSrv', 'error', (args) => {
// assuming error is the single argument
const [err] = args;
reject(err);
});
})
.handleScriptError(reject)
.handleTimeout(() => {
reject('Request timed out for get_price');
})
if(config?.ttl) {
r.withTTL(config.ttl)
}
request = r.build();
});
await client.initiateFlow(request!);
return promise;
}
export async function get_price_par(client: FluenceClient, coin: string, currency: string, getter_topo: {node:string;service_id:string}[], mean_topo: {node:string;service_id:string}, config?: {ttl?: number}): Promise<{error_msg:string;result:number;success:boolean}> {
let request: RequestFlow;
const promise = new Promise<{error_msg:string;result:number;success:boolean}>((resolve, reject) => {
const r = new RequestFlowBuilder()
.disableInjections()
.withRawScript(
`
(xor
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
(call %init_peer_id% ("getDataSrv" "coin") [] coin)
)
(call %init_peer_id% ("getDataSrv" "currency") [] currency)
)
(call %init_peer_id% ("getDataSrv" "getter_topo") [] getter_topo)
)
(call %init_peer_id% ("getDataSrv" "mean_topo") [] mean_topo)
)
(fold getter_topo topo
(par
(seq
(seq
(seq
(call -relay- ("op" "noop") [])
(xor
(seq
(seq
(seq
(call topo.$.node! ("op" "string_to_b58") [topo.$.node!] k)
(call topo.$.node! ("peer" "timestamp_ms") [] ts_ms)
)
(call topo.$.node! (topo.$.service_id! "price_getter") [coin currency ts_ms] res)
)
(call topo.$.node! ("op" "identity") [res.$.result!] $prices)
)
(seq
(call -relay- ("op" "noop") [])
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
)
)
)
(call -relay- ("op" "noop") [])
)
(call %init_peer_id% ("op" "noop") [])
)
(next topo)
)
)
)
(call %init_peer_id% ("op" "identity") [$prices.$.[2]!])
)
(call -relay- ("op" "noop") [])
)
(xor
(seq
(call -relay- ("op" "noop") [])
(call mean_topo.$.node! (mean_topo.$.service_id! "mean") [$prices] result)
)
(seq
(call -relay- ("op" "noop") [])
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
)
)
)
(call -relay- ("op" "noop") [])
)
(xor
(call %init_peer_id% ("callbackSrv" "response") [result])
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3])
)
)
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 4])
)
`,
)
.configHandler((h) => {
h.on('getDataSrv', '-relay-', () => {
return client.relayPeerId!;
});
h.on('getDataSrv', 'coin', () => {return coin;});
h.on('getDataSrv', 'currency', () => {return currency;});
h.on('getDataSrv', 'getter_topo', () => {return getter_topo;});
h.on('getDataSrv', 'mean_topo', () => {return mean_topo;});
h.onEvent('callbackSrv', 'response', (args) => {
const [res] = args;
resolve(res);
});
h.onEvent('errorHandlingSrv', 'error', (args) => {
// assuming error is the single argument
const [err] = args;
reject(err);
});
})
.handleScriptError(reject)
.handleTimeout(() => {
reject('Request timed out for get_price_par');
})
if(config?.ttl) {
r.withTTL(config.ttl)
}
request = r.build();
});
await client.initiateFlow(request!);
return promise;
}

File diff suppressed because it is too large Load Diff

View File

@@ -14,12 +14,12 @@
],
"dependencies": {
"@fluencelabs/aqua-lib": "^0.1.9",
"@fluencelabs/fluence": "^0.9.53",
"@fluencelabs/fluence": "^0.11.0",
"@fluencelabs/fluence-network-environment": "^1.0.10",
"it-all": "^1.0.5"
},
"scripts": {
"compile-aqua": "aqua -i ../aqua-scripts -o .",
"compile-aqua": "aqua -i ../aqua-scripts -o src/_aqua",
"prebuild": "npm run compile-aqua",
"build": "tsc",
"prestart:local": "npm run build",
@@ -43,7 +43,7 @@
},
"homepage": "git+https://github.com/fluencelabs/examples/aqua-examples/price-oracle#readme",
"devDependencies": {
"@fluencelabs/aqua": "0.1.14-207",
"@fluencelabs/aqua": "^0.3.0-226",
"typescript": "^3.9.5"
}
}
}

View File

@@ -1,230 +0,0 @@
/**
*
* This file is auto-generated. Do not edit manually: changes may be erased.
* Generated by Aqua compiler: https://github.com/fluencelabs/aqua/.
* If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues
* Aqua version: 0.1.9-164
*
*/
import { FluenceClient, PeerIdB58 } from '@fluencelabs/fluence';
import { RequestFlowBuilder } from '@fluencelabs/fluence/dist/api.unstable';
import { RequestFlow } from '@fluencelabs/fluence/dist/internal/RequestFlow';
export async function get_price(client: FluenceClient, coin: string, currency: string, node: string, pg_sid: string, mean_sid: string, config?: { ttl?: number }): Promise<{ error_msg: string; result: number; success: boolean }> {
let request: RequestFlow;
const promise = new Promise<{ error_msg: string; result: number; success: boolean }>((resolve, reject) => {
const r = new RequestFlowBuilder()
.disableInjections()
.withRawScript(
`
(xor
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
(call %init_peer_id% ("getDataSrv" "coin") [] coin)
)
(call %init_peer_id% ("getDataSrv" "currency") [] currency)
)
(call %init_peer_id% ("getDataSrv" "node") [] node)
)
(call %init_peer_id% ("getDataSrv" "pg_sid") [] pg_sid)
)
(call %init_peer_id% ("getDataSrv" "mean_sid") [] mean_sid)
)
(call -relay- ("op" "noop") [])
)
(xor
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(call node ("op" "string_to_b58") [node] k)
(call node ("peer" "timestamp_ms") [] ts_ms0)
)
(call node (pg_sid "price_getter") [coin currency ts_ms0] res0)
)
(call node ("op" "identity") [res0.$.result!] $prices)
)
(call node ("peer" "timestamp_ms") [] ts_ms1)
)
(call node (pg_sid "price_getter") [coin currency ts_ms1] res1)
)
(call node ("op" "identity") [res1.$.result!] $prices)
)
(call node (mean_sid "mean") [$prices] result)
)
(seq
(call -relay- ("op" "noop") [])
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
)
)
)
(call -relay- ("op" "noop") [])
)
(xor
(call %init_peer_id% ("callbackSrv" "response") [result])
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
)
)
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3])
)
`,
)
.configHandler((h) => {
h.on('getDataSrv', '-relay-', () => {
return client.relayPeerId!;
});
h.on('getDataSrv', 'coin', () => { return coin; });
h.on('getDataSrv', 'currency', () => { return currency; });
h.on('getDataSrv', 'node', () => { return node; });
h.on('getDataSrv', 'pg_sid', () => { return pg_sid; });
h.on('getDataSrv', 'mean_sid', () => { return mean_sid; });
h.onEvent('callbackSrv', 'response', (args) => {
const [res] = args;
resolve(res);
});
h.onEvent('errorHandlingSrv', 'error', (args) => {
// assuming error is the single argument
const [err] = args;
reject(err);
});
})
.handleScriptError(reject)
.handleTimeout(() => {
reject('Request timed out for get_price');
})
if (config && config.ttl) {
r.withTTL(config.ttl)
}
request = r.build();
});
await client.initiateFlow(request!);
return promise;
}
export async function get_price_par(client: FluenceClient, coin: string, currency: string, getter_topo: { node: string; service_id: string }[], mean_topo: { node: string; service_id: string }, config?: { ttl?: number }): Promise<{ error_msg: string; result: number; success: boolean }> {
let request: RequestFlow;
const promise = new Promise<{ error_msg: string; result: number; success: boolean }>((resolve, reject) => {
const r = new RequestFlowBuilder()
.disableInjections()
.withRawScript(
`
(xor
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(seq
(call %init_peer_id% ("getDataSrv" "-relay-") [] -relay-)
(call %init_peer_id% ("getDataSrv" "coin") [] coin)
)
(call %init_peer_id% ("getDataSrv" "currency") [] currency)
)
(call %init_peer_id% ("getDataSrv" "getter_topo") [] getter_topo)
)
(call %init_peer_id% ("getDataSrv" "mean_topo") [] mean_topo)
)
(fold getter_topo topo
(par
(seq
(seq
(call -relay- ("op" "noop") [])
(xor
(seq
(seq
(seq
(call topo.$.node! ("op" "string_to_b58") [topo.$.node!] k)
(call topo.$.node! ("peer" "timestamp_ms") [] ts_ms)
)
(call topo.$.node! (topo.$.service_id! "price_getter") [coin currency ts_ms] res)
)
(call topo.$.node! ("op" "identity") [res.$.result!] $prices)
)
(seq
(call -relay- ("op" "noop") [])
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 1])
)
)
)
(call mean_topo.$.node! ("op" "noop") [])
)
(next topo)
)
)
)
(call -relay- ("op" "noop") [])
)
(xor
(seq
(call -relay- ("op" "noop") [])
(call mean_topo.$.node! (mean_topo.$.service_id! "mean") [$prices] result)
)
(seq
(call -relay- ("op" "noop") [])
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 2])
)
)
)
(call -relay- ("op" "noop") [])
)
(xor
(call %init_peer_id% ("callbackSrv" "response") [result])
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 3])
)
)
(call %init_peer_id% ("errorHandlingSrv" "error") [%last_error% 4])
)
`,
)
.configHandler((h) => {
h.on('getDataSrv', '-relay-', () => {
return client.relayPeerId!;
});
h.on('getDataSrv', 'coin', () => { return coin; });
h.on('getDataSrv', 'currency', () => { return currency; });
h.on('getDataSrv', 'getter_topo', () => { return getter_topo; });
h.on('getDataSrv', 'mean_topo', () => { return mean_topo; });
h.onEvent('callbackSrv', 'response', (args) => {
const [res] = args;
resolve(res);
});
h.onEvent('errorHandlingSrv', 'error', (args) => {
// assuming error is the single argument
const [err] = args;
reject(err);
});
})
.handleScriptError(reject)
.handleTimeout(() => {
reject('Request timed out for get_price_par');
})
if (config && config.ttl) {
r.withTTL(config.ttl)
}
request = r.build();
});
await client.initiateFlow(request!);
return promise;
}

View File

@@ -14,41 +14,66 @@
* limitations under the License.
*/
import { createClient, setLogLevel, FluenceClient } from "@fluencelabs/fluence";
import { setLogLevel, FluencePeer } from "@fluencelabs/fluence";
import { krasnodar, Node } from "@fluencelabs/fluence-network-environment";
import { get_price, get_price_par } from "./get_crypto_prices";
import { get_price, get_price_par } from "./_aqua/get_crypto_prices";
interface NodeServicePair {
node: string;
service_id: string;
node: string;
service_id: string;
}
let getter_topo: Array<NodeServicePair>;
let mean_topo: NodeServicePair;
getter_topo = Array({ "node": "12D3KooWCMr9mU894i8JXAFqpgoFtx6qnV1LFPSfVc3Y34N4h4LS", "service_id": "c315073d-4311-4db3-be57-8f154f032d28" }, { "node": "12D3KooWFEwNWcHqi9rtsmDhsYcDbRUCDXH84RC4FW6UfsFWaoHi", "service_id": "25f9123a-f386-4cb2-9c1e-bb7c247c9c09" });
mean_topo = { "node": "12D3KooWCMr9mU894i8JXAFqpgoFtx6qnV1LFPSfVc3Y34N4h4LS", "service_id": "dd47389f-25d9-4870-a2a9-909359e73580" };
getter_topo = Array(
{
node: "12D3KooWCMr9mU894i8JXAFqpgoFtx6qnV1LFPSfVc3Y34N4h4LS",
service_id: "c315073d-4311-4db3-be57-8f154f032d28",
},
{
node: "12D3KooWFEwNWcHqi9rtsmDhsYcDbRUCDXH84RC4FW6UfsFWaoHi",
service_id: "25f9123a-f386-4cb2-9c1e-bb7c247c9c09",
}
);
mean_topo = {
node: "12D3KooWCMr9mU894i8JXAFqpgoFtx6qnV1LFPSfVc3Y34N4h4LS",
service_id: "dd47389f-25d9-4870-a2a9-909359e73580",
};
async function main() {
console.log("hello crypto investors");
// setLogLevel('DEBUG');
const fluence = await createClient(krasnodar[2]);
console.log("created a fluence client %s with relay %s", fluence.selfPeerId, fluence.relayPeerId);
console.log("hello crypto investors");
// setLogLevel('DEBUG');
await Fluence.start({ connectTo: krasnodar[2] });
console.log(
"created a fluence client %s with relay %s",
FluencePeer.default.connectionInfo.selfPeerId,
FluencePeer.default.connectionInfo.connectedRelay
);
const network_result = await get_price(fluence, "ethereum", "usd", "12D3KooWFEwNWcHqi9rtsmDhsYcDbRUCDXH84RC4FW6UfsFWaoHi", "25f9123a-f386-4cb2-9c1e-bb7c247c9c09", "b2790307-055e-41ca-9640-3c41856d464b");
console.log("seq result: ", network_result);
const network_result = await get_price(
"ethereum",
"usd",
"12D3KooWFEwNWcHqi9rtsmDhsYcDbRUCDXH84RC4FW6UfsFWaoHi",
"25f9123a-f386-4cb2-9c1e-bb7c247c9c09",
"b2790307-055e-41ca-9640-3c41856d464b"
);
console.log("seq result: ", network_result);
const network_result_par = await get_price_par(fluence, "ethereum", "usd", getter_topo, mean_topo);
console.log("par result: ", network_result_par);
const network_result_par = await get_price_par(
"ethereum",
"usd",
getter_topo,
mean_topo
);
console.log("par result: ", network_result_par);
return;
return;
}
main()
.then(() => process.exit(0))
.catch(error => {
console.error(error);
process.exit(1);
});
.then(() => process.exit(0))
.catch((error) => {
console.error(error);
process.exit(1);
});