diff options
| author | (quasar) nebula <qznebula@protonmail.com> | 2025-11-25 17:05:17 -0400 |
|---|---|---|
| committer | (quasar) nebula <qznebula@protonmail.com> | 2025-11-25 17:05:17 -0400 |
| commit | 697a92ab17dda83b281329843eba8da626caf226 (patch) | |
| tree | 90d592621d15a510102fe64a995484ce1a89ca46 /src/data/composite/things/track/alwaysReferenceByDirectory.js | |
| parent | 3d6e0377e01a6c8c05ab3725cc0c30d02f318d0f (diff) | |
data: Track: inline alwaysReferenceByDirectory
Diffstat (limited to 'src/data/composite/things/track/alwaysReferenceByDirectory.js')
| -rw-r--r-- | src/data/composite/things/track/alwaysReferenceByDirectory.js | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/src/data/composite/things/track/alwaysReferenceByDirectory.js b/src/data/composite/things/track/alwaysReferenceByDirectory.js deleted file mode 100644 index b1b0d531..00000000 --- a/src/data/composite/things/track/alwaysReferenceByDirectory.js +++ /dev/null @@ -1,66 +0,0 @@ -// Controls how find.track works - it'll never be matched by a reference -// just to the track's name, which means you don't have to always reference -// some *other* (much more commonly referenced) track by directory instead -// of more naturally by name. - -import {input, templateCompositeFrom} from '#composite'; -import {isBoolean} from '#validators'; -import {getKebabCase} from '#wiki-data'; - -import {withPropertyFromObject} from '#composite/data'; - -import { - exitWithoutDependency, - exposeDependencyOrContinue, - exposeUpdateValueOrContinue, -} from '#composite/control-flow'; - -import withPropertyFromAlbum from './withPropertyFromAlbum.js'; - -export default templateCompositeFrom({ - annotation: `alwaysReferenceByDirectory`, - - compose: false, - - steps: () => [ - exposeUpdateValueOrContinue({ - validate: input.value(isBoolean), - }), - - withPropertyFromAlbum({ - property: input.value('alwaysReferenceTracksByDirectory'), - }), - - // Falsy mode means this exposes true if the album's property is true, - // but continues if the property is false (which is also the default). - exposeDependencyOrContinue({ - dependency: '#album.alwaysReferenceTracksByDirectory', - mode: input.value('falsy'), - }), - - exitWithoutDependency({ - dependency: '_mainRelease', - value: input.value(false), - }), - - exitWithoutDependency({ - dependency: 'mainReleaseTrack', - value: input.value(false), - }), - - withPropertyFromObject({ - object: 'mainReleaseTrack', - property: input.value('name'), - }), - - { - dependencies: ['name', '#mainReleaseTrack.name'], - compute: ({ - ['name']: name, - ['#mainReleaseTrack.name']: mainReleaseName, - }) => - getKebabCase(name) === - getKebabCase(mainReleaseName), - }, - ], -}); |