feat: adiciona Dockerfile e corrige header
parent
4f31f091e6
commit
e23949103a
|
@ -0,0 +1,26 @@
|
|||
FROM node:22-alpine AS build
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY package*-json yarn.lock ./
|
||||
|
||||
RUN yarn install --frozen-lockfile
|
||||
|
||||
COPY . .
|
||||
|
||||
ARG VITE_URL_BACKEND
|
||||
ENV VITE_URL_BACKEND=$VITE_URL_BACKEND
|
||||
|
||||
RUN yarn build
|
||||
|
||||
FROM node:22-alpine AS production
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
RUN yarn global add serve
|
||||
|
||||
COPY --from=build /app/dist /app/dist
|
||||
|
||||
EXPOSE 3333
|
||||
|
||||
CMD ["serve", "-s", "dist", "-l", "3333"]
|
26
index.html
26
index.html
|
@ -1,16 +1,14 @@
|
|||
<!doctype html>
|
||||
<!DOCTYPE html>
|
||||
<html lang="pt-BR" data-theme="dark">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" type="image/png" href="/src/assets/HIT-Logo_Naranja_24mm.png" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Omnihit Manager</title>
|
||||
</head>
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Vite + Vue + TS</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
<script type="module" src="/src/main.ts"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
<script type="module" src="/src/main.ts"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 944 B |
Binary file not shown.
After Width: | Height: | Size: 3.2 KiB |
|
@ -20,9 +20,9 @@ const hasSessionAlerts = computed(() => reminderSessions.value);
|
|||
<div class="border-b border-border bg-cardBg">
|
||||
<div class="p-6">
|
||||
<div class="flex justify-between items-center">
|
||||
<div class="flex items-center gap-2">
|
||||
<h1 class="text-2xl font-bold text-accent">SESSÕES</h1>
|
||||
<div v-if="hasSessionAlerts" class="w-2 h-2 bg-red-500 rounded-full"></div>
|
||||
<div class="flex items-center gap-4">
|
||||
<img src="../assets/HIT-Logo_Naranja_78mm.png" alt="hit-logo" width="64" />
|
||||
<h1 class="text-2xl font-bold text-accent">Omnihit Manager</h1>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -36,7 +36,7 @@ const hasSessionAlerts = computed(() => reminderSessions.value);
|
|||
<!-- Conteúdo principal -->
|
||||
<div v-else class="p-6">
|
||||
<!-- Grid de sessões -->
|
||||
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
|
||||
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6">
|
||||
<SessionCard
|
||||
v-for="(session, index) in sessions"
|
||||
:key="`session_${index}`"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import { defineStore } from 'pinia';
|
||||
import type { Application, Session } from '../props/websocketResponse';
|
||||
import { computed, reactive, ref } from 'vue';
|
||||
import { ref } from 'vue';
|
||||
|
||||
export const useStore = defineStore('application', () => {
|
||||
const applications = ref<Application[]>([]);
|
||||
|
|
Loading…
Reference in New Issue