Add registration page, fix auth paths, and improve navigation

This commit is contained in:
Torsten Schulz (local)
2025-10-21 11:31:43 +02:00
parent 2b249577a7
commit f058516a3d
86 changed files with 2914 additions and 531 deletions

View File

@@ -0,0 +1,456 @@
import { z as executeAsync, D as hash } from '../nitro/nitro.mjs';
import { d as defineNuxtRouteMiddleware, n as navigateTo, f as fetchDefaults, a as useNuxtApp, b as asyncDataDefaults, c as createError } from './server.mjs';
import { computed, toValue, reactive, watch, getCurrentInstance, onServerPrefetch, ref, shallowRef, toRef, nextTick, unref, defineComponent, createElementBlock, provide, cloneVNode, h } from 'vue';
import { isPlainObject } from '@vue/shared';
import { debounce } from 'perfect-debounce';
import 'node:http';
import 'node:https';
import 'node:events';
import 'node:buffer';
import 'node:fs';
import 'node:path';
import 'node:crypto';
import 'node:url';
import '../routes/renderer.mjs';
import 'vue-bundle-renderer/runtime';
import 'vue/server-renderer';
import 'unhead/server';
import 'devalue';
import 'unhead/utils';
import 'unhead/plugins';
import 'vue-router';
import 'lucide-vue-next';
function useRequestEvent(nuxtApp) {
var _a;
nuxtApp || (nuxtApp = useNuxtApp());
return (_a = nuxtApp.ssrContext) == null ? void 0 : _a.event;
}
function useRequestFetch() {
var _a;
return ((_a = useRequestEvent()) == null ? void 0 : _a.$fetch) || globalThis.$fetch;
}
defineComponent({
name: "ServerPlaceholder",
render() {
return createElementBlock("div");
}
});
const clientOnlySymbol = Symbol.for("nuxt:client-only");
defineComponent({
name: "ClientOnly",
inheritAttrs: false,
props: ["fallback", "placeholder", "placeholderTag", "fallbackTag"],
...false,
setup(props, { slots, attrs }) {
const mounted = shallowRef(false);
const vm = getCurrentInstance();
if (vm) {
vm._nuxtClientOnly = true;
}
provide(clientOnlySymbol, true);
return () => {
var _a;
if (mounted.value) {
const vnodes = (_a = slots.default) == null ? void 0 : _a.call(slots);
if (vnodes && vnodes.length === 1) {
return [cloneVNode(vnodes[0], attrs)];
}
return vnodes;
}
const slot = slots.fallback || slots.placeholder;
if (slot) {
return h(slot);
}
const fallbackStr = props.fallback || props.placeholder || "";
const fallbackTag = props.fallbackTag || props.placeholderTag || "span";
return createElementBlock(fallbackTag, attrs, fallbackStr);
};
}
});
const isDefer = (dedupe) => dedupe === "defer" || dedupe === false;
function useAsyncData(...args) {
var _a, _b, _c, _d, _e, _f, _g;
const autoKey = typeof args[args.length - 1] === "string" ? args.pop() : void 0;
if (_isAutoKeyNeeded(args[0], args[1])) {
args.unshift(autoKey);
}
let [_key, _handler, options = {}] = args;
const key = computed(() => toValue(_key));
if (typeof key.value !== "string") {
throw new TypeError("[nuxt] [useAsyncData] key must be a string.");
}
if (typeof _handler !== "function") {
throw new TypeError("[nuxt] [useAsyncData] handler must be a function.");
}
const nuxtApp = useNuxtApp();
(_a = options.server) != null ? _a : options.server = true;
(_b = options.default) != null ? _b : options.default = getDefault;
(_c = options.getCachedData) != null ? _c : options.getCachedData = getDefaultCachedData;
(_d = options.lazy) != null ? _d : options.lazy = false;
(_e = options.immediate) != null ? _e : options.immediate = true;
(_f = options.deep) != null ? _f : options.deep = asyncDataDefaults.deep;
(_g = options.dedupe) != null ? _g : options.dedupe = "cancel";
options._functionName || "useAsyncData";
nuxtApp._asyncData[key.value];
function createInitialFetch() {
var _a2;
const initialFetchOptions = { cause: "initial", dedupe: options.dedupe };
if (!((_a2 = nuxtApp._asyncData[key.value]) == null ? void 0 : _a2._init)) {
initialFetchOptions.cachedData = options.getCachedData(key.value, nuxtApp, { cause: "initial" });
nuxtApp._asyncData[key.value] = createAsyncData(nuxtApp, key.value, _handler, options, initialFetchOptions.cachedData);
}
return () => nuxtApp._asyncData[key.value].execute(initialFetchOptions);
}
const initialFetch = createInitialFetch();
const asyncData = nuxtApp._asyncData[key.value];
asyncData._deps++;
const fetchOnServer = options.server !== false && nuxtApp.payload.serverRendered;
if (fetchOnServer && options.immediate) {
const promise = initialFetch();
if (getCurrentInstance()) {
onServerPrefetch(() => promise);
} else {
nuxtApp.hook("app:created", async () => {
await promise;
});
}
}
const asyncReturn = {
data: writableComputedRef(() => {
var _a2;
return (_a2 = nuxtApp._asyncData[key.value]) == null ? void 0 : _a2.data;
}),
pending: writableComputedRef(() => {
var _a2;
return (_a2 = nuxtApp._asyncData[key.value]) == null ? void 0 : _a2.pending;
}),
status: writableComputedRef(() => {
var _a2;
return (_a2 = nuxtApp._asyncData[key.value]) == null ? void 0 : _a2.status;
}),
error: writableComputedRef(() => {
var _a2;
return (_a2 = nuxtApp._asyncData[key.value]) == null ? void 0 : _a2.error;
}),
refresh: (...args2) => {
var _a2;
if (!((_a2 = nuxtApp._asyncData[key.value]) == null ? void 0 : _a2._init)) {
const initialFetch2 = createInitialFetch();
return initialFetch2();
}
return nuxtApp._asyncData[key.value].execute(...args2);
},
execute: (...args2) => asyncReturn.refresh(...args2),
clear: () => clearNuxtDataByKey(nuxtApp, key.value)
};
const asyncDataPromise = Promise.resolve(nuxtApp._asyncDataPromises[key.value]).then(() => asyncReturn);
Object.assign(asyncDataPromise, asyncReturn);
return asyncDataPromise;
}
function writableComputedRef(getter) {
return computed({
get() {
var _a;
return (_a = getter()) == null ? void 0 : _a.value;
},
set(value) {
const ref2 = getter();
if (ref2) {
ref2.value = value;
}
}
});
}
function _isAutoKeyNeeded(keyOrFetcher, fetcher) {
if (typeof keyOrFetcher === "string") {
return false;
}
if (typeof keyOrFetcher === "object" && keyOrFetcher !== null) {
return false;
}
if (typeof keyOrFetcher === "function" && typeof fetcher === "function") {
return false;
}
return true;
}
function clearNuxtDataByKey(nuxtApp, key) {
if (key in nuxtApp.payload.data) {
nuxtApp.payload.data[key] = void 0;
}
if (key in nuxtApp.payload._errors) {
nuxtApp.payload._errors[key] = asyncDataDefaults.errorValue;
}
if (nuxtApp._asyncData[key]) {
nuxtApp._asyncData[key].data.value = void 0;
nuxtApp._asyncData[key].error.value = asyncDataDefaults.errorValue;
{
nuxtApp._asyncData[key].pending.value = false;
}
nuxtApp._asyncData[key].status.value = "idle";
}
if (key in nuxtApp._asyncDataPromises) {
if (nuxtApp._asyncDataPromises[key]) {
nuxtApp._asyncDataPromises[key].cancelled = true;
}
nuxtApp._asyncDataPromises[key] = void 0;
}
}
function pick(obj, keys) {
const newObj = {};
for (const key of keys) {
newObj[key] = obj[key];
}
return newObj;
}
function createAsyncData(nuxtApp, key, _handler, options, initialCachedData) {
var _a, _b;
(_b = (_a = nuxtApp.payload._errors)[key]) != null ? _b : _a[key] = asyncDataDefaults.errorValue;
const hasCustomGetCachedData = options.getCachedData !== getDefaultCachedData;
const handler = _handler ;
const _ref = options.deep ? ref : shallowRef;
const hasCachedData = initialCachedData != null;
const unsubRefreshAsyncData = nuxtApp.hook("app:data:refresh", async (keys) => {
if (!keys || keys.includes(key)) {
await asyncData.execute({ cause: "refresh:hook" });
}
});
const asyncData = {
data: _ref(hasCachedData ? initialCachedData : options.default()),
pending: shallowRef(!hasCachedData),
error: toRef(nuxtApp.payload._errors, key),
status: shallowRef("idle"),
execute: (...args) => {
var _a2, _b2;
const [_opts, newValue = void 0] = args;
const opts = _opts && newValue === void 0 && typeof _opts === "object" ? _opts : {};
if (nuxtApp._asyncDataPromises[key]) {
if (isDefer((_a2 = opts.dedupe) != null ? _a2 : options.dedupe)) {
return nuxtApp._asyncDataPromises[key];
}
nuxtApp._asyncDataPromises[key].cancelled = true;
}
if (opts.cause === "initial" || nuxtApp.isHydrating) {
const cachedData = "cachedData" in opts ? opts.cachedData : options.getCachedData(key, nuxtApp, { cause: (_b2 = opts.cause) != null ? _b2 : "refresh:manual" });
if (cachedData != null) {
nuxtApp.payload.data[key] = asyncData.data.value = cachedData;
asyncData.error.value = asyncDataDefaults.errorValue;
asyncData.status.value = "success";
return Promise.resolve(cachedData);
}
}
{
asyncData.pending.value = true;
}
asyncData.status.value = "pending";
const promise = new Promise(
(resolve, reject) => {
try {
resolve(handler(nuxtApp));
} catch (err) {
reject(err);
}
}
).then(async (_result) => {
if (promise.cancelled) {
return nuxtApp._asyncDataPromises[key];
}
let result = _result;
if (options.transform) {
result = await options.transform(_result);
}
if (options.pick) {
result = pick(result, options.pick);
}
nuxtApp.payload.data[key] = result;
asyncData.data.value = result;
asyncData.error.value = asyncDataDefaults.errorValue;
asyncData.status.value = "success";
}).catch((error) => {
if (promise.cancelled) {
return nuxtApp._asyncDataPromises[key];
}
asyncData.error.value = createError(error);
asyncData.data.value = unref(options.default());
asyncData.status.value = "error";
}).finally(() => {
if (promise.cancelled) {
return;
}
{
asyncData.pending.value = false;
}
delete nuxtApp._asyncDataPromises[key];
});
nuxtApp._asyncDataPromises[key] = promise;
return nuxtApp._asyncDataPromises[key];
},
_execute: debounce((...args) => asyncData.execute(...args), 0, { leading: true }),
_default: options.default,
_deps: 0,
_init: true,
_hash: void 0,
_off: () => {
var _a2;
unsubRefreshAsyncData();
if ((_a2 = nuxtApp._asyncData[key]) == null ? void 0 : _a2._init) {
nuxtApp._asyncData[key]._init = false;
}
if (!hasCustomGetCachedData) {
nextTick(() => {
var _a3;
if (!((_a3 = nuxtApp._asyncData[key]) == null ? void 0 : _a3._init)) {
clearNuxtDataByKey(nuxtApp, key);
asyncData.execute = () => Promise.resolve();
asyncData.data.value = asyncDataDefaults.value;
}
});
}
}
};
return asyncData;
}
const getDefault = () => asyncDataDefaults.value;
const getDefaultCachedData = (key, nuxtApp, ctx) => {
if (nuxtApp.isHydrating) {
return nuxtApp.payload.data[key];
}
if (ctx.cause !== "refresh:manual" && ctx.cause !== "refresh:hook") {
return nuxtApp.static.data[key];
}
};
function useFetch(request, arg1, arg2) {
const [opts = {}, autoKey] = [{}, arg1];
const _request = computed(() => toValue(request));
const key = computed(() => toValue(opts.key) || "$f" + hash([autoKey, typeof _request.value === "string" ? _request.value : "", ...generateOptionSegments(opts)]));
if (!opts.baseURL && typeof _request.value === "string" && (_request.value[0] === "/" && _request.value[1] === "/")) {
throw new Error('[nuxt] [useFetch] the request URL must not start with "//".');
}
const {
server,
lazy,
default: defaultFn,
transform,
pick: pick2,
watch: watchSources,
immediate,
getCachedData,
deep,
dedupe,
...fetchOptions
} = opts;
const _fetchOptions = reactive({
...fetchDefaults,
...fetchOptions,
cache: typeof opts.cache === "boolean" ? void 0 : opts.cache
});
const _asyncDataOptions = {
server,
lazy,
default: defaultFn,
transform,
pick: pick2,
immediate,
getCachedData,
deep,
dedupe,
watch: watchSources === false ? [] : [...watchSources || [], _fetchOptions]
};
if (!immediate) {
let setImmediate = function() {
_asyncDataOptions.immediate = true;
};
watch(key, setImmediate, { flush: "sync", once: true });
watch([...watchSources || [], _fetchOptions], setImmediate, { flush: "sync", once: true });
}
let controller;
const asyncData = useAsyncData(watchSources === false ? key.value : key, () => {
var _a;
(_a = controller == null ? void 0 : controller.abort) == null ? void 0 : _a.call(controller, new DOMException("Request aborted as another request to the same endpoint was initiated.", "AbortError"));
controller = typeof AbortController !== "undefined" ? new AbortController() : {};
const timeoutLength = toValue(opts.timeout);
let timeoutId;
if (timeoutLength) {
timeoutId = setTimeout(() => controller.abort(new DOMException("Request aborted due to timeout.", "AbortError")), timeoutLength);
controller.signal.onabort = () => clearTimeout(timeoutId);
}
let _$fetch = opts.$fetch || globalThis.$fetch;
if (!opts.$fetch) {
const isLocalFetch = typeof _request.value === "string" && _request.value[0] === "/" && (!toValue(opts.baseURL) || toValue(opts.baseURL)[0] === "/");
if (isLocalFetch) {
_$fetch = useRequestFetch();
}
}
return _$fetch(_request.value, { signal: controller.signal, ..._fetchOptions }).finally(() => {
clearTimeout(timeoutId);
});
}, _asyncDataOptions);
return asyncData;
}
function generateOptionSegments(opts) {
var _a;
const segments = [
((_a = toValue(opts.method)) == null ? void 0 : _a.toUpperCase()) || "GET",
toValue(opts.baseURL)
];
for (const _obj of [opts.params || opts.query]) {
const obj = toValue(_obj);
if (!obj) {
continue;
}
const unwrapped = {};
for (const [key, value] of Object.entries(obj)) {
unwrapped[toValue(key)] = toValue(value);
}
segments.push(unwrapped);
}
if (opts.body) {
const value = toValue(opts.body);
if (!value) {
segments.push(hash(value));
} else if (value instanceof ArrayBuffer) {
segments.push(hash(Object.fromEntries([...new Uint8Array(value).entries()].map(([k, v]) => [k, v.toString()]))));
} else if (value instanceof FormData) {
const obj = {};
for (const entry of value.entries()) {
const [key, val] = entry;
obj[key] = val instanceof File ? val.name : val;
}
segments.push(hash(obj));
} else if (isPlainObject(value)) {
segments.push(hash(reactive(value)));
} else {
try {
segments.push(hash(value));
} catch {
console.warn("[useFetch] Failed to hash body", value);
}
}
}
return segments;
}
const auth = defineNuxtRouteMiddleware(async (to, from) => {
let __temp, __restore;
const protectedRoutes = ["/mitgliederbereich", "/cms"];
const requiresAuth = protectedRoutes.some((route) => to.path.startsWith(route));
if (!requiresAuth) {
return;
}
try {
const { data: auth2 } = ([__temp, __restore] = executeAsync(() => useFetch("/api/auth/status", "$iafshigZRx")), __temp = await __temp, __restore(), __temp);
if (!auth2.value || !auth2.value.isLoggedIn) {
return navigateTo("/login?redirect=" + to.path);
}
if (to.path.startsWith("/cms")) {
const isAdmin = auth2.value.role === "admin" || auth2.value.role === "vorstand";
if (!isAdmin) {
return navigateTo("/mitgliederbereich");
}
}
} catch (error) {
return navigateTo("/login?redirect=" + to.path);
}
});
export { auth as default };
//# sourceMappingURL=auth-D7NaNMED.mjs.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"auth-D7NaNMED.mjs","sources":["../../../../node_modules/nuxt/dist/app/composables/ssr.js","../../../../node_modules/nuxt/dist/app/components/server-placeholder.js","../../../../node_modules/nuxt/dist/app/components/client-only.js","../../../../node_modules/nuxt/dist/app/composables/asyncData.js","../../../../node_modules/nuxt/dist/app/composables/fetch.js","../../../../middleware/auth.js"],"sourcesContent":null,"names":["_a","_b","pick","auth","__executeAsync"],"mappings":"","x_google_ignoreList":[0,1,2,3,4]}

