Compare commits

..

No commits in common. "20ff5d9f2ca69e8b92fe31968fb613fedca5e73e" and "58a26cfb02db6ddd24f294367325d571e6800b3a" have entirely different histories.

8 changed files with 6119 additions and 9387 deletions

View file

@ -1,4 +1,4 @@
FROM node:22-alpine AS build FROM node:18-alpine AS build
WORKDIR /app WORKDIR /app
@ -10,7 +10,7 @@ COPY . /app
RUN npm run build RUN npm run build
FROM node:22-alpine AS prod FROM node:18-alpine AS prod
WORKDIR /app WORKDIR /app

View file

@ -1,10 +1,6 @@
@import "tailwindcss"; @tailwind base;
@tailwind components;
@theme { @tailwind utilities;
--color-primary: #b22222;
--color-darkgray: #2b292a;
--color-lightgray: #e3dfdf;
}
* { * {
font-family: "ConthraxSemiBold"; font-family: "ConthraxSemiBold";

View file

@ -54,7 +54,7 @@
v-for="sublink in navbar_sub_items" v-for="sublink in navbar_sub_items"
:key="sublink.id" :key="sublink.id"
:to="`/${params?.[0]}/${sublink.URL}`" :to="`/${params?.[0]}/${sublink.URL}`"
:class="sublink.URL == params?.[1] ? 'active' : ''" :class="sublink.URL == params?.[1] && !params[2] ? 'active' : ''"
class="w-fit" class="w-fit"
> >
{{ sublink.name }} {{ sublink.name }}

View file

@ -1,5 +1,3 @@
import tailwindcss from "@tailwindcss/vite";
// https://nuxt.com/docs/api/configuration/nuxt-config // https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({ export default defineNuxtConfig({
app: { app: {
@ -20,14 +18,17 @@ export default defineNuxtConfig({
css: ["~/assets/app.css", "~/assets/ConthraxSemiBold.css"], css: ["~/assets/app.css", "~/assets/ConthraxSemiBold.css"],
postcss: {
plugins: {
tailwindcss: {},
autoprefixer: {},
},
},
compatibilityDate: "2024-04-03", compatibilityDate: "2024-04-03",
devtools: { enabled: false }, devtools: { enabled: false },
modules: ["@nuxtjs/strapi", "@nuxt/image"], modules: ["@nuxtjs/strapi", "@nuxt/image"],
vite: {
plugins: [tailwindcss()],
},
strapi: { strapi: {
url: process.env.PUBLIC_STRAPI_URL, url: process.env.PUBLIC_STRAPI_URL,
prefix: "/api", prefix: "/api",

15409
package-lock.json generated

File diff suppressed because it is too large Load diff

View file

@ -1,8 +1,6 @@
{ {
"name": "ff-webpage-landing", "name": "nuxt-app",
"version": "1.2.2",
"private": true, "private": true,
"description": "Feuerwehr/Verein Webseite",
"type": "module", "type": "module",
"scripts": { "scripts": {
"build": "nuxt build", "build": "nuxt build",
@ -14,12 +12,14 @@
"dependencies": { "dependencies": {
"@nuxt/image": "^1.8.1", "@nuxt/image": "^1.8.1",
"@nuxtjs/strapi": "^2.0.0", "@nuxtjs/strapi": "^2.0.0",
"@tailwindcss/vite": "^4.1.4", "nuxt": "^3.13.2",
"nuxt": "^3.16.2",
"vue": "latest", "vue": "latest",
"vue-router": "latest" "vue-router": "latest"
}, },
"devDependencies": { "devDependencies": {
"tailwindcss": "^4.1.4" "autoprefixer": "^10.4.20",
} "postcss": "^8.4.47",
"tailwindcss": "^3.4.14"
},
"version": "1.2.2"
} }

View file

@ -1,5 +1,4 @@
<template> <template>
{{ collectionDetail }}
<NuxtLayout name="default"> <NuxtLayout name="default">
<NotFound v-if="notFound" /> <NotFound v-if="notFound" />
<ContentBuilder v-else-if="showContentBuilder" :hero="page?.hero" :content="page?.content" /> <ContentBuilder v-else-if="showContentBuilder" :hero="page?.hero" :content="page?.content" />
@ -49,7 +48,7 @@ const { data: pages } = await useAsyncData("pages", () =>
}, },
}, },
filters: { filters: {
...(active_page_id.value == "" ? { slug: params.join("_"), ref_only_access: false } : {}), ...(active_page_id.value == "" ? { slug: params[0], ref_only_access: true } : {}),
}, },
}) })
); );
@ -58,11 +57,11 @@ const page = computed(() => {
}); });
let detail = ref<Article | Operation | Event | Vehicle | undefined>(undefined); let detail = ref<Article | Operation | Event | Vehicle | undefined>(undefined);
const collectionDetail = computed(() => { const searchDetail = computed(() => {
if (!active_sub_item.value) return params[1]; if (!active_sub_item.value) return params[1];
return params[2]; return params[2];
}); });
if (collectionDetail.value) { if (searchDetail.value) {
let collectionOfDetail = [ let collectionOfDetail = [
...new Set( ...new Set(
page.value?.content page.value?.content
@ -89,12 +88,12 @@ if (collectionDetail.value) {
} }
const notFound = computed(() => { const notFound = computed(() => {
if (collectionDetail.value && detail.value) return !detail.value; if (searchDetail.value) return !detail.value;
else return active_page_id.value == "" && !page.value?.content && !page.value?.hero; else return active_page_id.value == "" && !page.value?.content && !page.value?.hero;
}); });
const showContentBuilder = computed(() => { const showContentBuilder = computed(() => {
if (collectionDetail.value && detail.value) return !detail.value; if (searchDetail.value) return !detail.value;
else return !!page.value?.content || !!page.value?.hero; else return !!page.value?.content || !!page.value?.hero;
}); });
</script> </script>

21
tailwind.config.js Normal file
View file

@ -0,0 +1,21 @@
/** @type {import('tailwindcss').Config} */
export default {
content: [
"./components/**/*.{js,vue,ts}",
"./layouts/**/*.vue",
"./pages/**/*.vue",
"./plugins/**/*.{js,ts}",
"./app.vue",
"./error.vue",
],
theme: {
extend: {
colors: {
primary: "#B22222",
darkgray: "#2B292A",
lightgray: "#E3DFDF",
},
},
},
plugins: [],
};