diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2025-07-17 05:41:00 -0300 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2025-07-17 05:41:00 -0300 |
commit | 82a6098d64b17c7c21dd5c5db64b78da9a7e9bb3 (patch) | |
tree | 3aa5745da978701db8ff6147069190e248a00523 /src | |
parent | 1ef73210b128dc63a77541c254825519c6b54808 (diff) |
data: load art tags from tags.yaml again, too
Diffstat (limited to 'src')
-rw-r--r-- | src/data/things/art-tag.js | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/data/things/art-tag.js b/src/data/things/art-tag.js index 5327d8f1..fff724cb 100644 --- a/src/data/things/art-tag.js +++ b/src/data/things/art-tag.js @@ -1,5 +1,7 @@ export const DATA_ART_TAGS_DIRECTORY = 'art-tags'; +export const ART_TAG_DATA_FILE = 'tags.yaml'; +import {readFile} from 'node:fs/promises'; import * as path from 'node:path'; import {input} from '#composite'; @@ -193,10 +195,17 @@ export class ArtTag extends Thing { title: `Process art tags file`, files: dataPath => - traverse(path.join(dataPath, DATA_ART_TAGS_DIRECTORY), { - filterFile: name => path.extname(name) === '.yaml', - prefixPath: DATA_ART_TAGS_DIRECTORY, - }), + Promise.allSettled([ + readFile(path.join(dataPath, ART_TAG_DATA_FILE)) + .then(() => [ART_TAG_DATA_FILE]), + + traverse(path.join(dataPath, DATA_ART_TAGS_DIRECTORY), { + filterFile: name => path.extname(name) === '.yaml', + prefixPath: DATA_ART_TAGS_DIRECTORY, + }), + ]).then(results => results + .filter(({status}) => status === 'fulfilled') + .flatMap(({value}) => value)), documentMode: allTogether, documentThing: ArtTag, |