@learncard/credential-library 2.0.3 → 2.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/README.md +2 -1
  2. package/dist/bundles/index.d.ts +5 -0
  3. package/dist/bundles/index.d.ts.map +1 -0
  4. package/dist/bundles/student.d.ts +3 -0
  5. package/dist/bundles/student.d.ts.map +1 -0
  6. package/dist/bundles/types.d.ts +24 -0
  7. package/dist/bundles/types.d.ts.map +1 -0
  8. package/dist/credential-library.cjs.development.js +10865 -611
  9. package/dist/credential-library.cjs.development.js.map +4 -4
  10. package/dist/credential-library.cjs.production.min.js +11 -1
  11. package/dist/credential-library.cjs.production.min.js.map +4 -4
  12. package/dist/credential-library.esm.js +10854 -598
  13. package/dist/credential-library.esm.js.map +4 -4
  14. package/dist/fixtures/clr/achievement-id-associations.d.ts +3 -0
  15. package/dist/fixtures/clr/achievement-id-associations.d.ts.map +1 -0
  16. package/dist/fixtures/clr/employment-record.d.ts +8 -0
  17. package/dist/fixtures/clr/employment-record.d.ts.map +1 -0
  18. package/dist/fixtures/clr/licensing-regulatory-record.d.ts +8 -0
  19. package/dist/fixtures/clr/licensing-regulatory-record.d.ts.map +1 -0
  20. package/dist/fixtures/clr/military-training-record.d.ts +8 -0
  21. package/dist/fixtures/clr/military-training-record.d.ts.map +1 -0
  22. package/dist/fixtures/clr/mixed-career-record.d.ts +8 -0
  23. package/dist/fixtures/clr/mixed-career-record.d.ts.map +1 -0
  24. package/dist/fixtures/clr/professional-organization-record.d.ts +8 -0
  25. package/dist/fixtures/clr/professional-organization-record.d.ts.map +1 -0
  26. package/dist/fixtures/clr/provisional-transcript.d.ts +7 -1
  27. package/dist/fixtures/clr/provisional-transcript.d.ts.map +1 -1
  28. package/dist/fixtures/clr/student-official-academic-transcript.d.ts +3 -0
  29. package/dist/fixtures/clr/student-official-academic-transcript.d.ts.map +1 -0
  30. package/dist/fixtures/clr/training-provider-record.d.ts +8 -0
  31. package/dist/fixtures/clr/training-provider-record.d.ts.map +1 -0
  32. package/dist/fixtures/index.d.ts +12 -1
  33. package/dist/fixtures/index.d.ts.map +1 -1
  34. package/dist/fixtures/obv3/rubric-aligned-badge.d.ts +3 -0
  35. package/dist/fixtures/obv3/rubric-aligned-badge.d.ts.map +1 -0
  36. package/dist/fixtures/obv3/student-additional-credentials.d.ts +3 -0
  37. package/dist/fixtures/obv3/student-additional-credentials.d.ts.map +1 -0
  38. package/dist/fixtures/obv3/student-sample-badges.d.ts +586 -0
  39. package/dist/fixtures/obv3/student-sample-badges.d.ts.map +1 -0
  40. package/dist/index.d.ts +1 -0
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/prepare.d.ts +0 -18
  43. package/dist/prepare.d.ts.map +1 -1
  44. package/package.json +6 -6
  45. package/src/__tests__/bundles.test.ts +234 -0
  46. package/src/__tests__/clr-non-academic.test.ts +220 -0
  47. package/src/__tests__/registry.test.ts +74 -0
  48. package/src/bundles/index.ts +19 -0
  49. package/src/bundles/student.ts +251 -0
  50. package/src/bundles/types.ts +25 -0
  51. package/src/fixtures/clr/README.md +142 -0
  52. package/src/fixtures/clr/achievement-id-associations.ts +342 -0
  53. package/src/fixtures/clr/employment-record.ts +487 -0
  54. package/src/fixtures/clr/licensing-regulatory-record.ts +388 -0
  55. package/src/fixtures/clr/military-training-record.ts +468 -0
  56. package/src/fixtures/clr/mixed-career-record.ts +814 -0
  57. package/src/fixtures/clr/professional-organization-record.ts +403 -0
  58. package/src/fixtures/clr/provisional-transcript.ts +16 -3
  59. package/src/fixtures/clr/student-official-academic-transcript.ts +3202 -0
  60. package/src/fixtures/clr/training-provider-record.ts +510 -0
  61. package/src/fixtures/index.ts +44 -0
  62. package/src/fixtures/obv3/rubric-aligned-badge.ts +105 -0
  63. package/src/fixtures/obv3/student-additional-credentials.ts +3912 -0
  64. package/src/fixtures/obv3/student-sample-badges.ts +424 -0
  65. package/src/index.ts +2 -0
  66. package/src/prepare.ts +70 -11
  67. package/dist/__tests__/docs-json.test.d.ts +0 -2
  68. package/dist/__tests__/docs-json.test.d.ts.map +0 -1
  69. package/dist/__tests__/issuance.test.d.ts +0 -2
  70. package/dist/__tests__/issuance.test.d.ts.map +0 -1
  71. package/dist/__tests__/registry.test.d.ts +0 -2
  72. package/dist/__tests__/registry.test.d.ts.map +0 -1
  73. package/dist/__tests__/sd-jwt-vc.test.d.ts +0 -2
  74. package/dist/__tests__/sd-jwt-vc.test.d.ts.map +0 -1
