package register import ( "gitea.maximumdirect.net/eric/notarius/internal/framework/pipeline" combatextract "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/extract/combatturns" npcextract "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/extract/npcs" spellextract "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/extract/spells" combatnormalize "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/normalize/combatturns" npcnormalize "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/normalize/npcs" spellnormalize "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/normalize/spells" combatinvariants "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/validate/combatturns/invariants" combatshape "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/validate/combatturns/shape" combatsourcerefs "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/validate/combatturns/source_refs" combatrelatedness "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/validate/combatturns/source_relatedness" npcidentity "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/validate/npcs/identity" npcshape "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/validate/npcs/shape" npcsourcerefs "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/validate/npcs/source_refs" npcrelatedness "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/validate/npcs/source_relatedness" spellcatalog "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/validate/spells/catalog" spellshape "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/validate/spells/shape" spellsourcerefs "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/validate/spells/source_refs" spellrelatedness "gitea.maximumdirect.net/eric/notarius/internal/modules/dnd/validate/spells/source_relatedness" validjson "gitea.maximumdirect.net/eric/notarius/internal/modules/generic/validate/valid_json" validjsonschema "gitea.maximumdirect.net/eric/notarius/internal/modules/generic/validate/valid_json_schema" ) func registerDefaultChains(registry *pipeline.ValidatorChainRegistry) error { return runRegistrations([]registration{ {name: "spells validator chain", register: func() error { return registry.Register(pipeline.ValidatorChainMapping{ Stage: pipeline.StageExtract, Module: spellextract.Key, Validators: []pipeline.ModuleBinding{ pipeline.Binding(validjson.Key), pipeline.Binding(validjsonschema.Key), pipeline.Binding(spellshape.Key), pipeline.Binding(spellcatalog.Key), pipeline.Binding(spellsourcerefs.Key), pipeline.Binding(spellrelatedness.Key), }, }) }}, {name: "spells normalize validator chain", register: func() error { return registry.Register(pipeline.ValidatorChainMapping{ Stage: pipeline.StageNormalize, Module: spellnormalize.Key, Validators: []pipeline.ModuleBinding{ pipeline.Binding(validjson.Key), pipeline.Binding(validjsonschema.Key), pipeline.Binding(spellshape.Key), pipeline.Binding(spellcatalog.Key), pipeline.Binding(spellsourcerefs.Key), pipeline.Binding(spellrelatedness.Key), }, }) }}, {name: "npcs validator chain", register: func() error { return registry.Register(pipeline.ValidatorChainMapping{ Stage: pipeline.StageExtract, Module: npcextract.Key, Validators: []pipeline.ModuleBinding{ pipeline.Binding(validjson.Key), pipeline.Binding(validjsonschema.Key), pipeline.Binding(npcshape.Key), pipeline.Binding(npcsourcerefs.Key), pipeline.Binding(npcrelatedness.Key), }, }) }}, {name: "npcs normalize validator chain", register: func() error { return registry.Register(pipeline.ValidatorChainMapping{ Stage: pipeline.StageNormalize, Module: npcnormalize.Key, Validators: []pipeline.ModuleBinding{ pipeline.Binding(validjson.Key), pipeline.Binding(validjsonschema.Key), pipeline.Binding(npcshape.Key), pipeline.Binding(npcidentity.Key), pipeline.Binding(npcsourcerefs.Key), pipeline.Binding(npcrelatedness.Key), }, }) }}, {name: "combat turns validator chain", register: func() error { return registry.Register(pipeline.ValidatorChainMapping{ Stage: pipeline.StageExtract, Module: combatextract.Key, Validators: []pipeline.ModuleBinding{ pipeline.Binding(validjson.Key), pipeline.Binding(combatshape.Key), pipeline.Binding(combatsourcerefs.Key), pipeline.Binding(validjsonschema.Key), pipeline.Binding(combatrelatedness.Key), }, }) }}, {name: "combat turns normalize validator chain", register: func() error { return registry.Register(pipeline.ValidatorChainMapping{ Stage: pipeline.StageNormalize, Module: combatnormalize.Key, Validators: []pipeline.ModuleBinding{ pipeline.Binding(validjson.Key), pipeline.Binding(combatshape.Key), pipeline.Binding(combatinvariants.Key), pipeline.Binding(combatsourcerefs.Key), pipeline.Binding(validjsonschema.Key), pipeline.Binding(combatrelatedness.Key), }, }) }}, }) }