[console_scripts]
oarepo-compile-model = oarepo_model_builder.cli:run
oarepo-merge = oarepo_model_builder.merger:merger

[oarepo.model_schemas]
datatypes = oarepo_model_builder.validation.schemas:datatypes.json5
date = oarepo_model_builder.validation.schemas:date.json5
es-strings = oarepo_model_builder.validation.schemas:es_strings.json5
expandable-fields = oarepo_model_builder.validation.schemas:expandable_fields.json5
extend = oarepo_model_builder.validation.schemas:extend.json5
facets = oarepo_model_builder.validation.schemas:facets.json5
faker = oarepo_model_builder.validation.schemas:faker.json5
jsonschema = oarepo_model_builder.validation.schemas:jsonschema.json5
mapping = oarepo_model_builder.validation.schemas:mapping.json5
marshmallow = oarepo_model_builder.validation.schemas:marshmallow.json5
model-settings = oarepo_model_builder.validation.schemas:model_properties.json5
modelschema = oarepo_model_builder.validation.schemas:model.json5
opensearch = oarepo_model_builder.validation.schemas:opensearch.json5
plugins = oarepo_model_builder.validation.schemas:plugins.json5
settings = oarepo_model_builder.validation.schemas:settings.json5
sort = oarepo_model_builder.validation.schemas:sort.json5

[oarepo.models]
invenio = oarepo_model_builder.builtin_models:invenio.json

[oarepo_model_builder.builders.extend]
1000-model = oarepo_model_builder.builders.extend:ExtendBuilder

[oarepo_model_builder.builders.model]
0020-jsonschema = oarepo_model_builder.builders.jsonschema:JSONSchemaBuilder
0030-mapping = oarepo_model_builder.builders.mapping:MappingBuilder
0050-setup-cfg = oarepo_model_builder.builders.setup_cfg:SetupCfgBuilder
0060-setup-py = oarepo_model_builder.builders.setup_py:SetupPyBuilder
0070-pyproject-toml = oarepo_model_builder.builders.pyproject_toml:PyprojectTOMLBuilder
0100-python_structure = oarepo_model_builder.builders.python_structure:PythonStructureBuilder
0110-invenio_record = oarepo_model_builder.invenio.invenio_record:InvenioRecordBuilder
0120-invenio_record_metadata = oarepo_model_builder.invenio.invenio_record_metadata:InvenioRecordMetadataBuilder
0130-invenio_record_schema = oarepo_model_builder.invenio.invenio_record_schema:InvenioRecordSchemaBuilder
0200-invenio_record_permissions = oarepo_model_builder.invenio.invenio_record_permissions:InvenioRecordPermissionsBuilder
0300-invenio_record_search_options = oarepo_model_builder.invenio.invenio_record_search:InvenioRecordSearchOptionsBuilder
0310-invenio_record_service_config = oarepo_model_builder.invenio.invenio_record_service_config:InvenioRecordServiceConfigBuilder
0320-invenio_record_service = oarepo_model_builder.invenio.invenio_record_service:InvenioRecordServiceBuilder
0340-invenio_record_dumper = oarepo_model_builder.invenio.invenio_record_dumper:InvenioRecordDumperBuilder
0400-invenio_record_resource_config = oarepo_model_builder.invenio.invenio_record_resource_config:InvenioRecordResourceConfigBuilder
0410-invenio_record_resource = oarepo_model_builder.invenio.invenio_record_resource:InvenioRecordResourceBuilder
0420-invenio_views = oarepo_model_builder.invenio.invenio_views:InvenioViewsBuilder
0500-invenio_config = oarepo_model_builder.invenio.invenio_config:InvenioConfigBuilder
0600-invenio_ext = oarepo_model_builder.invenio.invenio_ext:InvenioExtBuilder
0610-invenio_ext_setup_cfg = oarepo_model_builder.invenio.invenio_ext_setup_cfg:InvenioExtSetupCfgBuilder
0700-invenio_ext = oarepo_model_builder.invenio.invenio_proxies:InvenioProxiesBuilder
0910-invenio_record_metadata_alembic_setup_cfg = oarepo_model_builder.invenio.invenio_record_metadata_alembic_setup_cfg:InvenioRecordMetadataAlembicSetupCfgBuilder
0920-invenio_record_metadata_models_setup_cfg = oarepo_model_builder.invenio.invenio_record_metadata_models_setup_cfg:InvenioRecordMetadataModelsSetupCfgBuilder
0930-invenio_resource_setup_cfg = oarepo_model_builder.invenio.invenio_record_resource_setup_cfg:InvenioRecordResourceSetupCfgBuilder
0940-invenio_record_search_setup_cfg = oarepo_model_builder.invenio.invenio_record_search_setup_cfg:InvenioRecordSearchSetupCfgBuilder
0950-invenio_record_jsonschemas_setup_cfg = oarepo_model_builder.invenio.invenio_record_jsonschemas_setup_cfg:InvenioRecordJSONSchemasSetupCfgBuilder
1030-invenio_script_sample_data = oarepo_model_builder.invenio.invenio_script_sample_data:InvenioScriptSampleDataBuilder
1050-invenio_version = oarepo_model_builder.invenio.invenio_version:InvenioVersionBuilder
2000-model_saver = oarepo_model_builder.builders.model_saver:ModelSaverBuilder
2010-model_registration = oarepo_model_builder.builders.model_saver:ModelRegistrationBuilder
3000-cli = oarepo_model_builder.invenio.invenio_cli:InvenioCliBuilder
3010-cli_setup = oarepo_model_builder.invenio.invenio_cli_setup_cfg:InvenioCliSetupCfgBuilder

