# @sap/di.code-validation.core

> Code validation

Latest version **1.0.18** (published 2026-05-24) · SEE LICENSE IN LICENSE license · 0 weekly downloads

## Install

```sh
npm install @sap/di.code-validation.core
pnpm add @sap/di.code-validation.core
yarn add @sap/di.code-validation.core
bun add @sap/di.code-validation.core
```

Provides the command `validationframework`.

## Health

**Score 45/100 (D)** — status: active.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

## Facts

| | |
|---|---|
| Version | 1.0.18 |
| Published | 2026-05-24 |
| First published | 2020-06-11 |
| Weekly downloads | 0 |
| License | SEE LICENSE IN LICENSE |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 55.1 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Maintainers | sap_extncrepos, sap-ospo-admin |

## Links

- npm: https://www.npmjs.com/package/@sap/di.code-validation.core
- npm.io page: https://npm.io/package/@sap/di.code-validation.core

## Dependencies (1)

- [optionator](https://npm.io/package/optionator.md) 0.9.1

## Recent versions

- 1.0.18 (latest) — 2026-05-24
- 1.0.17 — 2021-11-23
- 1.0.16 — 2021-02-10
- 1.0.13 — 2020-07-20
- 1.0.3 — 2020-06-11
- 1.0.1 — 2020-06-11
- 1.0.11 — 2020-06-11
- 1.0.12 — 2020-06-11
- 1.0.5 — 2020-06-11
- 1.0.9 — 2020-06-11

## README

# di.code-validation.core  
code validation controller for DI.
returning issues in code according to validators configured

### install

npm install di.code-validation.core --save-dev

### CodeValidation API

```javascript
executeForProject(projectPath, workspaceRootName, configuration, callbackFunction)
```

_basePath_ - full path for the validated folder location

_options_ - an object to set additional options for execution and return values processing.

_options.pathPrefix_ - validation issues paths are relative to the project path. _pathPrefix enable to set constant prefix to the returned path.

_configuration_ - configuration of the validators to execute.  object of type _ValidationConfig_

_callbackFunction_ - callback of results. (TBD: add also failure for callback?)

_ValidationConfig_ structure:
```javascript
  {
      "validators" : {
          "validator1" : {
              "extensions" : ['.js', '.xsjs'],
              "filters": {
                  "levels" :["error", "warning", "info"]
              }
          },
          "validator2" : {
              "extensions" : ['.new'],
              "filters": {
                  "levels" :["error"]
              }
          }
          ....
      }
  }
```

_result_ structure:
```javascript
{
    "validator_id" : {
        "issues" : {
            "relative_file_path" : [
                {
                    "category" : "Possible Error",
                    "checker" : "validator checker name",
                    "column" : 1,
                    "line" : 14,
                    "message" : "some message",
                    "path" : "relative_file_path",
                    "ruleId" : "optional name of rule",
                    "severity" : "error"
                }
                ....
            ]
        }
        ....
    }
}
```

#### validator API

Each validator should implement following API:

```javascript
  validateFiles(validationMetadata, fileResources)
```

  _validationMetadata_ - contains following methods:
  
      getRootPath() - workspaceRootName
  
      getLevels() - array of levels of issues to return
  
  _fileResources_ - array of files to validate (TBD: enable validation by extension of regular expression)
  
      getPath() - returns the file full path
      
      getText() - returns the text in the file

#### run validation from command line

node di.code-validation.core\bin\run.js "project file location" "client workspace root path"

--c "configuration file location" - file with validation configuration. if not supplied defaults used.

Example for configuration file:

```javascript
  var configParam = { 
    "validators" : { 
      "di.code-validation.js" : { 
          "extensions" : [".js", ".xsjs"], 
          "filters": { 
            "levels" :["error", "warning", "info"] 
            } 
          } 
        } 
      };
  module.exports =  configParam;
```

--l "log file" - location of the outpul log file. default is the execution directory

### default configuration:

```javascript
  validators: {
    "di.code-validation.js": {
      extensions: [".js", ".xsjs"]
    },
    "di.code-validation.xml": {
      extensions: [ ".xml"]
    }
  }
```

---
_Source: https://npm.io/package/@sap/di.code-validation.core · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
