diff --git a/.conform.yaml b/.conform.yaml index 6b4da1b7..86d43c0f 100644 --- a/.conform.yaml +++ b/.conform.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: CC0-1.0 diff --git a/.github/artifacts.yml b/.github/artifacts.yml index 42bf22d5..584729a6 100644 --- a/.github/artifacts.yml +++ b/.github/artifacts.yml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: CC0-1.0 diff --git a/.github/workflows/pullrequest-workflow.yml b/.github/workflows/pullrequest-workflow.yml index 0251c947..f30bd09e 100644 --- a/.github/workflows/pullrequest-workflow.yml +++ b/.github/workflows/pullrequest-workflow.yml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: CC0-1.0 @@ -14,26 +14,26 @@ on: - 'feature/**' permissions: - contents: read # Best Security practice. Jobs only get read as base, and then permissions are added as needed + contents: read # Best Security practice. Jobs only get read as base, and then permissions are added as needed jobs: pr-checks: uses: diggsweden/reusable-ci/.github/workflows/pullrequest-orchestrator.yml@1a7dcd9c5257495ebf141e4e4b4bac438a8aae56 # v2.0.0 - secrets: inherit # Pass org-level secrets (NPM token if private packages) + secrets: inherit # Pass org-level secrets (NPM token if private packages) permissions: - contents: read # Clone repository and read source code - packages: read # Access private NPM packages from GitHub registry + contents: read # Clone repository and read source code + packages: read # Access private NPM packages from GitHub registry security-events: write # Upload ESLint/security findings to GitHub Security tab with: project-type: npm # MegaLinter is disabled for this project - linters.megalint: false # Skip MegaLinter + linters.megalint: false # Skip MegaLinter linters.publiccodelint: true - + test: needs: [pr-checks] - if: always() # Run tests even if linting fails (get full CI feedback) + if: always() # Run tests even if linting fails (get full CI feedback) permissions: - contents: read # Read test files and source code - packages: read # Fetch test dependencies from registry - uses: ./.github/workflows/test.yml \ No newline at end of file + contents: read # Read test files and source code + packages: read # Fetch test dependencies from registry + uses: ./.github/workflows/test.yml diff --git a/.github/workflows/release-dev-workflow.yml b/.github/workflows/release-dev-workflow.yml index 4c8118e0..7d3c57b5 100644 --- a/.github/workflows/release-dev-workflow.yml +++ b/.github/workflows/release-dev-workflow.yml @@ -1,16 +1,16 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: CC0-1.0 # Release Workflow Dev -# +# # Triggers dev builds for testing on development branches. # Creates: # - Dev container image (ghcr.io) # - Dev NPM package (GitHub Packages) # # Triggers: -# - Push to dev/* or feat/* branches +# - Push to dev/* or feat/* branches # - Manual workflow dispatch # # Created artifacts: @@ -34,5 +34,5 @@ jobs: uses: diggsweden/reusable-ci/.github/workflows/release-dev-orchestrator.yml@1a7dcd9c5257495ebf141e4e4b4bac438a8aae56 # v2.0.0 with: project-type: npm - package-scope: "@diggsweden" - secrets: inherit \ No newline at end of file + package-scope: '@diggsweden' + secrets: inherit diff --git a/.github/workflows/release-workflow.yml b/.github/workflows/release-workflow.yml index 79e8fe77..4aca597f 100644 --- a/.github/workflows/release-workflow.yml +++ b/.github/workflows/release-workflow.yml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: CC0-1.0 @@ -10,30 +10,30 @@ name: Release on: push: tags: - - "v[0-9]+.[0-9]+.[0-9]+" # Stable: v1.0.0 - - "v[0-9]+.[0-9]+.[0-9]+-alpha*" # Alpha: v1.0.0-alpha.1 - - "v[0-9]+.[0-9]+.[0-9]+-beta*" # Beta: v1.0.0-beta.1 - - "v[0-9]+.[0-9]+.[0-9]+-rc*" # RC: v1.0.0-rc.1 + - 'v[0-9]+.[0-9]+.[0-9]+' # Stable: v1.0.0 + - 'v[0-9]+.[0-9]+.[0-9]+-alpha*' # Alpha: v1.0.0-alpha.1 + - 'v[0-9]+.[0-9]+.[0-9]+-beta*' # Beta: v1.0.0-beta.1 + - 'v[0-9]+.[0-9]+.[0-9]+-rc*' # RC: v1.0.0-rc.1 concurrency: group: release-${{ github.ref }} - cancel-in-progress: false # Queue releases, don't cancel partial releases + cancel-in-progress: false # Queue releases, don't cancel partial releases permissions: - contents: read # Best Security practice. Jobs only get read as base, and then permissions are added as needed + contents: read # Best Security practice. Jobs only get read as base, and then permissions are added as needed jobs: release: uses: diggsweden/reusable-ci/.github/workflows/release-orchestrator.yml@1a7dcd9c5257495ebf141e4e4b4bac438a8aae56 # v2.0.0 permissions: - contents: write # Create GitHub releases, push changelog commits - packages: write # Publish to GitHub Packages - id-token: write # Generate OIDC token for SLSA provenance - attestations: write # Attach SBOM attestations - security-events: write # Upload container vulnerability scan results - actions: read # Required for SLSA provenance + contents: write # Create GitHub releases, push changelog commits + packages: write # Publish to GitHub Packages + id-token: write # Generate OIDC token for SLSA provenance + attestations: write # Attach SBOM attestations + security-events: write # Upload container vulnerability scan results + actions: read # Required for SLSA provenance secrets: inherit with: artifacts-config: .github/artifacts.yml - file-pattern: "CHANGELOG.md package.json package-lock.json" - release-publisher: github-cli \ No newline at end of file + file-pattern: 'CHANGELOG.md package.json package-lock.json' + release-publisher: github-cli diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 02ec2f1c..0310b2e2 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: CC0-1.0 --- @@ -17,7 +17,7 @@ jobs: - name: Set up Node.js uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0 with: - node-version: "22.21.0" + node-version: '22.21.0' - name: Install dependencies run: npm ci diff --git a/.gitignore b/.gitignore index 8dc94b18..6ed3d3f8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: CC0-1.0 diff --git a/.npmrc b/.npmrc index 55c829a3..7093424b 100644 --- a/.npmrc +++ b/.npmrc @@ -1,4 +1,4 @@ -; SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +; SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government ; ; SPDX-License-Identifier: CC0-1.0 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 95a7ab77..64543a58 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,5 +1,5 @@ diff --git a/Containerfile b/Containerfile index 0f74e82a..103bf529 100644 --- a/Containerfile +++ b/Containerfile @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: CC0-1.0 diff --git a/GUIDELINES.md b/GUIDELINES.md index 7da30a99..273d1838 100644 --- a/GUIDELINES.md +++ b/GUIDELINES.md @@ -1,5 +1,5 @@ diff --git a/README.md b/README.md index 313f8c50..c8974320 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ diff --git a/REUSE.toml b/REUSE.toml index aca59f0d..39891cc0 100644 --- a/REUSE.toml +++ b/REUSE.toml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: CC0-1.0 @@ -8,7 +8,7 @@ version = 1 [[annotations]] path = ["CHANGELOG.md","tsconfig.json","package.json","package-lock.json"] precedence = "aggregate" -SPDX-FileCopyrightText = "2025 diggsweden/rest-api-profil-lint-processor" +SPDX-FileCopyrightText = "2025 Digg - Agency for Digital Government" SPDX-License-Identifier = "CC0-1.0" # images etc @@ -85,12 +85,12 @@ path = [ "**/*/code_quality.sh", "images/ver6.png"] precedence = "aggregate" -SPDX-FileCopyrightText = "2025 diggsweden/rest-api-profil-lint-processor" +SPDX-FileCopyrightText = "2025 Digg - Agency for Digital Government" SPDX-License-Identifier = "CC0-1.0" # documents etc [[annotations]] path = ["document/Avstaemning_REST_API_profil_v_1_2_0_0.xlsx"] precedence = "aggregate" -SPDX-FileCopyrightText = "2025 diggsweden/rest-api-profil-lint-processor" +SPDX-FileCopyrightText = "2025 Digg - Agency for Digital Government" SPDX-License-Identifier = "CC0-1.0" diff --git a/SECURITY.md b/SECURITY.md index 01d7f033..ed73c95d 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -1,5 +1,5 @@ diff --git a/apis/ame-api.yaml b/apis/ame-api.yaml index 0ea353a8..967efb0c 100644 --- a/apis/ame-api.yaml +++ b/apis/ame-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/arq-api.yaml b/apis/arq-api.yaml index 826290a6..06ddfb2f 100644 --- a/apis/arq-api.yaml +++ b/apis/arq-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/dok-api.yaml b/apis/dok-api.yaml index 0e452ff6..57126ff1 100644 --- a/apis/dok-api.yaml +++ b/apis/dok-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/dot-api.yaml b/apis/dot-api.yaml index 8f14406a..2c0c4563 100644 --- a/apis/dot-api.yaml +++ b/apis/dot-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/fel-api.yaml b/apis/fel-api.yaml index b45466c8..48ef46f0 100644 --- a/apis/fel-api.yaml +++ b/apis/fel-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/fel01-api.yaml b/apis/fel01-api.yaml index 229ca08b..57878ee9 100644 --- a/apis/fel01-api.yaml +++ b/apis/fel01-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/fns-api.yaml b/apis/fns-api.yaml index f8b3b668..ceba3a67 100644 --- a/apis/fns-api.yaml +++ b/apis/fns-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/for-api.yaml b/apis/for-api.yaml index a8e8e5fd..7a41bc5b 100644 --- a/apis/for-api.yaml +++ b/apis/for-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/for.yaml b/apis/for.yaml index 8017c613..2fbaa1e9 100644 --- a/apis/for.yaml +++ b/apis/for.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/hyp-api.yaml b/apis/hyp-api.yaml index 7be2da81..73424a57 100644 --- a/apis/hyp-api.yaml +++ b/apis/hyp-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/mog-api.yaml b/apis/mog-api.yaml index 9fdac15d..a7b76f8b 100644 --- a/apis/mog-api.yaml +++ b/apis/mog-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/res-api.yaml b/apis/res-api.yaml index ac709a9f..cbfe15af 100644 --- a/apis/res-api.yaml +++ b/apis/res-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/sak-api.yaml b/apis/sak-api.yaml index 7a84a2ce..2cd856d6 100644 --- a/apis/sak-api.yaml +++ b/apis/sak-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/ufn-api.yaml b/apis/ufn-api.yaml index 7cdabe62..d8a33a28 100644 --- a/apis/ufn-api.yaml +++ b/apis/ufn-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/apis/ver-api.yaml b/apis/ver-api.yaml index 9b978d11..ceb9e324 100644 --- a/apis/ver-api.yaml +++ b/apis/ver-api.yaml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: EUPL-1.2 diff --git a/development/megalinter.yml b/development/megalinter.yml index 39219f55..835b4b60 100644 --- a/development/megalinter.yml +++ b/development/megalinter.yml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: CC0-1.0 diff --git a/jest.config.cjs b/jest.config.cjs index 056c2c11..08ac347c 100644 --- a/jest.config.cjs +++ b/jest.config.cjs @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 @@ -8,15 +8,17 @@ module.exports = { testEnvironment: 'node', extensionsToTreatAsEsm: ['.ts'], transform: { - '^.+\\.ts$': ['ts-jest', { - useESM: true, - tsconfig: 'tsconfig.jest.json' - }], + '^.+\\.ts$': [ + 'ts-jest', + { + useESM: true, + tsconfig: 'tsconfig.jest.json', + }, + ], }, moduleNameMapper: { '^(\\.{1,2}/.*)\\.js$': '$1', }, transformIgnorePatterns: ['/node_modules/'], testMatch: ['**/tests/unit/**/*.test.ts'], - -}; \ No newline at end of file +}; diff --git a/jest.integration.config.cjs b/jest.integration.config.cjs index 5ca835ab..9a414cfe 100644 --- a/jest.integration.config.cjs +++ b/jest.integration.config.cjs @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 const base = require('./jest.config.cjs'); @@ -6,5 +6,5 @@ const base = require('./jest.config.cjs'); /** @type {import('jest').Config} */ module.exports = { ...base, - testMatch: ['**/tests/integration/**/*.test.ts'] -}; \ No newline at end of file + testMatch: ['**/tests/integration/**/*.test.ts'], +}; diff --git a/publiccode.yml b/publiccode.yml index c02e3a8a..11b7a965 100644 --- a/publiccode.yml +++ b/publiccode.yml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +# SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government # # SPDX-License-Identifier: CC0-1.0 diff --git a/register.js b/register.js index 87f7e2f4..5f470637 100644 --- a/register.js +++ b/register.js @@ -1,8 +1,8 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 import { register } from 'node:module'; import { pathToFileURL } from 'node:url'; -register('ts-node/esm', pathToFileURL('./')); \ No newline at end of file +register('ts-node/esm', pathToFileURL('./')); diff --git a/src/app.ts b/src/app.ts index 871f1556..856fc9f1 100644 --- a/src/app.ts +++ b/src/app.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 @@ -127,12 +127,20 @@ try { } }; const formatLintingResult = (result: any) => { - return `allvarlighetsgrad: ${colorizeSeverity(result.allvarlighetsgrad)} \nid: ${result.id} \nkrav: ${result.krav} \nområde: ${result.område} \nsökväg:[${result.sökväg}] \nomfattning:${JSON.stringify(result.omfattning, null, 2)} `; + return `allvarlighetsgrad: ${colorizeSeverity(result.allvarlighetsgrad)} \nid: ${result.id} \nkrav: ${ + result.krav + } \nområde: ${result.område} \nsökväg:[${result.sökväg}] \nomfattning:${JSON.stringify( + result.omfattning, + null, + 2, + )} `; }; //Check specified option from yargs input const currentDate = new Date(); //.toISOString(); // Get current date and time in ISO format - const formattedDate = `${currentDate.getFullYear()}-${padZero(currentDate.getMonth() + 1)}-${padZero(currentDate.getDate())} ${padZero(currentDate.getHours())}:${padZero(currentDate.getMinutes())}:${padZero(currentDate.getSeconds())}`; + const formattedDate = `${currentDate.getFullYear()}-${padZero(currentDate.getMonth() + 1)}-${padZero( + currentDate.getDate(), + )} ${padZero(currentDate.getHours())}:${padZero(currentDate.getMinutes())}:${padZero(currentDate.getSeconds())}`; function padZero(num: number): string { return num < 10 ? `0${num}` : `${num}`; diff --git a/src/cli.ts b/src/cli.ts index a2e6e53d..cda980ca 100644 --- a/src/cli.ts +++ b/src/cli.ts @@ -1,5 +1,5 @@ #!/usr/bin/env node -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 -import "./app.js"; \ No newline at end of file +import './app.js'; diff --git a/src/ruleinterface/CustomProperties.ts b/src/ruleinterface/CustomProperties.ts index 221f0d4c..51fe56a3 100644 --- a/src/ruleinterface/CustomProperties.ts +++ b/src/ruleinterface/CustomProperties.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/ruleinterface/RuleInterface.ts b/src/ruleinterface/RuleInterface.ts index 340b393d..d16bae23 100644 --- a/src/ruleinterface/RuleInterface.ts +++ b/src/ruleinterface/RuleInterface.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/AmeRules.ts b/src/rulesets/AmeRules.ts index 2f08f089..de81f344 100644 --- a/src/rulesets/AmeRules.ts +++ b/src/rulesets/AmeRules.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/ArqRules.ts b/src/rulesets/ArqRules.ts index a1cecd31..d5898aec 100644 --- a/src/rulesets/ArqRules.ts +++ b/src/rulesets/ArqRules.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/BaseRuleset.ts b/src/rulesets/BaseRuleset.ts index 76666649..ff8a67ba 100644 --- a/src/rulesets/BaseRuleset.ts +++ b/src/rulesets/BaseRuleset.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/DokRules.ts b/src/rulesets/DokRules.ts index 09ecb0e7..4b4ad446 100644 --- a/src/rulesets/DokRules.ts +++ b/src/rulesets/DokRules.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 @@ -398,11 +398,11 @@ export class Dok19 extends BaseRuleset { message = 'Ett API:s resurser och de möjliga operationer som kan utföras på resursen SKALL beskrivas så utförligt och tydligt som möjligt'; then = [ - { + { field: 'summary', function: truthy, }, - { + { field: 'description', function: truthy, }, diff --git a/src/rulesets/DotRules.ts b/src/rulesets/DotRules.ts index 82598e04..1f56cfca 100644 --- a/src/rulesets/DotRules.ts +++ b/src/rulesets/DotRules.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/FelRules.ts b/src/rulesets/FelRules.ts index b72b1fbe..f04df54d 100644 --- a/src/rulesets/FelRules.ts +++ b/src/rulesets/FelRules.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 @@ -13,7 +13,9 @@ const moduleName: string = 'FelRules.js'; */ export class Fel01 extends BaseRuleset { static mandatoryProperties = ['type', 'title', 'status', 'detail', 'instance']; - static ruleMessage = `Om HTTP svarskoderna inte räcker SKALL (FEL.01) API:et beskriva feldetaljer enligt RFC 9457 med dessa ingående attribut; ${Fel01.mandatoryProperties.join(', ')}.`; + static ruleMessage = `Om HTTP svarskoderna inte räcker SKALL (FEL.01) API:et beskriva feldetaljer enligt RFC 9457 med dessa ingående attribut; ${Fel01.mandatoryProperties.join( + ', ', + )}.`; static customProperties: CustomProperties = { område: 'Felhantering', diff --git a/src/rulesets/FnsRules.ts b/src/rulesets/FnsRules.ts index dd11fd0c..8c25bd4a 100644 --- a/src/rulesets/FnsRules.ts +++ b/src/rulesets/FnsRules.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/ForRules.ts b/src/rulesets/ForRules.ts index aef7af81..5121974f 100644 --- a/src/rulesets/ForRules.ts +++ b/src/rulesets/ForRules.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/MogRules.ts b/src/rulesets/MogRules.ts index 8ca2195b..0fe6e7ba 100644 --- a/src/rulesets/MogRules.ts +++ b/src/rulesets/MogRules.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/ResRules.ts b/src/rulesets/ResRules.ts index 0105c44d..85b734ad 100644 --- a/src/rulesets/ResRules.ts +++ b/src/rulesets/ResRules.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 @@ -102,7 +102,7 @@ export class Res06 extends BaseRuleset { this.severity, this.constructor.name, moduleName, - Res06.customProperties + Res06.customProperties, ); }, }, diff --git a/src/rulesets/SakRules.ts b/src/rulesets/SakRules.ts index 89098014..9e370bb4 100644 --- a/src/rulesets/SakRules.ts +++ b/src/rulesets/SakRules.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/UfnRules.ts b/src/rulesets/UfnRules.ts index d78b5463..89551e51 100644 --- a/src/rulesets/UfnRules.ts +++ b/src/rulesets/UfnRules.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 @@ -32,7 +32,7 @@ export class Ufn01 extends BaseRuleset { function: pattern, functionOptions: { match: - '^(?^[^\/]*:\/\/)+(?(?<=:\/\/)[^\/]+\/)+(?(?<=\/)[^\/]+?\/)(?(?<=\/)v+[0-9]+)+(?\/$|$)', + '^(?^[^/]*://)+(?(?<=://)[^/]+/)+(?(?<=/)[^/]+?/)(?(?<=/)v+[0-9]+)+(?/$|$)', }, }, { diff --git a/src/rulesets/VerRules.ts b/src/rulesets/VerRules.ts index 96f41460..3aa19e7d 100644 --- a/src/rulesets/VerRules.ts +++ b/src/rulesets/VerRules.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/constants/CommonWords.ts b/src/rulesets/constants/CommonWords.ts index d884ec02..6d8a5d99 100644 --- a/src/rulesets/constants/CommonWords.ts +++ b/src/rulesets/constants/CommonWords.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/constants/ResConstants.ts b/src/rulesets/constants/ResConstants.ts index 74b229e0..b8d27548 100644 --- a/src/rulesets/constants/ResConstants.ts +++ b/src/rulesets/constants/ResConstants.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/rulesetUtil.ts b/src/rulesets/rulesetUtil.ts index 84baaa52..8f30fe6b 100644 --- a/src/rulesets/rulesetUtil.ts +++ b/src/rulesets/rulesetUtil.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/util/AmeRulesUtil.ts b/src/rulesets/util/AmeRulesUtil.ts index d63e485d..445cd7e5 100644 --- a/src/rulesets/util/AmeRulesUtil.ts +++ b/src/rulesets/util/AmeRulesUtil.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/util/CustomOasVersion.ts b/src/rulesets/util/CustomOasVersion.ts index d7b6f7fb..314d9955 100644 --- a/src/rulesets/util/CustomOasVersion.ts +++ b/src/rulesets/util/CustomOasVersion.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/util/DotRulesUtil.ts b/src/rulesets/util/DotRulesUtil.ts index db46ddb8..ea9e4454 100644 --- a/src/rulesets/util/DotRulesUtil.ts +++ b/src/rulesets/util/DotRulesUtil.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/rulesets/util/MogRulesUtil.ts b/src/rulesets/util/MogRulesUtil.ts index 4293719c..921e8dd5 100644 --- a/src/rulesets/util/MogRulesUtil.ts +++ b/src/rulesets/util/MogRulesUtil.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/util/RapLPCustomErrorInfo.ts b/src/util/RapLPCustomErrorInfo.ts index 3866a535..08a46883 100644 --- a/src/util/RapLPCustomErrorInfo.ts +++ b/src/util/RapLPCustomErrorInfo.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/util/RapLPCustomSpectral.ts b/src/util/RapLPCustomSpectral.ts index 11bc93b2..deae8681 100644 --- a/src/util/RapLPCustomSpectral.ts +++ b/src/util/RapLPCustomSpectral.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/util/RapLPCustomSpectralDiagnostic.ts b/src/util/RapLPCustomSpectralDiagnostic.ts index 517fe1f1..c73ca651 100644 --- a/src/util/RapLPCustomSpectralDiagnostic.ts +++ b/src/util/RapLPCustomSpectralDiagnostic.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/util/RapLPDiagnostic.ts b/src/util/RapLPDiagnostic.ts index 5c4cc93d..b4613d87 100644 --- a/src/util/RapLPDiagnostic.ts +++ b/src/util/RapLPDiagnostic.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/util/RuleExecutionStatusModule.ts b/src/util/RuleExecutionStatusModule.ts index 8c755d6b..6ea70644 100644 --- a/src/util/RuleExecutionStatusModule.ts +++ b/src/util/RuleExecutionStatusModule.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/src/util/excelReportProcessor.ts b/src/util/excelReportProcessor.ts index bd8f2c25..441034d0 100644 --- a/src/util/excelReportProcessor.ts +++ b/src/util/excelReportProcessor.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 @@ -254,9 +254,9 @@ export class ExcelReportProcessor { } }); - const xmlString = this.builder.build(sheet); - const xmlBuffer = Buffer.from(xmlString, 'utf8'); - this.zip.updateFile(sheetPath, xmlBuffer); + const xmlString = this.builder.build(sheet); + const xmlBuffer = Buffer.from(xmlString, 'utf8'); + this.zip.updateFile(sheetPath, xmlBuffer); } /** diff --git a/src/util/ruleUtil.ts b/src/util/ruleUtil.ts index 1343756a..beb1cb62 100644 --- a/src/util/ruleUtil.ts +++ b/src/util/ruleUtil.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/unit/ame.test.ts b/tests/unit/ame.test.ts index f8d2f241..58ca9cfa 100644 --- a/tests/unit/ame.test.ts +++ b/tests/unit/ame.test.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/unit/ameUtils.test.ts b/tests/unit/ameUtils.test.ts index c4c38d15..0e00b674 100644 --- a/tests/unit/ameUtils.test.ts +++ b/tests/unit/ameUtils.test.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/unit/arq.test.ts b/tests/unit/arq.test.ts index 24ecbf99..0c944f62 100644 --- a/tests/unit/arq.test.ts +++ b/tests/unit/arq.test.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/unit/dok.test.ts b/tests/unit/dok.test.ts index f31a64fa..06e2ff31 100644 --- a/tests/unit/dok.test.ts +++ b/tests/unit/dok.test.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/unit/dot.test.ts b/tests/unit/dot.test.ts index 9380f8fb..d5a9a2cf 100644 --- a/tests/unit/dot.test.ts +++ b/tests/unit/dot.test.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/unit/fel.test.ts b/tests/unit/fel.test.ts index d33fcb60..b04c89d4 100644 --- a/tests/unit/fel.test.ts +++ b/tests/unit/fel.test.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/unit/fns.test.ts b/tests/unit/fns.test.ts index 12ddc2fb..e0b6d3ba 100644 --- a/tests/unit/fns.test.ts +++ b/tests/unit/fns.test.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/unit/for.test.ts b/tests/unit/for.test.ts index f08dda87..5062cf6a 100644 --- a/tests/unit/for.test.ts +++ b/tests/unit/for.test.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/unit/mog.test.ts b/tests/unit/mog.test.ts index 063abeb3..ba52603c 100644 --- a/tests/unit/mog.test.ts +++ b/tests/unit/mog.test.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/unit/res.test.ts b/tests/unit/res.test.ts index ec74d0b7..c25011fa 100644 --- a/tests/unit/res.test.ts +++ b/tests/unit/res.test.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/unit/sak.test.ts b/tests/unit/sak.test.ts index 8db0d212..1e5d24df 100644 --- a/tests/unit/sak.test.ts +++ b/tests/unit/sak.test.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/unit/ufn.test.ts b/tests/unit/ufn.test.ts index c07c9510..546bb215 100644 --- a/tests/unit/ufn.test.ts +++ b/tests/unit/ufn.test.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/unit/ver.test.ts b/tests/unit/ver.test.ts index 608d1ec2..eed94ad0 100644 --- a/tests/unit/ver.test.ts +++ b/tests/unit/ver.test.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/util/helperTest.ts b/tests/util/helperTest.ts index 715a4213..470c402e 100644 --- a/tests/util/helperTest.ts +++ b/tests/util/helperTest.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2 diff --git a/tests/util/rulesetTest.ts b/tests/util/rulesetTest.ts index 983a07fe..2f2a4851 100644 --- a/tests/util/rulesetTest.ts +++ b/tests/util/rulesetTest.ts @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2025 diggsweden/rest-api-profil-lint-processor +// SPDX-FileCopyrightText: 2025 Digg - Agency for Digital Government // // SPDX-License-Identifier: EUPL-1.2