@uncefact/untp-utils 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. package/README.md +40 -12
  2. package/artefacts/context/untp/0.6.0/dcc.json +1241 -0
  3. package/artefacts/context/untp/0.6.0/dfr.json +619 -0
  4. package/artefacts/context/untp/0.6.0/dia.json +162 -0
  5. package/artefacts/context/untp/0.6.0/dpp.json +1078 -0
  6. package/artefacts/context/untp/0.6.0/dte.json +1285 -0
  7. package/artefacts/context/untp/0.6.1/dcc.json +1388 -0
  8. package/artefacts/context/untp/0.6.1/dfr.json +690 -0
  9. package/artefacts/context/untp/0.6.1/dia.json +196 -0
  10. package/artefacts/context/untp/0.6.1/dpp.json +1164 -0
  11. package/artefacts/context/untp/0.6.1/dte.json +1340 -0
  12. package/artefacts/context/untp/0.7.0/untp.json +3493 -0
  13. package/artefacts/context/vcdm/2/credentials.json +301 -0
  14. package/artefacts/manifest.json +214 -0
  15. package/artefacts/schema/untp/0.6.0/dcc.json +1131 -0
  16. package/artefacts/schema/untp/0.6.0/dfr.json +1028 -0
  17. package/artefacts/schema/untp/0.6.0/dia.json +236 -0
  18. package/artefacts/schema/untp/0.6.0/dpp.json +1219 -0
  19. package/artefacts/schema/untp/0.6.0/dte.json +845 -0
  20. package/artefacts/schema/untp/0.6.1/dcc.json +1196 -0
  21. package/artefacts/schema/untp/0.6.1/dfr.json +1037 -0
  22. package/artefacts/schema/untp/0.6.1/dia.json +236 -0
  23. package/artefacts/schema/untp/0.6.1/dpp.json +1229 -0
  24. package/artefacts/schema/untp/0.6.1/dte.json +845 -0
  25. package/artefacts/schema/untp/0.7.0/cvc.json +701 -0
  26. package/artefacts/schema/untp/0.7.0/dcc.json +1133 -0
  27. package/artefacts/schema/untp/0.7.0/dfr.json +1245 -0
  28. package/artefacts/schema/untp/0.7.0/dia.json +443 -0
  29. package/artefacts/schema/untp/0.7.0/dpp.json +1300 -0
  30. package/artefacts/schema/untp/0.7.0/dte.json +1226 -0
  31. package/artefacts/schema/untp/0.7.0/linkset.json +119 -0
  32. package/artefacts/schema/vcdm/2/verifiable-credential.json +318 -0
  33. package/build/artefacts/detect-version-from-context.d.ts +7 -2
  34. package/build/artefacts/detect-version-from-context.js +17 -6
  35. package/build/artefacts/detect-version-from-context.js.map +1 -1
  36. package/build/artefacts/detect-version-from-context.test.js +59 -0
  37. package/build/artefacts/detect-version-from-context.test.js.map +1 -1
  38. package/build/artefacts/urls.d.ts +8 -1
  39. package/build/artefacts/urls.js +17 -5
  40. package/build/artefacts/urls.js.map +1 -1
  41. package/build/artefacts/urls.test.js +63 -1
  42. package/build/artefacts/urls.test.js.map +1 -1
  43. package/build/bundle/artefacts/context/untp/0.6.0/dcc.d.ts +2 -0
  44. package/build/bundle/artefacts/context/untp/0.6.0/dcc.js +1244 -0
  45. package/build/bundle/artefacts/context/untp/0.6.0/dcc.js.map +1 -0
  46. package/build/bundle/artefacts/context/untp/0.6.0/dfr.d.ts +2 -0
  47. package/build/bundle/artefacts/context/untp/0.6.0/dfr.js +622 -0
  48. package/build/bundle/artefacts/context/untp/0.6.0/dfr.js.map +1 -0
  49. package/build/bundle/artefacts/context/untp/0.6.0/dia.d.ts +2 -0
  50. package/build/bundle/artefacts/context/untp/0.6.0/dia.js +165 -0
  51. package/build/bundle/artefacts/context/untp/0.6.0/dia.js.map +1 -0
  52. package/build/bundle/artefacts/context/untp/0.6.0/dpp.d.ts +2 -0
  53. package/build/bundle/artefacts/context/untp/0.6.0/dpp.js +1081 -0
  54. package/build/bundle/artefacts/context/untp/0.6.0/dpp.js.map +1 -0
  55. package/build/bundle/artefacts/context/untp/0.6.0/dte.d.ts +2 -0
  56. package/build/bundle/artefacts/context/untp/0.6.0/dte.js +1288 -0
  57. package/build/bundle/artefacts/context/untp/0.6.0/dte.js.map +1 -0
  58. package/build/bundle/artefacts/context/untp/0.6.1/dcc.d.ts +2 -0
  59. package/build/bundle/artefacts/context/untp/0.6.1/dcc.js +1391 -0
  60. package/build/bundle/artefacts/context/untp/0.6.1/dcc.js.map +1 -0
  61. package/build/bundle/artefacts/context/untp/0.6.1/dfr.d.ts +2 -0
  62. package/build/bundle/artefacts/context/untp/0.6.1/dfr.js +693 -0
  63. package/build/bundle/artefacts/context/untp/0.6.1/dfr.js.map +1 -0
  64. package/build/bundle/artefacts/context/untp/0.6.1/dia.d.ts +2 -0
  65. package/build/bundle/artefacts/context/untp/0.6.1/dia.js +199 -0
  66. package/build/bundle/artefacts/context/untp/0.6.1/dia.js.map +1 -0
  67. package/build/bundle/artefacts/context/untp/0.6.1/dpp.d.ts +2 -0
  68. package/build/bundle/artefacts/context/untp/0.6.1/dpp.js +1167 -0
  69. package/build/bundle/artefacts/context/untp/0.6.1/dpp.js.map +1 -0
  70. package/build/bundle/artefacts/context/untp/0.6.1/dte.d.ts +2 -0
  71. package/build/bundle/artefacts/context/untp/0.6.1/dte.js +1343 -0
  72. package/build/bundle/artefacts/context/untp/0.6.1/dte.js.map +1 -0
  73. package/build/bundle/artefacts/context/untp/0.7.0/untp.d.ts +2 -0
  74. package/build/bundle/artefacts/context/untp/0.7.0/untp.js +3496 -0
  75. package/build/bundle/artefacts/context/untp/0.7.0/untp.js.map +1 -0
  76. package/build/bundle/artefacts/context/vcdm/2/credentials.d.ts +2 -0
  77. package/build/bundle/artefacts/context/vcdm/2/credentials.js +304 -0
  78. package/build/bundle/artefacts/context/vcdm/2/credentials.js.map +1 -0
  79. package/build/bundle/artefacts/schema/untp/0.6.0/dcc.d.ts +2 -0
  80. package/build/bundle/artefacts/schema/untp/0.6.0/dcc.js +1134 -0
  81. package/build/bundle/artefacts/schema/untp/0.6.0/dcc.js.map +1 -0
  82. package/build/bundle/artefacts/schema/untp/0.6.0/dfr.d.ts +2 -0
  83. package/build/bundle/artefacts/schema/untp/0.6.0/dfr.js +1031 -0
  84. package/build/bundle/artefacts/schema/untp/0.6.0/dfr.js.map +1 -0
  85. package/build/bundle/artefacts/schema/untp/0.6.0/dia.d.ts +2 -0
  86. package/build/bundle/artefacts/schema/untp/0.6.0/dia.js +239 -0
  87. package/build/bundle/artefacts/schema/untp/0.6.0/dia.js.map +1 -0
  88. package/build/bundle/artefacts/schema/untp/0.6.0/dpp.d.ts +2 -0
  89. package/build/bundle/artefacts/schema/untp/0.6.0/dpp.js +1222 -0
  90. package/build/bundle/artefacts/schema/untp/0.6.0/dpp.js.map +1 -0
  91. package/build/bundle/artefacts/schema/untp/0.6.0/dte.d.ts +2 -0
  92. package/build/bundle/artefacts/schema/untp/0.6.0/dte.js +848 -0
  93. package/build/bundle/artefacts/schema/untp/0.6.0/dte.js.map +1 -0
  94. package/build/bundle/artefacts/schema/untp/0.6.1/dcc.d.ts +2 -0
  95. package/build/bundle/artefacts/schema/untp/0.6.1/dcc.js +1199 -0
  96. package/build/bundle/artefacts/schema/untp/0.6.1/dcc.js.map +1 -0
  97. package/build/bundle/artefacts/schema/untp/0.6.1/dfr.d.ts +2 -0
  98. package/build/bundle/artefacts/schema/untp/0.6.1/dfr.js +1040 -0
  99. package/build/bundle/artefacts/schema/untp/0.6.1/dfr.js.map +1 -0
  100. package/build/bundle/artefacts/schema/untp/0.6.1/dia.d.ts +2 -0
  101. package/build/bundle/artefacts/schema/untp/0.6.1/dia.js +239 -0
  102. package/build/bundle/artefacts/schema/untp/0.6.1/dia.js.map +1 -0
  103. package/build/bundle/artefacts/schema/untp/0.6.1/dpp.d.ts +2 -0
  104. package/build/bundle/artefacts/schema/untp/0.6.1/dpp.js +1232 -0
  105. package/build/bundle/artefacts/schema/untp/0.6.1/dpp.js.map +1 -0
  106. package/build/bundle/artefacts/schema/untp/0.6.1/dte.d.ts +2 -0
  107. package/build/bundle/artefacts/schema/untp/0.6.1/dte.js +848 -0
  108. package/build/bundle/artefacts/schema/untp/0.6.1/dte.js.map +1 -0
  109. package/build/bundle/artefacts/schema/untp/0.7.0/cvc.d.ts +2 -0
  110. package/build/bundle/artefacts/schema/untp/0.7.0/cvc.js +704 -0
  111. package/build/bundle/artefacts/schema/untp/0.7.0/cvc.js.map +1 -0
  112. package/build/bundle/artefacts/schema/untp/0.7.0/dcc.d.ts +2 -0
  113. package/build/bundle/artefacts/schema/untp/0.7.0/dcc.js +1136 -0
  114. package/build/bundle/artefacts/schema/untp/0.7.0/dcc.js.map +1 -0
  115. package/build/bundle/artefacts/schema/untp/0.7.0/dfr.d.ts +2 -0
  116. package/build/bundle/artefacts/schema/untp/0.7.0/dfr.js +1248 -0
  117. package/build/bundle/artefacts/schema/untp/0.7.0/dfr.js.map +1 -0
  118. package/build/bundle/artefacts/schema/untp/0.7.0/dia.d.ts +2 -0
  119. package/build/bundle/artefacts/schema/untp/0.7.0/dia.js +446 -0
  120. package/build/bundle/artefacts/schema/untp/0.7.0/dia.js.map +1 -0
  121. package/build/bundle/artefacts/schema/untp/0.7.0/dpp.d.ts +2 -0
  122. package/build/bundle/artefacts/schema/untp/0.7.0/dpp.js +1303 -0
  123. package/build/bundle/artefacts/schema/untp/0.7.0/dpp.js.map +1 -0
  124. package/build/bundle/artefacts/schema/untp/0.7.0/dte.d.ts +2 -0
  125. package/build/bundle/artefacts/schema/untp/0.7.0/dte.js +1229 -0
  126. package/build/bundle/artefacts/schema/untp/0.7.0/dte.js.map +1 -0
  127. package/build/bundle/artefacts/schema/untp/0.7.0/linkset.d.ts +2 -0
  128. package/build/bundle/artefacts/schema/untp/0.7.0/linkset.js +122 -0
  129. package/build/bundle/artefacts/schema/untp/0.7.0/linkset.js.map +1 -0
  130. package/build/bundle/artefacts/schema/vcdm/2/verifiable-credential.d.ts +2 -0
  131. package/build/bundle/artefacts/schema/vcdm/2/verifiable-credential.js +321 -0
  132. package/build/bundle/artefacts/schema/vcdm/2/verifiable-credential.js.map +1 -0
  133. package/build/bundle/fallback.d.ts +41 -0
  134. package/build/bundle/fallback.js +62 -0
  135. package/build/bundle/fallback.js.map +1 -0
  136. package/build/bundle/fallback.test.d.ts +1 -0
  137. package/build/bundle/fallback.test.js +124 -0
  138. package/build/bundle/fallback.test.js.map +1 -0
  139. package/build/bundle/index.d.ts +4 -0
  140. package/build/bundle/index.js +77 -0
  141. package/build/bundle/index.js.map +1 -0
  142. package/build/bundle/lookup.d.ts +14 -0
  143. package/build/bundle/lookup.js +40 -0
  144. package/build/bundle/lookup.js.map +1 -0
  145. package/build/bundle/lookup.test.d.ts +1 -0
  146. package/build/bundle/lookup.test.js +70 -0
  147. package/build/bundle/lookup.test.js.map +1 -0
  148. package/build/bundle/public.d.ts +29 -0
  149. package/build/bundle/public.js +60 -0
  150. package/build/bundle/public.js.map +1 -0
  151. package/build/bundle/public.test.d.ts +1 -0
  152. package/build/bundle/public.test.js +41 -0
  153. package/build/bundle/public.test.js.map +1 -0
  154. package/build/bundle/refresh-classify.test.d.ts +1 -0
  155. package/build/bundle/refresh-classify.test.js +20 -0
  156. package/build/bundle/refresh-classify.test.js.map +1 -0
  157. package/build/bundle/refresh-main.test.d.ts +1 -0
  158. package/build/bundle/refresh-main.test.js +98 -0
  159. package/build/bundle/refresh-main.test.js.map +1 -0
  160. package/build/common/as-date-time.d.ts +13 -0
  161. package/build/common/as-date-time.js +44 -0
  162. package/build/common/as-date-time.js.map +1 -0
  163. package/build/common/as-date-time.test.d.ts +1 -0
  164. package/build/common/as-date-time.test.js +42 -0
  165. package/build/common/as-date-time.test.js.map +1 -0
  166. package/build/common/as-non-empty-string.d.ts +11 -4
  167. package/build/common/as-non-empty-string.js +15 -5
  168. package/build/common/as-non-empty-string.js.map +1 -1
  169. package/build/common/as-non-empty-string.test.js +7 -2
  170. package/build/common/as-non-empty-string.test.js.map +1 -1
  171. package/build/common/canonical-json.d.ts +10 -0
  172. package/build/common/canonical-json.js +29 -0
  173. package/build/common/canonical-json.js.map +1 -0
  174. package/build/common/canonical-json.test.d.ts +1 -0
  175. package/build/common/canonical-json.test.js +20 -0
  176. package/build/common/canonical-json.test.js.map +1 -0
  177. package/build/common/index.d.ts +5 -0
  178. package/build/common/index.js +6 -0
  179. package/build/common/index.js.map +1 -0
  180. package/build/common/validity-window.d.ts +45 -0
  181. package/build/common/validity-window.js +68 -0
  182. package/build/common/validity-window.js.map +1 -0
  183. package/build/common/validity-window.test.d.ts +1 -0
  184. package/build/common/validity-window.test.js +67 -0
  185. package/build/common/validity-window.test.js.map +1 -0
  186. package/build/conformity-vocabulary/codes.d.ts +4 -0
  187. package/build/conformity-vocabulary/codes.js +4 -0
  188. package/build/conformity-vocabulary/codes.js.map +1 -1
  189. package/build/conformity-vocabulary/parse-conformity-scheme.test.js +150 -0
  190. package/build/conformity-vocabulary/parse-conformity-scheme.test.js.map +1 -1
  191. package/build/conformity-vocabulary/parsers/v0-7-0.parser.js +225 -0
  192. package/build/conformity-vocabulary/parsers/v0-7-0.parser.js.map +1 -1
  193. package/build/conformity-vocabulary/types.d.ts +69 -15
  194. package/build/conformity-vocabulary/validate-conformity-claim.d.ts +17 -11
  195. package/build/conformity-vocabulary/validate-conformity-claim.js +118 -13
  196. package/build/conformity-vocabulary/validate-conformity-claim.js.map +1 -1
  197. package/build/conformity-vocabulary/validate-conformity-claim.test.js +265 -0
  198. package/build/conformity-vocabulary/validate-conformity-claim.test.js.map +1 -1
  199. package/build/loaders/index.d.ts +2 -0
  200. package/build/loaders/index.js +1 -0
  201. package/build/loaders/index.js.map +1 -1
  202. package/build/loaders/jsonld-document-loader.d.ts +7 -5
  203. package/build/loaders/jsonld-document-loader.js +11 -2
  204. package/build/loaders/jsonld-document-loader.js.map +1 -1
  205. package/build/loaders/jsonld-document-loader.test.js +41 -1
  206. package/build/loaders/jsonld-document-loader.test.js.map +1 -1
  207. package/build/loaders/schema-loader.d.ts +13 -3
  208. package/build/loaders/schema-loader.js +24 -8
  209. package/build/loaders/schema-loader.js.map +1 -1
  210. package/build/loaders/schema-loader.test.js +56 -1
  211. package/build/loaders/schema-loader.test.js.map +1 -1
  212. package/build/node/errors.d.ts +9 -3
  213. package/build/node/errors.js +9 -3
  214. package/build/node/errors.js.map +1 -1
  215. package/build/node/index.d.ts +1 -1
  216. package/build/node/index.js +1 -1
  217. package/build/node/index.js.map +1 -1
  218. package/build/node/is-private-ip.d.ts +8 -4
  219. package/build/node/is-private-ip.fail-closed.test.d.ts +1 -0
  220. package/build/node/is-private-ip.fail-closed.test.js +36 -0
  221. package/build/node/is-private-ip.fail-closed.test.js.map +1 -0
  222. package/build/node/is-private-ip.js +77 -12
  223. package/build/node/is-private-ip.js.map +1 -1
  224. package/build/node/is-private-ip.test.js +28 -0
  225. package/build/node/is-private-ip.test.js.map +1 -1
  226. package/build/node/validate-public-url.d.ts +43 -11
  227. package/build/node/validate-public-url.js +68 -34
  228. package/build/node/validate-public-url.js.map +1 -1
  229. package/build/node/validate-public-url.test.js +161 -14
  230. package/build/node/validate-public-url.test.js.map +1 -1
  231. package/build/resolvers/errors.d.ts +36 -6
  232. package/build/resolvers/errors.js +41 -7
  233. package/build/resolvers/errors.js.map +1 -1
  234. package/build/resolvers/resolve-document-if-changed.test.js +7 -0
  235. package/build/resolvers/resolve-document-if-changed.test.js.map +1 -1
  236. package/build/resolvers/resolve-document.d.ts +29 -9
  237. package/build/resolvers/resolve-document.integration.test.d.ts +1 -0
  238. package/build/resolvers/resolve-document.integration.test.js +108 -0
  239. package/build/resolvers/resolve-document.integration.test.js.map +1 -0
  240. package/build/resolvers/resolve-document.js +129 -49
  241. package/build/resolvers/resolve-document.js.map +1 -1
  242. package/build/resolvers/resolve-document.test.js +462 -12
  243. package/build/resolvers/resolve-document.test.js.map +1 -1
  244. package/build/resolvers/resolve-json-document.d.ts +11 -8
  245. package/build/resolvers/resolve-json-document.js +7 -6
  246. package/build/resolvers/resolve-json-document.js.map +1 -1
  247. package/build/resolvers/resolve-json-document.test.js +21 -4
  248. package/build/resolvers/resolve-json-document.test.js.map +1 -1
  249. package/build/validation/describe-jsonld-failure.d.ts +48 -8
  250. package/build/validation/describe-jsonld-failure.js +94 -27
  251. package/build/validation/describe-jsonld-failure.js.map +1 -1
  252. package/build/validation/describe-jsonld-failure.test.js +98 -13
  253. package/build/validation/describe-jsonld-failure.test.js.map +1 -1
  254. package/build/validation/index.d.ts +3 -2
  255. package/build/validation/index.js +2 -2
  256. package/build/validation/index.js.map +1 -1
  257. package/build/validation/validate-jsonld.d.ts +29 -3
  258. package/build/validation/validate-jsonld.js +49 -22
  259. package/build/validation/validate-jsonld.js.map +1 -1
  260. package/build/validation/validate-jsonld.test.js +62 -5
  261. package/build/validation/validate-jsonld.test.js.map +1 -1
  262. package/package.json +23 -3
