Fix TypeScript build errors for Docker deployment

- Add ImportMeta and ImportMetaEnv type declarations to env.d.ts
- Fix typo: INDEEHHUB_API → INDEEDHUB_API in indeeHubApi.ts
- Fix nostr-tools Filter type usage in subscribeToContent
- Remove unused Filter import and userPrivkey parameter
- Increase Workbox maximumFileSizeToCacheInBytes to 10MB for large images
- Build now succeeds with 43 precached entries (81.98 MB)

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Dorian
2026-02-02 23:47:45 +00:00
parent 3f3849e76f
commit 93403375d3
5 changed files with 21 additions and 5 deletions

14
src/env.d.ts vendored
View File

@@ -1,5 +1,19 @@
/// <reference types="vite/client" />
declare module '*.vue' {
import type { DefineComponent } from 'vue'
const component: DefineComponent<{}, {}, any>
export default component
}
interface ImportMetaEnv {
readonly BASE_URL: string
readonly MODE: string
readonly DEV: boolean
readonly PROD: boolean
readonly SSR: boolean
}
interface ImportMeta {
readonly env: ImportMetaEnv
}

View File

@@ -28,7 +28,7 @@ export interface IndeeHubFilm {
export async function fetchFilms(): Promise<IndeeHubFilm[]> {
try {
// TODO: Add authentication headers (NIP-98 for Nostr auth)
const response = await fetch(`${INDEEHHUB_API}/screening-room?type=film`, {
const response = await fetch(`${INDEEDHUB_API}/screening-room?type=film`, {
headers: {
// Add your auth headers here
// 'Authorization': 'Bearer ...'
@@ -73,7 +73,7 @@ function getMockFilms(): IndeeHubFilm[] {
*/
export async function fetchFeaturedContent(): Promise<IndeeHubFilm | null> {
try {
const response = await fetch(`${INDEEHHUB_API}/featured`)
const response = await fetch(`${INDEEDHUB_API}/featured`)
if (!response.ok) return null
return await response.json()
} catch (error) {
@@ -87,7 +87,7 @@ export async function fetchFeaturedContent(): Promise<IndeeHubFilm | null> {
*/
export async function fetchFilmsByCategory(category: string): Promise<IndeeHubFilm[]> {
try {
const response = await fetch(`${INDEEHHUB_API}/films?category=${category}`)
const response = await fetch(`${INDEEDHUB_API}/films?category=${category}`)
if (!response.ok) return []
return await response.json()
} catch (error) {

View File

@@ -70,7 +70,7 @@ class NostrService {
) {
const sub = this.pool.subscribeMany(
this.relays,
[{ kinds, limit: 10 }],
{ kinds, limit: 10 },
{
onevent(event) {
callback(event)
@@ -84,7 +84,7 @@ class NostrService {
/**
* Publish a view/watch event
*/
async publishView(videoEventId: string, userPrivkey: string) {
async publishView(videoEventId: string) {
// TODO: Implement NIP-XX for view tracking
console.log('Publishing view for:', videoEventId)
}