[oarepo_model_builder.datatypes]
0100-default-datatypes = oarepo_model_builder.datatypes:DEFAULT_DATATYPES

[oarepo_model_builder.loaders]
json = oarepo_model_builder.loaders:json_loader
json5 = oarepo_model_builder.loaders:json_loader
yaml = oarepo_model_builder.loaders:yaml_loader
yml = oarepo_model_builder.loaders:yaml_loader

[oarepo_model_builder.model_preprocessors.extend]
1000-base-classes = oarepo_model_builder.model_preprocessors.extend:BaseClassesModelPreprocessor

[oarepo_model_builder.model_preprocessors.model]
01-default = oarepo_model_builder.model_preprocessors.default_values:DefaultValuesModelPreprocessor
10-invenio = oarepo_model_builder.model_preprocessors.invenio:InvenioModelPreprocessor
11-invenio = oarepo_model_builder.model_preprocessors.invenio_base_classes:InvenioBaseClassesModelPreprocessor
20-opensearch = oarepo_model_builder.model_preprocessors.opensearch:OpensearchModelPreprocessor

[oarepo_model_builder.outputs]
cfg = oarepo_model_builder.outputs.cfg:CFGOutput
diff = oarepo_model_builder.outputs.diff:DiffOutput
json = oarepo_model_builder.outputs.json:JSONOutput
jsonschema = oarepo_model_builder.outputs.jsonschema:JSONSchemaOutput
mapping = oarepo_model_builder.outputs.mapping:MappingOutput
python = oarepo_model_builder.outputs.python:PythonOutput
text = oarepo_model_builder.outputs.text:TextOutput
toml = oarepo_model_builder.outputs.toml:TOMLOutput
yaml = oarepo_model_builder.outputs.yaml:YAMLOutput

[oarepo_model_builder.profiles]
extend = oarepo_model_builder.profiles.extend:ExtendProfile
model = oarepo_model_builder.profiles.model:ModelProfile

[oarepo_model_builder.property_preprocessors.extend]
0100-type_shortcuts = oarepo_model_builder.property_preprocessors.type_shortcuts:TypeShortcutsPreprocessor
1000-disable-marshmallow = oarepo_model_builder.property_preprocessors.extend:DisableMarshmallowPreprocessor

[oarepo_model_builder.property_preprocessors.model]
200-datatypes = oarepo_model_builder.property_preprocessors.datatype_preprocessor:DataTypePreprocessor
300-enums = oarepo_model_builder.property_preprocessors.enum:EnumPreprocessor

[oarepo_model_builder.templates]
99-base_generic_templates = oarepo_model_builder.builders
99-base_invenio_templates = oarepo_model_builder.invenio

[oarepo_model_builder.validation]
builtin-validation = oarepo_model_builder.validation.registration:validators
