@kynesyslabs/demosdk 1.3.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/demoswork/executor/index.d.ts +2 -0
- package/build/demoswork/executor/index.js +21 -0
- package/build/demoswork/executor/index.js.map +1 -0
- package/build/demoswork/executor/stepexecutor.d.ts +18 -0
- package/build/demoswork/executor/stepexecutor.js +53 -0
- package/build/demoswork/executor/stepexecutor.js.map +1 -0
- package/build/demoswork/index.d.ts +8 -0
- package/build/demoswork/index.js +27 -0
- package/build/demoswork/index.js.map +1 -0
- package/build/demoswork/operations/baseoperation.d.ts +9 -0
- package/build/demoswork/operations/baseoperation.js +24 -0
- package/build/demoswork/operations/baseoperation.js.map +1 -0
- package/build/demoswork/operations/conditional/condition.d.ts +27 -0
- package/build/demoswork/operations/conditional/condition.js +54 -0
- package/build/demoswork/operations/conditional/condition.js.map +1 -0
- package/build/demoswork/operations/conditional/index.d.ts +31 -0
- package/build/demoswork/operations/conditional/index.js +108 -0
- package/build/demoswork/operations/conditional/index.js.map +1 -0
- package/build/demoswork/operations/index.d.ts +21 -0
- package/build/demoswork/operations/index.js +52 -0
- package/build/demoswork/operations/index.js.map +1 -0
- package/build/demoswork/utils/createTestWorkScript.d.ts +2 -0
- package/build/demoswork/utils/createTestWorkScript.js +55 -0
- package/build/demoswork/utils/createTestWorkScript.js.map +1 -0
- package/build/demoswork/utils/index.d.ts +21 -0
- package/build/demoswork/utils/index.js +61 -0
- package/build/demoswork/utils/index.js.map +1 -0
- package/build/demoswork/validator/index.d.ts +7 -0
- package/build/demoswork/validator/index.js +16 -0
- package/build/demoswork/validator/index.js.map +1 -0
- package/build/demoswork/validator/steps.validator.d.ts +8 -0
- package/build/demoswork/validator/steps.validator.js +77 -0
- package/build/demoswork/validator/steps.validator.js.map +1 -0
- package/build/demoswork/work.d.ts +14 -0
- package/build/demoswork/work.js +81 -0
- package/build/demoswork/work.js.map +1 -0
- package/build/demoswork/workstep.d.ts +82 -0
- package/build/demoswork/workstep.js +133 -0
- package/build/demoswork/workstep.js.map +1 -0
- package/build/index.d.ts +7 -6
- package/build/index.js +2 -1
- package/build/index.js.map +1 -1
- package/build/multichain/core/ibc.js +2 -0
- package/build/multichain/core/ibc.js.map +1 -1
- package/build/types/blockchain/Transaction.d.ts +9 -22
- package/build/types/blockchain/ValidityData.js +2 -6
- package/build/types/blockchain/ValidityData.js.map +1 -1
- package/build/types/communication/demosWork.d.ts +6 -6
- package/build/types/demoswork/datatypes.d.ts +6 -0
- package/build/types/demoswork/datatypes.js +10 -0
- package/build/types/demoswork/datatypes.js.map +1 -0
- package/build/types/demoswork/index.d.ts +16 -0
- package/build/types/demoswork/index.js +3 -0
- package/build/types/demoswork/index.js.map +1 -0
- package/build/types/demoswork/operations.d.ts +48 -0
- package/build/types/demoswork/operations.js +3 -0
- package/build/types/demoswork/operations.js.map +1 -0
- package/build/types/demoswork/steps.d.ts +71 -0
- package/build/types/demoswork/steps.js +21 -0
- package/build/types/demoswork/steps.js.map +1 -0
- package/build/types/index.d.ts +13 -11
- package/build/types/index.js +6 -1
- package/build/types/index.js.map +1 -1
- package/build/types/native/index.d.ts +9 -0
- package/build/types/native/index.js +3 -0
- package/build/types/native/index.js.map +1 -0
- package/build/utils/pprint.d.ts +5 -0
- package/build/utils/pprint.js +17 -0
- package/build/utils/pprint.js.map +1 -0
- package/build/websdk/XMTransactions.js +1 -3
- package/build/websdk/XMTransactions.js.map +1 -1
- package/build/websdk/utils/skeletons.js +2 -0
- package/build/websdk/utils/skeletons.js.map +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getNewUID = getNewUID;
|
|
4
|
+
exports.getValue = getValue;
|
|
5
|
+
exports.compare = compare;
|
|
6
|
+
function getNewUID() {
|
|
7
|
+
return crypto.randomUUID().replaceAll("-", "");
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Get the value of a property given a path in an object.
|
|
11
|
+
* The path should be a string of property names separated by dots.
|
|
12
|
+
*
|
|
13
|
+
* @param obj The object to traverse
|
|
14
|
+
* @param path The path of the property to get
|
|
15
|
+
* @returns The value of the property at the path
|
|
16
|
+
*
|
|
17
|
+
* @example getValue(myObject, "nested.property")
|
|
18
|
+
*/
|
|
19
|
+
function getValue(obj, path) {
|
|
20
|
+
// Split the path string into an array of property names
|
|
21
|
+
const properties = path.split(".");
|
|
22
|
+
// Traverse the object using the property names
|
|
23
|
+
let value = obj;
|
|
24
|
+
for (const prop of properties) {
|
|
25
|
+
if (value && typeof value === "object") {
|
|
26
|
+
value = value[prop];
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
return undefined; // Return undefined if the property doesn't exist
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return value;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Compare two values using the specified operator
|
|
36
|
+
*
|
|
37
|
+
* @param a First value
|
|
38
|
+
* @param b Second value
|
|
39
|
+
* @param operator Comparison operator
|
|
40
|
+
* @returns The result of the comparison (boolean)
|
|
41
|
+
*/
|
|
42
|
+
function compare(a, b, operator, validate_only = false) {
|
|
43
|
+
const operations = {
|
|
44
|
+
">": (a, b) => a > b,
|
|
45
|
+
">=": (a, b) => a >= b,
|
|
46
|
+
"<": (a, b) => a < b,
|
|
47
|
+
"<=": (a, b) => a <= b,
|
|
48
|
+
"==": (a, b) => a == b,
|
|
49
|
+
"===": (a, b) => a === b,
|
|
50
|
+
"!=": (a, b) => a != b,
|
|
51
|
+
"!==": (a, b) => a !== b,
|
|
52
|
+
};
|
|
53
|
+
if (!operations.hasOwnProperty(operator)) {
|
|
54
|
+
throw new Error("Invalid operator:" + operator);
|
|
55
|
+
}
|
|
56
|
+
if (validate_only) {
|
|
57
|
+
return true;
|
|
58
|
+
}
|
|
59
|
+
return operations[operator](a, b);
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/demoswork/utils/index.ts"],"names":[],"mappings":";;AAAA,8BAEC;AAYD,4BAgBC;AAUD,0BA0BC;AAlED,SAAgB,SAAS;IACrB,OAAO,MAAM,CAAC,UAAU,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;AAClD,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,QAAQ,CAAC,GAAW,EAAE,IAAY;IAC9C,wDAAwD;IACxD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAElC,+CAA+C;IAC/C,IAAI,KAAK,GAAG,GAAG,CAAA;IAEf,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC5B,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACrC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;QACvB,CAAC;aAAM,CAAC;YACJ,OAAO,SAAS,CAAA,CAAC,iDAAiD;QACtE,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAA;AAChB,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,OAAO,CACnB,CAAM,EACN,CAAM,EACN,QAAgB,EAChB,gBAAyB,KAAK;IAE9B,MAAM,UAAU,GAAG;QACf,GAAG,EAAE,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC;QAC9B,IAAI,EAAE,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QAChC,GAAG,EAAE,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC;QAC9B,IAAI,EAAE,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QAChC,IAAI,EAAE,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QAChC,KAAK,EAAE,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC;QAClC,IAAI,EAAE,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QAChC,KAAK,EAAE,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC;KACrC,CAAA;IAED,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,QAAQ,CAAC,CAAA;IACnD,CAAC;IAED,IAAI,aAAa,EAAE,CAAC;QAChB,OAAO,IAAI,CAAA;IACf,CAAC;IAED,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AACrC,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.runSanityChecks = runSanityChecks;
|
|
4
|
+
const steps_validator_1 = require("./steps.validator");
|
|
5
|
+
/**
|
|
6
|
+
* Validates a work script. Checks for common errors.
|
|
7
|
+
*
|
|
8
|
+
* @param work The work script to validate
|
|
9
|
+
*/
|
|
10
|
+
function runSanityChecks(script) {
|
|
11
|
+
(0, steps_validator_1.noUnusedSteps)(script);
|
|
12
|
+
// TODO: Add check to ensure operation reference order does not conflict with
|
|
13
|
+
// defined operations order in the final script
|
|
14
|
+
// TODO: Check for circular references!
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/demoswork/validator/index.ts"],"names":[],"mappings":";;AAQA,0CAKC;AAZD,uDAAkD;AAElD;;;;GAIG;AACH,SAAgB,eAAe,CAAC,MAAkB;IAC9C,IAAA,+BAAa,EAAC,MAAM,CAAC,CAAA;IACrB,6EAA6E;IAC7E,+CAA+C;IAC/C,uCAAuC;AAC3C,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { DemoScript } from "../../types/demoswork";
|
|
2
|
+
/**
|
|
3
|
+
* Assert that all steps in the script are consumed by operations
|
|
4
|
+
*
|
|
5
|
+
* @param script The work script to validate
|
|
6
|
+
* @returns true if all steps are used, false otherwise
|
|
7
|
+
*/
|
|
8
|
+
export declare function noUnusedSteps(script: DemoScript): void;
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.noUnusedSteps = noUnusedSteps;
|
|
4
|
+
const types_1 = require("../../types");
|
|
5
|
+
function getMappedScriptSteps(script) {
|
|
6
|
+
// return a map of step ids mapped to their descriptions
|
|
7
|
+
return new Map(Object.keys(script.steps).map(step => [
|
|
8
|
+
step,
|
|
9
|
+
script.steps[step].description,
|
|
10
|
+
]));
|
|
11
|
+
}
|
|
12
|
+
function getConditionalScriptSteps(script) {
|
|
13
|
+
let steps = new Set();
|
|
14
|
+
// INFO: Loop through all conditions and add the step to the set
|
|
15
|
+
script.conditions.forEach(condition => {
|
|
16
|
+
const parseValue = (value) => {
|
|
17
|
+
if (value &&
|
|
18
|
+
value.type === types_1.DataTypes.internal &&
|
|
19
|
+
value.workUID.startsWith("step_")) {
|
|
20
|
+
steps.add(value.workUID);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
parseValue(condition.value_a);
|
|
24
|
+
parseValue(condition.value_b);
|
|
25
|
+
if (condition.work && condition.work.startsWith("step_")) {
|
|
26
|
+
steps.add(condition.work);
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
return steps;
|
|
30
|
+
}
|
|
31
|
+
function catchNotIncluded(steps, scriptSteps, message = "") {
|
|
32
|
+
let diff = new Set(Array.from(steps).filter(x => !scriptSteps.has(x)));
|
|
33
|
+
if (diff.size > 0) {
|
|
34
|
+
throw new Error(`Steps ${[...diff]} not included in final script - ${message}`);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
function extractStepsFromOperation(operation, scriptSteps) {
|
|
38
|
+
let steps = new Set();
|
|
39
|
+
switch (operation.operationType) {
|
|
40
|
+
case "conditional":
|
|
41
|
+
let conditionalSteps = getConditionalScriptSteps(operation);
|
|
42
|
+
steps = new Set([...steps, ...conditionalSteps]);
|
|
43
|
+
break;
|
|
44
|
+
case "base":
|
|
45
|
+
let baseSteps = new Set(operation.work.filter(step => step.startsWith("step_")));
|
|
46
|
+
steps = new Set([...steps, ...baseSteps]);
|
|
47
|
+
break;
|
|
48
|
+
}
|
|
49
|
+
catchNotIncluded(steps, scriptSteps, `${operation.operationType} - ${operation.id}`);
|
|
50
|
+
return steps;
|
|
51
|
+
}
|
|
52
|
+
function collectAllSteps(script, scriptSteps) {
|
|
53
|
+
let steps = new Set();
|
|
54
|
+
Object.keys(script.operations).forEach(opUID => {
|
|
55
|
+
let operation = script.operations[opUID];
|
|
56
|
+
steps = extractStepsFromOperation(operation, scriptSteps);
|
|
57
|
+
});
|
|
58
|
+
return steps;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Assert that all steps in the script are consumed by operations
|
|
62
|
+
*
|
|
63
|
+
* @param script The work script to validate
|
|
64
|
+
* @returns true if all steps are used, false otherwise
|
|
65
|
+
*/
|
|
66
|
+
function noUnusedSteps(script) {
|
|
67
|
+
// NOTES: Collect all steps in the script
|
|
68
|
+
// and compare them to the script steps
|
|
69
|
+
let scriptSteps = getMappedScriptSteps(script);
|
|
70
|
+
let steps = collectAllSteps(script, scriptSteps);
|
|
71
|
+
for (const id of scriptSteps.keys()) {
|
|
72
|
+
if (!steps.has(id)) {
|
|
73
|
+
throw new Error(`Step ${scriptSteps.get(id) || id} not used in script`);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=steps.validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"steps.validator.js","sourceRoot":"","sources":["../../../../src/demoswork/validator/steps.validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Transaction } from "../types";
|
|
2
|
+
import { DemoScript } from "../types/demoswork";
|
|
3
|
+
import { DemosWorkOperation } from "./operations";
|
|
4
|
+
import { IKeyPair } from "../websdk/types/KeyPair";
|
|
5
|
+
export declare class DemosWork {
|
|
6
|
+
script: DemoScript;
|
|
7
|
+
results: Record<string, any>;
|
|
8
|
+
push(operation: DemosWorkOperation): void;
|
|
9
|
+
validate(script: DemoScript): void;
|
|
10
|
+
fromJSON(script: DemoScript): this;
|
|
11
|
+
execute(): Promise<Record<string, any>>;
|
|
12
|
+
toJSON(): DemoScript;
|
|
13
|
+
}
|
|
14
|
+
export declare function prepareDemosWorkPayload(work: DemosWork, keypair: IKeyPair): Promise<Transaction>;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.DemosWork = void 0;
|
|
7
|
+
exports.prepareDemosWorkPayload = prepareDemosWorkPayload;
|
|
8
|
+
const websdk_1 = require("../websdk");
|
|
9
|
+
const executor_1 = __importDefault(require("./executor"));
|
|
10
|
+
const validator_1 = require("./validator");
|
|
11
|
+
class DemosWork {
|
|
12
|
+
constructor() {
|
|
13
|
+
this.script = {
|
|
14
|
+
operationOrder: new Set(),
|
|
15
|
+
operations: {},
|
|
16
|
+
steps: {},
|
|
17
|
+
};
|
|
18
|
+
// INFO: Step results indexed by stepUID
|
|
19
|
+
this.results = {};
|
|
20
|
+
// TODO: Add static methods for adding and retrieving step results
|
|
21
|
+
}
|
|
22
|
+
push(operation) {
|
|
23
|
+
// @ts-expect-error
|
|
24
|
+
// INFO: Add operation to the script
|
|
25
|
+
this.script.operations[operation.operationScript.id] =
|
|
26
|
+
operation.operationScript;
|
|
27
|
+
this.script.operationOrder.add(operation.operationScript.id);
|
|
28
|
+
// INFO: Add steps used by the operation to the script
|
|
29
|
+
for (const stepUID in operation.steps) {
|
|
30
|
+
this.script.steps[stepUID] = operation.steps[stepUID];
|
|
31
|
+
}
|
|
32
|
+
// INFO: Add operations used by the operation to the script
|
|
33
|
+
for (const op of operation.operations) {
|
|
34
|
+
// @ts-expect-error
|
|
35
|
+
this.script.operations[op.operationScript.id] = op.operationScript;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
validate(script) {
|
|
39
|
+
(0, validator_1.runSanityChecks)(script);
|
|
40
|
+
}
|
|
41
|
+
fromJSON(script) {
|
|
42
|
+
let newscript = script;
|
|
43
|
+
newscript.operationOrder = new Set(script.operationOrder);
|
|
44
|
+
this.script = script;
|
|
45
|
+
return this;
|
|
46
|
+
}
|
|
47
|
+
async execute() {
|
|
48
|
+
return await (0, executor_1.default)(this);
|
|
49
|
+
}
|
|
50
|
+
toJSON() {
|
|
51
|
+
let script = this.script;
|
|
52
|
+
// @ts-expect-error
|
|
53
|
+
// convert set to array
|
|
54
|
+
script.operationOrder = [...script.operationOrder];
|
|
55
|
+
// remove all step outputs
|
|
56
|
+
for (const stepUID in script.steps) {
|
|
57
|
+
delete script.steps[stepUID].output;
|
|
58
|
+
delete script.steps[stepUID].id;
|
|
59
|
+
}
|
|
60
|
+
// remove all operation uids
|
|
61
|
+
for (const opUID in script.operations) {
|
|
62
|
+
delete script.operations[opUID].id;
|
|
63
|
+
}
|
|
64
|
+
this.validate(script);
|
|
65
|
+
// return JSON.stringify(script)
|
|
66
|
+
return script;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
exports.DemosWork = DemosWork;
|
|
70
|
+
async function prepareDemosWorkPayload(work, keypair) {
|
|
71
|
+
const script = work.toJSON();
|
|
72
|
+
let tx = websdk_1.DemosTransactions.empty();
|
|
73
|
+
tx.content.from = keypair.publicKey;
|
|
74
|
+
tx.content.to = tx.content.from;
|
|
75
|
+
tx.content.type = "demoswork";
|
|
76
|
+
tx.content.data = ["demoswork", script];
|
|
77
|
+
tx.content.timestamp = Date.now();
|
|
78
|
+
tx = await websdk_1.DemosTransactions.sign(tx, keypair);
|
|
79
|
+
return tx;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=work.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"work.js","sourceRoot":"","sources":["../../../src/demoswork/work.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import forge from "node-forge";
|
|
2
|
+
import { IWeb2Request, XMScript } from "../types";
|
|
3
|
+
import { INativePayload } from "../types/native";
|
|
4
|
+
import { DataTypes } from "../types/demoswork/datatypes";
|
|
5
|
+
import { StepOutputKey, WorkStepInput } from "../types/demoswork/steps";
|
|
6
|
+
export declare class WorkStep {
|
|
7
|
+
id: string;
|
|
8
|
+
context: string;
|
|
9
|
+
content: WorkStepInput;
|
|
10
|
+
output: {
|
|
11
|
+
[key: string]: StepOutputKey;
|
|
12
|
+
};
|
|
13
|
+
description: string;
|
|
14
|
+
signature: forge.pki.ed25519.BinaryBuffer;
|
|
15
|
+
timestamp: number;
|
|
16
|
+
constructor(payload: WorkStepInput);
|
|
17
|
+
get hash(): string;
|
|
18
|
+
/**
|
|
19
|
+
* Sign a work step using a private key
|
|
20
|
+
*
|
|
21
|
+
* @param privateKey The private key
|
|
22
|
+
* @returns The signature
|
|
23
|
+
*/
|
|
24
|
+
sign(privateKey: forge.pki.ed25519.BinaryBuffer | any): forge.pki.ed25519.NativeBuffer;
|
|
25
|
+
execute(): void;
|
|
26
|
+
}
|
|
27
|
+
export declare class Web2WorkStep extends WorkStep {
|
|
28
|
+
context: string;
|
|
29
|
+
output: {
|
|
30
|
+
statusCode: {
|
|
31
|
+
type: DataTypes.work;
|
|
32
|
+
src: {
|
|
33
|
+
self: Web2WorkStep;
|
|
34
|
+
key: string;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
payload: {
|
|
38
|
+
type: DataTypes.work;
|
|
39
|
+
src: {
|
|
40
|
+
key: string;
|
|
41
|
+
self: Web2WorkStep;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
constructor(payload: IWeb2Request);
|
|
46
|
+
}
|
|
47
|
+
export declare class XmWorkStep extends WorkStep {
|
|
48
|
+
context: string;
|
|
49
|
+
output: {
|
|
50
|
+
result: {
|
|
51
|
+
type: DataTypes.work;
|
|
52
|
+
src: {
|
|
53
|
+
self: XmWorkStep;
|
|
54
|
+
key: string;
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
hash: {
|
|
58
|
+
type: DataTypes.work;
|
|
59
|
+
src: {
|
|
60
|
+
self: XmWorkStep;
|
|
61
|
+
key: string;
|
|
62
|
+
};
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
constructor(payload: XMScript);
|
|
66
|
+
}
|
|
67
|
+
export declare class NativeWorkStep extends WorkStep {
|
|
68
|
+
context: string;
|
|
69
|
+
output: {
|
|
70
|
+
result: {
|
|
71
|
+
type: DataTypes.work;
|
|
72
|
+
src: {
|
|
73
|
+
self: NativeWorkStep;
|
|
74
|
+
key: string;
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
constructor(payload: INativePayload);
|
|
79
|
+
}
|
|
80
|
+
export declare function prepareXMStep(xm_payload: XMScript): XmWorkStep;
|
|
81
|
+
export declare function prepareWeb2Step(action?: string, url?: string, parameters?: any[], requestedParameters?: any, headers?: any, minAttestations?: number): Web2WorkStep;
|
|
82
|
+
export declare function prepareNativeStep(native_payload: INativePayload): NativeWorkStep;
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.NativeWorkStep = exports.XmWorkStep = exports.Web2WorkStep = exports.WorkStep = void 0;
|
|
7
|
+
exports.prepareXMStep = prepareXMStep;
|
|
8
|
+
exports.prepareWeb2Step = prepareWeb2Step;
|
|
9
|
+
exports.prepareNativeStep = prepareNativeStep;
|
|
10
|
+
const node_forge_1 = __importDefault(require("node-forge"));
|
|
11
|
+
const Hashing_1 = require("../encryption/Hashing");
|
|
12
|
+
const dataManipulation_1 = require("../utils/dataManipulation");
|
|
13
|
+
const utils_1 = require("./utils");
|
|
14
|
+
const websdk_1 = require("../websdk");
|
|
15
|
+
const datatypes_1 = require("../types/demoswork/datatypes");
|
|
16
|
+
class WorkStep {
|
|
17
|
+
constructor(payload) {
|
|
18
|
+
this.timestamp = Date.now();
|
|
19
|
+
this.content = payload;
|
|
20
|
+
this.id = "step_" + (0, utils_1.getNewUID)();
|
|
21
|
+
}
|
|
22
|
+
get hash() {
|
|
23
|
+
// REVIEW: What fields should be hashed?
|
|
24
|
+
return Hashing_1.Hashing.sha256(JSON.stringify(this));
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Sign a work step using a private key
|
|
28
|
+
*
|
|
29
|
+
* @param privateKey The private key
|
|
30
|
+
* @returns The signature
|
|
31
|
+
*/
|
|
32
|
+
sign(privateKey) {
|
|
33
|
+
if (privateKey.type == "string") {
|
|
34
|
+
privateKey = (0, dataManipulation_1.HexToForge)(privateKey);
|
|
35
|
+
}
|
|
36
|
+
this.signature = node_forge_1.default.pki.ed25519.sign({
|
|
37
|
+
message: this.hash,
|
|
38
|
+
encoding: "utf8",
|
|
39
|
+
privateKey,
|
|
40
|
+
});
|
|
41
|
+
return this.signature;
|
|
42
|
+
}
|
|
43
|
+
execute() {
|
|
44
|
+
// INFO: Send payload or execute web2 request here
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.WorkStep = WorkStep;
|
|
48
|
+
class Web2WorkStep extends WorkStep {
|
|
49
|
+
constructor(payload) {
|
|
50
|
+
super(payload);
|
|
51
|
+
this.context = "web2";
|
|
52
|
+
this.output = {
|
|
53
|
+
statusCode: {
|
|
54
|
+
type: datatypes_1.DataTypes.work,
|
|
55
|
+
src: {
|
|
56
|
+
self: this,
|
|
57
|
+
key: "output.statusCode",
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
payload: {
|
|
61
|
+
type: datatypes_1.DataTypes.work,
|
|
62
|
+
src: {
|
|
63
|
+
key: "output.payload",
|
|
64
|
+
self: this,
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
exports.Web2WorkStep = Web2WorkStep;
|
|
71
|
+
class XmWorkStep extends WorkStep {
|
|
72
|
+
constructor(payload) {
|
|
73
|
+
super(payload);
|
|
74
|
+
this.context = "xm";
|
|
75
|
+
this.output = {
|
|
76
|
+
// REVIEW: What result fields do developers need?
|
|
77
|
+
result: {
|
|
78
|
+
type: datatypes_1.DataTypes.work,
|
|
79
|
+
src: {
|
|
80
|
+
self: this,
|
|
81
|
+
key: "output.result",
|
|
82
|
+
},
|
|
83
|
+
},
|
|
84
|
+
hash: {
|
|
85
|
+
type: datatypes_1.DataTypes.work,
|
|
86
|
+
src: {
|
|
87
|
+
self: this,
|
|
88
|
+
key: "output.hash",
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
exports.XmWorkStep = XmWorkStep;
|
|
95
|
+
class NativeWorkStep extends WorkStep {
|
|
96
|
+
constructor(payload) {
|
|
97
|
+
super(payload);
|
|
98
|
+
this.context = "native";
|
|
99
|
+
this.output = {
|
|
100
|
+
result: {
|
|
101
|
+
type: datatypes_1.DataTypes.work,
|
|
102
|
+
src: {
|
|
103
|
+
self: this,
|
|
104
|
+
key: "output.result",
|
|
105
|
+
},
|
|
106
|
+
},
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
exports.NativeWorkStep = NativeWorkStep;
|
|
111
|
+
// SECTION: Prepare functions
|
|
112
|
+
function prepareXMStep(xm_payload) {
|
|
113
|
+
return new XmWorkStep(xm_payload);
|
|
114
|
+
}
|
|
115
|
+
function prepareWeb2Step(action = "GET", url = "https://icanhazip.com", parameters = [], requestedParameters = null, headers = null, minAttestations = 2) {
|
|
116
|
+
// Generating an empty request and filling it
|
|
117
|
+
const web2_payload = websdk_1.skeletons.web2_request;
|
|
118
|
+
web2_payload.raw.action = action;
|
|
119
|
+
web2_payload.raw.url = url;
|
|
120
|
+
web2_payload.raw.parameters = parameters;
|
|
121
|
+
web2_payload.raw.headers = headers;
|
|
122
|
+
web2_payload.raw.minAttestations = minAttestations;
|
|
123
|
+
// Ensuring content is a known property
|
|
124
|
+
web2_payload.attestations = new Map();
|
|
125
|
+
web2_payload.hash = "";
|
|
126
|
+
web2_payload.signature = "";
|
|
127
|
+
web2_payload.result = "";
|
|
128
|
+
return new Web2WorkStep(web2_payload);
|
|
129
|
+
}
|
|
130
|
+
function prepareNativeStep(native_payload) {
|
|
131
|
+
return new NativeWorkStep(native_payload);
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=workstep.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workstep.js","sourceRoot":"","sources":["../../../src/demoswork/workstep.ts"],"names":[],"mappings":"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"}
|
package/build/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
export * as types from
|
|
2
|
-
export * as encryption from
|
|
3
|
-
export * as utils from
|
|
4
|
-
export * as xmlocalsdk from
|
|
5
|
-
export * as xmwebsdk from
|
|
6
|
-
export * as wallet from
|
|
1
|
+
export * as types from "./types";
|
|
2
|
+
export * as encryption from "./encryption";
|
|
3
|
+
export * as utils from "./utils";
|
|
4
|
+
export * as xmlocalsdk from "./multichain/localsdk";
|
|
5
|
+
export * as xmwebsdk from "./multichain/websdk";
|
|
6
|
+
export * as wallet from "./wallet";
|
|
7
|
+
export * as demoswork from "./demoswork";
|
|
7
8
|
export * as websdk from './websdk';
|
package/build/index.js
CHANGED
|
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.websdk = exports.wallet = exports.xmwebsdk = exports.xmlocalsdk = exports.utils = exports.encryption = exports.types = void 0;
|
|
26
|
+
exports.websdk = exports.demoswork = exports.wallet = exports.xmwebsdk = exports.xmlocalsdk = exports.utils = exports.encryption = exports.types = void 0;
|
|
27
27
|
// Common types and constants
|
|
28
28
|
exports.types = __importStar(require("./types"));
|
|
29
29
|
// Basic cryptographic and data manipulation functions
|
|
@@ -33,5 +33,6 @@ exports.utils = __importStar(require("./utils"));
|
|
|
33
33
|
exports.xmlocalsdk = __importStar(require("./multichain/localsdk"));
|
|
34
34
|
exports.xmwebsdk = __importStar(require("./multichain/websdk"));
|
|
35
35
|
exports.wallet = __importStar(require("./wallet"));
|
|
36
|
+
exports.demoswork = __importStar(require("./demoswork"));
|
|
36
37
|
exports.websdk = __importStar(require("./websdk"));
|
|
37
38
|
//# sourceMappingURL=index.js.map
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAA6B;AAC7B,iDAAgC;AAChC,sDAAsD;AACtD,2DAA0C;AAC1C,iDAAgC;AAChC,gCAAgC;AAChC,oEAAmD;AACnD,gEAA+C;AAC/C,mDAAkC;AAClC,mDAAkC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAA6B;AAC7B,iDAAgC;AAChC,sDAAsD;AACtD,2DAA0C;AAC1C,iDAAgC;AAChC,gCAAgC;AAChC,oEAAmD;AACnD,gEAA+C;AAC/C,mDAAkC;AAClC,yDAAwC;AAExC,mDAAkC"}
|
|
@@ -152,7 +152,9 @@ class IBC extends defaultChain_1.DefaultChain {
|
|
|
152
152
|
// NOTE: Sequence management happens here
|
|
153
153
|
// INFO: Get account on network
|
|
154
154
|
const address = this.getAddress();
|
|
155
|
+
console.log("address: ", address);
|
|
155
156
|
const account = await this.wallet.getAccount(address);
|
|
157
|
+
console.log("account: ", account);
|
|
156
158
|
if (!account) {
|
|
157
159
|
throw new Error(`Account ${address} not found`);
|
|
158
160
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ibc.js","sourceRoot":"","sources":["../../../../src/multichain/core/ibc.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ibc.js","sourceRoot":"","sources":["../../../../src/multichain/core/ibc.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,29 +1,16 @@
|
|
|
1
|
-
import * as forge from
|
|
2
|
-
import { ISignature } from
|
|
3
|
-
import { TxFee } from
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
export type
|
|
8
|
-
export type NativePayload = ["native", any];
|
|
9
|
-
export type StringifiedPayload = [string, string];
|
|
10
|
-
import { demosWork } from '../communication/demosWork';
|
|
1
|
+
import * as forge from "node-forge";
|
|
2
|
+
import { ISignature } from "./ISignature";
|
|
3
|
+
import { TxFee } from "./TxFee";
|
|
4
|
+
import { DemoScript } from "../demoswork";
|
|
5
|
+
import { IWeb2Request } from "../web2";
|
|
6
|
+
import { XMScript } from "../xm";
|
|
7
|
+
export type TransactionContentData = ["web2Request", IWeb2Request] | ["crosschainOperation", XMScript] | ["demoswork", DemoScript];
|
|
11
8
|
export interface TransactionContent {
|
|
12
|
-
type:
|
|
9
|
+
type: "web2Request" | "crosschainOperation" | "demoswork";
|
|
13
10
|
from: forge.pki.ed25519.BinaryBuffer | forge.pki.PublicKey | ISignature;
|
|
14
11
|
to: forge.pki.ed25519.BinaryBuffer | forge.pki.PrivateKey | ISignature;
|
|
15
12
|
amount: number;
|
|
16
|
-
data:
|
|
17
|
-
nonce: number;
|
|
18
|
-
timestamp: number;
|
|
19
|
-
transaction_fee: TxFee;
|
|
20
|
-
}
|
|
21
|
-
export interface _TransactionContent {
|
|
22
|
-
type: string;
|
|
23
|
-
from: forge.pki.ed25519.BinaryBuffer | forge.pki.PublicKey | ISignature;
|
|
24
|
-
to: forge.pki.ed25519.BinaryBuffer | forge.pki.PrivateKey | ISignature;
|
|
25
|
-
amount: number;
|
|
26
|
-
data: demosWork;
|
|
13
|
+
data: TransactionContentData;
|
|
27
14
|
nonce: number;
|
|
28
15
|
timestamp: number;
|
|
29
16
|
transaction_fee: TxFee;
|