From 21c6220356b3769b6321bd64e85398fee618cfb1 Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Sat, 5 Mar 2022 20:53:16 -0400 Subject: banner & wallpaper art, file extension defaults --- src/data/things.js | 25 ++++++++++--------------- 1 file changed, 10 insertions(+), 15 deletions(-) (limited to 'src/data/things.js') diff --git a/src/data/things.js b/src/data/things.js index 901442d..c93b885 100644 --- a/src/data/things.js +++ b/src/data/things.js @@ -136,6 +136,13 @@ Thing.common = { update: {validate: validateArrayItems(isURL)} }), + // A file extension! Or the default, if provided when calling this. + fileExtension: (defaultFileExtension = null) => ({ + flags: {update: true, expose: true}, + update: {validate: isFileExtension}, + expose: {transform: value => value ?? defaultFileExtension} + }), + // Straightforward flag descriptor for a variety of property purposes. // Provide a default value, true or false! flag: (defaultValue = false) => { @@ -442,19 +449,10 @@ Album.propertyDescriptors = { }, wallpaperStyle: Thing.common.simpleString(), - - wallpaperFileExtension: { - flags: {update: true, expose: true}, - update: {validate: isFileExtension} - }, + wallpaperFileExtension: Thing.common.fileExtension('jpg'), bannerStyle: Thing.common.simpleString(), - - bannerFileExtension: { - flags: {update: true, expose: true}, - update: {validate: isFileExtension} - }, - + bannerFileExtension: Thing.common.fileExtension('jpg'), bannerDimensions: { flags: {update: true, expose: true}, update: {validate: isDimensions} @@ -1132,10 +1130,7 @@ Flash.propertyDescriptors = { date: Thing.common.simpleDate(), - coverArtFileExtension: { - flags: {update: true, expose: true}, - update: {validate: isFileExtension} - }, + coverArtFileExtension: Thing.common.fileExtension('jpg'), contributorContribsByRef: Thing.common.contribsByRef(), -- cgit 1.3.0-6-gf8a5