{
  "name": "playground-elements",
  "version": "0.21.2",
  "description": "Serverless coding environments for the web",
  "homepage": "https://github.com/google/playground-elements#readme",
  "repository": "github:google/playground-elements",
  "author": "Google LLC",
  "license": "BSD-3-Clause",
  "type": "module",
  "module": "playground-ide.js",
  "main": "playground-ide.js",
  "scripts": {
    "prepack": "wireit",
    "update-version-module": "wireit",
    "nuke": "npm run clean && rm -rf node_modules && npm install",
    "upgrade": "rm -rf node_modules package-lock.json && npm install",
    "build": "wireit",
    "build:ts": "wireit",
    "build:themes": "wireit",
    "build:configurator": "wireit",
    "build:typescript-module": "wireit",
    "build:service-worker": "wireit",
    "build:web-worker": "wireit",
    "test": "wireit",
    "test:wtr": "wireit",
    "test:playwright": "wireit",
    "lint": "wireit",
    "lint:eslint": "wireit",
    "serve": "wireit",
    "format": "prettier --write .",
    "lint:format": "prettier --check .",
    "version": "npm run update-version-module || git add src/shared/version.ts"
  },
  "wireit": {
    "build": {
      "dependencies": [
        "build:ts",
        "build:themes",
        "build:service-worker",
        "build:web-worker",
        "build:configurator"
      ]
    },
    "prepack": {
      "dependencies": [
        "update-version-module",
        "build"
      ]
    },
    "build:ts": {
      "command": "tsc --build --pretty",
      "clean": "if-file-deleted",
      "dependencies": [
        "build:themes"
      ],
      "files": [
        "tsconfig.json",
        "tsconfig-typescript-worker.json",
        "src/**/tsconfig.json",
        "src/**/*.ts"
      ],
      "output": [
        "index-*.{js,d.ts,d.ts.map}",
        "cm-lang-lit.{js,d.ts,d.ts.map}",
        "codemirror-extension*.{js,d.ts,d.ts.map}",
        "playground-*.{js,d.ts,d.ts.map}",
        "!playground-service-worker-proxy.html",
        "!playground-service-worker.js",
        "!playground-typescript-worker.js",
        "service-worker/**",
        "typescript-worker/**",
        "internal/**",
        "!internal/typescript.js",
        "shared/**",
        "test/**",
        "themes/**",
        "!themes/**/*.css",
        "configurator/**/*.{js,d.ts,d.ts.map}",
        "!configurator/playground-service-worker.js",
        "!configurator/deploy/**",
        ".tsbuildinfo"
      ]
    },
    "build:themes": {
      "command": "node scripts/theme-generator.js",
      "files": [
        "scripts/theme-generator.js"
      ],
      "output": [
        "themes/**/*.css",
        "src/themes/**/*.css.ts",
        "src/configurator/themes.ts"
      ]
    },
    "build:typescript-module": {
      "command": "FORCE_COLOR=1 rollup -c rollup.config.typescript.js",
      "files": [
        "rollup.config.typescript.js"
      ],
      "output": [
        "internal/typescript.js"
      ]
    },
    "build:service-worker": {
      "command": "FORCE_COLOR=1 rollup -c rollup.config.service-worker.js",
      "dependencies": [
        "build:ts"
      ],
      "files": [
        "rollup.config.service-worker.js",
        "rollup.config.common.js"
      ],
      "output": [
        "playground-service-worker-proxy.html",
        "playground-service-worker.js"
      ]
    },
    "build:web-worker": {
      "command": "FORCE_COLOR=1 rollup -c rollup.config.web-worker.js",
      "dependencies": [
        "build:ts",
        "build:typescript-module"
      ],
      "files": [
        "rollup.config.web-worker.js",
        "rollup.config.common.js"
      ],
      "output": [
        "playground-typescript-worker.js"
      ]
    },
    "build:configurator": {
      "command": "FORCE_COLOR=1 rollup -c rollup.config.configurator.js",
      "dependencies": [
        "build:ts",
        "build:service-worker",
        "build:web-worker"
      ],
      "files": [
        "rollup.config.configurator.js",
        "configurator/**",
        "!configurator/deploy/**"
      ],
      "output": [
        "configurator/deploy/**"
      ]
    },
    "test": {
      "dependencies": [
        "test:wtr",
        "test:playwright"
      ]
    },
    "test:wtr": {
      "command": "wtr",
      "dependencies": [
        "build:ts",
        "build:service-worker",
        "build:web-worker"
      ],
      "files": [
        "web-test-runner.config.js",
        "test/*"
      ],
      "output": []
    },
    "test:playwright": {
      "command": "playwright test",
      "dependencies": [
        "build:ts",
        "build:service-worker",
        "build:web-worker"
      ],
      "files": [
        "playwright.config.ts",
        "test/playwright/**"
      ],
      "output": []
    },
    "update-version-module": {
      "command": "node scripts/update-version-module.js",
      "dependencies": [
        "build:service-worker"
      ],
      "files": [
        "scripts/update-version-module.js",
        "package.json"
      ],
      "clean": false,
      "output": [
        "src/shared/version.ts"
      ]
    },
    "lint": {
      "dependencies": [
        "lint:eslint",
        "lint:format"
      ]
    },
    "lint:eslint": {
      "command": "eslint --color --cache --cache-location .eslintcache .",
      "files": [
        ".eslintignore",
        ".eslintrc.json",
        "playwright.config.ts",
        "scripts/**/*.js",
        "src/**/*.{ts,js}",
        "!src/themes/**"
      ],
      "output": []
    },
    "serve": {
      "command": "web-dev-server --node-resolve --watch --open=configurator/",
      "service": true,
      "dependencies": [
        {
          "script": "build",
          "cascade": false
        }
      ]
    }
  },
  "files": [
    "images/",
    "index.{js,d.ts,d.ts.map}",
    "cm-lang-lit.{js,d.ts,d.ts.map}",
    "codemirror-extension-mixin.{js,d.ts,d.ts.map}",
    "playground-code-editor.{js,d.ts,d.ts.map}",
    "playground-connected-element.{js,d.ts,d.ts.map}",
    "playground-file-editor.{js,d.ts,d.ts.map}",
    "playground-file-system-controls.{js,d.ts,d.ts.map}",
    "playground-ide.{js,d.ts,d.ts.map}",
    "playground-preview.{js,d.ts,d.ts.map}",
    "playground-project.{js,d.ts,d.ts.map}",
    "playground-tab-bar.{js,d.ts,d.ts.map}",
    "playground-service-worker-proxy.html",
    "playground-service-worker.js",
    "playground-typescript-worker.js",
    "playground-styles.{css,js,d.ts,d.ts.map}",
    "internal/**/*.{js,d.ts,d.ts.map}",
    "shared/**/*.{js,d.ts,d.ts.map}",
    "themes/*.css",
    "themes/*.css.{js,d.ts,d.ts.map}"
  ],
  "devDependencies": {
    "@esm-bundle/chai": "^4.1.5",
    "@lezer/common": "^1.2.3",
    "@lezer/lr": "^1.4.2",
    "@material/mwc-dialog": "^0.27.0",
    "@open-wc/testing": "^4.0.0",
    "@playwright/test": "^1.46.1",
    "@rollup/plugin-commonjs": "^23.0.2",
    "@rollup/plugin-node-resolve": "^15.0.1",
    "@rollup/plugin-replace": "^5.0.1",
    "@rollup/plugin-terser": "^0.1.0",
    "@types/mocha": "^10.0.7",
    "@types/semver": "^7.3.6",
    "@typescript-eslint/eslint-plugin": "^6.7.5",
    "@typescript-eslint/parser": "^6.7.5",
    "@web/dev-server": "^0.4.6",
    "@web/test-runner": "^0.18.3",
    "@web/test-runner-playwright": "^0.11.0",
    "clean-css": "^5.1.2",
    "es-module-lexer": "^1.1.0",
    "eslint": "^8.51.0",
    "eslint-plugin-import": "^2.28.1",
    "eslint-plugin-no-only-tests": "^3.1.0",
    "playwright": "^1.46.1",
    "prettier": "^2.0.5",
    "rollup": "^3.2.5",
    "rollup-plugin-copy": "^3.3.0",
    "rollup-plugin-lit-css": "^4.0.0",
    "semver": "^7.3.5",
    "sinon": "^21.0.0",
    "typescript": "~5.6.2",
    "wireit": "^0.14.12",
    "codemirror-5": "git+https://github.com/codemirror/codemirror5.git"
  },
  "dependencies": {
    "@codemirror/autocomplete": "^6.18.6",
    "@codemirror/commands": "^6.8.0",
    "@codemirror/lang-css": "^6.3.1",
    "@codemirror/lang-html": "^6.4.9",
    "@codemirror/lang-javascript": "^6.2.3",
    "@codemirror/lang-xml": "^6.1.0",
    "@codemirror/language": "^6.11.0",
    "@codemirror/lint": "^6.8.4",
    "@codemirror/search": "^6.5.10",
    "@codemirror/state": "^6.5.2",
    "@codemirror/theme-one-dark": "^6.1.2",
    "@codemirror/view": "^6.36.4",
    "@lezer/highlight": "^1.2.1",
    "@material/mwc-button": "^0.27.0",
    "@material/mwc-icon-button": "^0.27.0",
    "@material/mwc-linear-progress": "^0.27.0",
    "@material/mwc-list": "^0.27.0",
    "@material/mwc-menu": "^0.27.0",
    "@material/mwc-textfield": "^0.27.0",
    "codemirror": "^6.0.1",
    "comlink": "^4.4.1",
    "fuse.js": "^7.0.0",
    "lit": "^2.0.0 || ^3.0.0",
    "tslib": "^2.6.3",
    "vscode-languageserver-protocol": "^3.17.2"
  }
}
