Skip to content

Documentation / @facturometro/validator / ContextRuleDefinition

Interface: ContextRuleDefinition<N> ​

Defined in: packages/validator/src/engine/rule.ts:134

A rule definition whose context is a selector function.

Example ​

ts
import type { ContextRuleDefinition, UncheckedTaxSubtotal } from '@facturometro/validator';

const definition: ContextRuleDefinition<UncheckedTaxSubtotal> = {
  context: (view) => view.taxSubtotals(),
  test: (subtotal, ctx) => ctx.dec(subtotal.taxAmount) !== null,
};

Extends ​

  • RuleLogic<N>

Type Parameters ​

N ​

N

Properties ​

at? ​

readonly optional at?: undefined

Defined in: packages/validator/src/engine/rule.ts:136

Not used with a context selector.


context ​

readonly context: (view, ctx) => readonly Hit<N, unknown>[]

Defined in: packages/validator/src/engine/rule.ts:138

Selects the nodes the rule applies to; see Rule.context.

Parameters ​

view ​

DocumentView

ctx ​

RuleContext

Returns ​

readonly Hit<N, unknown>[]


test ​

readonly test: (node, ctx, hit) => Verdict

Defined in: packages/validator/src/engine/rule.ts:116

Judges one selected node; see Rule.test.

Parameters ​

node ​

N

ctx ​

RuleContext

hit ​

Hit<N>

Returns ​

Verdict

Inherited from ​

RuleLogic.test


when? ​

readonly optional when?: (ctx) => boolean

Defined in: packages/validator/src/engine/rule.ts:118

Document-level gate, evaluated once; see Rule.when.

Parameters ​

ctx ​

RuleContext

Returns ​

boolean

Inherited from ​

RuleLogic.when

MIT licensed. Specification artefacts belong to OpenPEPPOL, CEN and OASIS.