bc0fea3310
Updates to angular 8 and updates all used components - removed wrapper class for ngx/pwa LocalStorrace - removed database lock service due to bugs - tried to work around a cycle of dependancies - changed some structure to be more close to default angular - removed legacy angular packages - removed date-picker since it was not currently used and is not compatible anymore - upgrade tinyMCE
132 lines
7.6 KiB
Markdown
132 lines
7.6 KiB
Markdown
# OpenSlides 3 Client
|
|
|
|
Prototype application for OpenSlides 3.0 (Client).
|
|
Currently under constant heavy maintenance.
|
|
|
|
## Development Info
|
|
|
|
As an Angular project, Angular CLI is highly recommended to create components and services.
|
|
See https://angular.io/guide/quickstart for details.
|
|
|
|
### Contribution Info
|
|
|
|
Please respect the code-style defined in `.editorconf` and `.pretierrc`.
|
|
|
|
Code alignment should be automatically corrected by the pre-commit hooks.
|
|
Adjust your editor to the `.editorconfig` to avoid surprises.
|
|
See https://editorconfig.org/ for details.
|
|
|
|
### Pre-Commit Hooks
|
|
|
|
Before commiting, new code will automatically be aligned to the definitions set in the
|
|
`.prettierrc`.
|
|
Furthermore, new code has to pass linting.
|
|
|
|
Our pre-commit hooks are:
|
|
`pretty-quick --staged` and `lint`
|
|
See `package.json` for details.
|
|
|
|
### Documentation Info
|
|
|
|
The documentation can be generated by running `npm run compodoc`.
|
|
A new web server will be started on http://localhost:8080
|
|
Once running, the documentation will be updated automatically.
|
|
|
|
You can run it on another port, with adding your local port after the
|
|
command. If no port specified, it will try to use 8080.
|
|
|
|
Please document new code using JSDoc tags.
|
|
See https://compodoc.app/guides/jsdoc-tags.html for details.
|
|
|
|
### Development server
|
|
|
|
Run `npm start` for a development server. Navigate to `http://localhost:4200/`.
|
|
The app will automatically reload if you change any of the source files.
|
|
|
|
A running OpenSlides (2.2 or higher) instance is expected on port 8000.
|
|
|
|
Start OpenSlides as usual using
|
|
`python manage.py start --no-browser --host 0.0.0.0`
|
|
|
|
### Translation
|
|
|
|
We are using ngx-translate for translation purposes.
|
|
Use `npm run extract` to extract strings and update elements an with translation functions.
|
|
|
|
Language files can be found in `/src/assets/i18n`.
|
|
|
|
### Used software
|
|
|
|
OpenSlides uses the following software or parts of them:
|
|
|
|
- [@angular/animations@8.0.3](https://github.com/angular/angular), License: MIT
|
|
- [@angular/cdk-experimental@8.0.1](https://github.com/angular/components), License: MIT
|
|
- [@angular/cdk@8.0.1](https://github.com/angular/components), License: MIT
|
|
- [@angular/common@8.0.3](https://github.com/angular/angular), License: MIT
|
|
- [@angular/compiler@8.0.3](https://github.com/angular/angular), License: MIT
|
|
- [@angular/core@8.0.3](https://github.com/angular/angular), License: MIT
|
|
- [@angular/forms@8.0.3](https://github.com/angular/angular), License: MIT
|
|
- [@angular/material@8.0.1](https://github.com/angular/components), License: MIT
|
|
- [@angular/platform-browser-dynamic@8.0.3](https://github.com/angular/angular), License: MIT
|
|
- [@angular/platform-browser@8.0.3](https://github.com/angular/angular), License: MIT
|
|
- [@angular/pwa@0.800.6](https://github.com/angular/angular-cli), License: MIT
|
|
- [@angular/router@8.0.3](https://github.com/angular/angular), License: MIT
|
|
- [@angular/service-worker@8.0.3](https://github.com/angular/angular), License: MIT
|
|
- [@ngx-pwa/local-storage@8.0.2](https://github.com/cyrilletuzi/angular-async-local-storage), License: MIT
|
|
- [@ngx-translate/core@11.0.1](https://github.com/ngx-translate/core), License: MIT
|
|
- [@ngx-translate/http-loader@4.0.0](https://github.com/ngx-translate/http-loader), License: MIT
|
|
- [@pebula/ngrid-material@1.0.0-alpha.26](https://github.com/shlomiassaf/ngrid), License: MIT
|
|
- [@pebula/ngrid@1.0.0-alpha.26](https://github.com/shlomiassaf/ngrid), License: MIT
|
|
- [@pebula/utils@1.0.0-alpha.3](https://github.com/shlomiassaf/ngrid), License: MIT
|
|
- [@tinymce/tinymce-angular@3.2.0](https://github.com/tinymce/tinymce-angular), License: Apache-2.0
|
|
- [acorn@6.1.1](https://github.com/acornjs/acorn), License: MIT
|
|
- [core-js@3.1.4](https://github.com/zloirock/core-js), License: MIT
|
|
- [css-element-queries@1.2.0](https://github.com/marcj/css-element-queries), License: MIT
|
|
- [exceljs@1.13.0](https://github.com/exceljs/exceljs), License: MIT
|
|
- [file-saver@2.0.2](https://github.com/eligrey/FileSaver.js), License: MIT
|
|
- [hammerjs@2.0.8](https://github.com/hammerjs/hammer.js), License: MIT
|
|
- [lz4js@0.2.0](https://github.com/Benzinga/lz4js), License: ISC
|
|
- [material-icon-font@0.1.0](https://github.com//petergng/svgFontCreator), License: ISC
|
|
- [ng2-pdf-viewer@5.3.2](git+https://vadimdez@github.com/VadimDez/ng2-pdf-viewer), License: MIT
|
|
- [ngx-file-drop@8.0.3](https://github.com/georgipeltekov/ngx-file-drop), License: MIT
|
|
- [ngx-mat-select-search@1.7.6](https://github.com/bithost-gmbh/ngx-mat-select-search), License: MIT
|
|
- [ngx-papaparse@3.0.3](https://github.com/alberthaff/ngx-papaparse), License: MIT
|
|
- [pdfmake@0.1.57](https://github.com/bpampuch/pdfmake), License: MIT
|
|
- [po2json@1.0.0-alpha](https://github.com/mikeedwards/po2json), License: GNU Library General Public License
|
|
- [rxjs@6.5.2](https://github.com/reactivex/rxjs), License: Apache-2.0
|
|
- [text-encoding@0.7.0](https://github.com/inexorabletash/text-encoding), License: (Unlicense OR Apache-2.0)
|
|
- [tinymce@5.0.9](https://github.com/tinymce/tinymce-dist), License: LGPL-2.1
|
|
- [tslib@1.10.0](https://github.com/Microsoft/tslib), License: Apache-2.0
|
|
- [uuid@3.3.2](https://github.com/kelektiv/node-uuid), License: MIT
|
|
- [zone.js@0.9.1](https://github.com/angular/zone.js), License: MIT
|
|
- [@angular-devkit/build-angular@0.800.6](https://github.com/angular/angular-cli), License: MIT
|
|
- [@angular/cli@8.0.6](https://github.com/angular/angular-cli), License: MIT
|
|
- [@angular/compiler-cli@8.0.3](https://github.com/angular/angular), License: MIT
|
|
- [@angular/language-service@8.0.3](https://github.com/angular/angular), License: MIT
|
|
- [@biesbjerg/ngx-translate-extract@2.3.4](https://github.com/biesbjerg/ngx-translate-extract), License: MIT
|
|
- [@compodoc/compodoc@1.1.9](https://github.com/compodoc/compodoc), License: MIT
|
|
- [@types/jasmine@3.3.13](https://github.com/DefinitelyTyped/DefinitelyTyped), License: MIT
|
|
- [@types/jasminewd2@2.0.6](https://github.com/DefinitelyTyped/DefinitelyTyped), License: MIT
|
|
- [@types/node@8.9.5](https://github.com/DefinitelyTyped/DefinitelyTyped), License: MIT
|
|
- [@types/yargs@13.0.0](https://github.com/DefinitelyTyped/DefinitelyTyped), License: MIT
|
|
- [codelyzer@5.1.0](https://github.com/mgechev/codelyzer), License: MIT
|
|
- [husky@2.7.0](https://github.com/typicode/husky), License: MIT
|
|
- [jasmine-core@3.4.0](https://github.com/jasmine/jasmine), License: MIT
|
|
- [jasmine-spec-reporter@4.2.1](https://github.com/bcaudan/jasmine-spec-reporter), License: Apache-2.0
|
|
- [karma-chrome-launcher@2.2.0](https://github.com/karma-runner/karma-chrome-launcher), License: MIT
|
|
- [karma-coverage-istanbul-reporter@2.0.5](https://github.com/mattlewis92/karma-coverage-istanbul-reporter), License: MIT
|
|
- [karma-jasmine-html-reporter@1.4.2](https://github.com/dfederm/karma-jasmine-html-reporter), License: MIT
|
|
- [karma-jasmine@2.0.1](https://github.com/karma-runner/karma-jasmine), License: MIT
|
|
- [karma@4.1.0](https://github.com/karma-runner/karma), License: MIT
|
|
- [npm-license-crawler@0.2.1](https://github.com/mwittig/npm-license-crawler), License: BSD-3-Clause
|
|
- [npm-run-all@4.1.5](https://github.com/mysticatea/npm-run-all), License: MIT
|
|
- [prettier@1.18.2](https://github.com/prettier/prettier), License: MIT
|
|
- [protractor@5.4.2](https://github.com/angular/protractor), License: MIT
|
|
- [resize-observer-polyfill@1.5.1](https://github.com/que-etc/resize-observer-polyfill), License: MIT
|
|
- [source-map-explorer@2.0.1](https://github.com/danvk/source-map-explorer), License: Apache-2.0
|
|
- [ts-node@7.0.1](https://github.com/TypeStrong/ts-node), License: MIT
|
|
- [tslint@5.15.0](https://github.com/palantir/tslint), License: Apache-2.0
|
|
- [tsutils@3.14.0](https://github.com/ajafff/tsutils), License: MIT
|
|
- [typescript@3.4.5](https://github.com/Microsoft/TypeScript), License: Apache-2.0
|
|
- [webpack-bundle-analyzer@3.3.2](https://github.com/webpack-contrib/webpack-bundle-analyzer), License: MIT
|