{
  "name": "n8n-nodes-sevdesk-v2",
  "version": "2.4.1",
  "description": "n8n community node for SevDesk API v2 integration with 24 production-ready workflow templates. Direct API access without external dependencies - simplified, secure, and optimized for German accounting automation (n8n 1.101.1 compatible).",
  "keywords": [
    "n8n-community-node-package",
    "sevdesk",
    "accounting",
    "invoice",
    "contact",
    "german",
    "api",
    "automation",
    "buchhaltung",
    "rechnung",
    "workflows",
    "templates",
    "skr03",
    "gobd",
    "datev"
  ],
  "license": "MIT",
  "homepage": "https://github.com/knackw/n8n-nodes-sevdesk-v2",
  "author": {
    "name": "Community",
    "email": "community@n8n-nodes-sevdesk-v2.org"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/knackw/n8n-nodes-sevdesk-v2.git"
  },
  "main": "index.js",
  "scripts": {
    "start": "node tools/start-n8n-workflows.js",
    "build": "tsc && gulp --gulpfile tools/gulpfile.js build:icons",
    "build:prod": "npm run clean && npm run lint && tsc --project tsconfig.prod.json && gulp --gulpfile tools/gulpfile.js build:icons && npm run build:validate",
    "build:validate": "node -e \"console.log('✅ Build validation passed'); process.exit(require('fs').existsSync('./dist/nodes/SevDesk/SevDesk.node.js') && require('fs').existsSync('./dist/credentials/SevDeskApi.credentials.js') ? 0 : 1)\"",
    "build:analyze": "npm run build:prod && node -e \"const fs=require('fs'); const path=require('path'); const getSize=p=>fs.statSync(p).size; console.log('📊 Build Analysis:'); console.log('Node:', Math.round(getSize('./dist/nodes/SevDesk/SevDesk.node.js')/1024)+'KB'); console.log('Credentials:', Math.round(getSize('./dist/credentials/SevDeskApi.credentials.js')/1024)+'KB');\"",
    "dev": "tsc --watch",
    "format": "prettier nodes credentials --write",
    "lint": "eslint nodes credentials package.json",
    "lintfix": "eslint nodes credentials package.json --fix",
    "prepublishOnly": "npm run clean && npm run lint && npx tsc --project tsconfig.prod.json && npx gulp --gulpfile tools/gulpfile.js build:icons && npm run build:validate",
    "test": "jest",
    "test:watch": "jest --watch",
    "test:coverage": "jest --coverage",
    "clean": "rimraf dist",
    "prebuild": "npm run clean",
    "prepare": "husky"
  },
  "files": [
    "dist"
  ],
  "n8n": {
    "n8nNodesApiVersion": 1,
    "credentials": [
      "dist/credentials/SevDeskApi.credentials.js"
    ],
    "nodes": [
      "dist/nodes/SevDesk/SevDesk.node.js"
    ]
  },
  "devDependencies": {
    "@faker-js/faker": "9.8.0",
    "@types/express": "4.17.21",
    "@types/jest": "29.5.14",
    "@types/node": "20.17.9",
    "@typescript-eslint/eslint-plugin": "7.18.0",
    "@typescript-eslint/parser": "7.18.0",
    "eslint": "8.57.1",
    "eslint-plugin-n8n-nodes-base": "1.16.1",
    "gulp": "4.0.2",
    "husky": "9.1.7",
    "jest": "29.7.0",
    "lint-staged": "15.2.10",
    "n8n-core": "1.70.0",
    "n8n-nodes-base": "1.70.0",
    "n8n-workflow": "1.70.0",
    "prettier": "3.4.2",
    "rimraf": "^6.0.1",
    "ts-jest": "29.2.5",
    "typescript": "5.6.3"
  },
  "dependencies": {
    "axios": "1.7.9",
    "dotenv": "16.3.1"
  },
  "engines": {
    "node": ">=18.0.0"
  },
  "publishConfig": {
    "access": "public"
  },
  "lint-staged": {
    "*.ts": [
      "eslint --fix",
      "prettier --write"
    ],
    "*.{json,md}": [
      "prettier --write"
    ]
  }
}
