From c7b08a3f9dee2be7cd1d3798315b35fdfd6d80f9 Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Tue, 15 Oct 2024 23:53:15 -0300 Subject: data: seriesList: expose group --- .../composite/wiki-data/withResolvedSeriesList.js | 28 +++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) (limited to 'src/data/composite/wiki-data/withResolvedSeriesList.js') diff --git a/src/data/composite/wiki-data/withResolvedSeriesList.js b/src/data/composite/wiki-data/withResolvedSeriesList.js index 8a4a4f99..bd2b0ecf 100644 --- a/src/data/composite/wiki-data/withResolvedSeriesList.js +++ b/src/data/composite/wiki-data/withResolvedSeriesList.js @@ -1,7 +1,7 @@ import {input, templateCompositeFrom} from '#composite'; import find from '#find'; import {stitchArrays} from '#sugar'; -import {isSeriesList} from '#validators'; +import {isSeriesList, validateThing} from '#validators'; import {raiseOutputWithoutDependency} from '#composite/control-flow'; @@ -18,6 +18,10 @@ export default templateCompositeFrom({ annotation: `withResolvedSeriesList`, inputs: { + group: input({ + validate: validateThing({referenceType: 'group'}), + }), + list: input({ validate: isSeriesList, acceptsNull: true, @@ -84,12 +88,30 @@ export default templateCompositeFrom({ ['#serieses.description']: description, ['#serieses.albums']: albums, }) => continuation({ - ['#resolvedSeriesList']: + ['#seriesProperties']: stitchArrays({ name, description, albums, - }), + }).map(properties => ({ + ...properties, + group: input + })) + }), + }, + + { + dependencies: ['#seriesProperties', input('group')], + compute: (continuation, { + ['#seriesProperties']: seriesProperties, + [input('group')]: group, + }) => continuation({ + ['#resolvedSeriesList']: + seriesProperties + .map(properties => ({ + ...properties, + group, + })), }), }, ], -- cgit 1.3.0-6-gf8a5