Skip to content

Commit

Permalink
Added folmula field type
Browse files Browse the repository at this point in the history
  • Loading branch information
stebrech committed Apr 13, 2024
1 parent dd76f5c commit aaac74b
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 2 deletions.
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,9 @@ const postType1 = {
urlFields: [],
numberFields: [], // ADDED in v0.1.0
personFields: [], // ADDED in v0.1.0
relationFields: [], // ADDED in v0.1.0; ATTENTION: requiredMetadata.title, optionalMetadata.date, downloadPaths.mdAddDatePrefix and permalink.slug must be configured the same in the database of the related post.
relationFields: [], // ADDED in v0.1.0; ATTENTION: requiredMetadata.title, optionalMetadata.date, downloadPaths.mdAddDatePrefix and permalink.slug must be configured the same in the database of the related post.
formulaStringFields: [], // ADDED in v0.1.1; Formula fields which results to a string
formulaNumberFields: [], // ADDED in v0.1.1; Formula fields which results to a number
},
permalink: {
addPermalink: true, // ADDED in v0.1.0
Expand Down
24 changes: 24 additions & 0 deletions main.js
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,16 @@ async function createArray({ dbId, requiredMetadata, optionalMetadata, permalink
data[field] = result.properties[field]?.relation?.map((relation) => relation.id);
}
}
if (optionalMetadata.formulaStringFields) {
for (const field of optionalMetadata.formulaStringFields) {
data[field] = result.properties[field]?.formula?.string;
}
}
if (optionalMetadata.formulaNumberFields) {
for (const field of optionalMetadata.formulaNumberFields) {
data[field] = result.properties[field]?.formula?.number;
}
}

if (permalink.slug) {
data.customSlug = result.properties[permalink.slug]?.rich_text
Expand Down Expand Up @@ -360,6 +370,20 @@ async function createMarkdownFiles({
}
}
}
if (optionalMetadata.formulaStringFields) {
for (const field of optionalMetadata.formulaStringFields) {
if (arr[i][field]) {
frontmatter += `${camelize(field)}: ${arr[i][field]}\n`;
}
}
}
if (optionalMetadata.formulaNumberFields) {
for (const field of optionalMetadata.formulaNumberFields) {
if (arr[i][field]) {
frontmatter += `${camelize(field)}: ${arr[i][field]}\n`;
}
}
}

if (permalink.addPermalink) {
frontmatter += `permalink: ${urlPath}\n`;
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@stebrech/notion2eleventy",
"version": "0.1.0",
"version": "0.1.1",
"description": "Eleventy plugin which downloads data from Notion to your 11ty project.",
"main": "main.js",
"scripts": {
Expand Down

0 comments on commit aaac74b

Please sign in to comment.