Skip to content
This repository was archived by the owner on Feb 28, 2025. It is now read-only.

Commit d302d0d

Browse files
N21-2014 Setup new SHD client (#1)
1 parent 247c27e commit d302d0d

File tree

457 files changed

+53954
-2
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

457 files changed

+53954
-2
lines changed

.dockerignore

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
.github
2+
.vscode
3+
deploy
4+
node_modules
5+
Dockerfile.*
6+
7+
**/*.unit.ts
8+
**/*.unit.js
9+
10+
public/runtime.config.json

.eslintignore

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
.vscode
2+
/node_modules/**
3+
dist
4+
/src/serverApi/**

.eslintrc.js

+102
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
module.exports = {
2+
root: true,
3+
env: {
4+
node: true,
5+
},
6+
extends: [
7+
"plugin:vue/vue3-essential",
8+
"eslint:recommended",
9+
"@vue/typescript/recommended",
10+
"plugin:prettier/recommended",
11+
],
12+
parserOptions: {
13+
ecmaVersion: 2020,
14+
},
15+
rules: {
16+
"@typescript-eslint/no-explicit-any": "warn",
17+
"no-console": process.env.NODE_ENV === "production" ? "off" : "warn",
18+
"no-debugger": process.env.NODE_ENV === "production" ? "off" : "warn",
19+
"no-useless-escape": "error",
20+
"no-irregular-whitespace": "error",
21+
"no-undef": "warn",
22+
"no-prototype-builtins": "error",
23+
"no-empty": "error",
24+
"no-var": "error",
25+
"prefer-const": "error",
26+
"prettier/prettier": "error",
27+
"@typescript-eslint/no-empty-function": "error",
28+
"@typescript-eslint/ban-ts-comment": "error",
29+
"@typescript-eslint/no-inferrable-types": "error",
30+
"@typescript-eslint/ban-types": "error",
31+
"vue/no-v-text-v-html-on-component": "error",
32+
"vue/no-v-html": "error",
33+
"vue/html-self-closing": [
34+
"error",
35+
{
36+
html: {
37+
void: "always",
38+
},
39+
},
40+
],
41+
"vue/no-setup-props-reactivity-loss": "error",
42+
"vue/no-useless-template-attributes": "error",
43+
"vue/no-mutating-props": "error",
44+
// TODO - make a final decision about this rule
45+
"vue/multi-word-component-names": "off",
46+
"@typescript-eslint/no-restricted-imports": [
47+
"warn",
48+
{
49+
patterns: [
50+
{
51+
group: [
52+
"@data/*/**/*",
53+
"@feature/*/**/*",
54+
"@page/*/**/*",
55+
"@ui/*/**/*",
56+
"@util/*/**/*",
57+
],
58+
message: "Do not deep import into a module",
59+
},
60+
{
61+
group: ["@/modules/data/*", "*/../data/*", "../**/data/*"],
62+
message:
63+
"Data-Modules have to be imported using the pattern '@data/<name>'",
64+
},
65+
{
66+
group: ["@/modules/feature/*", "*/../feature/*", "../**/feature/*"],
67+
message:
68+
"Feature-Modules have to be imported using the pattern '@feature/<name>'",
69+
},
70+
{
71+
group: ["@/modules/page/*", "*/../page/*", "../**/page/*/*"],
72+
message:
73+
"Page-Modules have to be imported using the pattern '@page/<name>'",
74+
},
75+
{
76+
group: ["@/modules/ui/*", "*/../ui/*", "../**/ui/*/*"],
77+
message:
78+
"Ui-Modules have to be imported using the pattern '@ui/<name>'",
79+
},
80+
{
81+
group: ["@/modules/util/*", "*/../util/*", "../**/util/*/*"],
82+
message:
83+
"Util-Modules have to be imported using the pattern '@util/<name>'",
84+
},
85+
],
86+
},
87+
],
88+
},
89+
overrides: [
90+
{
91+
files: ["**/*.unit.{j,t}s?(x)"],
92+
env: {
93+
jest: true,
94+
},
95+
globals: {
96+
mount: false,
97+
shallowMount: false,
98+
fail: false,
99+
},
100+
},
101+
],
102+
};

