diff --git a/PKG-INFO b/PKG-INFO index d5ddb862..0b3e357c 100644 --- a/PKG-INFO +++ b/PKG-INFO @@ -1,127 +1,127 @@ Metadata-Version: 2.1 Name: swh.web -Version: 0.0.158 +Version: 0.0.159 Summary: Software Heritage Web UI Home-page: https://forge.softwareheritage.org/diffusion/DWUI/ Author: Software Heritage developers Author-email: swh-devel@inria.fr License: UNKNOWN Project-URL: Bug Reports, https://forge.softwareheritage.org/maniphest Project-URL: Funding, https://www.softwareheritage.org/donate Project-URL: Source, https://forge.softwareheritage.org/source/swh-web Description: # swh-web This repository holds the development of Software Heritage web applications: * SWH Web API (https://archive.softwareheritage.org/api): enables to query the content of the SWH archive through HTTP requests and get responses in JSON or YAML. * SWH Web browse (https://archive.softwareheritage.org/browse): graphical interface that eases the navigation in the SWH archive. Documentation about how to use these components but also the details of their URI schemes can be found in the docs folder. The produced HTML documentation can be read and browsed at https://docs.softwareheritage.org/devel/swh-web/index.html. ## Technical details Those applications are powered by: * [Django Web Framework](https://www.djangoproject.com/) on the backend side with the following extensions enabled: * [django-rest-framework](http://www.django-rest-framework.org/) * [django-webpack-loader](https://github.com/owais/django-webpack-loader) * [django-js-reverse](http://django-js-reverse.readthedocs.io/en/latest/) * [webpack](https://webpack.js.org/) on the frontend side for better static assets management, including: * assets dependencies management and retrieval through [npm](https://www.npmjs.com/) * linting of custom javascript code (through [eslint](https://eslint.org/)) and stylesheets (through [stylelint](https://stylelint.io/)) * use of [es6](http://es6-features.org) syntax and advanced javascript feature like [async/await](https://javascript.info/async-await) or [fetch](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API) thanks to [babel](https://babeljs.io/) (es6 to es5 transpiler and polyfills provider) * assets minification (using [UglifyJS](https://github.com/mishoo/UglifyJS2) and [cssnano](http://cssnano.co/)) but also dead code elimination for production use ## How to build and run ### Requirements First you will need [Python 3](https://www.python.org) and a complete [swh development environment](https://forge.softwareheritage.org/source/swh-environment/) installed. To run the backend, you need to have the following Python 3 modules installed: * beautifulsoup4 * django >= 1.10.7 * djangorestframework >= 3.4.0 * django_webpack_loader * django_js_reverse * docutils * file_magic >= 0.3.0 * htmlmin * lxml * pygments * pypandoc * python-dateutil * pyyaml * requests To compile the frontend assets, you need to have [nodejs](https://nodejs.org/en/) >= 8.x (preferably version 8.x LTS) and [npm](https://www.npmjs.com/) (or [yarn](https://yarnpkg.com/en/)) installed. If you are on Debian stretch, you can easily install an up to date nodejs/npm from the stretch-backports repository or by following the instructions located at https://github.com/nodesource/distributions. Once you have installed nodejs, issue the following command in the root directory of swh-web in order to retrieve all the frontend dependencies: ``` $ npm install ``` or if you prefer to use yarn (faster than npm): ``` $ yarn install ``` Please note that the static assets bundles generated by webpack are not stored in the git repository. Follow the instructions below in order to generate them in order to be able to run the frontend part of the web applications. ### Make targets Below is the list of available make targets that can be executed from the root directory of swh-web in order to build and/or execute the web applications under various configurations: * **run-django-webpack-devserver**: Compile and serve not optimized (without mignification and dead code elimination) frontend static assets using [webpack-dev-server](https://github.com/webpack/webpack-dev-server) and run django server with development settings. This is the recommended target to use when developing swh-web as it enables automatic reloading of backend and frontend part of the applications when modifying source files (*.py, *.js, *.css, *.html). * **run-django-webpack-dev**: Compile not optimized (no minification, no dead code elimination) frontend static assets using webpack and run django server with development settings. This is the recommended target when one only wants to develop the backend side of the application. * **run-django-webpack-prod**: Compile optimized (with minification and dead code elimination) frontend static assets using webpack and run django server with production settings. This is useful to test the applications in production mode (with the difference that static assets are served by django). Production settings notably enable advanced django caching and you will need to have [memcached](https://memcached.org/) installed for that feature to work. * **run-django-server-dev**: Run the django server with development settings but without compiling frontend static assets through webpack. * **run-django-server-prod**: Run the django server with production settings but without compiling frontend static assets through webpack. * **run-gunicorn-server**: Run the web applications with production settings in a [gunicorn](http://gunicorn.org/) worker as they will be in real production environment. Once one of these targets executed, the web applications can be executed by pointing your browser to http://localhost:5004. ### Npm/Yarn targets Below is a list of available npm/yarn targets in order to only execute the frontend static assets compilation (no web server will be executed): * **build-dev**: compile not optimized (without mignification and dead code elimination) frontend static assets and store the results in the `swh/web/static` folder. * **build**: compile optimized (with mignification and dead code elimination) frontend static assets and store the results in the `swh/web/static` folder. **The build target must be executed prior performing the Debian packaging of swh-web** in order for the package to contain the optimized assets dedicated to production environment. To execute these targets, issue the following commmand: ``` $ npm run ``` or if you prefer using yarn: ``` $ yarn ``` Platform: UNKNOWN Classifier: Programming Language :: Python :: 3 Classifier: Intended Audience :: Developers Classifier: License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+) Classifier: Operating System :: OS Independent Classifier: Development Status :: 5 - Production/Stable Classifier: Framework :: Django Description-Content-Type: text/markdown Provides-Extra: testing diff --git a/swh.web.egg-info/PKG-INFO b/swh.web.egg-info/PKG-INFO index d5ddb862..0b3e357c 100644 --- a/swh.web.egg-info/PKG-INFO +++ b/swh.web.egg-info/PKG-INFO @@ -1,127 +1,127 @@ Metadata-Version: 2.1 Name: swh.web -Version: 0.0.158 +Version: 0.0.159 Summary: Software Heritage Web UI Home-page: https://forge.softwareheritage.org/diffusion/DWUI/ Author: Software Heritage developers Author-email: swh-devel@inria.fr License: UNKNOWN Project-URL: Bug Reports, https://forge.softwareheritage.org/maniphest Project-URL: Funding, https://www.softwareheritage.org/donate Project-URL: Source, https://forge.softwareheritage.org/source/swh-web Description: # swh-web This repository holds the development of Software Heritage web applications: * SWH Web API (https://archive.softwareheritage.org/api): enables to query the content of the SWH archive through HTTP requests and get responses in JSON or YAML. * SWH Web browse (https://archive.softwareheritage.org/browse): graphical interface that eases the navigation in the SWH archive. Documentation about how to use these components but also the details of their URI schemes can be found in the docs folder. The produced HTML documentation can be read and browsed at https://docs.softwareheritage.org/devel/swh-web/index.html. ## Technical details Those applications are powered by: * [Django Web Framework](https://www.djangoproject.com/) on the backend side with the following extensions enabled: * [django-rest-framework](http://www.django-rest-framework.org/) * [django-webpack-loader](https://github.com/owais/django-webpack-loader) * [django-js-reverse](http://django-js-reverse.readthedocs.io/en/latest/) * [webpack](https://webpack.js.org/) on the frontend side for better static assets management, including: * assets dependencies management and retrieval through [npm](https://www.npmjs.com/) * linting of custom javascript code (through [eslint](https://eslint.org/)) and stylesheets (through [stylelint](https://stylelint.io/)) * use of [es6](http://es6-features.org) syntax and advanced javascript feature like [async/await](https://javascript.info/async-await) or [fetch](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API) thanks to [babel](https://babeljs.io/) (es6 to es5 transpiler and polyfills provider) * assets minification (using [UglifyJS](https://github.com/mishoo/UglifyJS2) and [cssnano](http://cssnano.co/)) but also dead code elimination for production use ## How to build and run ### Requirements First you will need [Python 3](https://www.python.org) and a complete [swh development environment](https://forge.softwareheritage.org/source/swh-environment/) installed. To run the backend, you need to have the following Python 3 modules installed: * beautifulsoup4 * django >= 1.10.7 * djangorestframework >= 3.4.0 * django_webpack_loader * django_js_reverse * docutils * file_magic >= 0.3.0 * htmlmin * lxml * pygments * pypandoc * python-dateutil * pyyaml * requests To compile the frontend assets, you need to have [nodejs](https://nodejs.org/en/) >= 8.x (preferably version 8.x LTS) and [npm](https://www.npmjs.com/) (or [yarn](https://yarnpkg.com/en/)) installed. If you are on Debian stretch, you can easily install an up to date nodejs/npm from the stretch-backports repository or by following the instructions located at https://github.com/nodesource/distributions. Once you have installed nodejs, issue the following command in the root directory of swh-web in order to retrieve all the frontend dependencies: ``` $ npm install ``` or if you prefer to use yarn (faster than npm): ``` $ yarn install ``` Please note that the static assets bundles generated by webpack are not stored in the git repository. Follow the instructions below in order to generate them in order to be able to run the frontend part of the web applications. ### Make targets Below is the list of available make targets that can be executed from the root directory of swh-web in order to build and/or execute the web applications under various configurations: * **run-django-webpack-devserver**: Compile and serve not optimized (without mignification and dead code elimination) frontend static assets using [webpack-dev-server](https://github.com/webpack/webpack-dev-server) and run django server with development settings. This is the recommended target to use when developing swh-web as it enables automatic reloading of backend and frontend part of the applications when modifying source files (*.py, *.js, *.css, *.html). * **run-django-webpack-dev**: Compile not optimized (no minification, no dead code elimination) frontend static assets using webpack and run django server with development settings. This is the recommended target when one only wants to develop the backend side of the application. * **run-django-webpack-prod**: Compile optimized (with minification and dead code elimination) frontend static assets using webpack and run django server with production settings. This is useful to test the applications in production mode (with the difference that static assets are served by django). Production settings notably enable advanced django caching and you will need to have [memcached](https://memcached.org/) installed for that feature to work. * **run-django-server-dev**: Run the django server with development settings but without compiling frontend static assets through webpack. * **run-django-server-prod**: Run the django server with production settings but without compiling frontend static assets through webpack. * **run-gunicorn-server**: Run the web applications with production settings in a [gunicorn](http://gunicorn.org/) worker as they will be in real production environment. Once one of these targets executed, the web applications can be executed by pointing your browser to http://localhost:5004. ### Npm/Yarn targets Below is a list of available npm/yarn targets in order to only execute the frontend static assets compilation (no web server will be executed): * **build-dev**: compile not optimized (without mignification and dead code elimination) frontend static assets and store the results in the `swh/web/static` folder. * **build**: compile optimized (with mignification and dead code elimination) frontend static assets and store the results in the `swh/web/static` folder. **The build target must be executed prior performing the Debian packaging of swh-web** in order for the package to contain the optimized assets dedicated to production environment. To execute these targets, issue the following commmand: ``` $ npm run ``` or if you prefer using yarn: ``` $ yarn ``` Platform: UNKNOWN Classifier: Programming Language :: Python :: 3 Classifier: Intended Audience :: Developers Classifier: License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+) Classifier: Operating System :: OS Independent Classifier: Development Status :: 5 - Production/Stable Classifier: Framework :: Django Description-Content-Type: text/markdown Provides-Extra: testing diff --git a/swh.web.egg-info/SOURCES.txt b/swh.web.egg-info/SOURCES.txt index bce4a694..7de6e724 100644 --- a/swh.web.egg-info/SOURCES.txt +++ b/swh.web.egg-info/SOURCES.txt @@ -1,386 +1,386 @@ .gitignore AUTHORS CONTRIBUTORS LICENSE MANIFEST.in Makefile Makefile.local README.md package-lock.json package.json requirements-swh.txt requirements-test.txt requirements.txt setup.py version.txt yarn.lock debian/changelog debian/compat debian/control debian/copyright debian/postinst debian/rules debian/source/format docs/.gitignore docs/Makefile docs/conf.py docs/developers-info.rst docs/index.rst docs/uri-scheme-api-content.rst docs/uri-scheme-api-directory.rst docs/uri-scheme-api-identifiers.rst docs/uri-scheme-api-origin.rst docs/uri-scheme-api-person.rst docs/uri-scheme-api-release.rst docs/uri-scheme-api-revision.rst docs/uri-scheme-api-snapshot.rst docs/uri-scheme-api-stat.rst docs/uri-scheme-api-vault.rst docs/uri-scheme-api.rst docs/uri-scheme-browse-content.rst docs/uri-scheme-browse-directory.rst docs/uri-scheme-browse-origin.rst docs/uri-scheme-browse-person.rst docs/uri-scheme-browse-release.rst docs/uri-scheme-browse-revision.rst docs/uri-scheme-browse-snapshot.rst docs/uri-scheme-browse.rst docs/uri-scheme-identifiers.rst docs/_static/.placeholder docs/_templates/.placeholder swh/__init__.py swh.web.egg-info/PKG-INFO swh.web.egg-info/SOURCES.txt swh.web.egg-info/dependency_links.txt swh.web.egg-info/requires.txt swh.web.egg-info/top_level.txt swh/web/__init__.py swh/web/config.py swh/web/doc_config.py swh/web/manage.py swh/web/urls.py swh/web/wsgi.py swh/web/admin/__init__.py swh/web/admin/adminurls.py swh/web/admin/deposit.py swh/web/admin/origin_save.py swh/web/admin/urls.py swh/web/api/__init__.py swh/web/api/apidoc.py swh/web/api/apiresponse.py swh/web/api/apiurls.py swh/web/api/renderers.py swh/web/api/urls.py swh/web/api/utils.py swh/web/api/views/__init__.py swh/web/api/views/content.py swh/web/api/views/directory.py swh/web/api/views/entity.py swh/web/api/views/identifiers.py swh/web/api/views/origin.py swh/web/api/views/origin_save.py swh/web/api/views/person.py swh/web/api/views/release.py swh/web/api/views/revision.py swh/web/api/views/snapshot.py swh/web/api/views/stat.py swh/web/api/views/utils.py swh/web/api/views/vault.py swh/web/assets/config/.bootstraprc swh/web/assets/config/.eslintrc swh/web/assets/config/bootstrap-pre-customize.scss swh/web/assets/config/webpack.config.development.js swh/web/assets/config/webpack.config.production.js swh/web/assets/config/webpack-plugins/remove-source-map-url-webpack-plugin.js swh/web/assets/src/bundles/admin/deposit.js swh/web/assets/src/bundles/admin/index.js swh/web/assets/src/bundles/admin/origin-save.js swh/web/assets/src/bundles/browse/breadcrumbs.css swh/web/assets/src/bundles/browse/browse-utils.js swh/web/assets/src/bundles/browse/browse.css swh/web/assets/src/bundles/browse/content.css swh/web/assets/src/bundles/browse/index.js swh/web/assets/src/bundles/browse/origin-save.js swh/web/assets/src/bundles/browse/origin-search.js swh/web/assets/src/bundles/browse/snapshot-navigation.css swh/web/assets/src/bundles/browse/snapshot-navigation.js swh/web/assets/src/bundles/browse/swh-ids-utils.js swh/web/assets/src/bundles/origin/index.js swh/web/assets/src/bundles/origin/visits-calendar.js swh/web/assets/src/bundles/origin/visits-histogram.js swh/web/assets/src/bundles/origin/visits-reporting.css swh/web/assets/src/bundles/origin/visits-reporting.js swh/web/assets/src/bundles/revision/diff-utils.js swh/web/assets/src/bundles/revision/index.js swh/web/assets/src/bundles/revision/revision.css swh/web/assets/src/bundles/vault/index.js swh/web/assets/src/bundles/vault/vault-create-tasks.js swh/web/assets/src/bundles/vault/vault-ui.js swh/web/assets/src/bundles/vault/vault.css swh/web/assets/src/bundles/vendors/datatables.css swh/web/assets/src/bundles/vendors/index.js swh/web/assets/src/bundles/webapp/breadcrumbs.css swh/web/assets/src/bundles/webapp/code-highlighting.js swh/web/assets/src/bundles/webapp/index.js swh/web/assets/src/bundles/webapp/pdf-rendering.js swh/web/assets/src/bundles/webapp/readme-rendering.js swh/web/assets/src/bundles/webapp/webapp-utils.js swh/web/assets/src/bundles/webapp/webapp.css swh/web/assets/src/utils/functions.js swh/web/assets/src/utils/heaps-permute.js swh/web/assets/src/utils/highlightjs.css swh/web/assets/src/utils/highlightjs.js swh/web/assets/src/utils/jquery.tabSlideOut.css swh/web/assets/src/utils/jquery.tabSlideOut.js swh/web/assets/src/utils/showdown.css swh/web/assets/src/utils/showdown.js swh/web/browse/__init__.py swh/web/browse/browseurls.py swh/web/browse/identifiers.py swh/web/browse/urls.py swh/web/browse/utils.py swh/web/browse/views/__init__.py swh/web/browse/views/content.py swh/web/browse/views/directory.py swh/web/browse/views/origin.py swh/web/browse/views/origin_save.py swh/web/browse/views/person.py swh/web/browse/views/release.py swh/web/browse/views/revision.py swh/web/browse/views/snapshot.py swh/web/browse/views/utils/__init__.py swh/web/browse/views/utils/snapshot_context.py swh/web/common/__init__.py swh/web/common/apps.py swh/web/common/converters.py swh/web/common/exc.py swh/web/common/highlightjs.py swh/web/common/middlewares.py swh/web/common/models.py swh/web/common/origin_save.py swh/web/common/query.py swh/web/common/service.py swh/web/common/swh_templatetags.py swh/web/common/throttling.py swh/web/common/urlsindex.py swh/web/common/utils.py swh/web/common/migrations/0001_initial.py swh/web/common/migrations/0002_saveoriginrequest_visit_date.py swh/web/common/migrations/0003_saveoriginrequest_loading_task_status.py swh/web/common/migrations/__init__.py swh/web/misc/__init__.py swh/web/misc/coverage.py swh/web/settings/__init__.py swh/web/settings/common.py swh/web/settings/development.py swh/web/settings/production.py swh/web/settings/tests.py swh/web/static/robots.txt swh/web/static/webpack-stats.json swh/web/static/css/browse.0b637bb4d4ab0950c003.css swh/web/static/css/browse.0b637bb4d4ab0950c003.css.map swh/web/static/css/highlightjs.090fbe89c0ce68c39621.css swh/web/static/css/highlightjs.090fbe89c0ce68c39621.css.map swh/web/static/css/origin.3ec450afa65ff699595f.css swh/web/static/css/origin.3ec450afa65ff699595f.css.map swh/web/static/css/revision.f8fb564349cb1a7579d3.css swh/web/static/css/revision.f8fb564349cb1a7579d3.css.map swh/web/static/css/showdown.62278a6cc2ec67759e44.css swh/web/static/css/showdown.62278a6cc2ec67759e44.css.map swh/web/static/css/vault.6a63b96a1075316fe27b.css swh/web/static/css/vault.6a63b96a1075316fe27b.css.map swh/web/static/css/vendors.1f5966896101381a1dc8.css swh/web/static/css/vendors.1f5966896101381a1dc8.css.map -swh/web/static/css/webapp.2b685a2dbf4dbcafb6b3.css -swh/web/static/css/webapp.2b685a2dbf4dbcafb6b3.css.map +swh/web/static/css/webapp.ed96ae754d210fdc290b.css +swh/web/static/css/webapp.ed96ae754d210fdc290b.css.map swh/web/static/fonts/alegreya-latin-400.woff swh/web/static/fonts/alegreya-latin-400.woff2 swh/web/static/fonts/alegreya-latin-400italic.woff swh/web/static/fonts/alegreya-latin-400italic.woff2 swh/web/static/fonts/alegreya-latin-500.woff swh/web/static/fonts/alegreya-latin-500.woff2 swh/web/static/fonts/alegreya-latin-500italic.woff swh/web/static/fonts/alegreya-latin-500italic.woff2 swh/web/static/fonts/alegreya-latin-700.woff swh/web/static/fonts/alegreya-latin-700.woff2 swh/web/static/fonts/alegreya-latin-700italic.woff swh/web/static/fonts/alegreya-latin-700italic.woff2 swh/web/static/fonts/alegreya-latin-800.woff swh/web/static/fonts/alegreya-latin-800.woff2 swh/web/static/fonts/alegreya-latin-800italic.woff swh/web/static/fonts/alegreya-latin-800italic.woff2 swh/web/static/fonts/alegreya-latin-900.woff swh/web/static/fonts/alegreya-latin-900.woff2 swh/web/static/fonts/alegreya-latin-900italic.woff swh/web/static/fonts/alegreya-latin-900italic.woff2 swh/web/static/fonts/alegreya-sans-latin-100.woff swh/web/static/fonts/alegreya-sans-latin-100.woff2 swh/web/static/fonts/alegreya-sans-latin-100italic.woff swh/web/static/fonts/alegreya-sans-latin-100italic.woff2 swh/web/static/fonts/alegreya-sans-latin-300.woff swh/web/static/fonts/alegreya-sans-latin-300.woff2 swh/web/static/fonts/alegreya-sans-latin-300italic.woff swh/web/static/fonts/alegreya-sans-latin-300italic.woff2 swh/web/static/fonts/alegreya-sans-latin-400.woff swh/web/static/fonts/alegreya-sans-latin-400.woff2 swh/web/static/fonts/alegreya-sans-latin-400italic.woff swh/web/static/fonts/alegreya-sans-latin-400italic.woff2 swh/web/static/fonts/alegreya-sans-latin-500.woff swh/web/static/fonts/alegreya-sans-latin-500.woff2 swh/web/static/fonts/alegreya-sans-latin-500italic.woff swh/web/static/fonts/alegreya-sans-latin-500italic.woff2 swh/web/static/fonts/alegreya-sans-latin-700.woff swh/web/static/fonts/alegreya-sans-latin-700.woff2 swh/web/static/fonts/alegreya-sans-latin-700italic.woff swh/web/static/fonts/alegreya-sans-latin-700italic.woff2 swh/web/static/fonts/alegreya-sans-latin-800.woff swh/web/static/fonts/alegreya-sans-latin-800.woff2 swh/web/static/fonts/alegreya-sans-latin-800italic.woff swh/web/static/fonts/alegreya-sans-latin-800italic.woff2 swh/web/static/fonts/alegreya-sans-latin-900.woff swh/web/static/fonts/alegreya-sans-latin-900.woff2 swh/web/static/fonts/alegreya-sans-latin-900italic.woff swh/web/static/fonts/alegreya-sans-latin-900italic.woff2 swh/web/static/fonts/fontawesome-webfont.eot swh/web/static/fonts/fontawesome-webfont.svg swh/web/static/fonts/fontawesome-webfont.ttf swh/web/static/fonts/fontawesome-webfont.woff swh/web/static/fonts/fontawesome-webfont.woff2 swh/web/static/fonts/octicons.eot swh/web/static/fonts/octicons.svg swh/web/static/fonts/octicons.ttf swh/web/static/fonts/octicons.woff swh/web/static/fonts/octicons.woff2 swh/web/static/fonts/open-iconic.eot swh/web/static/fonts/open-iconic.otf swh/web/static/fonts/open-iconic.svg swh/web/static/fonts/open-iconic.ttf swh/web/static/fonts/open-iconic.woff swh/web/static/img/arrow-up-small.png swh/web/static/img/swh-api.png swh/web/static/img/swh-browse.png swh/web/static/img/swh-logo.png swh/web/static/img/swh-logo.svg swh/web/static/img/swh-spinner-small.gif swh/web/static/img/swh-spinner.gif swh/web/static/img/swh-vault.png swh/web/static/img/icons/swh-logo-32x32.png swh/web/static/img/icons/swh-logo-archive-180x180.png swh/web/static/img/icons/swh-logo-archive-192x192.png swh/web/static/img/icons/swh-logo-archive-270x270.png swh/web/static/img/logos/debian.png swh/web/static/img/logos/github.png swh/web/static/img/logos/gitlab.svg swh/web/static/img/logos/gitorious.png swh/web/static/img/logos/gnu.png swh/web/static/img/logos/googlecode.png swh/web/static/img/logos/hal.png swh/web/static/img/logos/inria.jpg swh/web/static/img/logos/pypi.svg swh/web/static/js/admin.71ae1cb639374e776c7b.js swh/web/static/js/admin.71ae1cb639374e776c7b.js.map swh/web/static/js/browse.0b637bb4d4ab0950c003.js swh/web/static/js/browse.0b637bb4d4ab0950c003.js.map swh/web/static/js/highlightjs.090fbe89c0ce68c39621.js swh/web/static/js/highlightjs.090fbe89c0ce68c39621.js.map swh/web/static/js/origin.3ec450afa65ff699595f.js swh/web/static/js/origin.3ec450afa65ff699595f.js.map swh/web/static/js/pdf.worker.min.js swh/web/static/js/pdfjs.548cf46cfe15f05959f9.js swh/web/static/js/pdfjs.548cf46cfe15f05959f9.js.map swh/web/static/js/revision.f8fb564349cb1a7579d3.js swh/web/static/js/revision.f8fb564349cb1a7579d3.js.map swh/web/static/js/showdown.62278a6cc2ec67759e44.js swh/web/static/js/showdown.62278a6cc2ec67759e44.js.map swh/web/static/js/vault.6a63b96a1075316fe27b.js swh/web/static/js/vault.6a63b96a1075316fe27b.js.map swh/web/static/js/vendors.1f5966896101381a1dc8.js swh/web/static/js/vendors.1f5966896101381a1dc8.js.map -swh/web/static/js/webapp.2b685a2dbf4dbcafb6b3.js -swh/web/static/js/webapp.2b685a2dbf4dbcafb6b3.js.map +swh/web/static/js/webapp.ed96ae754d210fdc290b.js +swh/web/static/js/webapp.ed96ae754d210fdc290b.js.map swh/web/templates/coverage.html swh/web/templates/error.html swh/web/templates/homepage.html swh/web/templates/layout.html swh/web/templates/login.html swh/web/templates/logout.html swh/web/templates/admin/deposit.html swh/web/templates/admin/origin-save.html swh/web/templates/api/api.html swh/web/templates/api/apidoc.html swh/web/templates/api/endpoints.html swh/web/templates/browse/branches.html swh/web/templates/browse/browse.html swh/web/templates/browse/content.html swh/web/templates/browse/directory.html swh/web/templates/browse/help.html swh/web/templates/browse/layout.html swh/web/templates/browse/origin-save.html swh/web/templates/browse/origin-visits.html swh/web/templates/browse/person.html swh/web/templates/browse/release.html swh/web/templates/browse/releases.html swh/web/templates/browse/revision-log.html swh/web/templates/browse/revision.html swh/web/templates/browse/search.html swh/web/templates/browse/vault-ui.html swh/web/templates/includes/apidoc-header.html swh/web/templates/includes/apidoc-header.md swh/web/templates/includes/breadcrumbs.html swh/web/templates/includes/content-display.html swh/web/templates/includes/directory-display.html swh/web/templates/includes/global-modals.html swh/web/templates/includes/http-error.html swh/web/templates/includes/readme-display.html swh/web/templates/includes/show-metadata.html swh/web/templates/includes/show-swh-ids.html swh/web/templates/includes/snapshot-context.html swh/web/templates/includes/top-navigation.html swh/web/templates/includes/vault-create-tasks.html swh/web/tests/__init__.py swh/web/tests/testcase.py swh/web/tests/admin/__init__.py swh/web/tests/admin/test_origin_save.py swh/web/tests/api/__init__.py swh/web/tests/api/test_api_lookup.py swh/web/tests/api/test_apidoc.py swh/web/tests/api/test_apiresponse.py swh/web/tests/api/test_utils.py swh/web/tests/api/views/__init__.py swh/web/tests/api/views/test_content.py swh/web/tests/api/views/test_directory.py swh/web/tests/api/views/test_entity.py swh/web/tests/api/views/test_identifiers.py swh/web/tests/api/views/test_origin.py swh/web/tests/api/views/test_origin_save.py swh/web/tests/api/views/test_person.py swh/web/tests/api/views/test_release.py swh/web/tests/api/views/test_revision.py swh/web/tests/api/views/test_stat.py swh/web/tests/api/views/test_vault.py swh/web/tests/browse/__init__.py swh/web/tests/browse/test_utils.py swh/web/tests/browse/views/__init__.py swh/web/tests/browse/views/test_content.py swh/web/tests/browse/views/test_directory.py swh/web/tests/browse/views/test_identifiers.py swh/web/tests/browse/views/test_origin.py swh/web/tests/browse/views/test_person.py swh/web/tests/browse/views/test_release.py swh/web/tests/browse/views/test_revision.py swh/web/tests/browse/views/data/__init__.py swh/web/tests/browse/views/data/content_test_data.py swh/web/tests/browse/views/data/directory_test_data.py swh/web/tests/browse/views/data/iso-8859-1_encoded_content swh/web/tests/browse/views/data/origin_test_data.py swh/web/tests/browse/views/data/release_test_data.py swh/web/tests/browse/views/data/revision_test_data.py swh/web/tests/browse/views/data/swh-logo.png swh/web/tests/common/__init__.py swh/web/tests/common/test_converters.py swh/web/tests/common/test_highlightjs.py swh/web/tests/common/test_query.py swh/web/tests/common/test_service.py swh/web/tests/common/test_templatetags.py swh/web/tests/common/test_throttling.py swh/web/tests/common/test_utils.py \ No newline at end of file diff --git a/swh/web/assets/src/bundles/webapp/webapp.css b/swh/web/assets/src/bundles/webapp/webapp.css index 0f9ae13f..c1da507f 100644 --- a/swh/web/assets/src/bundles/webapp/webapp.css +++ b/swh/web/assets/src/bundles/webapp/webapp.css @@ -1,435 +1,436 @@ /** * Copyright (C) 2018 The Software Heritage developers * See the AUTHORS file at the top-level directory of this distribution * License: GNU Affero General Public License version 3, or any later version * See top-level LICENSE file for more information */ html { height: 100%; overflow-x: hidden; } body { min-height: 100%; margin: 0; position: relative; padding-bottom: 120px; } a { border-bottom-style: none; outline: none; } code { background-color: #f9f2f4; } pre code { background-color: transparent; } footer { background-color: #262626; color: #fff; font-size: 0.8rem; position: absolute; bottom: 0; width: 100%; padding-top: 20px; padding-bottom: 20px; z-index: 3000; } footer a, footer a:visited { color: #fecd1b; } footer a:hover { text-decoration: underline; } .link-color { color: #fecd1b; } pre { background-color: #f5f5f5; border: 1px solid #ccc; border-radius: 4px; padding: 9.5px; font-size: 0.8rem; } .btn.active { background-color: #e7e7e7; } .card { margin-bottom: 5px !important; overflow-x: auto; } .navbar-brand { padding: 5px; margin-right: 0; } .table { margin-bottom: 0; } .swh-web-app-link a { text-decoration: none; outline: none; border: none; } .swh-web-app-link:hover { background-color: #efeff2; } .table > thead > tr > th { border-top: none; border-bottom: 1px solid #e20026; } .table > tbody > tr > td { border-style: none; } .sitename .first-word, .sitename .second-word { color: rgba(0, 0, 0, 0.75); font-weight: normal; font-size: 1.2rem; } .sitename .first-word { font-family: 'Alegreya Sans', sans-serif; } .sitename .second-word { font-family: 'Alegreya', serif; } .swh-counter { font-size: 150%; } .swh-http-error { margin: 0 auto; text-align: center; } .swh-http-error-head { color: #2d353c; font-size: 30px; } .swh-http-error-code { bottom: 60%; color: #2d353c; font-size: 96px; line-height: 80px; margin-bottom: 10px !important; } .swh-http-error-desc { font-size: 12px; color: #647788; text-align: center; } .swh-http-error-desc pre { display: inline-block; text-align: left; max-width: 800px; white-space: pre-wrap; } .popover { max-width: 100%; z-index: 2000; } .modal { text-align: center; padding: 0 !important; } .modal::before { content: ''; display: inline-block; height: 100%; vertical-align: middle; margin-right: -4px; } .modal-dialog { display: inline-block; text-align: left; vertical-align: middle; } .dropdown-submenu { position: relative; } .dropdown-submenu .dropdown-menu { top: 0; left: -100%; margin-top: -5px; margin-left: -2px; } .dropdown-item:hover, .dropdown-item:focus { background-color: rgba(0, 0, 0, 0.1); } a.dropdown-left::before { content: "\f0d9"; font-family: 'FontAwesome'; display: block; width: 20px; height: 20px; float: left; margin-left: 0; } #swh-navbar { border-top-style: none; border-left-style: none; border-right-style: none; border-bottom-style: solid; border-bottom-width: 5px; border-image: linear-gradient(to right, rgb(226, 0, 38) 0%, rgb(254, 205, 27) 100%) 1 1 1 1; width: 100%; padding: 5px; margin-bottom: 20px; margin-top: 30px; justify-content: normal; flex-wrap: nowrap; } #back-to-top { display: initial; position: fixed; bottom: 30px; right: 30px; z-index: 10; } #back-to-top a img { display: block; width: 32px; height: 32px; background-size: 32px 32px; text-indent: -999px; overflow: hidden; } .swh-top-bar { direction: ltr; height: 30px; position: fixed; top: 0; left: 0; width: 100%; z-index: 99999; background-color: #262626; color: #fff; text-align: center; font-size: 14px; } .swh-top-bar ul { margin-top: 4px; padding-left: 0; white-space: nowrap; } .swh-top-bar li { display: inline-block; margin-left: 10px; margin-right: 10px; } .swh-top-bar a, .swh-top-bar a:visited { color: white; } .swh-top-bar a.swh-current-site, .swh-top-bar a.swh-current-site:visited { color: #fecd1b; } .swh-position-right { position: absolute; right: 0; } .swh-donate-link { border: 1px solid #fecd1b; background-color: #e20026; color: white !important; padding: 3px; border-radius: 3px; } .swh-navbar-content h4 { padding-top: 7px; } .swh-navbar-content .bread-crumbs { display: block; margin-left: -40px; } .swh-navbar-content .bread-crumbs li.bc-no-root { padding-top: 7px; } .main-sidebar { margin-top: 30px; } .content-wrapper { background: none; } .brand-image { max-height: 40px; } .brand-link { padding-top: 18.5px; padding-bottom: 18px; padding-left: 4px; border-bottom: 5px solid #e20026 !important; } .navbar-header a, ul.dropdown-menu a, ul.navbar-nav a, ul.nav-sidebar a { border-bottom-style: none; color: #323232; } .swh-sidebar .nav-link.active { color: #323232 !important; background-color: #e7e7e7 !important; } .swh-image-error { width: 80px; height: auto; } @media (max-width: 600px) { .swh-image-error { width: 40px; height: auto; } } .form-check-label { padding-top: 4px; } .swh-id-option { display: inline-block; margin-right: 5px; } .nav-pills .nav-link:not(.active):hover { color: rgba(0, 0, 0, 0.55); } .swh-heading-color { color: #e20026; } .sidebar-mini.sidebar-collapse .main-sidebar:hover { width: 4.6rem; } .sidebar-mini.sidebar-collapse .main-sidebar:hover .user-panel > .info, .sidebar-mini.sidebar-collapse .main-sidebar:hover .nav-sidebar .nav-link p, .sidebar-mini.sidebar-collapse .main-sidebar:hover .brand-text { visibility: hidden !important; } .sidebar .nav-link p, .main-sidebar .brand-text, .sidebar .user-panel .info { transition: none; } .sidebar-mini.sidebar-mini.sidebar-collapse .sidebar { padding-right: 0; } .swh-words-logo { position: absolute; top: 0; left: 0; width: 73px; height: 73px; text-align: center; font-size: 10pt; color: rgba(0, 0, 0, 0.75); } .swh-words-logo:hover { text-decoration: none; } .swh-words-logo-swh { line-height: 1; padding-top: 13px; visibility: hidden; } hr.swh-faded-line { border: 0; height: 1px; background-image: linear-gradient(to left, #f0f0f0, #8c8b8b, #f0f0f0); } .swh-readme-txt pre { background: none; border: none; } .swh-coverage { height: 65px; padding-top: 0.3rem; + border: none; } .swh-coverage a { text-decoration: none; } .swh-coverage-logo { display: block; width: 100%; height: 50px; margin-left: auto; margin-right: auto; object-fit: contain; /* polyfill for old browsers, see https://github.com/bfred-it/object-fit-images */ font-family: 'object-fit: contain;'; } .swh-coverage-list { width: 100%; height: 320px; border: none; } diff --git a/swh/web/misc/coverage.py b/swh/web/misc/coverage.py index 0ddea061..ff04bb91 100644 --- a/swh/web/misc/coverage.py +++ b/swh/web/misc/coverage.py @@ -1,68 +1,70 @@ # Copyright (C) 2018 The Software Heritage developers # See the AUTHORS file at the top-level directory of this distribution # License: GNU Affero General Public License version 3, or any later version # See top-level LICENSE file for more information from django.shortcuts import render +from django.views.decorators.clickjacking import xframe_options_exempt # Current coverage list of the archive # TODO: Retrieve that list dynamically instead of hardcoding it _code_providers = [ { 'provider_url': 'https://www.debian.org/', 'provider_logo': 'img/logos/debian.png', 'provider_info': 'source packages from the Debian distribution ' '(continuously archived)', }, { 'provider_url': 'https://github.com', 'provider_logo': 'img/logos/github.png', 'provider_info': 'public repositories from GitHub ' '(continuously archived)', }, { 'provider_url': 'https://gitlab.com', 'provider_logo': 'img/logos/gitlab.svg', 'provider_info': 'public repositories from GitLab ' '(continuously archived)', }, { 'provider_url': 'https://gitorious.org/', 'provider_logo': 'img/logos/gitorious.png', 'provider_info': 'public repositories from the former Gitorious code ' 'hosting service', }, { 'provider_url': 'https://code.google.com/archive/', 'provider_logo': 'img/logos/googlecode.png', 'provider_info': 'public repositories from the former Google Code ' 'project hosting service', }, { 'provider_url': 'https://www.gnu.org', 'provider_logo': 'img/logos/gnu.png', 'provider_info': 'releases from the GNU project (as of August 2015)', }, { 'provider_url': 'https://hal.archives-ouvertes.fr/', 'provider_logo': 'img/logos/hal.png', 'provider_info': 'scientific software source code deposited in the ' 'open archive HAL' }, { 'provider_url': 'https://gitlab.inria.fr', 'provider_logo': 'img/logos/inria.jpg', 'provider_info': 'public repositories from Inria GitLab ' '(continuously archived)', }, { 'provider_url': 'https://pypi.org', 'provider_logo': 'img/logos/pypi.svg', 'provider_info': 'source packages from the Python Packaging Index ' '(continuously archived)', }, ] +@xframe_options_exempt def swh_coverage(request): return render(request, 'coverage.html', {'providers': _code_providers}) diff --git a/swh/web/static/css/webapp.2b685a2dbf4dbcafb6b3.css.map b/swh/web/static/css/webapp.2b685a2dbf4dbcafb6b3.css.map deleted file mode 100644 index 0d0b6263..00000000 --- a/swh/web/static/css/webapp.2b685a2dbf4dbcafb6b3.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["/home/ndandrim/work/swh-environment/swh-web/swh/web/assets/src/bundles/webapp/webapp.css","/home/ndandrim/work/swh-environment/swh-web/swh/web/assets/src/bundles/webapp/breadcrumbs.css"],"names":[],"mappings":"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","file":"webapp.2b685a2dbf4dbcafb6b3.css","sourcesContent":["/**\n * Copyright (C) 2018 The Software Heritage developers\n * See the AUTHORS file at the top-level directory of this distribution\n * License: GNU Affero General Public License version 3, or any later version\n * See top-level LICENSE file for more information\n */\n\nhtml {\n height: 100%;\n overflow-x: hidden;\n}\n\nbody {\n min-height: 100%;\n margin: 0;\n position: relative;\n padding-bottom: 120px;\n}\n\na {\n border-bottom-style: none;\n outline: none;\n}\n\ncode {\n background-color: #f9f2f4;\n}\n\npre code {\n background-color: transparent;\n}\n\nfooter {\n background-color: #262626;\n color: #fff;\n font-size: 0.8rem;\n position: absolute;\n bottom: 0;\n width: 100%;\n padding-top: 20px;\n padding-bottom: 20px;\n z-index: 3000;\n}\n\nfooter a,\nfooter a:visited {\n color: #fecd1b;\n}\n\nfooter a:hover {\n text-decoration: underline;\n}\n\n.link-color {\n color: #fecd1b;\n}\n\npre {\n background-color: #f5f5f5;\n border: 1px solid #ccc;\n border-radius: 4px;\n padding: 9.5px;\n font-size: 0.8rem;\n}\n\n.btn.active {\n background-color: #e7e7e7;\n}\n\n.card {\n margin-bottom: 5px !important;\n overflow-x: auto;\n}\n\n.navbar-brand {\n padding: 5px;\n margin-right: 0;\n}\n\n.table {\n margin-bottom: 0;\n}\n\n.swh-web-app-link a {\n text-decoration: none;\n outline: none;\n border: none;\n}\n\n.swh-web-app-link:hover {\n background-color: #efeff2;\n}\n\n.table > thead > tr > th {\n border-top: none;\n border-bottom: 1px solid #e20026;\n}\n\n.table > tbody > tr > td {\n border-style: none;\n}\n\n.sitename .first-word,\n.sitename .second-word {\n color: rgba(0, 0, 0, 0.75);\n font-weight: normal;\n font-size: 1.2rem;\n}\n\n.sitename .first-word {\n font-family: 'Alegreya Sans', sans-serif;\n}\n\n.sitename .second-word {\n font-family: 'Alegreya', serif;\n}\n\n.swh-counter {\n font-size: 150%;\n}\n\n.swh-http-error {\n margin: 0 auto;\n text-align: center;\n}\n\n.swh-http-error-head {\n color: #2d353c;\n font-size: 30px;\n}\n\n.swh-http-error-code {\n bottom: 60%;\n color: #2d353c;\n font-size: 96px;\n line-height: 80px;\n margin-bottom: 10px !important;\n}\n\n.swh-http-error-desc {\n font-size: 12px;\n color: #647788;\n text-align: center;\n}\n\n.swh-http-error-desc pre {\n display: inline-block;\n text-align: left;\n max-width: 800px;\n white-space: pre-wrap;\n}\n\n.popover {\n max-width: 100%;\n z-index: 2000;\n}\n\n.modal {\n text-align: center;\n padding: 0 !important;\n}\n\n.modal::before {\n content: '';\n display: inline-block;\n height: 100%;\n vertical-align: middle;\n margin-right: -4px;\n}\n\n.modal-dialog {\n display: inline-block;\n text-align: left;\n vertical-align: middle;\n}\n\n.dropdown-submenu {\n position: relative;\n}\n\n.dropdown-submenu .dropdown-menu {\n top: 0;\n left: -100%;\n margin-top: -5px;\n margin-left: -2px;\n}\n\n.dropdown-item:hover,\n.dropdown-item:focus {\n background-color: rgba(0, 0, 0, 0.1);\n}\n\na.dropdown-left::before {\n content: \"\\f0d9\";\n font-family: 'FontAwesome';\n display: block;\n width: 20px;\n height: 20px;\n float: left;\n margin-left: 0;\n}\n\n#swh-navbar {\n border-top-style: none;\n border-left-style: none;\n border-right-style: none;\n border-bottom-style: solid;\n border-bottom-width: 5px;\n border-image: linear-gradient(to right, rgb(226, 0, 38) 0%, rgb(254, 205, 27) 100%) 1 1 1 1;\n width: 100%;\n padding: 5px;\n margin-bottom: 20px;\n margin-top: 30px;\n justify-content: normal;\n flex-wrap: nowrap;\n}\n\n#back-to-top {\n display: initial;\n position: fixed;\n bottom: 30px;\n right: 30px;\n z-index: 10;\n}\n\n#back-to-top a img {\n display: block;\n width: 32px;\n height: 32px;\n background-size: 32px 32px;\n text-indent: -999px;\n overflow: hidden;\n}\n\n.swh-top-bar {\n direction: ltr;\n height: 30px;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n z-index: 99999;\n background-color: #262626;\n color: #fff;\n text-align: center;\n font-size: 14px;\n}\n\n.swh-top-bar ul {\n margin-top: 4px;\n padding-left: 0;\n white-space: nowrap;\n}\n\n.swh-top-bar li {\n display: inline-block;\n margin-left: 10px;\n margin-right: 10px;\n}\n\n.swh-top-bar a,\n.swh-top-bar a:visited {\n color: white;\n}\n\n.swh-top-bar a.swh-current-site,\n.swh-top-bar a.swh-current-site:visited {\n color: #fecd1b;\n}\n\n.swh-position-right {\n position: absolute;\n right: 0;\n}\n\n.swh-donate-link {\n border: 1px solid #fecd1b;\n background-color: #e20026;\n color: white !important;\n padding: 3px;\n border-radius: 3px;\n}\n\n.swh-navbar-content h4 {\n padding-top: 7px;\n}\n\n.swh-navbar-content .bread-crumbs {\n display: block;\n margin-left: -40px;\n}\n\n.swh-navbar-content .bread-crumbs li.bc-no-root {\n padding-top: 7px;\n}\n\n.main-sidebar {\n margin-top: 30px;\n}\n\n.content-wrapper {\n background: none;\n}\n\n.brand-image {\n max-height: 40px;\n}\n\n.brand-link {\n padding-top: 18.5px;\n padding-bottom: 18px;\n padding-left: 4px;\n border-bottom: 5px solid #e20026 !important;\n}\n\n.navbar-header a,\nul.dropdown-menu a,\nul.navbar-nav a,\nul.nav-sidebar a {\n border-bottom-style: none;\n color: #323232;\n}\n\n.swh-sidebar .nav-link.active {\n color: #323232 !important;\n background-color: #e7e7e7 !important;\n}\n\n.swh-image-error {\n width: 80px;\n height: auto;\n}\n\n@media (max-width: 600px) {\n .swh-image-error {\n width: 40px;\n height: auto;\n }\n}\n\n.form-check-label {\n padding-top: 4px;\n}\n\n.swh-id-option {\n display: inline-block;\n margin-right: 5px;\n}\n\n.nav-pills .nav-link:not(.active):hover {\n color: rgba(0, 0, 0, 0.55);\n}\n\n.swh-heading-color {\n color: #e20026;\n}\n\n.sidebar-mini.sidebar-collapse .main-sidebar:hover {\n width: 4.6rem;\n}\n\n.sidebar-mini.sidebar-collapse .main-sidebar:hover .user-panel > .info,\n.sidebar-mini.sidebar-collapse .main-sidebar:hover .nav-sidebar .nav-link p,\n.sidebar-mini.sidebar-collapse .main-sidebar:hover .brand-text {\n visibility: hidden !important;\n}\n\n.sidebar .nav-link p,\n.main-sidebar .brand-text,\n.sidebar .user-panel .info {\n transition: none;\n}\n\n.sidebar-mini.sidebar-mini.sidebar-collapse .sidebar {\n padding-right: 0;\n}\n\n.swh-words-logo {\n position: absolute;\n top: 0;\n left: 0;\n width: 73px;\n height: 73px;\n text-align: center;\n font-size: 10pt;\n color: rgba(0, 0, 0, 0.75);\n}\n\n.swh-words-logo:hover {\n text-decoration: none;\n}\n\n.swh-words-logo-swh {\n line-height: 1;\n padding-top: 13px;\n visibility: hidden;\n}\n\nhr.swh-faded-line {\n border: 0;\n height: 1px;\n background-image: linear-gradient(to left, #f0f0f0, #8c8b8b, #f0f0f0);\n}\n\n.swh-readme-txt pre {\n background: none;\n border: none;\n}\n\n.swh-coverage {\n height: 65px;\n padding-top: 0.3rem;\n}\n\n.swh-coverage a {\n text-decoration: none;\n}\n\n.swh-coverage-logo {\n display: block;\n width: 100%;\n height: 50px;\n margin-left: auto;\n margin-right: auto;\n object-fit: contain;\n\n /* polyfill for old browsers, see https://github.com/bfred-it/object-fit-images */\n font-family: 'object-fit: contain;';\n}\n\n.swh-coverage-list {\n width: 100%;\n height: 320px;\n border: none;\n}\n","/**\n * Copyright (C) 2018 The Software Heritage developers\n * See the AUTHORS file at the top-level directory of this distribution\n * License: GNU Affero General Public License version 3, or any later version\n * See top-level LICENSE file for more information\n */\n\n.bread-crumbs {\n display: inline-block;\n overflow: hidden;\n color: rgba(0, 0, 0, 0.55);\n}\n\n.bread-crumbs ul {\n list-style-type: none;\n height: 100%;\n}\n\n.bread-crumbs li {\n float: left;\n list-style-type: none;\n}\n\n.bread-crumbs a {\n color: rgba(0, 0, 0, 0.75);\n border-bottom-style: none;\n}\n\n.bread-crumbs a:hover {\n color: rgba(0, 0, 0, 0.85);\n text-decoration: underline;\n}\n"]} \ No newline at end of file diff --git a/swh/web/static/css/webapp.2b685a2dbf4dbcafb6b3.css b/swh/web/static/css/webapp.ed96ae754d210fdc290b.css similarity index 90% rename from swh/web/static/css/webapp.2b685a2dbf4dbcafb6b3.css rename to swh/web/static/css/webapp.ed96ae754d210fdc290b.css index 43727ed0..ee3955d4 100644 --- a/swh/web/static/css/webapp.2b685a2dbf4dbcafb6b3.css +++ b/swh/web/static/css/webapp.ed96ae754d210fdc290b.css @@ -1 +1 @@ -html{height:100%;overflow-x:hidden}body{margin:0;min-height:100%;padding-bottom:120px;position:relative}a{border-bottom-style:none;outline:none}code{background-color:#f9f2f4}pre code{background-color:transparent}footer{background-color:#262626;bottom:0;color:#fff;font-size:.8rem;padding-bottom:20px;padding-top:20px;position:absolute;width:100%;z-index:3000}footer a,footer a:visited{color:#fecd1b}footer a:hover{text-decoration:underline}.link-color{color:#fecd1b}pre{-moz-border-radius:4px;-webkit-border-radius:4px;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px;font-size:.8rem;padding:9.5px}.btn.active{background-color:#e7e7e7}.card{margin-bottom:5px!important;overflow-x:auto}.navbar-brand{margin-right:0;padding:5px}.table{margin-bottom:0}.swh-web-app-link a{border:none;outline:none;text-decoration:none}.swh-web-app-link:hover{background-color:#efeff2}.table>thead>tr>th{border-bottom:1px solid #e20026;border-top:none}.table>tbody>tr>td{border-style:none}.sitename .first-word,.sitename .second-word{color:rgba(0,0,0,.75);font-size:1.2rem;font-weight:400}.sitename .first-word{font-family:Alegreya Sans,sans-serif}.sitename .second-word{font-family:Alegreya,serif}.swh-counter{font-size:150%}.swh-http-error{margin:0 auto;text-align:center}.swh-http-error-head{color:#2d353c;font-size:30px}.swh-http-error-code{bottom:60%;color:#2d353c;font-size:96px;line-height:80px;margin-bottom:10px!important}.swh-http-error-desc{color:#647788;font-size:12px;text-align:center}.swh-http-error-desc pre{display:inline-block;max-width:800px;text-align:left;white-space:pre-wrap}.popover{max-width:100%;z-index:2000}.modal{padding:0!important;text-align:center}.modal:before{content:"";height:100%;margin-right:-4px}.modal-dialog,.modal:before{display:inline-block;vertical-align:middle}.modal-dialog{text-align:left}.dropdown-submenu{position:relative}.dropdown-submenu .dropdown-menu{left:-100%;margin-left:-2px;margin-top:-5px;top:0}.dropdown-item:focus,.dropdown-item:hover{background-color:rgba(0,0,0,.1)}a.dropdown-left:before{content:"\F0D9";display:block;float:left;font-family:FontAwesome;height:20px;margin-left:0;width:20px}#swh-navbar{-moz-border-image:-moz-linear-gradient(left,#e20026 0,#fecd1b 100%) 1 1 1 1;-moz-box-pack:normal;-o-border-image:-o-linear-gradient(left,#e20026 0,#fecd1b 100%) 1 1 1 1;-webkit-border-image:-webkit-gradient(linear,left top,right top,from(#e20026),to(#fecd1b)) 1 1 1 1;-webkit-border-image:-webkit-linear-gradient(left,#e20026,#fecd1b) 1 1 1 1;-webkit-box-pack:normal;-webkit-flex-wrap:nowrap;-webkit-justify-content:normal;border-bottom-width:5px;border-image:-webkit-gradient(linear,left top,right top,from(#e20026),to(#fecd1b)) 1 1 1 1;border-image:linear-gradient(90deg,#e20026 0,#fecd1b) 1 1 1 1;border-style:none none solid;flex-wrap:nowrap;justify-content:normal;margin-bottom:20px;margin-top:30px;padding:5px;width:100%}#back-to-top{bottom:30px;display:initial;position:fixed;right:30px;z-index:10}#back-to-top a img{-moz-background-size:32px 32px;background-size:32px 32px;display:block;height:32px;overflow:hidden;text-indent:-999px;width:32px}.swh-top-bar{background-color:#262626;color:#fff;direction:ltr;font-size:14px;height:30px;left:0;position:fixed;text-align:center;top:0;width:100%;z-index:99999}.swh-top-bar ul{margin-top:4px;padding-left:0;white-space:nowrap}.swh-top-bar li{display:inline-block;margin-left:10px;margin-right:10px}.swh-top-bar a,.swh-top-bar a:visited{color:#fff}.swh-top-bar a.swh-current-site,.swh-top-bar a.swh-current-site:visited{color:#fecd1b}.swh-position-right{position:absolute;right:0}.swh-donate-link{-moz-border-radius:3px;-webkit-border-radius:3px;background-color:#e20026;border:1px solid #fecd1b;border-radius:3px;color:#fff!important;padding:3px}.swh-navbar-content h4{padding-top:7px}.swh-navbar-content .bread-crumbs{display:block;margin-left:-40px}.swh-navbar-content .bread-crumbs li.bc-no-root{padding-top:7px}.main-sidebar{margin-top:30px}.content-wrapper{background:none}.brand-image{max-height:40px}.brand-link{border-bottom:5px solid #e20026!important;padding-bottom:18px;padding-left:4px;padding-top:18.5px}.navbar-header a,ul.dropdown-menu a,ul.nav-sidebar a,ul.navbar-nav a{border-bottom-style:none;color:#323232}.swh-sidebar .nav-link.active{background-color:#e7e7e7!important;color:#323232!important}.swh-image-error{height:auto;width:80px}@media (max-width:600px){.swh-image-error{height:auto;width:40px}}.form-check-label{padding-top:4px}.swh-id-option{display:inline-block;margin-right:5px}.nav-pills .nav-link:not(.active):hover{color:rgba(0,0,0,.55)}.swh-heading-color{color:#e20026}.sidebar-mini.sidebar-collapse .main-sidebar:hover{width:4.6rem}.sidebar-mini.sidebar-collapse .main-sidebar:hover .brand-text,.sidebar-mini.sidebar-collapse .main-sidebar:hover .nav-sidebar .nav-link p,.sidebar-mini.sidebar-collapse .main-sidebar:hover .user-panel>.info{visibility:hidden!important}.main-sidebar .brand-text,.sidebar .nav-link p,.sidebar .user-panel .info{-moz-transition:none;-o-transition:none;-webkit-transition:none;transition:none}.sidebar-mini.sidebar-mini.sidebar-collapse .sidebar{padding-right:0}.swh-words-logo{color:rgba(0,0,0,.75);font-size:10pt;height:73px;left:0;position:absolute;text-align:center;top:0;width:73px}.swh-words-logo:hover{text-decoration:none}.swh-words-logo-swh{line-height:1;padding-top:13px;visibility:hidden}hr.swh-faded-line{background-image:-webkit-gradient(linear,right top,left top,from(#f0f0f0),color-stop(#8c8b8b),to(#f0f0f0));background-image:-webkit-linear-gradient(right,#f0f0f0,#8c8b8b,#f0f0f0);background-image:-moz-linear-gradient(right,#f0f0f0,#8c8b8b,#f0f0f0);background-image:-o-linear-gradient(right,#f0f0f0,#8c8b8b,#f0f0f0);background-image:linear-gradient(270deg,#f0f0f0,#8c8b8b,#f0f0f0);border:0;height:1px}.swh-readme-txt pre{background:none;border:none}.swh-coverage{height:65px;padding-top:.3rem}.swh-coverage a{text-decoration:none}.swh-coverage-logo{-o-object-fit:contain;display:block;font-family:"object-fit: contain;";height:50px;margin-left:auto;margin-right:auto;object-fit:contain;width:100%}.swh-coverage-list{border:none;height:320px;width:100%}.bread-crumbs{color:rgba(0,0,0,.55);display:inline-block;overflow:hidden}.bread-crumbs ul{height:100%;list-style-type:none}.bread-crumbs li{float:left;list-style-type:none}.bread-crumbs a{border-bottom-style:none;color:rgba(0,0,0,.75)}.bread-crumbs a:hover{color:rgba(0,0,0,.85);text-decoration:underline} \ No newline at end of file +html{height:100%;overflow-x:hidden}body{margin:0;min-height:100%;padding-bottom:120px;position:relative}a{border-bottom-style:none;outline:none}code{background-color:#f9f2f4}pre code{background-color:transparent}footer{background-color:#262626;bottom:0;color:#fff;font-size:.8rem;padding-bottom:20px;padding-top:20px;position:absolute;width:100%;z-index:3000}footer a,footer a:visited{color:#fecd1b}footer a:hover{text-decoration:underline}.link-color{color:#fecd1b}pre{-moz-border-radius:4px;-webkit-border-radius:4px;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px;font-size:.8rem;padding:9.5px}.btn.active{background-color:#e7e7e7}.card{margin-bottom:5px!important;overflow-x:auto}.navbar-brand{margin-right:0;padding:5px}.table{margin-bottom:0}.swh-web-app-link a{border:none;outline:none;text-decoration:none}.swh-web-app-link:hover{background-color:#efeff2}.table>thead>tr>th{border-bottom:1px solid #e20026;border-top:none}.table>tbody>tr>td{border-style:none}.sitename .first-word,.sitename .second-word{color:rgba(0,0,0,.75);font-size:1.2rem;font-weight:400}.sitename .first-word{font-family:Alegreya Sans,sans-serif}.sitename .second-word{font-family:Alegreya,serif}.swh-counter{font-size:150%}.swh-http-error{margin:0 auto;text-align:center}.swh-http-error-head{color:#2d353c;font-size:30px}.swh-http-error-code{bottom:60%;color:#2d353c;font-size:96px;line-height:80px;margin-bottom:10px!important}.swh-http-error-desc{color:#647788;font-size:12px;text-align:center}.swh-http-error-desc pre{display:inline-block;max-width:800px;text-align:left;white-space:pre-wrap}.popover{max-width:100%;z-index:2000}.modal{padding:0!important;text-align:center}.modal:before{content:"";height:100%;margin-right:-4px}.modal-dialog,.modal:before{display:inline-block;vertical-align:middle}.modal-dialog{text-align:left}.dropdown-submenu{position:relative}.dropdown-submenu .dropdown-menu{left:-100%;margin-left:-2px;margin-top:-5px;top:0}.dropdown-item:focus,.dropdown-item:hover{background-color:rgba(0,0,0,.1)}a.dropdown-left:before{content:"\F0D9";display:block;float:left;font-family:FontAwesome;height:20px;margin-left:0;width:20px}#swh-navbar{-moz-border-image:-moz-linear-gradient(left,#e20026 0,#fecd1b 100%) 1 1 1 1;-moz-box-pack:normal;-o-border-image:-o-linear-gradient(left,#e20026 0,#fecd1b 100%) 1 1 1 1;-webkit-border-image:-webkit-gradient(linear,left top,right top,from(#e20026),to(#fecd1b)) 1 1 1 1;-webkit-border-image:-webkit-linear-gradient(left,#e20026,#fecd1b) 1 1 1 1;-webkit-box-pack:normal;-webkit-flex-wrap:nowrap;-webkit-justify-content:normal;border-bottom-width:5px;border-image:-webkit-gradient(linear,left top,right top,from(#e20026),to(#fecd1b)) 1 1 1 1;border-image:linear-gradient(90deg,#e20026 0,#fecd1b) 1 1 1 1;border-style:none none solid;flex-wrap:nowrap;justify-content:normal;margin-bottom:20px;margin-top:30px;padding:5px;width:100%}#back-to-top{bottom:30px;display:initial;position:fixed;right:30px;z-index:10}#back-to-top a img{-moz-background-size:32px 32px;background-size:32px 32px;display:block;height:32px;overflow:hidden;text-indent:-999px;width:32px}.swh-top-bar{background-color:#262626;color:#fff;direction:ltr;font-size:14px;height:30px;left:0;position:fixed;text-align:center;top:0;width:100%;z-index:99999}.swh-top-bar ul{margin-top:4px;padding-left:0;white-space:nowrap}.swh-top-bar li{display:inline-block;margin-left:10px;margin-right:10px}.swh-top-bar a,.swh-top-bar a:visited{color:#fff}.swh-top-bar a.swh-current-site,.swh-top-bar a.swh-current-site:visited{color:#fecd1b}.swh-position-right{position:absolute;right:0}.swh-donate-link{-moz-border-radius:3px;-webkit-border-radius:3px;background-color:#e20026;border:1px solid #fecd1b;border-radius:3px;color:#fff!important;padding:3px}.swh-navbar-content h4{padding-top:7px}.swh-navbar-content .bread-crumbs{display:block;margin-left:-40px}.swh-navbar-content .bread-crumbs li.bc-no-root{padding-top:7px}.main-sidebar{margin-top:30px}.content-wrapper{background:none}.brand-image{max-height:40px}.brand-link{border-bottom:5px solid #e20026!important;padding-bottom:18px;padding-left:4px;padding-top:18.5px}.navbar-header a,ul.dropdown-menu a,ul.nav-sidebar a,ul.navbar-nav a{border-bottom-style:none;color:#323232}.swh-sidebar .nav-link.active{background-color:#e7e7e7!important;color:#323232!important}.swh-image-error{height:auto;width:80px}@media (max-width:600px){.swh-image-error{height:auto;width:40px}}.form-check-label{padding-top:4px}.swh-id-option{display:inline-block;margin-right:5px}.nav-pills .nav-link:not(.active):hover{color:rgba(0,0,0,.55)}.swh-heading-color{color:#e20026}.sidebar-mini.sidebar-collapse .main-sidebar:hover{width:4.6rem}.sidebar-mini.sidebar-collapse .main-sidebar:hover .brand-text,.sidebar-mini.sidebar-collapse .main-sidebar:hover .nav-sidebar .nav-link p,.sidebar-mini.sidebar-collapse .main-sidebar:hover .user-panel>.info{visibility:hidden!important}.main-sidebar .brand-text,.sidebar .nav-link p,.sidebar .user-panel .info{-moz-transition:none;-o-transition:none;-webkit-transition:none;transition:none}.sidebar-mini.sidebar-mini.sidebar-collapse .sidebar{padding-right:0}.swh-words-logo{color:rgba(0,0,0,.75);font-size:10pt;height:73px;left:0;position:absolute;text-align:center;top:0;width:73px}.swh-words-logo:hover{text-decoration:none}.swh-words-logo-swh{line-height:1;padding-top:13px;visibility:hidden}hr.swh-faded-line{background-image:-webkit-gradient(linear,right top,left top,from(#f0f0f0),color-stop(#8c8b8b),to(#f0f0f0));background-image:-webkit-linear-gradient(right,#f0f0f0,#8c8b8b,#f0f0f0);background-image:-moz-linear-gradient(right,#f0f0f0,#8c8b8b,#f0f0f0);background-image:-o-linear-gradient(right,#f0f0f0,#8c8b8b,#f0f0f0);background-image:linear-gradient(270deg,#f0f0f0,#8c8b8b,#f0f0f0);border:0;height:1px}.swh-readme-txt pre{background:none;border:none}.swh-coverage{border:none;height:65px;padding-top:.3rem}.swh-coverage a{text-decoration:none}.swh-coverage-logo{-o-object-fit:contain;display:block;font-family:"object-fit: contain;";height:50px;margin-left:auto;margin-right:auto;object-fit:contain;width:100%}.swh-coverage-list{border:none;height:320px;width:100%}.bread-crumbs{color:rgba(0,0,0,.55);display:inline-block;overflow:hidden}.bread-crumbs ul{height:100%;list-style-type:none}.bread-crumbs li{float:left;list-style-type:none}.bread-crumbs a{border-bottom-style:none;color:rgba(0,0,0,.75)}.bread-crumbs a:hover{color:rgba(0,0,0,.85);text-decoration:underline} \ No newline at end of file diff --git a/swh/web/static/css/webapp.ed96ae754d210fdc290b.css.map b/swh/web/static/css/webapp.ed96ae754d210fdc290b.css.map new file mode 100644 index 00000000..9824dbcb --- /dev/null +++ b/swh/web/static/css/webapp.ed96ae754d210fdc290b.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["/home/ndandrim/work/swh-environment/swh-web/swh/web/assets/src/bundles/webapp/webapp.css","/home/ndandrim/work/swh-environment/swh-web/swh/web/assets/src/bundles/webapp/breadcrumbs.css"],"names":[],"mappings":"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","file":"webapp.ed96ae754d210fdc290b.css","sourcesContent":["/**\n * Copyright (C) 2018 The Software Heritage developers\n * See the AUTHORS file at the top-level directory of this distribution\n * License: GNU Affero General Public License version 3, or any later version\n * See top-level LICENSE file for more information\n */\n\nhtml {\n height: 100%;\n overflow-x: hidden;\n}\n\nbody {\n min-height: 100%;\n margin: 0;\n position: relative;\n padding-bottom: 120px;\n}\n\na {\n border-bottom-style: none;\n outline: none;\n}\n\ncode {\n background-color: #f9f2f4;\n}\n\npre code {\n background-color: transparent;\n}\n\nfooter {\n background-color: #262626;\n color: #fff;\n font-size: 0.8rem;\n position: absolute;\n bottom: 0;\n width: 100%;\n padding-top: 20px;\n padding-bottom: 20px;\n z-index: 3000;\n}\n\nfooter a,\nfooter a:visited {\n color: #fecd1b;\n}\n\nfooter a:hover {\n text-decoration: underline;\n}\n\n.link-color {\n color: #fecd1b;\n}\n\npre {\n background-color: #f5f5f5;\n border: 1px solid #ccc;\n border-radius: 4px;\n padding: 9.5px;\n font-size: 0.8rem;\n}\n\n.btn.active {\n background-color: #e7e7e7;\n}\n\n.card {\n margin-bottom: 5px !important;\n overflow-x: auto;\n}\n\n.navbar-brand {\n padding: 5px;\n margin-right: 0;\n}\n\n.table {\n margin-bottom: 0;\n}\n\n.swh-web-app-link a {\n text-decoration: none;\n outline: none;\n border: none;\n}\n\n.swh-web-app-link:hover {\n background-color: #efeff2;\n}\n\n.table > thead > tr > th {\n border-top: none;\n border-bottom: 1px solid #e20026;\n}\n\n.table > tbody > tr > td {\n border-style: none;\n}\n\n.sitename .first-word,\n.sitename .second-word {\n color: rgba(0, 0, 0, 0.75);\n font-weight: normal;\n font-size: 1.2rem;\n}\n\n.sitename .first-word {\n font-family: 'Alegreya Sans', sans-serif;\n}\n\n.sitename .second-word {\n font-family: 'Alegreya', serif;\n}\n\n.swh-counter {\n font-size: 150%;\n}\n\n.swh-http-error {\n margin: 0 auto;\n text-align: center;\n}\n\n.swh-http-error-head {\n color: #2d353c;\n font-size: 30px;\n}\n\n.swh-http-error-code {\n bottom: 60%;\n color: #2d353c;\n font-size: 96px;\n line-height: 80px;\n margin-bottom: 10px !important;\n}\n\n.swh-http-error-desc {\n font-size: 12px;\n color: #647788;\n text-align: center;\n}\n\n.swh-http-error-desc pre {\n display: inline-block;\n text-align: left;\n max-width: 800px;\n white-space: pre-wrap;\n}\n\n.popover {\n max-width: 100%;\n z-index: 2000;\n}\n\n.modal {\n text-align: center;\n padding: 0 !important;\n}\n\n.modal::before {\n content: '';\n display: inline-block;\n height: 100%;\n vertical-align: middle;\n margin-right: -4px;\n}\n\n.modal-dialog {\n display: inline-block;\n text-align: left;\n vertical-align: middle;\n}\n\n.dropdown-submenu {\n position: relative;\n}\n\n.dropdown-submenu .dropdown-menu {\n top: 0;\n left: -100%;\n margin-top: -5px;\n margin-left: -2px;\n}\n\n.dropdown-item:hover,\n.dropdown-item:focus {\n background-color: rgba(0, 0, 0, 0.1);\n}\n\na.dropdown-left::before {\n content: \"\\f0d9\";\n font-family: 'FontAwesome';\n display: block;\n width: 20px;\n height: 20px;\n float: left;\n margin-left: 0;\n}\n\n#swh-navbar {\n border-top-style: none;\n border-left-style: none;\n border-right-style: none;\n border-bottom-style: solid;\n border-bottom-width: 5px;\n border-image: linear-gradient(to right, rgb(226, 0, 38) 0%, rgb(254, 205, 27) 100%) 1 1 1 1;\n width: 100%;\n padding: 5px;\n margin-bottom: 20px;\n margin-top: 30px;\n justify-content: normal;\n flex-wrap: nowrap;\n}\n\n#back-to-top {\n display: initial;\n position: fixed;\n bottom: 30px;\n right: 30px;\n z-index: 10;\n}\n\n#back-to-top a img {\n display: block;\n width: 32px;\n height: 32px;\n background-size: 32px 32px;\n text-indent: -999px;\n overflow: hidden;\n}\n\n.swh-top-bar {\n direction: ltr;\n height: 30px;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n z-index: 99999;\n background-color: #262626;\n color: #fff;\n text-align: center;\n font-size: 14px;\n}\n\n.swh-top-bar ul {\n margin-top: 4px;\n padding-left: 0;\n white-space: nowrap;\n}\n\n.swh-top-bar li {\n display: inline-block;\n margin-left: 10px;\n margin-right: 10px;\n}\n\n.swh-top-bar a,\n.swh-top-bar a:visited {\n color: white;\n}\n\n.swh-top-bar a.swh-current-site,\n.swh-top-bar a.swh-current-site:visited {\n color: #fecd1b;\n}\n\n.swh-position-right {\n position: absolute;\n right: 0;\n}\n\n.swh-donate-link {\n border: 1px solid #fecd1b;\n background-color: #e20026;\n color: white !important;\n padding: 3px;\n border-radius: 3px;\n}\n\n.swh-navbar-content h4 {\n padding-top: 7px;\n}\n\n.swh-navbar-content .bread-crumbs {\n display: block;\n margin-left: -40px;\n}\n\n.swh-navbar-content .bread-crumbs li.bc-no-root {\n padding-top: 7px;\n}\n\n.main-sidebar {\n margin-top: 30px;\n}\n\n.content-wrapper {\n background: none;\n}\n\n.brand-image {\n max-height: 40px;\n}\n\n.brand-link {\n padding-top: 18.5px;\n padding-bottom: 18px;\n padding-left: 4px;\n border-bottom: 5px solid #e20026 !important;\n}\n\n.navbar-header a,\nul.dropdown-menu a,\nul.navbar-nav a,\nul.nav-sidebar a {\n border-bottom-style: none;\n color: #323232;\n}\n\n.swh-sidebar .nav-link.active {\n color: #323232 !important;\n background-color: #e7e7e7 !important;\n}\n\n.swh-image-error {\n width: 80px;\n height: auto;\n}\n\n@media (max-width: 600px) {\n .swh-image-error {\n width: 40px;\n height: auto;\n }\n}\n\n.form-check-label {\n padding-top: 4px;\n}\n\n.swh-id-option {\n display: inline-block;\n margin-right: 5px;\n}\n\n.nav-pills .nav-link:not(.active):hover {\n color: rgba(0, 0, 0, 0.55);\n}\n\n.swh-heading-color {\n color: #e20026;\n}\n\n.sidebar-mini.sidebar-collapse .main-sidebar:hover {\n width: 4.6rem;\n}\n\n.sidebar-mini.sidebar-collapse .main-sidebar:hover .user-panel > .info,\n.sidebar-mini.sidebar-collapse .main-sidebar:hover .nav-sidebar .nav-link p,\n.sidebar-mini.sidebar-collapse .main-sidebar:hover .brand-text {\n visibility: hidden !important;\n}\n\n.sidebar .nav-link p,\n.main-sidebar .brand-text,\n.sidebar .user-panel .info {\n transition: none;\n}\n\n.sidebar-mini.sidebar-mini.sidebar-collapse .sidebar {\n padding-right: 0;\n}\n\n.swh-words-logo {\n position: absolute;\n top: 0;\n left: 0;\n width: 73px;\n height: 73px;\n text-align: center;\n font-size: 10pt;\n color: rgba(0, 0, 0, 0.75);\n}\n\n.swh-words-logo:hover {\n text-decoration: none;\n}\n\n.swh-words-logo-swh {\n line-height: 1;\n padding-top: 13px;\n visibility: hidden;\n}\n\nhr.swh-faded-line {\n border: 0;\n height: 1px;\n background-image: linear-gradient(to left, #f0f0f0, #8c8b8b, #f0f0f0);\n}\n\n.swh-readme-txt pre {\n background: none;\n border: none;\n}\n\n.swh-coverage {\n height: 65px;\n padding-top: 0.3rem;\n border: none;\n}\n\n.swh-coverage a {\n text-decoration: none;\n}\n\n.swh-coverage-logo {\n display: block;\n width: 100%;\n height: 50px;\n margin-left: auto;\n margin-right: auto;\n object-fit: contain;\n\n /* polyfill for old browsers, see https://github.com/bfred-it/object-fit-images */\n font-family: 'object-fit: contain;';\n}\n\n.swh-coverage-list {\n width: 100%;\n height: 320px;\n border: none;\n}\n","/**\n * Copyright (C) 2018 The Software Heritage developers\n * See the AUTHORS file at the top-level directory of this distribution\n * License: GNU Affero General Public License version 3, or any later version\n * See top-level LICENSE file for more information\n */\n\n.bread-crumbs {\n display: inline-block;\n overflow: hidden;\n color: rgba(0, 0, 0, 0.55);\n}\n\n.bread-crumbs ul {\n list-style-type: none;\n height: 100%;\n}\n\n.bread-crumbs li {\n float: left;\n list-style-type: none;\n}\n\n.bread-crumbs a {\n color: rgba(0, 0, 0, 0.75);\n border-bottom-style: none;\n}\n\n.bread-crumbs a:hover {\n color: rgba(0, 0, 0, 0.85);\n text-decoration: underline;\n}\n"]} \ No newline at end of file diff --git a/swh/web/static/img/logos/gitorious.png b/swh/web/static/img/logos/gitorious.png index b3211ea5..aff039eb 100644 Binary files a/swh/web/static/img/logos/gitorious.png and b/swh/web/static/img/logos/gitorious.png differ diff --git a/swh/web/static/img/logos/gnu.png b/swh/web/static/img/logos/gnu.png index 40944cba..4a3bdde4 100644 Binary files a/swh/web/static/img/logos/gnu.png and b/swh/web/static/img/logos/gnu.png differ diff --git a/swh/web/static/img/logos/googlecode.png b/swh/web/static/img/logos/googlecode.png index 4112fbab..c849a7d8 100644 Binary files a/swh/web/static/img/logos/googlecode.png and b/swh/web/static/img/logos/googlecode.png differ diff --git a/swh/web/static/js/webapp.2b685a2dbf4dbcafb6b3.js b/swh/web/static/js/webapp.ed96ae754d210fdc290b.js similarity index 99% rename from swh/web/static/js/webapp.2b685a2dbf4dbcafb6b3.js rename to swh/web/static/js/webapp.ed96ae754d210fdc290b.js index 22d51c1a..ea659e92 100644 --- a/swh/web/static/js/webapp.2b685a2dbf4dbcafb6b3.js +++ b/swh/web/static/js/webapp.ed96ae754d210fdc290b.js @@ -1,3 +1,3 @@ !function(t,n){"object"==typeof exports&&"object"==typeof module?module.exports=n():"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?exports.webapp=n():(t.swh=t.swh||{},t.swh.webapp=n())}(window,function(){return function(u){function t(t){for(var n,e,r=t[0],o=t[1],i=t[2],c=0,a=[];ct;)n(r[t++]);f._c=[],f._n=!1,e&&!f._h&&R(f)})}},R=function(i){m.call(u,function(){var t,n,e,r=i._v,o=I(i);if(o&&(t=b(function(){P?k.emit("unhandledRejection",r,i):(n=u.onunhandledrejection)?n({promise:i,reason:r}):(e=u.console)&&e.error&&e.error("Unhandled promise rejection",r)}),i._h=P||I(i)?2:1),i._a=void 0,o&&t.e)throw t.v})},I=function(t){return 1!==t._h&&0===(t._a||t._c).length},N=function(n){m.call(u,function(){var t;P?k.emit("rejectionHandled",n):(t=u.onrejectionhandled)&&t({promise:n,reason:n._v})})},F=function(t){var n=this;n._d||(n._d=!0,(n=n._w||n)._v=t,n._s=2,n._a||(n._a=n._c.slice()),A(n,!0))},G=function(t){var e,r=this;if(!r._d){r._d=!0,r=r._w||r;try{if(r===t)throw S("Promise can't be resolved itself");(e=C(t))?y(function(){var n={_w:r,_d:!1};try{e.call(t,s(G,n,1),s(F,n,1))}catch(t){F.call(n,t)}}):(r._v=t,r._s=1,A(r,!1))}catch(t){F.call({_w:r,_d:!1},t)}}};M||(E=function(t){d(this,E,j,"_h"),p(t),r.call(this);try{t(s(G,this,1),s(F,this,1))}catch(t){F.call(this,t)}},(r=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=e(123)(E.prototype,{then:function(t,n){var e=$(g(this,E));return e.ok="function"!=typeof t||t,e.fail="function"==typeof n&&n,e.domain=P?k.domain:void 0,this._c.push(e),this._a&&this._a.push(e),this._s&&A(this,!1),e.promise},catch:function(t){return this.then(void 0,t)}}),i=function(){var t=new r;this.promise=t,this.resolve=s(G,t,1),this.reject=s(F,t,1)},w.f=$=function(t){return t===E||t===c?new i(t):o(t)}),l(l.G+l.W+l.F*!M,{Promise:E}),e(34)(E,j),e(124)(j),c=e(3)[j],l(l.S+l.F*!M,j,{reject:function(t){var n=$(this);return(0,n.reject)(t),n.promise}}),l(l.S+l.F*(a||!M),j,{resolve:function(t){return _(a&&this===c?E:this,t)}}),l(l.S+l.F*!(M&&e(125)(function(t){E.all(t).catch(T)})),j,{all:function(t){var c=this,n=$(c),a=n.resolve,u=n.reject,e=b(function(){var r=[],o=0,i=1;v(t,!1,function(t){var n=o++,e=!1;r.push(void 0),i++,c.resolve(t).then(function(t){e||(e=!0,r[n]=t,--i||a(r))},u)}),--i||a(r)});return e.e&&u(e.v),n.promise},race:function(t){var n=this,e=$(n),r=e.reject,o=b(function(){v(t,!1,function(t){n.resolve(t).then(e.resolve,r)})});return o.e&&r(o.v),e.promise}})},116:function(t,n){t.exports=function(t,n,e,r){if(!(t instanceof n)||void 0!==r&&r in t)throw TypeError(e+": incorrect invocation!");return t}},117:function(t,n,e){var h=e(21),p=e(118),d=e(119),v=e(5),g=e(51),m=e(95),y={},w={};(n=t.exports=function(t,n,e,r,o){var i,c,a,u,s=o?function(){return t}:m(t),f=h(e,r,n?2:1),l=0;if("function"!=typeof s)throw TypeError(t+" is not iterable!");if(d(s)){for(i=g(t.length);ln.width||o.img.naturalHeight>n.height?n.style.backgroundSize="contain":n.style.backgroundSize="auto"}):n.style.backgroundSize=t["object-fit"].replace("none","auto").replace("fill","100% 100%"),d(o.img,function(t){p(n,t.naturalWidth,t.naturalHeight)})}function g(t,n){var e=!h&&!t;if(n=n||{},t=t||"img",o&&!n.skipTest||!u)return!1;"img"===t?t=document.getElementsByTagName("img"):"string"==typeof t?t=document.querySelectorAll(t):"length"in t||(t=[t]);for(var r=0;r"+t+"")}).catch(function(){$(n).text("Readme bytes are not available")})})}function k(t){return O.apply(this,arguments)}function O(){return(O=y()(v.a.mark(function t(n){var e,r,o,i,c,a,u,s,f,l,h,p;return v.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return h=function(){r>=e.numPages||f(++r)},l=function(){r<=1||f(--r)},f=function(t){o?i=t:s(t)},s=function(t){o=!0,e.getPage(t).then(function(t){var n=t.getViewport(c);a.width=n.width,a.height=n.height;var e={canvasContext:u,viewport:n};t.render(e).promise.then(function(){o=!1,null!==i&&(s(i),i=null)})}),$("#pdf-page-num").text(t)},o=!(r=1),i=e=null,c=1.5,a=$("#pdf-canvas")[0],u=a.getContext("2d"),t.next=13,d.e(9).then(d.t.bind(null,527,7));case 13:(p=t.sent).GlobalWorkerOptions.workerSrc=Object(x.e)("js/pdf.worker.min.js"),$(document).ready(function(){$("#pdf-prev").click(l),$("#pdf-next").click(h),p.getDocument(n).promise.then(function(t){e=t,$("#pdf-page-count").text(e.numPages),s(r)},function(t){console.error(t)})});case 16:case"end":return t.stop()}},t,this)}))).apply(this,arguments)}d.d(n,"initPage",function(){return s}),d.d(n,"showModalMessage",function(){return f}),d.d(n,"showModalConfirm",function(){return l}),d.d(n,"highlightCode",function(){return w}),d.d(n,"renderMarkdown",function(){return _}),d.d(n,"renderTxt",function(){return S}),d.d(n,"renderPdf",function(){return k})},46:function(t,n,e){var r=e(3),o=e(1),i="__core-js_shared__",c=o[i]||(o[i]={});(t.exports=function(t,n){return c[t]||(c[t]=void 0!==n?n:{})})("versions",[]).push({version:r.version,mode:e(33)?"pure":"global",copyright:"© 2018 Denis Pushkarev (zloirock.ru)"})},47:function(t,n){var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},48:function(t,n){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},49:function(t,n,e){"use strict";var o=e(22);function r(t){var e,r;this.promise=new t(function(t,n){if(void 0!==e||void 0!==r)throw TypeError("Bad Promise constructor");e=t,r=n}),this.resolve=o(e),this.reject=o(r)}t.exports.f=function(t){return new r(t)}},5:function(t,n,e){var r=e(13);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},51:function(t,n,e){var r=e(31),o=Math.min;t.exports=function(t){return 0e;)n.push(arguments[e++]);return m[++g]=function(){a("function"==typeof t?t:Function(t),n)},r(g),g},p=function(t){delete m[t]},"process"==e(24)(l)?r=function(t){l.nextTick(c(w,t,1))}:v&&v.now?r=function(t){v.now(c(w,t,1))}:d?(i=(o=new d).port2,o.port1.onmessage=b,r=c(i.postMessage,i,1)):f.addEventListener&&"function"==typeof postMessage&&!f.importScripts?(r=function(t){f.postMessage(t+"","*")},f.addEventListener("message",b,!1)):r=y in s("script")?function(t){u.appendChild(s("script"))[y]=function(){u.removeChild(this),w.call(t)}}:function(t){setTimeout(c(w,t,1),0)}),t.exports={set:h,clear:p}},69:function(t,n){t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},70:function(t,n,e){var r=e(5),o=e(13),i=e(49);t.exports=function(t,n){if(r(t),o(n)&&n.constructor===t)return n;var e=i.f(t);return(0,e.resolve)(n),e.promise}},73:function(t,n,e){var r=e(3),o=r.JSON||(r.JSON={stringify:JSON.stringify});t.exports=function(t){return o.stringify.apply(o,arguments)}},74:function(t,n,e){e(75),t.exports=e(3).parseInt},75:function(t,n,e){var r=e(10),o=e(76);r(r.G+r.F*(parseInt!=o),{parseInt:o})},76:function(t,n,e){var r=e(1).parseInt,o=e(77).trim,i=e(44),c=/^[-+]?0[xX]/;t.exports=8!==r(i+"08")||22!==r(i+"0x16")?function(t,n){var e=o(String(t),3);return r(e,n>>>0||(c.test(e)?16:10))}:r},77:function(t,n,e){var c=e(10),r=e(19),a=e(23),u=e(44),o="["+u+"]",i=RegExp("^"+o+o+"*"),s=RegExp(o+o+"*$"),f=function(t,n,e){var r={},o=a(function(){return!!u[t]()||"​…"!="​…"[t]()}),i=r[t]=o?n(l):u[t];e&&(r[e]=i),c(c.P+c.F*o,"String",r)},l=f.trim=function(t,n){return t=String(r(t)),1&n&&(t=t.replace(i,"")),2&n&&(t=t.replace(s,"")),t};t.exports=f},78:function(t,n,e){e(79);for(var r=e(1),o=e(9),i=e(16),c=e(2)("toStringTag"),a="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),u=0;u=t.length?(this._t=void 0,o(1)):o(0,"keys"==n?e:"values"==n?t[e]:[e,t[e]])},"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},80:function(t,n){t.exports=function(){}},81:function(t,n){t.exports=function(t,n){return{value:n,done:!!t}}},82:function(t,n,e){var r=e(24);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},83:function(t,n,e){t.exports=e(9)},84:function(t,n,e){"use strict";var r=e(85),o=e(36),i=e(34),c={};e(9)(c,e(2)("iterator"),function(){return this}),t.exports=function(t,n,e){t.prototype=r(c,{next:o(1,e)}),i(t,n+" Iterator")}},85:function(t,n,r){var o=r(5),i=r(86),c=r(48),a=r(32)("IE_PROTO"),u=function(){},s="prototype",f=function(){var t,n=r(29)("iframe"),e=c.length;for(n.style.display="none",r(52).appendChild(n),n.src="javascript:",(t=n.contentWindow.document).open(),t.write("