@@ -0,0 +1,510 @@
1
+ import type { CredentialFixture } from '../../types';
2
+
3
+ /**
4
+ * LC-2184: synthetic, unsigned CLR display/issuance template.
5
+ * Both the outer record and embedded achievements intentionally have no proof.
6
+ * Sign/rebind children before the outer CLR for cryptographic verification tests.
7
+ */
8
+ export const clrTrainingProviderRecord: CredentialFixture = {
9
+ id: 'clr/training-provider-record',
10
+ name: 'Training & Development Record — Cedar Technical Training',
11
+ description:
12
+ 'Explores non-credit training, explicit participation hours, score thresholds, completion certificates, and ongoing participation without GPA or academic terms. Unsigned display/issuance template; child proofs must be issued separately for a fully verifiable CLR.',
13
+ spec: 'clr-v2',
14
+ profile: 'learner-record',
15
+ features: ['nested-credentials', 'associations', 'results', 'evidence', 'alignment', 'source'],
16
+ source: 'synthetic',
17
+ signed: false,
18
+ validity: 'valid',
19
+ tags: [
20
+ 'lc-2184',
21
+ 'non-academic',
22
+ 'synthetic',
23
+ 'training-provider',
24
+ 'training',
25
+ 'hours',
26
+ 'completion',
27
+ 'in-progress',
28
+ ],
29
+ credential: {
30
+ '@context': [
31
+ 'https://www.w3.org/ns/credentials/v2',
32
+ 'https://purl.imsglobal.org/spec/clr/v2p0/context.json',
33
+ 'https://purl.imsglobal.org/spec/ob/v3p0/context-3.0.3.json',
34
+ {
35
+ partial: {
36
+ '@id': 'https://purl.imsglobal.org/spec/vc/clr/vocab.html#partial',
37
+ '@type': 'http://www.w3.org/2001/XMLSchema#boolean',
38
+ },
39
+ identifier: {
40
+ '@id': 'https://purl.imsglobal.org/spec/vc/ob/vocab.html#identifier',
41
+ '@container': '@set',
42
+ },
43
+ },
44
+ ],
45
+ id: 'urn:uuid:c474810b-5e8d-5e3d-873e-def68a09f6bb',
46
+ type: ['VerifiableCredential', 'ClrCredential'],
47
+ name: 'Training & Development Record — Cedar Technical Training',
48
+ description:
49
+ 'Synthetic demonstration record as of September 1, 2026. Explores non-credit training, explicit participation hours, score thresholds, completion certificates, and ongoing participation without GPA or academic terms.',
50
+ issuer: {
51
+ id: 'did:example:lc2184-cedar-training',
52
+ type: ['Profile'],
53
+ name: 'Cedar Technical Training',
54
+ url: 'https://cedar-training.example',
55
+ description: 'Fictional organization used only for LearnCard display tests.',
56
+ },
57
+ validFrom: '2026-09-01T12:00:00Z',
58
+ partial: true,
59
+ credentialSubject: {
60
+ id: 'did:example:lc2184-alex-morgan',
61
+ type: ['ClrSubject'],
62
+ identifier: [
63
+ {
64
+ type: 'IdentityObject',
65
+ hashed: false,
66
+ identityType: 'name',
67
+ identityHash: 'Alex Morgan (Synthetic)',
68
+ },
69
+ ],
70
+ verifiableCredential: [
71
+ {
72
+ '@context': [
73
+ 'https://www.w3.org/ns/credentials/v2',
74
+ 'https://purl.imsglobal.org/spec/ob/v3p0/context-3.0.3.json',
75
+ ],
76
+ id: 'urn:uuid:ce28f882-7ccf-5433-b38b-547276c159ee',
77
+ type: ['VerifiableCredential', 'AchievementCredential'],
78
+ name: 'Applied Data Operations Workshop',
79
+ description:
80
+ 'A workplace training course with participation hours rather than academic credits.',
81
+ issuer: {
82
+ id: 'did:example:lc2184-cedar-training',
83
+ type: ['Profile'],
84
+ name: 'Cedar Technical Training',
85
+ url: 'https://cedar-training.example',
86
+ description:
87
+ 'Fictional organization used only for LearnCard display tests.',
88
+ },
89
+ validFrom: '2026-03-16T12:00:00Z',
90
+ credentialSubject: {
91
+ id: 'did:example:lc2184-alex-morgan',
92
+ type: ['AchievementSubject'],
93
+ achievement: {
94
+ id: 'urn:uuid:248e9bf0-ac3d-5d64-873f-5f26f3cb8edc',
95
+ type: ['Achievement'],
96
+ achievementType: 'Course',
97
+ name: 'Applied Data Operations Workshop',
98
+ description:
99
+ 'A workplace training course with participation hours rather than academic credits.',
100
+ criteria: {
101
+ narrative:
102
+ 'Attend at least 32 instructor-led hours and complete the practical exercises.',
103
+ },
104
+ creator: {
105
+ id: 'did:example:lc2184-cedar-standards',
106
+ type: ['Profile'],
107
+ name: 'Cedar Skills Council',
108
+ url: 'https://cedar-standards.example',
109
+ description:
110
+ 'Fictional organization used only for LearnCard display tests.',
111
+ },
112
+ humanCode: 'SYN-TRAINING-COURSE',
113
+ version: '1.0',
114
+ inLanguage: 'en',
115
+ tag: ['synthetic', 'lc-2184'],
116
+ resultDescription: [
117
+ {
118
+ id: 'urn:uuid:65a6a2c1-8ea3-58f4-b66c-a09b8ec02ffb',
119
+ type: ['ResultDescription'],
120
+ name: 'Instructor-led participation (hours)',
121
+ resultType: 'RawScore',
122
+ valueMin: '0',
123
+ valueMax: '40',
124
+ requiredValue: '32',
125
+ },
126
+ {
127
+ id: 'urn:uuid:3ff5b035-6745-51fa-9160-8c7c13f931cf',
128
+ type: ['ResultDescription'],
129
+ name: 'Training completion',
130
+ resultType: 'Status',
131
+ },
132
+ ],
133
+ alignment: [
134
+ {
135
+ type: ['Alignment'],
136
+ targetName: 'Operates a data workflow',
137
+ targetCode: 'DATA-101',
138
+ targetFramework: 'Synthetic Workplace Capability Framework',
139
+ targetUrl: 'https://skills.example/framework/data-101',
140
+ targetDescription:
141
+ 'Fictional framework node for testing explicit alignment display; not a real qualification equivalence.',
142
+ targetType: 'CFItem',
143
+ },
144
+ ],
145
+ fieldOfStudy: 'Data operations',
146
+ specialization: 'Operational quality',
147
+ },
148
+ activityStartDate: '2026-03-02T09:00:00Z',
149
+ activityEndDate: '2026-03-13T17:00:00Z',
150
+ role: 'Participant',
151
+ source: {
152
+ id: 'did:example:lc2184-cedar-training',
153
+ type: ['Profile'],
154
+ name: 'Cedar Technical Training',
155
+ url: 'https://cedar-training.example',
156
+ description:
157
+ 'Fictional organization used only for LearnCard display tests.',
158
+ },
159
+ result: [
160
+ {
161
+ type: ['Result'],
162
+ resultDescription: 'urn:uuid:3ff5b035-6745-51fa-9160-8c7c13f931cf',
163
+ status: 'Completed',
164
+ },
165
+ {
166
+ type: ['Result'],
167
+ resultDescription: 'urn:uuid:65a6a2c1-8ea3-58f4-b66c-a09b8ec02ffb',
168
+ value: '36',
169
+ },
170
+ ],
171
+ },
172
+ awardedDate: '2026-03-16T12:00:00Z',
173
+ evidence: [
174
+ {
175
+ type: ['Evidence'],
176
+ name: 'Participation and exercise log',
177
+ description: 'Synthetic assessment evidence.',
178
+ narrative:
179
+ 'The fictional learner attended 36 hours and completed six practical exercises.',
180
+ genre: 'Assessment record',
181
+ audience: 'Learner and authorized reviewer',
182
+ },
183
+ ],
184
+ },
185
+ {
186
+ '@context': [
187
+ 'https://www.w3.org/ns/credentials/v2',
188
+ 'https://purl.imsglobal.org/spec/ob/v3p0/context-3.0.3.json',
189
+ ],
190
+ id: 'urn:uuid:06a114b2-fee9-5093-8a7f-d6c2ce138b49',
191
+ type: ['VerifiableCredential', 'AchievementCredential'],
192
+ name: 'Data Workflow Practical Assessment',
193
+ description:
194
+ 'An assessment with the achieved score, its scale, and an explicit required score.',
195
+ issuer: {
196
+ id: 'did:example:lc2184-cedar-training',
197
+ type: ['Profile'],
198
+ name: 'Cedar Technical Training',
199
+ url: 'https://cedar-training.example',
200
+ description:
201
+ 'Fictional organization used only for LearnCard display tests.',
202
+ },
203
+ validFrom: '2026-03-16T12:00:00Z',
204
+ credentialSubject: {
205
+ id: 'did:example:lc2184-alex-morgan',
206
+ type: ['AchievementSubject'],
207
+ achievement: {
208
+ id: 'urn:uuid:c66210ee-6afa-59e6-91c1-750cfdc644f0',
209
+ type: ['Achievement'],
210
+ achievementType: 'Assessment',
211
+ name: 'Data Workflow Practical Assessment',
212
+ description:
213
+ 'An assessment with the achieved score, its scale, and an explicit required score.',
214
+ criteria: {
215
+ narrative:
216
+ 'Score at least 75 out of 100 in the practical assessment.',
217
+ },
218
+ creator: {
219
+ id: 'did:example:lc2184-cedar-standards',
220
+ type: ['Profile'],
221
+ name: 'Cedar Skills Council',
222
+ url: 'https://cedar-standards.example',
223
+ description:
224
+ 'Fictional organization used only for LearnCard display tests.',
225
+ },
226
+ humanCode: 'SYN-TRAINING-ASSESSMENT',
227
+ version: '1.0',
228
+ inLanguage: 'en',
229
+ tag: ['synthetic', 'lc-2184'],
230
+ resultDescription: [
231
+ {
232
+ id: 'urn:uuid:d2f3bc37-90bf-5dde-8e90-043c37f53ebf',
233
+ type: ['ResultDescription'],
234
+ name: 'Practical assessment score',
235
+ resultType: 'RawScore',
236
+ valueMin: '0',
237
+ valueMax: '100',
238
+ requiredValue: '75',
239
+ },
240
+ {
241
+ id: 'urn:uuid:38317465-32de-5e76-86bc-063024cf30d2',
242
+ type: ['ResultDescription'],
243
+ name: 'Assessment completion',
244
+ resultType: 'Status',
245
+ },
246
+ ],
247
+ alignment: [
248
+ {
249
+ type: ['Alignment'],
250
+ targetName: 'Checks workflow quality',
251
+ targetCode: 'DATA-102',
252
+ targetFramework: 'Synthetic Workplace Capability Framework',
253
+ targetUrl: 'https://skills.example/framework/data-102',
254
+ targetDescription:
255
+ 'Fictional framework node for testing explicit alignment display; not a real qualification equivalence.',
256
+ targetType: 'CFItem',
257
+ },
258
+ ],
259
+ },
260
+ activityStartDate: '2026-03-13T13:00:00Z',
261
+ activityEndDate: '2026-03-13T16:00:00Z',
262
+ role: 'Candidate',
263
+ source: {
264
+ id: 'did:example:lc2184-harbor-assessment',
265
+ type: ['Profile'],
266
+ name: 'Harbor Systems — Assessment Team',
267
+ url: 'https://harbor-assessment.example',
268
+ description:
269
+ 'Fictional organization used only for LearnCard display tests.',
270
+ },
271
+ result: [
272
+ {
273
+ type: ['Result'],
274
+ resultDescription: 'urn:uuid:d2f3bc37-90bf-5dde-8e90-043c37f53ebf',
275
+ value: '86',
276
+ },
277
+ {
278
+ type: ['Result'],
279
+ resultDescription: 'urn:uuid:38317465-32de-5e76-86bc-063024cf30d2',
280
+ status: 'Completed',
281
+ },
282
+ ],
283
+ },
284
+ awardedDate: '2026-03-16T12:00:00Z',
285
+ evidence: [
286
+ {
287
+ type: ['Evidence'],
288
+ name: 'Assessor observation',
289
+ description: 'Synthetic assessment evidence.',
290
+ narrative:
291
+ 'The assessor awarded 86 of 100 possible points on the practical exercise.',
292
+ genre: 'Assessment record',
293
+ audience: 'Learner and authorized reviewer',
294
+ },
295
+ ],
296
+ },
297
+ {
298
+ '@context': [
299
+ 'https://www.w3.org/ns/credentials/v2',
300
+ 'https://purl.imsglobal.org/spec/ob/v3p0/context-3.0.3.json',
301
+ ],
302
+ id: 'urn:uuid:1b82d22c-071c-59cf-83e5-23427750f517',
303
+ type: ['VerifiableCredential', 'AchievementCredential'],
304
+ name: 'Applied Data Operations Completion',
305
+ description:
306
+ 'A certificate of completion linking course participation and assessment.',
307
+ issuer: {
308
+ id: 'did:example:lc2184-cedar-training',
309
+ type: ['Profile'],
310
+ name: 'Cedar Technical Training',
311
+ url: 'https://cedar-training.example',
312
+ description:
313
+ 'Fictional organization used only for LearnCard display tests.',
314
+ },
315
+ validFrom: '2026-03-16T12:00:00Z',
316
+ credentialSubject: {
317
+ id: 'did:example:lc2184-alex-morgan',
318
+ type: ['AchievementSubject'],
319
+ achievement: {
320
+ id: 'urn:uuid:f0fd8b1a-13c2-5c1b-8cb6-eaa12c893e8f',
321
+ type: ['Achievement'],
322
+ achievementType: 'CertificateOfCompletion',
323
+ name: 'Applied Data Operations Completion',
324
+ description:
325
+ 'A certificate of completion linking course participation and assessment.',
326
+ criteria: {
327
+ narrative: 'Complete the workshop and practical assessment.',
328
+ },
329
+ creator: {
330
+ id: 'did:example:lc2184-cedar-training',
331
+ type: ['Profile'],
332
+ name: 'Cedar Technical Training',
333
+ url: 'https://cedar-training.example',
334
+ description:
335
+ 'Fictional organization used only for LearnCard display tests.',
336
+ },
337
+ humanCode: 'SYN-TRAINING-COMPLETION',
338
+ version: '1.0',
339
+ inLanguage: 'en',
340
+ tag: ['synthetic', 'lc-2184'],
341
+ resultDescription: [
342
+ {
343
+ id: 'urn:uuid:daac2cb1-3724-514c-845f-320d57c33be8',
344
+ type: ['ResultDescription'],
345
+ name: 'Completion status',
346
+ resultType: 'Status',
347
+ },
348
+ ],
349
+ alignment: [
350
+ {
351
+ type: ['Alignment'],
352
+ targetName: 'Operates a data workflow',
353
+ targetCode: 'DATA-101',
354
+ targetFramework: 'Synthetic Workplace Capability Framework',
355
+ targetUrl: 'https://skills.example/framework/data-101',
356
+ targetDescription:
357
+ 'Fictional framework node for testing explicit alignment display; not a real qualification equivalence.',
358
+ targetType: 'CFItem',
359
+ },
360
+ ],
361
+ },
362
+ source: {
363
+ id: 'did:example:lc2184-cedar-training',
364
+ type: ['Profile'],
365
+ name: 'Cedar Technical Training',
366
+ url: 'https://cedar-training.example',
367
+ description:
368
+ 'Fictional organization used only for LearnCard display tests.',
369
+ },
370
+ result: [
371
+ {
372
+ type: ['Result'],
373
+ resultDescription: 'urn:uuid:daac2cb1-3724-514c-845f-320d57c33be8',
374
+ status: 'Completed',
375
+ },
376
+ ],
377
+ },
378
+ awardedDate: '2026-03-16T12:00:00Z',
379
+ evidence: [
380
+ {
381
+ type: ['Evidence'],
382
+ name: 'Completion decision',
383
+ description: 'Synthetic assessment evidence.',
384
+ narrative:
385
+ 'The training provider recorded workshop and assessment completion.',
386
+ genre: 'Assessment record',
387
+ audience: 'Learner and authorized reviewer',
388
+ },
389
+ ],
390
+ },
391
+ {
392
+ '@context': [
393
+ 'https://www.w3.org/ns/credentials/v2',
394
+ 'https://purl.imsglobal.org/spec/ob/v3p0/context-3.0.3.json',
395
+ ],
396
+ id: 'urn:uuid:2bd7ed50-58d3-5a24-9a7e-778d26cb4094',
397
+ type: ['VerifiableCredential', 'AchievementCredential'],
398
+ name: 'Advanced Data Operations Practice',
399
+ description:
400
+ 'An in-progress program with a start date and intentionally no end date.',
401
+ issuer: {
402
+ id: 'did:example:lc2184-cedar-training',
403
+ type: ['Profile'],
404
+ name: 'Cedar Technical Training',
405
+ url: 'https://cedar-training.example',
406
+ description:
407
+ 'Fictional organization used only for LearnCard display tests.',
408
+ },
409
+ validFrom: '2026-09-01T12:00:00Z',
410
+ credentialSubject: {
411
+ id: 'did:example:lc2184-alex-morgan',
412
+ type: ['AchievementSubject'],
413
+ achievement: {
414
+ id: 'urn:uuid:9c523c2f-d87d-582e-909f-c47b3763227a',
415
+ type: ['Achievement'],
416
+ achievementType: 'LearningProgram',
417
+ name: 'Advanced Data Operations Practice',
418
+ description:
419
+ 'An in-progress program with a start date and intentionally no end date.',
420
+ criteria: {
421
+ narrative:
422
+ 'Complete the advanced practice activities and a final assessment.',
423
+ },
424
+ creator: {
425
+ id: 'did:example:lc2184-cedar-training',
426
+ type: ['Profile'],
427
+ name: 'Cedar Technical Training',
428
+ url: 'https://cedar-training.example',
429
+ description:
430
+ 'Fictional organization used only for LearnCard display tests.',
431
+ },
432
+ humanCode: 'SYN-TRAINING-PROGRESS',
433
+ version: '1.0',
434
+ inLanguage: 'en',
435
+ tag: ['synthetic', 'lc-2184'],
436
+ resultDescription: [
437
+ {
438
+ id: 'urn:uuid:f019000e-b53c-5ce7-bc8a-0ad81106512a',
439
+ type: ['ResultDescription'],
440
+ name: 'Participation status',
441
+ resultType: 'Status',
442
+ },
443
+ ],
444
+ alignment: [
445
+ {
446
+ type: ['Alignment'],
447
+ targetName: 'Advanced data operations',
448
+ targetCode: 'DATA-201',
449
+ targetFramework: 'Synthetic Workplace Capability Framework',
450
+ targetUrl: 'https://skills.example/framework/data-201',
451
+ targetDescription:
452
+ 'Fictional framework node for testing explicit alignment display; not a real qualification equivalence.',
453
+ targetType: 'CFItem',
454
+ },
455
+ ],
456
+ },
457
+ activityStartDate: '2026-08-03T09:00:00Z',
458
+ role: 'Participant',
459
+ source: {
460
+ id: 'did:example:lc2184-cedar-training',
461
+ type: ['Profile'],
462
+ name: 'Cedar Technical Training',
463
+ url: 'https://cedar-training.example',
464
+ description:
465
+ 'Fictional organization used only for LearnCard display tests.',
466
+ },
467
+ result: [
468
+ {
469
+ type: ['Result'],
470
+ resultDescription: 'urn:uuid:f019000e-b53c-5ce7-bc8a-0ad81106512a',
471
+ status: 'InProgress',
472
+ },
473
+ ],
474
+ },
475
+ evidence: [
476
+ {
477
+ type: ['Evidence'],
478
+ name: 'Progress narrative',
479
+ description: 'Synthetic assessment evidence.',
480
+ narrative:
481
+ 'Two of four practice activities were completed at the snapshot date; no completion is asserted.',
482
+ genre: 'Assessment record',
483
+ audience: 'Learner and authorized reviewer',
484
+ },
485
+ ],
486
+ },
487
+ ],
488
+ association: [
489
+ {
490
+ type: ['Association'],
491
+ associationType: 'isRelatedTo',
492
+ sourceId: 'urn:uuid:248e9bf0-ac3d-5d64-873f-5f26f3cb8edc',
493
+ targetId: 'urn:uuid:c66210ee-6afa-59e6-91c1-750cfdc644f0',
494
+ },
495
+ {
496
+ type: ['Association'],
497
+ associationType: 'precedes',
498
+ sourceId: 'urn:uuid:248e9bf0-ac3d-5d64-873f-5f26f3cb8edc',
499
+ targetId: 'urn:uuid:f0fd8b1a-13c2-5c1b-8cb6-eaa12c893e8f',
500
+ },
501
+ {
502
+ type: ['Association'],
503
+ associationType: 'precedes',
504
+ sourceId: 'urn:uuid:f0fd8b1a-13c2-5c1b-8cb6-eaa12c893e8f',
505
+ targetId: 'urn:uuid:9c523c2f-d87d-582e-909f-c47b3763227a',
506
+ },
507
+ ],
508
+ },
509
+ },
510
+ };
@@ -23,11 +23,26 @@ import { obv3CourseCompletion } from './obv3/course-completion';
23
23
  import { obv3StandaloneFullCourse } from './obv3/standalone-full-course';