@@ -1,6 +1,6 @@
1
1
  import { describeJsonLdFailure } from './describe-jsonld-failure.js';
2
2
  import { JsonLdExpansionFailedError, JsonLdInvalidShapeError } from './errors.js';
3
- import { ResolverHttpError, ResolverTimedOutError } from '../resolvers/errors.js';
3
+ import { ResolverHttpError, ResolverInvalidJsonError, ResolverTimedOutError } from '../resolvers/errors.js';
4
4
  import { PrivateAddressError, ResolutionFailedError } from '../node/errors.js';
5
5
  /** Builds an error shaped like jsonld.js's JsonLdError (which never sets native `cause`). */
6
6
  function jsonLdError(name, message, details) {
@@ -18,6 +18,7 @@ describe('describeJsonLdFailure', () => {
18
18
  expect(failure.kind).toBe('context-fetch');
19
19
  expect(failure.detail).toContain('https://www.w3.org/ns/credentials/v2');
20
20
  expect(failure.detail).toContain('429');
21
+ expect(failure.code).toBe(http.code);
21
22
  });
22
23
  it('classifies a timeout on the cause chain as context-fetch', () => {
23
24
  const wrapped = new JsonLdExpansionFailedError(new ResolverTimedOutError('https://example.com/ctx', 10_000));
@@ -35,6 +36,7 @@ describe('describeJsonLdFailure', () => {
35
36
  // reconnaissance oracle. The typed detail stays on the cause chain.
36
37
  expect(failure.detail).toBe("a remote @context URL was rejected by this service's URL policy or could not be resolved");
37
38
  expect(failure.detail).not.toMatch(/10\.0\.0\.5|internal\.example|nxdomain\.example/);
39
+ expect(failure.code).toBeUndefined();
38
40
  });
39
41
  it('prefers the flat loader message over the URL-bearing jsonld wrapper above it (rehydrated chain shape)', () => {
40
42
  // The real chain after validateJsonLd rehydration: the loader error
@@ -55,20 +57,71 @@ describe('describeJsonLdFailure', () => {
55
57
  expect(describeJsonLdFailure(new JsonLdExpansionFailedError(chain))).toMatchObject({ kind: 'context-fetch' });
56
58
  });
57
59
  });
58
- describe('context-fetch: fetched but unusable remote contexts', () => {
59
- it('classifies non-object remote context content as context-fetch with a generic message', () => {
60
- const processor = jsonLdError('jsonld.InvalidUrl', 'Dereferencing a URL did not result in a JSON object. The response was valid JSON, but it was not a JSON object. URL: "https://example.com/ctx".', { code: 'invalid remote context' });
61
- const failure = describeJsonLdFailure(new JsonLdExpansionFailedError(processor));
62
- expect(failure.kind).toBe('context-fetch');
63
- expect(failure.detail).toBe('a remote @context document was fetched but could not be used as a context');
60
+ describe('context-invalid: fetched but unusable remote contexts', () => {
61
+ it('classifies a response body that is not JSON as context-invalid, ahead of the general resolver branch', () => {
62
+ const invalid = new ResolverInvalidJsonError('https://example.com/ctx', new SyntaxError('Unexpected token <'));
63
+ const failure = describeJsonLdFailure(new JsonLdExpansionFailedError(new Error('wrapper', { cause: invalid })));
64
+ expect(failure).toMatchObject({ kind: 'context-invalid', code: 'resolver.invalid-json' });
65
+ expect(failure.detail).not.toContain('Unexpected token');
66
+ });
67
+ it('classifies an unusable term-scoped remote context as context-invalid with the term', () => {
68
+ const processor = jsonLdError('jsonld.SyntaxError', 'Invalid JSON-LD syntax; invalid scoped context.', {
69
+ code: 'invalid scoped context',
70
+ term: 'x',
71
+ });
72
+ expect(describeJsonLdFailure(new JsonLdExpansionFailedError(processor))).toEqual({
73
+ kind: 'context-invalid',
74
+ detail: 'a remote @context response could not be used as a JSON-LD context',
75
+ code: 'invalid scoped context',
76
+ fields: { term: 'x' },
77
+ });
64
78
  });
65
- it('leaves the shared "loading remote context failed" code document-class for other error names', () => {
66
- // jsonld.ContextUrlError reuses the code for the JSON-LD 1.0 context
67
- // limit; only jsonld.InvalidUrl carries the remote-content meaning.
79
+ it('classifies a remote context chain that overflows or refers to itself as context-fetch', () => {
68
80
  const processor = jsonLdError('jsonld.ContextUrlError', 'Maximum number of @context URLs exceeded.', {
81
+ code: 'context overflow',
82
+ url: 'https://example.com/ctx',
83
+ });
84
+ expect(describeJsonLdFailure(new JsonLdExpansionFailedError(processor))).toEqual({
85
+ kind: 'context-fetch',
86
+ detail: 'the remote @context chain could not be resolved: too many remote contexts, or a remote context refers back to itself',
87
+ code: 'context overflow',
88
+ });
89
+ });
90
+ it('classifies non-object remote context content as context-invalid, naming the code and URL', () => {
91
+ const processor = jsonLdError('jsonld.InvalidUrl', 'Dereferencing a URL did not result in a JSON object. The response was valid JSON, but it was not a JSON object. URL: "https://example.com/ctx".', { code: 'invalid remote context', url: 'https://example.com/ctx' });
92
+ const failure = describeJsonLdFailure(new JsonLdExpansionFailedError(processor));
93
+ expect(failure).toEqual({
94
+ kind: 'context-invalid',
95
+ detail: 'a remote @context response could not be used as a JSON-LD context',
96
+ code: 'invalid remote context',
97
+ url: 'https://example.com/ctx',
98
+ });
99
+ });
100
+ it('reports the failing @context URL from the jsonld wrapper beneath a typed loader failure', () => {
101
+ const wrapper = jsonLdError('jsonld.InvalidUrl', 'Dereferencing a URL did not result in a valid JSON-LD object.', {
69
102
  code: 'loading remote context failed',
103
+ url: 'https://example.com/ctx',
104
+ });
105
+ wrapper.cause = new ResolverHttpError('https://example.com/ctx', 503);
106
+ const failure = describeJsonLdFailure(new JsonLdExpansionFailedError(wrapper));
107
+ expect(failure).toMatchObject({
108
+ kind: 'context-fetch',
109
+ code: 'resolver.http-error',
110
+ url: 'https://example.com/ctx',
111
+ });
112
+ });
113
+ it('classifies an untyped "loading remote context failed" as context-fetch without echoing the message', () => {
114
+ const wrapper = jsonLdError('jsonld.InvalidUrl', 'Dereferencing a URL did not result in a valid JSON-LD object.', {
115
+ code: 'loading remote context failed',
116
+ url: 'https://example.com/ctx',
117
+ });
118
+ const failure = describeJsonLdFailure(new JsonLdExpansionFailedError(wrapper));
119
+ expect(failure).toEqual({
120
+ kind: 'context-fetch',
121
+ detail: 'a remote @context document could not be loaded',
122
+ code: 'loading remote context failed',
123
+ url: 'https://example.com/ctx',
70
124
  });
71
- expect(describeJsonLdFailure(new JsonLdExpansionFailedError(processor))).toMatchObject({ kind: 'document' });
72
125
  });
73
126
  });
74
127
  describe('document: recognised processor shapes', () => {
@@ -86,6 +139,9 @@ describe('describeJsonLdFailure', () => {
86
139
  expect(failure.kind).toBe('document');
87
140
  expect(failure.detail).toContain('Dropping property that did not expand');
88
141
  expect(failure.detail).toContain('unknownTerm');
142
+ expect(failure).toMatchObject({ source: 'safe-mode-event' });
143
+ expect(failure.code).toBe('invalid property');
144
+ expect(failure).toMatchObject({ fields: { property: 'unknownTerm', expandedProperty: 'unknownTerm' } });
89
145
  });
90
146
  it('never echoes non-allowlisted event fields, which can carry credential content', () => {
91
147
  const processor = jsonLdError('jsonld.ValidationError', 'Safe mode validation error.', {
@@ -98,19 +154,48 @@ describe('describeJsonLdFailure', () => {
98
154
  const failure = describeJsonLdFailure(new JsonLdExpansionFailedError(processor));
99
155
  expect(failure.kind).toBe('document');
100
156
  expect(failure.detail).not.toContain('urn:secret:batch-7734');
157
+ expect(failure).not.toHaveProperty('fields');
158
+ expect(JSON.stringify(failure)).not.toContain('urn:secret:batch-7734');
159
+ });
160
+ it('echoes only allowlisted event fields even when a non-allowlisted one is a plain string', () => {
161
+ const processor = jsonLdError('jsonld.ValidationError', 'Safe mode validation error.', {
162
+ event: {
163
+ code: 'invalid property',
164
+ message: 'Dropping property that did not expand into an absolute IRI or keyword.',
165
+ details: { property: 'batchId', value: 'urn:secret:batch-7734' },
166
+ },
167
+ });
168
+ const failure = describeJsonLdFailure(new JsonLdExpansionFailedError(processor));
169
+ expect(failure).toMatchObject({ fields: { property: 'batchId' } });
170
+ expect(JSON.stringify(failure)).not.toContain('urn:secret:batch-7734');
171
+ });
172
+ it('never echoes a syntax-error message, which jsonld.js may interpolate caller values into', () => {
173
+ const processor = jsonLdError('jsonld.SyntaxError', 'Invalid JSON-LD syntax; container mapping for "secret-field-value" on term "x".', { code: 'invalid @index value', term: 'x' });
174
+ const failure = describeJsonLdFailure(new JsonLdExpansionFailedError(processor));
175
+ expect(failure).toEqual({
176
+ kind: 'document',
177
+ detail: 'Invalid JSON-LD syntax; invalid @index value.',
178
+ source: 'syntax-error',
179
+ code: 'invalid @index value',
180
+ fields: { term: 'x' },
181
+ });
182
+ expect(JSON.stringify(failure)).not.toContain('secret-field-value');
101
183
  });
102
- it('passes a jsonld syntax-error message through (library-authored fixed strings)', () => {
184
+ it('classifies a syntax error from a code and its allowlisted fields', () => {
103
185
  const processor = jsonLdError('jsonld.SyntaxError', 'Invalid JSON-LD syntax; @type value must be a string.', {
104
186
  code: 'invalid type value',
105
187
  });
106
188
  const failure = describeJsonLdFailure(new JsonLdExpansionFailedError(processor));
107
189
  expect(failure.kind).toBe('document');
108
- expect(failure.detail).toBe('Invalid JSON-LD syntax; @type value must be a string.');
190
+ expect(failure.detail).toBe('Invalid JSON-LD syntax; invalid type value.');
191
+ expect(failure).toMatchObject({ source: 'syntax-error' });
192
+ expect(failure.code).toBe('invalid type value');
109
193
  });
110
194
  it('keeps the typed invalid-shape diagnostic', () => {
111
195
  const failure = describeJsonLdFailure(new JsonLdInvalidShapeError(null));
112
196
  expect(failure.kind).toBe('document');
113
197
  expect(failure.detail).toContain('non-null object');
198
+ expect(failure.code).toBe('invalid document shape');
114
199
  });
115
200
  });
116
201
  describe('document: unrecognised failures never leak raw messages', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"describe-jsonld-failure.test.js","sourceRoot":"","sources":["../../src/validation/describe-jsonld-failure.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"describe-jsonld-failure.test.js","sourceRoot":"","sources":["../../src/validation/describe-jsonld-failure.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export { JsonLdValidationError, JsonLdInvalidShapeError, JsonLdExpansionFailedError, SchemaValidationError, SchemaFetchFailedError, SchemaCompilationFailedError, SchemaPayloadError, } from './errors.js';
2
- export { validateJsonLd, type ValidateJsonLdOptions } from './validate-jsonld.js';
2
+ export { expandJsonLd, validateJsonLd, type JsonLdDocumentLoader, type ValidateJsonLdOptions, } from './validate-jsonld.js';
3
3
  export { validateAgainstSchemas, type SchemaReference } from './validate-against-schemas.js';
4
- export { describeJsonLdFailure, type JsonLdFailureDescription } from './describe-jsonld-failure.js';
4
+ export { describeJsonLdFailure, SAFE_EVENT_FIELDS, type JsonLdContextFailure, type JsonLdDocumentFailure, type JsonLdFailureDescription, type SafeJsonLdFields, } from './describe-jsonld-failure.js';
5
+ export type { BundledFallbackEvent, BundledFallbackOptions } from '../bundle/fallback.js';
@@ -1,5 +1,5 @@
1
1
  export { JsonLdValidationError, JsonLdInvalidShapeError, JsonLdExpansionFailedError, SchemaValidationError, SchemaFetchFailedError, SchemaCompilationFailedError, SchemaPayloadError, } from './errors.js';
2
- export { validateJsonLd } from './validate-jsonld.js';
2
+ export { expandJsonLd, validateJsonLd, } from './validate-jsonld.js';
3
3
  export { validateAgainstSchemas } from './validate-against-schemas.js';
4
- export { describeJsonLdFailure } from './describe-jsonld-failure.js';
4
+ export { describeJsonLdFailure, SAFE_EVENT_FIELDS, } from './describe-jsonld-failure.js';
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/validation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,qBAAqB,EACrB,sBAAsB,EACtB,4BAA4B,EAC5B,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAA8B,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAwB,MAAM,+BAA+B,CAAC;AAC7F,OAAO,EAAE,qBAAqB,EAAiC,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/validation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,qBAAqB,EACrB,sBAAsB,EACtB,4BAA4B,EAC5B,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,YAAY,EACZ,cAAc,GAGf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,sBAAsB,EAAwB,MAAM,+BAA+B,CAAC;AAC7F,OAAO,EACL,qBAAqB,EACrB,iBAAiB,GAKlB,MAAM,8BAA8B,CAAC"}
@@ -1,18 +1,37 @@
1
+ import type { BundledFallbackOptions } from '../bundle/fallback.js';
1
2
  import type { TtlCache } from '../cache/ttl-cache.js';
2
3
  import type { LoadedRemoteDocument } from '../loaders/jsonld-document-loader.js';
3
- export interface ValidateJsonLdOptions {
4
+ export interface ValidateJsonLdBuildLoaderOptions extends BundledFallbackOptions {
4
5
  /** Whether to use safe mode for JSON-LD expansion. Defaults to true. */
5
6
  safe?: boolean;
6
7
  /**
7
8
  * Optional cache, keyed by URL, for resolved remote `@context` documents.
8
9
  * Supplying a shared cache avoids re-fetching the same contexts on every
9
10
  * validation (e.g. the credential context on the issuance/verification
10
- * hot path). Only successful fetches are cached, so a URL the SSRF guard
11
- * rejects is re-checked every time. A successfully fetched and parsed
11
+ * hot path). Only successful loads are cached, so a URL the SSRF guard
12
+ * rejects is re-checked every time, while a bundled copy served after a
13
+ * host failure is cached like a fetched one. A successfully loaded
12
14
  * document is cached even if expansion later rejects it.
13
15
  */
14
16
  contextCache?: TtlCache<LoadedRemoteDocument>;
17
+ documentLoader?: never;
15
18
  }
19
+ /** A loader for a remote JSON-LD document, as {@link createJsonLdDocumentLoader} returns. */
20
+ export type JsonLdDocumentLoader = (url: string) => Promise<LoadedRemoteDocument>;
21
+ /**
22
+ * Options for {@link validateJsonLd} and {@link expandJsonLd}. Either a
23
+ * `documentLoader` the caller already holds (the same guarded loader shared
24
+ * across several operations, or a test double), or the pieces to build one
25
+ * from; the two are mutually exclusive at the type level, because a cache or
26
+ * fallback option passed beside a ready loader would be silently ignored.
27
+ */
28
+ export type ValidateJsonLdOptions = ValidateJsonLdBuildLoaderOptions | {
29
+ safe?: boolean;
30
+ documentLoader: JsonLdDocumentLoader;
31
+ contextCache?: never;
32
+ bundledFallback?: never;
33
+ onBundledFallback?: never;
34
+ };
16
35
  /**
17
36
  * Catches malformed contexts, undefined terms, and structurally invalid
18
37
  * linked data by expanding to RDF in safe mode (unless explicitly disabled).
@@ -31,3 +50,10 @@ export interface ValidateJsonLdOptions {
31
50
  * see {@link rehydrateJsonLdCause}).
32
51
  */
33
52
  export declare function validateJsonLd(document: unknown, options?: ValidateJsonLdOptions): Promise<void>;
53
+ /**
54
+ * Expands `document` with the same guarded loader, safe mode and error
55
+ * contract as {@link validateJsonLd}, and returns the expanded form for a
56
+ * caller that displays it (the Playground's context step). Throws the same
57
+ * errors as {@link validateJsonLd}.
58
+ */
59
+ export declare function expandJsonLd(document: unknown, options?: ValidateJsonLdOptions): Promise<unknown[]>;
@@ -45,23 +45,13 @@ function rehydrateJsonLdCause(error, fallback) {
45
45
  return error;
46
46
  }
47
47
  /**
48
- * Catches malformed contexts, undefined terms, and structurally invalid
49
- * linked data by expanding to RDF in safe mode (unless explicitly disabled).
50
- *
51
- * Expansion resolves every remote `@context` through a guarded document
52
- * loader ({@link createJsonLdDocumentLoader}) so `@context` fetches pass the
53
- * `validatePublicUrl` SSRF guard rather than jsonld.js's default unguarded
54
- * Node loader. See ADR-033 §7 and issue #707.
55
- *
56
- * @see https://github.com/digitalbazaar/jsonld.js#safe-mode jsonld.js safe mode (a jsonld.js option, not a W3C-defined term).
57
- * @see ../../../../docs/adrs/033-cvc-architecture.md ADR-033 §7 (Security considerations).
58
- * @throws {JsonLdInvalidShapeError} if `document` is not a non-null object.
59
- * @throws {JsonLdExpansionFailedError} if `jsonld.toRDF` rejects (which
60
- * includes a remote `@context` failing the SSRF guard; the guard's
61
- * rejection is reachable via native `.cause` hops off the thrown error,
62
- * see {@link rehydrateJsonLdCause}).
48
+ * Loads jsonld and the guarded document loader lazily, runs `operation` with
49
+ * a loader that records its last failure, and rethrows any rejection as a
50
+ * {@link JsonLdExpansionFailedError} whose cause is the loader's typed error
51
+ * where one was buried (see {@link rehydrateJsonLdCause}). Shared by
52
+ * {@link validateJsonLd} and {@link expandJsonLd}.
63
53
  */
64
- export async function validateJsonLd(document, options) {
54
+ async function withJsonLd(document, options, operation) {
65
55
  if (typeof document !== 'object' || document === null) {
66
56
  throw new JsonLdInvalidShapeError(document);
67
57
  }
@@ -72,8 +62,12 @@ export async function validateJsonLd(document, options) {
72
62
  const jsonldModule = await import('jsonld');
73
63
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
74
64
  const jsonld = ('default' in jsonldModule ? jsonldModule.default : jsonldModule);
75
- const { createJsonLdDocumentLoader } = await import('../loaders/jsonld-document-loader.js');
76
- const documentLoader = createJsonLdDocumentLoader({ cache: options?.contextCache });
65
+ const documentLoader = options?.documentLoader ??
66
+ (await import('../loaders/jsonld-document-loader.js')).createJsonLdDocumentLoader({
67
+ cache: options?.contextCache,
68
+ bundledFallback: options?.bundledFallback,
69
+ onBundledFallback: options?.onBundledFallback,
70
+ });
77
71
  // Recorded for rehydrateJsonLdCause's fallback: the last error the loader
78
72
  // threw during this call (undefined if every fetch it made succeeded).
79
73
  let lastLoaderError;
@@ -86,14 +80,47 @@ export async function validateJsonLd(document, options) {
86
80
  throw loaderError;
87
81
  }
88
82
  };
83
+ // The cast bridges @types/jsonld, which types documentLoader with a legacy
84
+ // callback signature; jsonld.js itself accepts the single-argument
85
+ // promise-returning loader used here.
86
+ const processorOptions = {
87
+ safe: options?.safe ?? true,
88
+ documentLoader: trackedDocumentLoader,
89
+ };
89
90
  try {
90
- // The options cast bridges @types/jsonld, which types documentLoader with
91
- // a legacy callback signature; jsonld.js itself accepts the
92
- // single-argument promise-returning loader used here.
93
- await jsonld.toRDF(document, { safe: options?.safe ?? true, documentLoader: trackedDocumentLoader });
91
+ return await operation(jsonld, document, processorOptions);
94
92
  }
95
93
  catch (cause) {
96
94
  throw new JsonLdExpansionFailedError(rehydrateJsonLdCause(cause, lastLoaderError));
97
95
  }
98
96
  }
97
+ /**
98
+ * Catches malformed contexts, undefined terms, and structurally invalid
99
+ * linked data by expanding to RDF in safe mode (unless explicitly disabled).
100
+ *
101
+ * Expansion resolves every remote `@context` through a guarded document
102
+ * loader ({@link createJsonLdDocumentLoader}) so `@context` fetches pass the
103
+ * `validatePublicUrl` SSRF guard rather than jsonld.js's default unguarded
104
+ * Node loader. See ADR-033 §7 and issue #707.
105
+ *
106
+ * @see https://github.com/digitalbazaar/jsonld.js#safe-mode jsonld.js safe mode (a jsonld.js option, not a W3C-defined term).
107
+ * @see ../../../../docs/adrs/033-cvc-architecture.md ADR-033 §7 (Security considerations).
108
+ * @throws {JsonLdInvalidShapeError} if `document` is not a non-null object.
109
+ * @throws {JsonLdExpansionFailedError} if `jsonld.toRDF` rejects (which
110
+ * includes a remote `@context` failing the SSRF guard; the guard's
111
+ * rejection is reachable via native `.cause` hops off the thrown error,
112
+ * see {@link rehydrateJsonLdCause}).
113
+ */
114
+ export async function validateJsonLd(document, options) {
115
+ await withJsonLd(document, options, (jsonld, doc, processorOptions) => jsonld.toRDF(doc, processorOptions));
116
+ }
117
+ /**
118
+ * Expands `document` with the same guarded loader, safe mode and error
119
+ * contract as {@link validateJsonLd}, and returns the expanded form for a
120
+ * caller that displays it (the Playground's context step). Throws the same
121
+ * errors as {@link validateJsonLd}.
122
+ */
123
+ export async function expandJsonLd(document, options) {
124
+ return withJsonLd(document, options, (jsonld, doc, processorOptions) => jsonld.expand(doc, processorOptions));
125
+ }
99
126
  //# sourceMappingURL=validate-jsonld.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate-jsonld.js","sourceRoot":"","sources":["../../src/validation/validate-jsonld.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAgBlF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,SAAS,oBAAoB,CAAC,KAAc,EAAE,QAAkB;IAC9D,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC3D,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAI,KAAmD,CAAC,OAAO,EAAE,KAAK,CAAC;IACnF,MAAM,SAAS,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC3D,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC;IAC1B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAiB,EAAE,OAA+B;IACrF,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtD,MAAM,IAAI,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED,kEAAkE;IAClE,sEAAsE;IACtE,2EAA2E;IAC3E,gEAAgE;IAChE,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC5C,8DAA8D;IAC9D,MAAM,MAAM,GAAG,CAAC,SAAS,IAAI,YAAY,CAAC,CAAC,CAAE,YAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAA4B,CAAC;IACrH,MAAM,EAAE,0BAA0B,EAAE,GAAG,MAAM,MAAM,CAAC,sCAAsC,CAAC,CAAC;IAC5F,MAAM,cAAc,GAAG,0BAA0B,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;IAEpF,0EAA0E;IAC1E,uEAAuE;IACvE,IAAI,eAAwB,CAAC;IAC7B,MAAM,qBAAqB,GAAG,KAAK,EAAE,GAAW,EAAiC,EAAE;QACjF,IAAI,CAAC;YACH,OAAO,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,WAAW,EAAE,CAAC;YACrB,eAAe,GAAG,WAAW,CAAC;YAC9B,MAAM,WAAW,CAAC;QACpB,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,CAAC;QACH,0EAA0E;QAC1E,4DAA4D;QAC5D,sDAAsD;QACtD,MAAM,MAAM,CAAC,KAAK,CAChB,QAA0B,EAC1B,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,IAAI,EAAE,cAAc,EAAE,qBAAqB,EAAwC,CAC7G,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,0BAA0B,CAAC,oBAAoB,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC;IACrF,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"validate-jsonld.js","sourceRoot":"","sources":["../../src/validation/validate-jsonld.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,14 @@
1
1
  import { jest } from '@jest/globals';
2
2
  import { createInMemoryTtlCache } from '../cache/in-memory-ttl-cache.js';
3
- import { JsonLdValidationError } from './errors.js';
3
+ import { JsonLdExpansionFailedError, JsonLdInvalidShapeError, JsonLdValidationError } from './errors.js';
4
4
  const toRDF = jest.fn();
5
+ const expand = jest.fn();
5
6
  const documentLoader = jest.fn();
6
7
  const createJsonLdDocumentLoader = jest.fn(() => documentLoader);
7
8
  jest.unstable_mockModule('jsonld', () => ({
8
- default: { toRDF },
9
+ default: { toRDF, expand },
9
10
  toRDF,
11
+ expand,
10
12
  }));
11
13
  // The loader factory is mocked so this suite can assert the option threading
12
14
  // (contextCache -> cache) without invoking the real resolver stack; the
@@ -14,10 +16,11 @@ jest.unstable_mockModule('jsonld', () => ({
14
16
  jest.unstable_mockModule('../loaders/jsonld-document-loader.js', () => ({
15
17
  createJsonLdDocumentLoader,
16
18
  }));
17
- const { validateJsonLd } = await import('./validate-jsonld.js');
19
+ const { validateJsonLd, expandJsonLd } = await import('./validate-jsonld.js');
18
20
  describe('validateJsonLd', () => {
19
21
  beforeEach(() => {
20
22
  toRDF.mockReset();
23
+ expand.mockReset();
21
24
  documentLoader.mockReset();
22
25
  createJsonLdDocumentLoader.mockClear();
23
26
  });
@@ -169,14 +172,31 @@ describe('validateJsonLd', () => {
169
172
  toRDF.mockResolvedValue([]);
170
173
  const contextCache = createInMemoryTtlCache({ ttlMs: 60_000 });
171
174
  await validateJsonLd({ '@context': 'https://example.com' }, { contextCache });
172
- expect(createJsonLdDocumentLoader).toHaveBeenCalledWith({ cache: contextCache });
175
+ expect(createJsonLdDocumentLoader).toHaveBeenCalledWith({
176
+ cache: contextCache,
177
+ bundledFallback: undefined,
178
+ onBundledFallback: undefined,
179
+ });
180
+ });
181
+ it('forwards the bundled-fallback switch and listener to the document loader', async () => {
182
+ const onBundledFallback = jest.fn();
183
+ await validateJsonLd({ '@context': 'https://example.com' }, { bundledFallback: false, onBundledFallback });
184
+ expect(createJsonLdDocumentLoader).toHaveBeenCalledWith({
185
+ cache: undefined,
186
+ bundledFallback: false,
187
+ onBundledFallback,
188
+ });
173
189
  });
174
190
  it('passes toRDF a loader that delegates to the one createJsonLdDocumentLoader created', async () => {
175
191
  toRDF.mockResolvedValue([]);
176
192
  const remoteDoc = { documentUrl: 'https://example.com', document: {} };
177
193
  documentLoader.mockResolvedValue(remoteDoc);
178
194
  await validateJsonLd({ '@context': 'https://example.com' });
179
- expect(createJsonLdDocumentLoader).toHaveBeenCalledWith({ cache: undefined });
195
+ expect(createJsonLdDocumentLoader).toHaveBeenCalledWith({
196
+ cache: undefined,
197
+ bundledFallback: undefined,
198
+ onBundledFallback: undefined,
199
+ });
180
200
  // validateJsonLd wraps the created loader (to record failures for
181
201
  // rehydrateJsonLdCause's fallback, see validate-jsonld.ts), so toRDF
182
202
  // receives a different function reference; assert delegation instead.
@@ -197,4 +217,41 @@ describe('validateJsonLd', () => {
197
217
  await expect(validateJsonLd({})).rejects.toBeInstanceOf(JsonLdValidationError);
198
218
  });
199
219
  });
220
+ describe('expandJsonLd', () => {
221
+ beforeEach(() => {
222
+ expand.mockReset();
223
+ createJsonLdDocumentLoader.mockClear();
224
+ });
225
+ it('returns the expanded document from jsonld.expand run in safe mode through the guarded loader', async () => {
226
+ const expanded = [{ '@type': ['https://example.com/T'] }];
227
+ expand.mockResolvedValue(expanded);
228
+ await expect(expandJsonLd({ '@context': 'https://example.com', type: 'T' })).resolves.toBe(expanded);
229
+ expect(expand).toHaveBeenCalledWith({ '@context': 'https://example.com', type: 'T' }, expect.objectContaining({ safe: true, documentLoader: expect.any(Function) }));
230
+ expect(createJsonLdDocumentLoader).toHaveBeenCalledTimes(1);
231
+ });
232
+ it('rejects a document that is not an object with JsonLdInvalidShapeError', async () => {
233
+ await expect(expandJsonLd('nope')).rejects.toBeInstanceOf(JsonLdInvalidShapeError);
234
+ expect(expand).not.toHaveBeenCalled();
235
+ });
236
+ it('wraps a jsonld rejection as JsonLdExpansionFailedError with the loader failure as its cause', async () => {
237
+ const loaderFailure = new Error('refused');
238
+ documentLoader.mockRejectedValue(loaderFailure);
239
+ expand.mockImplementation((async (_doc, opts) => {
240
+ await opts.documentLoader('https://example.com');
241
+ }));
242
+ const error = await expandJsonLd({ '@context': 'https://example.com' }).catch((e) => e);
243
+ expect(error).toBeInstanceOf(JsonLdExpansionFailedError);
244
+ expect(error.cause).toBe(loaderFailure);
245
+ });
246
+ it('uses a caller-supplied document loader instead of building one', async () => {
247
+ const supplied = jest.fn(async (url) => ({ documentUrl: url, document: {} }));
248
+ expand.mockImplementation((async (_doc, opts) => {
249
+ await opts.documentLoader('https://example.com');
250
+ return [];
251
+ }));
252
+ await expandJsonLd({ '@context': 'https://example.com' }, { documentLoader: supplied });
253
+ expect(supplied).toHaveBeenCalledWith('https://example.com');
254
+ expect(createJsonLdDocumentLoader).not.toHaveBeenCalled();
255
+ });
256
+ });
200
257
  //# sourceMappingURL=validate-jsonld.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate-jsonld.test.js","sourceRoot":"","sources":["../../src/validation/validate-jsonld.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate-jsonld.test.js","sourceRoot":"","sources":["../../src/validation/validate-jsonld.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uncefact/untp-utils",
3
- "version": "0.2.0",
3
+ "version": "0.4.0",
4
4
  "description": "Shared utility primitives for UNTP packages and consumers.",
5
5
  "main": "./build/index.js",
6
6
  "types": "./build/index.d.ts",
@@ -9,6 +9,10 @@
9
9
  "types": "./build/index.d.ts",
10
10
  "default": "./build/index.js"
11
11
  },
12
+ "./common": {
13
+ "types": "./build/common/index.d.ts",
14
+ "default": "./build/common/index.js"
15
+ },
12
16
  "./artefacts": {
13
17
  "types": "./build/artefacts/index.d.ts",
14
18
  "default": "./build/artefacts/index.js"
@@ -44,10 +48,17 @@
44
48
  "./http-headers": {
45
49
  "types": "./build/http-headers/index.d.ts",
46
50
  "default": "./build/http-headers/index.js"
51
+ },
52
+ "./bundled-artefacts": {
53
+ "types": "./build/bundle/public.d.ts",
54
+ "default": "./build/bundle/public.js"
47
55
  }
48
56
  },
49
57
  "typesVersions": {
50
58
  "*": {
59
+ "artefacts": [
60
+ "./build/artefacts/index.d.ts"
61
+ ],
51
62
  "multibase-digest": [
52
63
  "./build/multibase-digest/index.d.ts"
53
64
  ],
@@ -71,17 +82,26 @@
71
82
  ],
72
83
  "http-headers": [
73
84
  "./build/http-headers/index.d.ts"
85
+ ],
86
+ "common": [
87
+ "./build/common/index.d.ts"
88
+ ],
89
+ "bundled-artefacts": [
90
+ "./build/bundle/public.d.ts"
74
91
  ]
75
92
  }
76
93
  },
77
94
  "files": [
78
- "build"
95
+ "build",
96
+ "artefacts"
79
97
  ],
80
98
  "scripts": {
81
99
  "build": "tsc --build --clean && tsc",
82
100
  "watch": "tsc -b --watch",
83
101
  "test": "cross-env NODE_OPTIONS=--experimental-vm-modules jest",
84
- "test:coverage": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --coverage"
102
+ "test:coverage": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --coverage",
103
+ "artefacts:check": "node scripts/refresh-artefacts.mjs --check",
104
+ "artefacts:refresh": "node scripts/refresh-artefacts.mjs"
85
105
  },
86
106
  "type": "module",
87
107
  "keywords": [