Merge commit '8ade071ab7e41458c14ce6cc79dd04842523e882' into update-frontend-boilerplate-26-02

This commit is contained in:
Ulf Gebhardt 2024-02-26 03:35:05 +01:00
commit fd7f7e688f
Signed by: ulfgebhardt
GPG Key ID: DA6B843E748679C9
5 changed files with 6108 additions and 10744 deletions

View File

@ -0,0 +1,46 @@
name: "frontend:test:build test docker"
on: push
jobs:
# only (but most important) job from this workflow required for pull requests
# check results serve as run conditions for all other jobs here
files-changed:
name: Detect File Changes - frontend-test-build-docker
runs-on: ubuntu-latest
outputs:
changes: ${{ steps.changes.outputs.frontend-test-build-docker }}
steps:
- uses: actions/checkout@v4
- name: Check for frontend file changes
uses: dorny/paths-filter@v3.0.1
id: changes
with:
token: ${{ github.token }}
filters: .github/file-filters.yml
list-files: shell
build-production:
if: needs.files-changed.outputs.changes == 'true'
name: Build Docker Production - Frontend
needs: files-changed
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Frontend | Build Docker Production
run: docker compose -f docker-compose.yml build
build-development:
if: needs.files-changed.outputs.changes == 'true'
name: Build Docker Development - Frontend
needs: files-changed
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Frontend | Build Docker Development
run: docker compose build

View File

