@fedify/vocab-runtime 2.3.11-dev.2280 → 2.3.11
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/deno.json +2 -2
- package/dist/mod.cjs +91 -4
- package/dist/mod.d.cts +30 -2
- package/dist/mod.d.ts +30 -2
- package/dist/mod.js +91 -5
- package/dist/tests/{body-Bkseh1QO.mjs → body-Cfk4XwBC.mjs} +1 -1
- package/dist/tests/{body-DuDpNk3l.cjs → body-kujxx7yw.cjs} +1 -1
- package/dist/tests/body.test.cjs +1 -1
- package/dist/tests/body.test.mjs +1 -1
- package/dist/tests/decimal.test.cjs +3 -2
- package/dist/tests/decimal.test.mjs +3 -2
- package/dist/tests/{docloader-BHCG9eDn.mjs → docloader-BeuDl5a0.mjs} +43 -3
- package/dist/tests/{docloader-56AWfLMh.cjs → docloader-Bx_LR9xG.cjs} +43 -3
- package/dist/tests/docloader.test.cjs +168 -43
- package/dist/tests/docloader.test.mjs +158 -34
- package/dist/tests/{langstr-DDLc4833.mjs → langstr-ABdAOKlF.mjs} +5 -2
- package/dist/tests/{langstr-BOQHfJDr.cjs → langstr-BsqFJupv.cjs} +5 -2
- package/dist/tests/langstr.test.cjs +8 -1
- package/dist/tests/langstr.test.mjs +9 -2
- package/dist/tests/langtag-DgySESmk.cjs +50 -0
- package/dist/tests/langtag-LDBqlxHv.mjs +45 -0
- package/dist/tests/langtag.test.cjs +46 -0
- package/dist/tests/langtag.test.d.cts +1 -0
- package/dist/tests/langtag.test.d.mts +1 -0
- package/dist/tests/langtag.test.mjs +46 -0
- package/dist/tests/multibase/multibase.test.cjs +7 -7
- package/dist/tests/multibase/multibase.test.mjs +5 -5
- package/dist/tests/{request-DWyJcJ_e.mjs → request-D6bjY2cF.mjs} +1 -1
- package/dist/tests/{request-CVg2A6dZ.cjs → request-DPh7-Q1i.cjs} +1 -1
- package/dist/tests/request.test.cjs +1 -1
- package/dist/tests/request.test.mjs +1 -1
- package/package.json +6 -3
- package/scripts/test-bun.mjs +18 -0
- package/src/contexts/fep-22cd.json +14 -0
- package/src/contexts/fep-6757.json +12 -0
- package/src/contexts/joinmastodon.json +1 -1
- package/src/contexts.ts +16 -0
- package/src/docloader.test.ts +222 -67
- package/src/docloader.ts +2 -0
- package/src/langstr.test.ts +18 -1
- package/src/langstr.ts +6 -2
- package/src/langtag.test.ts +53 -0
- package/src/langtag.ts +76 -0
- package/src/mod.ts +1 -0
- package/src/multibase/multibase.test.ts +5 -5
package/deno.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fedify/vocab-runtime",
|
|
3
|
-
"version": "2.3.11
|
|
3
|
+
"version": "2.3.11",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./src/mod.ts",
|
|
@@ -33,6 +33,6 @@
|
|
|
33
33
|
},
|
|
34
34
|
"tasks": {
|
|
35
35
|
"check": "deno fmt --check && deno lint && deno check src/*.ts",
|
|
36
|
-
"test": "deno test"
|
|
36
|
+
"test": "deno test --allow-net --allow-env=LOG"
|
|
37
37
|
}
|
|
38
38
|
}
|
package/dist/mod.cjs
CHANGED
|
@@ -4430,6 +4430,44 @@ const preloadedContexts = {
|
|
|
4430
4430
|
"@type": "@id"
|
|
4431
4431
|
}
|
|
4432
4432
|
} },
|
|
4433
|
+
"https://w3id.org/fep/6757": { "@context": {
|
|
4434
|
+
"license": {
|
|
4435
|
+
"@id": "http://purl.org/dc/terms/license",
|
|
4436
|
+
"@type": "@id"
|
|
4437
|
+
},
|
|
4438
|
+
"preferredLicense": {
|
|
4439
|
+
"@id": "https://w3id.org/fep/6757#preferredLicense",
|
|
4440
|
+
"@type": "@id"
|
|
4441
|
+
}
|
|
4442
|
+
} },
|
|
4443
|
+
"https://w3id.org/fep/22cd": { "@context": {
|
|
4444
|
+
"fep-22cd": "https://w3id.org/fep/22cd#",
|
|
4445
|
+
"schema": "https://schema.org/",
|
|
4446
|
+
"xsd": "http://www.w3.org/2001/XMLSchema#",
|
|
4447
|
+
"translations": {
|
|
4448
|
+
"@id": "fep-22cd:translations",
|
|
4449
|
+
"@container": "@set"
|
|
4450
|
+
},
|
|
4451
|
+
"Translation": "fep-22cd:Translation",
|
|
4452
|
+
"sourceUpdated": {
|
|
4453
|
+
"@id": "fep-22cd:sourceUpdated",
|
|
4454
|
+
"@type": "xsd:dateTime"
|
|
4455
|
+
},
|
|
4456
|
+
"translator": {
|
|
4457
|
+
"@id": "schema:translator",
|
|
4458
|
+
"@type": "@id",
|
|
4459
|
+
"@container": "@set"
|
|
4460
|
+
},
|
|
4461
|
+
"inLanguage": "schema:inLanguage",
|
|
4462
|
+
"translationOfWork": {
|
|
4463
|
+
"@id": "schema:translationOfWork",
|
|
4464
|
+
"@type": "@id"
|
|
4465
|
+
},
|
|
4466
|
+
"isBasedOn": {
|
|
4467
|
+
"@id": "schema:isBasedOn",
|
|
4468
|
+
"@type": "@id"
|
|
4469
|
+
}
|
|
4470
|
+
} },
|
|
4433
4471
|
"https://join-lemmy.org/context.json": { "@context": ["https://w3id.org/security/v1", {
|
|
4434
4472
|
"as": "https://www.w3.org/ns/activitystreams#",
|
|
4435
4473
|
"lemmy": "https://join-lemmy.org/ns#",
|
|
@@ -4481,7 +4519,7 @@ const preloadedContexts = {
|
|
|
4481
4519
|
"suspended": "toot:suspended",
|
|
4482
4520
|
"attributionDomains": {
|
|
4483
4521
|
"@id": "toot:attributionDomains",
|
|
4484
|
-
"@
|
|
4522
|
+
"@container": "@set"
|
|
4485
4523
|
}
|
|
4486
4524
|
} },
|
|
4487
4525
|
"https://purl.archive.org/miscellany": { "@context": {
|
|
@@ -4499,7 +4537,7 @@ const preloadedContexts = {
|
|
|
4499
4537
|
//#endregion
|
|
4500
4538
|
//#region deno.json
|
|
4501
4539
|
var name = "@fedify/vocab-runtime";
|
|
4502
|
-
var version = "2.3.11
|
|
4540
|
+
var version = "2.3.11";
|
|
4503
4541
|
//#endregion
|
|
4504
4542
|
//#region src/request.ts
|
|
4505
4543
|
/**
|
|
@@ -5147,6 +5185,8 @@ async function getRemoteDocument(url, response, fetch) {
|
|
|
5147
5185
|
* - <https://w3id.org/security/multikey/v1>
|
|
5148
5186
|
* - <https://w3id.org/fep/ef61>
|
|
5149
5187
|
* - <https://w3id.org/fep/7aa9>
|
|
5188
|
+
* - <https://w3id.org/fep/6757>
|
|
5189
|
+
* - <https://w3id.org/fep/22cd>
|
|
5150
5190
|
* - <https://purl.archive.org/socialweb/webfinger>
|
|
5151
5191
|
* - <http://schema.org/>
|
|
5152
5192
|
* @param options Options for the document loader.
|
|
@@ -5808,6 +5848,50 @@ function parseDecimal(value) {
|
|
|
5808
5848
|
return normalized;
|
|
5809
5849
|
}
|
|
5810
5850
|
//#endregion
|
|
5851
|
+
//#region src/langtag.ts
|
|
5852
|
+
const EXTLANG_PAIRS = new Set(Object.entries({
|
|
5853
|
+
ar: "aao abh abv acm acq acw acx acy adf aeb aec afb ajp apc apd arb arq ars ary arz auz avl ayh ayl ayn ayp bbz pga shu ssh",
|
|
5854
|
+
kok: "gom knn",
|
|
5855
|
+
lv: "ltg lvs",
|
|
5856
|
+
ms: "bjn btj bve bvu coa dup hji jak jax kvb kvr kxd lce lcf liw max meo mfa mfb min mqg msi mui orn ors pel pse tmw urk vkk vkt xmm zlm zmi zsm",
|
|
5857
|
+
sgn: "ads aed aen afg ajs ase asf asp asq asw bfi bfk bog bqn bqy bvl bzs cds csc csd cse csf csg csl csn csq csr csx doq dse dsl dsz dyl ecs ehs esl esn eso eth fcs fse fsl fss gds gse gsg gsm gss gus hab haf hds hks hos hps hsh hsl icl iks ils inl ins ise isg isr jcs jhs jks jls jos jsl jus kgi kvk lbs lgs lls lsb lsc lsg lsl lsn lso lsp lst lsv lsw lsy lws mdl mfs mre msd msr mzc mzg mzy nbs ncs nsi nsl nsp nsr nzs okl pgz pks prl prz psc psd psg psl pso psp psr pys rib rms rnb rsi rsl rsm rsn sdl sfb sfs sgg sgx slf sls sqk sqs sqx ssp ssr svk swl syy szs tse tsm tsq tss tsy tza ugn ugy ukl uks vgt vsi vsl vsv wbs xki xml xms yds ygs yhs ysl ysm zhk zib zsl",
|
|
5858
|
+
sw: "swc swh",
|
|
5859
|
+
uz: "uzn uzs",
|
|
5860
|
+
zh: "cdo cjy cmn cnp cpx csp czh czo gan hak hnm hsn luh lzh mnp nan sjc wuu yue"
|
|
5861
|
+
}).flatMap(([prefix, extlangs]) => extlangs.split(" ").map((extlang) => `${prefix}-${extlang}`)));
|
|
5862
|
+
const PREFIX_PATTERN = /^[A-Za-z]{2,3}$/;
|
|
5863
|
+
const EXTLANG_PATTERN = /^[A-Za-z]{3}$/;
|
|
5864
|
+
/**
|
|
5865
|
+
* Normalizes a BCP 47 language tag that has an extended language subtag
|
|
5866
|
+
* (extlang), such as `zh-yue`, into its canonical form, such as `yue`, as
|
|
5867
|
+
* described in [RFC 5646, Section 4.5][1]. `Intl.Locale` rejects extlang
|
|
5868
|
+
* tags, so tags should be normalized before being passed to it.
|
|
5869
|
+
*
|
|
5870
|
+
* Only registered extlangs that follow their registered prefix are removed;
|
|
5871
|
+
* any other tag is returned unchanged, so the result still needs to be
|
|
5872
|
+
* validated, e.g., by `Intl.Locale`.
|
|
5873
|
+
*
|
|
5874
|
+
* NOTE: This function is marked as internal in the 2.0.x–2.4.x patch
|
|
5875
|
+
* releases. When merging it into the *main* branch, remove the `@internal`
|
|
5876
|
+
* tag, formalize it as a public API (`@since 2.5.0`), and add it to
|
|
5877
|
+
* the changelog fragment.
|
|
5878
|
+
*
|
|
5879
|
+
* [1]: https://www.rfc-editor.org/rfc/rfc5646.html#section-4.5
|
|
5880
|
+
*
|
|
5881
|
+
* @param tag The BCP 47 language tag to normalize.
|
|
5882
|
+
* @returns The normalized language tag.
|
|
5883
|
+
* @internal
|
|
5884
|
+
*/
|
|
5885
|
+
function normalizeLanguageTag(tag) {
|
|
5886
|
+
const subtags = tag.split("-");
|
|
5887
|
+
if (subtags.length < 2) return tag;
|
|
5888
|
+
const [prefix, extlang, ...rest] = subtags;
|
|
5889
|
+
if (!PREFIX_PATTERN.test(prefix) || !EXTLANG_PATTERN.test(extlang)) return tag;
|
|
5890
|
+
const language = extlang.toLowerCase();
|
|
5891
|
+
if (!EXTLANG_PAIRS.has(`${prefix.toLowerCase()}-${language}`)) return tag;
|
|
5892
|
+
return [language, ...rest].join("-");
|
|
5893
|
+
}
|
|
5894
|
+
//#endregion
|
|
5811
5895
|
//#region src/langstr.ts
|
|
5812
5896
|
/**
|
|
5813
5897
|
* A language-tagged string which corresponds to the `rdf:langString` type.
|
|
@@ -5822,11 +5906,13 @@ var LanguageString = class extends String {
|
|
|
5822
5906
|
* Constructs a new `LanguageString`.
|
|
5823
5907
|
* @param value A string value written in the given language.
|
|
5824
5908
|
* @param language The language of the string. If a string is given, it will
|
|
5825
|
-
* be parsed as a `Intl.Locale` object.
|
|
5909
|
+
* be parsed as a `Intl.Locale` object. Extended language
|
|
5910
|
+
* subtags are normalized first, e.g., `zh-yue` is parsed as
|
|
5911
|
+
* `yue`.
|
|
5826
5912
|
*/
|
|
5827
5913
|
constructor(value, language) {
|
|
5828
5914
|
super(value);
|
|
5829
|
-
this.locale = typeof language === "string" ? new Intl.Locale(language) : language;
|
|
5915
|
+
this.locale = typeof language === "string" ? new Intl.Locale(normalizeLanguageTag(language)) : language;
|
|
5830
5916
|
}
|
|
5831
5917
|
};
|
|
5832
5918
|
LanguageString.prototype[Symbol.for("Deno.customInspect")] = function(inspect, options) {
|
|
@@ -5858,6 +5944,7 @@ exports.isDecimal = isDecimal;
|
|
|
5858
5944
|
exports.isValidPublicIPv4Address = isValidPublicIPv4Address;
|
|
5859
5945
|
exports.isValidPublicIPv6Address = isValidPublicIPv6Address;
|
|
5860
5946
|
exports.logRequest = logRequest;
|
|
5947
|
+
exports.normalizeLanguageTag = normalizeLanguageTag;
|
|
5861
5948
|
exports.parseDecimal = parseDecimal;
|
|
5862
5949
|
exports.preloadedContexts = preloadedContexts;
|
|
5863
5950
|
exports.validatePublicUrl = validatePublicUrl;
|
package/dist/mod.d.cts
CHANGED
|
@@ -195,6 +195,8 @@ interface GetDocumentLoaderOptions extends DocumentLoaderFactoryOptions {
|
|
|
195
195
|
* - <https://w3id.org/security/multikey/v1>
|
|
196
196
|
* - <https://w3id.org/fep/ef61>
|
|
197
197
|
* - <https://w3id.org/fep/7aa9>
|
|
198
|
+
* - <https://w3id.org/fep/6757>
|
|
199
|
+
* - <https://w3id.org/fep/22cd>
|
|
198
200
|
* - <https://purl.archive.org/socialweb/webfinger>
|
|
199
201
|
* - <http://schema.org/>
|
|
200
202
|
* @param options Options for the document loader.
|
|
@@ -370,11 +372,37 @@ declare class LanguageString extends String {
|
|
|
370
372
|
* Constructs a new `LanguageString`.
|
|
371
373
|
* @param value A string value written in the given language.
|
|
372
374
|
* @param language The language of the string. If a string is given, it will
|
|
373
|
-
* be parsed as a `Intl.Locale` object.
|
|
375
|
+
* be parsed as a `Intl.Locale` object. Extended language
|
|
376
|
+
* subtags are normalized first, e.g., `zh-yue` is parsed as
|
|
377
|
+
* `yue`.
|
|
374
378
|
*/
|
|
375
379
|
constructor(value: string, language: Intl.Locale | string);
|
|
376
380
|
}
|
|
377
381
|
//#endregion
|
|
382
|
+
//#region src/langtag.d.ts
|
|
383
|
+
/**
|
|
384
|
+
* Normalizes a BCP 47 language tag that has an extended language subtag
|
|
385
|
+
* (extlang), such as `zh-yue`, into its canonical form, such as `yue`, as
|
|
386
|
+
* described in [RFC 5646, Section 4.5][1]. `Intl.Locale` rejects extlang
|
|
387
|
+
* tags, so tags should be normalized before being passed to it.
|
|
388
|
+
*
|
|
389
|
+
* Only registered extlangs that follow their registered prefix are removed;
|
|
390
|
+
* any other tag is returned unchanged, so the result still needs to be
|
|
391
|
+
* validated, e.g., by `Intl.Locale`.
|
|
392
|
+
*
|
|
393
|
+
* NOTE: This function is marked as internal in the 2.0.x–2.4.x patch
|
|
394
|
+
* releases. When merging it into the *main* branch, remove the `@internal`
|
|
395
|
+
* tag, formalize it as a public API (`@since 2.5.0`), and add it to
|
|
396
|
+
* the changelog fragment.
|
|
397
|
+
*
|
|
398
|
+
* [1]: https://www.rfc-editor.org/rfc/rfc5646.html#section-4.5
|
|
399
|
+
*
|
|
400
|
+
* @param tag The BCP 47 language tag to normalize.
|
|
401
|
+
* @returns The normalized language tag.
|
|
402
|
+
* @internal
|
|
403
|
+
*/
|
|
404
|
+
declare function normalizeLanguageTag(tag: string): string;
|
|
405
|
+
//#endregion
|
|
378
406
|
//#region src/multibase/types.d.ts
|
|
379
407
|
type BaseCode = "\x00" | "0" | "7" | "9" | "f" | "F" | "v" | "V" | "t" | "T" | "b" | "B" | "c" | "C" | "h" | "k" | "K" | "z" | "Z" | "m" | "M" | "u" | "U";
|
|
380
408
|
/**
|
|
@@ -482,4 +510,4 @@ declare function isValidPublicIPv4Address(address: string): boolean;
|
|
|
482
510
|
declare function isValidPublicIPv6Address(address: string): boolean;
|
|
483
511
|
declare function expandIPv6Address(address: string): string;
|
|
484
512
|
//#endregion
|
|
485
|
-
export { type AuthenticatedDocumentLoaderFactory, type CreateRequestOptions, type Decimal, type DocumentLoader, type DocumentLoaderFactory, type DocumentLoaderFactoryOptions, type DocumentLoaderOptions, FetchError, type GetDocumentLoaderOptions, type GetUserAgentOptions, type Json, LanguageString, type PropertyPreprocessor, type PropertyPreprocessorContext, type RemoteDocument, UrlError, canParseDecimal, createActivityPubRequest, decodeMultibase, encodeMultibase, encodingFromBaseData, expandIPv6Address, exportMultibaseKey, exportSpki, getDocumentLoader, getRemoteDocument, getUserAgent, importMultibaseKey, importPem, importPkcs1, importSpki, isDecimal, isValidPublicIPv4Address, isValidPublicIPv6Address, logRequest, parseDecimal, preloadedContexts, validatePublicUrl };
|
|
513
|
+
export { type AuthenticatedDocumentLoaderFactory, type CreateRequestOptions, type Decimal, type DocumentLoader, type DocumentLoaderFactory, type DocumentLoaderFactoryOptions, type DocumentLoaderOptions, FetchError, type GetDocumentLoaderOptions, type GetUserAgentOptions, type Json, LanguageString, type PropertyPreprocessor, type PropertyPreprocessorContext, type RemoteDocument, UrlError, canParseDecimal, createActivityPubRequest, decodeMultibase, encodeMultibase, encodingFromBaseData, expandIPv6Address, exportMultibaseKey, exportSpki, getDocumentLoader, getRemoteDocument, getUserAgent, importMultibaseKey, importPem, importPkcs1, importSpki, isDecimal, isValidPublicIPv4Address, isValidPublicIPv6Address, logRequest, normalizeLanguageTag, parseDecimal, preloadedContexts, validatePublicUrl };
|
package/dist/mod.d.ts
CHANGED
|
@@ -194,6 +194,8 @@ interface GetDocumentLoaderOptions extends DocumentLoaderFactoryOptions {
|
|
|
194
194
|
* - <https://w3id.org/security/multikey/v1>
|
|
195
195
|
* - <https://w3id.org/fep/ef61>
|
|
196
196
|
* - <https://w3id.org/fep/7aa9>
|
|
197
|
+
* - <https://w3id.org/fep/6757>
|
|
198
|
+
* - <https://w3id.org/fep/22cd>
|
|
197
199
|
* - <https://purl.archive.org/socialweb/webfinger>
|
|
198
200
|
* - <http://schema.org/>
|
|
199
201
|
* @param options Options for the document loader.
|
|
@@ -369,11 +371,37 @@ declare class LanguageString extends String {
|
|
|
369
371
|
* Constructs a new `LanguageString`.
|
|
370
372
|
* @param value A string value written in the given language.
|
|
371
373
|
* @param language The language of the string. If a string is given, it will
|
|
372
|
-
* be parsed as a `Intl.Locale` object.
|
|
374
|
+
* be parsed as a `Intl.Locale` object. Extended language
|
|
375
|
+
* subtags are normalized first, e.g., `zh-yue` is parsed as
|
|
376
|
+
* `yue`.
|
|
373
377
|
*/
|
|
374
378
|
constructor(value: string, language: Intl.Locale | string);
|
|
375
379
|
}
|
|
376
380
|
//#endregion
|
|
381
|
+
//#region src/langtag.d.ts
|
|
382
|
+
/**
|
|
383
|
+
* Normalizes a BCP 47 language tag that has an extended language subtag
|
|
384
|
+
* (extlang), such as `zh-yue`, into its canonical form, such as `yue`, as
|
|
385
|
+
* described in [RFC 5646, Section 4.5][1]. `Intl.Locale` rejects extlang
|
|
386
|
+
* tags, so tags should be normalized before being passed to it.
|
|
387
|
+
*
|
|
388
|
+
* Only registered extlangs that follow their registered prefix are removed;
|
|
389
|
+
* any other tag is returned unchanged, so the result still needs to be
|
|
390
|
+
* validated, e.g., by `Intl.Locale`.
|
|
391
|
+
*
|
|
392
|
+
* NOTE: This function is marked as internal in the 2.0.x–2.4.x patch
|
|
393
|
+
* releases. When merging it into the *main* branch, remove the `@internal`
|
|
394
|
+
* tag, formalize it as a public API (`@since 2.5.0`), and add it to
|
|
395
|
+
* the changelog fragment.
|
|
396
|
+
*
|
|
397
|
+
* [1]: https://www.rfc-editor.org/rfc/rfc5646.html#section-4.5
|
|
398
|
+
*
|
|
399
|
+
* @param tag The BCP 47 language tag to normalize.
|
|
400
|
+
* @returns The normalized language tag.
|
|
401
|
+
* @internal
|
|
402
|
+
*/
|
|
403
|
+
declare function normalizeLanguageTag(tag: string): string;
|
|
404
|
+
//#endregion
|
|
377
405
|
//#region src/multibase/types.d.ts
|
|
378
406
|
type BaseCode = "\x00" | "0" | "7" | "9" | "f" | "F" | "v" | "V" | "t" | "T" | "b" | "B" | "c" | "C" | "h" | "k" | "K" | "z" | "Z" | "m" | "M" | "u" | "U";
|
|
379
407
|
/**
|
|
@@ -481,4 +509,4 @@ declare function isValidPublicIPv4Address(address: string): boolean;
|
|
|
481
509
|
declare function isValidPublicIPv6Address(address: string): boolean;
|
|
482
510
|
declare function expandIPv6Address(address: string): string;
|
|
483
511
|
//#endregion
|
|
484
|
-
export { type AuthenticatedDocumentLoaderFactory, type CreateRequestOptions, type Decimal, type DocumentLoader, type DocumentLoaderFactory, type DocumentLoaderFactoryOptions, type DocumentLoaderOptions, FetchError, type GetDocumentLoaderOptions, type GetUserAgentOptions, type Json, LanguageString, type PropertyPreprocessor, type PropertyPreprocessorContext, type RemoteDocument, UrlError, canParseDecimal, createActivityPubRequest, decodeMultibase, encodeMultibase, encodingFromBaseData, expandIPv6Address, exportMultibaseKey, exportSpki, getDocumentLoader, getRemoteDocument, getUserAgent, importMultibaseKey, importPem, importPkcs1, importSpki, isDecimal, isValidPublicIPv4Address, isValidPublicIPv6Address, logRequest, parseDecimal, preloadedContexts, validatePublicUrl };
|
|
512
|
+
export { type AuthenticatedDocumentLoaderFactory, type CreateRequestOptions, type Decimal, type DocumentLoader, type DocumentLoaderFactory, type DocumentLoaderFactoryOptions, type DocumentLoaderOptions, FetchError, type GetDocumentLoaderOptions, type GetUserAgentOptions, type Json, LanguageString, type PropertyPreprocessor, type PropertyPreprocessorContext, type RemoteDocument, UrlError, canParseDecimal, createActivityPubRequest, decodeMultibase, encodeMultibase, encodingFromBaseData, expandIPv6Address, exportMultibaseKey, exportSpki, getDocumentLoader, getRemoteDocument, getUserAgent, importMultibaseKey, importPem, importPkcs1, importSpki, isDecimal, isValidPublicIPv4Address, isValidPublicIPv6Address, logRequest, normalizeLanguageTag, parseDecimal, preloadedContexts, validatePublicUrl };
|
package/dist/mod.js
CHANGED
|
@@ -4425,6 +4425,44 @@ const preloadedContexts = {
|
|
|
4425
4425
|
"@type": "@id"
|
|
4426
4426
|
}
|
|
4427
4427
|
} },
|
|
4428
|
+
"https://w3id.org/fep/6757": { "@context": {
|
|
4429
|
+
"license": {
|
|
4430
|
+
"@id": "http://purl.org/dc/terms/license",
|
|
4431
|
+
"@type": "@id"
|
|
4432
|
+
},
|
|
4433
|
+
"preferredLicense": {
|
|
4434
|
+
"@id": "https://w3id.org/fep/6757#preferredLicense",
|
|
4435
|
+
"@type": "@id"
|
|
4436
|
+
}
|
|
4437
|
+
} },
|
|
4438
|
+
"https://w3id.org/fep/22cd": { "@context": {
|
|
4439
|
+
"fep-22cd": "https://w3id.org/fep/22cd#",
|
|
4440
|
+
"schema": "https://schema.org/",
|
|
4441
|
+
"xsd": "http://www.w3.org/2001/XMLSchema#",
|
|
4442
|
+
"translations": {
|
|
4443
|
+
"@id": "fep-22cd:translations",
|
|
4444
|
+
"@container": "@set"
|
|
4445
|
+
},
|
|
4446
|
+
"Translation": "fep-22cd:Translation",
|
|
4447
|
+
"sourceUpdated": {
|
|
4448
|
+
"@id": "fep-22cd:sourceUpdated",
|
|
4449
|
+
"@type": "xsd:dateTime"
|
|
4450
|
+
},
|
|
4451
|
+
"translator": {
|
|
4452
|
+
"@id": "schema:translator",
|
|
4453
|
+
"@type": "@id",
|
|
4454
|
+
"@container": "@set"
|
|
4455
|
+
},
|
|
4456
|
+
"inLanguage": "schema:inLanguage",
|
|
4457
|
+
"translationOfWork": {
|
|
4458
|
+
"@id": "schema:translationOfWork",
|
|
4459
|
+
"@type": "@id"
|
|
4460
|
+
},
|
|
4461
|
+
"isBasedOn": {
|
|
4462
|
+
"@id": "schema:isBasedOn",
|
|
4463
|
+
"@type": "@id"
|
|
4464
|
+
}
|
|
4465
|
+
} },
|
|
4428
4466
|
"https://join-lemmy.org/context.json": { "@context": ["https://w3id.org/security/v1", {
|
|
4429
4467
|
"as": "https://www.w3.org/ns/activitystreams#",
|
|
4430
4468
|
"lemmy": "https://join-lemmy.org/ns#",
|
|
@@ -4476,7 +4514,7 @@ const preloadedContexts = {
|
|
|
4476
4514
|
"suspended": "toot:suspended",
|
|
4477
4515
|
"attributionDomains": {
|
|
4478
4516
|
"@id": "toot:attributionDomains",
|
|
4479
|
-
"@
|
|
4517
|
+
"@container": "@set"
|
|
4480
4518
|
}
|
|
4481
4519
|
} },
|
|
4482
4520
|
"https://purl.archive.org/miscellany": { "@context": {
|
|
@@ -4494,7 +4532,7 @@ const preloadedContexts = {
|
|
|
4494
4532
|
//#endregion
|
|
4495
4533
|
//#region deno.json
|
|
4496
4534
|
var name = "@fedify/vocab-runtime";
|
|
4497
|
-
var version = "2.3.11
|
|
4535
|
+
var version = "2.3.11";
|
|
4498
4536
|
//#endregion
|
|
4499
4537
|
//#region src/request.ts
|
|
4500
4538
|
/**
|
|
@@ -5142,6 +5180,8 @@ async function getRemoteDocument(url, response, fetch) {
|
|
|
5142
5180
|
* - <https://w3id.org/security/multikey/v1>
|
|
5143
5181
|
* - <https://w3id.org/fep/ef61>
|
|
5144
5182
|
* - <https://w3id.org/fep/7aa9>
|
|
5183
|
+
* - <https://w3id.org/fep/6757>
|
|
5184
|
+
* - <https://w3id.org/fep/22cd>
|
|
5145
5185
|
* - <https://purl.archive.org/socialweb/webfinger>
|
|
5146
5186
|
* - <http://schema.org/>
|
|
5147
5187
|
* @param options Options for the document loader.
|
|
@@ -5803,6 +5843,50 @@ function parseDecimal(value) {
|
|
|
5803
5843
|
return normalized;
|
|
5804
5844
|
}
|
|
5805
5845
|
//#endregion
|
|
5846
|
+
//#region src/langtag.ts
|
|
5847
|
+
const EXTLANG_PAIRS = new Set(Object.entries({
|
|
5848
|
+
ar: "aao abh abv acm acq acw acx acy adf aeb aec afb ajp apc apd arb arq ars ary arz auz avl ayh ayl ayn ayp bbz pga shu ssh",
|
|
5849
|
+
kok: "gom knn",
|
|
5850
|
+
lv: "ltg lvs",
|
|
5851
|
+
ms: "bjn btj bve bvu coa dup hji jak jax kvb kvr kxd lce lcf liw max meo mfa mfb min mqg msi mui orn ors pel pse tmw urk vkk vkt xmm zlm zmi zsm",
|
|
5852
|
+
sgn: "ads aed aen afg ajs ase asf asp asq asw bfi bfk bog bqn bqy bvl bzs cds csc csd cse csf csg csl csn csq csr csx doq dse dsl dsz dyl ecs ehs esl esn eso eth fcs fse fsl fss gds gse gsg gsm gss gus hab haf hds hks hos hps hsh hsl icl iks ils inl ins ise isg isr jcs jhs jks jls jos jsl jus kgi kvk lbs lgs lls lsb lsc lsg lsl lsn lso lsp lst lsv lsw lsy lws mdl mfs mre msd msr mzc mzg mzy nbs ncs nsi nsl nsp nsr nzs okl pgz pks prl prz psc psd psg psl pso psp psr pys rib rms rnb rsi rsl rsm rsn sdl sfb sfs sgg sgx slf sls sqk sqs sqx ssp ssr svk swl syy szs tse tsm tsq tss tsy tza ugn ugy ukl uks vgt vsi vsl vsv wbs xki xml xms yds ygs yhs ysl ysm zhk zib zsl",
|
|
5853
|
+
sw: "swc swh",
|
|
5854
|
+
uz: "uzn uzs",
|
|
5855
|
+
zh: "cdo cjy cmn cnp cpx csp czh czo gan hak hnm hsn luh lzh mnp nan sjc wuu yue"
|
|
5856
|
+
}).flatMap(([prefix, extlangs]) => extlangs.split(" ").map((extlang) => `${prefix}-${extlang}`)));
|
|
5857
|
+
const PREFIX_PATTERN = /^[A-Za-z]{2,3}$/;
|
|
5858
|
+
const EXTLANG_PATTERN = /^[A-Za-z]{3}$/;
|
|
5859
|
+
/**
|
|
5860
|
+
* Normalizes a BCP 47 language tag that has an extended language subtag
|
|
5861
|
+
* (extlang), such as `zh-yue`, into its canonical form, such as `yue`, as
|
|
5862
|
+
* described in [RFC 5646, Section 4.5][1]. `Intl.Locale` rejects extlang
|
|
5863
|
+
* tags, so tags should be normalized before being passed to it.
|
|
5864
|
+
*
|
|
5865
|
+
* Only registered extlangs that follow their registered prefix are removed;
|
|
5866
|
+
* any other tag is returned unchanged, so the result still needs to be
|
|
5867
|
+
* validated, e.g., by `Intl.Locale`.
|
|
5868
|
+
*
|
|
5869
|
+
* NOTE: This function is marked as internal in the 2.0.x–2.4.x patch
|
|
5870
|
+
* releases. When merging it into the *main* branch, remove the `@internal`
|
|
5871
|
+
* tag, formalize it as a public API (`@since 2.5.0`), and add it to
|
|
5872
|
+
* the changelog fragment.
|
|
5873
|
+
*
|
|
5874
|
+
* [1]: https://www.rfc-editor.org/rfc/rfc5646.html#section-4.5
|
|
5875
|
+
*
|
|
5876
|
+
* @param tag The BCP 47 language tag to normalize.
|
|
5877
|
+
* @returns The normalized language tag.
|
|
5878
|
+
* @internal
|
|
5879
|
+
*/
|
|
5880
|
+
function normalizeLanguageTag(tag) {
|
|
5881
|
+
const subtags = tag.split("-");
|
|
5882
|
+
if (subtags.length < 2) return tag;
|
|
5883
|
+
const [prefix, extlang, ...rest] = subtags;
|
|
5884
|
+
if (!PREFIX_PATTERN.test(prefix) || !EXTLANG_PATTERN.test(extlang)) return tag;
|
|
5885
|
+
const language = extlang.toLowerCase();
|
|
5886
|
+
if (!EXTLANG_PAIRS.has(`${prefix.toLowerCase()}-${language}`)) return tag;
|
|
5887
|
+
return [language, ...rest].join("-");
|
|
5888
|
+
}
|
|
5889
|
+
//#endregion
|
|
5806
5890
|
//#region src/langstr.ts
|
|
5807
5891
|
/**
|
|
5808
5892
|
* A language-tagged string which corresponds to the `rdf:langString` type.
|
|
@@ -5817,11 +5901,13 @@ var LanguageString = class extends String {
|
|
|
5817
5901
|
* Constructs a new `LanguageString`.
|
|
5818
5902
|
* @param value A string value written in the given language.
|
|
5819
5903
|
* @param language The language of the string. If a string is given, it will
|
|
5820
|
-
* be parsed as a `Intl.Locale` object.
|
|
5904
|
+
* be parsed as a `Intl.Locale` object. Extended language
|
|
5905
|
+
* subtags are normalized first, e.g., `zh-yue` is parsed as
|
|
5906
|
+
* `yue`.
|
|
5821
5907
|
*/
|
|
5822
5908
|
constructor(value, language) {
|
|
5823
5909
|
super(value);
|
|
5824
|
-
this.locale = typeof language === "string" ? new Intl.Locale(language) : language;
|
|
5910
|
+
this.locale = typeof language === "string" ? new Intl.Locale(normalizeLanguageTag(language)) : language;
|
|
5825
5911
|
}
|
|
5826
5912
|
};
|
|
5827
5913
|
LanguageString.prototype[Symbol.for("Deno.customInspect")] = function(inspect, options) {
|
|
@@ -5831,4 +5917,4 @@ LanguageString.prototype[Symbol.for("nodejs.util.inspect.custom")] = function(_d
|
|
|
5831
5917
|
return `<${this.locale.baseName}> ${inspect(this.toString(), options)}`;
|
|
5832
5918
|
};
|
|
5833
5919
|
//#endregion
|
|
5834
|
-
export { FetchError, LanguageString, UrlError, canParseDecimal, createActivityPubRequest, decodeMultibase, encodeMultibase, encodingFromBaseData, expandIPv6Address, exportMultibaseKey, exportSpki, getDocumentLoader, getRemoteDocument, getUserAgent, importMultibaseKey, importPem, importPkcs1, importSpki, isDecimal, isValidPublicIPv4Address, isValidPublicIPv6Address, logRequest, parseDecimal, preloadedContexts, validatePublicUrl };
|
|
5920
|
+
export { FetchError, LanguageString, UrlError, canParseDecimal, createActivityPubRequest, decodeMultibase, encodeMultibase, encodingFromBaseData, expandIPv6Address, exportMultibaseKey, exportSpki, getDocumentLoader, getRemoteDocument, getUserAgent, importMultibaseKey, importPem, importPkcs1, importSpki, isDecimal, isValidPublicIPv4Address, isValidPublicIPv6Address, logRequest, normalizeLanguageTag, parseDecimal, preloadedContexts, validatePublicUrl };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
require("./chunk-C2EiDwsr.cjs");
|
|
2
|
-
const require_request = require("./request-
|
|
2
|
+
const require_request = require("./request-DPh7-Q1i.cjs");
|
|
3
3
|
let _logtape_logtape = require("@logtape/logtape");
|
|
4
4
|
//#region src/body.ts
|
|
5
5
|
/** Decoded JSON body limit: 16 MiB. @internal */
|
package/dist/tests/body.test.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
require("./chunk-C2EiDwsr.cjs");
|
|
2
|
-
const require_body = require("./body-
|
|
2
|
+
const require_body = require("./body-kujxx7yw.cjs");
|
|
3
3
|
let node_assert_strict = require("node:assert/strict");
|
|
4
4
|
let node_test = require("node:test");
|
|
5
5
|
let node_zlib = require("node:zlib");
|
package/dist/tests/body.test.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as readBoundedText, t as BodyTooLargeError } from "./body-
|
|
1
|
+
import { r as readBoundedText, t as BodyTooLargeError } from "./body-Cfk4XwBC.mjs";
|
|
2
2
|
import { deepStrictEqual, ok, rejects } from "node:assert/strict";
|
|
3
3
|
import { test } from "node:test";
|
|
4
4
|
import { gunzipSync, gzipSync } from "node:zlib";
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
require("./chunk-C2EiDwsr.cjs");
|
|
2
|
-
require("./docloader-
|
|
2
|
+
require("./docloader-Bx_LR9xG.cjs");
|
|
3
3
|
require("./url-4PAkYhZC.cjs");
|
|
4
4
|
require("./key-CWDxavIR.cjs");
|
|
5
5
|
require("./multibase-BL45eko3.cjs");
|
|
6
|
-
require("./
|
|
6
|
+
require("./langtag-DgySESmk.cjs");
|
|
7
|
+
require("./langstr-BsqFJupv.cjs");
|
|
7
8
|
let node_test = require("node:test");
|
|
8
9
|
let node_assert = require("node:assert");
|
|
9
10
|
//#region src/decimal.ts
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import "./docloader-
|
|
1
|
+
import "./docloader-BeuDl5a0.mjs";
|
|
2
2
|
import "./url-3fyJuqC0.mjs";
|
|
3
3
|
import "./key-Qj7u1qmH.mjs";
|
|
4
4
|
import "./multibase-Da9VJCw8.mjs";
|
|
5
|
-
import "./
|
|
5
|
+
import "./langtag-LDBqlxHv.mjs";
|
|
6
|
+
import "./langstr-ABdAOKlF.mjs";
|
|
6
7
|
import { test } from "node:test";
|
|
7
8
|
import { deepStrictEqual, throws } from "node:assert";
|
|
8
9
|
//#region src/decimal.ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a as name, i as logRequest, n as createActivityPubRequest, o as version, t as FetchError } from "./request-
|
|
2
|
-
import { n as MAX_BODY_SIZE, r as readBoundedText } from "./body-
|
|
1
|
+
import { a as name, i as logRequest, n as createActivityPubRequest, o as version, t as FetchError } from "./request-D6bjY2cF.mjs";
|
|
2
|
+
import { n as MAX_BODY_SIZE, r as readBoundedText } from "./body-Cfk4XwBC.mjs";
|
|
3
3
|
import { t as HttpHeaderLink } from "./link-CYszIegt.mjs";
|
|
4
4
|
import { o as validatePublicUrl, t as UrlError } from "./url-3fyJuqC0.mjs";
|
|
5
5
|
import { getLogger } from "@logtape/logtape";
|
|
@@ -4424,6 +4424,44 @@ const preloadedContexts = {
|
|
|
4424
4424
|
"@type": "@id"
|
|
4425
4425
|
}
|
|
4426
4426
|
} },
|
|
4427
|
+
"https://w3id.org/fep/6757": { "@context": {
|
|
4428
|
+
"license": {
|
|
4429
|
+
"@id": "http://purl.org/dc/terms/license",
|
|
4430
|
+
"@type": "@id"
|
|
4431
|
+
},
|
|
4432
|
+
"preferredLicense": {
|
|
4433
|
+
"@id": "https://w3id.org/fep/6757#preferredLicense",
|
|
4434
|
+
"@type": "@id"
|
|
4435
|
+
}
|
|
4436
|
+
} },
|
|
4437
|
+
"https://w3id.org/fep/22cd": { "@context": {
|
|
4438
|
+
"fep-22cd": "https://w3id.org/fep/22cd#",
|
|
4439
|
+
"schema": "https://schema.org/",
|
|
4440
|
+
"xsd": "http://www.w3.org/2001/XMLSchema#",
|
|
4441
|
+
"translations": {
|
|
4442
|
+
"@id": "fep-22cd:translations",
|
|
4443
|
+
"@container": "@set"
|
|
4444
|
+
},
|
|
4445
|
+
"Translation": "fep-22cd:Translation",
|
|
4446
|
+
"sourceUpdated": {
|
|
4447
|
+
"@id": "fep-22cd:sourceUpdated",
|
|
4448
|
+
"@type": "xsd:dateTime"
|
|
4449
|
+
},
|
|
4450
|
+
"translator": {
|
|
4451
|
+
"@id": "schema:translator",
|
|
4452
|
+
"@type": "@id",
|
|
4453
|
+
"@container": "@set"
|
|
4454
|
+
},
|
|
4455
|
+
"inLanguage": "schema:inLanguage",
|
|
4456
|
+
"translationOfWork": {
|
|
4457
|
+
"@id": "schema:translationOfWork",
|
|
4458
|
+
"@type": "@id"
|
|
4459
|
+
},
|
|
4460
|
+
"isBasedOn": {
|
|
4461
|
+
"@id": "schema:isBasedOn",
|
|
4462
|
+
"@type": "@id"
|
|
4463
|
+
}
|
|
4464
|
+
} },
|
|
4427
4465
|
"https://join-lemmy.org/context.json": { "@context": ["https://w3id.org/security/v1", {
|
|
4428
4466
|
"as": "https://www.w3.org/ns/activitystreams#",
|
|
4429
4467
|
"lemmy": "https://join-lemmy.org/ns#",
|
|
@@ -4475,7 +4513,7 @@ const preloadedContexts = {
|
|
|
4475
4513
|
"suspended": "toot:suspended",
|
|
4476
4514
|
"attributionDomains": {
|
|
4477
4515
|
"@id": "toot:attributionDomains",
|
|
4478
|
-
"@
|
|
4516
|
+
"@container": "@set"
|
|
4479
4517
|
}
|
|
4480
4518
|
} },
|
|
4481
4519
|
"https://purl.archive.org/miscellany": { "@context": {
|
|
@@ -4602,6 +4640,8 @@ async function getRemoteDocument(url, response, fetch) {
|
|
|
4602
4640
|
* - <https://w3id.org/security/multikey/v1>
|
|
4603
4641
|
* - <https://w3id.org/fep/ef61>
|
|
4604
4642
|
* - <https://w3id.org/fep/7aa9>
|
|
4643
|
+
* - <https://w3id.org/fep/6757>
|
|
4644
|
+
* - <https://w3id.org/fep/22cd>
|
|
4605
4645
|
* - <https://purl.archive.org/socialweb/webfinger>
|
|
4606
4646
|
* - <http://schema.org/>
|
|
4607
4647
|
* @param options Options for the document loader.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
require("./chunk-C2EiDwsr.cjs");
|
|
2
|
-
const require_request = require("./request-
|
|
3
|
-
const require_body = require("./body-
|
|
2
|
+
const require_request = require("./request-DPh7-Q1i.cjs");
|
|
3
|
+
const require_body = require("./body-kujxx7yw.cjs");
|
|
4
4
|
const require_link = require("./link-qDTmjPw_.cjs");
|
|
5
5
|
const require_url = require("./url-4PAkYhZC.cjs");
|
|
6
6
|
let _logtape_logtape = require("@logtape/logtape");
|
|
@@ -4425,6 +4425,44 @@ const preloadedContexts = {
|
|
|
4425
4425
|
"@type": "@id"
|
|
4426
4426
|
}
|
|
4427
4427
|
} },
|
|
4428
|
+
"https://w3id.org/fep/6757": { "@context": {
|
|
4429
|
+
"license": {
|
|
4430
|
+
"@id": "http://purl.org/dc/terms/license",
|
|
4431
|
+
"@type": "@id"
|
|
4432
|
+
},
|
|
4433
|
+
"preferredLicense": {
|
|
4434
|
+
"@id": "https://w3id.org/fep/6757#preferredLicense",
|
|
4435
|
+
"@type": "@id"
|
|
4436
|
+
}
|
|
4437
|
+
} },
|
|
4438
|
+
"https://w3id.org/fep/22cd": { "@context": {
|
|
4439
|
+
"fep-22cd": "https://w3id.org/fep/22cd#",
|
|
4440
|
+
"schema": "https://schema.org/",
|
|
4441
|
+
"xsd": "http://www.w3.org/2001/XMLSchema#",
|
|
4442
|
+
"translations": {
|
|
4443
|
+
"@id": "fep-22cd:translations",
|
|
4444
|
+
"@container": "@set"
|
|
4445
|
+
},
|
|
4446
|
+
"Translation": "fep-22cd:Translation",
|
|
4447
|
+
"sourceUpdated": {
|
|
4448
|
+
"@id": "fep-22cd:sourceUpdated",
|
|
4449
|
+
"@type": "xsd:dateTime"
|
|
4450
|
+
},
|
|
4451
|
+
"translator": {
|
|
4452
|
+
"@id": "schema:translator",
|
|
4453
|
+
"@type": "@id",
|
|
4454
|
+
"@container": "@set"
|
|
4455
|
+
},
|
|
4456
|
+
"inLanguage": "schema:inLanguage",
|
|
4457
|
+
"translationOfWork": {
|
|
4458
|
+
"@id": "schema:translationOfWork",
|
|
4459
|
+
"@type": "@id"
|
|
4460
|
+
},
|
|
4461
|
+
"isBasedOn": {
|
|
4462
|
+
"@id": "schema:isBasedOn",
|
|
4463
|
+
"@type": "@id"
|
|
4464
|
+
}
|
|
4465
|
+
} },
|
|
4428
4466
|
"https://join-lemmy.org/context.json": { "@context": ["https://w3id.org/security/v1", {
|
|
4429
4467
|
"as": "https://www.w3.org/ns/activitystreams#",
|
|
4430
4468
|
"lemmy": "https://join-lemmy.org/ns#",
|
|
@@ -4476,7 +4514,7 @@ const preloadedContexts = {
|
|
|
4476
4514
|
"suspended": "toot:suspended",
|
|
4477
4515
|
"attributionDomains": {
|
|
4478
4516
|
"@id": "toot:attributionDomains",
|
|
4479
|
-
"@
|
|
4517
|
+
"@container": "@set"
|
|
4480
4518
|
}
|
|
4481
4519
|
} },
|
|
4482
4520
|
"https://purl.archive.org/miscellany": { "@context": {
|
|
@@ -4603,6 +4641,8 @@ async function getRemoteDocument(url, response, fetch) {
|
|
|
4603
4641
|
* - <https://w3id.org/security/multikey/v1>
|
|
4604
4642
|
* - <https://w3id.org/fep/ef61>
|
|
4605
4643
|
* - <https://w3id.org/fep/7aa9>
|
|
4644
|
+
* - <https://w3id.org/fep/6757>
|
|
4645
|
+
* - <https://w3id.org/fep/22cd>
|
|
4606
4646
|
* - <https://purl.archive.org/socialweb/webfinger>
|
|
4607
4647
|
* - <http://schema.org/>
|
|
4608
4648
|
* @param options Options for the document loader.
|