-2
api.md
-2
api.md
+2
-2
lexicons/fs.json
+2
-2
lexicons/fs.json
+123
public/editor/editor.tsx
+123
public/editor/editor.tsx
···
···+className="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"+className="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"+className="w-full bg-blue-600 hover:bg-blue-700 disabled:bg-gray-400 text-white font-semibold py-2 px-4 rounded-md transition-colors"
+12
public/editor/index.html
+12
public/editor/index.html
···
···
+4
-21
src/index.ts
+4
-21
src/index.ts
······
······
+6
-4
src/lexicon/lexicons.ts
+6
-4
src/lexicon/lexicons.ts
+2
-2
src/lexicon/types/place/wisp/fs.ts
+2
-2
src/lexicon/types/place/wisp/fs.ts
+37
src/lib/wisp-auth.ts
+37
src/lib/wisp-auth.ts
···
···
+203
src/lib/wisp-utils.ts
+203
src/lib/wisp-utils.ts
···
···+console.log(`🔄 Updating file blobs: ${uploadResults.length} results for ${filePaths.length} paths`);
+25
src/routes/auth.ts
+25
src/routes/auth.ts
···
···
+230
src/routes/wisp.ts
+230
src/routes/wisp.ts
···
···+console.log('🚀 Starting upload process', { siteName, fileCount: Array.isArray(files) ? files.length : 1 });+console.log(`📄 Processing file ${i + 1}/${fileArray.length}: ${file.name} (${file.size} bytes, ${file.type})`);+console.log(`⏭️ Skipping large file: ${file.name} (${(file.size / 1024 / 1024).toFixed(2)}MB > 100MB limit)`);+console.log(`📊 Filtered to ${uploadedFiles.length} files from ${fileArray.length} total files`);+throw new Error(`Total upload size ${(totalSize / 1024 / 1024).toFixed(2)}MB exceeds 300MB limit`);+throw new Error('No valid web files found to upload. Allowed types: HTML, CSS, JS, images, fonts, PDFs, and other web assets.');+throw new Error(`Failed to upload files: ${error instanceof Error ? error.message : 'Unknown error'}`);