514136c99a
Problem: Prettier was not running when I saved Emacs buffers. Why? - prettier-js-mode needs needs node; lorri exposes node to direnv; direnv exposes node to Emacs; lorri was not working as expected. Solution: Now that I'm using nix-buffer, I can properly expose node (and other dependencies) to my Emacs buffers. Now Prettier is working. Commentary: Since prettier hadn't worked for so long, I stopped thinking about it. As such, I did not include it as a dependency in boilerplate/typescript. I added it now. I retroactively ran prettier across a few of my frontend projects to unify the code styling. I may need to run... ```shell $ cd ~/briefcase $ nix-shell $ npx prettier --list-different "**/*.{js,ts,jsx,tsx,html,css,json}" ``` ...to see which files I should have formatted.
27 lines
725 B
TypeScript
27 lines
725 B
TypeScript
import { createClient } from "contentful";
|
|
import type { ContentfulClientApi } from "contentful";
|
|
|
|
const space = process.env.CONTENTFUL_SPACE_ID;
|
|
const accessToken = process.env.CONTENTFUL_ACCESS_TOKEN;
|
|
|
|
let client: ContentfulClientApi;
|
|
|
|
// Idempotent way to get a reference to the Contentful client.
|
|
export const getClient = (): ContentfulClientApi => {
|
|
if (typeof client !== "undefined") {
|
|
return client;
|
|
} else {
|
|
if (typeof space === "string" && typeof accessToken === "string") {
|
|
let client = createClient({
|
|
space,
|
|
accessToken,
|
|
});
|
|
|
|
return client;
|
|
} else {
|
|
throw new Error(
|
|
"Please set CONTENTFUL_SPACE_ID and CONTENTFUL_ACCESS_TOKEN"
|
|
);
|
|
}
|
|
}
|
|
};
|