Compare commits

...

3 commits

Author SHA1 Message Date
pakintada@gmail.com
21174fc1ad update: deploy
- add deploy dockerfile, tests ok!

Signed-off-by: pakintada@gmail.com <Pakin>
2026-04-09 11:37:50 +07:00
pakintada@gmail.com
bbb30f7624 fix: logout button, login not change layout
- logout button can now click on dropdown, not only on logout text
- login not refresh, set cookie should resolve

Signed-off-by: pakintada@gmail.com <Pakin>
2026-04-08 14:38:22 +07:00
pakintada@gmail.com
5ef2b2bfc0 disable domain check temporary
Signed-off-by: pakintada@gmail.com <Pakin>
2026-04-07 15:42:58 +07:00
9 changed files with 64 additions and 15 deletions

18
.dockerignore Normal file
View file

@ -0,0 +1,18 @@
node_modules
Dockerfile*
docker-compose*
.dockerignore
.git
.gitignore
README.md
LICENSE
.vscode
Makefile
helm-charts
.editorconfig
.idea
coverage*
.svelte-kit
.storybook
tbm-m2-dev-90d717d5e58a.json
env*

4
.gitignore vendored
View file

@ -24,3 +24,7 @@ vite.config.ts.timestamp-*
*storybook.log
storybook-static
tbm-m2-dev-90d717d5e58a.json
env*

19
Dockerfile Normal file
View file

@ -0,0 +1,19 @@
# Stage 1: Build
FROM oven/bun:latest AS builder
WORKDIR /app
COPY . .
RUN bun install --frozen-lockfile
RUN bun run build
# Stage 2: Production Runtime
FROM oven/bun:latest
WORKDIR /app
# Copy only necessary files from the builder
COPY --from=builder /app/build ./build
COPY --from=builder /app/package.json .
ENV PORT=3167
EXPOSE 3167
USER bun
# Run the application from the build directory
CMD ["bun", "build/index.js"]

BIN
bun.lockb

Binary file not shown.

View file

@ -27,6 +27,7 @@
"@storybook/addon-vitest": "^10.2.0",
"@storybook/sveltekit": "^10.2.0",
"@sveltejs/adapter-auto": "^7.0.0",
"@sveltejs/adapter-node": "^5.5.4",
"@sveltejs/kit": "^2.50.1",
"@sveltejs/vite-plugin-svelte": "^6.2.4",
"@tailwindcss/forms": "^0.5.11",
@ -44,6 +45,7 @@
"prettier-plugin-tailwindcss": "^0.7.2",
"storybook": "^10.2.0",
"svelte": "^5.48.0",
"svelte-adapter-bun": "^1.0.1",
"svelte-check": "^4.3.5",
"svelte-sonner": "^1.0.7",
"tailwind-merge": "^3.4.0",

View file

@ -103,7 +103,7 @@
</DropdownMenu.Item>
{/each} -->
<DropdownMenu.Separator />
<DropdownMenu.Item class="gap-2 p-2">
<DropdownMenu.Item class="gap-2 p-2" onclick={logout}>
<div class="flex size-6 items-center justify-center rounded-md border bg-transparent">
<LogOutIcon class="size-4" />
</div>

View file

@ -1,17 +1,15 @@
import { doc, getDoc } from "firebase/firestore";
import { db } from "../client/firebase";
import { doc, getDoc } from 'firebase/firestore';
import { db } from '../client/firebase';
export async function checkAllowAccess(userDomain: string): Promise<boolean> {
const docRef = doc(db, 'whitelist', 'allowedDomains');
const snapshot = await getDoc(docRef);
const docRef = doc(db, "whitelist", "allowedDomains");
const snapshot = await getDoc(docRef);
if (snapshot.exists()) {
let domains = snapshot.data();
// console.log(`domains: ${JSON.stringify(domains)}`);
return domains['account_email'].includes(userDomain);
}
if(snapshot.exists()){
let domains = snapshot.data();
// console.log(`domains: ${JSON.stringify(domains)}`);
return domains["account_email"].includes(userDomain);
}
return false;
};
return true;
}

View file

@ -3,6 +3,9 @@
import { page } from '$app/state';
import { env } from '$env/dynamic/public';
import { browser } from '$app/environment';
import { setCookieOnNonBrowser } from '$lib/helpers/cookie';
import { asset } from '$app/paths';
import TaobinLogo from '$lib/assets/logo.svelte';
import {
@ -59,6 +62,11 @@
//
console.log('login success!');
if (browser && 'cookieStore' in window) await cookieStore.set('logged_in', 'true');
else {
setCookieOnNonBrowser('logged_in', 'true');
}
goto('/entry');
}
} catch (error: any) {

View file

@ -1,4 +1,4 @@
import adapter from '@sveltejs/adapter-auto';
import adapter from '@sveltejs/adapter-node';
import { vitePreprocess } from '@sveltejs/vite-plugin-svelte';
/** @type {import('@sveltejs/kit').Config} */