chore: remove dist artifacts, untrack .env, add vite-env types, ignore package-lock
This commit is contained in:
parent
3472f203b9
commit
5e5aad54cb
17
.env
17
.env
@ -1,17 +0,0 @@
|
|||||||
PORT_FRONTEND=5173
|
|
||||||
PORT_FRONTEND_HMR=3002
|
|
||||||
PORT_API=800
|
|
||||||
PORT_SUPABASE=8000
|
|
||||||
|
|
||||||
VITE_PORT_FRONTEND=5173
|
|
||||||
VITE_PORT_FRONTEND_HMR=5173
|
|
||||||
|
|
||||||
VITE_APP_NAME=Classroom Copilot
|
|
||||||
VITE_SUPER_ADMIN_EMAIL=admin@classroomcopilot.ai
|
|
||||||
VITE_DEV=true
|
|
||||||
VITE_FRONTEND_SITE_URL=https://app.classroomcopilot.ai
|
|
||||||
VITE_APP_HMR_URL=https://app.classroomcopilot.ai
|
|
||||||
VITE_SUPABASE_URL=https://supa.classroomcopilot.ai
|
|
||||||
VITE_SUPABASE_ANON_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZS1kZW1vIiwicm9sZSI6ImFub24iLCJleHAiOjE5ODM4MTI5OTZ9.CRXP1A7WOeoJeXxjNni43kdQwgnWNReilDMblYTn_I0
|
|
||||||
VITE_API_URL=https://api.classroomcopilot.ai
|
|
||||||
VITE_API_BASE=https://api.classroomcopilot.ai
|
|
||||||
7
.gitignore
vendored
7
.gitignore
vendored
@ -1,3 +1,8 @@
|
|||||||
node_modules
|
node_modules
|
||||||
|
|
||||||
.env
|
.env
|
||||||
|
# Build output
|
||||||
|
dist/
|
||||||
|
|
||||||
|
# Lock files - clean install
|
||||||
|
package-lock.json
|
||||||
|
|||||||
59
dist/.vite/manifest.json
vendored
59
dist/.vite/manifest.json
vendored
@ -1,59 +0,0 @@
|
|||||||
{
|
|
||||||
"_vendor-mui.js": {
|
|
||||||
"file": "assets/vendor-mui.js",
|
|
||||||
"name": "vendor-mui",
|
|
||||||
"imports": [
|
|
||||||
"_vendor-react.js"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"_vendor-react.js": {
|
|
||||||
"file": "assets/vendor-react.js",
|
|
||||||
"name": "vendor-react"
|
|
||||||
},
|
|
||||||
"_vendor-tldraw.js": {
|
|
||||||
"file": "assets/vendor-tldraw.js",
|
|
||||||
"name": "vendor-tldraw",
|
|
||||||
"imports": [
|
|
||||||
"_vendor-react.js",
|
|
||||||
"_vendor-mui.js"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"_vendor-utils.js": {
|
|
||||||
"file": "assets/vendor-utils.js",
|
|
||||||
"name": "vendor-utils",
|
|
||||||
"imports": [
|
|
||||||
"_vendor-react.js"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"index.html": {
|
|
||||||
"file": "assets/index-CmYeIoD0.js",
|
|
||||||
"name": "index",
|
|
||||||
"src": "index.html",
|
|
||||||
"isEntry": true,
|
|
||||||
"imports": [
|
|
||||||
"_vendor-mui.js",
|
|
||||||
"_vendor-react.js",
|
|
||||||
"_vendor-tldraw.js",
|
|
||||||
"_vendor-utils.js"
|
|
||||||
],
|
|
||||||
"dynamicImports": [
|
|
||||||
"node_modules/pdfjs-dist/build/pdf.mjs"
|
|
||||||
],
|
|
||||||
"css": [
|
|
||||||
"assets/index.css"
|
|
||||||
],
|
|
||||||
"assets": [
|
|
||||||
"assets/pdf.worker.min.mjs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"node_modules/pdfjs-dist/build/pdf.mjs": {
|
|
||||||
"file": "assets/pdf.js",
|
|
||||||
"name": "pdf",
|
|
||||||
"src": "node_modules/pdfjs-dist/build/pdf.mjs",
|
|
||||||
"isDynamicEntry": true
|
|
||||||
},
|
|
||||||
"node_modules/pdfjs-dist/build/pdf.worker.min.mjs": {
|
|
||||||
"file": "assets/pdf.worker.min.mjs",
|
|
||||||
"src": "node_modules/pdfjs-dist/build/pdf.worker.min.mjs"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
68827
dist/assets/index-CmYeIoD0.js
vendored
68827
dist/assets/index-CmYeIoD0.js
vendored
File diff suppressed because one or more lines are too long
1
dist/assets/index-CmYeIoD0.js.map
vendored
1
dist/assets/index-CmYeIoD0.js.map
vendored
File diff suppressed because one or more lines are too long
11178
dist/assets/index.css
vendored
11178
dist/assets/index.css
vendored
File diff suppressed because it is too large
Load Diff
21232
dist/assets/pdf.js
vendored
21232
dist/assets/pdf.js
vendored
File diff suppressed because it is too large
Load Diff
1
dist/assets/pdf.js.map
vendored
1
dist/assets/pdf.js.map
vendored
File diff suppressed because one or more lines are too long
21
dist/assets/pdf.worker.min.mjs
vendored
21
dist/assets/pdf.worker.min.mjs
vendored
File diff suppressed because one or more lines are too long
19850
dist/assets/vendor-mui.js
vendored
19850
dist/assets/vendor-mui.js
vendored
File diff suppressed because it is too large
Load Diff
1
dist/assets/vendor-mui.js.map
vendored
1
dist/assets/vendor-mui.js.map
vendored
File diff suppressed because one or more lines are too long
1901
dist/assets/vendor-react.js
vendored
1901
dist/assets/vendor-react.js
vendored
File diff suppressed because it is too large
Load Diff
1
dist/assets/vendor-react.js.map
vendored
1
dist/assets/vendor-react.js.map
vendored
File diff suppressed because one or more lines are too long
68796
dist/assets/vendor-tldraw.js
vendored
68796
dist/assets/vendor-tldraw.js
vendored
File diff suppressed because one or more lines are too long
1
dist/assets/vendor-tldraw.js.map
vendored
1
dist/assets/vendor-tldraw.js.map
vendored
File diff suppressed because one or more lines are too long
12264
dist/assets/vendor-utils.js
vendored
12264
dist/assets/vendor-utils.js
vendored
File diff suppressed because it is too large
Load Diff
1
dist/assets/vendor-utils.js.map
vendored
1
dist/assets/vendor-utils.js.map
vendored
File diff suppressed because one or more lines are too long
12
dist/audioWorklet.js
vendored
12
dist/audioWorklet.js
vendored
@ -1,12 +0,0 @@
|
|||||||
class AudioProcessor extends AudioWorkletProcessor {
|
|
||||||
process(inputs) {
|
|
||||||
const input = inputs[0];
|
|
||||||
if (input.length > 0) {
|
|
||||||
const audioData = input[0];
|
|
||||||
this.port.postMessage(audioData);
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
registerProcessor('audio-processor', AudioProcessor);
|
|
||||||
BIN
dist/favicon.ico
vendored
BIN
dist/favicon.ico
vendored
Binary file not shown.
|
Before Width: | Height: | Size: 15 KiB |
BIN
dist/icons/icon-192x192-maskable.png
vendored
BIN
dist/icons/icon-192x192-maskable.png
vendored
Binary file not shown.
|
Before Width: | Height: | Size: 53 KiB |
BIN
dist/icons/icon-192x192.png
vendored
BIN
dist/icons/icon-192x192.png
vendored
Binary file not shown.
|
Before Width: | Height: | Size: 53 KiB |
BIN
dist/icons/icon-512x512-maskable.png
vendored
BIN
dist/icons/icon-512x512-maskable.png
vendored
Binary file not shown.
|
Before Width: | Height: | Size: 259 KiB |
BIN
dist/icons/icon-512x512.png
vendored
BIN
dist/icons/icon-512x512.png
vendored
Binary file not shown.
|
Before Width: | Height: | Size: 259 KiB |
21
dist/icons/sticker-tool.svg
vendored
21
dist/icons/sticker-tool.svg
vendored
@ -1,21 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<!-- Sticker outline -->
|
|
||||||
<path d="M20 12C20 16.4183 16.4183 20 12 20C7.58172 20 4 16.4183 4 12C4 7.58172 7.58172 4 12 4C16.4183 4 20 7.58172 20 12Z"
|
|
||||||
stroke="currentColor"
|
|
||||||
stroke-width="2"
|
|
||||||
stroke-linecap="round"
|
|
||||||
stroke-linejoin="round"
|
|
||||||
/>
|
|
||||||
<!-- Peeling corner effect -->
|
|
||||||
<path d="M16 8C16 10.2091 14.2091 12 12 12"
|
|
||||||
stroke="currentColor"
|
|
||||||
stroke-width="2"
|
|
||||||
stroke-linecap="round"
|
|
||||||
stroke-linejoin="round"
|
|
||||||
/>
|
|
||||||
<!-- Star decoration -->
|
|
||||||
<path d="M12 8L13 9L12 10L11 9L12 8Z"
|
|
||||||
fill="currentColor"
|
|
||||||
/>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 689 B |
18
dist/index.html
vendored
18
dist/index.html
vendored
@ -1,18 +0,0 @@
|
|||||||
<!doctype html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8" />
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
||||||
<title>Classroom Copilot</title>
|
|
||||||
<link rel="icon" type="image/x-icon" href="/favicon.ico">
|
|
||||||
<script type="module" crossorigin src="/assets/index-CmYeIoD0.js"></script>
|
|
||||||
<link rel="modulepreload" crossorigin href="/assets/vendor-react.js">
|
|
||||||
<link rel="modulepreload" crossorigin href="/assets/vendor-mui.js">
|
|
||||||
<link rel="modulepreload" crossorigin href="/assets/vendor-tldraw.js">
|
|
||||||
<link rel="modulepreload" crossorigin href="/assets/vendor-utils.js">
|
|
||||||
<link rel="stylesheet" crossorigin href="/assets/index.css">
|
|
||||||
<link rel="manifest" href="/manifest.webmanifest"><script id="vite-plugin-pwa:register-sw" src="/registerSW.js"></script></head>
|
|
||||||
<body>
|
|
||||||
<div id="root"></div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
1
dist/manifest.webmanifest
vendored
1
dist/manifest.webmanifest
vendored
@ -1 +0,0 @@
|
|||||||
{"name":"ClassroomCopilot","short_name":"CC","start_url":"/","display":"fullscreen","background_color":"#ffffff","theme_color":"#000000","lang":"en","scope":"/","icons":[{"src":"/icons/icon-192x192.png","sizes":"192x192","type":"image/png","purpose":"any"},{"src":"/icons/icon-512x512.png","sizes":"512x512","type":"image/png","purpose":"any"},{"src":"/icons/icon-192x192-maskable.png","sizes":"192x192","type":"image/png","purpose":"maskable"},{"src":"/icons/icon-512x512-maskable.png","sizes":"512x512","type":"image/png","purpose":"maskable"}]}
|
|
||||||
70
dist/offline.html
vendored
70
dist/offline.html
vendored
@ -1,70 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
||||||
<title>Offline - Classroom Copilot</title>
|
|
||||||
<style>
|
|
||||||
body {
|
|
||||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
|
|
||||||
margin: 0;
|
|
||||||
padding: 20px;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
min-height: 100vh;
|
|
||||||
background-color: #f5f5f5;
|
|
||||||
color: #333;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.container {
|
|
||||||
max-width: 600px;
|
|
||||||
padding: 40px;
|
|
||||||
background: white;
|
|
||||||
border-radius: 8px;
|
|
||||||
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
|
|
||||||
}
|
|
||||||
h1 {
|
|
||||||
color: #1a73e8;
|
|
||||||
margin-bottom: 20px;
|
|
||||||
}
|
|
||||||
p {
|
|
||||||
line-height: 1.6;
|
|
||||||
margin-bottom: 20px;
|
|
||||||
}
|
|
||||||
.retry-button {
|
|
||||||
background-color: #1a73e8;
|
|
||||||
color: white;
|
|
||||||
border: none;
|
|
||||||
padding: 12px 24px;
|
|
||||||
border-radius: 4px;
|
|
||||||
cursor: pointer;
|
|
||||||
font-size: 16px;
|
|
||||||
transition: background-color 0.2s;
|
|
||||||
}
|
|
||||||
.retry-button:hover {
|
|
||||||
background-color: #1557b0;
|
|
||||||
}
|
|
||||||
.icon {
|
|
||||||
font-size: 64px;
|
|
||||||
margin-bottom: 20px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div class="container">
|
|
||||||
<div class="icon">📡</div>
|
|
||||||
<h1>You're Offline</h1>
|
|
||||||
<p>It looks like you've lost your internet connection. Don't worry - any work you've done has been saved locally.</p>
|
|
||||||
<p>Please check your connection and try again.</p>
|
|
||||||
<button class="retry-button" onclick="window.location.reload()">Try Again</button>
|
|
||||||
</div>
|
|
||||||
<script>
|
|
||||||
// Check if we're back online
|
|
||||||
window.addEventListener('online', () => {
|
|
||||||
window.location.reload();
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
1
dist/registerSW.js
vendored
1
dist/registerSW.js
vendored
@ -1 +0,0 @@
|
|||||||
if('serviceWorker' in navigator) {window.addEventListener('load', () => {navigator.serviceWorker.register('/sw.js', { scope: '/' })})}
|
|
||||||
3889
dist/sw.js
vendored
3889
dist/sw.js
vendored
File diff suppressed because it is too large
Load Diff
1
dist/sw.js.map
vendored
1
dist/sw.js.map
vendored
File diff suppressed because one or more lines are too long
16525
package-lock.json
generated
16525
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
48
src/vite-env.d.ts
vendored
Normal file
48
src/vite-env.d.ts
vendored
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
/// <reference types="vite/client" />
|
||||||
|
|
||||||
|
interface ImportMetaEnv {
|
||||||
|
// App Information
|
||||||
|
readonly VITE_APP_NAME: string
|
||||||
|
readonly VITE_APP_VERSION: string
|
||||||
|
readonly VITE_APP_DESCRIPTION: string
|
||||||
|
readonly VITE_APP_AUTHOR: string
|
||||||
|
|
||||||
|
// Super Admin Email
|
||||||
|
readonly VITE_SUPER_ADMIN_EMAIL: string
|
||||||
|
|
||||||
|
// Supabase
|
||||||
|
readonly VITE_SUPABASE_PUBLIC_URL: string
|
||||||
|
readonly VITE_SUPABASE_URL: string
|
||||||
|
readonly VITE_SUPABASE_REDIRECT_URL: string
|
||||||
|
readonly VITE_SUPABASE_ANON_KEY: string
|
||||||
|
|
||||||
|
// Site URL
|
||||||
|
readonly VITE_FRONTEND_SITE_URL: string
|
||||||
|
|
||||||
|
// Firebase Settings
|
||||||
|
readonly VITE_REACT_APP_API_KEY: string
|
||||||
|
readonly VITE_REACT_APP_AUTH_DOMAIN: string
|
||||||
|
readonly VITE_REACT_APP_PROJECT_ID: string
|
||||||
|
readonly VITE_REACT_APP_STORAGE_BUCKET: string
|
||||||
|
readonly VITE_REACT_APP_MESSAGING_SENDER_ID: string
|
||||||
|
readonly VITE_REACT_APP_APP_ID: string
|
||||||
|
|
||||||
|
// Supabase Settings
|
||||||
|
|
||||||
|
// Microsoft API Settings
|
||||||
|
readonly VITE_MICROSOFT_CLIENT_ID: string
|
||||||
|
readonly VITE_MICROSOFT_CLIENT_SECRET_DESC: string
|
||||||
|
readonly VITE_MICROSOFT_CLIENT_SECRET_ID: string
|
||||||
|
readonly VITE_MICROSOFT_CLIENT_SECRET: string
|
||||||
|
readonly VITE_MICROSOFT_TENANT_ID: string
|
||||||
|
|
||||||
|
// API Base
|
||||||
|
readonly VITE_API_BASE: string
|
||||||
|
|
||||||
|
// Search URL
|
||||||
|
readonly VITE_SEARCH_URL: string
|
||||||
|
}
|
||||||
|
|
||||||
|
interface ImportMeta {
|
||||||
|
readonly env: ImportMetaEnv
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user