[
  {
    "path": ".github/FUNDING.yml",
    "content": "# These are supported funding model platforms\n\ngithub: andersevenrud\npatreon: andersevenrud\nopen_collective: osjs\nliberapay: os-js\ncustom: https://paypal.me/andersevenrud\n"
  },
  {
    "path": ".github/workflows/node.yml",
    "content": "name: Node tests\non:\n  push:\n    branches:\n      - master\n  pull_request:\njobs:\n  build:\n    strategy:\n      matrix:\n        version: [12, 13, 14, 15, 16]\n        os: [ubuntu-latest, windows-latest]\n    runs-on: ${{ matrix.os }}\n    steps:\n      - uses: actions/checkout@v2\n      - uses: actions/setup-node@v1\n        with:\n          node-version: ${{ matrix.version }}\n      - run: npm ci\n      - run: npm run package:discover\n      - run: npm run build\n"
  },
  {
    "path": ".github/workflows/test.yml",
    "content": "name: Lint tests\non:\n  push:\n    branches:\n      - master\n  pull_request:\njobs:\n  build:\n    name: Lint tests (node latest)\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v2\n      - uses: actions/setup-node@v1\n        with:\n          node-version: '13.x'\n      - run: npm install\n      - run: npm run eslint\n      - run: npm run stylelint\n"
  },
  {
    "path": ".gitignore",
    "content": ".swp\n.tern-*\nnode_modules\n/packages.json\n/sessions\n/.env*\n/session-store.db\n"
  },
  {
    "path": "CONTRIBUTING.md",
    "content": "# Contributing\n\nIf you want to contribute, but not sure what to do, here's a list of things that I always need help with:\n\n* Translations\n* Bug-hunting\n* Finding security problems\n* Themes and general graphics\n* Website design (like the homepage and manuals)\n* Documentation\n\nIf you need help, or just up for some general discussion, head into the [community forums](https://community.os-js.org/) or [community chat](https://gitter.im/os-js/OS.js).\n\nSee [manual](https://manual.os-js.org/v3/development/) for more information.\n\nYou can view all open issues on github, which is usually a good starting point if you want to start contributing:\n\nhttps://github.com/search?q=org%3Aos-js+is%3Aopen+is%3Aissue+archived%3Afalse&type=Issues\n\n# Support\n\nYou can also donate or become a patreon, which helps out covering server costs and potentially make it possible to put out bounties:\n\n* **Sponsor on [Github](https://github.com/sponsors/andersevenrud)**\n* **Become a [Patreon](https://www.patreon.com/user?u=2978551&ty=h&u=2978551)**\n* **Support on [Open Collective](https://opencollective.com/osjs)**\n* Donate via [Liberapay](https://liberapay.com/os-js/)\n* Donate via [PayPal](https://paypal.me/andersevenrud)\n\nOr via Bitcoin: bc1q8wd9e9xlppr7nft09n4guz89j0cp9gepl606s0\n\n<img src=\"https://manual.os-js.org/wallet.png\" alt=\"bitcoin qr code\" width=\"177\" height=\"177\">\n\n# Members\n\nIf you are a member of the official OS.js developer Team:\n\n* [Discussions](http://community.os-js.org/c/team)\n* [Tasks](https://trello.com/osjs)\n* [Chat](https://gitter.im/os-js/OS.js/teams)\n"
  },
  {
    "path": "Dockerfile",
    "content": "#\n# OS.js - JavaScript Cloud/Web Desktop Platform\n#\n# Copyright (c) 2011-2020, Anders Evenrud <andersevenrud@gmail.com>\n# All rights reserved.\n#\n# Redistribution and use in source and binary forms, with or without\n# modification, are permitted provided that the following conditions are met:\n#\n# 1. Redistributions of source code must retain the above copyright notice, this\n#    list of conditions and the following disclaimer\n# 2. Redistributions in binary form must reproduce the above copyright notice,\n#    this list of conditions and the following disclaimer in the documentation\n#    and/or other materials provided with the distribution\n#\n# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\n# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n#\n# @author  Anders Evenrud <andersevenrud@gmail.com>\n# @licence Simplified BSD License\n#\n\n# THIS IS ONLY INTENDED FOR DEVELOPMENT USAGE\n\nFROM node:10\nRUN npm install -g nodemon\nWORKDIR /usr/src/osjs\nCOPY entrypoint.sh .\nCMD ./entrypoint.sh\n"
  },
  {
    "path": "LICENSE",
    "content": "BSD 2-Clause License\n\nOS.js - JavaScript Cloud/Web Desktop Platform\n\nCopyright (c) Anders Evenrud <andersevenrud@gmail.com>\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met: \n\n1. Redistributions of source code must retain the above copyright notice, this\n   list of conditions and the following disclaimer. \n2. Redistributions in binary form must reproduce the above copyright notice,\n   this list of conditions and the following disclaimer in the documentation\n   and/or other materials provided with the distribution. \n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\nANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\nWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\nANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\nLOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\nON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\nSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n"
  },
  {
    "path": "README.md",
    "content": "<p align=\"center\">\n  <img alt=\"OS.js Logo\" src=\"https://raw.githubusercontent.com/os-js/gfx/master/logo-big.png\" />\n</p>\n\n# OS.js\n\n[OS.js](https://www.os-js.org/) is an [open-source](https://raw.githubusercontent.com/os-js/OS.js/master/LICENSE) web desktop platform with a window manager, application APIs, GUI toolkit, filesystem abstractions and much more.\n\n**Backing/Donations:**\n[Github sponsorship](https://github.com/sponsors/andersevenrud),\n[Patreon](https://www.patreon.com/user?u=2978551&ty=h&u=2978551),\n[OpenCollective](https://opencollective.com/osjs),\n[LibrePay](https://liberapay.com/os-js/),\n[PayPal](https://paypal.me/andersevenrud),\n[Bitcoin](https://manual.os-js.org/wallet.png)\n\n**Support:**\n[Chat](https://gitter.im/os-js/OS.js),\n[Forums](https://community.os-js.org/),\n[Twitter](https://twitter.com/osjsorg),\n[Facebook](https://www.facebook.com/os.js.org)\n\n## Introduction\n\nThis is the OS.js base repository that you can use as a template to make your own distributions, installations and development environments.\n\n## Try it yourself\n\nVisit the [official demo](https://demo.os-js.org/) for a preview version. Please note that some features are disabled and might be outdated or unavailable at times.\n\n![ScreenShot](https://www.os-js.org/screenshot.png)\n\n## Documentation\n\nSee the [official manuals](https://manual.os-js.org/) for articles, tutorials and guides.\n\nThere's also a [contribution guide](https://github.com/os-js/OS.js/blob/master/CONTRIBUTING.md) if you want to contribute to this project.\n\n## Installation\n\n> OS.js runs on `http://localhost:8000` by default.\n\n### Using a pre-made image\n\nYou can use the official Docker base image to run OS.js without downloading this repository.\n\nThis image is based on this source code and comes with a minimal setup.\n\n```bash\ndocker run -p 8000:8000 osjs/osjs:latest\n```\n\n### Using this repository\n\nClone the master branch:\n\n> You can also download an archived version (ex. zip file) instead of using git.\n\n```bash\ngit clone -b master --single-branch https://github.com/os-js/OS.js.git\ncd OS.js\n```\n\n#### Docker Compose installation\n\nThe easiest way to install is to use Docker Compose. This allows you to run a single command\nto set everything up:\n\n```bash\ndocker-compose up\n```\n\n#### Local installation\n\nYou can also install this directly onto your system by using the following set of commands.\n\n> **NOTE:** Requires Node v10 (or later. **[node 17 not currently supported without workaround](https://github.com/os-js/OS.js/issues/785)**).\n\n```bash\n# Install dependencies\nnpm install\n\n# It's recommended that you update dependencies\nnpm update\n\n# Optionally install extra packages:\n# For a list of packages, see https://manual.os-js.org/resource/official/\nnpm install @osjs/example-application\n\n# Discover installed packages\nnpm run package:discover\n\n# Build client\nnpm run build\n\n# Start serving\nnpm run serve\n```\n"
  },
  {
    "path": "docker-compose.yml",
    "content": "#\n# OS.js - JavaScript Cloud/Web Desktop Platform\n#\n# Copyright (c) 2011-2020, Anders Evenrud <andersevenrud@gmail.com>\n# All rights reserved.\n#\n# Redistribution and use in source and binary forms, with or without\n# modification, are permitted provided that the following conditions are met:\n#\n# 1. Redistributions of source code must retain the above copyright notice, this\n#    list of conditions and the following disclaimer\n# 2. Redistributions in binary form must reproduce the above copyright notice,\n#    this list of conditions and the following disclaimer in the documentation\n#    and/or other materials provided with the distribution\n#\n# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\n# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n#\n# @author  Anders Evenrud <andersevenrud@gmail.com>\n# @licence Simplified BSD License\n#\n\n# THIS IS ONLY INTENDED FOR DEVELOPMENT USAGE\n\nversion: '3'\n\nservices:\n  osjs:\n    user: node\n    build:\n      context: .\n    volumes:\n      - .:/usr/src/osjs\n    ports:\n      - \"${OSJS_NODE_PORT:-8000}:8000\"\n"
  },
  {
    "path": "entrypoint.sh",
    "content": "#!/bin/bash\n#\n# OS.js - JavaScript Cloud/Web Desktop Platform\n#\n# Copyright (c) 2011-2020, Anders Evenrud <andersevenrud@gmail.com>\n# All rights reserved.\n#\n# Redistribution and use in source and binary forms, with or without\n# modification, are permitted provided that the following conditions are met:\n#\n# 1. Redistributions of source code must retain the above copyright notice, this\n#    list of conditions and the following disclaimer\n# 2. Redistributions in binary form must reproduce the above copyright notice,\n#    this list of conditions and the following disclaimer in the documentation\n#    and/or other materials provided with the distribution\n#\n# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\n# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n#\n# @author  Anders Evenrud <andersevenrud@gmail.com>\n# @licence Simplified BSD License\n#\n\n# THIS IS ONLY INTENDED FOR DEVELOPMENT USAGE\n\nnpm install\nnpm run build\nnpm run package:discover\nnpx nodemon --watch package-lock.json --watch src/server --watch package.json --watch src/packages src/server/index.js\n"
  },
  {
    "path": "package.json",
    "content": "{\n  \"name\": \"@osjs/osjs\",\n  \"version\": \"3.1.12\",\n  \"description\": \"OS.js\",\n  \"main\": \"index.js\",\n  \"scripts\": {\n    \"test\": \"npm run eslint && npm run stylelint\",\n    \"eslint\": \"eslint 'src/client/**/*.js' 'src/server/**/*.js'\",\n    \"stylelint\": \"stylelint 'src/client/*.scss'\",\n    \"serve\": \"node src/server/index.js\",\n    \"build:manifest\": \"osjs-cli package:discover\",\n    \"package:discover\": \"osjs-cli package:discover\",\n    \"package:create\": \"osjs-cli package:create\",\n    \"make:auth\": \"osjs-cli make:auth\",\n    \"make:settings\": \"osjs-cli make:settings\",\n    \"make:vfs\": \"osjs-cli make:vfs\",\n    \"make:application\": \"osjs-cli make:application\",\n    \"make:iframe-application\": \"osjs-cli make:iframe-application\",\n    \"make:provider\": \"osjs-cli make:provider\",\n    \"build\": \"webpack\",\n    \"watch\": \"webpack --watch\"\n  },\n  \"keywords\": [\n    \"osjs\"\n  ],\n  \"author\": \"Anders Evenrud <andersevenrud@gmail.com>\",\n  \"license\": \"BSD-2-Clause\",\n  \"devDependencies\": {\n    \"@osjs/dev-meta\": \"^2.1.0\",\n    \"html-webpack-plugin\": \"^3.2.0\",\n    \"source-map-loader\": \"^0.2.4\"\n  },\n  \"dependencies\": {\n    \"@osjs/calculator-application\": \"^1.2.8\",\n    \"@osjs/cli\": \"^3.1.3\",\n    \"@osjs/client\": \"^3.7.1\",\n    \"@osjs/dialogs\": \"^3.1.0\",\n    \"@osjs/draw-application\": \"^1.2.12\",\n    \"@osjs/filemanager-application\": \"^1.6.2\",\n    \"@osjs/freedesktop-sounds\": \"^3.0.3\",\n    \"@osjs/gnome-icons\": \"^4.0.5\",\n    \"@osjs/gui\": \"^4.0.36\",\n    \"@osjs/htmlviewer-application\": \"^1.2.6\",\n    \"@osjs/musicplayer-application\": \"^1.2.8\",\n    \"@osjs/panels\": \"^3.0.31\",\n    \"@osjs/preview-application\": \"^1.1.17\",\n    \"@osjs/server\": \"^3.2.3\",\n    \"@osjs/settings-application\": \"^1.1.8\",\n    \"@osjs/standard-theme\": \"^4.0.9\",\n    \"@osjs/textpad-application\": \"^1.2.7\",\n    \"hyperapp\": \"^1.2.10\",\n    \"typeface-roboto\": \"0.0.75\"\n  },\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"git+https://github.com/osjs/OS.js.git\"\n  },\n  \"bugs\": {\n    \"url\": \"https://github.com/osjs/OS.js/issues\"\n  },\n  \"homepage\": \"https://www.os-js.org\",\n  \"engines\": {\n    \"node\": \">=10.0.0\"\n  },\n  \"eslintConfig\": {\n    \"env\": {\n      \"browser\": true,\n      \"node\": true\n    },\n    \"parserOptions\": {\n      \"sourceType\": \"module\",\n      \"ecmaVersion\": 8\n    },\n    \"extends\": \"@osjs/eslint-config\"\n  },\n  \"stylelint\": {\n    \"extends\": \"@osjs/stylelint-config\"\n  },\n  \"babel\": {\n    \"presets\": [\n      [\n        \"@babel/preset-env\",\n        {}\n      ]\n    ],\n    \"plugins\": [\n      \"@babel/plugin-transform-runtime\"\n    ]\n  }\n}\n"
  },
  {
    "path": "src/cli/index.js",
    "content": "/*!\n * OS.js - JavaScript Cloud/Web Desktop Platform\n *\n * Copyright (c) 2011-2020, Anders Evenrud <andersevenrud@gmail.com>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice, this\n *    list of conditions and the following disclaimer\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n *    this list of conditions and the following disclaimer in the documentation\n *    and/or other materials provided with the distribution\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\n * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @author  Anders Evenrud <andersevenrud@gmail.com>\n * @licence Simplified BSD License\n */\nconst path = require('path');\n\n//\n// This is where you can place your custom CLI tasks\n// https://manual.os-js.org/guide/cli/\n// https://manual.os-js.org/resource/official/\n//\n\nmodule.exports = {\n  discover: [\n    path.resolve(__dirname, '../packages') // OS.js/src/packages\n  ],\n  tasks: []\n};\n"
  },
  {
    "path": "src/client/config.js",
    "content": "/*\n * OS.js - JavaScript Cloud/Web Desktop Platform\n *\n * Copyright (c) 2011-2020, Anders Evenrud <andersevenrud@gmail.com>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice, this\n *    list of conditions and the following disclaimer\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n *    this list of conditions and the following disclaimer in the documentation\n *    and/or other materials provided with the distribution\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\n * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @author  Anders Evenrud <andersevenrud@gmail.com>\n * @licence Simplified BSD License\n */\n\n//\n// This is the client configuration tree.\n// Guide: https://manual.os-js.org/config/#client\n// Complete config tree: https://github.com/os-js/osjs-client/blob/master/src/config.js\n//\n\nexport default {\n  auth: {\n    login: {\n      username: 'demo',\n      password: 'demo'\n    }\n  }\n};\n"
  },
  {
    "path": "src/client/index.ejs",
    "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"utf-8\" />\n    <!--\n    OS.js - Copyright (c) 2011-2020\n    Anders Evenrud (andersevenrud@gmail.com)\n    https://github.com/os-js/\n    -->\n    <meta name=\"google\" content=\"notranslate\" />\n    <meta name=\"description\" content=\"OS.js - JavaScript Cloud/Web Desktop Platform\" />\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1, user-scalable=no\" />\n    <title><%= htmlWebpackPlugin.options.title %></title>\n  </head>\n  <body>\n  </body>\n</html>\n"
  },
  {
    "path": "src/client/index.js",
    "content": "/*!\n * OS.js - JavaScript Cloud/Web Desktop Platform\n *\n * Copyright (c) 2011-2020, Anders Evenrud <andersevenrud@gmail.com>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice, this\n *    list of conditions and the following disclaimer\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n *    this list of conditions and the following disclaimer in the documentation\n *    and/or other materials provided with the distribution\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\n * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @author  Anders Evenrud <andersevenrud@gmail.com>\n * @licence Simplified BSD License\n */\n\n//\n// This is the client bootstrapping script.\n// This is where you can register service providers or set up\n// your libraries etc.\n//\n// https://manual.os-js.org/guide/provider/\n// https://manual.os-js.org/install/\n// https://manual.os-js.org/resource/official/\n//\n\nimport {\n  Core,\n  CoreServiceProvider,\n  DesktopServiceProvider,\n  VFSServiceProvider,\n  NotificationServiceProvider,\n  SettingsServiceProvider,\n  AuthServiceProvider\n} from '@osjs/client';\n\nimport {PanelServiceProvider} from '@osjs/panels';\nimport {GUIServiceProvider} from '@osjs/gui';\nimport {DialogServiceProvider} from '@osjs/dialogs';\nimport config from './config.js';\nimport './index.scss';\n\nconst init = () => {\n  const osjs = new Core(config, {});\n\n  // Register your service providers\n  osjs.register(CoreServiceProvider);\n  osjs.register(DesktopServiceProvider);\n  osjs.register(VFSServiceProvider);\n  osjs.register(NotificationServiceProvider);\n  osjs.register(SettingsServiceProvider, {before: true});\n  osjs.register(AuthServiceProvider, {before: true});\n  osjs.register(PanelServiceProvider);\n  osjs.register(DialogServiceProvider);\n  osjs.register(GUIServiceProvider);\n\n  osjs.boot();\n};\n\nwindow.addEventListener('DOMContentLoaded', () => init());\n"
  },
  {
    "path": "src/client/index.scss",
    "content": "/*!\n * OS.js - JavaScript Cloud/Web Desktop Platform\n *\n * Copyright (c) 2011-2020, Anders Evenrud <andersevenrud@gmail.com>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice, this\n *    list of conditions and the following disclaimer\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n *    this list of conditions and the following disclaimer in the documentation\n *    and/or other materials provided with the distribution\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\n * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @author  Anders Evenrud <andersevenrud@gmail.com>\n * @licence Simplified BSD License\n */\n\n//\n// This is the client base stylesheet.\n// This is where you add all your dependent styles and override any\n// OS.js defaults.\n//\n\n@import \"~typeface-roboto/index.css\";\n@import \"~@osjs/client/dist/main.css\";\n@import \"~@osjs/gui/dist/main.css\";\n@import \"~@osjs/dialogs/dist/main.css\";\n@import \"~@osjs/panels/dist/main.css\";\n\nbody,\nhtml {\n  width: 100%;\n  height: 100%;\n}\n"
  },
  {
    "path": "src/packages/.gitignore",
    "content": ""
  },
  {
    "path": "src/server/config.js",
    "content": "/*\n * OS.js - JavaScript Cloud/Web Desktop Platform\n *\n * Copyright (c) 2011-2020, Anders Evenrud <andersevenrud@gmail.com>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice, this\n *    list of conditions and the following disclaimer\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n *    this list of conditions and the following disclaimer in the documentation\n *    and/or other materials provided with the distribution\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\n * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @author  Anders Evenrud <andersevenrud@gmail.com>\n * @licence Simplified BSD License\n */\n\n//\n// This is the server configuration tree.\n// Guide: https://manual.os-js.org/config/#server\n// Complete config tree: https://github.com/os-js/osjs-server/blob/master/src/config.js\n//\n\nconst path = require('path');\nconst root = path.resolve(__dirname, '../../');\n\nmodule.exports = {\n  root,\n  port: 8000,\n  public: path.resolve(root, 'dist')\n};\n"
  },
  {
    "path": "src/server/index.js",
    "content": "/*\n * OS.js - JavaScript Cloud/Web Desktop Platform\n *\n * Copyright (c) 2011-2020, Anders Evenrud <andersevenrud@gmail.com>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice, this\n *    list of conditions and the following disclaimer\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n *    this list of conditions and the following disclaimer in the documentation\n *    and/or other materials provided with the distribution\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\n * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @author  Anders Evenrud <andersevenrud@gmail.com>\n * @licence Simplified BSD License\n */\n\n//\n// This is the server bootstrapping script.\n// This is where you can register service providers or set up\n// your libraries etc.\n//\n// https://manual.os-js.org/guide/provider/\n// https://manual.os-js.org/install/\n// https://manual.os-js.org/resource/official/\n//\n\nconst {\n  Core,\n  CoreServiceProvider,\n  PackageServiceProvider,\n  VFSServiceProvider,\n  AuthServiceProvider,\n  SettingsServiceProvider\n} = require('@osjs/server');\n\nconst config = require('./config.js');\nconst osjs = new Core(config, {});\n\nosjs.register(CoreServiceProvider, {before: true});\nosjs.register(PackageServiceProvider);\nosjs.register(VFSServiceProvider);\nosjs.register(AuthServiceProvider);\nosjs.register(SettingsServiceProvider);\n\nconst shutdown = signal => (error) => {\n  if (error instanceof Error) {\n    console.error(error);\n  }\n\n  osjs.destroy(() => process.exit(signal));\n};\n\nprocess.on('SIGTERM', shutdown(0));\nprocess.on('SIGINT', shutdown(0));\nprocess.on('exit', shutdown(0));\n\nosjs.boot().catch(shutdown(1));\n"
  },
  {
    "path": "webpack.config.js",
    "content": "const path = require('path');\nconst mode = process.env.NODE_ENV || 'development';\nconst minimize = mode === 'production';\nconst webpack = require('webpack');\nconst MiniCssExtractPlugin = require('mini-css-extract-plugin');\nconst HtmlWebpackPlugin = require('html-webpack-plugin');\nconst {DefinePlugin} = webpack;\nconst OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin');\nconst npm = require('./package.json');\nconst plugins = [];\n\nif (mode === 'production') {\n  plugins.push(new OptimizeCSSAssetsPlugin({\n    cssProcessorOptions: {\n      discardComments: true,\n      map: {\n        inline: false\n      }\n    },\n  }));\n}\n\nmodule.exports = {\n  mode,\n  devtool: 'source-map',\n  entry: {\n    osjs: path.resolve(__dirname, 'src/client/index.js')\n  },\n  performance: {\n    maxEntrypointSize: 500 * 1024,\n    maxAssetSize: 500 * 1024\n  },\n  optimization: {\n    minimize,\n    splitChunks: {\n      chunks: 'all'\n    }\n  },\n  plugins: [\n    new DefinePlugin({\n      OSJS_VERSION: npm.version\n    }),\n    new HtmlWebpackPlugin({\n      template: path.resolve(__dirname, 'src/client/index.ejs'),\n      favicon: path.resolve(__dirname, 'src/client/favicon.png'),\n      title: 'OS.js'\n    }),\n    new MiniCssExtractPlugin({\n      filename: '[name].css'\n    }),\n    ...plugins\n  ],\n  module: {\n    rules: [\n      {\n        test: /\\.(svg|png|jpe?g|gif|webp)$/,\n        use: [\n          {\n            loader: 'file-loader'\n          }\n        ]\n      },\n      {\n        test: /\\.(eot|svg|ttf|woff|woff2)$/,\n        include: /typeface/,\n        use: {\n          loader: 'file-loader',\n          options: {\n            name: 'fonts/[name].[ext]'\n          }\n        }\n      },\n      {\n        test: /\\.(sa|sc|c)ss$/,\n        use: [\n          MiniCssExtractPlugin.loader,\n          {\n            loader: 'css-loader',\n            options: {\n              sourceMap: true\n            }\n          },\n          {\n            loader: 'sass-loader',\n            options: {\n              sourceMap: true\n            }\n          }\n        ]\n      },\n      {\n        test: /\\.js$/,\n        exclude: /node_modules/,\n        use: {\n          loader: 'babel-loader'\n        }\n      },\n      {\n        test: /\\.js$/,\n        enforce: 'pre',\n        use: {\n          loader: 'source-map-loader'\n        }\n      }\n    ]\n  }\n};\n"
  }
]