{
  "name": "pinafore",
  "description": "Alternative web client for Mastodon",
  "version": "0.4.1",
  "scripts": {
    "lint": "standard && standard --plugin html 'routes/**/*.html'",
    "lint-fix": "standard --fix && standard --fix --plugin html 'routes/**/*.html'",
    "dev": "run-s build-svg build-inline-script serve-dev",
    "serve-dev": "run-p --race build-sass-watch serve",
    "serve": "node server.js",
    "build": "cross-env NODE_ENV=production run-s globalize-css build-sass build-svg build-inline-script sapper-build deglobalize-css",
    "sapper-build": "cross-env NODE_ENV=production sapper build",
    "start": "cross-env NODE_ENV=production node server.js",
    "build-and-start": "run-s build start",
    "build-svg": "node ./bin/build-svg.js",
    "build-inline-script": "node ./bin/build-inline-script.js",
    "build-sass": "node ./bin/build-sass.js",
    "build-sass-watch": "node ./bin/build-sass.js --watch",
    "run-mastodon": "node -r esm ./bin/run-mastodon",
    "run-testcafe": "cross-env-shell testcafe --hostname localhost --skip-js-errors $BROWSER tests/spec",
    "test": "cross-env BROWSER=chrome:headless npm run test-browser",
    "test-browser": "run-p --race run-mastodon dev test-mastodon",
    "test-mastodon": "run-s wait-for-mastodon-to-start wait-for-mastodon-data run-testcafe",
    "wait-for-mastodon-to-start": "node -r esm bin/wait-for-mastodon-to-start.js",
    "wait-for-mastodon-data": "node -r esm bin/wait-for-mastodon-data.js",
    "globalize-css": "node ./bin/globalize-css.js",
    "deglobalize-css": "node ./bin/globalize-css.js --reverse",
    "stage-dev": "printf 'User-agent: *\nDisallow: /' > assets/robots.txt",
    "stage-prod": "rm -f assets/robots.txt",
    "launch": "now -e SAPPER_TIMESTAMP=$(date +%s%3N) --team nolanlawson && sleep 60",
    "launch-travis": "now -e SAPPER_TIMESTAMP=$(date +%s%3N) --team nolanlawson --token $NOW_TOKEN && sleep 60",
    "alias-prod": "now alias pinafore.social --team nolanlawson",
    "alias-dev": "now alias dev.pinafore.social --team nolanlawson",
    "alias-dev-travis": "now alias dev.pinafore.social --team nolanlawson --token $NOW_TOKEN",
    "cleanup": "now rm pinafore --safe --yes --team nolanlawson",
    "cleanup-travis": "now rm pinafore --safe --yes --team nolanlawson --token $NOW_TOKEN",
    "deploy-prod": "run-s stage-prod launch alias-prod cleanup",
    "deploy-dev": "run-s stage-dev launch alias-dev cleanup",
    "deploy-dev-travis": "if [ $TRAVIS_BRANCH = master -a $TRAVIS_PULL_REQUEST = false ]; then run-s stage-dev launch-travis alias-dev-travis cleanup-travis; fi",
    "backup-mastodon-data": "pg_dump -Fc mastodon_development > fixtures/dump.sql && cd mastodon/public/system && tar -czf ../../../fixtures/system.tgz ."
  },
  "dependencies": {
    "@gamestdio/websocket": "0.2.5",
    "a11y-dialog": "4.0.1",
    "cheerio": "1.0.0-rc.2",
    "child-process-promise": "2.2.1",
    "chokidar": "2.0.3",
    "cross-env": "5.1.4",
    "css-loader": "0.28.11",
    "escape-html": "1.0.3",
    "esm": "3.0.28",
    "events": "2.0.0",
    "express": "4.16.3",
    "fg-loadcss": "2.0.1",
    "file-api": "0.10.4",
    "font-awesome-svg-png": "1.2.2",
    "form-data": "2.3.2",
    "glob": "7.1.2",
    "helmet": "3.12.0",
    "indexeddb-getall-shim": "1.3.3",
    "intersection-observer": "0.5.0",
    "lodash-es": "4.17.10",
    "lodash-webpack-plugin": "0.11.5",
    "mini-css-extract-plugin": "0.4.0",
    "mkdirp": "0.5.1",
    "node-fetch": "2.1.2",
    "node-sass": "4.9.0",
    "npm-run-all": "4.1.2",
    "optimize-css-assets-webpack-plugin": "4.0.1",
    "p-any": "1.1.0",
    "performance-now": "2.1.0",
    "pify": "3.0.0",
    "quick-lru": "1.1.0",
    "requestidlecallback": "0.3.0",
    "sapper": "github:nolanlawson/sapper#for-pinafore-7",
    "serve-static": "1.13.2",
    "shrink-ray-current": "2.1.0",
    "stringz": "1.0.0",
    "style-loader": "0.21.0",
    "svelte": "2.4.4",
    "svelte-extras": "2.0.2",
    "svelte-loader": "2.9.0",
    "svelte-transitions": "1.1.1",
    "svgo": "1.0.5",
    "timeago.js": "3.0.2",
    "tiny-queue": "0.2.1",
    "uglifyjs-webpack-plugin": "1.2.5",
    "web-animations-js": "2.3.1",
    "webpack": "4.7.0",
    "webpack-bundle-analyzer": "2.11.1",
    "yargs": "11.0.0"
  },
  "devDependencies": {
    "eslint-plugin-html": "4.0.3",
    "now": "11.1.7",
    "standard": "11.0.1",
    "testcafe": "0.19.1"
  },
  "engines": {
    "node": ">= 8"
  },
  "standard": {
    "globals": [
      "fetch",
      "IDBKeyRange",
      "IDBObjectStore",
      "indexedDB",
      "requestAnimationFrame",
      "requestIdleCallback",
      "location",
      "localStorage",
      "IntersectionObserver",
      "URL",
      "Event",
      "history",
      "performance",
      "self",
      "caches",
      "__routes__",
      "__shell__",
      "__assets__",
      "test",
      "fixture",
      "Element",
      "FormData",
      "atob",
      "btoa",
      "Blob",
      "Element",
      "Image"
    ],
    "ignore": [
      "dist",
      "routes/_utils/asyncModules.js",
      "routes/_components/dialog/asyncDialogs.js"
    ]
  },
  "esm": {
    "mode": "auto",
    "cjs": "vars"
  },
  "now": {
    "type": "npm",
    "env": {
      "NODE_ENV": "production"
    },
    "files": [
      "assets",
      "bin",
      "original-assets",
      "routes",
      "scss",
      "templates",
      "package.json",
      "package-lock.json",
      "server.js",
      "inline-script.js",
      "webpack.client.config.js",
      "webpack.server.config.js"
    ]
  },
  "greenkeeper": {
    "ignore": [
      "sapper",
      "a11y-dialog"
    ]
  }
}