24
24
  import { obv3K12Diploma } from './obv3/k12-diploma';
25
25
  import { obv3EndorsementCredential } from './obv3/endorsement';
26
+ import {
27
+ obv3StudentAfterschoolProgramMentor,
28
+ obv3StudentEnvironmentBadge,
29
+ obv3StudentRockClimbingMentor,
30
+ obv3StudentParkCleanupHelper,
31
+ } from './obv3/student-sample-badges';
32
+ import { obv3StudentAdditionalCredentials } from './obv3/student-additional-credentials';
33
+ import { obv3RubricAlignedBadge } from './obv3/rubric-aligned-badge';
26
34
 
27
35
  // CLR v2
28
36
  import { clrMinimal } from './clr/minimal';
29
37
  import { clrMultiAchievement } from './clr/multi-achievement';
30
38
  import { clrUniversityTranscript } from './clr/university-transcript';
39
+ import { clrStudentOfficialAcademicTranscript } from './clr/student-official-academic-transcript';
40
+ import { clrEmploymentRecord } from './clr/employment-record';
41
+ import { clrTrainingProviderRecord } from './clr/training-provider-record';
42
+ import { clrMilitaryTrainingRecord } from './clr/military-training-record';
43
+ import { clrProfessionalOrganizationRecord } from './clr/professional-organization-record';
44
+ import { clrLicensingRegulatoryRecord } from './clr/licensing-regulatory-record';
45
+ import { clrMixedCareerRecord } from './clr/mixed-career-record';
31
46
 