.gitattributes

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Fix end-of-lines in Git versions older than 2.10
2+
# https://github.com/git/git/blob/master/Documentation/RelNotes/2.10.0.txt#L248
3+
* text=auto eol=lf

.github/dependabot.yml

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# To get started with Dependabot version updates, you'll need to specify which
2+
# package ecosystems to update and where the package manifests are located.
3+
# Please see the documentation for all configuration options:
4+
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5+
6+
version: 2
7+
updates:
8+
- package-ecosystem: "npm"
9+
directory: "/" # Location of package manifests
10+
open-pull-requests-limit: 5
11+
versioning-strategy: "increase"
12+
schedule:
13+
interval: "weekly"
14+

.github/mergeable.yml

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
version: 2
2+
mergeable:
3+
- when: pull_request.*
4+
validate:
5+
- do: label
6+
must_exclude:
7+
regex: "(WIP|is blocked|do-not-merge)"
8+
- do: description
9+
no_empty:
10+
enabled: true
11+
must_exclude:
12+
regex: "\\[?\\s\\]"
13+
message: "All checkboxes from PR description must be checked."
14+
- when: schedule.repository
15+
validate:
16+
- do: stale
17+
days: 20
18+
type: pull_request
19+
pass:
20+
- do: comment
21+
payload:
22+
body: This is old. Is it still relevant?

.github/pull_request_template.md

+81
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
# Short Description
2+
3+
<!-- Write a short explanation of what this Pull Request does -->
4+
5+
<!--
6+
This Pull-Request template helps the reviewers as well as servers as a checklist for you. Please feel out all possible sections.
7+
8+
Quality guidelines:
9+
- Code should be self-explanatory; Document code that is not self-explanatory
10+
- Code respects SOLID principles, DRY, YAGNI, KISS
11+
- Think about potential bugs this Pull Request might introduce
12+
- Keep security in mind
13+
- Write tests (Unit and Integration), including for error cases. Don't decrease coverage
14+
- Business logic should be implemented in the API; never trust the client
15+
- UI changes should be discussed & agreed with the UX-Team before staring
16+
- Boyscout rule: leave the code in a better state than you found it. Remove unnecessary lines. Listen to the linter.
17+
-->
18+
19+
## Links to Ticket and related Pull-Requests
20+
21+
<!--
22+
Base links to copy
23+
- https://ticketsystem.dbildungscloud.de/browse/BC-????
24+
- https://github.com/hpi-schul-cloud/schulcloud-server/pull/????
25+
- https://github.com/hpi-schul-cloud/end-to-end-tests/pull/????
26+
- https://github.com/hpi-schul-cloud/schulcloud-client/pull/????
27+
-->
28+
29+
## Changes
30+
31+
<!--
32+
- What will the PR change?
33+
- Why are the changes required?
34+
- Links to documentation / tickets if exists, or provide more details here.
35+
-->
36+
37+
## Data-security
38+
39+
<!--
40+
Please note here about:
41+
- any data model changes
42+
- any changes about logging of user data
43+
- any changes about permissions
44+
- user input, authentication and other user data related things
45+
If you are not sure if it is relevant, take a look at confluence or ask the data-security team.
46+
-->
47+
48+
## Deployment
49+
50+
<!--
51+
Keep in mind to changes to seed data, if changes are done by migration scripts.
52+
Changes to the infrastructure have to discussed with the devops.
53+
This information should be also in corresponding ticket, and collected in release deployment ticket.
54+
55+
This point should includes following information:
56+
- What else is required for its deployment?
57+
- Environment variables like FEATURE_XY=true
58+
- Are there any migration scripts to be run?
59+
-->
60+
61+
## New Repos, NPM packages or vendor scripts
62+
63+
<!--
64+
- Keep in mind the stability, performance, activity and author.
65+
- Describe why it is needed.
66+
-->
67+
68+
## Screenshots of UI changes
69+
70+
<!--
71+
- For UI changes, insert screenshots here.
72+
- Has it been reviewed by a UX colleague?
73+
-->
74+
75+
## Checklist before merging
76+
77+
- [ ] QA: In addition to review, the code has been manually tested (if manual testing is possible)
78+
- [ ] PO: Any deviation from requirements was agreed with Product-Owner / ticket author / support-team
79+
- [ ] DEV: Every new component is implemented having accessibility in mind (e.g. aria-label, role property)
80+
81+
> Notice: Please keep this Pull-Request as a Draft (or add WIP label), until it is ready to be reviewed

