{
    "name": "@flowfuse/node-red-dashboard",
    "version": "1.15.0",
    "description": "Dashboard 2.0 - A collection of Node-RED nodes that provide functionality to build your own UI applications (inc. forms, buttons, charts).",
    "keywords": [
        "node-red"
    ],
    "homepage": "https://dashboard.flowfuse.com",
    "repository": {
        "type": "git",
        "url": "https://github.com/FlowFuse/node-red-dashboard.git"
    },
    "license": "Apache-2.0",
    "author": {
        "name": "Joe Pavitt",
        "url": "https://github.com/joepavitt"
    },
    "contributors": [
        {
            "name": "Pez Cuckow",
            "url": "https://github.com/pezmc"
        },
        {
            "name": "FlowFuse",
            "url": "https://flowfuse.com"
        }
    ],
    "files": [
        "dist/*",
        "nodes/*"
    ],
    "scripts": {
        "build": "vite build",
        "build:dev": "NODE_ENV=development npm run build",
        "cy:open": "cypress open",
        "cy:run": "cypress run",
        "cy:server": "node-red -u ./cypress/fixtures/user-dir/ -p 1881",
        "dev": "NODE_ENV=development vite build --watch",
        "dev:prod": "vite build --watch",
        "docs:build": "vitepress build docs",
        "docs:dev": "vitepress dev docs",
        "generate-pwa-assets": "pwa-assets-generator",
        "lint": "npm run lint:js && npm run lint:package",
        "lint:fix": "npm run lint:js:fix && npm run lint:package:fix",
        "lint:js": "eslint --ext .js,.vue,.cjs,.mjs .",
        "lint:js:fix": "yarn lint:js --fix",
        "lint:package": "sort-package-json --check 'package.json'",
        "lint:package:fix": "sort-package-json 'package.json'",
        "test": "mocha \"test/**/*.spec.js\"",
        "test:debug": "mocha --inspect=9226 \"test/**/*.spec.js\"",
        "watch": "npm-run-all --parallel watch:dashboard watch:node-red",
        "watch:dashboard": "npm run dev",
        "watch:node-red": "cd ~/.node-red && npx nodemon --watch $(realpath ./node_modules/@flowfuse/node-red-dashboard/nodes) --ext '*' --exec node-red"
    },
    "dependencies": {
        "acorn": "^8.11.2",
        "chartjs-adapter-luxon": "^1.3.1",
        "core-js": "^3.32.0",
        "d3": "^7.8.5",
        "escodegen": "^2.1.0",
        "express": "^4.19.2",
        "socket.io": "^4.7.1",
        "vue": "^3.4.5"
    },
    "devDependencies": {
        "@flowfuse/flow-renderer": "^0.3.0",
        "@mdi/font": "^7.4.47",
        "@unhead/vue": "^1.7.4",
        "@vite-pwa/assets-generator": "^0.2.4",
        "@vitejs/plugin-vue": "^5.0.4",
        "chart.js": "^4.4.0",
        "cypress": "^13.12.0",
        "dompurify": "^3.0.5",
        "eslint": "^8.53.0",
        "eslint-config-standard": "^17.1.0",
        "eslint-plugin-cypress": "^2.15.1",
        "eslint-plugin-html": "^7.1.0",
        "eslint-plugin-import": "^2.29.0",
        "eslint-plugin-n": "^16.3.1",
        "eslint-plugin-no-only-tests": "^3.1.0",
        "eslint-plugin-promise": "^6.1.1",
        "eslint-plugin-vue": "^9.18.1",
        "eslint-plugin-vuetify": "^2.4.0",
        "glob": "^10.3.4",
        "highlight.js": "^11.8.0",
        "luxon": "^3.4.3",
        "marked": "^4.3.0",
        "marked-highlight": "^2.0.6",
        "medium-zoom": "^1.0.8",
        "mermaid": "^10.4.0",
        "mocha": "^10.2.0",
        "node-red": "^3.1.9",
        "node-red-node-test-helper": "^0.3.3",
        "npm-run-all": "^4.1.5",
        "sass": "^1.77.8",
        "should": "^13.2.3",
        "should-sinon": "^0.0.6",
        "sinon": "^15.2.0",
        "socket.io-client": "^4.7.2",
        "sort-package-json": "^2.6.0",
        "vite": "^5.2.10",
        "vite-plugin-pwa": "^0.20.0",
        "vitepress": "^1.0.2",
        "vue-router": "^4.2.4",
        "vuetify": "^3.6.13",
        "vuex": "^4.1.0",
        "workbox-core": "^7.1.0",
        "workbox-precaching": "^7.1.0",
        "workbox-routing": "^7.1.0",
        "workbox-strategies": "^7.1.0",
        "workbox-window": "^7.1.0"
    },
    "engines": {
        "node": ">=14"
    },
    "node-red": {
        "version": ">=3.0.0",
        "nodes": {
            "ui-base": "nodes/config/ui_base.js",
            "ui-page": "nodes/config/ui_page.js",
            "ui-link": "nodes/config/ui_link.js",
            "ui-group": "nodes/config/ui_group.js",
            "ui-theme": "nodes/config/ui_theme.js",
            "ui-form": "nodes/widgets/ui_form.js",
            "ui-text-input": "nodes/widgets/ui_text_input.js",
            "ui-number-input": "nodes/widgets/ui_number_input.js",
            "ui-file-input": "nodes/widgets/ui_file_input.js",
            "ui-button": "nodes/widgets/ui_button.js",
            "ui-button-group": "nodes/widgets/ui_button_group.js",
            "ui-dropdown": "nodes/widgets/ui_dropdown.js",
            "ui-radio-group": "nodes/widgets/ui_radio_group.js",
            "ui-slider": "nodes/widgets/ui_slider.js",
            "ui-switch": "nodes/widgets/ui_switch.js",
            "ui-text": "nodes/widgets/ui_text.js",
            "ui-table": "nodes/widgets/ui_table.js",
            "ui-chart": "nodes/widgets/ui_chart.js",
            "ui-gauge": "nodes/widgets/ui_gauge.js",
            "ui-notification": "nodes/widgets/ui_notification.js",
            "ui-markdown": "nodes/widgets/ui_markdown.js",
            "ui-template": "nodes/widgets/ui_template.js",
            "ui-event": "nodes/widgets/ui_event.js",
            "ui-control": "nodes/widgets/ui_control.js"
        }
    },
    "overrides": {
        "node-red-node-test-helper": {
            "semver": "^7.5.4"
        },
        "sharp": "0.32.6",
        "sharp-ico": "0.1.5"
    }
}