32
47
  // LearnCard Boosts
33
48
  import { boostBasic } from './boost/basic';
@@ -56,6 +71,7 @@ import { vcV2LicenseCredential } from './vc-v2/license-credential';
56
71
  import { clrGreatPlainsFull } from './clr/great-plains-full';
57
72
  import { clrWestbridgeFull } from './clr/westbridge-full';
58
73
  import { clrCompetencyAligned } from './clr/competency-aligned';
74
+ import { clrAchievementIdAssociations } from './clr/achievement-id-associations';
59
75
  import {
60
76
  clrProvisionalTranscript,
61
77
  buildFinalTranscriptVariant,
@@ -94,11 +110,24 @@ export const ALL_FIXTURES: LibraryFixture[] = [
94
110
  obv3StandaloneFullCourse,
95
111
  obv3K12Diploma,
96
112
  obv3EndorsementCredential,
113
+ obv3StudentAfterschoolProgramMentor,
114
+ obv3StudentEnvironmentBadge,
115
+ obv3StudentRockClimbingMentor,
116
+ obv3StudentParkCleanupHelper,
117
+ ...obv3StudentAdditionalCredentials,
118
+ obv3RubricAlignedBadge,
97
119
 
98
120
  // CLR v2
99
121
  clrMinimal,
100
122
  clrMultiAchievement,
101
123
  clrUniversityTranscript,
124
+ clrStudentOfficialAcademicTranscript,
125
+ clrEmploymentRecord,
126
+ clrTrainingProviderRecord,
127
+ clrMilitaryTrainingRecord,
128
+ clrProfessionalOrganizationRecord,
129
+ clrLicensingRegulatoryRecord,
130
+ clrMixedCareerRecord,
102
131
 
103
132
  // Boosts
104
133
  boostBasic,
@@ -125,6 +154,7 @@ export const ALL_FIXTURES: LibraryFixture[] = [
125
154
  clrGreatPlainsFull,
126
155
  clrWestbridgeFull,
127
156
  clrCompetencyAligned,
157
+ clrAchievementIdAssociations,
128
158
  clrProvisionalTranscript,
129
159
  clrDemoIsdDiplomaAssessments,
130
160
 
@@ -161,7 +191,20 @@ export {
161
191
  obv3StandaloneFullCourse,
162
192
  obv3K12Diploma,
163
193
  obv3EndorsementCredential,
194
+ obv3StudentAfterschoolProgramMentor,
195
+ obv3StudentEnvironmentBadge,
196
+ obv3StudentRockClimbingMentor,
197
+ obv3StudentParkCleanupHelper,
198
+ obv3StudentAdditionalCredentials,
199
+ obv3RubricAlignedBadge,
164
200
  clrUniversityTranscript,
201
+ clrStudentOfficialAcademicTranscript,
202
+ clrEmploymentRecord,
203
+ clrTrainingProviderRecord,
204
+ clrMilitaryTrainingRecord,
205
+ clrProfessionalOrganizationRecord,
206
+ clrLicensingRegulatoryRecord,
207
+ clrMixedCareerRecord,
165
208
  boostCommunityAward,
166
209
  boostDelegate,
167
210
  vcV1AlumniCredential,
@@ -173,6 +216,7 @@ export {
173
216
  clrGreatPlainsFull,
174
217
  clrWestbridgeFull,
175
218
  clrCompetencyAligned,
219
+ clrAchievementIdAssociations,
176
220
  clrProvisionalTranscript,
177
221
  buildFinalTranscriptVariant,
178
222
  REFRESH_SERVICE_INLINE_CONTEXT,