{
  "name": "node-red-contrib-sun-position",
  "version": "3.0.1",
  "description": "NodeRED nodes to get sun and moon position",
  "keywords": [
    "node-red",
    "nodes",
    "flow",
    "sun-position",
    "moon-position",
    "heavenly body",
    "sun",
    "sun events",
    "moon",
    "moon events",
    "position",
    "luminary",
    "sunpos",
    "suncalc",
    "mooncalc",
    "node-red",
    "router",
    "switch",
    "inject",
    "timer",
    "time",
    "timeswitch",
    "timerswitch",
    "timespan",
    "time-range",
    "time-range-switch",
    "timecheck",
    "time-calc",
    "time-comp",
    "time-compare",
    "time-span",
    "time-offset",
    "compare",
    "clock",
    "schedule",
    "compare",
    "calculate",
    "redmatic",
    "blind",
    "blind-control",
    "home+automation",
    "cover",
    "roller",
    "shutter"
  ],
  "main": "none",
  "engines": {
    "node": ">=22.9.0"
  },
  "scripts": {
    "test": "eslint \"./**/*.js\" \"./**/*.html\" && node-red-dev validate && mocha \"test/**/*_spec.js\"",
    "testnode": "mocha \"test/**/*_spec.js\"",
    "testnodes": "mocha \"test/**/*_spec.js\"",
    "lintfix": "eslint --fix \"./**/*.js\" \"./**/*.html\"",
    "lint": "eslint \"./**/*.js\" \"./**/*.html\"",
    "predev": "npm i -g",
    "dev": "node-red -v",
    "prepublishOnly_off": "eslint \"./**/*.js\" \"./**/*.html\" && node-red-dev validate && mocha \"test/**/*_spec.js\""
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/rdmtc/node-red-contrib-sun-position.git"
  },
  "author": {
    "name": "Hypnos3",
    "email": "hypnos3@online.de",
    "url": "https://github.com/hypnos3"
  },
  "contributors": [
    {
      "name": "Hypnos3",
      "url": "https://github.com/hypnos3"
    },
    {
      "name": "Marc Hoppe",
      "url": "https://github.com/mhop"
    },
    {
      "name": "Mauricio Bonani",
      "url": "https://github.com/bonanitech"
    },
    {
      "name": "Tom Hoover",
      "url": "https://github.com/tomhoover"
    }
  ],
  "license": "Apache-2.0",
  "bugs": {
    "url": "https://github.com/rdmtc/node-red-contrib-sun-position/issues"
  },
  "homepage": "https://github.com/rdmtc/node-red-contrib-sun-position#readme",
  "node-red": {
    "version": ">=5.0.0",
    "nodes": {
      "position-config": "nodes/10-position-config.js",
      "time-inject": "nodes/20-time-inject.js",
      "within-time-switch": "nodes/21-within-time-switch.js",
      "delay-until": "nodes/22-delay-until.js",
      "sun-position": "nodes/30-sun-position.js",
      "moon-position": "nodes/31-moon-position.js",
      "time-comp": "nodes/60-time-comp.js",
      "time-span": "nodes/61-time-span.js",
      "blind-control": "nodes/80-blind-control.js",
      "clock-timer": "nodes/81-clock-timer.js"
    }
  },
  "dependencies": {
    "suncalc3": "^2.0.5",
    "lodash.clonedeep": "^4.5.0",
    "lodash.isequal": "^4.5.0",
    "cronosjs": "^1.7.1"
  },
  "devDependencies": {
    "eslint": "^8.57.0",
    "eslint-plugin-html": "^7.0.0",
    "eslint-plugin-jsdoc": "^48.0.0",
    "eslint-plugin-json": "^4.0.1",
    "eslint-plugin-node": "^11.1.0",
    "@types/express": "^5.0.1",
    "@types/jquery": "^3.5.32",
    "@types/node-red": "^1.3.5",
    "jsonata": "^2.0.6",
    "mocha": "^11.1.0",
    "node-red": "5.0.0",
    "node-red-dev": "^0.1.6",
    "node-red-node-test-helper": "^0.3.4",
    "should": "^13.2.3",
    "should-sinon": "^0.0.6",
    "sinon": "^20.0.0"
  },
  "eslintConfig": {
    "env": {
      "es6": true,
      "node": true,
      "browser": true,
      "commonjs": true,
      "jquery": true
    },
    "plugins": [
      "html"
    ],
    "extends": "eslint:recommended",
    "settings": {
      "html/html-extensions": [
        ".html",
        ".htm",
        ".we"
      ],
      "html/indent": "+4",
      "html/report-bad-indent": "error",
      "import/resolver": {
        "node": {
          "extensions": [
            ".js",
            ".jsx"
          ]
        }
      }
    },
    "globals": {
      "RED": true
    },
    "parserOptions": {
      "ecmaVersion": 2018,
      "sourceType": "module"
    },
    "rules": {
      "indent": [
        "error",
        4,
        {
          "SwitchCase": 1
        }
      ],
      "max-len": [
        "error",
        {
          "code": 250,
          "ignoreComments": true,
          "ignoreTrailingComments": true,
          "ignoreUrls": true,
          "ignoreRegExpLiterals": true,
          "ignoreTemplateLiterals": true
        }
      ],
      "no-eq-null": "error",
      "eqeqeq": "error",
      "no-else-return": "error",
      "prefer-arrow-callback": "error",
      "no-confusing-arrow": [
        "error",
        {
          "allowParens": true
        }
      ],
      "arrow-parens": [
        "error",
        "as-needed"
      ],
      "no-console": "warn",
      "no-unused-vars": [
        "warn",
        {
          "args": "after-used",
          "argsIgnorePattern": "^_"
        }
      ],
      "no-unused-expressions": "warn",
      "no-useless-escape": "warn",
      "no-constant-condition": "off",
      "no-multiple-empty-lines": [
        "error",
        {
          "max": 2,
          "maxEOF": 1
        }
      ],
      "no-var": "error",
      "object-shorthand": [
        "error",
        "always"
      ],
      "prefer-const": "error",
      "prefer-rest-params": "error",
      "no-useless-concat": "error",
      "no-template-curly-in-string": "error",
      "require-jsdoc": "warn",
      "rest-spread-spacing": [
        "error",
        "never"
      ],
      "symbol-description": "error",
      "array-callback-return": "error",
      "consistent-return": "error",
      "no-lone-blocks": "error",
      "brace-style": [
        2,
        "1tbs",
        {
          "allowSingleLine": true
        }
      ],
      "quotes": [
        "warn",
        "single",
        {
          "avoidEscape": true,
          "allowTemplateLiterals": true
        }
      ],
      "semi": [
        "error",
        "always"
      ],
      "comma-dangle": [
        "warn",
        {
          "arrays": "ignore",
          "objects": "ignore",
          "imports": "never",
          "exports": "never",
          "functions": "ignore"
        }
      ],
      "no-trailing-spaces": "warn",
      "spaced-comment": [
        "warn",
        "always",
        {
          "line": {
            "markers": [
              "/",
              "*"
            ],
            "exceptions": [
              "-",
              "+",
              "*",
              "#"
            ]
          },
          "block": {
            "markers": [
              "!"
            ],
            "exceptions": [
              "-",
              "+",
              "*",
              "#"
            ],
            "balanced": true
          }
        }
      ]
    }
  }
}
