From 24322e79ef3659decc634c036624ace739d2a469 Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Wed, 10 Dec 2025 17:52:37 -0400 Subject: data: Contribution.matchingPresets: finish toplevelizing --- .../contribution/inheritFromContributionPresets.js | 4 ++-- src/data/things/contribution.js | 26 +++++++++------------- 2 files changed, 12 insertions(+), 18 deletions(-) diff --git a/src/data/composite/things/contribution/inheritFromContributionPresets.js b/src/data/composite/things/contribution/inheritFromContributionPresets.js index b429b3ef..17387404 100644 --- a/src/data/composite/things/contribution/inheritFromContributionPresets.js +++ b/src/data/composite/things/contribution/inheritFromContributionPresets.js @@ -8,12 +8,12 @@ export default templateCompositeFrom({ steps: () => [ raiseOutputWithoutDependency({ - dependency: 'matchingContributionPresets', + dependency: 'matchingPresets', mode: input.value('empty'), }), withPropertyFromList({ - list: 'matchingContributionPresets', + list: 'matchingPresets', property: input.thisProperty(), }), diff --git a/src/data/things/contribution.js b/src/data/things/contribution.js index 1187f75d..393a60b4 100644 --- a/src/data/things/contribution.js +++ b/src/data/things/contribution.js @@ -151,10 +151,7 @@ export class Contribution extends Thing { withPropertyFromObject('#thing.wikiInfo', V('contributionPresets')) .outputs({'#thing.wikiInfo.contributionPresets': '#contributionPresets'}), - exitWithoutDependency('#contributionPresets', { - value: input.value([]), - mode: input.value('empty'), - }), + exitWithoutDependency('#contributionPresets', V([]), V('empty')), withContributionContext(), @@ -167,22 +164,19 @@ export class Contribution extends Thing { 'annotation', ], - compute: (continuation, { + compute: ({ ['#contributionPresets']: presets, ['#contributionTarget']: target, ['#contributionProperty']: property, ['annotation']: annotation, - }) => continuation({ - ['#matchingContributionPresets']: - presets - .filter(preset => - preset.context[0] === target && - preset.context.slice(1).includes(property) && - // For now, only match if the annotation is a complete match. - // Partial matches (e.g. because the contribution includes "two" - // annotations, separated by commas) don't count. - preset.annotation === annotation), - }) + }) => + presets.filter(preset => + preset.context[0] === target && + preset.context.slice(1).includes(property) && + // For now, only match if the annotation is a complete match. + // Partial matches (e.g. because the contribution includes "two" + // annotations, separated by commas) don't count. + preset.annotation === annotation), }, ], -- cgit 1.3.0-6-gf8a5