.github/workflows/clean.yml

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
name: Clean Deployment
3+
4+
on: delete
5+
6+
jobs:
7+
clean:
8+
uses: hpi-schul-cloud/dof_app_deploy/.github/workflows/clean_workflow.yml@main
9+
with:
10+
branch: ${{ github.event.ref }}
11+
secrets:
12+
token: ${{ secrets.GITHUB_TOKEN }}
13+
DEV_KUBE_CONFIG_BRB: ${{ secrets.DEV_KUBE_CONFIG_BRB }}
14+
DEV_KUBE_CONFIG_NBC: ${{ secrets.DEV_KUBE_CONFIG_NBC }}
15+
DEV_KUBE_CONFIG_THR: ${{ secrets.DEV_KUBE_CONFIG_THR }}
16+
DEV_KUBE_CONFIG_DBC: ${{ secrets.DEV_KUBE_CONFIG_DBC }}

.github/workflows/codeql-analysis.yml

+72
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# For most projects, this workflow file will not need changing; you simply need
2+
# to commit it to your repository.
3+
#
4+
# You may wish to alter this file to override the set of languages analyzed,
5+
# or to provide custom queries or build logic.
6+
#
7+
# ******** NOTE ********
8+
# We have attempted to detect the languages in your repository. Please check
9+
# the `language` matrix defined below to confirm you have the correct set of
10+
# supported CodeQL languages.
11+
#
12+
name: "CodeQL"
13+
14+
on:
15+
push:
16+
branches: [ main ]
17+
pull_request:
18+
# The branches below must be a subset of the branches above
19+
branches: [ main ]
20+
schedule:
21+
- cron: '40 21 * * 5'
22+
23+
jobs:
24+
analyze:
25+
name: Analyze
26+
runs-on: ubuntu-latest
27+
permissions:
28+
actions: read
29+
contents: read
30+
security-events: write
31+
32+
strategy:
33+
fail-fast: false
34+
matrix:
35+
language: [ 'javascript', 'typescript' ]
36+
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
37+
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
38+
39+
steps:
40+
- name: Checkout repository
41+
uses: actions/checkout@v4
42+
43+
# Initializes the CodeQL tools for scanning.
44+
- name: Initialize CodeQL
45+
uses: github/codeql-action/init@v3
46+
with:
47+
languages: ${{ matrix.language }}
48+
# If you wish to specify custom queries, you can do so here or in a config file.
49+
# By default, queries listed here will override any specified in a config file.
50+
# Prefix the list here with "+" to use these queries and those in the config file.
51+
52+
# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
53+
# queries: security-extended,security-and-quality
54+
55+
56+
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
57+
# If this step fails, then you should remove it and run the build manually (see below)
58+
- name: Autobuild
59+
uses: github/codeql-action/autobuild@v3
60+
61+
# ℹ️ Command-line programs to run using the OS shell.
62+
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
63+
64+
# If the Autobuild fails above, remove it and uncomment the following three lines.
65+
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.
66+
67+
# - run: |
68+
# echo "Run, Build Application using script"
69+
# ./location_of_script_within_repo/buildscript.sh
70+
71+
- name: Perform CodeQL Analysis
72+
uses: github/codeql-action/analyze@v3

0 commit comments

Comments
 (0)