From d33effa272c3388640974648fe2888a284c6701c Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Thu, 7 Sep 2023 14:50:41 -0300 Subject: data: withAlbum: perform proper availability check on album --- src/data/things/track.js | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) (limited to 'src/data/things/track.js') diff --git a/src/data/things/track.js b/src/data/things/track.js index 41c92092..fcfd39c7 100644 --- a/src/data/things/track.js +++ b/src/data/things/track.js @@ -411,21 +411,34 @@ function withAlbum({ }), }, + withResultOfAvailabilityCheck({ + fromDependency: '#album', + mode: 'null', + into: '#albumAvailability', + }), + { - dependencies: ['#album'], + dependencies: ['#albumAvailability'], options: {notFoundMode}, mapContinuation: {into}, compute: ({ - '#album': album, + '#albumAvailability': albumAvailability, '#options': {notFoundMode}, }, continuation) => - (album - ? continuation.raise({into: album}) + (albumAvailability + ? continuation() : (notFoundMode === 'exit' ? continuation.exit(null) : continuation.raise({into: null}))), }, + + { + dependencies: ['#album'], + mapContinuation: {into}, + compute: ({'#album': album}, continuation) => + continuation({into: album}), + }, ]); } -- cgit 1.3.0-6-gf8a5