From: Lady Date: Wed, 3 May 2023 01:48:04 +0000 (-0700) Subject: Freeze the context; make it available to hooks X-Git-Tag: 0.2.1~1 X-Git-Url: https://git.ladys.computer/Beorn/commitdiff_plain/20045528c0524e92050f05f13294f35911433d43?ds=sidebyside;hp=7bea148d7f7b13878c590a9105af1829870fa7e7 Freeze the context; make it available to hooks --- diff --git a/build.js b/build.js index 4c26518..aaa13ed 100755 --- a/build.js +++ b/build.js @@ -511,31 +511,63 @@ const basePath = `./${Deno.args[0] ?? ""}`; * * - "literal": This is a plaintext field. */ -const context = { - author: { namespace: DC11, localName: "creator", type: "person" }, +const context = Object.freeze({ + author: Object.freeze({ + namespace: DC11, + localName: "creator", + type: "person", + }), // category is not supported at this time - content: { namespace: SIOC, localName: "content", type: "text" }, - contributor: { + content: Object.freeze({ + namespace: SIOC, + localName: "content", + type: "text", + }), + contributor: Object.freeze({ namespace: DC11, localName: "contributor", type: "person", - }, + }), // generator is provided by the build script - icon: { namespace: AWOL, localName: "icon", type: "literal" }, + icon: Object.freeze({ + namespace: AWOL, + localName: "icon", + type: "literal", + }), // link is provided by the build script - logo: { namespace: AWOL, localName: "logo", type: "literal" }, - published: { + logo: Object.freeze({ + namespace: AWOL, + localName: "logo", + type: "literal", + }), + published: Object.freeze({ namespace: DC11, localName: "date", type: "literal", - }, - rights: { namespace: DC11, localName: "rights", type: "text" }, + }), + rights: Object.freeze({ + namespace: DC11, + localName: "rights", + type: "text", + }), // source is not supported at this time - subtitle: { namespace: RDFS, localName: "label", type: "text" }, - summary: { namespace: DC11, localName: "abstract", type: "text" }, - title: { namespace: DC11, localName: "title", type: "text" }, + subtitle: Object.freeze({ + namespace: RDFS, + localName: "label", + type: "text", + }), + summary: Object.freeze({ + namespace: DC11, + localName: "abstract", + type: "text", + }), + title: Object.freeze({ + namespace: DC11, + localName: "title", + type: "text", + }), // updated is provided by the build script -}; +}); const { /** @@ -929,6 +961,7 @@ const validateMetadata = (metadata, type) => { globalThis.Lemon = Lemon; globalThis.Bjørn = { addContent, + context, getLanguage, setLanguage, };