{
  "description": "A frontend for Home Assistant using the Polymer framework",
  "repository": {
    "type": "git",
    "url": "https://github.com/home-assistant/home-assistant-polymer"
  },
  "name": "home-assistant-frontend",
  "version": "1.0.0",
  "scripts": {
    "build": "script/build_frontend",
    "lint": "eslint src hassio/src gallery/src && tslint 'src/**/*.ts' 'hassio/src/**/*.ts' 'gallery/src/**/*.ts' 'cast/src/**/*.ts' 'test-mocha/**/*.ts' && tsc",
    "lint-hassio": "eslint hassio/src && tslint 'hassio/src/**/*.ts'",
    "mocha": "node_modules/.bin/ts-mocha -p test-mocha/tsconfig.test.json --opts test-mocha/mocha.opts",
    "test": "npm run lint && npm run mocha",
    "docker_build": "sh ./script/docker_run.sh build $npm_package_version",
    "bash": "sh ./script/docker_run.sh bash $npm_package_version"
  },
  "author": "Paulus Schoutsen <Paulus@PaulusSchoutsen.nl> (http://paulusschoutsen.nl)",
  "license": "Apache-2.0",
  "dependencies": {
    "@material/chips": "^5.0.0",
    "@material/data-table": "^5.0.0",
    "@material/mwc-base": "^0.13.0",
    "@material/mwc-button": "^0.13.0",
    "@material/mwc-checkbox": "^0.13.0",
    "@material/mwc-dialog": "^0.13.0",
    "@material/mwc-fab": "^0.13.0",
    "@material/mwc-ripple": "^0.13.0",
    "@material/mwc-switch": "^0.13.0",
    "@mdi/svg": "4.9.95",
    "@polymer/app-layout": "^3.0.2",
    "@polymer/app-localize-behavior": "^3.0.1",
    "@polymer/app-route": "^3.0.2",
    "@polymer/app-storage": "^3.0.2",
    "@polymer/font-roboto": "^3.0.2",
    "@polymer/iron-autogrow-textarea": "^3.0.1",
    "@polymer/iron-flex-layout": "^3.0.1",
    "@polymer/iron-icon": "^3.0.1",
    "@polymer/iron-iconset-svg": "^3.0.1",
    "@polymer/iron-image": "^3.0.1",
    "@polymer/iron-input": "^3.0.1",
    "@polymer/iron-label": "^3.0.1",
    "@polymer/iron-media-query": "^3.0.1",
    "@polymer/iron-overlay-behavior": "^3.0.2",
    "@polymer/iron-pages": "^3.0.1",
    "@polymer/iron-resizable-behavior": "^3.0.1",
    "@polymer/neon-animation": "^3.0.1",
    "@polymer/paper-card": "^3.0.1",
    "@polymer/paper-checkbox": "^3.1.0",
    "@polymer/paper-dialog": "^3.0.1",
    "@polymer/paper-dialog-behavior": "^3.0.1",
    "@polymer/paper-dialog-scrollable": "^3.0.1",
    "@polymer/paper-drawer-panel": "^3.0.1",
    "@polymer/paper-dropdown-menu": "^3.0.1",
    "@polymer/paper-icon-button": "^3.0.2",
    "@polymer/paper-input": "^3.0.1",
    "@polymer/paper-item": "^3.0.1",
    "@polymer/paper-listbox": "^3.0.1",
    "@polymer/paper-menu-button": "^3.0.1",
    "@polymer/paper-progress": "^3.0.1",
    "@polymer/paper-radio-button": "^3.0.1",
    "@polymer/paper-radio-group": "^3.0.1",
    "@polymer/paper-ripple": "^3.0.1",
    "@polymer/paper-scroll-header-panel": "^3.0.1",
    "@polymer/paper-slider": "^3.0.1",
    "@polymer/paper-spinner": "^3.0.2",
    "@polymer/paper-styles": "^3.0.1",
    "@polymer/paper-tabs": "^3.0.1",
    "@polymer/paper-toast": "^3.0.1",
    "@polymer/paper-tooltip": "^3.0.1",
    "@polymer/polymer": "3.1.0",
    "@thomasloven/round-slider": "0.3.7",
    "@vaadin/vaadin-combo-box": "^5.0.10",
    "@vaadin/vaadin-date-picker": "^4.0.7",
    "@webcomponents/shadycss": "^1.9.0",
    "@webcomponents/webcomponentsjs": "^2.2.7",
    "chart.js": "~2.8.0",
    "chartjs-chart-timeline": "^0.3.0",
    "codemirror": "^5.49.0",
    "cpx": "^1.5.0",
    "deep-clone-simple": "^1.1.1",
    "deep-freeze": "^0.0.1",
    "es6-object-assign": "^1.1.0",
    "fecha": "^3.0.2",
    "fuse.js": "^3.4.4",
    "google-timezones-json": "^1.0.2",
    "hls.js": "^0.12.4",
    "home-assistant-js-websocket": "4.4.1",
    "intl-messageformat": "^2.2.0",
    "js-yaml": "^3.13.1",
    "leaflet": "^1.4.0",
    "leaflet-draw": "^1.0.4",
    "lit-element": "^2.2.1",
    "lit-html": "^1.1.0",
    "lit-virtualizer": "^0.4.2",
    "marked": "^0.6.1",
    "mdn-polyfills": "^5.16.0",
    "memoize-one": "^5.0.2",
    "moment": "^2.24.0",
    "preact": "^8.4.2",
    "preact-compat": "^3.18.4",
    "react-big-calendar": "^0.20.4",
    "regenerator-runtime": "^0.13.2",
    "roboto-fontface": "^0.10.0",
    "superstruct": "^0.6.1",
    "tslib": "^1.10.0",
    "unfetch": "^4.1.0",
    "web-animations-js": "^2.3.1",
    "xss": "^1.0.6"
  },
  "devDependencies": {
    "@babel/core": "^7.8.4",
    "@babel/plugin-external-helpers": "^7.8.3",
    "@babel/plugin-proposal-class-properties": "^7.8.3",
    "@babel/plugin-proposal-decorators": "^7.8.3",
    "@babel/plugin-proposal-nullish-coalescing-operator": "^7.8.3",
    "@babel/plugin-proposal-object-rest-spread": "^7.8.3",
    "@babel/plugin-proposal-optional-chaining": "^7.8.3",
    "@babel/plugin-syntax-dynamic-import": "^7.8.3",
    "@babel/plugin-transform-react-jsx": "^7.8.3",
    "@babel/preset-env": "^7.8.4",
    "@babel/preset-typescript": "^7.8.3",
    "@types/chai": "^4.1.7",
    "@types/chromecast-caf-receiver": "^3.0.12",
    "@types/chromecast-caf-sender": "^1.0.1",
    "@types/codemirror": "^0.0.78",
    "@types/hls.js": "^0.12.3",
    "@types/js-yaml": "^3.12.1",
    "@types/leaflet": "^1.4.3",
    "@types/leaflet-draw": "^1.0.1",
    "@types/memoize-one": "4.1.0",
    "@types/mocha": "^5.2.6",
    "@types/webspeechapi": "^0.0.29",
    "babel-loader": "^8.0.5",
    "chai": "^4.2.0",
    "copy-webpack-plugin": "^5.0.2",
    "del": "^4.0.0",
    "eslint": "^6.3.0",
    "eslint-config-airbnb-base": "^14.0.0",
    "eslint-config-prettier": "^6.2.0",
    "eslint-import-resolver-webpack": "^0.11.1",
    "eslint-plugin-import": "^2.18.2",
    "eslint-plugin-prettier": "^3.1.0",
    "eslint-plugin-react": "^7.14.3",
    "fs-extra": "^7.0.1",
    "gulp": "^4.0.0",
    "gulp-foreach": "^0.1.0",
    "gulp-hash": "^4.2.2",
    "gulp-hash-filename": "^2.0.1",
    "gulp-insert": "^0.5.0",
    "gulp-json-transform": "^0.4.6",
    "gulp-jsonminify": "^1.1.0",
    "gulp-merge-json": "^1.3.1",
    "gulp-rename": "^1.4.0",
    "gulp-zopfli-green": "^3.0.1",
    "html-loader": "^0.5.5",
    "html-webpack-plugin": "^3.2.0",
    "husky": "^1.3.1",
    "lint-staged": "^8.1.5",
    "lodash.template": "^4.5.0",
    "map-stream": "^0.0.7",
    "merge-stream": "^1.0.1",
    "mocha": "^6.0.2",
    "parse5": "^5.1.0",
    "prettier": "^1.19.1",
    "raw-loader": "^2.0.0",
    "reify": "^0.18.1",
    "require-dir": "^1.2.0",
    "sinon": "^7.3.1",
    "terser-webpack-plugin": "^1.2.3",
    "ts-mocha": "^6.0.0",
    "tslint": "^5.20.1",
    "tslint-config-prettier": "^1.18.0",
    "tslint-eslint-rules": "^5.4.0",
    "tslint-plugin-prettier": "^2.0.1",
    "typescript": "^3.7.2",
    "web-component-tester": "^6.9.2",
    "webpack": "^4.40.2",
    "webpack-cli": "^3.3.9",
    "webpack-dev-server": "^3.8.1",
    "webpack-manifest-plugin": "^2.0.4",
    "workbox-webpack-plugin": "^4.1.1",
    "workerize-loader": "^1.1.0"
  },
  "_comment": "Polymer fixed to 3.1 because 3.2 throws on logbook page",
  "_comment_2": "Fix in https://github.com/Polymer/polymer/pull/5569",
  "resolutions": {
    "@webcomponents/webcomponentsjs": "^2.2.10",
    "@polymer/polymer": "3.1.0",
    "lit-html": "^1.1.2",
    "@material/button": "^5.0.0",
    "@material/checkbox": "^5.0.0",
    "@material/dialog": "^5.0.0",
    "@material/fab": "^5.0.0",
    "@material/switch": "^5.0.0",
    "@material/ripple": "^5.0.0",
    "@material/dom": "^5.0.0",
    "@material/touch-target": "^5.0.0"
  },
  "main": "src/home-assistant.js",
  "husky": {
    "hooks": {
      "pre-commit": "lint-staged"
    }
  },
  "lint-staged": {
    "linters": {
      "*.{js,ts,json,css,md}": [
        "prettier --write",
        "git add"
      ]
    },
    "ignore": [
      "translations/**"
    ]
  },
  "prettier": {
    "trailingComma": "es5",
    "arrowParens": "always"
  }
}
