persona-community-5/.pnpm-store/v3/files/78/1eb10af4345e9fcb4862833e5d0f5c9ae7986def11a0115c09b2f8acb23f1e8d74445fedac30e1a9d27baafd11a7ec320c3b4dad23af8f6ee3633cb2ef0d92
rdev-worker a1d0d1bf1c
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
build: /implement-feature community-ui --requirements 'Build the React commu...
2026-02-24 08:22:30 +00:00

34 lines
1.2 KiB
Plaintext

import type { Arazzo1Rule } from '../../visitors';
import type { UserContext } from '../../walk';
export const StepOnFailureUnique: Arazzo1Rule = () => {
return {
OnFailureActionList: {
enter(onFailureActionList, { report, location }: UserContext) {
if (!onFailureActionList) return;
const seenFailureActions = new Set();
for (const onFailureAction of onFailureActionList) {
if (seenFailureActions.has(onFailureAction?.name)) {
report({
message: 'The action `name` must be unique amongst listed `onFailure` actions.',
location: location.child([onFailureActionList.indexOf(onFailureAction)]),
});
}
if (seenFailureActions.has(onFailureAction?.reference)) {
report({
message: 'The action `reference` must be unique amongst listed `onFailure` actions.',
location: location.child([onFailureActionList.indexOf(onFailureAction)]),
});
}
onFailureAction?.name
? seenFailureActions.add(onFailureAction.name)
: seenFailureActions.add(onFailureAction.reference);
}
},
},
};
};