stated-protocol-parser 1.0.3 → 1.0.5
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/dist/constants.d.ts +1 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +1 -0
- package/dist/constants.js.map +1 -0
- package/dist/esm/constants.d.ts +47 -0
- package/dist/esm/constants.d.ts.map +1 -0
- package/dist/esm/constants.js +47 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/hash.browser.d.ts +31 -0
- package/dist/esm/hash.browser.d.ts.map +1 -0
- package/dist/esm/hash.browser.js +58 -0
- package/dist/esm/hash.browser.js.map +1 -0
- package/dist/esm/hash.node.d.ts +31 -0
- package/dist/esm/hash.node.d.ts.map +1 -0
- package/dist/esm/hash.node.js +43 -0
- package/dist/esm/hash.node.js.map +1 -0
- package/dist/esm/hash.test.d.ts +2 -0
- package/dist/esm/hash.test.d.ts.map +1 -0
- package/dist/esm/hash.test.js +181 -0
- package/dist/esm/hash.test.js.map +1 -0
- package/dist/esm/index.d.ts +44 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +643 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/index.test.d.ts +2 -0
- package/dist/esm/index.test.d.ts.map +1 -0
- package/dist/esm/index.test.js +293 -0
- package/dist/esm/index.test.js.map +1 -0
- package/dist/esm/types.d.ts +149 -0
- package/dist/esm/types.d.ts.map +1 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/utils.d.ts +4 -0
- package/dist/esm/utils.d.ts.map +1 -0
- package/dist/esm/utils.js +23 -0
- package/dist/esm/utils.js.map +1 -0
- package/dist/esm/v3.d.ts +5 -0
- package/dist/esm/v3.d.ts.map +1 -0
- package/dist/esm/v3.js +60 -0
- package/dist/esm/v3.js.map +1 -0
- package/dist/hash.browser.d.ts +1 -0
- package/dist/hash.browser.d.ts.map +1 -0
- package/dist/hash.browser.js +1 -0
- package/dist/hash.browser.js.map +1 -0
- package/dist/hash.node.d.ts +1 -0
- package/dist/hash.node.d.ts.map +1 -0
- package/dist/hash.node.js +1 -0
- package/dist/hash.node.js.map +1 -0
- package/dist/hash.test.d.ts +2 -0
- package/dist/hash.test.d.ts.map +1 -0
- package/dist/hash.test.js +183 -0
- package/dist/hash.test.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -0
- package/dist/index.test.d.ts +2 -0
- package/dist/index.test.d.ts.map +1 -0
- package/dist/index.test.js +295 -0
- package/dist/index.test.js.map +1 -0
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +1 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +1 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +1 -0
- package/dist/utils.js.map +1 -0
- package/dist/v3.d.ts +1 -0
- package/dist/v3.d.ts.map +1 -0
- package/dist/v3.js +1 -0
- package/dist/v3.js.map +1 -0
- package/package.json +7 -13
- package/src/constants.ts +61 -0
- package/src/hash.browser.ts +65 -0
- package/src/hash.node.ts +47 -0
- package/src/hash.test.ts +217 -0
- package/src/index.test.ts +378 -0
- package/src/index.ts +678 -0
- package/src/types.ts +186 -0
- package/src/utils.ts +18 -0
- package/src/v3.ts +62 -0
|
@@ -0,0 +1,295 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const index_1 = require("./index");
|
|
4
|
+
const randomUnicodeString = () => Array.from({ length: 20 }, () => String.fromCharCode(Math.floor(Math.random() * 65536)))
|
|
5
|
+
.join('')
|
|
6
|
+
.replace(/[\n;>=<"''\\]/g, '');
|
|
7
|
+
test('parse statement', () => {
|
|
8
|
+
const statement = `Publishing domain: localhost
|
|
9
|
+
Author: chris
|
|
10
|
+
Time: Tue, 18 Apr 2023 18:20:26 GMT
|
|
11
|
+
Tags: hashtag1, hashtag2
|
|
12
|
+
Format version: 4
|
|
13
|
+
Statement content: hi
|
|
14
|
+
`;
|
|
15
|
+
const parsedStatement = (0, index_1.parseStatement)({ statement });
|
|
16
|
+
expect(parsedStatement.content).toBe(`hi
|
|
17
|
+
`);
|
|
18
|
+
});
|
|
19
|
+
test('statement build & parse function compatibility: input=parse(build(input))', () => {
|
|
20
|
+
const [domain, author, representative, content, supersededStatement] = Array.from({ length: 5 }, randomUnicodeString);
|
|
21
|
+
const tags = Array.from({ length: 4 }, randomUnicodeString);
|
|
22
|
+
const contentWithTrailingNewline = content + (content.match(/\n$/) ? '' : '\n');
|
|
23
|
+
const time = new Date('Sun, 04 Sep 2022 14:48:50 GMT');
|
|
24
|
+
const statementContent = (0, index_1.buildStatement)({
|
|
25
|
+
domain,
|
|
26
|
+
author,
|
|
27
|
+
time,
|
|
28
|
+
content: contentWithTrailingNewline,
|
|
29
|
+
representative,
|
|
30
|
+
supersededStatement,
|
|
31
|
+
tags,
|
|
32
|
+
});
|
|
33
|
+
const parsedStatement = (0, index_1.parseStatement)({ statement: statementContent });
|
|
34
|
+
expect(parsedStatement.domain).toBe(domain);
|
|
35
|
+
expect(parsedStatement.author).toBe(author);
|
|
36
|
+
expect(parsedStatement.time?.toUTCString()).toBe(time.toUTCString());
|
|
37
|
+
expect(parsedStatement.content).toBe(contentWithTrailingNewline);
|
|
38
|
+
expect(parsedStatement.representative).toBe(representative);
|
|
39
|
+
expect(parsedStatement.supersededStatement).toBe(supersededStatement);
|
|
40
|
+
expect(parsedStatement.tags?.sort()).toStrictEqual(tags.sort());
|
|
41
|
+
});
|
|
42
|
+
test('parse quotation', () => {
|
|
43
|
+
let quotation = `Publishing domain: rixdata.net
|
|
44
|
+
Author: Example Inc.
|
|
45
|
+
Time: Sun, 04 Sep 2022 14:48:50 GMT
|
|
46
|
+
Format version: 4
|
|
47
|
+
Statement content:
|
|
48
|
+
Type: Quotation
|
|
49
|
+
Original author: XYZ Company Inc.
|
|
50
|
+
Author verification: eXoVsm2CdF5Ri-SEAr33RNkG3DBuehvFoDBQ_pO9CXE
|
|
51
|
+
Original publication time: Sun, 04 Sep 2022 14:48:50 GMT
|
|
52
|
+
Source: https://www.facebook.com/companyxzy/posts/XXXX
|
|
53
|
+
Picture proof: 5HKiyQXGV4xavq-Nn9RXi_ndUH-2BEux3ccFIjaSk_8
|
|
54
|
+
Confidence: 0.9
|
|
55
|
+
Quotation: we give example.com a 2/5 star rating
|
|
56
|
+
Paraphrased statement:
|
|
57
|
+
Type: Rating
|
|
58
|
+
Organisation name: example
|
|
59
|
+
Organisation domain: example.com
|
|
60
|
+
Our rating: 2/5 Stars
|
|
61
|
+
`;
|
|
62
|
+
const parsedStatement = (0, index_1.parseStatement)({ statement: quotation });
|
|
63
|
+
const parsedQuotation = (0, index_1.parseQuotation)(parsedStatement.content);
|
|
64
|
+
const type = parsedQuotation.type;
|
|
65
|
+
expect(type).toBe('rating');
|
|
66
|
+
});
|
|
67
|
+
test('quotation build & parse function compatibility: input=parse(build(input))', () => {
|
|
68
|
+
const [originalAuthor, source, picture, quotation, paraphrasedStatement] = Array.from({ length: 6 }, randomUnicodeString);
|
|
69
|
+
const authorVerification = 'yXoVsm2CdF5Ri-SEAr33RNkG3DBuehvFoDBQ_pO9CXE';
|
|
70
|
+
const originalTime = 'Sun, 04 Sep 2022 14:48:50 GMT';
|
|
71
|
+
const confidence = '' + Math.random();
|
|
72
|
+
const quotationContent = (0, index_1.buildQuotationContent)({
|
|
73
|
+
originalAuthor,
|
|
74
|
+
authorVerification,
|
|
75
|
+
originalTime,
|
|
76
|
+
source,
|
|
77
|
+
picture,
|
|
78
|
+
confidence,
|
|
79
|
+
quotation,
|
|
80
|
+
paraphrasedStatement,
|
|
81
|
+
});
|
|
82
|
+
const parsedQuotation = (0, index_1.parseQuotation)(quotationContent);
|
|
83
|
+
expect(parsedQuotation.originalAuthor).toBe(originalAuthor);
|
|
84
|
+
expect(parsedQuotation.originalTime).toBe(originalTime);
|
|
85
|
+
expect(parsedQuotation.source).toBe(source);
|
|
86
|
+
expect(parsedQuotation.picture).toBe(picture);
|
|
87
|
+
expect(parsedQuotation.confidence).toBe(confidence);
|
|
88
|
+
expect(parsedQuotation.quotation).toBe(quotation);
|
|
89
|
+
expect(parsedQuotation.paraphrasedStatement?.replace(/\n$/, '')).toBe(paraphrasedStatement);
|
|
90
|
+
expect(parsedQuotation.authorVerification).toBe(authorVerification);
|
|
91
|
+
});
|
|
92
|
+
test('parse organisation verification', () => {
|
|
93
|
+
let organisationVerification = `Publishing domain: rixdata.net
|
|
94
|
+
Author: Example Inc.
|
|
95
|
+
Time: Sun, 04 Sep 2022 14:48:50 GMT
|
|
96
|
+
Format version: 4
|
|
97
|
+
Statement content:
|
|
98
|
+
Type: Organisation verification
|
|
99
|
+
Description: We verified the following information about an organisation.
|
|
100
|
+
Name: Walmart Inc.
|
|
101
|
+
Country: United States of America
|
|
102
|
+
Legal entity: corporation
|
|
103
|
+
Owner of the domain: walmart.com
|
|
104
|
+
Province or state: Arkansas
|
|
105
|
+
City: Bentonville
|
|
106
|
+
`;
|
|
107
|
+
const parsedStatement = (0, index_1.parseStatement)({
|
|
108
|
+
statement: organisationVerification,
|
|
109
|
+
});
|
|
110
|
+
const parsedOVerification = (0, index_1.parseOrganisationVerification)(parsedStatement.content);
|
|
111
|
+
const name = parsedOVerification.name;
|
|
112
|
+
expect(name).toBe('Walmart Inc.');
|
|
113
|
+
});
|
|
114
|
+
test('organisation verification build & parse function compatibility: input=parse(build(input))', () => {
|
|
115
|
+
const [name, englishName, city, domain, foreignDomain, serialNumber, reliabilityPolicy, pictureHash,] = Array.from({ length: 8 }, randomUnicodeString);
|
|
116
|
+
const country = 'Germany';
|
|
117
|
+
const province = 'Bayern';
|
|
118
|
+
const legalForm = 'corporation';
|
|
119
|
+
const employeeCount = '100-1000';
|
|
120
|
+
const confidence = 0.8;
|
|
121
|
+
const verificationContent = (0, index_1.buildOrganisationVerificationContent)({
|
|
122
|
+
name,
|
|
123
|
+
englishName,
|
|
124
|
+
country,
|
|
125
|
+
city,
|
|
126
|
+
province,
|
|
127
|
+
legalForm,
|
|
128
|
+
domain,
|
|
129
|
+
pictureHash,
|
|
130
|
+
foreignDomain,
|
|
131
|
+
serialNumber,
|
|
132
|
+
confidence,
|
|
133
|
+
reliabilityPolicy,
|
|
134
|
+
employeeCount,
|
|
135
|
+
});
|
|
136
|
+
const parsedVerification = (0, index_1.parseOrganisationVerification)(verificationContent);
|
|
137
|
+
expect(parsedVerification.name).toBe(name);
|
|
138
|
+
expect(parsedVerification.englishName).toBe(englishName);
|
|
139
|
+
expect(parsedVerification.country).toBe(country);
|
|
140
|
+
expect(parsedVerification.city).toBe(city);
|
|
141
|
+
expect(parsedVerification.province).toBe(province);
|
|
142
|
+
expect(parsedVerification.legalForm).toBe(legalForm);
|
|
143
|
+
expect(parsedVerification.domain).toBe(domain);
|
|
144
|
+
expect(parsedVerification.foreignDomain).toBe(foreignDomain);
|
|
145
|
+
expect(parsedVerification.serialNumber).toBe(serialNumber);
|
|
146
|
+
expect(parsedVerification.confidence).toBe(confidence);
|
|
147
|
+
expect(parsedVerification.pictureHash).toBe(pictureHash);
|
|
148
|
+
expect(parsedVerification.reliabilityPolicy).toBe(reliabilityPolicy);
|
|
149
|
+
expect(parsedVerification.employeeCount).toBe(employeeCount);
|
|
150
|
+
});
|
|
151
|
+
test('parse person verification', () => {
|
|
152
|
+
let personVerification = `Publishing domain: rixdata.net
|
|
153
|
+
Author: Example Inc.
|
|
154
|
+
Time: Sun, 04 Sep 2022 14:48:50 GMT
|
|
155
|
+
Format version: 4
|
|
156
|
+
Statement content:
|
|
157
|
+
Type: Person verification
|
|
158
|
+
Description: We verified the following information about a person.
|
|
159
|
+
Name: Barack Hossein Obama II
|
|
160
|
+
Date of birth: 4 Aug 1961
|
|
161
|
+
City of birth: Honolulu
|
|
162
|
+
Country of birth: United States of America
|
|
163
|
+
Owner of the domain: barackobama.com
|
|
164
|
+
`;
|
|
165
|
+
const parsedStatement = (0, index_1.parseStatement)({ statement: personVerification });
|
|
166
|
+
const parsedPVerification = (0, index_1.parsePersonVerification)(parsedStatement.content);
|
|
167
|
+
const name = parsedPVerification.name;
|
|
168
|
+
expect(name).toBe('Barack Hossein Obama II');
|
|
169
|
+
});
|
|
170
|
+
test('person verification build & parse function compatibility: input=parse(build(input))', () => {
|
|
171
|
+
const [name, ownDomain, foreignDomain, jobTitle, employer, verificationMethod, picture, reliabilityPolicy,] = Array.from({ length: 12 }, randomUnicodeString);
|
|
172
|
+
const countryOfBirth = 'Germany';
|
|
173
|
+
const cityOfBirth = 'Berlin';
|
|
174
|
+
const confidence = Math.random();
|
|
175
|
+
const dateOfBirth = new Date(0);
|
|
176
|
+
const personVerificationContent = (0, index_1.buildPersonVerificationContent)({
|
|
177
|
+
name,
|
|
178
|
+
countryOfBirth,
|
|
179
|
+
cityOfBirth,
|
|
180
|
+
ownDomain,
|
|
181
|
+
foreignDomain,
|
|
182
|
+
dateOfBirth,
|
|
183
|
+
jobTitle,
|
|
184
|
+
employer,
|
|
185
|
+
verificationMethod,
|
|
186
|
+
confidence,
|
|
187
|
+
picture,
|
|
188
|
+
reliabilityPolicy,
|
|
189
|
+
});
|
|
190
|
+
const parsedVerification = (0, index_1.parsePersonVerification)(personVerificationContent);
|
|
191
|
+
expect(parsedVerification.name).toBe(name);
|
|
192
|
+
expect(parsedVerification.ownDomain).toBe(ownDomain);
|
|
193
|
+
expect(parsedVerification.foreignDomain).toBe(foreignDomain);
|
|
194
|
+
expect(parsedVerification.dateOfBirth.toUTCString()).toBe(dateOfBirth.toUTCString());
|
|
195
|
+
expect(parsedVerification.jobTitle).toBe(jobTitle);
|
|
196
|
+
expect(parsedVerification.employer).toBe(employer);
|
|
197
|
+
expect(parsedVerification.verificationMethod).toBe(verificationMethod);
|
|
198
|
+
expect(parsedVerification.confidence).toBe(confidence);
|
|
199
|
+
expect(parsedVerification.picture).toBe(picture);
|
|
200
|
+
expect(parsedVerification.reliabilityPolicy).toBe(reliabilityPolicy);
|
|
201
|
+
expect(parsedVerification.countryOfBirth).toBe(countryOfBirth);
|
|
202
|
+
expect(parsedVerification.cityOfBirth).toBe(cityOfBirth);
|
|
203
|
+
});
|
|
204
|
+
test('parse rating', () => {
|
|
205
|
+
let rating = `Publishing domain: localhost
|
|
206
|
+
Author: chris
|
|
207
|
+
Time: Tue, 18 Apr 2023 18:20:26 GMT
|
|
208
|
+
Format version: 4
|
|
209
|
+
Statement content:
|
|
210
|
+
Type: Rating
|
|
211
|
+
Subject name: AMBOSS GmbH
|
|
212
|
+
URL that identifies the subject: amboss.com
|
|
213
|
+
Rated quality: AI safety
|
|
214
|
+
Our rating: 5/5 Stars
|
|
215
|
+
`;
|
|
216
|
+
const parsedStatement = (0, index_1.parseStatement)({ statement: rating });
|
|
217
|
+
const parsedRating = (0, index_1.parseRating)(parsedStatement.content);
|
|
218
|
+
const ratingNumber = parsedRating.rating;
|
|
219
|
+
expect(ratingNumber).toBe(5);
|
|
220
|
+
const subjectName = parsedRating.subjectName;
|
|
221
|
+
expect(subjectName).toBe('AMBOSS GmbH');
|
|
222
|
+
const subjectReference = parsedRating.subjectReference;
|
|
223
|
+
expect(subjectReference).toBe('amboss.com');
|
|
224
|
+
const quality = parsedRating.quality;
|
|
225
|
+
expect(quality).toBe('AI safety');
|
|
226
|
+
});
|
|
227
|
+
test('rating build & parse function compatibility: input=parse(build(input))', () => {
|
|
228
|
+
const [subjectName, subjectReference, comment, quality] = Array.from({ length: 4 }, randomUnicodeString);
|
|
229
|
+
const rating = Math.ceil(Math.random() * 5);
|
|
230
|
+
const ratingContent = (0, index_1.buildRating)({ subjectName, subjectReference, rating, comment, quality });
|
|
231
|
+
const parsedRating = (0, index_1.parseRating)(ratingContent);
|
|
232
|
+
expect(parsedRating.subjectName).toBe(subjectName);
|
|
233
|
+
expect(parsedRating.subjectReference).toBe(subjectReference);
|
|
234
|
+
expect(parsedRating.quality).toBe(quality);
|
|
235
|
+
expect(parsedRating.rating).toBe(rating);
|
|
236
|
+
expect(parsedRating.comment).toBe(comment);
|
|
237
|
+
});
|
|
238
|
+
test('parse poll v4', () => {
|
|
239
|
+
let poll = `Publishing domain: rixdata.net
|
|
240
|
+
Author: Example Inc.
|
|
241
|
+
Time: Thu, 17 Nov 2022 13:38:20 GMT
|
|
242
|
+
Format version: 4
|
|
243
|
+
Statement content:
|
|
244
|
+
Type: Poll
|
|
245
|
+
The poll outcome is finalized when the following nodes agree: rixdata.net
|
|
246
|
+
Voting deadline: Thu, 01 Dec 2022 13:38:26 GMT
|
|
247
|
+
Poll: Should the UK join the EU
|
|
248
|
+
Option 1: Yes
|
|
249
|
+
Option 2: No
|
|
250
|
+
Who can vote:
|
|
251
|
+
Description: All universities with a ROR ID
|
|
252
|
+
Legal form scope: corporation
|
|
253
|
+
All entities with the following property: ROR ID
|
|
254
|
+
As observed by: Rix Data NL B.V.@rixdata.net
|
|
255
|
+
Link to query defining who can vote: https://stated.rixdata.net/?search_query=%09Observed%20property:%20ROR%20ID%0A%09&domain=rixdata.net&author=Rix%20Data%20NL%20B.V.
|
|
256
|
+
`;
|
|
257
|
+
const parsedStatement = (0, index_1.parseStatement)({ statement: poll });
|
|
258
|
+
const parsedPoll = (0, index_1.parsePoll)(parsedStatement.content);
|
|
259
|
+
const pollTitle = parsedPoll.poll;
|
|
260
|
+
expect(pollTitle).toBe('Should the UK join the EU');
|
|
261
|
+
expect(parsedPoll.options[0]).toBe('Yes');
|
|
262
|
+
expect(parsedPoll.options[1]).toBe('No');
|
|
263
|
+
expect(parsedPoll.deadline?.toUTCString()).toBe('Thu, 01 Dec 2022 13:38:26 GMT');
|
|
264
|
+
expect(parsedPoll.scopeDescription).toBe('All universities with a ROR ID');
|
|
265
|
+
expect(parsedPoll.legalEntity).toBe('corporation');
|
|
266
|
+
expect(parsedPoll.requiredProperty).toBe('ROR ID');
|
|
267
|
+
expect(parsedPoll.requiredPropertyObserver).toBe('Rix Data NL B.V.@rixdata.net');
|
|
268
|
+
expect(parsedPoll.scopeQueryLink).toBe('https://stated.rixdata.net/?search_query=%09Observed%20property:%20ROR%20ID%0A%09&domain=rixdata.net&author=Rix%20Data%20NL%20B.V.');
|
|
269
|
+
});
|
|
270
|
+
test('poll build & parse function compatibility: input=parse(build(input))', () => {
|
|
271
|
+
const [country, city, legalEntity, judges, poll, scopeDescription] = Array.from({ length: 6 }, randomUnicodeString);
|
|
272
|
+
const options = Array.from({ length: 2 }, randomUnicodeString);
|
|
273
|
+
const domainScope = ['rixdata.net'];
|
|
274
|
+
const deadline = new Date('Thu, 01 Dec 2022 13:38:26 GMT');
|
|
275
|
+
const pollContent = (0, index_1.buildPollContent)({
|
|
276
|
+
country,
|
|
277
|
+
city,
|
|
278
|
+
legalEntity,
|
|
279
|
+
domainScope,
|
|
280
|
+
judges,
|
|
281
|
+
deadline,
|
|
282
|
+
poll,
|
|
283
|
+
options,
|
|
284
|
+
scopeDescription,
|
|
285
|
+
});
|
|
286
|
+
const parsedPoll = (0, index_1.parsePoll)(pollContent);
|
|
287
|
+
expect(parsedPoll.poll).toBe(poll);
|
|
288
|
+
expect(parsedPoll.country).toBe(country);
|
|
289
|
+
expect(parsedPoll.legalEntity).toBe(legalEntity);
|
|
290
|
+
expect(parsedPoll.judges).toBe(judges);
|
|
291
|
+
expect(parsedPoll.deadline?.toUTCString()).toBe(deadline.toUTCString());
|
|
292
|
+
expect(parsedPoll.options[0]).toEqual(options[0]);
|
|
293
|
+
expect(parsedPoll.options[1]).toEqual(options[1]);
|
|
294
|
+
});
|
|
295
|
+
//# sourceMappingURL=index.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
package/dist/utils.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,GAAI,GAAG,MAAM,KAAG,MAAM,GAAG,SAS1D,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,OAAO,MAAM,KAAG,MAEO,CAAA;AAElD,eAAO,MAAM,eAAe,EAAE,MAAgG,CAAA"}
|
package/dist/utils.js
CHANGED
|
@@ -25,3 +25,4 @@ const monthIndex = (month) => ["jan", "feb", "mar", "apr", "may", "jun", "jul",
|
|
|
25
25
|
.indexOf(month.toLowerCase().substr(0, 3));
|
|
26
26
|
exports.monthIndex = monthIndex;
|
|
27
27
|
exports.birthDateFormat = /(?<d>\d{1,2})\s(?<month>Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(?<y>\d{4})/;
|
|
28
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAAA,2CAAgD;AAEzC,MAAM,qBAAqB,GAAG,CAAC,CAAS,EAAsB,EAAE;IACnE,IAAI,CAAC,IAAI,QAAQ;QAAE,OAAO,8BAAkB,CAAC,UAAU,CAAC,CAAA;IACxD,IAAI,CAAC,IAAI,OAAO;QAAE,OAAO,8BAAkB,CAAC,SAAS,CAAC,CAAA;IACtD,IAAI,CAAC,IAAI,MAAM;QAAE,OAAO,8BAAkB,CAAC,QAAQ,CAAC,CAAA;IACpD,IAAI,CAAC,IAAI,KAAK;QAAE,OAAO,8BAAkB,CAAC,OAAO,CAAC,CAAA;IAClD,IAAI,CAAC,IAAI,IAAI;QAAE,OAAO,8BAAkB,CAAC,MAAM,CAAC,CAAA;IAChD,IAAI,CAAC,IAAI,GAAG;QAAE,OAAO,8BAAkB,CAAC,KAAK,CAAC,CAAA;IAC9C,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,8BAAkB,CAAC,IAAI,CAAC,CAAA;IAC5C,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,8BAAkB,CAAC,GAAG,CAAC,CAAA;AAC9C,CAAC,CAAA;AATY,QAAA,qBAAqB,yBASjC;AAEM,MAAM,UAAU,GAAG,CAAC,KAAa,EAAU,EAAE,CAChD,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;KAC/E,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAFrC,QAAA,UAAU,cAE2B;AAErC,QAAA,eAAe,GAAW,uFAAuF,CAAA"}
|
package/dist/v3.d.ts
CHANGED
package/dist/v3.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"v3.d.ts","sourceRoot":"","sources":["../src/v3.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAE9B,eAAO,MAAM,WAAW,GAAI,GAAG,MAAM,EAAE,UAAU,MAAM,KAAG,IAAI,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CA0DlF,CAAA"}
|
package/dist/v3.js
CHANGED
package/dist/v3.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"v3.js","sourceRoot":"","sources":["../src/v3.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,28 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "stated-protocol-parser",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.5",
|
|
4
4
|
"description": "Parser and formatter for the Stated protocol - a decentralized statement verification system",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
|
+
"module": "dist/esm/index.js",
|
|
6
7
|
"types": "dist/index.d.ts",
|
|
7
8
|
"exports": {
|
|
8
9
|
".": {
|
|
9
|
-
"import": "./dist/index.js",
|
|
10
|
+
"import": "./dist/esm/index.js",
|
|
10
11
|
"require": "./dist/index.js",
|
|
11
12
|
"types": "./dist/index.d.ts"
|
|
12
|
-
},
|
|
13
|
-
"./hash.node": {
|
|
14
|
-
"import": "./dist/hash.node.js",
|
|
15
|
-
"require": "./dist/hash.node.js",
|
|
16
|
-
"types": "./dist/hash.node.d.ts"
|
|
17
|
-
},
|
|
18
|
-
"./hash.browser": {
|
|
19
|
-
"import": "./dist/hash.browser.js",
|
|
20
|
-
"require": "./dist/hash.browser.js",
|
|
21
|
-
"types": "./dist/hash.browser.d.ts"
|
|
22
13
|
}
|
|
23
14
|
},
|
|
24
15
|
"scripts": {
|
|
25
|
-
"build": "
|
|
16
|
+
"build": "npm run build:cjs && npm run build:esm",
|
|
17
|
+
"build:cjs": "tsc",
|
|
18
|
+
"build:esm": "tsc -p tsconfig.esm.json",
|
|
26
19
|
"test": "jest",
|
|
27
20
|
"prepublishOnly": "npm run build"
|
|
28
21
|
},
|
|
@@ -46,6 +39,7 @@
|
|
|
46
39
|
},
|
|
47
40
|
"files": [
|
|
48
41
|
"dist",
|
|
42
|
+
"src",
|
|
49
43
|
"README.md",
|
|
50
44
|
"LICENSE"
|
|
51
45
|
],
|
package/src/constants.ts
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
export const legalForms = {
|
|
2
|
+
local_government: 'local government',
|
|
3
|
+
state_government: 'state government',
|
|
4
|
+
foreign_affairs_ministry: 'foreign affairs ministry',
|
|
5
|
+
corporation: 'corporation',
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export const statementTypes = {
|
|
9
|
+
statement: 'statement',
|
|
10
|
+
quotation: 'quotation',
|
|
11
|
+
organisationVerification: 'organisation_verification',
|
|
12
|
+
personVerification: 'person_verification',
|
|
13
|
+
poll: 'poll',
|
|
14
|
+
vote: 'vote',
|
|
15
|
+
response: 'response',
|
|
16
|
+
disputeContent: 'dispute_statement_content',
|
|
17
|
+
disputeAuthenticity: 'dispute_statement_authenticity',
|
|
18
|
+
boycott: 'boycott',
|
|
19
|
+
observation: 'observation',
|
|
20
|
+
rating: 'rating',
|
|
21
|
+
signPdf: "sign_pdf",
|
|
22
|
+
bounty: "bounty",
|
|
23
|
+
unsupported: "unsupported",
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export const peopleCountBuckets = {
|
|
27
|
+
"0": "0-10",
|
|
28
|
+
"10": "10-100",
|
|
29
|
+
"100": "100-1000",
|
|
30
|
+
"1000": "1000-10,000",
|
|
31
|
+
"10000": "10,000-100,000",
|
|
32
|
+
"100000": "100,000+",
|
|
33
|
+
"1000000": "1,000,000+",
|
|
34
|
+
"10000000": "10,000,000+",
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export const UTCFormat: RegExp = /(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s\d{2}\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s\d{4}\s\d{2}:\d{2}:\d{2}\sGMT/
|
|
38
|
+
|
|
39
|
+
export const pollKeys = /(Type: |The poll outcome is finalized when the following nodes agree: |Voting deadline: |Poll: |Option 1: |Option 2: |Option 3: |Option 4: |Option 5: |Allow free text votes: |Who can vote: |Description: |Country scope: |City scope: |Legal form scope: |Domain scope: |All entities with the following property: |As observed by: |Link to query defining who can vote: )/g
|
|
40
|
+
|
|
41
|
+
export const organisationVerificationKeys = /(Type: |Description: |Name: |English name: |Country: |Legal entity: |Legal form: |Department using the domain: |Owner of the domain: |Foreign domain used for publishing statements: |Province or state: |Business register number: |City: |Longitude: |Latitude: |Population: |Logo: |Employee count: |Reliability policy: |Confidence: )/g
|
|
42
|
+
|
|
43
|
+
export const personVerificationKeys = /(Type: |Description: |Name: |Date of birth: |City of birth: |Country of birth: |Job title: |Employer: |Owner of the domain: |Foreign domain used for publishing statements: |Picture: |Verification method: |Confidence: |Reliability policy: )/g
|
|
44
|
+
|
|
45
|
+
export const voteKeys = /(Type: |Poll id: |Poll: |Option: )/g
|
|
46
|
+
|
|
47
|
+
export const disputeAuthenticityKeys = /(Type: |Description: |Hash of referenced statement: |Confidence: |Reliability policy: )/g
|
|
48
|
+
|
|
49
|
+
export const disputeContentKeys = /(Type: |Description: |Hash of referenced statement: |Confidence: |Reliability policy: )/g
|
|
50
|
+
|
|
51
|
+
export const responseKeys = /(Type: |Hash of referenced statement: |Response: )/
|
|
52
|
+
|
|
53
|
+
export const PDFSigningKeys = /(Type: |Description: |PDF file hash: )/
|
|
54
|
+
|
|
55
|
+
export const ratingKeys = /(Type: |Subject type: |Subject name: |URL that identifies the subject: |Document file hash: |Rated quality: |Our rating: |Comment: )/
|
|
56
|
+
|
|
57
|
+
export const BountyKeys = /(Type: |In order to: |We will reward any entity that: |The reward is: |In case of dispute, bounty claims are judged by: |The judge will be paid per investigated case with a maxium of: )/
|
|
58
|
+
|
|
59
|
+
export const ObservationKeys = /(Type: |Approach: |Confidence: |Reliability policy: |Subject: |Subject identity reference: |Observation reference: |Observed property: |Observed value: )/
|
|
60
|
+
|
|
61
|
+
export const BoycottKeys = /(Type: |Description: |Subject: |Subject identity reference: )/
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser-compatible hash utilities using Web Crypto API
|
|
3
|
+
* Async operations for client-side use
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Compute SHA-256 hash of a string and return it as URL-safe base64
|
|
8
|
+
* Works in both browser and Node.js environments
|
|
9
|
+
* @param input - The string or buffer to hash
|
|
10
|
+
* @returns URL-safe base64 encoded hash
|
|
11
|
+
*/
|
|
12
|
+
export const sha256 = async (input: string | Uint8Array): Promise<string> => {
|
|
13
|
+
let data: Uint8Array;
|
|
14
|
+
|
|
15
|
+
if (typeof input === 'string') {
|
|
16
|
+
const encoder = new TextEncoder();
|
|
17
|
+
data = encoder.encode(input);
|
|
18
|
+
} else {
|
|
19
|
+
data = input;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
// Use Web Crypto API (available in both modern browsers and Node.js 15+)
|
|
23
|
+
const hashBuffer = await crypto.subtle.digest('SHA-256', data);
|
|
24
|
+
const hashArray = Array.from(new Uint8Array(hashBuffer));
|
|
25
|
+
|
|
26
|
+
// Convert to base64
|
|
27
|
+
const base64 = btoa(String.fromCharCode(...hashArray));
|
|
28
|
+
|
|
29
|
+
// Make URL-safe: remove padding and replace + with - and / with _
|
|
30
|
+
const urlSafe = base64.replace(/=/g, '').replace(/\+/g, '-').replace(/\//g, '_');
|
|
31
|
+
|
|
32
|
+
return urlSafe;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Verify that content matches a given hash
|
|
37
|
+
* @param content - The content to verify
|
|
38
|
+
* @param hash - The expected hash
|
|
39
|
+
* @returns True if the hash matches
|
|
40
|
+
*/
|
|
41
|
+
export const verify = async (content: string | Uint8Array, hash: string): Promise<boolean> => {
|
|
42
|
+
const computed = await sha256(content);
|
|
43
|
+
return computed === hash;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Convert URL-safe base64 back to standard base64
|
|
48
|
+
* @param urlSafe - URL-safe base64 string
|
|
49
|
+
* @returns Standard base64 string with padding
|
|
50
|
+
*/
|
|
51
|
+
export const fromUrlSafeBase64 = (urlSafe: string): string => {
|
|
52
|
+
const base64 = urlSafe.replace(/-/g, '+').replace(/_/g, '/');
|
|
53
|
+
// Add padding if needed
|
|
54
|
+
const padding = '='.repeat((4 - (base64.length % 4)) % 4);
|
|
55
|
+
return base64 + padding;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Convert standard base64 to URL-safe base64
|
|
60
|
+
* @param base64 - Standard base64 string
|
|
61
|
+
* @returns URL-safe base64 string without padding
|
|
62
|
+
*/
|
|
63
|
+
export const toUrlSafeBase64 = (base64: string): string => {
|
|
64
|
+
return base64.replace(/=/g, '').replace(/\+/g, '-').replace(/\//g, '_');
|
|
65
|
+
}
|
package/src/hash.node.ts
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Node.js-specific hash utilities using native crypto module
|
|
3
|
+
* Synchronous operations for server-side use
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import crypto from 'crypto'
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Compute SHA-256 hash and return as URL-safe base64 (Node.js)
|
|
10
|
+
* @param input - String or buffer to hash
|
|
11
|
+
* @returns URL-safe base64 encoded hash
|
|
12
|
+
*/
|
|
13
|
+
export const sha256 = (input: crypto.BinaryLike): string => {
|
|
14
|
+
const base64 = crypto.createHash('sha256').update(input).digest('base64')
|
|
15
|
+
const urlSafe = base64.replace(/=/g, '').replace(/\+/g, '-').replace(/\//g, '_')
|
|
16
|
+
return urlSafe
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Verify that content matches a given hash
|
|
21
|
+
* @param content - Content to verify
|
|
22
|
+
* @param hash - Expected hash
|
|
23
|
+
* @returns True if hash matches
|
|
24
|
+
*/
|
|
25
|
+
export const verify = (content: crypto.BinaryLike, hash: string): boolean => {
|
|
26
|
+
return hash === sha256(content)
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Convert URL-safe base64 back to standard base64
|
|
31
|
+
* @param urlSafe - URL-safe base64 string
|
|
32
|
+
* @returns Standard base64 string with padding
|
|
33
|
+
*/
|
|
34
|
+
export const fromUrlSafeBase64 = (urlSafe: string): string => {
|
|
35
|
+
const base64 = urlSafe.replace(/-/g, '+').replace(/_/g, '/');
|
|
36
|
+
const padding = '='.repeat((4 - (base64.length % 4)) % 4);
|
|
37
|
+
return base64 + padding;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Convert standard base64 to URL-safe base64
|
|
42
|
+
* @param base64 - Standard base64 string
|
|
43
|
+
* @returns URL-safe base64 string without padding
|
|
44
|
+
*/
|
|
45
|
+
export const toUrlSafeBase64 = (base64: string): string => {
|
|
46
|
+
return base64.replace(/=/g, '').replace(/\+/g, '-').replace(/\//g, '_');
|
|
47
|
+
}
|