View File

@@ -10,12 +10,12 @@ const client_manifest = {
"node_modules/nuxt/dist/app/entry.js"
]
},
"_Bhv0LDrk.js": {
"_BHFrGoXk.js": {
"resourceType": "script",
"module": true,
"prefetch": true,
"preload": true,
"file": "Bhv0LDrk.js",
"file": "BHFrGoXk.js",
"name": "v3",
"imports": [
"node_modules/nuxt/dist/app/entry.js"
@@ -43,6 +43,28 @@ const client_manifest = {
"node_modules/nuxt/dist/app/entry.js"
]
},
"_C8kQt0fa.js": {
"resourceType": "script",
"module": true,
"prefetch": true,
"preload": true,
"file": "C8kQt0fa.js",
"name": "alert-circle",
"imports": [
"node_modules/nuxt/dist/app/entry.js"
]
},
"_CUq_0rkE.js": {
"resourceType": "script",
"module": true,
"prefetch": true,
"preload": true,
"file": "CUq_0rkE.js",
"name": "loader-2",
"imports": [
"node_modules/nuxt/dist/app/entry.js"
]
},
"_CWEkTB1z.js": {
"resourceType": "script",
"module": true,
@@ -98,6 +120,17 @@ const client_manifest = {
"node_modules/nuxt/dist/app/entry.js"
]
},
"_DAACT36i.js": {
"resourceType": "script",
"module": true,
"prefetch": true,
"preload": true,
"file": "DAACT36i.js",
"name": "newspaper",
"imports": [
"node_modules/nuxt/dist/app/entry.js"
]
},
"_DaSgy0Cl.js": {
"resourceType": "script",
"module": true,
@@ -168,19 +201,32 @@ const client_manifest = {
"file": "Harheimer TC.CKfYAfp1.svg",
"src": "assets/images/logos/Harheimer TC.svg"
},
"middleware/auth.js": {
"resourceType": "script",
"module": true,
"prefetch": true,
"preload": true,
"file": "gLPgOmla.js",
"name": "auth",
"src": "middleware/auth.js",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js"
]
},
"node_modules/nuxt/dist/app/components/error-404.vue": {
"resourceType": "script",
"module": true,
"prefetch": true,
"preload": true,
"file": "CuqbzRJp.js",
"file": "CG6EwBRh.js",
"name": "error-404",
"src": "node_modules/nuxt/dist/app/components/error-404.vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_DlAUqK2U.js",
"_Bhv0LDrk.js"
"_BHFrGoXk.js"
],
"css": []
},
@@ -195,13 +241,13 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "DvQPLLks.js",
"file": "DdaR8fUb.js",
"name": "error-500",
"src": "node_modules/nuxt/dist/app/components/error-500.vue",
"isDynamicEntry": true,
"imports": [
"_DlAUqK2U.js",
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"node_modules/nuxt/dist/app/entry.js"
],
"css": []
@@ -217,11 +263,12 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "Dzvh14Kz.js",
"file": "CYBxhx9-.js",
"name": "entry",
"src": "node_modules/nuxt/dist/app/entry.js",
"isEntry": true,
"dynamicImports": [
"middleware/auth.js",
"node_modules/nuxt/dist/app/components/error-404.vue",
"node_modules/nuxt/dist/app/components/error-500.vue"
],
@@ -241,13 +288,31 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "DJ7dbBSo.js",
"file": "DjgE_sEr.js",
"name": "anlagen",
"src": "pages/anlagen.vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_Bhv0LDrk.js"
"_BHFrGoXk.js"
]
},
"pages/cms/index.vue": {
"resourceType": "script",
"module": true,
"prefetch": true,
"preload": true,
"file": "DrcpzAie.js",
"name": "index",
"src": "pages/cms/index.vue",
"isDynamicEntry": true,
"imports": [
"_BHFrGoXk.js",
"_YJHbYJtA.js",
"_DAACT36i.js",
"_BteKZQ9T.js",
"_DkeYb0_S.js",
"node_modules/nuxt/dist/app/entry.js"
]
},
"pages/galerie.vue": {
@@ -255,13 +320,13 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "BNyGYpIS.js",
"file": "HjuZPL1x.js",
"name": "galerie",
"src": "pages/galerie.vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_Bhv0LDrk.js"
"_BHFrGoXk.js"
]
},
"pages/geschichte.vue": {
@@ -269,12 +334,12 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "B-8zBTYH.js",
"file": "Bt7nK3rf.js",
"name": "geschichte",
"src": "pages/geschichte.vue",
"isDynamicEntry": true,
"imports": [
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"node_modules/nuxt/dist/app/entry.js"
]
},
@@ -283,13 +348,13 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "CH8qO4fu.js",
"file": "C_7cz6DH.js",
"name": "impressum",
"src": "pages/impressum.vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"_BteKZQ9T.js",
"_Czdc6-TI.js"
]
@@ -323,14 +388,32 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "CXsdaXH6.js",
"file": "WIFjVsoU.js",
"name": "kontakt",
"src": "pages/kontakt.vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_C5SyyWEb.js",
"_Bhv0LDrk.js"
"_C8kQt0fa.js",
"_BHFrGoXk.js"
]
},
"pages/login.vue": {
"resourceType": "script",
"module": true,
"prefetch": true,
"preload": true,
"file": "0HxIkpDh.js",
"name": "login",
"src": "pages/login.vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_BHFrGoXk.js",
"_C8kQt0fa.js",
"_DaSgy0Cl.js",
"_CUq_0rkE.js"
]
},
"pages/mannschaften/[slug].vue": {
@@ -338,13 +421,13 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "B6WBbdVo.js",
"file": "DCNxe3RA.js",
"name": "_slug_",
"src": "pages/mannschaften/[slug].vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"_jVj3QaoK.js"
]
},
@@ -353,13 +436,13 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "D3zFABjp.js",
"file": "BvMz9Jgl.js",
"name": "damen",
"src": "pages/mannschaften/damen.vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_Bhv0LDrk.js"
"_BHFrGoXk.js"
]
},
"pages/mannschaften/herren.vue": {
@@ -367,12 +450,12 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "OxTlf1ZK.js",
"file": "9Bmm8Ml1.js",
"name": "herren",
"src": "pages/mannschaften/herren.vue",
"isDynamicEntry": true,
"imports": [
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"node_modules/nuxt/dist/app/entry.js"
]
},
@@ -381,7 +464,7 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "Br56r5HY.js",
"file": "Cc_YSIsc.js",
"name": "index",
"src": "pages/mannschaften/index.vue",
"isDynamicEntry": true,
@@ -389,7 +472,7 @@ const client_manifest = {
"node_modules/nuxt/dist/app/entry.js",
"_jVj3QaoK.js",
"_DkeYb0_S.js",
"_Bhv0LDrk.js"
"_BHFrGoXk.js"
]
},
"pages/mannschaften/jugend.vue": {
@@ -397,13 +480,13 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "91SGRVOW.js",
"file": "B9EeawL0.js",
"name": "jugend",
"src": "pages/mannschaften/jugend.vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_Bhv0LDrk.js"
"_BHFrGoXk.js"
]
},
"pages/mannschaften/spielplaene.vue": {
@@ -411,23 +494,39 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "BhSG1dHk.js",
"file": "Cu9pESPT.js",
"name": "spielplaene",
"src": "pages/mannschaften/spielplaene.vue",
"isDynamicEntry": true,
"imports": [
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"_BteKZQ9T.js",
"node_modules/nuxt/dist/app/entry.js",
"_Cx4UcKGu.js"
]
},
"pages/mitgliederbereich/index.vue": {
"resourceType": "script",
"module": true,
"prefetch": true,
"preload": true,
"file": "BS-ozMaL.js",
"name": "index",
"src": "pages/mitgliederbereich/index.vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_BHFrGoXk.js",
"_DkeYb0_S.js",
"_DAACT36i.js"
]
},
"pages/mitgliedschaft.vue": {
"resourceType": "script",
"module": true,
"prefetch": true,
"preload": true,
"file": "DT67Eyw3.js",
"file": "DdCvOctW.js",
"name": "mitgliedschaft",
"src": "pages/mitgliedschaft.vue",
"isDynamicEntry": true,
@@ -438,7 +537,41 @@ const client_manifest = {
"_CWEkTB1z.js",
"_BteKZQ9T.js",
"_Czdc6-TI.js",
"_Bhv0LDrk.js"
"_BHFrGoXk.js"
]
},
"pages/passwort-vergessen.vue": {
"resourceType": "script",
"module": true,
"prefetch": true,
"preload": true,
"file": "wEYEdgGa.js",
"name": "passwort-vergessen",
"src": "pages/passwort-vergessen.vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_BHFrGoXk.js",
"_C8kQt0fa.js",
"_DaSgy0Cl.js",
"_CUq_0rkE.js"
]
},
"pages/registrieren.vue": {
"resourceType": "script",
"module": true,
"prefetch": true,
"preload": true,
"file": "CPBCerx_.js",
"name": "registrieren",
"src": "pages/registrieren.vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_BHFrGoXk.js",
"_C8kQt0fa.js",
"_DaSgy0Cl.js",
"_CUq_0rkE.js"
]
},
"pages/satzung.vue": {
@@ -446,12 +579,12 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "C9_Ca2Kh.js",
"file": "MfuAw3Pu.js",
"name": "satzung",
"src": "pages/satzung.vue",
"isDynamicEntry": true,
"imports": [
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"_BteKZQ9T.js",
"node_modules/nuxt/dist/app/entry.js"
]
@@ -461,12 +594,12 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "BMsfuDsV.js",
"file": "7Il07067.js",
"name": "spielsysteme",
"src": "pages/spielsysteme.vue",
"isDynamicEntry": true,
"imports": [
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"_DkeYb0_S.js",
"_YJHbYJtA.js",
"node_modules/nuxt/dist/app/entry.js",
@@ -480,12 +613,12 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "CxnG1kov.js",
"file": "B-j_qHre.js",
"name": "termine",
"src": "pages/termine.vue",
"isDynamicEntry": true,
"imports": [
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"_YJHbYJtA.js",
"node_modules/nuxt/dist/app/entry.js"
]
@@ -495,13 +628,13 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "BGqINamU.js",
"file": "p9tSJNbO.js",
"name": "anfaenger",
"src": "pages/training/anfaenger.vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"_DaSgy0Cl.js"
]
},
@@ -510,13 +643,13 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "BWBYU0do.js",
"file": "CxCUaO3C.js",
"name": "index",
"src": "pages/training/index.vue",
"isDynamicEntry": true,
"imports": [
"node_modules/nuxt/dist/app/entry.js",
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"_C5SyyWEb.js"
]
},
@@ -525,12 +658,12 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "NR0kh36x.js",
"file": "CnDB0aJH.js",
"name": "trainer",
"src": "pages/training/trainer.vue",
"isDynamicEntry": true,
"imports": [
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"node_modules/nuxt/dist/app/entry.js"
]
},
@@ -539,12 +672,12 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "b9abQFlW.js",
"file": "CYU0Dj4j.js",
"name": "tt-regeln",
"src": "pages/tt-regeln.vue",
"isDynamicEntry": true,
"imports": [
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"node_modules/nuxt/dist/app/entry.js",
"_BteKZQ9T.js",
"_B4mSF5Ac.js",
@@ -558,7 +691,7 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "CemKpROJ.js",
"file": "CIqfbIjz.js",
"name": "ueber-uns",
"src": "pages/ueber-uns.vue",
"isDynamicEntry": true,
@@ -566,7 +699,7 @@ const client_manifest = {
"node_modules/nuxt/dist/app/entry.js",
"_CWEkTB1z.js",
"_B4mSF5Ac.js",
"_Bhv0LDrk.js"
"_BHFrGoXk.js"
]
},
"pages/vereinsmeisterschaften.vue": {
@@ -574,12 +707,12 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "BQH-LsLF.js",
"file": "BVSdBhsj.js",
"name": "vereinsmeisterschaften",
"src": "pages/vereinsmeisterschaften.vue",
"isDynamicEntry": true,
"imports": [
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"_CrCcIvVp.js",
"node_modules/nuxt/dist/app/entry.js"
]
@@ -589,12 +722,12 @@ const client_manifest = {
"module": true,
"prefetch": true,
"preload": true,
"file": "CnKUmKR9.js",
"file": "DosETvDb.js",
"name": "vorstand",
"src": "pages/vorstand.vue",
"isDynamicEntry": true,
"imports": [
"_Bhv0LDrk.js",
"_BHFrGoXk.js",
"node_modules/nuxt/dist/app/entry.js"
]
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
{"version":3,"file":"entry-styles.C14gkgmD.mjs","sources":["../../../../.nuxt/dist/server/_nuxt/entry-styles.C14gkgmD.mjs"],"sourcesContent":null,"names":["style_0","style_1"],"mappings":";;;;AAEA,6BAAe;AACf,EAAEA,QAAO;AACT,EAAEC;AACF;;;;"}

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
{"version":3,"file":"entry-styles.CTgtYOBO.mjs","sources":["../../../../.nuxt/dist/server/_nuxt/entry-styles.CTgtYOBO.mjs"],"sourcesContent":null,"names":["style_0","style_1"],"mappings":";;;;AAEA,6BAAe;AACf,EAAEA,QAAO;AACT,EAAEC;AACF;;;;"}

View File

@@ -0,0 +1,148 @@
import { _ as __nuxt_component_0 } from './server.mjs';
import { ref, computed, mergeProps, withCtx, unref, createVNode, useSSRContext } from 'vue';
import { ssrRenderAttrs, ssrInterpolate, ssrRenderComponent } from 'vue/server-renderer';
import { Users, Newspaper, UserCog } from 'lucide-vue-next';
import { u as useHead } from './v3-BQ4jllfP.mjs';
import '../nitro/nitro.mjs';
import 'node:http';
import 'node:https';
import 'node:events';
import 'node:buffer';
import 'node:fs';
import 'node:path';
import 'node:crypto';
import 'node:url';
import '../routes/renderer.mjs';
import 'vue-bundle-renderer/runtime';
import 'unhead/server';
import 'devalue';
import 'unhead/utils';
import 'unhead/plugins';
import 'vue-router';
const _sfc_main = {
__name: "index",
__ssrInlineRender: true,
setup(__props) {
const user = ref(null);
const roleLabel = computed(() => {
var _a;
const labels = {
admin: "Administrator",
vorstand: "Vorstand",
mitglied: "Mitglied"
};
return labels[(_a = user.value) == null ? void 0 : _a.role] || "Mitglied";
});
const lastLoginFormatted = computed(() => {
var _a;
if (!((_a = user.value) == null ? void 0 : _a.lastLogin)) return "Erste Anmeldung";
return new Date(user.value.lastLogin).toLocaleString("de-DE");
});
useHead({
title: "Mitgliederbereich - Harheimer TC"
});
return (_ctx, _push, _parent, _attrs) => {
var _a;
const _component_NuxtLink = __nuxt_component_0;
_push(`<div${ssrRenderAttrs(mergeProps({ class: "min-h-full py-16 bg-gray-50" }, _attrs))}><div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"><h1 class="text-4xl sm:text-5xl font-display font-bold text-gray-900 mb-6"> Mitgliederbereich </h1><div class="w-24 h-1 bg-primary-600 mb-8"></div><div class="bg-white rounded-xl shadow-lg p-8 mb-8"><h2 class="text-2xl font-display font-bold text-gray-900 mb-4"> Willkommen, ${ssrInterpolate((_a = user.value) == null ? void 0 : _a.name)}! </h2><p class="text-gray-600 mb-4"> Sie sind als <span class="font-semibold text-primary-600">${ssrInterpolate(roleLabel.value)}</span> angemeldet. </p><p class="text-sm text-gray-500"> Letzter Login: ${ssrInterpolate(lastLoginFormatted.value)}</p></div><div class="grid md:grid-cols-2 lg:grid-cols-3 gap-6">`);
_push(ssrRenderComponent(_component_NuxtLink, {
to: "/mitgliederbereich/mitglieder",
class: "bg-white p-6 rounded-xl shadow-lg hover:shadow-xl transition-shadow border border-gray-100"
}, {
default: withCtx((_, _push2, _parent2, _scopeId) => {
if (_push2) {
_push2(`<div class="flex items-center mb-4"${_scopeId}><div class="w-12 h-12 bg-primary-100 rounded-lg flex items-center justify-center mr-4"${_scopeId}>`);
_push2(ssrRenderComponent(unref(Users), {
size: 24,
class: "text-primary-600"
}, null, _parent2, _scopeId));
_push2(`</div><h3 class="text-lg font-semibold text-gray-900"${_scopeId}>Mitgliederliste</h3></div><p class="text-gray-600 text-sm"${_scopeId}> Kontaktdaten aller Vereinsmitglieder </p>`);
} else {
return [
createVNode("div", { class: "flex items-center mb-4" }, [
createVNode("div", { class: "w-12 h-12 bg-primary-100 rounded-lg flex items-center justify-center mr-4" }, [
createVNode(unref(Users), {
size: 24,
class: "text-primary-600"
})
]),
createVNode("h3", { class: "text-lg font-semibold text-gray-900" }, "Mitgliederliste")
]),
createVNode("p", { class: "text-gray-600 text-sm" }, " Kontaktdaten aller Vereinsmitglieder ")
];
}
}),
_: 1
}, _parent));
_push(ssrRenderComponent(_component_NuxtLink, {
to: "/mitgliederbereich/news",
class: "bg-white p-6 rounded-xl shadow-lg hover:shadow-xl transition-shadow border border-gray-100"
}, {
default: withCtx((_, _push2, _parent2, _scopeId) => {
if (_push2) {
_push2(`<div class="flex items-center mb-4"${_scopeId}><div class="w-12 h-12 bg-primary-100 rounded-lg flex items-center justify-center mr-4"${_scopeId}>`);
_push2(ssrRenderComponent(unref(Newspaper), {
size: 24,
class: "text-primary-600"
}, null, _parent2, _scopeId));
_push2(`</div><h3 class="text-lg font-semibold text-gray-900"${_scopeId}>Interne News</h3></div><p class="text-gray-600 text-sm"${_scopeId}> Neuigkeiten nur f\xFCr Mitglieder </p>`);
} else {
return [
createVNode("div", { class: "flex items-center mb-4" }, [
createVNode("div", { class: "w-12 h-12 bg-primary-100 rounded-lg flex items-center justify-center mr-4" }, [
createVNode(unref(Newspaper), {
size: 24,
class: "text-primary-600"
})
]),
createVNode("h3", { class: "text-lg font-semibold text-gray-900" }, "Interne News")
]),
createVNode("p", { class: "text-gray-600 text-sm" }, " Neuigkeiten nur f\xFCr Mitglieder ")
];
}
}),
_: 1
}, _parent));
_push(ssrRenderComponent(_component_NuxtLink, {
to: "/mitgliederbereich/profil",
class: "bg-white p-6 rounded-xl shadow-lg hover:shadow-xl transition-shadow border border-gray-100"
}, {
default: withCtx((_, _push2, _parent2, _scopeId) => {
if (_push2) {
_push2(`<div class="flex items-center mb-4"${_scopeId}><div class="w-12 h-12 bg-primary-100 rounded-lg flex items-center justify-center mr-4"${_scopeId}>`);
_push2(ssrRenderComponent(unref(UserCog), {
size: 24,
class: "text-primary-600"
}, null, _parent2, _scopeId));
_push2(`</div><h3 class="text-lg font-semibold text-gray-900"${_scopeId}>Mein Profil</h3></div><p class="text-gray-600 text-sm"${_scopeId}> Profil bearbeiten und Passwort \xE4ndern </p>`);
} else {
return [
createVNode("div", { class: "flex items-center mb-4" }, [
createVNode("div", { class: "w-12 h-12 bg-primary-100 rounded-lg flex items-center justify-center mr-4" }, [
createVNode(unref(UserCog), {
size: 24,
class: "text-primary-600"
})
]),
createVNode("h3", { class: "text-lg font-semibold text-gray-900" }, "Mein Profil")
]),
createVNode("p", { class: "text-gray-600 text-sm" }, " Profil bearbeiten und Passwort \xE4ndern ")
];
}
}),
_: 1
}, _parent));
_push(`</div></div></div>`);
};
}
};
const _sfc_setup = _sfc_main.setup;
_sfc_main.setup = (props, ctx) => {
const ssrContext = useSSRContext();
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("pages/mitgliederbereich/index.vue");
return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
};
export { _sfc_main as default };
//# sourceMappingURL=index-CtmAVvb3.mjs.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"index-CtmAVvb3.mjs","sources":["../../../../pages/mitgliederbereich/index.vue"],"sourcesContent":null,"names":["_ssrRenderAttrs","_mergeProps","_ssrInterpolate","_push","_parent","_createVNode","_unref"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA2EA,IAAA,MAAM,IAAA,GAAO,IAAI,IAAI,CAAA;AAErB,IAAA,MAAM,SAAA,GAAY,SAAS,MAAM;;AAC/B,MAAA,MAAM,MAAA,GAAS;AAAA,QACb,KAAA,EAAO,eAAA;AAAA,QACP,QAAA,EAAU,UAAA;AAAA,QACV,QAAA,EAAU;AAAA,OACd;AACE,MAAA,OAAO,MAAA,CAAA,CAAO,EAAA,GAAA,IAAA,CAAK,KAAA,KAAL,IAAA,GAAA,MAAA,GAAA,EAAA,CAAY,IAAI,CAAA,IAAK,UAAA;AAAA,IACrC,CAAC,CAAA;AAED,IAAA,MAAM,kBAAA,GAAqB,SAAS,MAAM;;AACxC,MAAA,IAAI,EAAA,CAAC,EAAA,GAAA,IAAA,CAAK,KAAA,KAAL,IAAA,GAAA,MAAA,GAAA,EAAA,CAAY,YAAW,OAAO,iBAAA;AACnC,MAAA,OAAO,IAAI,IAAA,CAAK,IAAA,CAAK,MAAM,SAAS,CAAA,CAAE,eAAe,OAAO,CAAA;AAAA,IAC9D,CAAC,CAAA;AAiBD,IAAA,OAAA,CAAQ;AAAA,MACN,KAAA,EAAO;AAAA,KACR,CAAA;;;;AA3GMA,MAAAA,KAAAA,CAAAA,CAAAA,IAAAA,EAAAA,cAAAA,CAAAC,UAAAA,CAAA,EAAA,KAAA,EAAM,6BAAA,EAA6B,EAAA,MAAA,CAAA,CAAA,CAAA,wUAAA,EASjBC,cAAAA,CAAAA,CAAA,EAAA,GAAA,IAAA,CAAA,KAAA,KAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAM,IAAI,CAAA,CAAA,gGAAA,EAAA,cAAA,CAGoC,SAAA,CAAA,KAAS,CAAA,CAAA,yEAAA,EAAA,cAAA,CAGpD,kBAAA,CAAA,KAAkB,CAAA,CAAA,gEAAA,CAAA,CAAA;;QAOpC,EAAA,EAAG,+BAAA;AAAA,QACH,KAAA,EAAM;AAAA,OAAA,EAAA;AAAA,yBAFR,CAaW,CAAA,EAAAC,MAAAA,EAAAC,UAAA,QAAA,KAAA;;;;cAPG,IAAA,EAAM,EAAA;AAAA,cAAI,KAAA,EAAM;AAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,QAAA,CAAA,CAAA;;;;cAF5BC,WAAAA,CAKM,KAAA,EAAA,EALD,KAAA,EAAM,0BAAwB,EAAA;AAAA,gBACjCA,WAAAA,CAEM,KAAA,EAAA,EAFD,KAAA,EAAM,6EAA2E,EAAA;AAAA,kBACpFA,WAAAA,CAA6CC,KAAAA,CAAA,KAAA,CAAA,EAAA;AAAA,oBAArC,IAAA,EAAM,EAAA;AAAA,oBAAI,KAAA,EAAM;AAAA,mBAAA;AAAA;gBAE1BD,YAAoE,IAAA,EAAA,EAAhE,KAAA,EAAM,qCAAA,IAAsC,iBAAe;AAAA,eAAA,CAAA;AAAA,cAEjEA,YAEI,GAAA,EAAA,EAFD,KAAA,EAAM,uBAAA,IAAwB,wCAEjC;AAAA,aAAA;AAAA;;;;;QAIA,EAAA,EAAG,yBAAA;AAAA,QACH,KAAA,EAAM;AAAA,OAAA,EAAA;AAAA,yBAFR,CAaW,CAAA,EAAAF,MAAAA,EAAAC,UAAA,QAAA,KAAA;;;;cAPO,IAAA,EAAM,EAAA;AAAA,cAAI,KAAA,EAAM;AAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,QAAA,CAAA,CAAA;;;;cAFhCC,WAAAA,CAKM,KAAA,EAAA,EALD,KAAA,EAAM,0BAAwB,EAAA;AAAA,gBACjCA,WAAAA,CAEM,KAAA,EAAA,EAFD,KAAA,EAAM,6EAA2E,EAAA;AAAA,kBACpFA,WAAAA,CAAiDC,KAAAA,CAAA,SAAA,CAAA,EAAA;AAAA,oBAArC,IAAA,EAAM,EAAA;AAAA,oBAAI,KAAA,EAAM;AAAA,mBAAA;AAAA;gBAE9BD,YAAiE,IAAA,EAAA,EAA7D,KAAA,EAAM,qCAAA,IAAsC,cAAY;AAAA,eAAA,CAAA;AAAA,cAE9DA,YAEI,GAAA,EAAA,EAFD,KAAA,EAAM,uBAAA,IAAwB,qCAEjC;AAAA,aAAA;AAAA;;;;;QAIA,EAAA,EAAG,2BAAA;AAAA,QACH,KAAA,EAAM;AAAA,OAAA,EAAA;AAAA,yBAFR,CAaW,CAAA,EAAAF,MAAAA,EAAAC,UAAA,QAAA,KAAA;;;;cAPK,IAAA,EAAM,EAAA;AAAA,cAAI,KAAA,EAAM;AAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,QAAA,CAAA,CAAA;;;;cAF9BC,WAAAA,CAKM,KAAA,EAAA,EALD,KAAA,EAAM,0BAAwB,EAAA;AAAA,gBACjCA,WAAAA,CAEM,KAAA,EAAA,EAFD,KAAA,EAAM,6EAA2E,EAAA;AAAA,kBACpFA,WAAAA,CAA+CC,KAAAA,CAAA,OAAA,CAAA,EAAA;AAAA,oBAArC,IAAA,EAAM,EAAA;AAAA,oBAAI,KAAA,EAAM;AAAA,mBAAA;AAAA;gBAE5BD,YAAgE,IAAA,EAAA,EAA5D,KAAA,EAAM,qCAAA,IAAsC,aAAW;AAAA,eAAA,CAAA;AAAA,cAE7DA,YAEI,GAAA,EAAA,EAFD,KAAA,EAAM,uBAAA,IAAwB,4CAEjC;AAAA,aAAA;AAAA;;;;;;;;;;;;;;;;;"}

View File

@@ -0,0 +1,70 @@
import { ref, mergeProps, unref, useSSRContext } from 'vue';
import { ssrRenderAttrs, ssrInterpolate, ssrRenderComponent } from 'vue/server-renderer';
import { Calendar, Newspaper, FileText, Users, Image } from 'lucide-vue-next';
import { u as useHead } from './v3-BQ4jllfP.mjs';
import './server.mjs';
import '../nitro/nitro.mjs';
import 'node:http';
import 'node:https';
import 'node:events';
import 'node:buffer';
import 'node:fs';
import 'node:path';
import 'node:crypto';
import 'node:url';
import '../routes/renderer.mjs';
import 'vue-bundle-renderer/runtime';
import 'unhead/server';
import 'devalue';
import 'unhead/utils';
import 'unhead/plugins';
import 'vue-router';
const _sfc_main = {
__name: "index",
__ssrInlineRender: true,
setup(__props) {
const user = ref(null);
useHead({
title: "CMS - Harheimer TC"
});
return (_ctx, _push, _parent, _attrs) => {
var _a;
_push(`<div${ssrRenderAttrs(mergeProps({ class: "min-h-full py-16 bg-gray-50" }, _attrs))}><div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"><h1 class="text-4xl sm:text-5xl font-display font-bold text-gray-900 mb-6"> Content Management System </h1><div class="w-24 h-1 bg-primary-600 mb-8"></div><div class="bg-white rounded-xl shadow-lg p-8 mb-8"><h2 class="text-2xl font-display font-bold text-gray-900 mb-4"> Willkommen im CMS, ${ssrInterpolate((_a = user.value) == null ? void 0 : _a.name)}! </h2><p class="text-gray-600"> Hier k\xF6nnen Sie Inhalte der Website verwalten. </p></div><div class="grid md:grid-cols-2 lg:grid-cols-3 gap-6"><div class="bg-white p-6 rounded-xl shadow-lg border border-gray-100"><div class="flex items-center mb-4"><div class="w-12 h-12 bg-primary-100 rounded-lg flex items-center justify-center mr-4">`);
_push(ssrRenderComponent(unref(Calendar), {
size: 24,
class: "text-primary-600"
}, null, _parent));
_push(`</div><h3 class="text-lg font-semibold text-gray-900">Termine verwalten</h3></div><p class="text-gray-600 text-sm mb-4"> Termine hinzuf\xFCgen, bearbeiten und l\xF6schen </p><button class="text-sm text-primary-600 hover:text-primary-700 font-medium"> \xD6ffnen \u2192 </button></div><div class="bg-white p-6 rounded-xl shadow-lg border border-gray-100"><div class="flex items-center mb-4"><div class="w-12 h-12 bg-primary-100 rounded-lg flex items-center justify-center mr-4">`);
_push(ssrRenderComponent(unref(Newspaper), {
size: 24,
class: "text-primary-600"
}, null, _parent));
_push(`</div><h3 class="text-lg font-semibold text-gray-900">Interne News</h3></div><p class="text-gray-600 text-sm mb-4"> News f\xFCr Mitglieder erstellen und verwalten </p><button class="text-sm text-primary-600 hover:text-primary-700 font-medium"> \xD6ffnen \u2192 </button></div><div class="bg-white p-6 rounded-xl shadow-lg border border-gray-100"><div class="flex items-center mb-4"><div class="w-12 h-12 bg-primary-100 rounded-lg flex items-center justify-center mr-4">`);
_push(ssrRenderComponent(unref(FileText), {
size: 24,
class: "text-primary-600"
}, null, _parent));
_push(`</div><h3 class="text-lg font-semibold text-gray-900">Spielpl\xE4ne</h3></div><p class="text-gray-600 text-sm mb-4"> Spielpl\xE4ne hochladen und verwalten </p><button class="text-sm text-primary-600 hover:text-primary-700 font-medium"> \xD6ffnen \u2192 </button></div><div class="bg-white p-6 rounded-xl shadow-lg border border-gray-100"><div class="flex items-center mb-4"><div class="w-12 h-12 bg-primary-100 rounded-lg flex items-center justify-center mr-4">`);
_push(ssrRenderComponent(unref(Users), {
size: 24,
class: "text-primary-600"
}, null, _parent));
_push(`</div><h3 class="text-lg font-semibold text-gray-900">Mitglieder</h3></div><p class="text-gray-600 text-sm mb-4"> Mitgliederdaten verwalten </p><button class="text-sm text-primary-600 hover:text-primary-700 font-medium"> \xD6ffnen \u2192 </button></div><div class="bg-white p-6 rounded-xl shadow-lg border border-gray-100"><div class="flex items-center mb-4"><div class="w-12 h-12 bg-primary-100 rounded-lg flex items-center justify-center mr-4">`);
_push(ssrRenderComponent(unref(Image), {
size: 24,
class: "text-primary-600"
}, null, _parent));
_push(`</div><h3 class="text-lg font-semibold text-gray-900">Galerie</h3></div><p class="text-gray-600 text-sm mb-4"> Bilder hochladen und verwalten </p><button class="text-sm text-primary-600 hover:text-primary-700 font-medium"> \xD6ffnen \u2192 </button></div></div></div></div>`);
};
}
};
const _sfc_setup = _sfc_main.setup;
_sfc_main.setup = (props, ctx) => {
const ssrContext = useSSRContext();
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("pages/cms/index.vue");
return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
};
export { _sfc_main as default };
//# sourceMappingURL=index-Deu10thO.mjs.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"index-Deu10thO.mjs","sources":["../../../../pages/cms/index.vue"],"sourcesContent":null,"names":["_ssrRenderAttrs","_mergeProps","_ssrInterpolate"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAsGA,IAAA,MAAM,IAAA,GAAO,IAAI,IAAI,CAAA;AAiBrB,IAAA,OAAA,CAAQ;AAAA,MACN,KAAA,EAAO;AAAA,KACR,CAAA;;;mBAxHMA,cAAAA,CAAAC,UAAAA,CAAA,EAAA,KAAA,EAAM,+BAA6B,EAAA,MAAA,CAAA,CAAA,0VASVC,cAAAA,CAAAA,CAAA,EAAA,GAAA,IAAA,CAAA,UAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAM,IAAI,CAAA,CAAA,oVAAA,CAAA,CAAA;;QAYjB,IAAA,EAAM,EAAA;AAAA,QAAI,KAAA,EAAM;AAAA,OAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;;;QAef,IAAA,EAAM,EAAA;AAAA,QAAI,KAAA,EAAM;AAAA,OAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;;;QAejB,IAAA,EAAM,EAAA;AAAA,QAAI,KAAA,EAAM;AAAA,OAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;;;QAenB,IAAA,EAAM,EAAA;AAAA,QAAI,KAAA,EAAM;AAAA,OAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;;;QAehB,IAAA,EAAM,EAAA;AAAA,QAAI,KAAA,EAAM;AAAA,OAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;;;;;;;;;;;;;;"}

View File

@@ -0,0 +1,102 @@
import { _ as __nuxt_component_0 } from './server.mjs';
import { ref, mergeProps, unref, withCtx, createTextVNode, useSSRContext } from 'vue';
import { ssrRenderAttrs, ssrRenderAttr, ssrRenderClass, ssrRenderComponent, ssrInterpolate, ssrIncludeBooleanAttr } from 'vue/server-renderer';
import { AlertCircle, Check, Loader2, Lock } from 'lucide-vue-next';
import { u as useHead } from './v3-BQ4jllfP.mjs';
import '../nitro/nitro.mjs';
import 'node:http';
import 'node:https';
import 'node:events';
import 'node:buffer';
import 'node:fs';
import 'node:path';
import 'node:crypto';
import 'node:url';
import '../routes/renderer.mjs';
import 'vue-bundle-renderer/runtime';
import 'unhead/server';
import 'devalue';
import 'unhead/utils';
import 'unhead/plugins';
import 'vue-router';
const _sfc_main = {
__name: "login",
__ssrInlineRender: true,
setup(__props) {
const formData = ref({
email: "",
password: ""
});
const isLoading = ref(false);
const errorMessage = ref("");
const successMessage = ref("");
useHead({
title: "Login - Harheimer TC"
});
return (_ctx, _push, _parent, _attrs) => {
const _component_NuxtLink = __nuxt_component_0;
_push(`<div${ssrRenderAttrs(mergeProps({ class: "min-h-full flex items-center justify-center py-16 px-4 sm:px-6 lg:px-8 bg-gray-50" }, _attrs))}><div class="max-w-md w-full space-y-8"><div class="text-center"><h2 class="text-3xl font-display font-bold text-gray-900"> Mitglieder-Login </h2><p class="mt-2 text-sm text-gray-600"> Melden Sie sich an, um auf den Mitgliederbereich zuzugreifen </p></div><div class="bg-white rounded-xl shadow-lg p-8"><form class="space-y-6"><div><label for="email" class="block text-sm font-medium text-gray-700 mb-2"> E-Mail-Adresse </label><input id="email"${ssrRenderAttr("value", formData.value.email)} type="email" required autocomplete="email" class="${ssrRenderClass([{ "border-red-500": errorMessage.value }, "w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-600 focus:border-transparent transition-all"])}" placeholder="ihre-email@example.com"></div><div><label for="password" class="block text-sm font-medium text-gray-700 mb-2"> Passwort </label><input id="password"${ssrRenderAttr("value", formData.value.password)} type="password" required autocomplete="current-password" class="${ssrRenderClass([{ "border-red-500": errorMessage.value }, "w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-600 focus:border-transparent transition-all"])}" placeholder="\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022"></div>`);
if (errorMessage.value) {
_push(`<div class="bg-red-50 border border-red-200 rounded-lg p-4"><p class="text-sm text-red-800 flex items-center">`);
_push(ssrRenderComponent(unref(AlertCircle), {
size: 18,
class: "mr-2"
}, null, _parent));
_push(` ${ssrInterpolate(errorMessage.value)}</p></div>`);
} else {
_push(`<!---->`);
}
if (successMessage.value) {
_push(`<div class="bg-green-50 border border-green-200 rounded-lg p-4"><p class="text-sm text-green-800 flex items-center">`);
_push(ssrRenderComponent(unref(Check), {
size: 18,
class: "mr-2"
}, null, _parent));
_push(` ${ssrInterpolate(successMessage.value)}</p></div>`);
} else {
_push(`<!---->`);
}
_push(`<button type="submit"${ssrIncludeBooleanAttr(isLoading.value) ? " disabled" : ""} class="w-full px-6 py-3 bg-primary-600 hover:bg-primary-700 disabled:bg-gray-400 text-white font-semibold rounded-lg transition-colors flex items-center justify-center">`);
if (isLoading.value) {
_push(ssrRenderComponent(unref(Loader2), {
size: 20,
class: "mr-2 animate-spin"
}, null, _parent));
} else {
_push(`<!---->`);
}
_push(`<span>${ssrInterpolate(isLoading.value ? "Anmeldung l\xE4uft..." : "Anmelden")}</span></button><div class="text-center">`);
_push(ssrRenderComponent(_component_NuxtLink, {
to: "/passwort-vergessen",
class: "text-sm text-primary-600 hover:text-primary-700 font-medium"
}, {
default: withCtx((_, _push2, _parent2, _scopeId) => {
if (_push2) {
_push2(` Passwort vergessen? `);
} else {
return [
createTextVNode(" Passwort vergessen? ")
];
}
}),
_: 1
}, _parent));
_push(`</div></form></div><div class="bg-primary-50 border border-primary-100 rounded-lg p-4"><p class="text-sm text-primary-800 text-center">`);
_push(ssrRenderComponent(unref(Lock), {
size: 16,
class: "inline mr-1"
}, null, _parent));
_push(` Nur f\xFCr Vereinsmitglieder. Kein Zugang? Kontaktieren Sie den Vorstand. </p></div></div></div>`);
};
}
};
const _sfc_setup = _sfc_main.setup;
_sfc_main.setup = (props, ctx) => {
const ssrContext = useSSRContext();
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("pages/login.vue");
return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
};
export { _sfc_main as default };
//# sourceMappingURL=login-CSQ2h4vV.mjs.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"login-CSQ2h4vV.mjs","sources":["../../../../pages/login.vue"],"sourcesContent":null,"names":["_ssrRenderAttrs","_mergeProps","_ssrRenderAttr","_push","_parent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAqGA,IAAA,MAAM,WAAW,GAAA,CAAI;AAAA,MACnB,KAAA,EAAO,EAAA;AAAA,MACP,QAAA,EAAU;AAAA,KACX,CAAA;AAED,IAAA,MAAM,SAAA,GAAY,IAAI,KAAK,CAAA;AAC3B,IAAA,MAAM,YAAA,GAAe,IAAI,EAAE,CAAA;AAC3B,IAAA,MAAM,cAAA,GAAiB,IAAI,EAAE,CAAA;AAuC7B,IAAA,OAAA,CAAQ;AAAA,MACN,KAAA,EAAO;AAAA,KACR,CAAA;;;AApJMA,MAAAA,KAAAA,CAAAA,CAAAA,IAAAA,EAAAA,eAAAC,UAAAA,CAAA,EAAA,OAAM,mFAAA,EAAmF,EAAA,MAAA,CAAA,CAAA,gcAoBzEC,aAAAA,CAAA,OAAA,EAAA,SAAA,KAAA,CAAS,KAAK,CAAA,CAAA,mDAAA,EAAA,cAAA,CAAA,CAAA,EAAA,gBAAA,EAKK,YAAA,CAAA,OAAY,EAAA,gIAAA,CAAA,CAAA,CAAA,mKAAA,EAY/BA,cAAA,OAAA,EAAA,QAAA,CAAA,MAAS,QAAQ,CAAA,oEAAA,cAAA,CAAA,CAAA,EAAA,gBAAA,EAKE,YAAA,CAAA,OAAY,EAAA,gIAAA,CAAA,CAAA,CAAA,uEAAA,CAAA,CAAA;AAMjC,MAAA,IAAA,aAAA,KAAA,EAAY;;;UAEL,IAAA,EAAM,EAAA;AAAA,UAAI,KAAA,EAAM;AAAA,SAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;iCAC3B,YAAA,CAAA,KAAY,CAAA,CAAA,UAAA,CAAA,CAAA;AAAA,MAAA,CAAA,MAAA;;;AAKR,MAAA,IAAA,eAAA,KAAA,EAAc;;;UAEb,IAAA,EAAM,EAAA;AAAA,UAAI,KAAA,EAAM;AAAA,SAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;iCACrB,cAAA,CAAA,KAAc,CAAA,CAAA,UAAA,CAAA,CAAA;AAAA,MAAA,CAAA,MAAA;;;AAOR,MAAA,KAAA,CAAA,wBAAA,qBAAA,CAAA,SAAA,CAAA,KAAS,CAAA,GAAA,WAAA,GAAA,EAAA,CAAA,0KAAA,CAAA,CAAA;AAGL,MAAA,IAAA,UAAA,KAAA,EAAS;;UAAG,IAAA,EAAM,EAAA;AAAA,UAAI,KAAA,EAAM;AAAA,SAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;AAAA;;;AAClC,MAAA,KAAA,CAAA,SAAA,cAAA,CAAA,SAAA,CAAA,QAAS,uBAAA,GAAA,UAAA,CAAA,CAAA,yCAAA,CAAA,CAAA;;QAMhB,EAAA,EAAG,qBAAA;AAAA,QACH,KAAA,EAAM;AAAA,OAAA,EAAA;AAAA,yBAFR,CAKW,CAAA,EAAAC,MAAAA,EAAAC,UAAA,QAAA,KAAA;;;;;8BAFV,uBAED;AAAA,aAAA;AAAA;;;;;;QAQK,IAAA,EAAM,EAAA;AAAA,QAAI,KAAA,EAAM;AAAA,OAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;;;;;;;;;;;;;;"}

View File

@@ -0,0 +1,94 @@
import { _ as __nuxt_component_0 } from './server.mjs';
import { ref, mergeProps, unref, withCtx, createTextVNode, useSSRContext } from 'vue';
import { ssrRenderAttrs, ssrRenderAttr, ssrRenderClass, ssrRenderComponent, ssrInterpolate, ssrIncludeBooleanAttr } from 'vue/server-renderer';
import { AlertCircle, Check, Loader2 } from 'lucide-vue-next';
import { u as useHead } from './v3-BQ4jllfP.mjs';
import '../nitro/nitro.mjs';
import 'node:http';
import 'node:https';
import 'node:events';
import 'node:buffer';
import 'node:fs';
import 'node:path';
import 'node:crypto';
import 'node:url';
import '../routes/renderer.mjs';
import 'vue-bundle-renderer/runtime';
import 'unhead/server';
import 'devalue';
import 'unhead/utils';
import 'unhead/plugins';
import 'vue-router';
const _sfc_main = {
__name: "passwort-vergessen",
__ssrInlineRender: true,
setup(__props) {
const email = ref("");
const isLoading = ref(false);
const errorMessage = ref("");
const successMessage = ref("");
useHead({
title: "Passwort vergessen - Harheimer TC"
});
return (_ctx, _push, _parent, _attrs) => {
const _component_NuxtLink = __nuxt_component_0;
_push(`<div${ssrRenderAttrs(mergeProps({ class: "min-h-full flex items-center justify-center py-16 px-4 sm:px-6 lg:px-8 bg-gray-50" }, _attrs))}><div class="max-w-md w-full space-y-8"><div class="text-center"><h2 class="text-3xl font-display font-bold text-gray-900"> Passwort zur\xFCcksetzen </h2><p class="mt-2 text-sm text-gray-600"> Geben Sie Ihre E-Mail-Adresse ein, um Ihr Passwort zur\xFCckzusetzen </p></div><div class="bg-white rounded-xl shadow-lg p-8"><form class="space-y-6"><div><label for="email" class="block text-sm font-medium text-gray-700 mb-2"> E-Mail-Adresse </label><input id="email"${ssrRenderAttr("value", email.value)} type="email" required autocomplete="email" class="${ssrRenderClass([{ "border-red-500": errorMessage.value }, "w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-600 focus:border-transparent transition-all"])}" placeholder="ihre-email@example.com"></div>`);
if (errorMessage.value) {
_push(`<div class="bg-red-50 border border-red-200 rounded-lg p-4"><p class="text-sm text-red-800 flex items-center">`);
_push(ssrRenderComponent(unref(AlertCircle), {
size: 18,
class: "mr-2"
}, null, _parent));
_push(` ${ssrInterpolate(errorMessage.value)}</p></div>`);
} else {
_push(`<!---->`);
}
if (successMessage.value) {
_push(`<div class="bg-green-50 border border-green-200 rounded-lg p-4"><p class="text-sm text-green-800 flex items-center">`);
_push(ssrRenderComponent(unref(Check), {
size: 18,
class: "mr-2"
}, null, _parent));
_push(` ${ssrInterpolate(successMessage.value)}</p></div>`);
} else {
_push(`<!---->`);
}
_push(`<button type="submit"${ssrIncludeBooleanAttr(isLoading.value) ? " disabled" : ""} class="w-full px-6 py-3 bg-primary-600 hover:bg-primary-700 disabled:bg-gray-400 text-white font-semibold rounded-lg transition-colors flex items-center justify-center">`);
if (isLoading.value) {
_push(ssrRenderComponent(unref(Loader2), {
size: 20,
class: "mr-2 animate-spin"
}, null, _parent));
} else {
_push(`<!---->`);
}
_push(`<span>${ssrInterpolate(isLoading.value ? "Wird gesendet..." : "Passwort zur\xFCcksetzen")}</span></button><div class="text-center">`);
_push(ssrRenderComponent(_component_NuxtLink, {
to: "/login",
class: "text-sm text-primary-600 hover:text-primary-700 font-medium"
}, {
default: withCtx((_, _push2, _parent2, _scopeId) => {
if (_push2) {
_push2(` Zur\xFCck zum Login `);
} else {
return [
createTextVNode(" Zur\xFCck zum Login ")
];
}
}),
_: 1
}, _parent));
_push(`</div></form></div><div class="bg-primary-50 border border-primary-100 rounded-lg p-4"><p class="text-sm text-primary-800 text-center"> Sie erhalten eine E-Mail mit einem Link zum Zur\xFCcksetzen Ihres Passworts. </p></div></div></div>`);
};
}
};
const _sfc_setup = _sfc_main.setup;
_sfc_main.setup = (props, ctx) => {
const ssrContext = useSSRContext();
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("pages/passwort-vergessen.vue");
return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
};
export { _sfc_main as default };
//# sourceMappingURL=passwort-vergessen-CU7x98cF.mjs.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"passwort-vergessen-CU7x98cF.mjs","sources":["../../../../pages/passwort-vergessen.vue"],"sourcesContent":null,"names":["_ssrRenderAttrs","_mergeProps","_push","_parent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAmFA,IAAA,MAAM,KAAA,GAAQ,IAAI,EAAE,CAAA;AACpB,IAAA,MAAM,SAAA,GAAY,IAAI,KAAK,CAAA;AAC3B,IAAA,MAAM,YAAA,GAAe,IAAI,EAAE,CAAA;AAC3B,IAAA,MAAM,cAAA,GAAiB,IAAI,EAAE,CAAA;AAwB7B,IAAA,OAAA,CAAQ;AAAA,MACN,KAAA,EAAO;AAAA,KACR,CAAA;;;AA/GMA,MAAAA,KAAAA,CAAAA,CAAAA,IAAAA,EAAAA,cAAAA,CAAAC,UAAAA,CAAA,EAAA,KAAA,EAAM,mFAAA,EAAmF,EAAA,MAAA,CAAA,CAAA,CAAA,6cAAA,EAAA,aAAA,CAAA,OAAA,EAoBzE,KAAA,CAAA,KAAK,CAAA,CAAA,mDAAA,EAAA,cAAA,CAAA,CAAA,EAAA,gBAAA,EAKc,YAAA,CAAA,KAAA,EAAY,EAAA,gIAAA,CAAA,CAAA,CAAA,6CAAA,CAAA,CAAA;AAMjC,MAAA,IAAA,aAAA,KAAA,EAAY;;;UAEL,IAAA,EAAM,EAAA;AAAA,UAAI,KAAA,EAAM;AAAA,SAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;iCAC3B,YAAA,CAAA,KAAY,CAAA,CAAA,UAAA,CAAA,CAAA;AAAA,MAAA,CAAA,MAAA;;;AAKR,MAAA,IAAA,eAAA,KAAA,EAAc;;;UAEb,IAAA,EAAM,EAAA;AAAA,UAAI,KAAA,EAAM;AAAA,SAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;iCACrB,cAAA,CAAA,KAAc,CAAA,CAAA,UAAA,CAAA,CAAA;AAAA,MAAA,CAAA,MAAA;;;AAOR,MAAA,KAAA,CAAA,wBAAA,qBAAA,CAAA,SAAA,CAAA,KAAS,CAAA,GAAA,WAAA,GAAA,EAAA,CAAA,0KAAA,CAAA,CAAA;AAGL,MAAA,IAAA,UAAA,KAAA,EAAS;;UAAG,IAAA,EAAM,EAAA;AAAA,UAAI,KAAA,EAAM;AAAA,SAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;AAAA;;;AAClC,MAAA,KAAA,CAAA,SAAA,cAAA,CAAA,SAAA,CAAA,QAAS,kBAAA,GAAA,0BAAA,CAAA,CAAA,yCAAA,CAAA,CAAA;;QAMhB,EAAA,EAAG,QAAA;AAAA,QACH,KAAA,EAAM;AAAA,OAAA,EAAA;AAAA,yBAFR,CAKW,CAAA,EAAAC,MAAAA,EAAAC,UAAA,QAAA,KAAA;;;;;8BAFV,uBAED;AAAA,aAAA;AAAA;;;;;;;;;;;;;;;;;"}

View File

@@ -0,0 +1,105 @@
import { _ as __nuxt_component_0 } from './server.mjs';
import { ref, mergeProps, unref, withCtx, createTextVNode, useSSRContext } from 'vue';
import { ssrRenderAttrs, ssrRenderAttr, ssrRenderComponent, ssrInterpolate, ssrIncludeBooleanAttr } from 'vue/server-renderer';
import { AlertCircle, Check, Loader2, Info } from 'lucide-vue-next';
import { u as useHead } from './v3-BQ4jllfP.mjs';
import '../nitro/nitro.mjs';
import 'node:http';
import 'node:https';
import 'node:events';
import 'node:buffer';
import 'node:fs';
import 'node:path';
import 'node:crypto';
import 'node:url';
import '../routes/renderer.mjs';
import 'vue-bundle-renderer/runtime';
import 'unhead/server';
import 'devalue';
import 'unhead/utils';
import 'unhead/plugins';
import 'vue-router';
const _sfc_main = {
__name: "registrieren",
__ssrInlineRender: true,
setup(__props) {
const formData = ref({
name: "",
email: "",
phone: "",
password: "",
confirmPassword: ""
});
const isLoading = ref(false);
const errorMessage = ref("");
const successMessage = ref("");
useHead({
title: "Registrierung - Harheimer TC"
});
return (_ctx, _push, _parent, _attrs) => {
const _component_NuxtLink = __nuxt_component_0;
_push(`<div${ssrRenderAttrs(mergeProps({ class: "min-h-full flex items-center justify-center py-16 px-4 sm:px-6 lg:px-8 bg-gray-50" }, _attrs))}><div class="max-w-md w-full space-y-8"><div class="text-center"><h2 class="text-3xl font-display font-bold text-gray-900"> Registrierung </h2><p class="mt-2 text-sm text-gray-600"> Beantragen Sie Zugang zum Mitgliederbereich </p></div><div class="bg-white rounded-xl shadow-lg p-8"><form class="space-y-6"><div><label for="name" class="block text-sm font-medium text-gray-700 mb-2"> Vollst\xE4ndiger Name </label><input id="name"${ssrRenderAttr("value", formData.value.name)} type="text" required autocomplete="name" class="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-600 focus:border-transparent transition-all" placeholder="Max Mustermann"></div><div><label for="email" class="block text-sm font-medium text-gray-700 mb-2"> E-Mail-Adresse </label><input id="email"${ssrRenderAttr("value", formData.value.email)} type="email" required autocomplete="email" class="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-600 focus:border-transparent transition-all" placeholder="ihre-email@example.com"></div><div><label for="phone" class="block text-sm font-medium text-gray-700 mb-2"> Telefonnummer (optional) </label><input id="phone"${ssrRenderAttr("value", formData.value.phone)} type="tel" autocomplete="tel" class="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-600 focus:border-transparent transition-all" placeholder="069-12345678"></div><div><label for="password" class="block text-sm font-medium text-gray-700 mb-2"> Passwort </label><input id="password"${ssrRenderAttr("value", formData.value.password)} type="password" required autocomplete="new-password" class="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-600 focus:border-transparent transition-all" placeholder="\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022"><p class="mt-1 text-xs text-gray-500"> Mindestens 8 Zeichen </p></div><div><label for="confirmPassword" class="block text-sm font-medium text-gray-700 mb-2"> Passwort best\xE4tigen </label><input id="confirmPassword"${ssrRenderAttr("value", formData.value.confirmPassword)} type="password" required autocomplete="new-password" class="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-600 focus:border-transparent transition-all" placeholder="\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022"></div>`);
if (errorMessage.value) {
_push(`<div class="bg-red-50 border border-red-200 rounded-lg p-4"><p class="text-sm text-red-800 flex items-center">`);
_push(ssrRenderComponent(unref(AlertCircle), {
size: 18,
class: "mr-2"
}, null, _parent));
_push(` ${ssrInterpolate(errorMessage.value)}</p></div>`);
} else {
_push(`<!---->`);
}
if (successMessage.value) {
_push(`<div class="bg-green-50 border border-green-200 rounded-lg p-4"><p class="text-sm text-green-800 flex items-center">`);
_push(ssrRenderComponent(unref(Check), {
size: 18,
class: "mr-2"
}, null, _parent));
_push(` ${ssrInterpolate(successMessage.value)}</p></div>`);
} else {
_push(`<!---->`);
}
_push(`<button type="submit"${ssrIncludeBooleanAttr(isLoading.value) ? " disabled" : ""} class="w-full px-6 py-3 bg-primary-600 hover:bg-primary-700 disabled:bg-gray-400 text-white font-semibold rounded-lg transition-colors flex items-center justify-center">`);
if (isLoading.value) {
_push(ssrRenderComponent(unref(Loader2), {
size: 20,
class: "mr-2 animate-spin"
}, null, _parent));
} else {
_push(`<!---->`);
}
_push(`<span>${ssrInterpolate(isLoading.value ? "Wird gesendet..." : "Registrierung beantragen")}</span></button><div class="text-center">`);
_push(ssrRenderComponent(_component_NuxtLink, {
to: "/login",
class: "text-sm text-primary-600 hover:text-primary-700 font-medium"
}, {
default: withCtx((_, _push2, _parent2, _scopeId) => {
if (_push2) {
_push2(` Bereits registriert? Zum Login `);
} else {
return [
createTextVNode(" Bereits registriert? Zum Login ")
];
}
}),
_: 1
}, _parent));
_push(`</div></form></div><div class="bg-yellow-50 border border-yellow-200 rounded-lg p-4"><p class="text-sm text-yellow-800">`);
_push(ssrRenderComponent(unref(Info), {
size: 16,
class: "inline mr-1"
}, null, _parent));
_push(`<strong>Hinweis:</strong> Ihre Registrierung muss vom Vorstand freigegeben werden. Sie erhalten eine E-Mail, sobald Ihr Zugang aktiviert wurde. </p></div></div></div>`);
};
}
};
const _sfc_setup = _sfc_main.setup;
_sfc_main.setup = (props, ctx) => {
const ssrContext = useSSRContext();
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("pages/registrieren.vue");
return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
};
export { _sfc_main as default };
//# sourceMappingURL=registrieren-CelrCDCD.mjs.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"registrieren-CelrCDCD.mjs","sources":["../../../../pages/registrieren.vue"],"sourcesContent":null,"names":["_ssrRenderAttrs","_mergeProps","_ssrRenderAttr","_push","_parent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAsJA,IAAA,MAAM,WAAW,GAAA,CAAI;AAAA,MACnB,IAAA,EAAM,EAAA;AAAA,MACN,KAAA,EAAO,EAAA;AAAA,MACP,KAAA,EAAO,EAAA;AAAA,MACP,QAAA,EAAU,EAAA;AAAA,MACV,eAAA,EAAiB;AAAA,KAClB,CAAA;AAED,IAAA,MAAM,SAAA,GAAY,IAAI,KAAK,CAAA;AAC3B,IAAA,MAAM,YAAA,GAAe,IAAI,EAAE,CAAA;AAC3B,IAAA,MAAM,cAAA,GAAiB,IAAI,EAAE,CAAA;AAsD7B,IAAA,OAAA,CAAQ;AAAA,MACN,KAAA,EAAO;AAAA,KACR,CAAA;;;AAvNMA,MAAAA,KAAAA,CAAAA,CAAAA,IAAAA,EAAAA,eAAAC,UAAAA,CAAA,EAAA,OAAM,mFAAA,EAAmF,EAAA,MAAA,CAAA,CAAA,ibAoBzEC,aAAAA,CAAA,OAAA,EAAA,SAAA,KAAA,CAAS,IAAI,CAAA,CAAA,0UAAA,EAgBbA,aAAAA,CAAA,SAAA,QAAA,CAAA,KAAA,CAAS,KAAK,CAAA,CAAA,8VAAA,EAgBdA,cAAA,OAAA,EAAA,QAAA,CAAA,MAAS,KAAK,iUAedA,aAAAA,CAAA,OAAA,EAAA,SAAA,KAAA,CAAS,QAAQ,CAAA,CAAA,odAAA,EAmBjBA,aAAAA,CAAA,SAAA,QAAA,CAAA,KAAA,CAAS,eAAe,CAAA,CAAA,kQAAA,CAAA,CAAA;AAU1B,MAAA,IAAA,aAAA,KAAA,EAAY;;;UAEL,IAAA,EAAM,EAAA;AAAA,UAAI,KAAA,EAAM;AAAA,SAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;iCAC3B,YAAA,CAAA,KAAY,CAAA,CAAA,UAAA,CAAA,CAAA;AAAA,MAAA,CAAA,MAAA;;;AAKR,MAAA,IAAA,eAAA,KAAA,EAAc;;;UAEb,IAAA,EAAM,EAAA;AAAA,UAAI,KAAA,EAAM;AAAA,SAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;iCACrB,cAAA,CAAA,KAAc,CAAA,CAAA,UAAA,CAAA,CAAA;AAAA,MAAA,CAAA,MAAA;;;AAOR,MAAA,KAAA,CAAA,wBAAA,qBAAA,CAAA,SAAA,CAAA,KAAS,CAAA,GAAA,WAAA,GAAA,EAAA,CAAA,0KAAA,CAAA,CAAA;AAGL,MAAA,IAAA,UAAA,KAAA,EAAS;;UAAG,IAAA,EAAM,EAAA;AAAA,UAAI,KAAA,EAAM;AAAA,SAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;AAAA;;;AAClC,MAAA,KAAA,CAAA,SAAA,cAAA,CAAA,SAAA,CAAA,QAAS,kBAAA,GAAA,0BAAA,CAAA,CAAA,yCAAA,CAAA,CAAA;;QAMhB,EAAA,EAAG,QAAA;AAAA,QACH,KAAA,EAAM;AAAA,OAAA,EAAA;AAAA,yBAFR,CAKW,CAAA,EAAAC,MAAAA,EAAAC,UAAA,QAAA,KAAA;;;;;8BAFV,kCAED;AAAA,aAAA;AAAA;;;;;;QAQK,IAAA,EAAM,EAAA;AAAA,QAAI,KAAA,EAAM;AAAA,OAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;;;;;;;;;;;;;;"}

View File

@@ -1,9 +1,9 @@
import process from 'node:process';globalThis._importMeta_=globalThis._importMeta_||{url:"file:///_entry.js",env:process.env};import { defineComponent, shallowRef, h, resolveComponent, hasInjectionContext, getCurrentInstance, inject, computed, ref, Suspense, Fragment, createApp, provide, shallowReactive, toRef, onErrorCaptured, onServerPrefetch, unref, createVNode, resolveDynamicComponent, reactive, effectScope, isReadonly, isRef, isShallow, isReactive, toRaw, defineAsyncComponent, mergeProps, getCurrentScope, withCtx, createTextVNode, toDisplayString, useSSRContext } from 'vue';
import { p as parseQuery, l as hasProtocol, i as joinURL, m as getContext, w as withQuery, n as withTrailingSlash, o as withoutTrailingSlash, q as isScriptProtocol, s as sanitizeStatusCode, $ as $fetch, t as createHooks, v as executeAsync, c as createError$1, x as toRouteMatcher, y as createRouter$1, z as defu } from '../nitro/nitro.mjs';
import { p as parseQuery, c as createError$1, n as hasProtocol, o as isScriptProtocol, l as joinURL, w as withQuery, q as sanitizeStatusCode, t as getContext, v as withTrailingSlash, x as withoutTrailingSlash, $ as $fetch, y as createHooks, z as executeAsync, A as toRouteMatcher, B as createRouter$1, C as defu } from '../nitro/nitro.mjs';
import { b as baseURL } from '../routes/renderer.mjs';
import { RouterView, createMemoryHistory, createRouter, START_LOCATION, useRoute as useRoute$1 } from 'vue-router';
import { ssrRenderSuspense, ssrRenderComponent, ssrRenderVNode, ssrRenderAttrs, ssrRenderAttr, ssrRenderStyle, ssrRenderClass, ssrRenderList, ssrInterpolate } from 'vue/server-renderer';
import { X, Menu, ChevronDown } from 'lucide-vue-next';
import { X, Menu, ChevronDown, User, ChevronUp } from 'lucide-vue-next';
import 'node:http';
import 'node:https';
import 'node:events';
@@ -27,6 +27,8 @@ if (!("global" in globalThis)) {
globalThis.global = globalThis;
}
const nuxtLinkDefaults = { "componentName": "NuxtLink" };
const asyncDataDefaults = { "value": null, "errorValue": null, "deep": true };
const fetchDefaults = {};
const appId = "nuxt-app";
function getNuxtAppCtx(id = appId) {
return getContext(id, {
@@ -383,12 +385,21 @@ async function getRouteRules(arg) {
return defu({}, ..._routeRulesMatcher.matchAll(path).reverse());
}
}
const __nuxt_page_meta = {
layout: "default"
};
const _routes = [
{
name: "index",
path: "/",
component: () => import('./index-DLu_rC7p.mjs')
},
{
name: "login",
path: "/login",
meta: __nuxt_page_meta || {},
component: () => import('./login-CSQ2h4vV.mjs')
},
{
name: "anlagen",
path: "/anlagen",
@@ -419,6 +430,12 @@ const _routes = [
path: "/vorstand",
component: () => import('./vorstand-ul_2Xlsj.mjs')
},
{
name: "cms",
path: "/cms",
meta: { "middleware": "auth" },
component: () => import('./index-Deu10thO.mjs')
},
{
name: "impressum",
path: "/impressum",
@@ -439,6 +456,11 @@ const _routes = [
path: "/geschichte",
component: () => import('./geschichte-Buv1aL5j.mjs')
},
{
name: "registrieren",
path: "/registrieren",
component: () => import('./registrieren-CelrCDCD.mjs')
},
{
name: "spielsysteme",
path: "/spielsysteme",
@@ -469,6 +491,11 @@ const _routes = [
path: "/mannschaften",
component: () => import('./index-BLCJ44Pz.mjs')
},
{
name: "passwort-vergessen",
path: "/passwort-vergessen",
component: () => import('./passwort-vergessen-CU7x98cF.mjs')
},
{
name: "training-anfaenger",
path: "/training/anfaenger",
@@ -494,6 +521,12 @@ const _routes = [
path: "/vereinsmeisterschaften",
component: () => import('./vereinsmeisterschaften-COrSkCMk.mjs')
},
{
name: "mitgliederbereich",
path: "/mitgliederbereich",
meta: { "middleware": "auth" },
component: () => import('./index-CtmAVvb3.mjs')
},
{
name: "mannschaften-spielplaene",
path: "/mannschaften/spielplaene",
@@ -614,7 +647,9 @@ const globalMiddleware = [
validate,
manifest_45route_45rule
];
const namedMiddleware = {};
const namedMiddleware = {
auth: () => import('./auth-D7NaNMED.mjs')
};
const plugin = /* @__PURE__ */ defineNuxtPlugin({
name: "nuxt:router",
enforce: "pre",
@@ -1949,9 +1984,15 @@ const _sfc_main$3 = {
__ssrInlineRender: true,
setup(__props) {
const currentYear = (/* @__PURE__ */ new Date()).getFullYear();
const isMemberMenuOpen = ref(false);
const isLoggedIn = ref(false);
const userRole = ref(null);
const isAdmin = computed(() => {
return userRole.value === "admin" || userRole.value === "vorstand";
});
return (_ctx, _push, _parent, _attrs) => {
const _component_NuxtLink = __nuxt_component_0;
_push(`<footer${ssrRenderAttrs(mergeProps({ class: "fixed bottom-0 left-0 right-0 z-40 bg-gray-900 border-t border-gray-800 shadow-2xl" }, _attrs))}><div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-3"><div class="flex flex-col sm:flex-row justify-between items-center space-y-2 sm:space-y-0"><p class="text-sm text-gray-400"> © ${ssrInterpolate(unref(currentYear))} Harheimer TC </p><div class="flex items-center space-x-6 text-sm">`);
_push(`<footer${ssrRenderAttrs(mergeProps({ class: "fixed bottom-0 left-0 right-0 z-40 bg-gray-900 border-t border-gray-800 shadow-2xl" }, _attrs))}><div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-3"><div class="flex flex-col sm:flex-row justify-between items-center space-y-2 sm:space-y-0"><p class="text-sm text-gray-400"> © ${ssrInterpolate(unref(currentYear))} Harheimer TC </p><div class="flex items-center space-x-6 text-sm relative">`);
_push(ssrRenderComponent(_component_NuxtLink, {
to: "/impressum",
class: "text-gray-400 hover:text-primary-400 transition-colors"
@@ -1982,7 +2023,112 @@ const _sfc_main$3 = {
}),
_: 1
}, _parent));
_push(`</div></div></div></footer>`);
_push(`<div class="relative"><button class="flex items-center space-x-1 text-gray-400 hover:text-primary-400 transition-colors">`);
_push(ssrRenderComponent(unref(User), { size: 16 }, null, _parent));
_push(`<span>Mitglieder</span>`);
_push(ssrRenderComponent(unref(ChevronUp), {
size: 14,
class: ["transition-transform", isMemberMenuOpen.value ? "rotate-0" : "rotate-180"]
}, null, _parent));
_push(`</button>`);
if (isMemberMenuOpen.value) {
_push(`<div class="absolute bottom-full right-0 mb-2 w-48 bg-gray-800 border border-gray-700 rounded-lg shadow-xl overflow-hidden">`);
if (isLoggedIn.value) {
_push(`<!--[-->`);
_push(ssrRenderComponent(_component_NuxtLink, {
to: "/mitgliederbereich",
onClick: ($event) => isMemberMenuOpen.value = false,
class: "block px-4 py-2 text-sm text-gray-300 hover:bg-primary-600 hover:text-white transition-colors"
}, {
default: withCtx((_, _push2, _parent2, _scopeId) => {
if (_push2) {
_push2(` Mitgliederbereich `);
} else {
return [
createTextVNode(" Mitgliederbereich ")
];
}
}),
_: 1
}, _parent));
if (isAdmin.value) {
_push(ssrRenderComponent(_component_NuxtLink, {
to: "/cms",
onClick: ($event) => isMemberMenuOpen.value = false,
class: "block px-4 py-2 text-sm text-gray-300 hover:bg-primary-600 hover:text-white transition-colors"
}, {
default: withCtx((_, _push2, _parent2, _scopeId) => {
if (_push2) {
_push2(` CMS `);
} else {
return [
createTextVNode(" CMS ")
];
}
}),
_: 1
}, _parent));
} else {
_push(`<!---->`);
}
_push(`<button class="w-full text-left px-4 py-2 text-sm text-gray-300 hover:bg-primary-600 hover:text-white transition-colors"> Abmelden </button><!--]-->`);
} else {
_push(`<!--[-->`);
_push(ssrRenderComponent(_component_NuxtLink, {
to: "/login",
onClick: ($event) => isMemberMenuOpen.value = false,
class: "block px-4 py-2 text-sm text-gray-300 hover:bg-primary-600 hover:text-white transition-colors"
}, {
default: withCtx((_, _push2, _parent2, _scopeId) => {
if (_push2) {
_push2(` Anmelden `);
} else {
return [
createTextVNode(" Anmelden ")
];
}
}),
_: 1
}, _parent));
_push(ssrRenderComponent(_component_NuxtLink, {
to: "/registrieren",
onClick: ($event) => isMemberMenuOpen.value = false,
class: "block px-4 py-2 text-sm text-gray-300 hover:bg-primary-600 hover:text-white transition-colors"
}, {
default: withCtx((_, _push2, _parent2, _scopeId) => {
if (_push2) {
_push2(` Registrieren `);
} else {
return [
createTextVNode(" Registrieren ")
];
}
}),
_: 1
}, _parent));
_push(ssrRenderComponent(_component_NuxtLink, {
to: "/passwort-vergessen",
onClick: ($event) => isMemberMenuOpen.value = false,
class: "block px-4 py-2 text-sm text-gray-300 hover:bg-primary-600 hover:text-white transition-colors"
}, {
default: withCtx((_, _push2, _parent2, _scopeId) => {
if (_push2) {
_push2(` Passwort vergessen `);
} else {
return [
createTextVNode(" Passwort vergessen ")
];
}
}),
_: 1
}, _parent));
_push(`<!--]-->`);
}
_push(`</div>`);
} else {
_push(`<!---->`);
}
_push(`</div></div></div></div></footer>`);
};
}
};
@@ -2117,5 +2263,5 @@ let entry;
}
const entry$1 = (ssrContext) => entry(ssrContext);
export { __nuxt_component_0 as _, entry$1 as default, tryUseNuxtApp as t, useRoute as u };
export { __nuxt_component_0 as _, useNuxtApp as a, asyncDataDefaults as b, createError as c, defineNuxtRouteMiddleware as d, entry$1 as default, fetchDefaults as f, navigateTo as n, tryUseNuxtApp as t, useRoute as u };
//# sourceMappingURL=server.mjs.map

View File

@@ -1 +1 @@
{"version":3,"file":"server.mjs","sources":["../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Ffetch.mjs","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Fglobal-polyfills.mjs","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Fnuxt.config.mjs","../../../../node_modules/nuxt/dist/app/nuxt.js","../../../../node_modules/nuxt/dist/app/components/injections.js","../../../../node_modules/nuxt/dist/app/utils.js","../../../../node_modules/nuxt/dist/app/composables/router.js","../../../../node_modules/nuxt/dist/app/composables/error.js","../../../../node_modules/nuxt/dist/head/runtime/plugins/unhead.js","../../../../node_modules/nuxt/dist/pages/runtime/utils.js","../../../../node_modules/nuxt/dist/app/composables/manifest.js","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Froutes.mjs","../../../../node_modules/nuxt/dist/app/components/utils.js","../../../../node_modules/nuxt/dist/pages/runtime/router.options.js","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Frouter.options.mjs","../../../../node_modules/nuxt/dist/pages/runtime/validate.js","../../../../node_modules/nuxt/dist/app/middleware/manifest-route-rule.js","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Fmiddleware.mjs","../../../../node_modules/nuxt/dist/pages/runtime/plugins/router.js","../../../../node_modules/nuxt/dist/app/composables/payload.js","../../../../node_modules/nuxt/dist/app/plugins/revive-payload.server.js","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Fcomponents.plugin.mjs","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Fplugins.server.mjs","../../../../node_modules/nuxt/dist/app/components/route-provider.js","../../../../node_modules/nuxt/dist/pages/runtime/page.js","../../../../node_modules/nuxt/dist/app/components/nuxt-link.js","../../../../assets/images/logos/Harheimer TC.svg","../../../../components/Navigation.vue","../../../../components/Footer.vue","../../../../app.vue","../../../../node_modules/nuxt/dist/app/components/nuxt-error-page.vue","../../../../node_modules/nuxt/dist/app/components/nuxt-root.vue","../../../../node_modules/nuxt/dist/app/entry.js"],"sourcesContent":null,"names":["plugin","provide","plugins","createH3Error","createRadixRouter","__executeAsync","createRouter","entry","router_GNCWhvtYfLTYRZZ135CdFAEjxdMexN0ixiUYCAN_tpw","useRoute","_ssrRenderAttrs","_mergeProps","_push","_parent","_ssrRenderAttr","_imports_0","_createVNode","_ssrRenderClass","_unref","_ssrRenderList","_ssrInterpolate","_createTextVNode","_toDisplayString","_ssrRenderComponent","ErrorComponent","RootComponent"],"mappings":"","x_google_ignoreList":[3,4,5,6,7,8,9,10,12,13,15,16,18,19,20,23,24,25,30,31,32]}
{"version":3,"file":"server.mjs","sources":["../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Ffetch.mjs","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Fglobal-polyfills.mjs","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Fnuxt.config.mjs","../../../../node_modules/nuxt/dist/app/nuxt.js","../../../../node_modules/nuxt/dist/app/components/injections.js","../../../../node_modules/nuxt/dist/app/utils.js","../../../../node_modules/nuxt/dist/app/composables/router.js","../../../../node_modules/nuxt/dist/app/composables/error.js","../../../../node_modules/nuxt/dist/head/runtime/plugins/unhead.js","../../../../node_modules/nuxt/dist/pages/runtime/utils.js","../../../../node_modules/nuxt/dist/app/composables/manifest.js","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Froutes.mjs","../../../../node_modules/nuxt/dist/app/components/utils.js","../../../../node_modules/nuxt/dist/pages/runtime/router.options.js","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Frouter.options.mjs","../../../../node_modules/nuxt/dist/pages/runtime/validate.js","../../../../node_modules/nuxt/dist/app/middleware/manifest-route-rule.js","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Fmiddleware.mjs","../../../../node_modules/nuxt/dist/pages/runtime/plugins/router.js","../../../../node_modules/nuxt/dist/app/composables/payload.js","../../../../node_modules/nuxt/dist/app/plugins/revive-payload.server.js","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Fcomponents.plugin.mjs","../../../../virtual:nuxt:%2Fmnt%2Fshare%2Ftorsten%2FPrograms%2Fharheimertc%2F.nuxt%2Fplugins.server.mjs","../../../../node_modules/nuxt/dist/app/components/route-provider.js","../../../../node_modules/nuxt/dist/pages/runtime/page.js","../../../../node_modules/nuxt/dist/app/components/nuxt-link.js","../../../../assets/images/logos/Harheimer TC.svg","../../../../components/Navigation.vue","../../../../components/Footer.vue","../../../../app.vue","../../../../node_modules/nuxt/dist/app/components/nuxt-error-page.vue","../../../../node_modules/nuxt/dist/app/components/nuxt-root.vue","../../../../node_modules/nuxt/dist/app/entry.js"],"sourcesContent":null,"names":["plugin","provide","plugins","createH3Error","createRadixRouter","login1RYyYL8mxx17qR_nmdKvywxx7lKOLXMFu8pTLfvTLYwMeta","__executeAsync","createRouter","entry","router_GNCWhvtYfLTYRZZ135CdFAEjxdMexN0ixiUYCAN_tpw","useRoute","_ssrRenderAttrs","_mergeProps","_push","_parent","_ssrRenderAttr","_imports_0","_createVNode","_ssrRenderClass","_unref","_ssrRenderList","_ssrInterpolate","_createTextVNode","_toDisplayString","_ssrRenderComponent","ErrorComponent","RootComponent"],"mappings":"","x_google_ignoreList":[3,4,5,6,7,8,9,10,12,13,15,16,18,19,20,23,24,25,30,31,32]}

View File

@@ -1,12 +1,12 @@
const interopDefault = r => r.default || r || [];
const styles = {
"node_modules/nuxt/dist/app/entry.js": () => import('./entry-styles.CTgtYOBO.mjs').then(interopDefault),
"node_modules/nuxt/dist/app/entry.js": () => import('./entry-styles.C14gkgmD.mjs').then(interopDefault),
"node_modules/nuxt/dist/app/components/error-404.vue": () => import('./error-404-styles.B6OdZZsV.mjs').then(interopDefault),
"node_modules/nuxt/dist/app/components/error-500.vue": () => import('./error-500-styles.CKJvUd8J.mjs').then(interopDefault),
"components/Hero.vue": () => import('./Hero-styles.DnxJI8Rq.mjs').then(interopDefault),
"components/Hero.vue?vue&type=style&index=0&scoped=33d25311&lang.css": () => import('./Hero-styles.DnxJI8Rq.mjs').then(interopDefault),
"node_modules/nuxt/dist/app/components/error-404.vue?vue&type=style&index=0&scoped=06403dcb&lang.css": () => import('./error-404-styles.B6OdZZsV.mjs').then(interopDefault),
"node_modules/nuxt/dist/app/components/error-500.vue?vue&type=style&index=0&scoped=4b6f0a29&lang.css": () => import('./error-500-styles.CKJvUd8J.mjs').then(interopDefault)
"node_modules/nuxt/dist/app/components/error-500.vue?vue&type=style&index=0&scoped=4b6f0a29&lang.css": () => import('./error-500-styles.CKJvUd8J.mjs').then(interopDefault),
"components/Hero.vue": () => import('./Hero-styles.DnxJI8Rq.mjs').then(interopDefault),
"components/Hero.vue?vue&type=style&index=0&scoped=33d25311&lang.css": () => import('./Hero-styles.DnxJI8Rq.mjs').then(interopDefault)
};
export { styles as default };

View File

@@ -1 +1 @@
{"version":3,"file":"styles.mjs","sources":["../../../../.nuxt/dist/server/styles.mjs"],"sourcesContent":null,"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,IAAI;AAC9C,eAAe;AACf,EAAE,qCAAqC,EAAE,MAAM,OAAO,6BAAmC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AAC/G,EAAE,qDAAqD,EAAE,MAAM,OAAO,iCAAuC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AACnI,EAAE,qDAAqD,EAAE,MAAM,OAAO,iCAAuC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AACnI,EAAE,qBAAqB,EAAE,MAAM,OAAO,4BAAkC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AAC9F,EAAE,qEAAqE,EAAE,MAAM,OAAO,4BAAkC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AAC9I,EAAE,qGAAqG,EAAE,MAAM,OAAO,iCAAuC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AACnL,EAAE,qGAAqG,EAAE,MAAM,OAAO,iCAAuC,CAAC,CAAC,IAAI,CAAC,cAAc;AAClL;;;;"}
{"version":3,"file":"styles.mjs","sources":["../../../../.nuxt/dist/server/styles.mjs"],"sourcesContent":null,"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,IAAI;AAC9C,eAAe;AACf,EAAE,qCAAqC,EAAE,MAAM,OAAO,6BAAmC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AAC/G,EAAE,qDAAqD,EAAE,MAAM,OAAO,iCAAuC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AACnI,EAAE,qDAAqD,EAAE,MAAM,OAAO,iCAAuC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AACnI,EAAE,qGAAqG,EAAE,MAAM,OAAO,iCAAuC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AACnL,EAAE,qGAAqG,EAAE,MAAM,OAAO,iCAAuC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AACnL,EAAE,qBAAqB,EAAE,MAAM,OAAO,4BAAkC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AAC9F,EAAE,qEAAqE,EAAE,MAAM,OAAO,4BAAkC,CAAC,CAAC,IAAI,CAAC,cAAc;AAC7I;;;;"}