@hypercerts-org/lexicon 0.10.0-beta.0 → 0.10.0-beta.1
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/README.md +126 -13
- package/dist/exports.d.ts +1018 -0
- package/dist/exports.d.ts.map +1 -0
- package/dist/generated/exports.d.ts +1018 -0
- package/dist/generated/exports.d.ts.map +1 -0
- package/dist/generated/lexicons.d.ts +1805 -0
- package/dist/generated/lexicons.d.ts.map +1 -0
- package/dist/generated/types/app/certified/badge/award.d.ts +24 -0
- package/dist/generated/types/app/certified/badge/award.d.ts.map +1 -0
- package/dist/generated/types/app/certified/badge/definition.d.ts +25 -0
- package/dist/generated/types/app/certified/badge/definition.d.ts.map +1 -0
- package/dist/generated/types/app/certified/badge/response.d.ts +20 -0
- package/dist/generated/types/app/certified/badge/response.d.ts.map +1 -0
- package/dist/generated/types/app/certified/defs.d.ts +3 -0
- package/dist/generated/types/app/certified/defs.d.ts.map +1 -0
- package/dist/generated/types/app/certified/location.d.ts +29 -0
- package/dist/generated/types/app/certified/location.d.ts.map +1 -0
- package/dist/generated/types/com/atproto/repo/strongRef.d.ts +12 -0
- package/dist/generated/types/com/atproto/repo/strongRef.d.ts.map +1 -0
- package/dist/generated/types/org/hypercerts/claim/activity.d.ts +57 -0
- package/dist/generated/types/org/hypercerts/claim/activity.d.ts.map +1 -0
- package/dist/generated/types/org/hypercerts/claim/collection.d.ts +25 -0
- package/dist/generated/types/org/hypercerts/claim/collection.d.ts.map +1 -0
- package/dist/generated/types/org/hypercerts/claim/contribution.d.ts +24 -0
- package/dist/generated/types/org/hypercerts/claim/contribution.d.ts.map +1 -0
- package/dist/generated/types/org/hypercerts/claim/evaluation.d.ts +43 -0
- package/dist/generated/types/org/hypercerts/claim/evaluation.d.ts.map +1 -0
- package/dist/generated/types/org/hypercerts/claim/evidence.d.ts +29 -0
- package/dist/generated/types/org/hypercerts/claim/evidence.d.ts.map +1 -0
- package/dist/generated/types/org/hypercerts/claim/measurement.d.ts +30 -0
- package/dist/generated/types/org/hypercerts/claim/measurement.d.ts.map +1 -0
- package/dist/generated/types/org/hypercerts/claim/project.d.ts +29 -0
- package/dist/generated/types/org/hypercerts/claim/project.d.ts.map +1 -0
- package/dist/generated/types/org/hypercerts/claim/rights.d.ts +25 -0
- package/dist/generated/types/org/hypercerts/claim/rights.d.ts.map +1 -0
- package/dist/generated/types/org/hypercerts/defs.d.ts +45 -0
- package/dist/generated/types/org/hypercerts/defs.d.ts.map +1 -0
- package/dist/generated/types/org/hypercerts/funding/receipt.d.ts +34 -0
- package/dist/generated/types/org/hypercerts/funding/receipt.d.ts.map +1 -0
- package/dist/generated/types/pub/leaflet/pages/linearDocument.d.ts +2 -0
- package/dist/generated/types/pub/leaflet/pages/linearDocument.d.ts.map +1 -0
- package/dist/generated/util.d.ts +37 -0
- package/dist/generated/util.d.ts.map +1 -0
- package/dist/index.cjs +2636 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.mjs +2560 -0
- package/dist/index.mjs.map +1 -0
- package/dist/lexicons.cjs +1002 -0
- package/dist/lexicons.cjs.map +1 -0
- package/dist/lexicons.d.ts +1805 -0
- package/dist/lexicons.d.ts.map +1 -0
- package/dist/lexicons.mjs +996 -0
- package/dist/lexicons.mjs.map +1 -0
- package/dist/types/app/certified/badge/award.d.ts +24 -0
- package/dist/types/app/certified/badge/award.d.ts.map +1 -0
- package/dist/types/app/certified/badge/definition.d.ts +25 -0
- package/dist/types/app/certified/badge/definition.d.ts.map +1 -0
- package/dist/types/app/certified/badge/response.d.ts +20 -0
- package/dist/types/app/certified/badge/response.d.ts.map +1 -0
- package/dist/types/app/certified/defs.d.ts +3 -0
- package/dist/types/app/certified/defs.d.ts.map +1 -0
- package/dist/types/app/certified/location.d.ts +29 -0
- package/dist/types/app/certified/location.d.ts.map +1 -0
- package/dist/types/com/atproto/repo/strongRef.d.ts +12 -0
- package/dist/types/com/atproto/repo/strongRef.d.ts.map +1 -0
- package/dist/types/org/hypercerts/claim/activity.d.ts +57 -0
- package/dist/types/org/hypercerts/claim/activity.d.ts.map +1 -0
- package/dist/types/org/hypercerts/claim/collection.d.ts +25 -0
- package/dist/types/org/hypercerts/claim/collection.d.ts.map +1 -0
- package/dist/types/org/hypercerts/claim/contribution.d.ts +24 -0
- package/dist/types/org/hypercerts/claim/contribution.d.ts.map +1 -0
- package/dist/types/org/hypercerts/claim/evaluation.d.ts +43 -0
- package/dist/types/org/hypercerts/claim/evaluation.d.ts.map +1 -0
- package/dist/types/org/hypercerts/claim/evidence.d.ts +29 -0
- package/dist/types/org/hypercerts/claim/evidence.d.ts.map +1 -0
- package/dist/types/org/hypercerts/claim/measurement.d.ts +30 -0
- package/dist/types/org/hypercerts/claim/measurement.d.ts.map +1 -0
- package/dist/types/org/hypercerts/claim/project.d.ts +29 -0
- package/dist/types/org/hypercerts/claim/project.d.ts.map +1 -0
- package/dist/types/org/hypercerts/claim/rights.d.ts +25 -0
- package/dist/types/org/hypercerts/claim/rights.d.ts.map +1 -0
- package/dist/types/org/hypercerts/defs.d.ts +45 -0
- package/dist/types/org/hypercerts/defs.d.ts.map +1 -0
- package/dist/types/org/hypercerts/funding/receipt.d.ts +34 -0
- package/dist/types/org/hypercerts/funding/receipt.d.ts.map +1 -0
- package/dist/types/pub/leaflet/pages/linearDocument.d.ts +2 -0
- package/dist/types/pub/leaflet/pages/linearDocument.d.ts.map +1 -0
- package/dist/util.d.ts +37 -0
- package/dist/util.d.ts.map +1 -0
- package/package.json +48 -21
- package/README.md.orig +0 -267
- package/types/index.ts +0 -1257
- package/types/lexicons.ts +0 -1071
- package/types/types/app/certified/badge/award.ts +0 -48
- package/types/types/app/certified/badge/definition.ts +0 -49
- package/types/types/app/certified/badge/response.ts +0 -44
- package/types/types/app/certified/defs.ts +0 -14
- package/types/types/app/certified/location.ts +0 -49
- package/types/types/com/atproto/repo/strongRef.ts +0 -31
- package/types/types/org/hypercerts/claim/activity.ts +0 -99
- package/types/types/org/hypercerts/claim/collection.ts +0 -49
- package/types/types/org/hypercerts/claim/contribution.ts +0 -48
- package/types/types/org/hypercerts/claim/evaluation.ts +0 -77
- package/types/types/org/hypercerts/claim/evidence.ts +0 -53
- package/types/types/org/hypercerts/claim/measurement.ts +0 -54
- package/types/types/org/hypercerts/claim/project.ts +0 -53
- package/types/types/org/hypercerts/claim/rights.ts +0 -49
- package/types/types/org/hypercerts/defs.ts +0 -96
- package/types/types/org/hypercerts/funding/receipt.ts +0 -58
- package/types/util.ts +0 -82
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,2636 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var lexicon$g = require('@atproto/lexicon');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* GENERATED CODE - DO NOT MODIFY
|
|
7
|
+
*/
|
|
8
|
+
function isObject(v) {
|
|
9
|
+
return v != null && typeof v === 'object';
|
|
10
|
+
}
|
|
11
|
+
function is$type($type, id, hash) {
|
|
12
|
+
return hash === 'main'
|
|
13
|
+
? $type === id
|
|
14
|
+
: // $type === `${id}#${hash}`
|
|
15
|
+
typeof $type === 'string' &&
|
|
16
|
+
$type.length === id.length + 1 + hash.length &&
|
|
17
|
+
$type.charCodeAt(id.length) === 35 /* '#' */ &&
|
|
18
|
+
$type.startsWith(id) &&
|
|
19
|
+
$type.endsWith(hash);
|
|
20
|
+
}
|
|
21
|
+
function is$typed$f(v, id, hash) {
|
|
22
|
+
return isObject(v) && '$type' in v && is$type(v.$type, id, hash);
|
|
23
|
+
}
|
|
24
|
+
function maybe$typed(v, id, hash) {
|
|
25
|
+
return (isObject(v) &&
|
|
26
|
+
('$type' in v ? v.$type === undefined || is$type(v.$type, id, hash) : true));
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Utility function that allows to convert a "validate*" utility function into a
|
|
30
|
+
* type predicate.
|
|
31
|
+
*/
|
|
32
|
+
function asPredicate(validate) {
|
|
33
|
+
return function (v) {
|
|
34
|
+
return validate(v).success;
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* GENERATED CODE - DO NOT MODIFY
|
|
40
|
+
*/
|
|
41
|
+
const schemaDict = {
|
|
42
|
+
AppCertifiedBadgeAward: {
|
|
43
|
+
lexicon: 1,
|
|
44
|
+
id: 'app.certified.badge.award',
|
|
45
|
+
defs: {
|
|
46
|
+
main: {
|
|
47
|
+
type: 'record',
|
|
48
|
+
description: 'Records a badge award to a user, project, or activity claim.',
|
|
49
|
+
key: 'tid',
|
|
50
|
+
record: {
|
|
51
|
+
type: 'object',
|
|
52
|
+
required: ['badge', 'subject', 'createdAt'],
|
|
53
|
+
properties: {
|
|
54
|
+
badge: {
|
|
55
|
+
type: 'ref',
|
|
56
|
+
ref: 'lex:app.certified.badge.definition',
|
|
57
|
+
description: 'Reference to the badge definition for this award.',
|
|
58
|
+
},
|
|
59
|
+
subject: {
|
|
60
|
+
type: 'union',
|
|
61
|
+
description: 'Entity the badge award is for (either an account DID or any specific AT Protocol record), e.g. a user, a project, or a specific activity claim.',
|
|
62
|
+
refs: [
|
|
63
|
+
'lex:app.certified.defs#did',
|
|
64
|
+
'lex:com.atproto.repo.strongRef',
|
|
65
|
+
],
|
|
66
|
+
},
|
|
67
|
+
note: {
|
|
68
|
+
type: 'string',
|
|
69
|
+
description: 'Optional statement explaining the reason for this badge award.',
|
|
70
|
+
},
|
|
71
|
+
createdAt: {
|
|
72
|
+
type: 'string',
|
|
73
|
+
format: 'datetime',
|
|
74
|
+
description: 'Client-declared timestamp when this record was originally created',
|
|
75
|
+
},
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
},
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
AppCertifiedBadgeDefinition: {
|
|
82
|
+
lexicon: 1,
|
|
83
|
+
id: 'app.certified.badge.definition',
|
|
84
|
+
defs: {
|
|
85
|
+
main: {
|
|
86
|
+
type: 'record',
|
|
87
|
+
description: 'Defines a badge that can be awarded via badge award records to users, projects, or activity claims.',
|
|
88
|
+
key: 'tid',
|
|
89
|
+
record: {
|
|
90
|
+
type: 'object',
|
|
91
|
+
required: ['title', 'badgeType', 'icon', 'createdAt'],
|
|
92
|
+
properties: {
|
|
93
|
+
badgeType: {
|
|
94
|
+
type: 'string',
|
|
95
|
+
description: 'Category of the badge (e.g. endorsement, participation, affiliation).',
|
|
96
|
+
},
|
|
97
|
+
title: {
|
|
98
|
+
type: 'string',
|
|
99
|
+
description: 'Human-readable title of the badge.',
|
|
100
|
+
},
|
|
101
|
+
icon: {
|
|
102
|
+
type: 'blob',
|
|
103
|
+
description: 'Icon representing the badge, stored as a blob for compact visual display.',
|
|
104
|
+
accept: [
|
|
105
|
+
'image/png',
|
|
106
|
+
'image/jpeg',
|
|
107
|
+
'image/webp',
|
|
108
|
+
'image/svg+xml',
|
|
109
|
+
],
|
|
110
|
+
maxSize: 1048576,
|
|
111
|
+
},
|
|
112
|
+
description: {
|
|
113
|
+
type: 'string',
|
|
114
|
+
description: 'Optional short statement describing what the badge represents.',
|
|
115
|
+
},
|
|
116
|
+
allowedIssuers: {
|
|
117
|
+
type: 'array',
|
|
118
|
+
description: 'Optional allowlist of DIDs allowed to issue this badge. If omitted, anyone may issue it.',
|
|
119
|
+
items: {
|
|
120
|
+
type: 'ref',
|
|
121
|
+
ref: 'lex:app.certified.defs#did',
|
|
122
|
+
},
|
|
123
|
+
},
|
|
124
|
+
createdAt: {
|
|
125
|
+
type: 'string',
|
|
126
|
+
format: 'datetime',
|
|
127
|
+
description: 'Client-declared timestamp when this record was originally created',
|
|
128
|
+
},
|
|
129
|
+
},
|
|
130
|
+
},
|
|
131
|
+
},
|
|
132
|
+
},
|
|
133
|
+
},
|
|
134
|
+
AppCertifiedBadgeResponse: {
|
|
135
|
+
lexicon: 1,
|
|
136
|
+
id: 'app.certified.badge.response',
|
|
137
|
+
defs: {
|
|
138
|
+
main: {
|
|
139
|
+
type: 'record',
|
|
140
|
+
description: 'Recipient response to a badge award.',
|
|
141
|
+
key: 'tid',
|
|
142
|
+
record: {
|
|
143
|
+
type: 'object',
|
|
144
|
+
required: ['badgeAward', 'response', 'createdAt'],
|
|
145
|
+
properties: {
|
|
146
|
+
badgeAward: {
|
|
147
|
+
type: 'ref',
|
|
148
|
+
ref: 'lex:app.certified.badge.award',
|
|
149
|
+
description: 'Reference to the badge award.',
|
|
150
|
+
},
|
|
151
|
+
response: {
|
|
152
|
+
type: 'string',
|
|
153
|
+
enum: ['accepted', 'rejected'],
|
|
154
|
+
description: 'The recipient’s response for the badge (accepted or rejected).',
|
|
155
|
+
},
|
|
156
|
+
weight: {
|
|
157
|
+
type: 'string',
|
|
158
|
+
description: 'Optional relative weight for accepted badges, assigned by the recipient.',
|
|
159
|
+
},
|
|
160
|
+
createdAt: {
|
|
161
|
+
type: 'string',
|
|
162
|
+
format: 'datetime',
|
|
163
|
+
description: 'Client-declared timestamp when this record was originally created',
|
|
164
|
+
},
|
|
165
|
+
},
|
|
166
|
+
},
|
|
167
|
+
},
|
|
168
|
+
},
|
|
169
|
+
},
|
|
170
|
+
AppCertifiedDefs: {
|
|
171
|
+
lexicon: 1,
|
|
172
|
+
id: 'app.certified.defs',
|
|
173
|
+
description: 'Common type definitions used across certified protocols.',
|
|
174
|
+
defs: {
|
|
175
|
+
did: {
|
|
176
|
+
type: 'string',
|
|
177
|
+
format: 'did',
|
|
178
|
+
description: 'A Decentralized Identifier (DID) string.',
|
|
179
|
+
},
|
|
180
|
+
},
|
|
181
|
+
},
|
|
182
|
+
AppCertifiedLocation: {
|
|
183
|
+
lexicon: 1,
|
|
184
|
+
id: 'app.certified.location',
|
|
185
|
+
defs: {
|
|
186
|
+
main: {
|
|
187
|
+
type: 'record',
|
|
188
|
+
description: 'A location reference',
|
|
189
|
+
key: 'tid',
|
|
190
|
+
record: {
|
|
191
|
+
type: 'object',
|
|
192
|
+
required: [
|
|
193
|
+
'lpVersion',
|
|
194
|
+
'srs',
|
|
195
|
+
'locationType',
|
|
196
|
+
'location',
|
|
197
|
+
'createdAt',
|
|
198
|
+
],
|
|
199
|
+
properties: {
|
|
200
|
+
lpVersion: {
|
|
201
|
+
type: 'string',
|
|
202
|
+
description: 'The version of the Location Protocol',
|
|
203
|
+
maxLength: 10,
|
|
204
|
+
},
|
|
205
|
+
srs: {
|
|
206
|
+
type: 'string',
|
|
207
|
+
format: 'uri',
|
|
208
|
+
description: 'The Spatial Reference System URI (e.g., http://www.opengis.net/def/crs/OGC/1.3/CRS84) that defines the coordinate system.',
|
|
209
|
+
maxLength: 100,
|
|
210
|
+
},
|
|
211
|
+
locationType: {
|
|
212
|
+
type: 'string',
|
|
213
|
+
description: 'An identifier for the format of the location data (e.g., coordinate-decimal, geojson-point)',
|
|
214
|
+
knownValues: ['coordinate-decimal', 'geojson-point'],
|
|
215
|
+
maxLength: 20,
|
|
216
|
+
},
|
|
217
|
+
location: {
|
|
218
|
+
type: 'union',
|
|
219
|
+
refs: [
|
|
220
|
+
'lex:org.hypercerts.defs#uri',
|
|
221
|
+
'lex:org.hypercerts.defs#smallBlob',
|
|
222
|
+
],
|
|
223
|
+
description: 'The location of where the work was performed as a URI or blob.',
|
|
224
|
+
},
|
|
225
|
+
name: {
|
|
226
|
+
type: 'string',
|
|
227
|
+
description: 'Optional name for this location',
|
|
228
|
+
maxLength: 1000,
|
|
229
|
+
maxGraphemes: 100,
|
|
230
|
+
},
|
|
231
|
+
description: {
|
|
232
|
+
type: 'string',
|
|
233
|
+
description: 'Optional description for this location',
|
|
234
|
+
maxLength: 2000,
|
|
235
|
+
maxGraphemes: 500,
|
|
236
|
+
},
|
|
237
|
+
createdAt: {
|
|
238
|
+
type: 'string',
|
|
239
|
+
format: 'datetime',
|
|
240
|
+
description: 'Client-declared timestamp when this record was originally created',
|
|
241
|
+
},
|
|
242
|
+
},
|
|
243
|
+
},
|
|
244
|
+
},
|
|
245
|
+
},
|
|
246
|
+
},
|
|
247
|
+
ComAtprotoRepoStrongRef: {
|
|
248
|
+
lexicon: 1,
|
|
249
|
+
id: 'com.atproto.repo.strongRef',
|
|
250
|
+
description: 'A URI with a content-hash fingerprint.',
|
|
251
|
+
defs: {
|
|
252
|
+
main: {
|
|
253
|
+
type: 'object',
|
|
254
|
+
required: ['uri', 'cid'],
|
|
255
|
+
properties: {
|
|
256
|
+
uri: {
|
|
257
|
+
type: 'string',
|
|
258
|
+
format: 'at-uri',
|
|
259
|
+
},
|
|
260
|
+
cid: {
|
|
261
|
+
type: 'string',
|
|
262
|
+
format: 'cid',
|
|
263
|
+
},
|
|
264
|
+
},
|
|
265
|
+
},
|
|
266
|
+
},
|
|
267
|
+
},
|
|
268
|
+
OrgHypercertsClaimActivity: {
|
|
269
|
+
lexicon: 1,
|
|
270
|
+
id: 'org.hypercerts.claim.activity',
|
|
271
|
+
defs: {
|
|
272
|
+
main: {
|
|
273
|
+
type: 'record',
|
|
274
|
+
description: 'A hypercert record tracking impact work.',
|
|
275
|
+
key: 'any',
|
|
276
|
+
record: {
|
|
277
|
+
type: 'object',
|
|
278
|
+
required: [
|
|
279
|
+
'title',
|
|
280
|
+
'shortDescription',
|
|
281
|
+
'createdAt',
|
|
282
|
+
'startDate',
|
|
283
|
+
'endDate',
|
|
284
|
+
],
|
|
285
|
+
properties: {
|
|
286
|
+
title: {
|
|
287
|
+
type: 'string',
|
|
288
|
+
description: 'Title of the hypercert.',
|
|
289
|
+
maxLength: 256,
|
|
290
|
+
},
|
|
291
|
+
shortDescription: {
|
|
292
|
+
type: 'string',
|
|
293
|
+
description: 'Short blurb of the impact work done.',
|
|
294
|
+
maxLength: 3000,
|
|
295
|
+
maxGraphemes: 300,
|
|
296
|
+
},
|
|
297
|
+
description: {
|
|
298
|
+
type: 'string',
|
|
299
|
+
description: 'Optional longer description of the impact work done.',
|
|
300
|
+
maxLength: 30000,
|
|
301
|
+
maxGraphemes: 3000,
|
|
302
|
+
},
|
|
303
|
+
image: {
|
|
304
|
+
type: 'union',
|
|
305
|
+
refs: [
|
|
306
|
+
'lex:org.hypercerts.defs#uri',
|
|
307
|
+
'lex:org.hypercerts.defs#smallImage',
|
|
308
|
+
],
|
|
309
|
+
description: 'The hypercert visual representation as a URI or image blob.',
|
|
310
|
+
},
|
|
311
|
+
workScope: {
|
|
312
|
+
type: 'ref',
|
|
313
|
+
ref: 'lex:org.hypercerts.claim.activity#workScope',
|
|
314
|
+
},
|
|
315
|
+
startDate: {
|
|
316
|
+
type: 'string',
|
|
317
|
+
format: 'datetime',
|
|
318
|
+
description: 'When the work began',
|
|
319
|
+
},
|
|
320
|
+
endDate: {
|
|
321
|
+
type: 'string',
|
|
322
|
+
format: 'datetime',
|
|
323
|
+
description: 'When the work ended',
|
|
324
|
+
},
|
|
325
|
+
contributions: {
|
|
326
|
+
type: 'array',
|
|
327
|
+
description: 'A strong reference to the contributions done to create the impact in the hypercerts. The record referenced must conform with the lexicon org.hypercerts.claim.contribution.',
|
|
328
|
+
items: {
|
|
329
|
+
type: 'ref',
|
|
330
|
+
ref: 'lex:com.atproto.repo.strongRef',
|
|
331
|
+
},
|
|
332
|
+
},
|
|
333
|
+
rights: {
|
|
334
|
+
type: 'ref',
|
|
335
|
+
ref: 'lex:com.atproto.repo.strongRef',
|
|
336
|
+
description: 'A strong reference to the rights that this hypercert has. The record referenced must conform with the lexicon org.hypercerts.claim.rights.',
|
|
337
|
+
},
|
|
338
|
+
location: {
|
|
339
|
+
type: 'ref',
|
|
340
|
+
ref: 'lex:com.atproto.repo.strongRef',
|
|
341
|
+
description: 'A strong reference to the location where the activity was performed. The record referenced must conform with the lexicon app.certified.location.',
|
|
342
|
+
},
|
|
343
|
+
project: {
|
|
344
|
+
type: 'string',
|
|
345
|
+
format: 'at-uri',
|
|
346
|
+
description: 'A reference (AT-URI) to the project record that this activity is part of. The record referenced must conform with the lexicon org.hypercerts.claim.project. This activity must also be referenced by the project, establishing a bidirectional link.',
|
|
347
|
+
},
|
|
348
|
+
createdAt: {
|
|
349
|
+
type: 'string',
|
|
350
|
+
format: 'datetime',
|
|
351
|
+
description: 'Client-declared timestamp when this record was originally created',
|
|
352
|
+
},
|
|
353
|
+
},
|
|
354
|
+
},
|
|
355
|
+
},
|
|
356
|
+
workScope: {
|
|
357
|
+
type: 'object',
|
|
358
|
+
description: 'Logical scope of the work using label-based conditions. All labels in `withinAllOf` must apply; at least one label in `withinAnyOf` must apply if provided; no label in `withinNoneOf` may apply.',
|
|
359
|
+
properties: {
|
|
360
|
+
withinAllOf: {
|
|
361
|
+
type: 'array',
|
|
362
|
+
description: 'Labels that MUST all hold for the scope to apply.',
|
|
363
|
+
items: {
|
|
364
|
+
type: 'string',
|
|
365
|
+
},
|
|
366
|
+
maxLength: 100,
|
|
367
|
+
},
|
|
368
|
+
withinAnyOf: {
|
|
369
|
+
type: 'array',
|
|
370
|
+
description: 'Labels of which AT LEAST ONE must hold (optional). If omitted or empty, imposes no additional condition.',
|
|
371
|
+
items: {
|
|
372
|
+
type: 'string',
|
|
373
|
+
},
|
|
374
|
+
maxLength: 100,
|
|
375
|
+
},
|
|
376
|
+
withinNoneOf: {
|
|
377
|
+
type: 'array',
|
|
378
|
+
description: 'Labels that MUST NOT hold for the scope to apply.',
|
|
379
|
+
items: {
|
|
380
|
+
type: 'string',
|
|
381
|
+
},
|
|
382
|
+
maxLength: 100,
|
|
383
|
+
},
|
|
384
|
+
},
|
|
385
|
+
},
|
|
386
|
+
activityWeight: {
|
|
387
|
+
type: 'object',
|
|
388
|
+
required: ['activity', 'weight'],
|
|
389
|
+
properties: {
|
|
390
|
+
activity: {
|
|
391
|
+
type: 'ref',
|
|
392
|
+
ref: 'lex:com.atproto.repo.strongRef',
|
|
393
|
+
description: 'A strong reference to a hypercert activity record. This activity must conform to the lexicon org.hypercerts.claim.activity',
|
|
394
|
+
},
|
|
395
|
+
weight: {
|
|
396
|
+
type: 'string',
|
|
397
|
+
description: 'The relative weight/importance of this hypercert activity (stored as a string to avoid float precision issues). Weights can be any positive numeric values and do not need to sum to a specific total; normalization can be performed by the consuming application as needed.',
|
|
398
|
+
},
|
|
399
|
+
},
|
|
400
|
+
},
|
|
401
|
+
},
|
|
402
|
+
},
|
|
403
|
+
OrgHypercertsClaimCollection: {
|
|
404
|
+
lexicon: 1,
|
|
405
|
+
id: 'org.hypercerts.claim.collection',
|
|
406
|
+
defs: {
|
|
407
|
+
main: {
|
|
408
|
+
type: 'record',
|
|
409
|
+
description: 'A collection/group of hypercerts that have a specific property.',
|
|
410
|
+
key: 'tid',
|
|
411
|
+
record: {
|
|
412
|
+
type: 'object',
|
|
413
|
+
required: ['title', 'activities', 'createdAt'],
|
|
414
|
+
properties: {
|
|
415
|
+
title: {
|
|
416
|
+
type: 'string',
|
|
417
|
+
description: 'The title of this collection',
|
|
418
|
+
maxLength: 800,
|
|
419
|
+
maxGraphemes: 80,
|
|
420
|
+
},
|
|
421
|
+
shortDescription: {
|
|
422
|
+
type: 'string',
|
|
423
|
+
maxLength: 3000,
|
|
424
|
+
maxGraphemes: 300,
|
|
425
|
+
description: 'A short description of this collection',
|
|
426
|
+
},
|
|
427
|
+
avatar: {
|
|
428
|
+
type: 'blob',
|
|
429
|
+
description: 'Primary avatar image representing this collection across apps and views; typically a square image.',
|
|
430
|
+
accept: ['image/png', 'image/jpeg'],
|
|
431
|
+
maxSize: 1000000,
|
|
432
|
+
},
|
|
433
|
+
coverPhoto: {
|
|
434
|
+
type: 'blob',
|
|
435
|
+
description: 'The cover photo of this collection.',
|
|
436
|
+
accept: ['image/png', 'image/jpeg'],
|
|
437
|
+
maxSize: 1000000,
|
|
438
|
+
},
|
|
439
|
+
activities: {
|
|
440
|
+
type: 'array',
|
|
441
|
+
description: 'Array of activities with their associated weights in this collection',
|
|
442
|
+
items: {
|
|
443
|
+
type: 'ref',
|
|
444
|
+
ref: 'lex:org.hypercerts.claim.activity#activityWeight',
|
|
445
|
+
},
|
|
446
|
+
},
|
|
447
|
+
createdAt: {
|
|
448
|
+
type: 'string',
|
|
449
|
+
format: 'datetime',
|
|
450
|
+
description: 'Client-declared timestamp when this record was originally created',
|
|
451
|
+
},
|
|
452
|
+
},
|
|
453
|
+
},
|
|
454
|
+
},
|
|
455
|
+
},
|
|
456
|
+
},
|
|
457
|
+
OrgHypercertsClaimContribution: {
|
|
458
|
+
lexicon: 1,
|
|
459
|
+
id: 'org.hypercerts.claim.contribution',
|
|
460
|
+
defs: {
|
|
461
|
+
main: {
|
|
462
|
+
type: 'record',
|
|
463
|
+
description: "A contribution made toward a hypercert's impact.",
|
|
464
|
+
key: 'tid',
|
|
465
|
+
record: {
|
|
466
|
+
type: 'object',
|
|
467
|
+
required: ['contributors', 'createdAt'],
|
|
468
|
+
properties: {
|
|
469
|
+
role: {
|
|
470
|
+
type: 'string',
|
|
471
|
+
description: 'Role or title of the contributor(s).',
|
|
472
|
+
maxLength: 100,
|
|
473
|
+
},
|
|
474
|
+
contributors: {
|
|
475
|
+
type: 'array',
|
|
476
|
+
description: 'List of the contributors (names, pseudonyms, or DIDs). If multiple contributors are stored in the same hypercertContribution, then they would have the exact same role.',
|
|
477
|
+
items: {
|
|
478
|
+
type: 'string',
|
|
479
|
+
},
|
|
480
|
+
},
|
|
481
|
+
description: {
|
|
482
|
+
type: 'string',
|
|
483
|
+
description: 'What the contribution concretely achieved',
|
|
484
|
+
maxLength: 2000,
|
|
485
|
+
maxGraphemes: 500,
|
|
486
|
+
},
|
|
487
|
+
startDate: {
|
|
488
|
+
type: 'string',
|
|
489
|
+
format: 'datetime',
|
|
490
|
+
description: 'When this contribution started. This should be a subset of the hypercert timeframe.',
|
|
491
|
+
},
|
|
492
|
+
endDate: {
|
|
493
|
+
type: 'string',
|
|
494
|
+
format: 'datetime',
|
|
495
|
+
description: 'When this contribution finished. This should be a subset of the hypercert timeframe.',
|
|
496
|
+
},
|
|
497
|
+
createdAt: {
|
|
498
|
+
type: 'string',
|
|
499
|
+
format: 'datetime',
|
|
500
|
+
description: 'Client-declared timestamp when this record was originally created',
|
|
501
|
+
},
|
|
502
|
+
},
|
|
503
|
+
},
|
|
504
|
+
},
|
|
505
|
+
},
|
|
506
|
+
},
|
|
507
|
+
OrgHypercertsClaimEvaluation: {
|
|
508
|
+
lexicon: 1,
|
|
509
|
+
id: 'org.hypercerts.claim.evaluation',
|
|
510
|
+
defs: {
|
|
511
|
+
score: {
|
|
512
|
+
type: 'object',
|
|
513
|
+
description: 'Overall score for an evaluation on a numeric scale.',
|
|
514
|
+
required: ['min', 'max', 'value'],
|
|
515
|
+
properties: {
|
|
516
|
+
min: {
|
|
517
|
+
type: 'integer',
|
|
518
|
+
description: 'Minimum value of the scale, e.g. 0 or 1.',
|
|
519
|
+
},
|
|
520
|
+
max: {
|
|
521
|
+
type: 'integer',
|
|
522
|
+
description: 'Maximum value of the scale, e.g. 5 or 10.',
|
|
523
|
+
},
|
|
524
|
+
value: {
|
|
525
|
+
type: 'integer',
|
|
526
|
+
description: 'Score within the inclusive range [min, max].',
|
|
527
|
+
},
|
|
528
|
+
},
|
|
529
|
+
},
|
|
530
|
+
main: {
|
|
531
|
+
type: 'record',
|
|
532
|
+
description: 'An evaluation of a hypercert record (e.g. an activity and its impact).',
|
|
533
|
+
key: 'tid',
|
|
534
|
+
record: {
|
|
535
|
+
type: 'object',
|
|
536
|
+
required: ['evaluators', 'summary', 'createdAt'],
|
|
537
|
+
properties: {
|
|
538
|
+
subject: {
|
|
539
|
+
type: 'ref',
|
|
540
|
+
ref: 'lex:com.atproto.repo.strongRef',
|
|
541
|
+
description: 'A strong reference to what is being evaluated. (e.g activity, measurement, contribution, etc.)',
|
|
542
|
+
},
|
|
543
|
+
evaluators: {
|
|
544
|
+
type: 'array',
|
|
545
|
+
description: 'DIDs of the evaluators',
|
|
546
|
+
items: {
|
|
547
|
+
type: 'ref',
|
|
548
|
+
ref: 'lex:app.certified.defs#did',
|
|
549
|
+
},
|
|
550
|
+
maxLength: 1000,
|
|
551
|
+
},
|
|
552
|
+
content: {
|
|
553
|
+
type: 'array',
|
|
554
|
+
description: 'Evaluation data (URIs or blobs) containing detailed reports or methodology',
|
|
555
|
+
items: {
|
|
556
|
+
type: 'union',
|
|
557
|
+
refs: [
|
|
558
|
+
'lex:org.hypercerts.defs#uri',
|
|
559
|
+
'lex:org.hypercerts.defs#smallBlob',
|
|
560
|
+
],
|
|
561
|
+
},
|
|
562
|
+
maxLength: 100,
|
|
563
|
+
},
|
|
564
|
+
measurements: {
|
|
565
|
+
type: 'array',
|
|
566
|
+
description: 'Optional references to the measurements that contributed to this evaluation. The record(s) referenced must conform with the lexicon org.hypercerts.claim.measurement ',
|
|
567
|
+
items: {
|
|
568
|
+
type: 'ref',
|
|
569
|
+
ref: 'lex:com.atproto.repo.strongRef',
|
|
570
|
+
},
|
|
571
|
+
maxLength: 100,
|
|
572
|
+
},
|
|
573
|
+
summary: {
|
|
574
|
+
type: 'string',
|
|
575
|
+
description: 'Brief evaluation summary',
|
|
576
|
+
maxLength: 5000,
|
|
577
|
+
maxGraphemes: 1000,
|
|
578
|
+
},
|
|
579
|
+
score: {
|
|
580
|
+
type: 'ref',
|
|
581
|
+
ref: 'lex:org.hypercerts.claim.evaluation#score',
|
|
582
|
+
description: 'Optional overall score for this evaluation on a numeric scale.',
|
|
583
|
+
},
|
|
584
|
+
location: {
|
|
585
|
+
type: 'ref',
|
|
586
|
+
ref: 'lex:com.atproto.repo.strongRef',
|
|
587
|
+
description: 'An optional reference for georeferenced evaluations. The record referenced must conform with the lexicon app.certified.location.',
|
|
588
|
+
},
|
|
589
|
+
createdAt: {
|
|
590
|
+
type: 'string',
|
|
591
|
+
format: 'datetime',
|
|
592
|
+
description: 'Client-declared timestamp when this record was originally created',
|
|
593
|
+
},
|
|
594
|
+
},
|
|
595
|
+
},
|
|
596
|
+
},
|
|
597
|
+
},
|
|
598
|
+
},
|
|
599
|
+
OrgHypercertsClaimEvidence: {
|
|
600
|
+
lexicon: 1,
|
|
601
|
+
id: 'org.hypercerts.claim.evidence',
|
|
602
|
+
defs: {
|
|
603
|
+
main: {
|
|
604
|
+
type: 'record',
|
|
605
|
+
description: 'A piece of evidence related to a hypercert record (e.g. an activity, project, claim, or evaluation). Evidence may support, clarify, or challenge the referenced subject.',
|
|
606
|
+
key: 'tid',
|
|
607
|
+
record: {
|
|
608
|
+
type: 'object',
|
|
609
|
+
required: ['content', 'title', 'createdAt'],
|
|
610
|
+
properties: {
|
|
611
|
+
subject: {
|
|
612
|
+
type: 'ref',
|
|
613
|
+
ref: 'lex:com.atproto.repo.strongRef',
|
|
614
|
+
description: 'A strong reference to the record this evidence relates to (e.g. an activity, project, claim, or evaluation).',
|
|
615
|
+
},
|
|
616
|
+
content: {
|
|
617
|
+
type: 'union',
|
|
618
|
+
refs: [
|
|
619
|
+
'lex:org.hypercerts.defs#uri',
|
|
620
|
+
'lex:org.hypercerts.defs#smallBlob',
|
|
621
|
+
],
|
|
622
|
+
description: 'A piece of evidence (URI or blob) related to the subject record; it may support, clarify, or challenge a hypercert claim.',
|
|
623
|
+
},
|
|
624
|
+
title: {
|
|
625
|
+
type: 'string',
|
|
626
|
+
maxLength: 256,
|
|
627
|
+
description: 'Title to describe the nature of the evidence.',
|
|
628
|
+
},
|
|
629
|
+
shortDescription: {
|
|
630
|
+
type: 'string',
|
|
631
|
+
maxLength: 3000,
|
|
632
|
+
maxGraphemes: 300,
|
|
633
|
+
description: 'Short description explaining what this evidence shows.',
|
|
634
|
+
},
|
|
635
|
+
description: {
|
|
636
|
+
type: 'string',
|
|
637
|
+
description: 'Longer description describing the evidence in more detail.',
|
|
638
|
+
maxLength: 30000,
|
|
639
|
+
maxGraphemes: 3000,
|
|
640
|
+
},
|
|
641
|
+
relationType: {
|
|
642
|
+
type: 'string',
|
|
643
|
+
description: 'How this evidence relates to the subject.',
|
|
644
|
+
knownValues: ['supports', 'challenges', 'clarifies'],
|
|
645
|
+
},
|
|
646
|
+
createdAt: {
|
|
647
|
+
type: 'string',
|
|
648
|
+
format: 'datetime',
|
|
649
|
+
description: 'Client-declared timestamp when this record was originally created',
|
|
650
|
+
},
|
|
651
|
+
},
|
|
652
|
+
},
|
|
653
|
+
},
|
|
654
|
+
},
|
|
655
|
+
},
|
|
656
|
+
OrgHypercertsClaimMeasurement: {
|
|
657
|
+
lexicon: 1,
|
|
658
|
+
id: 'org.hypercerts.claim.measurement',
|
|
659
|
+
defs: {
|
|
660
|
+
main: {
|
|
661
|
+
type: 'record',
|
|
662
|
+
description: 'Measurement data related to a hypercert record (e.g. an activity and its impact).',
|
|
663
|
+
key: 'tid',
|
|
664
|
+
record: {
|
|
665
|
+
type: 'object',
|
|
666
|
+
required: ['measurers', 'metric', 'value', 'createdAt'],
|
|
667
|
+
properties: {
|
|
668
|
+
subject: {
|
|
669
|
+
type: 'ref',
|
|
670
|
+
ref: 'lex:com.atproto.repo.strongRef',
|
|
671
|
+
description: 'A strong reference to the record this measurement refers to (e.g. an activity, project, or claim).',
|
|
672
|
+
},
|
|
673
|
+
measurers: {
|
|
674
|
+
type: 'array',
|
|
675
|
+
description: 'DIDs of the entity (or entities) that measured this data',
|
|
676
|
+
items: {
|
|
677
|
+
type: 'ref',
|
|
678
|
+
ref: 'lex:app.certified.defs#did',
|
|
679
|
+
},
|
|
680
|
+
maxLength: 100,
|
|
681
|
+
},
|
|
682
|
+
metric: {
|
|
683
|
+
type: 'string',
|
|
684
|
+
description: 'The metric being measured',
|
|
685
|
+
maxLength: 500,
|
|
686
|
+
},
|
|
687
|
+
value: {
|
|
688
|
+
type: 'string',
|
|
689
|
+
description: 'The measured value',
|
|
690
|
+
maxLength: 500,
|
|
691
|
+
},
|
|
692
|
+
methodType: {
|
|
693
|
+
type: 'string',
|
|
694
|
+
description: 'Short identifier for the measurement methodology',
|
|
695
|
+
maxLength: 30,
|
|
696
|
+
},
|
|
697
|
+
methodURI: {
|
|
698
|
+
type: 'string',
|
|
699
|
+
format: 'uri',
|
|
700
|
+
description: 'URI to methodology documentation, standard protocol, or measurement procedure',
|
|
701
|
+
},
|
|
702
|
+
evidenceURI: {
|
|
703
|
+
type: 'array',
|
|
704
|
+
description: 'URIs to related evidence or underlying data (e.g. org.hypercerts.claim.evidence records or raw datasets)',
|
|
705
|
+
items: {
|
|
706
|
+
type: 'string',
|
|
707
|
+
format: 'uri',
|
|
708
|
+
},
|
|
709
|
+
maxLength: 50,
|
|
710
|
+
},
|
|
711
|
+
location: {
|
|
712
|
+
type: 'ref',
|
|
713
|
+
ref: 'lex:com.atproto.repo.strongRef',
|
|
714
|
+
description: 'A strong reference to the location where the measurement was taken. The record referenced must conform with the lexicon app.certified.location',
|
|
715
|
+
},
|
|
716
|
+
createdAt: {
|
|
717
|
+
type: 'string',
|
|
718
|
+
format: 'datetime',
|
|
719
|
+
description: 'Client-declared timestamp when this record was originally created',
|
|
720
|
+
},
|
|
721
|
+
},
|
|
722
|
+
},
|
|
723
|
+
},
|
|
724
|
+
},
|
|
725
|
+
},
|
|
726
|
+
OrgHypercertsClaimProject: {
|
|
727
|
+
lexicon: 1,
|
|
728
|
+
id: 'org.hypercerts.claim.project',
|
|
729
|
+
defs: {
|
|
730
|
+
main: {
|
|
731
|
+
type: 'record',
|
|
732
|
+
description: 'A project that can include multiple activities, each of which may be linked to at most one project.',
|
|
733
|
+
key: 'tid',
|
|
734
|
+
record: {
|
|
735
|
+
type: 'object',
|
|
736
|
+
required: ['title', 'shortDescription', 'createdAt'],
|
|
737
|
+
properties: {
|
|
738
|
+
title: {
|
|
739
|
+
type: 'string',
|
|
740
|
+
description: 'Title of this project',
|
|
741
|
+
maxLength: 800,
|
|
742
|
+
maxGraphemes: 80,
|
|
743
|
+
},
|
|
744
|
+
shortDescription: {
|
|
745
|
+
type: 'string',
|
|
746
|
+
maxLength: 3000,
|
|
747
|
+
maxGraphemes: 300,
|
|
748
|
+
description: 'Short summary of this project, suitable for previews and list views.',
|
|
749
|
+
},
|
|
750
|
+
description: {
|
|
751
|
+
type: 'ref',
|
|
752
|
+
ref: 'lex:pub.leaflet.pages.linearDocument#main',
|
|
753
|
+
description: 'Rich-text description of this project, represented as a Leaflet linear document.',
|
|
754
|
+
},
|
|
755
|
+
avatar: {
|
|
756
|
+
type: 'blob',
|
|
757
|
+
description: 'Primary avatar image representing this project across apps and views; typically a square logo or project identity image.',
|
|
758
|
+
accept: ['image/png', 'image/jpeg'],
|
|
759
|
+
maxSize: 1000000,
|
|
760
|
+
},
|
|
761
|
+
coverPhoto: {
|
|
762
|
+
type: 'blob',
|
|
763
|
+
description: 'The cover photo of this project.',
|
|
764
|
+
accept: ['image/png', 'image/jpeg'],
|
|
765
|
+
maxSize: 1000000,
|
|
766
|
+
},
|
|
767
|
+
activities: {
|
|
768
|
+
type: 'array',
|
|
769
|
+
description: 'Array of activities with their associated weights in this project',
|
|
770
|
+
items: {
|
|
771
|
+
type: 'ref',
|
|
772
|
+
ref: 'lex:org.hypercerts.claim.activity#activityWeight',
|
|
773
|
+
},
|
|
774
|
+
},
|
|
775
|
+
location: {
|
|
776
|
+
type: 'ref',
|
|
777
|
+
ref: 'lex:com.atproto.repo.strongRef',
|
|
778
|
+
description: 'A strong reference to a location record describing where the work for this project took place. The referenced record must conform to the app.certified.location lexicon.',
|
|
779
|
+
},
|
|
780
|
+
createdAt: {
|
|
781
|
+
type: 'string',
|
|
782
|
+
format: 'datetime',
|
|
783
|
+
description: 'Client-declared timestamp when this record was originally created',
|
|
784
|
+
},
|
|
785
|
+
},
|
|
786
|
+
},
|
|
787
|
+
},
|
|
788
|
+
},
|
|
789
|
+
},
|
|
790
|
+
OrgHypercertsClaimRights: {
|
|
791
|
+
lexicon: 1,
|
|
792
|
+
id: 'org.hypercerts.claim.rights',
|
|
793
|
+
defs: {
|
|
794
|
+
main: {
|
|
795
|
+
type: 'record',
|
|
796
|
+
description: 'Describes the rights that a contributor and/or an owner has, such as whether the hypercert can be sold, transferred, and under what conditions.',
|
|
797
|
+
key: 'tid',
|
|
798
|
+
record: {
|
|
799
|
+
type: 'object',
|
|
800
|
+
required: [
|
|
801
|
+
'rightsName',
|
|
802
|
+
'rightsType',
|
|
803
|
+
'rightsDescription',
|
|
804
|
+
'createdAt',
|
|
805
|
+
],
|
|
806
|
+
properties: {
|
|
807
|
+
rightsName: {
|
|
808
|
+
type: 'string',
|
|
809
|
+
description: 'Full name of the rights',
|
|
810
|
+
maxLength: 100,
|
|
811
|
+
},
|
|
812
|
+
rightsType: {
|
|
813
|
+
type: 'string',
|
|
814
|
+
description: 'Short rights identifier for easier search',
|
|
815
|
+
maxLength: 10,
|
|
816
|
+
},
|
|
817
|
+
rightsDescription: {
|
|
818
|
+
type: 'string',
|
|
819
|
+
description: 'Description of the rights of this hypercert',
|
|
820
|
+
},
|
|
821
|
+
attachment: {
|
|
822
|
+
type: 'union',
|
|
823
|
+
refs: [
|
|
824
|
+
'lex:org.hypercerts.defs#uri',
|
|
825
|
+
'lex:org.hypercerts.defs#smallBlob',
|
|
826
|
+
],
|
|
827
|
+
description: 'An attachment to define the rights further, e.g. a legal document.',
|
|
828
|
+
},
|
|
829
|
+
createdAt: {
|
|
830
|
+
type: 'string',
|
|
831
|
+
format: 'datetime',
|
|
832
|
+
description: 'Client-declared timestamp when this record was originally created',
|
|
833
|
+
},
|
|
834
|
+
},
|
|
835
|
+
},
|
|
836
|
+
},
|
|
837
|
+
},
|
|
838
|
+
},
|
|
839
|
+
OrgHypercertsDefs: {
|
|
840
|
+
lexicon: 1,
|
|
841
|
+
id: 'org.hypercerts.defs',
|
|
842
|
+
defs: {
|
|
843
|
+
uri: {
|
|
844
|
+
type: 'object',
|
|
845
|
+
required: ['uri'],
|
|
846
|
+
description: 'Object containing a URI to external data',
|
|
847
|
+
properties: {
|
|
848
|
+
uri: {
|
|
849
|
+
type: 'string',
|
|
850
|
+
format: 'uri',
|
|
851
|
+
maxGraphemes: 1024,
|
|
852
|
+
description: 'URI to external data',
|
|
853
|
+
},
|
|
854
|
+
},
|
|
855
|
+
},
|
|
856
|
+
smallBlob: {
|
|
857
|
+
type: 'object',
|
|
858
|
+
required: ['blob'],
|
|
859
|
+
description: 'Object containing a blob to external data',
|
|
860
|
+
properties: {
|
|
861
|
+
blob: {
|
|
862
|
+
type: 'blob',
|
|
863
|
+
accept: ['*/*'],
|
|
864
|
+
maxSize: 10485760,
|
|
865
|
+
description: 'Blob to external data (up to 10MB)',
|
|
866
|
+
},
|
|
867
|
+
},
|
|
868
|
+
},
|
|
869
|
+
largeBlob: {
|
|
870
|
+
type: 'object',
|
|
871
|
+
required: ['blob'],
|
|
872
|
+
description: 'Object containing a blob to external data',
|
|
873
|
+
properties: {
|
|
874
|
+
blob: {
|
|
875
|
+
type: 'blob',
|
|
876
|
+
accept: ['*/*'],
|
|
877
|
+
maxSize: 104857600,
|
|
878
|
+
description: 'Blob to external data (up to 100MB)',
|
|
879
|
+
},
|
|
880
|
+
},
|
|
881
|
+
},
|
|
882
|
+
smallImage: {
|
|
883
|
+
type: 'object',
|
|
884
|
+
required: ['image'],
|
|
885
|
+
description: 'Object containing a small image',
|
|
886
|
+
properties: {
|
|
887
|
+
image: {
|
|
888
|
+
type: 'blob',
|
|
889
|
+
accept: ['image/jpeg', 'image/jpg', 'image/png', 'image/webp'],
|
|
890
|
+
maxSize: 5242880,
|
|
891
|
+
description: 'Image (up to 5MB)',
|
|
892
|
+
},
|
|
893
|
+
},
|
|
894
|
+
},
|
|
895
|
+
largeImage: {
|
|
896
|
+
type: 'object',
|
|
897
|
+
required: ['image'],
|
|
898
|
+
description: 'Object containing a large image',
|
|
899
|
+
properties: {
|
|
900
|
+
image: {
|
|
901
|
+
type: 'blob',
|
|
902
|
+
accept: ['image/jpeg', 'image/jpg', 'image/png', 'image/webp'],
|
|
903
|
+
maxSize: 10485760,
|
|
904
|
+
description: 'Image (up to 10MB)',
|
|
905
|
+
},
|
|
906
|
+
},
|
|
907
|
+
},
|
|
908
|
+
},
|
|
909
|
+
},
|
|
910
|
+
OrgHypercertsFundingReceipt: {
|
|
911
|
+
lexicon: 1,
|
|
912
|
+
id: 'org.hypercerts.funding.receipt',
|
|
913
|
+
defs: {
|
|
914
|
+
main: {
|
|
915
|
+
type: 'record',
|
|
916
|
+
description: 'Records a funding receipt for a payment from one user to another user. It may be recorded by the recipient, by the sender, or by a third party. The sender may remain anonymous.',
|
|
917
|
+
key: 'tid',
|
|
918
|
+
record: {
|
|
919
|
+
type: 'object',
|
|
920
|
+
required: ['from', 'to', 'amount', 'currency', 'createdAt'],
|
|
921
|
+
properties: {
|
|
922
|
+
from: {
|
|
923
|
+
type: 'ref',
|
|
924
|
+
ref: 'lex:app.certified.defs#did',
|
|
925
|
+
description: 'DID of the sender who transferred the funds. Leave empty if sender wants to stay anonymous.',
|
|
926
|
+
},
|
|
927
|
+
to: {
|
|
928
|
+
type: 'string',
|
|
929
|
+
description: 'The recipient of the funds. Can be identified by DID or a clear-text name.',
|
|
930
|
+
},
|
|
931
|
+
amount: {
|
|
932
|
+
type: 'string',
|
|
933
|
+
description: 'Amount of funding received.',
|
|
934
|
+
},
|
|
935
|
+
currency: {
|
|
936
|
+
type: 'string',
|
|
937
|
+
description: 'Currency of the payment (e.g. EUR, USD, ETH).',
|
|
938
|
+
},
|
|
939
|
+
paymentRail: {
|
|
940
|
+
type: 'string',
|
|
941
|
+
description: 'How the funds were transferred (e.g. bank_transfer, credit_card, onchain, cash, check, payment_processor).',
|
|
942
|
+
},
|
|
943
|
+
paymentNetwork: {
|
|
944
|
+
type: 'string',
|
|
945
|
+
description: 'Optional network within the payment rail (e.g. arbitrum, ethereum, sepa, visa, paypal).',
|
|
946
|
+
},
|
|
947
|
+
transactionId: {
|
|
948
|
+
type: 'string',
|
|
949
|
+
description: 'Identifier of the underlying payment transaction (e.g. bank reference, onchain transaction hash, or processor-specific ID). Use paymentNetwork to specify the network where applicable.',
|
|
950
|
+
},
|
|
951
|
+
for: {
|
|
952
|
+
type: 'string',
|
|
953
|
+
format: 'at-uri',
|
|
954
|
+
description: 'Optional reference to the activity, project, or organization this funding relates to.',
|
|
955
|
+
},
|
|
956
|
+
notes: {
|
|
957
|
+
type: 'string',
|
|
958
|
+
description: 'Optional notes or additional context for this funding receipt.',
|
|
959
|
+
maxLength: 500,
|
|
960
|
+
},
|
|
961
|
+
occurredAt: {
|
|
962
|
+
type: 'string',
|
|
963
|
+
format: 'datetime',
|
|
964
|
+
description: 'Timestamp when the payment occurred.',
|
|
965
|
+
},
|
|
966
|
+
createdAt: {
|
|
967
|
+
type: 'string',
|
|
968
|
+
format: 'datetime',
|
|
969
|
+
description: 'Client-declared timestamp when this receipt record was created.',
|
|
970
|
+
},
|
|
971
|
+
},
|
|
972
|
+
},
|
|
973
|
+
},
|
|
974
|
+
},
|
|
975
|
+
},
|
|
976
|
+
};
|
|
977
|
+
const schemas = Object.values(schemaDict);
|
|
978
|
+
const lexicons = new lexicon$g.Lexicons(schemas);
|
|
979
|
+
function validate$f(v, id, hash, requiredType) {
|
|
980
|
+
return (requiredType ? is$typed$f : maybe$typed)(v, id, hash)
|
|
981
|
+
? lexicons.validate(`${id}#${hash}`, v)
|
|
982
|
+
: {
|
|
983
|
+
success: false,
|
|
984
|
+
error: new lexicon$g.ValidationError(`Must be an object with "${hash === 'main' ? id : `${id}#${hash}`}" $type property`),
|
|
985
|
+
};
|
|
986
|
+
}
|
|
987
|
+
const ids = {
|
|
988
|
+
AppCertifiedBadgeAward: 'app.certified.badge.award',
|
|
989
|
+
AppCertifiedBadgeDefinition: 'app.certified.badge.definition',
|
|
990
|
+
AppCertifiedBadgeResponse: 'app.certified.badge.response',
|
|
991
|
+
AppCertifiedDefs: 'app.certified.defs',
|
|
992
|
+
AppCertifiedLocation: 'app.certified.location',
|
|
993
|
+
ComAtprotoRepoStrongRef: 'com.atproto.repo.strongRef',
|
|
994
|
+
OrgHypercertsClaimActivity: 'org.hypercerts.claim.activity',
|
|
995
|
+
OrgHypercertsClaimCollection: 'org.hypercerts.claim.collection',
|
|
996
|
+
OrgHypercertsClaimContribution: 'org.hypercerts.claim.contribution',
|
|
997
|
+
OrgHypercertsClaimEvaluation: 'org.hypercerts.claim.evaluation',
|
|
998
|
+
OrgHypercertsClaimEvidence: 'org.hypercerts.claim.evidence',
|
|
999
|
+
OrgHypercertsClaimMeasurement: 'org.hypercerts.claim.measurement',
|
|
1000
|
+
OrgHypercertsClaimProject: 'org.hypercerts.claim.project',
|
|
1001
|
+
OrgHypercertsClaimRights: 'org.hypercerts.claim.rights',
|
|
1002
|
+
OrgHypercertsDefs: 'org.hypercerts.defs',
|
|
1003
|
+
OrgHypercertsFundingReceipt: 'org.hypercerts.funding.receipt',
|
|
1004
|
+
};
|
|
1005
|
+
|
|
1006
|
+
var lexicon$f = 1;
|
|
1007
|
+
var id$u = "app.certified.badge.award";
|
|
1008
|
+
var defs$h = {
|
|
1009
|
+
main: {
|
|
1010
|
+
type: "record",
|
|
1011
|
+
description: "Records a badge award to a user, project, or activity claim.",
|
|
1012
|
+
key: "tid",
|
|
1013
|
+
record: {
|
|
1014
|
+
type: "object",
|
|
1015
|
+
required: [
|
|
1016
|
+
"badge",
|
|
1017
|
+
"subject",
|
|
1018
|
+
"createdAt"
|
|
1019
|
+
],
|
|
1020
|
+
properties: {
|
|
1021
|
+
badge: {
|
|
1022
|
+
type: "ref",
|
|
1023
|
+
ref: "app.certified.badge.definition",
|
|
1024
|
+
description: "Reference to the badge definition for this award."
|
|
1025
|
+
},
|
|
1026
|
+
subject: {
|
|
1027
|
+
type: "union",
|
|
1028
|
+
description: "Entity the badge award is for (either an account DID or any specific AT Protocol record), e.g. a user, a project, or a specific activity claim.",
|
|
1029
|
+
refs: [
|
|
1030
|
+
"app.certified.defs#did",
|
|
1031
|
+
"com.atproto.repo.strongRef"
|
|
1032
|
+
]
|
|
1033
|
+
},
|
|
1034
|
+
note: {
|
|
1035
|
+
type: "string",
|
|
1036
|
+
description: "Optional statement explaining the reason for this badge award."
|
|
1037
|
+
},
|
|
1038
|
+
createdAt: {
|
|
1039
|
+
type: "string",
|
|
1040
|
+
format: "datetime",
|
|
1041
|
+
description: "Client-declared timestamp when this record was originally created"
|
|
1042
|
+
}
|
|
1043
|
+
}
|
|
1044
|
+
}
|
|
1045
|
+
}
|
|
1046
|
+
};
|
|
1047
|
+
var BADGE_AWARD_LEXICON_JSON = {
|
|
1048
|
+
lexicon: lexicon$f,
|
|
1049
|
+
id: id$u,
|
|
1050
|
+
defs: defs$h
|
|
1051
|
+
};
|
|
1052
|
+
|
|
1053
|
+
var lexicon$e = 1;
|
|
1054
|
+
var id$t = "app.certified.badge.definition";
|
|
1055
|
+
var defs$g = {
|
|
1056
|
+
main: {
|
|
1057
|
+
type: "record",
|
|
1058
|
+
description: "Defines a badge that can be awarded via badge award records to users, projects, or activity claims.",
|
|
1059
|
+
key: "tid",
|
|
1060
|
+
record: {
|
|
1061
|
+
type: "object",
|
|
1062
|
+
required: [
|
|
1063
|
+
"title",
|
|
1064
|
+
"badgeType",
|
|
1065
|
+
"icon",
|
|
1066
|
+
"createdAt"
|
|
1067
|
+
],
|
|
1068
|
+
properties: {
|
|
1069
|
+
badgeType: {
|
|
1070
|
+
type: "string",
|
|
1071
|
+
description: "Category of the badge (e.g. endorsement, participation, affiliation)."
|
|
1072
|
+
},
|
|
1073
|
+
title: {
|
|
1074
|
+
type: "string",
|
|
1075
|
+
description: "Human-readable title of the badge."
|
|
1076
|
+
},
|
|
1077
|
+
icon: {
|
|
1078
|
+
type: "blob",
|
|
1079
|
+
description: "Icon representing the badge, stored as a blob for compact visual display.",
|
|
1080
|
+
accept: [
|
|
1081
|
+
"image/png",
|
|
1082
|
+
"image/jpeg",
|
|
1083
|
+
"image/webp",
|
|
1084
|
+
"image/svg+xml"
|
|
1085
|
+
],
|
|
1086
|
+
maxSize: 1048576
|
|
1087
|
+
},
|
|
1088
|
+
description: {
|
|
1089
|
+
type: "string",
|
|
1090
|
+
description: "Optional short statement describing what the badge represents."
|
|
1091
|
+
},
|
|
1092
|
+
allowedIssuers: {
|
|
1093
|
+
type: "array",
|
|
1094
|
+
description: "Optional allowlist of DIDs allowed to issue this badge. If omitted, anyone may issue it.",
|
|
1095
|
+
items: {
|
|
1096
|
+
type: "ref",
|
|
1097
|
+
ref: "app.certified.defs#did"
|
|
1098
|
+
}
|
|
1099
|
+
},
|
|
1100
|
+
createdAt: {
|
|
1101
|
+
type: "string",
|
|
1102
|
+
format: "datetime",
|
|
1103
|
+
description: "Client-declared timestamp when this record was originally created"
|
|
1104
|
+
}
|
|
1105
|
+
}
|
|
1106
|
+
}
|
|
1107
|
+
}
|
|
1108
|
+
};
|
|
1109
|
+
var BADGE_DEFINITION_LEXICON_JSON = {
|
|
1110
|
+
lexicon: lexicon$e,
|
|
1111
|
+
id: id$t,
|
|
1112
|
+
defs: defs$g
|
|
1113
|
+
};
|
|
1114
|
+
|
|
1115
|
+
var lexicon$d = 1;
|
|
1116
|
+
var id$s = "app.certified.badge.response";
|
|
1117
|
+
var defs$f = {
|
|
1118
|
+
main: {
|
|
1119
|
+
type: "record",
|
|
1120
|
+
description: "Recipient response to a badge award.",
|
|
1121
|
+
key: "tid",
|
|
1122
|
+
record: {
|
|
1123
|
+
type: "object",
|
|
1124
|
+
required: [
|
|
1125
|
+
"badgeAward",
|
|
1126
|
+
"response",
|
|
1127
|
+
"createdAt"
|
|
1128
|
+
],
|
|
1129
|
+
properties: {
|
|
1130
|
+
badgeAward: {
|
|
1131
|
+
type: "ref",
|
|
1132
|
+
ref: "app.certified.badge.award",
|
|
1133
|
+
description: "Reference to the badge award."
|
|
1134
|
+
},
|
|
1135
|
+
response: {
|
|
1136
|
+
type: "string",
|
|
1137
|
+
"enum": [
|
|
1138
|
+
"accepted",
|
|
1139
|
+
"rejected"
|
|
1140
|
+
],
|
|
1141
|
+
description: "The recipient’s response for the badge (accepted or rejected)."
|
|
1142
|
+
},
|
|
1143
|
+
weight: {
|
|
1144
|
+
type: "string",
|
|
1145
|
+
description: "Optional relative weight for accepted badges, assigned by the recipient."
|
|
1146
|
+
},
|
|
1147
|
+
createdAt: {
|
|
1148
|
+
type: "string",
|
|
1149
|
+
format: "datetime",
|
|
1150
|
+
description: "Client-declared timestamp when this record was originally created"
|
|
1151
|
+
}
|
|
1152
|
+
}
|
|
1153
|
+
}
|
|
1154
|
+
}
|
|
1155
|
+
};
|
|
1156
|
+
var BADGE_RESPONSE_LEXICON_JSON = {
|
|
1157
|
+
lexicon: lexicon$d,
|
|
1158
|
+
id: id$s,
|
|
1159
|
+
defs: defs$f
|
|
1160
|
+
};
|
|
1161
|
+
|
|
1162
|
+
var lexicon$c = 1;
|
|
1163
|
+
var id$r = "app.certified.defs";
|
|
1164
|
+
var description$1 = "Common type definitions used across certified protocols.";
|
|
1165
|
+
var defs$e = {
|
|
1166
|
+
did: {
|
|
1167
|
+
type: "string",
|
|
1168
|
+
format: "did",
|
|
1169
|
+
description: "A Decentralized Identifier (DID) string."
|
|
1170
|
+
}
|
|
1171
|
+
};
|
|
1172
|
+
var CERTIFIED_DEFS_LEXICON_JSON = {
|
|
1173
|
+
lexicon: lexicon$c,
|
|
1174
|
+
id: id$r,
|
|
1175
|
+
description: description$1,
|
|
1176
|
+
defs: defs$e
|
|
1177
|
+
};
|
|
1178
|
+
|
|
1179
|
+
var lexicon$b = 1;
|
|
1180
|
+
var id$q = "app.certified.location";
|
|
1181
|
+
var defs$d = {
|
|
1182
|
+
main: {
|
|
1183
|
+
type: "record",
|
|
1184
|
+
description: "A location reference",
|
|
1185
|
+
key: "tid",
|
|
1186
|
+
record: {
|
|
1187
|
+
type: "object",
|
|
1188
|
+
required: [
|
|
1189
|
+
"lpVersion",
|
|
1190
|
+
"srs",
|
|
1191
|
+
"locationType",
|
|
1192
|
+
"location",
|
|
1193
|
+
"createdAt"
|
|
1194
|
+
],
|
|
1195
|
+
properties: {
|
|
1196
|
+
lpVersion: {
|
|
1197
|
+
type: "string",
|
|
1198
|
+
description: "The version of the Location Protocol",
|
|
1199
|
+
maxLength: 10
|
|
1200
|
+
},
|
|
1201
|
+
srs: {
|
|
1202
|
+
type: "string",
|
|
1203
|
+
format: "uri",
|
|
1204
|
+
description: "The Spatial Reference System URI (e.g., http://www.opengis.net/def/crs/OGC/1.3/CRS84) that defines the coordinate system.",
|
|
1205
|
+
maxLength: 100
|
|
1206
|
+
},
|
|
1207
|
+
locationType: {
|
|
1208
|
+
type: "string",
|
|
1209
|
+
description: "An identifier for the format of the location data (e.g., coordinate-decimal, geojson-point)",
|
|
1210
|
+
knownValues: [
|
|
1211
|
+
"coordinate-decimal",
|
|
1212
|
+
"geojson-point"
|
|
1213
|
+
],
|
|
1214
|
+
maxLength: 20
|
|
1215
|
+
},
|
|
1216
|
+
location: {
|
|
1217
|
+
type: "union",
|
|
1218
|
+
refs: [
|
|
1219
|
+
"org.hypercerts.defs#uri",
|
|
1220
|
+
"org.hypercerts.defs#smallBlob"
|
|
1221
|
+
],
|
|
1222
|
+
description: "The location of where the work was performed as a URI or blob."
|
|
1223
|
+
},
|
|
1224
|
+
name: {
|
|
1225
|
+
type: "string",
|
|
1226
|
+
description: "Optional name for this location",
|
|
1227
|
+
maxLength: 1000,
|
|
1228
|
+
maxGraphemes: 100
|
|
1229
|
+
},
|
|
1230
|
+
description: {
|
|
1231
|
+
type: "string",
|
|
1232
|
+
description: "Optional description for this location",
|
|
1233
|
+
maxLength: 2000,
|
|
1234
|
+
maxGraphemes: 500
|
|
1235
|
+
},
|
|
1236
|
+
createdAt: {
|
|
1237
|
+
type: "string",
|
|
1238
|
+
format: "datetime",
|
|
1239
|
+
description: "Client-declared timestamp when this record was originally created"
|
|
1240
|
+
}
|
|
1241
|
+
}
|
|
1242
|
+
}
|
|
1243
|
+
}
|
|
1244
|
+
};
|
|
1245
|
+
var LOCATION_LEXICON_JSON = {
|
|
1246
|
+
lexicon: lexicon$b,
|
|
1247
|
+
id: id$q,
|
|
1248
|
+
defs: defs$d
|
|
1249
|
+
};
|
|
1250
|
+
|
|
1251
|
+
var lexicon$a = 1;
|
|
1252
|
+
var id$p = "com.atproto.repo.strongRef";
|
|
1253
|
+
var description = "A URI with a content-hash fingerprint.";
|
|
1254
|
+
var defs$c = {
|
|
1255
|
+
main: {
|
|
1256
|
+
type: "object",
|
|
1257
|
+
required: [
|
|
1258
|
+
"uri",
|
|
1259
|
+
"cid"
|
|
1260
|
+
],
|
|
1261
|
+
properties: {
|
|
1262
|
+
uri: {
|
|
1263
|
+
type: "string",
|
|
1264
|
+
format: "at-uri"
|
|
1265
|
+
},
|
|
1266
|
+
cid: {
|
|
1267
|
+
type: "string",
|
|
1268
|
+
format: "cid"
|
|
1269
|
+
}
|
|
1270
|
+
}
|
|
1271
|
+
}
|
|
1272
|
+
};
|
|
1273
|
+
var STRONGREF_LEXICON_JSON = {
|
|
1274
|
+
lexicon: lexicon$a,
|
|
1275
|
+
id: id$p,
|
|
1276
|
+
description: description,
|
|
1277
|
+
defs: defs$c
|
|
1278
|
+
};
|
|
1279
|
+
|
|
1280
|
+
var lexicon$9 = 1;
|
|
1281
|
+
var id$o = "org.hypercerts.claim.activity";
|
|
1282
|
+
var defs$b = {
|
|
1283
|
+
main: {
|
|
1284
|
+
type: "record",
|
|
1285
|
+
description: "A hypercert record tracking impact work.",
|
|
1286
|
+
key: "any",
|
|
1287
|
+
record: {
|
|
1288
|
+
type: "object",
|
|
1289
|
+
required: [
|
|
1290
|
+
"title",
|
|
1291
|
+
"shortDescription",
|
|
1292
|
+
"createdAt",
|
|
1293
|
+
"startDate",
|
|
1294
|
+
"endDate"
|
|
1295
|
+
],
|
|
1296
|
+
properties: {
|
|
1297
|
+
title: {
|
|
1298
|
+
type: "string",
|
|
1299
|
+
description: "Title of the hypercert.",
|
|
1300
|
+
maxLength: 256
|
|
1301
|
+
},
|
|
1302
|
+
shortDescription: {
|
|
1303
|
+
type: "string",
|
|
1304
|
+
description: "Short blurb of the impact work done.",
|
|
1305
|
+
maxLength: 3000,
|
|
1306
|
+
maxGraphemes: 300
|
|
1307
|
+
},
|
|
1308
|
+
description: {
|
|
1309
|
+
type: "string",
|
|
1310
|
+
description: "Optional longer description of the impact work done.",
|
|
1311
|
+
maxLength: 30000,
|
|
1312
|
+
maxGraphemes: 3000
|
|
1313
|
+
},
|
|
1314
|
+
image: {
|
|
1315
|
+
type: "union",
|
|
1316
|
+
refs: [
|
|
1317
|
+
"org.hypercerts.defs#uri",
|
|
1318
|
+
"org.hypercerts.defs#smallImage"
|
|
1319
|
+
],
|
|
1320
|
+
description: "The hypercert visual representation as a URI or image blob."
|
|
1321
|
+
},
|
|
1322
|
+
workScope: {
|
|
1323
|
+
type: "ref",
|
|
1324
|
+
ref: "#workScope"
|
|
1325
|
+
},
|
|
1326
|
+
startDate: {
|
|
1327
|
+
type: "string",
|
|
1328
|
+
format: "datetime",
|
|
1329
|
+
description: "When the work began"
|
|
1330
|
+
},
|
|
1331
|
+
endDate: {
|
|
1332
|
+
type: "string",
|
|
1333
|
+
format: "datetime",
|
|
1334
|
+
description: "When the work ended"
|
|
1335
|
+
},
|
|
1336
|
+
contributions: {
|
|
1337
|
+
type: "array",
|
|
1338
|
+
description: "A strong reference to the contributions done to create the impact in the hypercerts. The record referenced must conform with the lexicon org.hypercerts.claim.contribution.",
|
|
1339
|
+
items: {
|
|
1340
|
+
type: "ref",
|
|
1341
|
+
ref: "com.atproto.repo.strongRef"
|
|
1342
|
+
}
|
|
1343
|
+
},
|
|
1344
|
+
rights: {
|
|
1345
|
+
type: "ref",
|
|
1346
|
+
ref: "com.atproto.repo.strongRef",
|
|
1347
|
+
description: "A strong reference to the rights that this hypercert has. The record referenced must conform with the lexicon org.hypercerts.claim.rights."
|
|
1348
|
+
},
|
|
1349
|
+
location: {
|
|
1350
|
+
type: "ref",
|
|
1351
|
+
ref: "com.atproto.repo.strongRef",
|
|
1352
|
+
description: "A strong reference to the location where the activity was performed. The record referenced must conform with the lexicon app.certified.location."
|
|
1353
|
+
},
|
|
1354
|
+
project: {
|
|
1355
|
+
type: "string",
|
|
1356
|
+
format: "at-uri",
|
|
1357
|
+
description: "A reference (AT-URI) to the project record that this activity is part of. The record referenced must conform with the lexicon org.hypercerts.claim.project. This activity must also be referenced by the project, establishing a bidirectional link."
|
|
1358
|
+
},
|
|
1359
|
+
createdAt: {
|
|
1360
|
+
type: "string",
|
|
1361
|
+
format: "datetime",
|
|
1362
|
+
description: "Client-declared timestamp when this record was originally created"
|
|
1363
|
+
}
|
|
1364
|
+
}
|
|
1365
|
+
}
|
|
1366
|
+
},
|
|
1367
|
+
workScope: {
|
|
1368
|
+
type: "object",
|
|
1369
|
+
description: "Logical scope of the work using label-based conditions. All labels in `withinAllOf` must apply; at least one label in `withinAnyOf` must apply if provided; no label in `withinNoneOf` may apply.",
|
|
1370
|
+
properties: {
|
|
1371
|
+
withinAllOf: {
|
|
1372
|
+
type: "array",
|
|
1373
|
+
description: "Labels that MUST all hold for the scope to apply.",
|
|
1374
|
+
items: {
|
|
1375
|
+
type: "string"
|
|
1376
|
+
},
|
|
1377
|
+
maxLength: 100
|
|
1378
|
+
},
|
|
1379
|
+
withinAnyOf: {
|
|
1380
|
+
type: "array",
|
|
1381
|
+
description: "Labels of which AT LEAST ONE must hold (optional). If omitted or empty, imposes no additional condition.",
|
|
1382
|
+
items: {
|
|
1383
|
+
type: "string"
|
|
1384
|
+
},
|
|
1385
|
+
maxLength: 100
|
|
1386
|
+
},
|
|
1387
|
+
withinNoneOf: {
|
|
1388
|
+
type: "array",
|
|
1389
|
+
description: "Labels that MUST NOT hold for the scope to apply.",
|
|
1390
|
+
items: {
|
|
1391
|
+
type: "string"
|
|
1392
|
+
},
|
|
1393
|
+
maxLength: 100
|
|
1394
|
+
}
|
|
1395
|
+
}
|
|
1396
|
+
},
|
|
1397
|
+
activityWeight: {
|
|
1398
|
+
type: "object",
|
|
1399
|
+
required: [
|
|
1400
|
+
"activity",
|
|
1401
|
+
"weight"
|
|
1402
|
+
],
|
|
1403
|
+
properties: {
|
|
1404
|
+
activity: {
|
|
1405
|
+
type: "ref",
|
|
1406
|
+
ref: "com.atproto.repo.strongRef",
|
|
1407
|
+
description: "A strong reference to a hypercert activity record. This activity must conform to the lexicon org.hypercerts.claim.activity"
|
|
1408
|
+
},
|
|
1409
|
+
weight: {
|
|
1410
|
+
type: "string",
|
|
1411
|
+
description: "The relative weight/importance of this hypercert activity (stored as a string to avoid float precision issues). Weights can be any positive numeric values and do not need to sum to a specific total; normalization can be performed by the consuming application as needed."
|
|
1412
|
+
}
|
|
1413
|
+
}
|
|
1414
|
+
}
|
|
1415
|
+
};
|
|
1416
|
+
var ACTIVITY_LEXICON_JSON = {
|
|
1417
|
+
lexicon: lexicon$9,
|
|
1418
|
+
id: id$o,
|
|
1419
|
+
defs: defs$b
|
|
1420
|
+
};
|
|
1421
|
+
|
|
1422
|
+
var lexicon$8 = 1;
|
|
1423
|
+
var id$n = "org.hypercerts.claim.collection";
|
|
1424
|
+
var defs$a = {
|
|
1425
|
+
main: {
|
|
1426
|
+
type: "record",
|
|
1427
|
+
description: "A collection/group of hypercerts that have a specific property.",
|
|
1428
|
+
key: "tid",
|
|
1429
|
+
record: {
|
|
1430
|
+
type: "object",
|
|
1431
|
+
required: [
|
|
1432
|
+
"title",
|
|
1433
|
+
"activities",
|
|
1434
|
+
"createdAt"
|
|
1435
|
+
],
|
|
1436
|
+
properties: {
|
|
1437
|
+
title: {
|
|
1438
|
+
type: "string",
|
|
1439
|
+
description: "The title of this collection",
|
|
1440
|
+
maxLength: 800,
|
|
1441
|
+
maxGraphemes: 80
|
|
1442
|
+
},
|
|
1443
|
+
shortDescription: {
|
|
1444
|
+
type: "string",
|
|
1445
|
+
maxLength: 3000,
|
|
1446
|
+
maxGraphemes: 300,
|
|
1447
|
+
description: "A short description of this collection"
|
|
1448
|
+
},
|
|
1449
|
+
avatar: {
|
|
1450
|
+
type: "blob",
|
|
1451
|
+
description: "Primary avatar image representing this collection across apps and views; typically a square image.",
|
|
1452
|
+
accept: [
|
|
1453
|
+
"image/png",
|
|
1454
|
+
"image/jpeg"
|
|
1455
|
+
],
|
|
1456
|
+
maxSize: 1000000
|
|
1457
|
+
},
|
|
1458
|
+
coverPhoto: {
|
|
1459
|
+
type: "blob",
|
|
1460
|
+
description: "The cover photo of this collection.",
|
|
1461
|
+
accept: [
|
|
1462
|
+
"image/png",
|
|
1463
|
+
"image/jpeg"
|
|
1464
|
+
],
|
|
1465
|
+
maxSize: 1000000
|
|
1466
|
+
},
|
|
1467
|
+
activities: {
|
|
1468
|
+
type: "array",
|
|
1469
|
+
description: "Array of activities with their associated weights in this collection",
|
|
1470
|
+
items: {
|
|
1471
|
+
type: "ref",
|
|
1472
|
+
ref: "org.hypercerts.claim.activity#activityWeight"
|
|
1473
|
+
}
|
|
1474
|
+
},
|
|
1475
|
+
createdAt: {
|
|
1476
|
+
type: "string",
|
|
1477
|
+
format: "datetime",
|
|
1478
|
+
description: "Client-declared timestamp when this record was originally created"
|
|
1479
|
+
}
|
|
1480
|
+
}
|
|
1481
|
+
}
|
|
1482
|
+
}
|
|
1483
|
+
};
|
|
1484
|
+
var COLLECTION_LEXICON_JSON = {
|
|
1485
|
+
lexicon: lexicon$8,
|
|
1486
|
+
id: id$n,
|
|
1487
|
+
defs: defs$a
|
|
1488
|
+
};
|
|
1489
|
+
|
|
1490
|
+
var lexicon$7 = 1;
|
|
1491
|
+
var id$m = "org.hypercerts.claim.contribution";
|
|
1492
|
+
var defs$9 = {
|
|
1493
|
+
main: {
|
|
1494
|
+
type: "record",
|
|
1495
|
+
description: "A contribution made toward a hypercert's impact.",
|
|
1496
|
+
key: "tid",
|
|
1497
|
+
record: {
|
|
1498
|
+
type: "object",
|
|
1499
|
+
required: [
|
|
1500
|
+
"contributors",
|
|
1501
|
+
"createdAt"
|
|
1502
|
+
],
|
|
1503
|
+
properties: {
|
|
1504
|
+
role: {
|
|
1505
|
+
type: "string",
|
|
1506
|
+
description: "Role or title of the contributor(s).",
|
|
1507
|
+
maxLength: 100
|
|
1508
|
+
},
|
|
1509
|
+
contributors: {
|
|
1510
|
+
type: "array",
|
|
1511
|
+
description: "List of the contributors (names, pseudonyms, or DIDs). If multiple contributors are stored in the same hypercertContribution, then they would have the exact same role.",
|
|
1512
|
+
items: {
|
|
1513
|
+
type: "string"
|
|
1514
|
+
}
|
|
1515
|
+
},
|
|
1516
|
+
description: {
|
|
1517
|
+
type: "string",
|
|
1518
|
+
description: "What the contribution concretely achieved",
|
|
1519
|
+
maxLength: 2000,
|
|
1520
|
+
maxGraphemes: 500
|
|
1521
|
+
},
|
|
1522
|
+
startDate: {
|
|
1523
|
+
type: "string",
|
|
1524
|
+
format: "datetime",
|
|
1525
|
+
description: "When this contribution started. This should be a subset of the hypercert timeframe."
|
|
1526
|
+
},
|
|
1527
|
+
endDate: {
|
|
1528
|
+
type: "string",
|
|
1529
|
+
format: "datetime",
|
|
1530
|
+
description: "When this contribution finished. This should be a subset of the hypercert timeframe."
|
|
1531
|
+
},
|
|
1532
|
+
createdAt: {
|
|
1533
|
+
type: "string",
|
|
1534
|
+
format: "datetime",
|
|
1535
|
+
description: "Client-declared timestamp when this record was originally created"
|
|
1536
|
+
}
|
|
1537
|
+
}
|
|
1538
|
+
}
|
|
1539
|
+
}
|
|
1540
|
+
};
|
|
1541
|
+
var CONTRIBUTION_LEXICON_JSON = {
|
|
1542
|
+
lexicon: lexicon$7,
|
|
1543
|
+
id: id$m,
|
|
1544
|
+
defs: defs$9
|
|
1545
|
+
};
|
|
1546
|
+
|
|
1547
|
+
var lexicon$6 = 1;
|
|
1548
|
+
var id$l = "org.hypercerts.claim.evaluation";
|
|
1549
|
+
var defs$8 = {
|
|
1550
|
+
score: {
|
|
1551
|
+
type: "object",
|
|
1552
|
+
description: "Overall score for an evaluation on a numeric scale.",
|
|
1553
|
+
required: [
|
|
1554
|
+
"min",
|
|
1555
|
+
"max",
|
|
1556
|
+
"value"
|
|
1557
|
+
],
|
|
1558
|
+
properties: {
|
|
1559
|
+
min: {
|
|
1560
|
+
type: "integer",
|
|
1561
|
+
description: "Minimum value of the scale, e.g. 0 or 1."
|
|
1562
|
+
},
|
|
1563
|
+
max: {
|
|
1564
|
+
type: "integer",
|
|
1565
|
+
description: "Maximum value of the scale, e.g. 5 or 10."
|
|
1566
|
+
},
|
|
1567
|
+
value: {
|
|
1568
|
+
type: "integer",
|
|
1569
|
+
description: "Score within the inclusive range [min, max]."
|
|
1570
|
+
}
|
|
1571
|
+
}
|
|
1572
|
+
},
|
|
1573
|
+
main: {
|
|
1574
|
+
type: "record",
|
|
1575
|
+
description: "An evaluation of a hypercert record (e.g. an activity and its impact).",
|
|
1576
|
+
key: "tid",
|
|
1577
|
+
record: {
|
|
1578
|
+
type: "object",
|
|
1579
|
+
required: [
|
|
1580
|
+
"evaluators",
|
|
1581
|
+
"summary",
|
|
1582
|
+
"createdAt"
|
|
1583
|
+
],
|
|
1584
|
+
properties: {
|
|
1585
|
+
subject: {
|
|
1586
|
+
type: "ref",
|
|
1587
|
+
ref: "com.atproto.repo.strongRef",
|
|
1588
|
+
description: "A strong reference to what is being evaluated. (e.g activity, measurement, contribution, etc.)"
|
|
1589
|
+
},
|
|
1590
|
+
evaluators: {
|
|
1591
|
+
type: "array",
|
|
1592
|
+
description: "DIDs of the evaluators",
|
|
1593
|
+
items: {
|
|
1594
|
+
type: "ref",
|
|
1595
|
+
ref: "app.certified.defs#did"
|
|
1596
|
+
},
|
|
1597
|
+
maxLength: 1000
|
|
1598
|
+
},
|
|
1599
|
+
content: {
|
|
1600
|
+
type: "array",
|
|
1601
|
+
description: "Evaluation data (URIs or blobs) containing detailed reports or methodology",
|
|
1602
|
+
items: {
|
|
1603
|
+
type: "union",
|
|
1604
|
+
refs: [
|
|
1605
|
+
"org.hypercerts.defs#uri",
|
|
1606
|
+
"org.hypercerts.defs#smallBlob"
|
|
1607
|
+
]
|
|
1608
|
+
},
|
|
1609
|
+
maxLength: 100
|
|
1610
|
+
},
|
|
1611
|
+
measurements: {
|
|
1612
|
+
type: "array",
|
|
1613
|
+
description: "Optional references to the measurements that contributed to this evaluation. The record(s) referenced must conform with the lexicon org.hypercerts.claim.measurement ",
|
|
1614
|
+
items: {
|
|
1615
|
+
type: "ref",
|
|
1616
|
+
ref: "com.atproto.repo.strongRef"
|
|
1617
|
+
},
|
|
1618
|
+
maxLength: 100
|
|
1619
|
+
},
|
|
1620
|
+
summary: {
|
|
1621
|
+
type: "string",
|
|
1622
|
+
description: "Brief evaluation summary",
|
|
1623
|
+
maxLength: 5000,
|
|
1624
|
+
maxGraphemes: 1000
|
|
1625
|
+
},
|
|
1626
|
+
score: {
|
|
1627
|
+
type: "ref",
|
|
1628
|
+
ref: "#score",
|
|
1629
|
+
description: "Optional overall score for this evaluation on a numeric scale."
|
|
1630
|
+
},
|
|
1631
|
+
location: {
|
|
1632
|
+
type: "ref",
|
|
1633
|
+
ref: "com.atproto.repo.strongRef",
|
|
1634
|
+
description: "An optional reference for georeferenced evaluations. The record referenced must conform with the lexicon app.certified.location."
|
|
1635
|
+
},
|
|
1636
|
+
createdAt: {
|
|
1637
|
+
type: "string",
|
|
1638
|
+
format: "datetime",
|
|
1639
|
+
description: "Client-declared timestamp when this record was originally created"
|
|
1640
|
+
}
|
|
1641
|
+
}
|
|
1642
|
+
}
|
|
1643
|
+
}
|
|
1644
|
+
};
|
|
1645
|
+
var EVALUATION_LEXICON_JSON = {
|
|
1646
|
+
lexicon: lexicon$6,
|
|
1647
|
+
id: id$l,
|
|
1648
|
+
defs: defs$8
|
|
1649
|
+
};
|
|
1650
|
+
|
|
1651
|
+
var lexicon$5 = 1;
|
|
1652
|
+
var id$k = "org.hypercerts.claim.evidence";
|
|
1653
|
+
var defs$7 = {
|
|
1654
|
+
main: {
|
|
1655
|
+
type: "record",
|
|
1656
|
+
description: "A piece of evidence related to a hypercert record (e.g. an activity, project, claim, or evaluation). Evidence may support, clarify, or challenge the referenced subject.",
|
|
1657
|
+
key: "tid",
|
|
1658
|
+
record: {
|
|
1659
|
+
type: "object",
|
|
1660
|
+
required: [
|
|
1661
|
+
"content",
|
|
1662
|
+
"title",
|
|
1663
|
+
"createdAt"
|
|
1664
|
+
],
|
|
1665
|
+
properties: {
|
|
1666
|
+
subject: {
|
|
1667
|
+
type: "ref",
|
|
1668
|
+
ref: "com.atproto.repo.strongRef",
|
|
1669
|
+
description: "A strong reference to the record this evidence relates to (e.g. an activity, project, claim, or evaluation)."
|
|
1670
|
+
},
|
|
1671
|
+
content: {
|
|
1672
|
+
type: "union",
|
|
1673
|
+
refs: [
|
|
1674
|
+
"org.hypercerts.defs#uri",
|
|
1675
|
+
"org.hypercerts.defs#smallBlob"
|
|
1676
|
+
],
|
|
1677
|
+
description: "A piece of evidence (URI or blob) related to the subject record; it may support, clarify, or challenge a hypercert claim."
|
|
1678
|
+
},
|
|
1679
|
+
title: {
|
|
1680
|
+
type: "string",
|
|
1681
|
+
maxLength: 256,
|
|
1682
|
+
description: "Title to describe the nature of the evidence."
|
|
1683
|
+
},
|
|
1684
|
+
shortDescription: {
|
|
1685
|
+
type: "string",
|
|
1686
|
+
maxLength: 3000,
|
|
1687
|
+
maxGraphemes: 300,
|
|
1688
|
+
description: "Short description explaining what this evidence shows."
|
|
1689
|
+
},
|
|
1690
|
+
description: {
|
|
1691
|
+
type: "string",
|
|
1692
|
+
description: "Longer description describing the evidence in more detail.",
|
|
1693
|
+
maxLength: 30000,
|
|
1694
|
+
maxGraphemes: 3000
|
|
1695
|
+
},
|
|
1696
|
+
relationType: {
|
|
1697
|
+
type: "string",
|
|
1698
|
+
description: "How this evidence relates to the subject.",
|
|
1699
|
+
knownValues: [
|
|
1700
|
+
"supports",
|
|
1701
|
+
"challenges",
|
|
1702
|
+
"clarifies"
|
|
1703
|
+
]
|
|
1704
|
+
},
|
|
1705
|
+
createdAt: {
|
|
1706
|
+
type: "string",
|
|
1707
|
+
format: "datetime",
|
|
1708
|
+
description: "Client-declared timestamp when this record was originally created"
|
|
1709
|
+
}
|
|
1710
|
+
}
|
|
1711
|
+
}
|
|
1712
|
+
}
|
|
1713
|
+
};
|
|
1714
|
+
var EVIDENCE_LEXICON_JSON = {
|
|
1715
|
+
lexicon: lexicon$5,
|
|
1716
|
+
id: id$k,
|
|
1717
|
+
defs: defs$7
|
|
1718
|
+
};
|
|
1719
|
+
|
|
1720
|
+
var lexicon$4 = 1;
|
|
1721
|
+
var id$j = "org.hypercerts.claim.measurement";
|
|
1722
|
+
var defs$6 = {
|
|
1723
|
+
main: {
|
|
1724
|
+
type: "record",
|
|
1725
|
+
description: "Measurement data related to a hypercert record (e.g. an activity and its impact).",
|
|
1726
|
+
key: "tid",
|
|
1727
|
+
record: {
|
|
1728
|
+
type: "object",
|
|
1729
|
+
required: [
|
|
1730
|
+
"measurers",
|
|
1731
|
+
"metric",
|
|
1732
|
+
"value",
|
|
1733
|
+
"createdAt"
|
|
1734
|
+
],
|
|
1735
|
+
properties: {
|
|
1736
|
+
subject: {
|
|
1737
|
+
type: "ref",
|
|
1738
|
+
ref: "com.atproto.repo.strongRef",
|
|
1739
|
+
description: "A strong reference to the record this measurement refers to (e.g. an activity, project, or claim)."
|
|
1740
|
+
},
|
|
1741
|
+
measurers: {
|
|
1742
|
+
type: "array",
|
|
1743
|
+
description: "DIDs of the entity (or entities) that measured this data",
|
|
1744
|
+
items: {
|
|
1745
|
+
type: "ref",
|
|
1746
|
+
ref: "app.certified.defs#did"
|
|
1747
|
+
},
|
|
1748
|
+
maxLength: 100
|
|
1749
|
+
},
|
|
1750
|
+
metric: {
|
|
1751
|
+
type: "string",
|
|
1752
|
+
description: "The metric being measured",
|
|
1753
|
+
maxLength: 500
|
|
1754
|
+
},
|
|
1755
|
+
value: {
|
|
1756
|
+
type: "string",
|
|
1757
|
+
description: "The measured value",
|
|
1758
|
+
maxLength: 500
|
|
1759
|
+
},
|
|
1760
|
+
methodType: {
|
|
1761
|
+
type: "string",
|
|
1762
|
+
description: "Short identifier for the measurement methodology",
|
|
1763
|
+
maxLength: 30
|
|
1764
|
+
},
|
|
1765
|
+
methodURI: {
|
|
1766
|
+
type: "string",
|
|
1767
|
+
format: "uri",
|
|
1768
|
+
description: "URI to methodology documentation, standard protocol, or measurement procedure"
|
|
1769
|
+
},
|
|
1770
|
+
evidenceURI: {
|
|
1771
|
+
type: "array",
|
|
1772
|
+
description: "URIs to related evidence or underlying data (e.g. org.hypercerts.claim.evidence records or raw datasets)",
|
|
1773
|
+
items: {
|
|
1774
|
+
type: "string",
|
|
1775
|
+
format: "uri"
|
|
1776
|
+
},
|
|
1777
|
+
maxLength: 50
|
|
1778
|
+
},
|
|
1779
|
+
location: {
|
|
1780
|
+
type: "ref",
|
|
1781
|
+
ref: "com.atproto.repo.strongRef",
|
|
1782
|
+
description: "A strong reference to the location where the measurement was taken. The record referenced must conform with the lexicon app.certified.location"
|
|
1783
|
+
},
|
|
1784
|
+
createdAt: {
|
|
1785
|
+
type: "string",
|
|
1786
|
+
format: "datetime",
|
|
1787
|
+
description: "Client-declared timestamp when this record was originally created"
|
|
1788
|
+
}
|
|
1789
|
+
}
|
|
1790
|
+
}
|
|
1791
|
+
}
|
|
1792
|
+
};
|
|
1793
|
+
var MEASUREMENT_LEXICON_JSON = {
|
|
1794
|
+
lexicon: lexicon$4,
|
|
1795
|
+
id: id$j,
|
|
1796
|
+
defs: defs$6
|
|
1797
|
+
};
|
|
1798
|
+
|
|
1799
|
+
var lexicon$3 = 1;
|
|
1800
|
+
var id$i = "org.hypercerts.claim.project";
|
|
1801
|
+
var defs$5 = {
|
|
1802
|
+
main: {
|
|
1803
|
+
type: "record",
|
|
1804
|
+
description: "A project that can include multiple activities, each of which may be linked to at most one project.",
|
|
1805
|
+
key: "tid",
|
|
1806
|
+
record: {
|
|
1807
|
+
type: "object",
|
|
1808
|
+
required: [
|
|
1809
|
+
"title",
|
|
1810
|
+
"shortDescription",
|
|
1811
|
+
"createdAt"
|
|
1812
|
+
],
|
|
1813
|
+
properties: {
|
|
1814
|
+
title: {
|
|
1815
|
+
type: "string",
|
|
1816
|
+
description: "Title of this project",
|
|
1817
|
+
maxLength: 800,
|
|
1818
|
+
maxGraphemes: 80
|
|
1819
|
+
},
|
|
1820
|
+
shortDescription: {
|
|
1821
|
+
type: "string",
|
|
1822
|
+
maxLength: 3000,
|
|
1823
|
+
maxGraphemes: 300,
|
|
1824
|
+
description: "Short summary of this project, suitable for previews and list views."
|
|
1825
|
+
},
|
|
1826
|
+
description: {
|
|
1827
|
+
type: "ref",
|
|
1828
|
+
ref: "pub.leaflet.pages.linearDocument#main",
|
|
1829
|
+
description: "Rich-text description of this project, represented as a Leaflet linear document."
|
|
1830
|
+
},
|
|
1831
|
+
avatar: {
|
|
1832
|
+
type: "blob",
|
|
1833
|
+
description: "Primary avatar image representing this project across apps and views; typically a square logo or project identity image.",
|
|
1834
|
+
accept: [
|
|
1835
|
+
"image/png",
|
|
1836
|
+
"image/jpeg"
|
|
1837
|
+
],
|
|
1838
|
+
maxSize: 1000000
|
|
1839
|
+
},
|
|
1840
|
+
coverPhoto: {
|
|
1841
|
+
type: "blob",
|
|
1842
|
+
description: "The cover photo of this project.",
|
|
1843
|
+
accept: [
|
|
1844
|
+
"image/png",
|
|
1845
|
+
"image/jpeg"
|
|
1846
|
+
],
|
|
1847
|
+
maxSize: 1000000
|
|
1848
|
+
},
|
|
1849
|
+
activities: {
|
|
1850
|
+
type: "array",
|
|
1851
|
+
description: "Array of activities with their associated weights in this project",
|
|
1852
|
+
items: {
|
|
1853
|
+
type: "ref",
|
|
1854
|
+
ref: "org.hypercerts.claim.activity#activityWeight"
|
|
1855
|
+
}
|
|
1856
|
+
},
|
|
1857
|
+
location: {
|
|
1858
|
+
type: "ref",
|
|
1859
|
+
ref: "com.atproto.repo.strongRef",
|
|
1860
|
+
description: "A strong reference to a location record describing where the work for this project took place. The referenced record must conform to the app.certified.location lexicon."
|
|
1861
|
+
},
|
|
1862
|
+
createdAt: {
|
|
1863
|
+
type: "string",
|
|
1864
|
+
format: "datetime",
|
|
1865
|
+
description: "Client-declared timestamp when this record was originally created"
|
|
1866
|
+
}
|
|
1867
|
+
}
|
|
1868
|
+
}
|
|
1869
|
+
}
|
|
1870
|
+
};
|
|
1871
|
+
var PROJECT_LEXICON_JSON = {
|
|
1872
|
+
lexicon: lexicon$3,
|
|
1873
|
+
id: id$i,
|
|
1874
|
+
defs: defs$5
|
|
1875
|
+
};
|
|
1876
|
+
|
|
1877
|
+
var lexicon$2 = 1;
|
|
1878
|
+
var id$h = "org.hypercerts.claim.rights";
|
|
1879
|
+
var defs$4 = {
|
|
1880
|
+
main: {
|
|
1881
|
+
type: "record",
|
|
1882
|
+
description: "Describes the rights that a contributor and/or an owner has, such as whether the hypercert can be sold, transferred, and under what conditions.",
|
|
1883
|
+
key: "tid",
|
|
1884
|
+
record: {
|
|
1885
|
+
type: "object",
|
|
1886
|
+
required: [
|
|
1887
|
+
"rightsName",
|
|
1888
|
+
"rightsType",
|
|
1889
|
+
"rightsDescription",
|
|
1890
|
+
"createdAt"
|
|
1891
|
+
],
|
|
1892
|
+
properties: {
|
|
1893
|
+
rightsName: {
|
|
1894
|
+
type: "string",
|
|
1895
|
+
description: "Full name of the rights",
|
|
1896
|
+
maxLength: 100
|
|
1897
|
+
},
|
|
1898
|
+
rightsType: {
|
|
1899
|
+
type: "string",
|
|
1900
|
+
description: "Short rights identifier for easier search",
|
|
1901
|
+
maxLength: 10
|
|
1902
|
+
},
|
|
1903
|
+
rightsDescription: {
|
|
1904
|
+
type: "string",
|
|
1905
|
+
description: "Description of the rights of this hypercert"
|
|
1906
|
+
},
|
|
1907
|
+
attachment: {
|
|
1908
|
+
type: "union",
|
|
1909
|
+
refs: [
|
|
1910
|
+
"org.hypercerts.defs#uri",
|
|
1911
|
+
"org.hypercerts.defs#smallBlob"
|
|
1912
|
+
],
|
|
1913
|
+
description: "An attachment to define the rights further, e.g. a legal document."
|
|
1914
|
+
},
|
|
1915
|
+
createdAt: {
|
|
1916
|
+
type: "string",
|
|
1917
|
+
format: "datetime",
|
|
1918
|
+
description: "Client-declared timestamp when this record was originally created"
|
|
1919
|
+
}
|
|
1920
|
+
}
|
|
1921
|
+
}
|
|
1922
|
+
}
|
|
1923
|
+
};
|
|
1924
|
+
var RIGHTS_LEXICON_JSON = {
|
|
1925
|
+
lexicon: lexicon$2,
|
|
1926
|
+
id: id$h,
|
|
1927
|
+
defs: defs$4
|
|
1928
|
+
};
|
|
1929
|
+
|
|
1930
|
+
var lexicon$1 = 1;
|
|
1931
|
+
var id$g = "org.hypercerts.defs";
|
|
1932
|
+
var defs$3 = {
|
|
1933
|
+
uri: {
|
|
1934
|
+
type: "object",
|
|
1935
|
+
required: [
|
|
1936
|
+
"uri"
|
|
1937
|
+
],
|
|
1938
|
+
description: "Object containing a URI to external data",
|
|
1939
|
+
properties: {
|
|
1940
|
+
uri: {
|
|
1941
|
+
type: "string",
|
|
1942
|
+
format: "uri",
|
|
1943
|
+
maxGraphemes: 1024,
|
|
1944
|
+
description: "URI to external data"
|
|
1945
|
+
}
|
|
1946
|
+
}
|
|
1947
|
+
},
|
|
1948
|
+
smallBlob: {
|
|
1949
|
+
type: "object",
|
|
1950
|
+
required: [
|
|
1951
|
+
"blob"
|
|
1952
|
+
],
|
|
1953
|
+
description: "Object containing a blob to external data",
|
|
1954
|
+
properties: {
|
|
1955
|
+
blob: {
|
|
1956
|
+
type: "blob",
|
|
1957
|
+
accept: [
|
|
1958
|
+
"*/*"
|
|
1959
|
+
],
|
|
1960
|
+
maxSize: 10485760,
|
|
1961
|
+
description: "Blob to external data (up to 10MB)"
|
|
1962
|
+
}
|
|
1963
|
+
}
|
|
1964
|
+
},
|
|
1965
|
+
largeBlob: {
|
|
1966
|
+
type: "object",
|
|
1967
|
+
required: [
|
|
1968
|
+
"blob"
|
|
1969
|
+
],
|
|
1970
|
+
description: "Object containing a blob to external data",
|
|
1971
|
+
properties: {
|
|
1972
|
+
blob: {
|
|
1973
|
+
type: "blob",
|
|
1974
|
+
accept: [
|
|
1975
|
+
"*/*"
|
|
1976
|
+
],
|
|
1977
|
+
maxSize: 104857600,
|
|
1978
|
+
description: "Blob to external data (up to 100MB)"
|
|
1979
|
+
}
|
|
1980
|
+
}
|
|
1981
|
+
},
|
|
1982
|
+
smallImage: {
|
|
1983
|
+
type: "object",
|
|
1984
|
+
required: [
|
|
1985
|
+
"image"
|
|
1986
|
+
],
|
|
1987
|
+
description: "Object containing a small image",
|
|
1988
|
+
properties: {
|
|
1989
|
+
image: {
|
|
1990
|
+
type: "blob",
|
|
1991
|
+
accept: [
|
|
1992
|
+
"image/jpeg",
|
|
1993
|
+
"image/jpg",
|
|
1994
|
+
"image/png",
|
|
1995
|
+
"image/webp"
|
|
1996
|
+
],
|
|
1997
|
+
maxSize: 5242880,
|
|
1998
|
+
description: "Image (up to 5MB)"
|
|
1999
|
+
}
|
|
2000
|
+
}
|
|
2001
|
+
},
|
|
2002
|
+
largeImage: {
|
|
2003
|
+
type: "object",
|
|
2004
|
+
required: [
|
|
2005
|
+
"image"
|
|
2006
|
+
],
|
|
2007
|
+
description: "Object containing a large image",
|
|
2008
|
+
properties: {
|
|
2009
|
+
image: {
|
|
2010
|
+
type: "blob",
|
|
2011
|
+
accept: [
|
|
2012
|
+
"image/jpeg",
|
|
2013
|
+
"image/jpg",
|
|
2014
|
+
"image/png",
|
|
2015
|
+
"image/webp"
|
|
2016
|
+
],
|
|
2017
|
+
maxSize: 10485760,
|
|
2018
|
+
description: "Image (up to 10MB)"
|
|
2019
|
+
}
|
|
2020
|
+
}
|
|
2021
|
+
}
|
|
2022
|
+
};
|
|
2023
|
+
var HYPERCERTS_DEFS_LEXICON_JSON = {
|
|
2024
|
+
lexicon: lexicon$1,
|
|
2025
|
+
id: id$g,
|
|
2026
|
+
defs: defs$3
|
|
2027
|
+
};
|
|
2028
|
+
|
|
2029
|
+
var lexicon = 1;
|
|
2030
|
+
var id$f = "org.hypercerts.funding.receipt";
|
|
2031
|
+
var defs$2 = {
|
|
2032
|
+
main: {
|
|
2033
|
+
type: "record",
|
|
2034
|
+
description: "Records a funding receipt for a payment from one user to another user. It may be recorded by the recipient, by the sender, or by a third party. The sender may remain anonymous.",
|
|
2035
|
+
key: "tid",
|
|
2036
|
+
record: {
|
|
2037
|
+
type: "object",
|
|
2038
|
+
required: [
|
|
2039
|
+
"from",
|
|
2040
|
+
"to",
|
|
2041
|
+
"amount",
|
|
2042
|
+
"currency",
|
|
2043
|
+
"createdAt"
|
|
2044
|
+
],
|
|
2045
|
+
properties: {
|
|
2046
|
+
from: {
|
|
2047
|
+
type: "ref",
|
|
2048
|
+
ref: "app.certified.defs#did",
|
|
2049
|
+
description: "DID of the sender who transferred the funds. Leave empty if sender wants to stay anonymous."
|
|
2050
|
+
},
|
|
2051
|
+
to: {
|
|
2052
|
+
type: "string",
|
|
2053
|
+
description: "The recipient of the funds. Can be identified by DID or a clear-text name."
|
|
2054
|
+
},
|
|
2055
|
+
amount: {
|
|
2056
|
+
type: "string",
|
|
2057
|
+
description: "Amount of funding received."
|
|
2058
|
+
},
|
|
2059
|
+
currency: {
|
|
2060
|
+
type: "string",
|
|
2061
|
+
description: "Currency of the payment (e.g. EUR, USD, ETH)."
|
|
2062
|
+
},
|
|
2063
|
+
paymentRail: {
|
|
2064
|
+
type: "string",
|
|
2065
|
+
description: "How the funds were transferred (e.g. bank_transfer, credit_card, onchain, cash, check, payment_processor)."
|
|
2066
|
+
},
|
|
2067
|
+
paymentNetwork: {
|
|
2068
|
+
type: "string",
|
|
2069
|
+
description: "Optional network within the payment rail (e.g. arbitrum, ethereum, sepa, visa, paypal)."
|
|
2070
|
+
},
|
|
2071
|
+
transactionId: {
|
|
2072
|
+
type: "string",
|
|
2073
|
+
description: "Identifier of the underlying payment transaction (e.g. bank reference, onchain transaction hash, or processor-specific ID). Use paymentNetwork to specify the network where applicable."
|
|
2074
|
+
},
|
|
2075
|
+
"for": {
|
|
2076
|
+
type: "string",
|
|
2077
|
+
format: "at-uri",
|
|
2078
|
+
description: "Optional reference to the activity, project, or organization this funding relates to."
|
|
2079
|
+
},
|
|
2080
|
+
notes: {
|
|
2081
|
+
type: "string",
|
|
2082
|
+
description: "Optional notes or additional context for this funding receipt.",
|
|
2083
|
+
maxLength: 500
|
|
2084
|
+
},
|
|
2085
|
+
occurredAt: {
|
|
2086
|
+
type: "string",
|
|
2087
|
+
format: "datetime",
|
|
2088
|
+
description: "Timestamp when the payment occurred."
|
|
2089
|
+
},
|
|
2090
|
+
createdAt: {
|
|
2091
|
+
type: "string",
|
|
2092
|
+
format: "datetime",
|
|
2093
|
+
description: "Client-declared timestamp when this receipt record was created."
|
|
2094
|
+
}
|
|
2095
|
+
}
|
|
2096
|
+
}
|
|
2097
|
+
}
|
|
2098
|
+
};
|
|
2099
|
+
var FUNDING_RECEIPT_LEXICON_JSON = {
|
|
2100
|
+
lexicon: lexicon,
|
|
2101
|
+
id: id$f,
|
|
2102
|
+
defs: defs$2
|
|
2103
|
+
};
|
|
2104
|
+
|
|
2105
|
+
const is$typed$e = is$typed$f, validate$e = validate$f;
|
|
2106
|
+
const id$e = 'app.certified.badge.award';
|
|
2107
|
+
const hashMain$d = 'main';
|
|
2108
|
+
function isMain$d(v) {
|
|
2109
|
+
return is$typed$e(v, id$e, hashMain$d);
|
|
2110
|
+
}
|
|
2111
|
+
function validateMain$d(v) {
|
|
2112
|
+
return validate$e(v, id$e, hashMain$d, true);
|
|
2113
|
+
}
|
|
2114
|
+
|
|
2115
|
+
var award = /*#__PURE__*/Object.freeze({
|
|
2116
|
+
__proto__: null,
|
|
2117
|
+
isMain: isMain$d,
|
|
2118
|
+
isRecord: isMain$d,
|
|
2119
|
+
validateMain: validateMain$d,
|
|
2120
|
+
validateRecord: validateMain$d
|
|
2121
|
+
});
|
|
2122
|
+
|
|
2123
|
+
const is$typed$d = is$typed$f, validate$d = validate$f;
|
|
2124
|
+
const id$d = 'app.certified.badge.definition';
|
|
2125
|
+
const hashMain$c = 'main';
|
|
2126
|
+
function isMain$c(v) {
|
|
2127
|
+
return is$typed$d(v, id$d, hashMain$c);
|
|
2128
|
+
}
|
|
2129
|
+
function validateMain$c(v) {
|
|
2130
|
+
return validate$d(v, id$d, hashMain$c, true);
|
|
2131
|
+
}
|
|
2132
|
+
|
|
2133
|
+
var definition = /*#__PURE__*/Object.freeze({
|
|
2134
|
+
__proto__: null,
|
|
2135
|
+
isMain: isMain$c,
|
|
2136
|
+
isRecord: isMain$c,
|
|
2137
|
+
validateMain: validateMain$c,
|
|
2138
|
+
validateRecord: validateMain$c
|
|
2139
|
+
});
|
|
2140
|
+
|
|
2141
|
+
const is$typed$c = is$typed$f, validate$c = validate$f;
|
|
2142
|
+
const id$c = 'app.certified.badge.response';
|
|
2143
|
+
const hashMain$b = 'main';
|
|
2144
|
+
function isMain$b(v) {
|
|
2145
|
+
return is$typed$c(v, id$c, hashMain$b);
|
|
2146
|
+
}
|
|
2147
|
+
function validateMain$b(v) {
|
|
2148
|
+
return validate$c(v, id$c, hashMain$b, true);
|
|
2149
|
+
}
|
|
2150
|
+
|
|
2151
|
+
var response = /*#__PURE__*/Object.freeze({
|
|
2152
|
+
__proto__: null,
|
|
2153
|
+
isMain: isMain$b,
|
|
2154
|
+
isRecord: isMain$b,
|
|
2155
|
+
validateMain: validateMain$b,
|
|
2156
|
+
validateRecord: validateMain$b
|
|
2157
|
+
});
|
|
2158
|
+
|
|
2159
|
+
var defs$1 = /*#__PURE__*/Object.freeze({
|
|
2160
|
+
__proto__: null
|
|
2161
|
+
});
|
|
2162
|
+
|
|
2163
|
+
const is$typed$b = is$typed$f, validate$b = validate$f;
|
|
2164
|
+
const id$b = 'app.certified.location';
|
|
2165
|
+
const hashMain$a = 'main';
|
|
2166
|
+
function isMain$a(v) {
|
|
2167
|
+
return is$typed$b(v, id$b, hashMain$a);
|
|
2168
|
+
}
|
|
2169
|
+
function validateMain$a(v) {
|
|
2170
|
+
return validate$b(v, id$b, hashMain$a, true);
|
|
2171
|
+
}
|
|
2172
|
+
|
|
2173
|
+
var location = /*#__PURE__*/Object.freeze({
|
|
2174
|
+
__proto__: null,
|
|
2175
|
+
isMain: isMain$a,
|
|
2176
|
+
isRecord: isMain$a,
|
|
2177
|
+
validateMain: validateMain$a,
|
|
2178
|
+
validateRecord: validateMain$a
|
|
2179
|
+
});
|
|
2180
|
+
|
|
2181
|
+
const is$typed$a = is$typed$f, validate$a = validate$f;
|
|
2182
|
+
const id$a = 'com.atproto.repo.strongRef';
|
|
2183
|
+
const hashMain$9 = 'main';
|
|
2184
|
+
function isMain$9(v) {
|
|
2185
|
+
return is$typed$a(v, id$a, hashMain$9);
|
|
2186
|
+
}
|
|
2187
|
+
function validateMain$9(v) {
|
|
2188
|
+
return validate$a(v, id$a, hashMain$9);
|
|
2189
|
+
}
|
|
2190
|
+
|
|
2191
|
+
var strongRef = /*#__PURE__*/Object.freeze({
|
|
2192
|
+
__proto__: null,
|
|
2193
|
+
isMain: isMain$9,
|
|
2194
|
+
validateMain: validateMain$9
|
|
2195
|
+
});
|
|
2196
|
+
|
|
2197
|
+
const is$typed$9 = is$typed$f, validate$9 = validate$f;
|
|
2198
|
+
const id$9 = 'org.hypercerts.claim.activity';
|
|
2199
|
+
const hashMain$8 = 'main';
|
|
2200
|
+
function isMain$8(v) {
|
|
2201
|
+
return is$typed$9(v, id$9, hashMain$8);
|
|
2202
|
+
}
|
|
2203
|
+
function validateMain$8(v) {
|
|
2204
|
+
return validate$9(v, id$9, hashMain$8, true);
|
|
2205
|
+
}
|
|
2206
|
+
const hashWorkScope = 'workScope';
|
|
2207
|
+
function isWorkScope(v) {
|
|
2208
|
+
return is$typed$9(v, id$9, hashWorkScope);
|
|
2209
|
+
}
|
|
2210
|
+
function validateWorkScope(v) {
|
|
2211
|
+
return validate$9(v, id$9, hashWorkScope);
|
|
2212
|
+
}
|
|
2213
|
+
const hashActivityWeight = 'activityWeight';
|
|
2214
|
+
function isActivityWeight(v) {
|
|
2215
|
+
return is$typed$9(v, id$9, hashActivityWeight);
|
|
2216
|
+
}
|
|
2217
|
+
function validateActivityWeight(v) {
|
|
2218
|
+
return validate$9(v, id$9, hashActivityWeight);
|
|
2219
|
+
}
|
|
2220
|
+
|
|
2221
|
+
var activity = /*#__PURE__*/Object.freeze({
|
|
2222
|
+
__proto__: null,
|
|
2223
|
+
isActivityWeight: isActivityWeight,
|
|
2224
|
+
isMain: isMain$8,
|
|
2225
|
+
isRecord: isMain$8,
|
|
2226
|
+
isWorkScope: isWorkScope,
|
|
2227
|
+
validateActivityWeight: validateActivityWeight,
|
|
2228
|
+
validateMain: validateMain$8,
|
|
2229
|
+
validateRecord: validateMain$8,
|
|
2230
|
+
validateWorkScope: validateWorkScope
|
|
2231
|
+
});
|
|
2232
|
+
|
|
2233
|
+
const is$typed$8 = is$typed$f, validate$8 = validate$f;
|
|
2234
|
+
const id$8 = 'org.hypercerts.claim.collection';
|
|
2235
|
+
const hashMain$7 = 'main';
|
|
2236
|
+
function isMain$7(v) {
|
|
2237
|
+
return is$typed$8(v, id$8, hashMain$7);
|
|
2238
|
+
}
|
|
2239
|
+
function validateMain$7(v) {
|
|
2240
|
+
return validate$8(v, id$8, hashMain$7, true);
|
|
2241
|
+
}
|
|
2242
|
+
|
|
2243
|
+
var collection = /*#__PURE__*/Object.freeze({
|
|
2244
|
+
__proto__: null,
|
|
2245
|
+
isMain: isMain$7,
|
|
2246
|
+
isRecord: isMain$7,
|
|
2247
|
+
validateMain: validateMain$7,
|
|
2248
|
+
validateRecord: validateMain$7
|
|
2249
|
+
});
|
|
2250
|
+
|
|
2251
|
+
const is$typed$7 = is$typed$f, validate$7 = validate$f;
|
|
2252
|
+
const id$7 = 'org.hypercerts.claim.contribution';
|
|
2253
|
+
const hashMain$6 = 'main';
|
|
2254
|
+
function isMain$6(v) {
|
|
2255
|
+
return is$typed$7(v, id$7, hashMain$6);
|
|
2256
|
+
}
|
|
2257
|
+
function validateMain$6(v) {
|
|
2258
|
+
return validate$7(v, id$7, hashMain$6, true);
|
|
2259
|
+
}
|
|
2260
|
+
|
|
2261
|
+
var contribution = /*#__PURE__*/Object.freeze({
|
|
2262
|
+
__proto__: null,
|
|
2263
|
+
isMain: isMain$6,
|
|
2264
|
+
isRecord: isMain$6,
|
|
2265
|
+
validateMain: validateMain$6,
|
|
2266
|
+
validateRecord: validateMain$6
|
|
2267
|
+
});
|
|
2268
|
+
|
|
2269
|
+
const is$typed$6 = is$typed$f, validate$6 = validate$f;
|
|
2270
|
+
const id$6 = 'org.hypercerts.claim.evaluation';
|
|
2271
|
+
const hashScore = 'score';
|
|
2272
|
+
function isScore(v) {
|
|
2273
|
+
return is$typed$6(v, id$6, hashScore);
|
|
2274
|
+
}
|
|
2275
|
+
function validateScore(v) {
|
|
2276
|
+
return validate$6(v, id$6, hashScore);
|
|
2277
|
+
}
|
|
2278
|
+
const hashMain$5 = 'main';
|
|
2279
|
+
function isMain$5(v) {
|
|
2280
|
+
return is$typed$6(v, id$6, hashMain$5);
|
|
2281
|
+
}
|
|
2282
|
+
function validateMain$5(v) {
|
|
2283
|
+
return validate$6(v, id$6, hashMain$5, true);
|
|
2284
|
+
}
|
|
2285
|
+
|
|
2286
|
+
var evaluation = /*#__PURE__*/Object.freeze({
|
|
2287
|
+
__proto__: null,
|
|
2288
|
+
isMain: isMain$5,
|
|
2289
|
+
isRecord: isMain$5,
|
|
2290
|
+
isScore: isScore,
|
|
2291
|
+
validateMain: validateMain$5,
|
|
2292
|
+
validateRecord: validateMain$5,
|
|
2293
|
+
validateScore: validateScore
|
|
2294
|
+
});
|
|
2295
|
+
|
|
2296
|
+
const is$typed$5 = is$typed$f, validate$5 = validate$f;
|
|
2297
|
+
const id$5 = 'org.hypercerts.claim.evidence';
|
|
2298
|
+
const hashMain$4 = 'main';
|
|
2299
|
+
function isMain$4(v) {
|
|
2300
|
+
return is$typed$5(v, id$5, hashMain$4);
|
|
2301
|
+
}
|
|
2302
|
+
function validateMain$4(v) {
|
|
2303
|
+
return validate$5(v, id$5, hashMain$4, true);
|
|
2304
|
+
}
|
|
2305
|
+
|
|
2306
|
+
var evidence = /*#__PURE__*/Object.freeze({
|
|
2307
|
+
__proto__: null,
|
|
2308
|
+
isMain: isMain$4,
|
|
2309
|
+
isRecord: isMain$4,
|
|
2310
|
+
validateMain: validateMain$4,
|
|
2311
|
+
validateRecord: validateMain$4
|
|
2312
|
+
});
|
|
2313
|
+
|
|
2314
|
+
const is$typed$4 = is$typed$f, validate$4 = validate$f;
|
|
2315
|
+
const id$4 = 'org.hypercerts.claim.measurement';
|
|
2316
|
+
const hashMain$3 = 'main';
|
|
2317
|
+
function isMain$3(v) {
|
|
2318
|
+
return is$typed$4(v, id$4, hashMain$3);
|
|
2319
|
+
}
|
|
2320
|
+
function validateMain$3(v) {
|
|
2321
|
+
return validate$4(v, id$4, hashMain$3, true);
|
|
2322
|
+
}
|
|
2323
|
+
|
|
2324
|
+
var measurement = /*#__PURE__*/Object.freeze({
|
|
2325
|
+
__proto__: null,
|
|
2326
|
+
isMain: isMain$3,
|
|
2327
|
+
isRecord: isMain$3,
|
|
2328
|
+
validateMain: validateMain$3,
|
|
2329
|
+
validateRecord: validateMain$3
|
|
2330
|
+
});
|
|
2331
|
+
|
|
2332
|
+
const is$typed$3 = is$typed$f, validate$3 = validate$f;
|
|
2333
|
+
const id$3 = 'org.hypercerts.claim.project';
|
|
2334
|
+
const hashMain$2 = 'main';
|
|
2335
|
+
function isMain$2(v) {
|
|
2336
|
+
return is$typed$3(v, id$3, hashMain$2);
|
|
2337
|
+
}
|
|
2338
|
+
function validateMain$2(v) {
|
|
2339
|
+
return validate$3(v, id$3, hashMain$2, true);
|
|
2340
|
+
}
|
|
2341
|
+
|
|
2342
|
+
var project = /*#__PURE__*/Object.freeze({
|
|
2343
|
+
__proto__: null,
|
|
2344
|
+
isMain: isMain$2,
|
|
2345
|
+
isRecord: isMain$2,
|
|
2346
|
+
validateMain: validateMain$2,
|
|
2347
|
+
validateRecord: validateMain$2
|
|
2348
|
+
});
|
|
2349
|
+
|
|
2350
|
+
const is$typed$2 = is$typed$f, validate$2 = validate$f;
|
|
2351
|
+
const id$2 = 'org.hypercerts.claim.rights';
|
|
2352
|
+
const hashMain$1 = 'main';
|
|
2353
|
+
function isMain$1(v) {
|
|
2354
|
+
return is$typed$2(v, id$2, hashMain$1);
|
|
2355
|
+
}
|
|
2356
|
+
function validateMain$1(v) {
|
|
2357
|
+
return validate$2(v, id$2, hashMain$1, true);
|
|
2358
|
+
}
|
|
2359
|
+
|
|
2360
|
+
var rights = /*#__PURE__*/Object.freeze({
|
|
2361
|
+
__proto__: null,
|
|
2362
|
+
isMain: isMain$1,
|
|
2363
|
+
isRecord: isMain$1,
|
|
2364
|
+
validateMain: validateMain$1,
|
|
2365
|
+
validateRecord: validateMain$1
|
|
2366
|
+
});
|
|
2367
|
+
|
|
2368
|
+
const is$typed$1 = is$typed$f, validate$1 = validate$f;
|
|
2369
|
+
const id$1 = 'org.hypercerts.defs';
|
|
2370
|
+
const hashUri = 'uri';
|
|
2371
|
+
function isUri(v) {
|
|
2372
|
+
return is$typed$1(v, id$1, hashUri);
|
|
2373
|
+
}
|
|
2374
|
+
function validateUri(v) {
|
|
2375
|
+
return validate$1(v, id$1, hashUri);
|
|
2376
|
+
}
|
|
2377
|
+
const hashSmallBlob = 'smallBlob';
|
|
2378
|
+
function isSmallBlob(v) {
|
|
2379
|
+
return is$typed$1(v, id$1, hashSmallBlob);
|
|
2380
|
+
}
|
|
2381
|
+
function validateSmallBlob(v) {
|
|
2382
|
+
return validate$1(v, id$1, hashSmallBlob);
|
|
2383
|
+
}
|
|
2384
|
+
const hashLargeBlob = 'largeBlob';
|
|
2385
|
+
function isLargeBlob(v) {
|
|
2386
|
+
return is$typed$1(v, id$1, hashLargeBlob);
|
|
2387
|
+
}
|
|
2388
|
+
function validateLargeBlob(v) {
|
|
2389
|
+
return validate$1(v, id$1, hashLargeBlob);
|
|
2390
|
+
}
|
|
2391
|
+
const hashSmallImage = 'smallImage';
|
|
2392
|
+
function isSmallImage(v) {
|
|
2393
|
+
return is$typed$1(v, id$1, hashSmallImage);
|
|
2394
|
+
}
|
|
2395
|
+
function validateSmallImage(v) {
|
|
2396
|
+
return validate$1(v, id$1, hashSmallImage);
|
|
2397
|
+
}
|
|
2398
|
+
const hashLargeImage = 'largeImage';
|
|
2399
|
+
function isLargeImage(v) {
|
|
2400
|
+
return is$typed$1(v, id$1, hashLargeImage);
|
|
2401
|
+
}
|
|
2402
|
+
function validateLargeImage(v) {
|
|
2403
|
+
return validate$1(v, id$1, hashLargeImage);
|
|
2404
|
+
}
|
|
2405
|
+
|
|
2406
|
+
var defs = /*#__PURE__*/Object.freeze({
|
|
2407
|
+
__proto__: null,
|
|
2408
|
+
isLargeBlob: isLargeBlob,
|
|
2409
|
+
isLargeImage: isLargeImage,
|
|
2410
|
+
isSmallBlob: isSmallBlob,
|
|
2411
|
+
isSmallImage: isSmallImage,
|
|
2412
|
+
isUri: isUri,
|
|
2413
|
+
validateLargeBlob: validateLargeBlob,
|
|
2414
|
+
validateLargeImage: validateLargeImage,
|
|
2415
|
+
validateSmallBlob: validateSmallBlob,
|
|
2416
|
+
validateSmallImage: validateSmallImage,
|
|
2417
|
+
validateUri: validateUri
|
|
2418
|
+
});
|
|
2419
|
+
|
|
2420
|
+
const is$typed = is$typed$f, validate = validate$f;
|
|
2421
|
+
const id = 'org.hypercerts.funding.receipt';
|
|
2422
|
+
const hashMain = 'main';
|
|
2423
|
+
function isMain(v) {
|
|
2424
|
+
return is$typed(v, id, hashMain);
|
|
2425
|
+
}
|
|
2426
|
+
function validateMain(v) {
|
|
2427
|
+
return validate(v, id, hashMain, true);
|
|
2428
|
+
}
|
|
2429
|
+
|
|
2430
|
+
var receipt = /*#__PURE__*/Object.freeze({
|
|
2431
|
+
__proto__: null,
|
|
2432
|
+
isMain: isMain,
|
|
2433
|
+
isRecord: isMain,
|
|
2434
|
+
validateMain: validateMain,
|
|
2435
|
+
validateRecord: validateMain
|
|
2436
|
+
});
|
|
2437
|
+
|
|
2438
|
+
/**
|
|
2439
|
+
* @file Auto-generated exports for hypercert lexicons
|
|
2440
|
+
*
|
|
2441
|
+
* ⚠️ DO NOT EDIT THIS FILE MANUALLY ⚠️
|
|
2442
|
+
*
|
|
2443
|
+
* This file is automatically generated by scripts/generate-exports.js
|
|
2444
|
+
* Generated: 2026-01-02T20:37:58.264Z
|
|
2445
|
+
*
|
|
2446
|
+
* To regenerate this file, run:
|
|
2447
|
+
* npm run gen-api
|
|
2448
|
+
* or:
|
|
2449
|
+
* npm run gen-index
|
|
2450
|
+
*
|
|
2451
|
+
* ---
|
|
2452
|
+
*
|
|
2453
|
+
* Hypercert lexicon definitions for AT Protocol.
|
|
2454
|
+
*
|
|
2455
|
+
* This module exports the lexicon documents, collection names,
|
|
2456
|
+
* and generated TypeScript types for all hypercert-related record types.
|
|
2457
|
+
*
|
|
2458
|
+
* @packageDocumentation
|
|
2459
|
+
*/
|
|
2460
|
+
// Individual NSID constants
|
|
2461
|
+
const BADGE_AWARD_NSID = "app.certified.badge.award";
|
|
2462
|
+
const BADGE_DEFINITION_NSID = "app.certified.badge.definition";
|
|
2463
|
+
const BADGE_RESPONSE_NSID = "app.certified.badge.response";
|
|
2464
|
+
const CERTIFIED_DEFS_NSID = "app.certified.defs";
|
|
2465
|
+
const LOCATION_NSID = "app.certified.location";
|
|
2466
|
+
const STRONGREF_NSID = "com.atproto.repo.strongRef";
|
|
2467
|
+
const ACTIVITY_NSID = "org.hypercerts.claim.activity";
|
|
2468
|
+
const COLLECTION_NSID = "org.hypercerts.claim.collection";
|
|
2469
|
+
const CONTRIBUTION_NSID = "org.hypercerts.claim.contribution";
|
|
2470
|
+
const EVALUATION_NSID = "org.hypercerts.claim.evaluation";
|
|
2471
|
+
const EVIDENCE_NSID = "org.hypercerts.claim.evidence";
|
|
2472
|
+
const MEASUREMENT_NSID = "org.hypercerts.claim.measurement";
|
|
2473
|
+
const PROJECT_NSID = "org.hypercerts.claim.project";
|
|
2474
|
+
const RIGHTS_NSID = "org.hypercerts.claim.rights";
|
|
2475
|
+
const HYPERCERTS_DEFS_NSID = "org.hypercerts.defs";
|
|
2476
|
+
const FUNDING_RECEIPT_NSID = "org.hypercerts.funding.receipt";
|
|
2477
|
+
/**
|
|
2478
|
+
* Collection NSIDs organized by semantic record type.
|
|
2479
|
+
*
|
|
2480
|
+
* Use these constants when performing record operations to ensure
|
|
2481
|
+
* correct collection names.
|
|
2482
|
+
*/
|
|
2483
|
+
const HYPERCERTS_NSIDS = {
|
|
2484
|
+
BADGE_AWARD: BADGE_AWARD_NSID,
|
|
2485
|
+
BADGE_DEFINITION: BADGE_DEFINITION_NSID,
|
|
2486
|
+
BADGE_RESPONSE: BADGE_RESPONSE_NSID,
|
|
2487
|
+
CERTIFIED_DEFS: CERTIFIED_DEFS_NSID,
|
|
2488
|
+
LOCATION: LOCATION_NSID,
|
|
2489
|
+
STRONGREF: STRONGREF_NSID,
|
|
2490
|
+
ACTIVITY: ACTIVITY_NSID,
|
|
2491
|
+
COLLECTION: COLLECTION_NSID,
|
|
2492
|
+
CONTRIBUTION: CONTRIBUTION_NSID,
|
|
2493
|
+
EVALUATION: EVALUATION_NSID,
|
|
2494
|
+
EVIDENCE: EVIDENCE_NSID,
|
|
2495
|
+
MEASUREMENT: MEASUREMENT_NSID,
|
|
2496
|
+
PROJECT: PROJECT_NSID,
|
|
2497
|
+
RIGHTS: RIGHTS_NSID,
|
|
2498
|
+
HYPERCERTS_DEFS: HYPERCERTS_DEFS_NSID,
|
|
2499
|
+
FUNDING_RECEIPT: FUNDING_RECEIPT_NSID,
|
|
2500
|
+
};
|
|
2501
|
+
/**
|
|
2502
|
+
* Lexicon JSON objects organized by semantic record type.
|
|
2503
|
+
*/
|
|
2504
|
+
const HYPERCERTS_LEXICON_JSON = {
|
|
2505
|
+
BADGE_AWARD: BADGE_AWARD_LEXICON_JSON,
|
|
2506
|
+
BADGE_DEFINITION: BADGE_DEFINITION_LEXICON_JSON,
|
|
2507
|
+
BADGE_RESPONSE: BADGE_RESPONSE_LEXICON_JSON,
|
|
2508
|
+
CERTIFIED_DEFS: CERTIFIED_DEFS_LEXICON_JSON,
|
|
2509
|
+
LOCATION: LOCATION_LEXICON_JSON,
|
|
2510
|
+
STRONGREF: STRONGREF_LEXICON_JSON,
|
|
2511
|
+
ACTIVITY: ACTIVITY_LEXICON_JSON,
|
|
2512
|
+
COLLECTION: COLLECTION_LEXICON_JSON,
|
|
2513
|
+
CONTRIBUTION: CONTRIBUTION_LEXICON_JSON,
|
|
2514
|
+
EVALUATION: EVALUATION_LEXICON_JSON,
|
|
2515
|
+
EVIDENCE: EVIDENCE_LEXICON_JSON,
|
|
2516
|
+
MEASUREMENT: MEASUREMENT_LEXICON_JSON,
|
|
2517
|
+
PROJECT: PROJECT_LEXICON_JSON,
|
|
2518
|
+
RIGHTS: RIGHTS_LEXICON_JSON,
|
|
2519
|
+
HYPERCERTS_DEFS: HYPERCERTS_DEFS_LEXICON_JSON,
|
|
2520
|
+
FUNDING_RECEIPT: FUNDING_RECEIPT_LEXICON_JSON,
|
|
2521
|
+
};
|
|
2522
|
+
// Individual lexicon objects (from lexicons.get())
|
|
2523
|
+
const BADGE_AWARD_LEXICON_DOC = lexicons.get(BADGE_AWARD_NSID);
|
|
2524
|
+
const BADGE_DEFINITION_LEXICON_DOC = lexicons.get(BADGE_DEFINITION_NSID);
|
|
2525
|
+
const BADGE_RESPONSE_LEXICON_DOC = lexicons.get(BADGE_RESPONSE_NSID);
|
|
2526
|
+
const CERTIFIED_DEFS_LEXICON_DOC = lexicons.get(CERTIFIED_DEFS_NSID);
|
|
2527
|
+
const LOCATION_LEXICON_DOC = lexicons.get(LOCATION_NSID);
|
|
2528
|
+
const STRONGREF_LEXICON_DOC = lexicons.get(STRONGREF_NSID);
|
|
2529
|
+
const ACTIVITY_LEXICON_DOC = lexicons.get(ACTIVITY_NSID);
|
|
2530
|
+
const COLLECTION_LEXICON_DOC = lexicons.get(COLLECTION_NSID);
|
|
2531
|
+
const CONTRIBUTION_LEXICON_DOC = lexicons.get(CONTRIBUTION_NSID);
|
|
2532
|
+
const EVALUATION_LEXICON_DOC = lexicons.get(EVALUATION_NSID);
|
|
2533
|
+
const EVIDENCE_LEXICON_DOC = lexicons.get(EVIDENCE_NSID);
|
|
2534
|
+
const MEASUREMENT_LEXICON_DOC = lexicons.get(MEASUREMENT_NSID);
|
|
2535
|
+
const PROJECT_LEXICON_DOC = lexicons.get(PROJECT_NSID);
|
|
2536
|
+
const RIGHTS_LEXICON_DOC = lexicons.get(RIGHTS_NSID);
|
|
2537
|
+
const HYPERCERTS_DEFS_LEXICON_DOC = lexicons.get(HYPERCERTS_DEFS_NSID);
|
|
2538
|
+
const FUNDING_RECEIPT_LEXICON_DOC = lexicons.get(FUNDING_RECEIPT_NSID);
|
|
2539
|
+
/**
|
|
2540
|
+
* Lexicon document objects organized by semantic record type.
|
|
2541
|
+
*/
|
|
2542
|
+
const HYPERCERTS_LEXICON_DOC = {
|
|
2543
|
+
BADGE_AWARD: BADGE_AWARD_LEXICON_DOC,
|
|
2544
|
+
BADGE_DEFINITION: BADGE_DEFINITION_LEXICON_DOC,
|
|
2545
|
+
BADGE_RESPONSE: BADGE_RESPONSE_LEXICON_DOC,
|
|
2546
|
+
CERTIFIED_DEFS: CERTIFIED_DEFS_LEXICON_DOC,
|
|
2547
|
+
LOCATION: LOCATION_LEXICON_DOC,
|
|
2548
|
+
STRONGREF: STRONGREF_LEXICON_DOC,
|
|
2549
|
+
ACTIVITY: ACTIVITY_LEXICON_DOC,
|
|
2550
|
+
COLLECTION: COLLECTION_LEXICON_DOC,
|
|
2551
|
+
CONTRIBUTION: CONTRIBUTION_LEXICON_DOC,
|
|
2552
|
+
EVALUATION: EVALUATION_LEXICON_DOC,
|
|
2553
|
+
EVIDENCE: EVIDENCE_LEXICON_DOC,
|
|
2554
|
+
MEASUREMENT: MEASUREMENT_LEXICON_DOC,
|
|
2555
|
+
PROJECT: PROJECT_LEXICON_DOC,
|
|
2556
|
+
RIGHTS: RIGHTS_LEXICON_DOC,
|
|
2557
|
+
HYPERCERTS_DEFS: HYPERCERTS_DEFS_LEXICON_DOC,
|
|
2558
|
+
FUNDING_RECEIPT: FUNDING_RECEIPT_LEXICON_DOC,
|
|
2559
|
+
};
|
|
2560
|
+
|
|
2561
|
+
exports.ACTIVITY_LEXICON_DOC = ACTIVITY_LEXICON_DOC;
|
|
2562
|
+
exports.ACTIVITY_LEXICON_JSON = ACTIVITY_LEXICON_JSON;
|
|
2563
|
+
exports.ACTIVITY_NSID = ACTIVITY_NSID;
|
|
2564
|
+
exports.AppCertifiedBadgeAward = award;
|
|
2565
|
+
exports.AppCertifiedBadgeDefinition = definition;
|
|
2566
|
+
exports.AppCertifiedBadgeResponse = response;
|
|
2567
|
+
exports.AppCertifiedDefs = defs$1;
|
|
2568
|
+
exports.AppCertifiedLocation = location;
|
|
2569
|
+
exports.BADGE_AWARD_LEXICON_DOC = BADGE_AWARD_LEXICON_DOC;
|
|
2570
|
+
exports.BADGE_AWARD_LEXICON_JSON = BADGE_AWARD_LEXICON_JSON;
|
|
2571
|
+
exports.BADGE_AWARD_NSID = BADGE_AWARD_NSID;
|
|
2572
|
+
exports.BADGE_DEFINITION_LEXICON_DOC = BADGE_DEFINITION_LEXICON_DOC;
|
|
2573
|
+
exports.BADGE_DEFINITION_LEXICON_JSON = BADGE_DEFINITION_LEXICON_JSON;
|
|
2574
|
+
exports.BADGE_DEFINITION_NSID = BADGE_DEFINITION_NSID;
|
|
2575
|
+
exports.BADGE_RESPONSE_LEXICON_DOC = BADGE_RESPONSE_LEXICON_DOC;
|
|
2576
|
+
exports.BADGE_RESPONSE_LEXICON_JSON = BADGE_RESPONSE_LEXICON_JSON;
|
|
2577
|
+
exports.BADGE_RESPONSE_NSID = BADGE_RESPONSE_NSID;
|
|
2578
|
+
exports.CERTIFIED_DEFS_LEXICON_DOC = CERTIFIED_DEFS_LEXICON_DOC;
|
|
2579
|
+
exports.CERTIFIED_DEFS_LEXICON_JSON = CERTIFIED_DEFS_LEXICON_JSON;
|
|
2580
|
+
exports.CERTIFIED_DEFS_NSID = CERTIFIED_DEFS_NSID;
|
|
2581
|
+
exports.COLLECTION_LEXICON_DOC = COLLECTION_LEXICON_DOC;
|
|
2582
|
+
exports.COLLECTION_LEXICON_JSON = COLLECTION_LEXICON_JSON;
|
|
2583
|
+
exports.COLLECTION_NSID = COLLECTION_NSID;
|
|
2584
|
+
exports.CONTRIBUTION_LEXICON_DOC = CONTRIBUTION_LEXICON_DOC;
|
|
2585
|
+
exports.CONTRIBUTION_LEXICON_JSON = CONTRIBUTION_LEXICON_JSON;
|
|
2586
|
+
exports.CONTRIBUTION_NSID = CONTRIBUTION_NSID;
|
|
2587
|
+
exports.ComAtprotoRepoStrongRef = strongRef;
|
|
2588
|
+
exports.EVALUATION_LEXICON_DOC = EVALUATION_LEXICON_DOC;
|
|
2589
|
+
exports.EVALUATION_LEXICON_JSON = EVALUATION_LEXICON_JSON;
|
|
2590
|
+
exports.EVALUATION_NSID = EVALUATION_NSID;
|
|
2591
|
+
exports.EVIDENCE_LEXICON_DOC = EVIDENCE_LEXICON_DOC;
|
|
2592
|
+
exports.EVIDENCE_LEXICON_JSON = EVIDENCE_LEXICON_JSON;
|
|
2593
|
+
exports.EVIDENCE_NSID = EVIDENCE_NSID;
|
|
2594
|
+
exports.FUNDING_RECEIPT_LEXICON_DOC = FUNDING_RECEIPT_LEXICON_DOC;
|
|
2595
|
+
exports.FUNDING_RECEIPT_LEXICON_JSON = FUNDING_RECEIPT_LEXICON_JSON;
|
|
2596
|
+
exports.FUNDING_RECEIPT_NSID = FUNDING_RECEIPT_NSID;
|
|
2597
|
+
exports.HYPERCERTS_DEFS_LEXICON_DOC = HYPERCERTS_DEFS_LEXICON_DOC;
|
|
2598
|
+
exports.HYPERCERTS_DEFS_LEXICON_JSON = HYPERCERTS_DEFS_LEXICON_JSON;
|
|
2599
|
+
exports.HYPERCERTS_DEFS_NSID = HYPERCERTS_DEFS_NSID;
|
|
2600
|
+
exports.HYPERCERTS_LEXICON_DOC = HYPERCERTS_LEXICON_DOC;
|
|
2601
|
+
exports.HYPERCERTS_LEXICON_JSON = HYPERCERTS_LEXICON_JSON;
|
|
2602
|
+
exports.HYPERCERTS_NSIDS = HYPERCERTS_NSIDS;
|
|
2603
|
+
exports.HYPERCERTS_NSIDS_BY_TYPE = ids;
|
|
2604
|
+
exports.HYPERCERTS_SCHEMAS = schemas;
|
|
2605
|
+
exports.HYPERCERTS_SCHEMA_DICT = schemaDict;
|
|
2606
|
+
exports.LOCATION_LEXICON_DOC = LOCATION_LEXICON_DOC;
|
|
2607
|
+
exports.LOCATION_LEXICON_JSON = LOCATION_LEXICON_JSON;
|
|
2608
|
+
exports.LOCATION_NSID = LOCATION_NSID;
|
|
2609
|
+
exports.MEASUREMENT_LEXICON_DOC = MEASUREMENT_LEXICON_DOC;
|
|
2610
|
+
exports.MEASUREMENT_LEXICON_JSON = MEASUREMENT_LEXICON_JSON;
|
|
2611
|
+
exports.MEASUREMENT_NSID = MEASUREMENT_NSID;
|
|
2612
|
+
exports.OrgHypercertsClaimActivity = activity;
|
|
2613
|
+
exports.OrgHypercertsClaimCollection = collection;
|
|
2614
|
+
exports.OrgHypercertsClaimContribution = contribution;
|
|
2615
|
+
exports.OrgHypercertsClaimEvaluation = evaluation;
|
|
2616
|
+
exports.OrgHypercertsClaimEvidence = evidence;
|
|
2617
|
+
exports.OrgHypercertsClaimMeasurement = measurement;
|
|
2618
|
+
exports.OrgHypercertsClaimProject = project;
|
|
2619
|
+
exports.OrgHypercertsClaimRights = rights;
|
|
2620
|
+
exports.OrgHypercertsDefs = defs;
|
|
2621
|
+
exports.OrgHypercertsFundingReceipt = receipt;
|
|
2622
|
+
exports.PROJECT_LEXICON_DOC = PROJECT_LEXICON_DOC;
|
|
2623
|
+
exports.PROJECT_LEXICON_JSON = PROJECT_LEXICON_JSON;
|
|
2624
|
+
exports.PROJECT_NSID = PROJECT_NSID;
|
|
2625
|
+
exports.RIGHTS_LEXICON_DOC = RIGHTS_LEXICON_DOC;
|
|
2626
|
+
exports.RIGHTS_LEXICON_JSON = RIGHTS_LEXICON_JSON;
|
|
2627
|
+
exports.RIGHTS_NSID = RIGHTS_NSID;
|
|
2628
|
+
exports.STRONGREF_LEXICON_DOC = STRONGREF_LEXICON_DOC;
|
|
2629
|
+
exports.STRONGREF_LEXICON_JSON = STRONGREF_LEXICON_JSON;
|
|
2630
|
+
exports.STRONGREF_NSID = STRONGREF_NSID;
|
|
2631
|
+
exports.asPredicate = asPredicate;
|
|
2632
|
+
exports.is$typed = is$typed$f;
|
|
2633
|
+
exports.lexicons = lexicons;
|
|
2634
|
+
exports.maybe$typed = maybe$typed;
|
|
2635
|
+
exports.validate = validate$f;
|
|
2636
|
+
//# sourceMappingURL=index.cjs.map
|