{ "name": "kubernetes-dashboard", "version": "2.3.1", "type": "module", "repository": { "type": "git", "url": "https://github.com/kubernetes/dashboard.git" }, "license": "Apache-2.0", "scripts": { "start": "concurrently \"npm run start:backend --kubernetes-dashboard:sidecar_host=$npm_package_config_sidecar_host\" \"npm run start:frontend --kubernetes-dashboard:bind_address=$npm_package_config_bind_address --kubernetes-dashboard:port=$npm_package_config_port\"", "start:https": "concurrently \"npm run start:backend:https --kubernetes-dashboard:sidecar_host=$npm_package_config_sidecar_host\" \"npm run start:frontend:https --kubernetes-dashboard:bind_address=$npm_package_config_bind_address --kubernetes-dashboard:port=$npm_package_config_port\"", "start:frontend": "npm run postversion && ng serve --proxy-config aio/proxy.conf.json --host $npm_package_config_bind_address --port $npm_package_config_port", "start:frontend:https": "node aio/scripts/version.mjs && ng serve --proxy-config aio/https-proxy.conf.json --ssl --host $npm_package_config_bind_address --port $npm_package_config_port", "start:backend": "KUBECONFIG=${KUBECONFIG:-$npm_package_config_kubeconfig}; gulp serve --kubeconfig $KUBECONFIG --sidecarServerHost $npm_package_config_sidecar_host", "start:backend:https": "KUBECONFIG=${KUBECONFIG:-$npm_package_config_kubeconfig}; gulp serve --kubeconfig $KUBECONFIG --autoGenerateCerts true --sidecarServerHost $npm_package_config_sidecar_host", "start:prod": "npm run build && ./$npm_package_config_dashboard_binary_path --kubeconfig $npm_package_config_kubeconfig --locale-config $npm_package_config_dashboard_locale_config --auto-generate-certificates --bind-address $npm_package_config_bind_address --sidecar-host $npm_package_config_sidecar_host --port $npm_package_config_port", "build": "./aio/scripts/build.sh", "build:cross": "./aio/scripts/build.sh -c", "build:frontend": "npm run clean && ng build --prod --localize --outputPath=$npm_package_config_frontend_build_dir", "build:backend": "npm run clean && gulp backend:prod", "build:backend:cross": "npm run clean && gulp backend:prod:cross", "docker:build": "npm run clean && npm run build:cross && gulp docker-image:release:cross", "docker:build:head": "npm run clean && npm run build:cross && gulp docker-image:head:cross", "docker:push": "npm run docker:build && gulp push-to-docker:release:cross", "docker:push:head": "npm run docker:build:head && gulp push-to-docker:head:cross", "cy:open": "npx cypress open", "cy:run": "npx cypress run", "test": "npm run test:frontend && npm run test:backend && npm run e2e", "test:frontend": "jest --config aio/jest.config.js", "test:frontend:coverage": "jest --config aio/jest.config.js --coverage -i", "test:frontend:watch": "jest --config aio/jest.config.js --watch", "test:backend": "go test github.com/kubernetes/dashboard/src/app/backend/...", "test:backend:coverage": "./aio/scripts/coverage-backend.sh", "test:coverage": "npm run test:frontend:coverage && npm run test:backend:coverage", "e2e": "concurrently -kill-others --success first \"npm run start\" \"wait-on http://localhost:8080 && npm run cy:run\"", "cluster:start": "./aio/scripts/start-cluster.sh", "cluster:stop": "./aio/scripts/stop-cluster.sh", "check": "concurrently \"npm run check:backend\" \"npm run check:codegen\" \"npm run check:frontend\" \"npm run check:i18n\"", "check:backend": "golangci-lint run -c .golangci.yml ./src/app/backend/...", "check:codegen": "aio/scripts/verify-codegen.sh", "check:frontend": "concurrently \"npm run check:frontend:ts\" \"npm run check:frontend:scss\" \"npm run check:frontend:html\"", "check:frontend:ts": "gts lint", "check:frontend:scss": "./aio/scripts/format.sh --styles --check && ./node_modules/sass-lint/bin/sass-lint.js -c .sass-lint.yml 'src/app/frontend/**/*.scss' -v -q", "check:frontend:html": "./aio/scripts/format.sh --html --check", "check:license": "license-check-and-add check", "check:i18n": "aio/scripts/pre-commit-i18n.sh", "fix": "concurrently \"npm run fix:backend\" \"npm run fix:frontend\" \"npm run fix:license\" \"npm run fix:i18n\"", "fix:backend": "golangci-lint run -c .golangci.yml --fix ./src/app/backend/...", "fix:frontend": "concurrently \"npm run fix:frontend:ts\" \"npm run fix:frontend:scss\" \"npm run fix:frontend:html\"", "fix:frontend:ts": "gts fix", "fix:frontend:scss": "scssfmt -r 'src/**/*.scss'", "fix:frontend:html": "./aio/scripts/format.sh --html", "fix:license": "license-check-and-add add", "fix:i18n": "npm run check:i18n", "clean": "rm -rf .go_workspace .tmp coverage dist npm-debug.log", "postversion": "node aio/scripts/version.mjs", "postinstall": "node aio/scripts/version.mjs && command -v golangci-lint >/dev/null 2>&1 || { curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.30.0; } && go mod download && ./aio/scripts/install-codegen.sh && ngcc", "prepare": "husky install" }, "lint-staged": { "src/**/*.ts": [ "gts fix" ], "src/**/*.scss": [ "scssfmt" ], "src/**/*.go": [ "./aio/scripts/pre-commit-golangci-lint.sh" ], "src/**/*.html": [ "./aio/scripts/pre-commit-i18n.sh" ] }, "xliffmergeOptions": { "srcDir": "i18n", "genDir": "i18n", "defaultLanguage": "en", "languages": [ "de", "fr", "ja", "ko", "zh-Hans", "zh-Hant", "zh-Hant-HK" ], "beautifyOutput": true }, "dependencies": { "@angular/animations": "12.0.2", "@angular/cdk": "12.0.2", "@angular/common": "12.0.2", "@angular/compiler": "12.0.2", "@angular/core": "12.0.2", "@angular/flex-layout": "12.0.0-beta.34", "@angular/forms": "12.0.2", "@angular/localize": "12.0.2", "@angular/material": "12.0.2", "@angular/platform-browser": "12.0.2", "@angular/platform-browser-dynamic": "12.0.2", "@angular/router": "12.0.2", "@swimlane/ngx-charts": "17.0.1", "ace-builds": "1.4.12", "angular-page-visibility": "11.0.0", "ansi-to-html": "0.6.15", "c3": "0.7.20", "core-js": "3.15.1", "d3": "6.7.0", "file-saver": "2.0.5", "js-yaml": "4.1.0", "material-design-icons": "3.0.1", "ng-in-viewport": "6.1.5", "ngx-cookie-service": "12.0.0", "ngx-pipes": "2.7.5", "normalize.css": "8.0.1", "roboto-fontface": "0.10.0", "rxjs": "6.6.7", "rxjs-compat": "6.6.7", "sockjs-client": "1.5.1", "strip-ansi": "6.0.0", "systemjs": "6.10.0", "truncate-url": "1.0.0", "tslib": "2.2.0", "web-animations-js": "2.3.2", "xterm": "4.13.0", "xterm-addon-fit": "0.5.0", "zone.js": "0.11.4" }, "devDependencies": { "@angular-devkit/build-angular": "12.0.2", "@angular/cli": "12.0.2", "@angular/compiler-cli": "12.0.2", "@angular/language-service": "12.0.3", "@babel/core": "7.14.3", "@babel/preset-env": "7.14.2", "@babel/register": "7.13.16", "@cypress/webpack-preprocessor": "5.9.1", "@types/c3": "0.7.5", "@types/d3": "6.6.0", "@types/d3-scale": "3.2.3", "@types/file-saver": "2.0.2", "@types/jasmine": "3.7.4", "@types/jasminewd2": "2.0.8", "@types/jest": "26.0.23", "@types/js-yaml": "4.0.1", "@types/lodash": "4.14.170", "@types/node": "15.12.4", "codelyzer": "6.0.2", "concurrently": "6.2.0", "cypress": "7.5.0", "del": "6.0.0", "eslint": "7.28.0", "eslint-plugin-rxjs": "3.3.3", "git-describe": "4.0.4", "gts": "3.1.0", "gulp": "4.0.2", "gulp-filter": "7.0.0", "husky": "6.0.0", "jasmine-core": "3.7.1", "jasmine-spec-reporter": "7.0.0", "jest": "27.0.4", "jest-preset-angular": "9.0.3", "js-beautify": "1.13.13", "license-check-and-add": "4.0.2", "lint-staged": "11.0.0", "lodash": "4.17.21", "minimatch": "3.0.4", "minimist": "1.2.5", "ngx-i18nsupport": "0.17.1", "node-gyp": "8.1.0", "q": "1.5.1", "raw-loader": "4.0.2", "run-node": "2.0.0", "sass": "1.34.1", "sass-lint": "1.13.1", "sass-loader": "12.1.0", "scssfmt": "1.0.7", "semver": "7.3.5", "source-map-explorer": "2.5.2", "tar": "6.1.0", "through2": "4.0.2", "ts-jest": "27.0.3", "ts-loader": "9.2.3", "ts-node": "10.0.0", "typescript": "4.2.4", "wait-on": "5.3.0", "webpack-dev-server": "3.11.2" }, "engines": { "node": ">=14.16.1", "npm": ">=6.0.0 <7.0.0" }, "eslintConfig": { "parser": "@typescript-eslint/parser", "parserOptions": { "ecmaVersion": 2020, "project": "./tsconfig.json", "sourceType": "module" }, "extends": "./node_modules/gts/", "plugins": [ "rxjs" ], "rules": { "@typescript-eslint/ban-ts-comment": "off", "@typescript-eslint/interface-name-prefix": "off", "@typescript-eslint/no-namespace": "off", "@typescript-eslint/no-unused-vars": "off", "@typescript-eslint/no-this-alias": "off", "@typescript-eslint/no-explicit-any": "off", "node/no-unpublished-import": "off", "no-undef": "off", "no-inner-declarations": "off", "no-redeclare": "off", "eol-last": "error", "no-console": "off", "no-prototype-builtins": "off", "no-extra-boolean-cast": "error", "no-else-return": "error", "node/no-extraneous-require": "error", "node/no-unpublished-require": "error", "prefer-rest-params": "error", "rxjs/no-ignored-observable": "error", "rxjs/no-unbound-methods": "error", "rxjs/no-unsafe-takeuntil": "error", "rxjs/no-nested-subscribe": "error" }, "overrides": [ { "files": [ "src/**/*.spec.ts" ], "env": { "browser": true, "jest": true } } ], "ignorePatterns": [ "**/*.js" ] }, "eslintIgnore": [ "node_modules/*", "aio/*", "src/app/frontend/common/services/global/history.ts" ], "browserslist": [ "> 0.5%", "last 2 versions", "Firefox ESR", "not dead", "not samsung 4", "not android 4.4.3-4.4.4", "not last 2 IE versions", "not last 2 ie_mob versions", "not last 2 op_mini versions", "not last 2 op_mob versions", "not last 2 baidu versions", "not last 2 kaios versions", "not last 2 and_uc versions", "not last 2 and_qq versions", "not last 2 edge versions" ] }