From eb8b316bb9af7d34720de1fa8f8dbd4b81513b32 Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Mon, 29 Jan 2024 08:10:30 -0400 Subject: data, yaml: store data step info on Thing constructors --- src/data/things/art-tag.js | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'src/data/things/art-tag.js') diff --git a/src/data/things/art-tag.js b/src/data/things/art-tag.js index af6677f0..29cd2990 100644 --- a/src/data/things/art-tag.js +++ b/src/data/things/art-tag.js @@ -1,7 +1,9 @@ +export const ART_TAG_DATA_FILE = 'tags.yaml'; + import {input} from '#composite'; import Thing from '#thing'; import {isName} from '#validators'; -import {sortAlbumsTracksChronologically} from '#wiki-data'; +import {sortAlphabetically, sortAlbumsTracksChronologically} from '#wiki-data'; import {exposeUpdateValueOrContinue} from '#composite/control-flow'; @@ -73,4 +75,21 @@ export class ArtTag extends Thing { 'Is CW': {property: 'isContentWarning'}, }, }; + + static [Thing.getYamlLoadingSpec] = ({ + documentModes: {allInOne}, + thingConstructors: {ArtTag}, + }) => ({ + title: `Process art tags file`, + file: ART_TAG_DATA_FILE, + + documentMode: allInOne, + documentThing: ArtTag, + + save(artTagData) { + sortAlphabetically(artTagData); + + return {artTagData}; + }, + }); } -- cgit 1.3.0-6-gf8a5