mirror of
https://github.com/johndoe6345789/low-code-react-app-b.git
synced 2026-04-25 22:25:01 +00:00
Error: src/components/FeatureIdeaCloud.tsx(920,37): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/components/PlaywrightDesigner.tsx(105,37): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/components/StorybookDesigner.tsx(115,37): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/components/TemplateExplorer.tsx(40,31): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/components/TemplateExplorer.tsx(44,32): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/components/UnitTestDesigner.tsx(138,37): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-data.ts(23,19): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-data.ts(30,33): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-data.ts(40,24): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-data.ts(63,19): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-data.ts(71,22): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-data.ts(86,19): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-data.ts(91,33): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-data.ts(95,22): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-templates.ts(87,22): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-templates.ts(102,33): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-templates.ts(104,22): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-templates.ts(126,43): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-templates.ts(129,24): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/data/use-seed-templates.ts(131,24): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/json-ui/use-data-sources.ts(25,40): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/json-ui/use-data-sources.ts(47,20): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/orchestration/use-actions.ts(119,31): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/use-component-tree-loader.ts(22,19): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/use-component-tree-loader.ts(27,42): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/use-component-tree-loader.ts(31,22): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/use-component-tree-loader.ts(43,24): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/use-component-tree-loader.ts(60,17): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/use-component-tree-loader.ts(65,32): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/use-component-tree-loader.ts(90,19): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/hooks/use-component-tree-loader.ts(94,20): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/project-service.ts(21,39): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/project-service.ts(61,18): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/project-service.ts(63,38): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/project-service.ts(66,20): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/project-service.ts(74,36): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/project-service.ts(83,18): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/project-service.ts(85,38): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/project-service.ts(87,18): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/protected-llm-service.ts(39,31): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/unified-storage.ts(199,17): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/unified-storage.ts(200,25): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/unified-storage.ts(204,17): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/unified-storage.ts(205,18): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/unified-storage.ts(209,17): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/unified-storage.ts(210,18): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/unified-storage.ts(214,17): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/unified-storage.ts(215,25): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/unified-storage.ts(219,17): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/unified-storage.ts(220,34): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/unified-storage.ts(221,49): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: src/lib/unified-storage.ts(409,18): error TS2339: Property 'spark' does not exist on type 'Window & typeof globalThis'. Error: Process completed with exit code 2.
117 lines
3.6 KiB
TypeScript
117 lines
3.6 KiB
TypeScript
/// <reference path="../global.d.ts" />
|
||
|
||
import { useCallback, useState } from 'react'
|
||
import seedDataConfig from '@/config/seed-data.json'
|
||
|
||
export function useSeedData() {
|
||
console.log('[SEED] 🌱 useSeedData hook initializing')
|
||
const [isLoaded, setIsLoaded] = useState(false)
|
||
const [isLoading, setIsLoading] = useState(false)
|
||
|
||
const loadSeedData = useCallback(async () => {
|
||
console.log('[SEED] 🔍 loadSeedData called - isLoading:', isLoading, 'isLoaded:', isLoaded)
|
||
|
||
if (isLoading || isLoaded) {
|
||
console.log('[SEED] ⏭️ Skipping seed data load (already loading or loaded)')
|
||
return
|
||
}
|
||
|
||
console.log('[SEED] 🚀 Starting seed data load')
|
||
setIsLoading(true)
|
||
console.time('[SEED] Seed data load duration')
|
||
|
||
try {
|
||
console.log('[SEED] 🔌 Checking Spark KV availability')
|
||
if (!window.spark?.kv) {
|
||
console.warn('[SEED] ⚠️ Spark KV not available, skipping seed data')
|
||
return
|
||
}
|
||
console.log('[SEED] ✅ Spark KV is available')
|
||
|
||
console.log('[SEED] 📋 Fetching existing keys from KV store')
|
||
const keys = await window.spark.kv.keys()
|
||
console.log('[SEED] 📊 Found', keys.length, 'existing keys:', keys)
|
||
|
||
console.log('[SEED] 📦 Seed data config entries:', Object.keys(seedDataConfig).length)
|
||
let seededCount = 0
|
||
let skippedCount = 0
|
||
|
||
for (const [key, value] of Object.entries(seedDataConfig)) {
|
||
if (!keys.includes(key)) {
|
||
console.log('[SEED] ➕ Seeding key:', key)
|
||
await window.spark.kv.set(key, value)
|
||
seededCount++
|
||
} else {
|
||
console.log('[SEED] ⏭️ Skipping existing key:', key)
|
||
skippedCount++
|
||
}
|
||
}
|
||
|
||
console.log('[SEED] ✅ Seed data load complete - seeded:', seededCount, 'skipped:', skippedCount)
|
||
setIsLoaded(true)
|
||
} catch (error) {
|
||
console.error('[SEED] ❌ Failed to load seed data:', error)
|
||
setIsLoaded(true)
|
||
} finally {
|
||
setIsLoading(false)
|
||
console.timeEnd('[SEED] Seed data load duration')
|
||
}
|
||
}, [isLoading, isLoaded])
|
||
|
||
const resetSeedData = useCallback(async () => {
|
||
console.log('[SEED] 🔄 Resetting seed data')
|
||
setIsLoading(true)
|
||
try {
|
||
if (!window.spark?.kv) {
|
||
console.warn('[SEED] ⚠️ Spark KV not available')
|
||
return
|
||
}
|
||
|
||
console.log('[SEED] 🔄 Overwriting all seed data keys')
|
||
for (const [key, value] of Object.entries(seedDataConfig)) {
|
||
console.log('[SEED] 📝 Setting key:', key)
|
||
await window.spark.kv.set(key, value)
|
||
}
|
||
console.log('[SEED] ✅ Seed data reset complete')
|
||
setIsLoaded(true)
|
||
} catch (error) {
|
||
console.error('[SEED] ❌ Failed to reset seed data:', error)
|
||
} finally {
|
||
setIsLoading(false)
|
||
}
|
||
}, [])
|
||
|
||
const clearAllData = useCallback(async () => {
|
||
console.log('[SEED] 🗑️ Clearing all data')
|
||
setIsLoading(true)
|
||
try {
|
||
if (!window.spark?.kv) {
|
||
console.warn('[SEED] ⚠️ Spark KV not available')
|
||
return
|
||
}
|
||
|
||
const keys = await window.spark.kv.keys()
|
||
console.log('[SEED] 📋 Deleting', keys.length, 'keys')
|
||
for (const key of keys) {
|
||
console.log('[SEED] 🗑️ Deleting key:', key)
|
||
await window.spark.kv.delete(key)
|
||
}
|
||
console.log('[SEED] ✅ All data cleared')
|
||
setIsLoaded(false)
|
||
} catch (error) {
|
||
console.error('[SEED] ❌ Failed to clear data:', error)
|
||
} finally {
|
||
setIsLoading(false)
|
||
}
|
||
}, [])
|
||
|
||
console.log('[SEED] 📤 Returning seed data hook methods')
|
||
return {
|
||
isLoaded,
|
||
isLoading,
|
||
loadSeedData,
|
||
resetSeedData,
|
||
clearAllData,
|
||
}
|
||
}
|