@ -1,3 +1,5 @@
import { defaultTheme } from '@vuepress/theme-default'
import { viteBundler } from '@vuepress/bundler-vite'
import { defineUserConfig } from 'vuepress' import { defineUserConfig } from 'vuepress'
export default defineUserConfig({ export default defineUserConfig({
@ -6,4 +8,6 @@ export default defineUserConfig({
dest: 'build/docs', dest: 'build/docs',
base: process.env.VUEPRESS_BASE ? `/${process.env.VUEPRESS_BASE}/` : '/', base: process.env.VUEPRESS_BASE ? `/${process.env.VUEPRESS_BASE}/` : '/',
pagePatterns: ['**/*.md', '**/LICENSE', '!.vuepress', '!node_modules'], pagePatterns: ['**/*.md', '**/LICENSE', '!.vuepress', '!node_modules'],
bundler: viteBundler({}),
theme: defaultTheme({}),
}) })

View File

@ -87,7 +87,7 @@ FROM base as build
# Copy everything # Copy everything
COPY . . COPY . .
# npm install # npm install
RUN npm install --frozen-lockfile --non-interactive RUN npm install --include=dev --frozen-lockfile --non-interactive
# npm build # npm build
RUN npm run build RUN npm run build

16753
frontend/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -65,44 +65,45 @@
"@mdi/font": "^7.4.47", "@mdi/font": "^7.4.47",
"@types/compression": "^1.7.5", "@types/compression": "^1.7.5",
"@types/express": "^4.17.21", "@types/express": "^4.17.21",
"@types/node": "^20.11.19", "@types/node": "^20.11.20",
"@vitejs/plugin-vue": "^5.0.4", "@vitejs/plugin-vue": "^5.0.4",
"@vue/compiler-sfc": "^3.4.19", "@vue/compiler-sfc": "^3.4.19",
"@vue/server-renderer": "3.4.19", "@vue/server-renderer": "3.4.19",
"@vuepress/theme-default": "^2.0.0-rc.17",
"compression": "^1.7.4", "compression": "^1.7.4",
"cross-env": "^7.0.3", "cross-env": "^7.0.3",
"express": "^4.18.2", "express": "^4.18.2",
"pinia": "^2.1.7", "pinia": "^2.1.7",
"pinia-plugin-persistedstate": "^3.2.1", "pinia-plugin-persistedstate": "^3.2.1",
"sass": "^1.71.0", "sass": "^1.71.1",
"sass-loader": "^14.1.0", "sass-loader": "^14.1.1",
"sirv": "^2.0.4", "sirv": "^2.0.4",
"ts-node": "^10.9.2", "ts-node": "^10.9.2",
"typescript": "^5.3.3", "typescript": "^5.3.3",
"vike": "^0.4.162", "vike": "^0.4.163",
"vite": "^5.1.3", "vite": "^5.1.4",
"vue": "3.4.19", "vue": "3.4.19",
"vue-i18n": "^9.9.1", "vue-i18n": "^9.9.1",
"vuetify": "^3.5.4" "vuetify": "^3.5.6"
}, },
"devDependencies": { "devDependencies": {
"@eslint-community/eslint-plugin-eslint-comments": "^4.1.0", "@eslint-community/eslint-plugin-eslint-comments": "^4.1.0",
"@intlify/eslint-plugin-vue-i18n": "^2.0.0", "@intlify/eslint-plugin-vue-i18n": "^2.0.0",
"@storybook/addon-essentials": "^7.6.16", "@storybook/addon-essentials": "^7.6.17",
"@storybook/addon-interactions": "^7.6.16", "@storybook/addon-interactions": "^7.6.17",
"@storybook/addon-links": "^7.6.16", "@storybook/addon-links": "^7.6.17",
"@storybook/blocks": "^7.6.16", "@storybook/blocks": "^7.6.17",
"@storybook/test-runner": "^0.16.0", "@storybook/test-runner": "^0.16.0",
"@storybook/testing-library": "^0.2.2", "@storybook/testing-library": "^0.2.2",
"@storybook/vue3": "^7.6.16", "@storybook/vue3": "^7.6.17",
"@storybook/vue3-vite": "^7.6.16", "@storybook/vue3-vite": "^7.6.17",
"@typescript-eslint/eslint-plugin": "^7.0.1", "@typescript-eslint/eslint-plugin": "^7.0.2",
"@typescript-eslint/parser": "^7.0.1", "@typescript-eslint/parser": "^7.0.2",
"@vitest/coverage-v8": "^1.3.0", "@vitest/coverage-v8": "^1.3.1",
"@vue/test-utils": "^2.4.4", "@vue/test-utils": "^2.4.4",
"@vuepress/bundler-vite": "^2.0.0-rc.7", "@vuepress/bundler-vite": "^2.0.0-rc.8",
"chromatic": "^10.9.6", "chromatic": "^11.0.0",
"eslint": "^8.56.0", "eslint": "^8.57.0",
"eslint-config-prettier": "^9.1.0", "eslint-config-prettier": "^9.1.0",
"eslint-config-standard": "^17.1.0", "eslint-config-standard": "^17.1.0",
"eslint-import-resolver-typescript": "^3.6.1", "eslint-import-resolver-typescript": "^3.6.1",
@ -113,10 +114,10 @@
"eslint-plugin-security": "^2.1.1", "eslint-plugin-security": "^2.1.1",
"eslint-plugin-storybook": "^0.8.0", "eslint-plugin-storybook": "^0.8.0",
"eslint-plugin-vitest": "^0.3.22", "eslint-plugin-vitest": "^0.3.22",
"eslint-plugin-vue": "^9.21.1", "eslint-plugin-vue": "^9.22.0",
"eslint-plugin-vuetify": "^2.1.1", "eslint-plugin-vuetify": "^2.1.1",
"eslint-plugin-yml": "^1.12.2", "eslint-plugin-yml": "^1.12.2",
"happy-dom": "^13.3.8", "happy-dom": "^13.5.0",
"prettier": "^3.2.5", "prettier": "^3.2.5",
"react": "^18.2.0", "react": "^18.2.0",
"react-dom": "^18.2.0", "react-dom": "^18.2.0",
@ -125,7 +126,7 @@
"remark-preset-lint-consistent": "^5.1.2", "remark-preset-lint-consistent": "^5.1.2",
"remark-preset-lint-markdown-style-guide": "^5.1.3", "remark-preset-lint-markdown-style-guide": "^5.1.3",
"remark-preset-lint-recommended": "^6.1.3", "remark-preset-lint-recommended": "^6.1.3",
"storybook": "^7.6.16", "storybook": "^7.6.17",
"stylelint": "^16.2.1", "stylelint": "^16.2.1",
"stylelint-config-css-modules": "^4.4.0", "stylelint-config-css-modules": "^4.4.0",
"stylelint-config-recess-order": "^4.6.0", "stylelint-config-recess-order": "^4.6.0",
@ -136,9 +137,9 @@
"vite-plugin-checker": "^0.6.4", "vite-plugin-checker": "^0.6.4",
"vite-plugin-compression": "^0.5.1", "vite-plugin-compression": "^0.5.1",
"vite-plugin-vuetify": "^2.0.1", "vite-plugin-vuetify": "^2.0.1",
"vitest": "^1.3.0", "vitest": "^1.3.1",
"vue-tsc": "^1.8.27", "vue-tsc": "^1.8.27",
"vuepress": "^2.0.0-rc.0" "vuepress": "^2.0.0-rc.8"
}, },
"imports": { "imports": {
"#components/*": "./src/components/*", "#components/*": "./src/components/*",