-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathindex.js
More file actions
65 lines (61 loc) · 2.24 KB
/
index.js
File metadata and controls
65 lines (61 loc) · 2.24 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
const { TemplateArchiveProcessor } = require('@accordproject/template-engine');
const { Template } = require('@accordproject/cicero-core');
const TEMPLATE_PATH = './archives/latedeliveryandpenalty-typescript';
async function trigger() {
const template = await Template.fromDirectory(TEMPLATE_PATH);
const templateArchiveProcessor = new TemplateArchiveProcessor(template);
const data = {
"$class": "io.clause.latedeliveryandpenalty@0.1.0.TemplateModel",
"forceMajeure": true,
"penaltyDuration": {
"$class": "org.accordproject.time@0.3.0.Duration",
"amount": 2,
"unit": "days"
},
"penaltyPercentage": 10.5,
"capPercentage": 55,
"termination": {
"$class": "org.accordproject.time@0.3.0.Duration",
"amount": 15,
"unit": "days"
},
"fractionalPart": "days",
"clauseId": "c88e5ed7-c3e0-4249-a99c-ce9278684ac8",
"$identifier": "c88e5ed7-c3e0-4249-a99c-ce9278684ac8"
};
const request = {
goodsValue: 100
};
const response = await templateArchiveProcessor.trigger(data, request);
console.log('\nTrigger response:');
console.log(JSON.stringify(response, null, 2));
}
async function draft() {
const template = await Template.fromDirectory(TEMPLATE_PATH);
const templateArchiveProcessor = new TemplateArchiveProcessor(template);
const data = {
"$class": "io.clause.latedeliveryandpenalty@0.1.0.TemplateModel",
"forceMajeure": true,
"penaltyDuration": {
"$class": "org.accordproject.time@0.3.0.Duration",
"amount": 2,
"unit": "days"
},
"penaltyPercentage": 10.5,
"capPercentage": 55,
"termination": {
"$class": "org.accordproject.time@0.3.0.Duration",
"amount": 15,
"unit": "days"
},
"fractionalPart": "days",
"clauseId": "c88e5ed7-c3e0-4249-a99c-ce9278684ac8",
"$identifier": "c88e5ed7-c3e0-4249-a99c-ce9278684ac8"
};
const options = {verbose: false};
const result = await templateArchiveProcessor.draft(data, 'markdown', options);
console.log('\Contract draft:');
console.log(result);
}
draft();
trigger();