Compare commits
3 commits
274025ed33
...
21174fc1ad
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
21174fc1ad | ||
|
|
bbb30f7624 | ||
|
|
5ef2b2bfc0 |
9 changed files with 64 additions and 15 deletions
18
.dockerignore
Normal file
18
.dockerignore
Normal 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
4
.gitignore
vendored
|
|
@ -24,3 +24,7 @@ vite.config.ts.timestamp-*
|
|||
|
||||
*storybook.log
|
||||
storybook-static
|
||||
|
||||
tbm-m2-dev-90d717d5e58a.json
|
||||
env*
|
||||
|
||||
|
|
|
|||
19
Dockerfile
Normal file
19
Dockerfile
Normal 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
BIN
bun.lockb
Binary file not shown.
|
|
@ -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",
|
||||
|
|
|
|||
|
|
@ -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>
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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} */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue