diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2024-01-20 17:23:37 -0400 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2024-01-30 07:59:39 -0400 |
commit | 98c2012c0c6233fe3f70ba215c19f6d39d7e1e34 (patch) | |
tree | a64dfa62e4134785ad5a4b9b03baaed47aa0854c /src/data/things/flash.js | |
parent | 4739ac5fae824c6c985fca9ae34f6335f5c9c13e (diff) |
data: tidy things folder & imports, nicer fields yaml spec
Diffstat (limited to 'src/data/things/flash.js')
-rw-r--r-- | src/data/things/flash.js | 62 |
1 files changed, 27 insertions, 35 deletions
diff --git a/src/data/things/flash.js b/src/data/things/flash.js index d7e8bb46..7e859bfa 100644 --- a/src/data/things/flash.js +++ b/src/data/things/flash.js @@ -1,13 +1,8 @@ import {input} from '#composite'; import find from '#find'; - -import { - anyOf, - isColor, - isDirectory, - isNumber, - isString, -} from '#validators'; +import Thing from '#thing'; +import {anyOf, isColor, isDirectory, isNumber, isString} from '#validators'; +import {parseDate, parseContributors} from '#yaml'; import {exposeDependency, exposeUpdateValueOrContinue} from '#composite/control-flow'; @@ -28,10 +23,6 @@ import { import {withFlashAct} from '#composite/things/flash'; -import {parseContributors} from '#yaml'; - -import Thing from './thing.js'; - export class Flash extends Thing { static [Thing.referenceType] = 'flash'; @@ -137,24 +128,25 @@ export class Flash extends Thing { }); static [Thing.yamlDocumentSpec] = { - fieldTransformations: { - 'Date': (value) => new Date(value), - - 'Contributors': parseContributors, - }, - - propertyFieldMapping: { - name: 'Flash', - directory: 'Directory', - page: 'Page', - color: 'Color', - urls: 'URLs', + fields: { + 'Flash': {property: 'name'}, + 'Directory': {property: 'directory'}, + 'Page': {property: 'page'}, + 'Color': {property: 'color'}, + 'URLs': {property: 'urls'}, + + 'Date': { + property: 'date', + transform: parseDate, + }, - date: 'Date', - coverArtFileExtension: 'Cover Art File Extension', + 'Cover Art File Extension': {property: 'coverArtFileExtension'}, - featuredTracks: 'Featured Tracks', - contributorContribs: 'Contributors', + 'Featured Tracks': {property: 'featuredTracks'}, + 'Contributors': { + property: 'contributorContribs', + transform: parseContributors, + }, }, ignoredFields: ['Review Points'], @@ -199,15 +191,15 @@ export class FlashAct extends Thing { }); static [Thing.yamlDocumentSpec] = { - propertyFieldMapping: { - name: 'Act', - directory: 'Directory', + fields: { + 'Act': {property: 'name'}, + 'Directory': {property: 'directory'}, - color: 'Color', - listTerminology: 'List Terminology', + 'Color': {property: 'color'}, + 'List Terminology': {property: 'listTerminology'}, - jump: 'Jump', - jumpColor: 'Jump Color', + 'Jump': {property: 'jump'}, + 'Jump Color': {property: 'jumpColor'}, }, ignoredFields: ['Review Points'], |