rebreak-monorepo/graphify-out/.graphify_chunk_10.json
2026-06-01 04:44:19 +02:00

2 lines
16 KiB
JSON

{"nodes":[{"id":"hooks_usepushtokenregistration_hook","label":"usePushTokenRegistration hook","file_type":"code","source_file":"apps/rebreak-native/hooks/usePushTokenRegistration.ts","source_location":"line 108","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_usepushtokenregistration_registerfn","label":"registerPushTokenWithBackend function","file_type":"code","source_file":"apps/rebreak-native/hooks/usePushTokenRegistration.ts","source_location":"line 23","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_usepushtokenregistration_unregisterfn","label":"unregisterPushTokenFromBackend function","file_type":"code","source_file":"apps/rebreak-native/hooks/usePushTokenRegistration.ts","source_location":"line 90","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_usechatrealtime_dmrealtime","label":"useDmRealtime hook","file_type":"code","source_file":"apps/rebreak-native/hooks/useChatRealtime.ts","source_location":"line 11","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_usechatrealtime_roomrealtime","label":"useRoomRealtime hook","file_type":"code","source_file":"apps/rebreak-native/hooks/useChatRealtime.ts","source_location":"line 99","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_uselastseenheartbeat_hook","label":"useLastSeenHeartbeat hook","file_type":"code","source_file":"apps/rebreak-native/hooks/useLastSeenHeartbeat.ts","source_location":"line 10","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_usecommunityrealtime_hook","label":"useCommunityRealtime hook","file_type":"code","source_file":"apps/rebreak-native/hooks/useCommunityRealtime.ts","source_location":"line 17","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_usecommunityrealtime_patchfn","label":"patchPostInAllQueries helper","file_type":"code","source_file":"apps/rebreak-native/hooks/useCommunityRealtime.ts","source_location":"line 136","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_useprotectionstate_hook","label":"useProtectionState hook","file_type":"code","source_file":"apps/rebreak-native/hooks/useProtectionState.ts","source_location":"line 55","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_usekeyboardheight_hook","label":"useKeyboardHeight hook","file_type":"code","source_file":"apps/rebreak-native/hooks/useKeyboardHeight.ts","source_location":"line 14","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_usemailstats_hook","label":"useMailStats hook","file_type":"code","source_file":"apps/rebreak-native/hooks/useMailStats.ts","source_location":"line 131","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_usemailstats_connectionstats","label":"useMailConnectionStats hook","file_type":"code","source_file":"apps/rebreak-native/hooks/useMailStats.ts","source_location":"line 42","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_usefollowing_hook","label":"useFollowing hook","file_type":"code","source_file":"apps/rebreak-native/hooks/useFollowing.ts","source_location":"line 5","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_usemailinterval_hook","label":"useMailInterval hook","file_type":"code","source_file":"apps/rebreak-native/hooks/useMailInterval.ts","source_location":"line 8","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"hooks_usecuratedsuggest_hook","label":"useCuratedSuggest hook","file_type":"code","source_file":"apps/rebreak-native/hooks/useCuratedSuggest.ts","source_location":"line 11","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"android_mainactivity","label":"MainActivity (Android)","file_type":"code","source_file":"apps/rebreak-native/android/app/src/main/java/org/rebreak/app/MainActivity.kt","source_location":"line 14","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"android_mainapplication","label":"MainApplication (Android)","file_type":"code","source_file":"apps/rebreak-native/android/app/src/main/java/org/rebreak/app/MainApplication.kt","source_location":"line 19","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"scripts_playsubmit","label":"play-submit.mjs (Google Play upload script)","file_type":"code","source_file":"apps/rebreak-native/scripts/play-submit.mjs","source_location":null,"source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"scripts_buildiosclean","label":"build-ios-clean.sh","file_type":"code","source_file":"apps/rebreak-native/scripts/build-ios-clean.sh","source_location":null,"source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"lib_protection","label":"protection orchestration lib","file_type":"code","source_file":"apps/rebreak-native/lib/protection.ts","source_location":null,"source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"lib_protection_protectionstate","label":"ProtectionState type","file_type":"code","source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 57","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"lib_protection_protectionphase","label":"ProtectionPhase type","file_type":"code","source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 42","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"lib_protection_cooldownstate","label":"CooldownState type","file_type":"code","source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 50","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"lib_protection_familycontrolsflag","label":"FAMILY_CONTROLS_AVAILABLE feature flag","file_type":"code","source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 37","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"lib_protection_getcombinedstate","label":"getCombinedState method","file_type":"code","source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 447","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"lib_protection_applycooldown","label":"applyCooldownDisableIfElapsed method","file_type":"code","source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 509","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"lib_protection_forcedisable","label":"forceDisable method","file_type":"code","source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 238","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"lib_protection_isalllayerson","label":"isAllLayersOn helper","file_type":"code","source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 524","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"lib_resolveavatar","label":"resolveAvatar function","file_type":"code","source_file":"apps/rebreak-native/lib/resolveAvatar.ts","source_location":"line 19","source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"android_appbuildgradle","label":"Android app/build.gradle","file_type":"code","source_file":"apps/rebreak-native/android/app/build.gradle","source_location":null,"source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"concept_cooldown_protection","label":"24h Cooldown Protection Mechanism","file_type":"concept","source_file":"apps/rebreak-native/lib/protection.ts","source_location":null,"source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"concept_protection_layers","label":"Multi-Layer Protection Architecture (VPN/NEFilter/FamilyControls/A11y)","file_type":"concept","source_file":"apps/rebreak-native/lib/protection.ts","source_location":null,"source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"concept_supabase_realtime","label":"Supabase Realtime Channel subscription pattern","file_type":"concept","source_file":"apps/rebreak-native/hooks/useChatRealtime.ts","source_location":null,"source_url":null,"captured_at":null,"author":null,"contributor":null},{"id":"concept_push_notifications","label":"Expo Push Token Registration (per-device, idempotent)","file_type":"concept","source_file":"apps/rebreak-native/hooks/usePushTokenRegistration.ts","source_location":null,"source_url":null,"captured_at":null,"author":null,"contributor":null}],"edges":[{"source":"hooks_useprotectionstate_hook","target":"lib_protection","relation":"calls","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/useProtectionState.ts","source_location":"line 6","weight":1.0},{"source":"hooks_useprotectionstate_hook","target":"lib_protection_protectionstate","relation":"references","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/useProtectionState.ts","source_location":"line 57","weight":1.0},{"source":"hooks_useprotectionstate_hook","target":"lib_protection_protectionphase","relation":"references","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/useProtectionState.ts","source_location":"line 274","weight":1.0},{"source":"hooks_useprotectionstate_hook","target":"lib_protection_getcombinedstate","relation":"calls","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/useProtectionState.ts","source_location":"line 106","weight":1.0},{"source":"hooks_useprotectionstate_hook","target":"lib_protection_forcedisable","relation":"calls","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/useProtectionState.ts","source_location":"line 121","weight":1.0},{"source":"hooks_useprotectionstate_hook","target":"lib_protection_applycooldown","relation":"calls","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/useProtectionState.ts","source_location":"line 190","weight":1.0},{"source":"hooks_useprotectionstate_hook","target":"concept_cooldown_protection","relation":"implements","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/useProtectionState.ts","source_location":"line 55","weight":1.0},{"source":"hooks_useprotectionstate_hook","target":"concept_protection_layers","relation":"conceptually_related_to","confidence":"INFERRED","confidence_score":0.95,"source_file":"apps/rebreak-native/hooks/useProtectionState.ts","source_location":"line 55","weight":0.95},{"source":"lib_protection","target":"concept_cooldown_protection","relation":"implements","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 395","weight":1.0},{"source":"lib_protection","target":"concept_protection_layers","relation":"implements","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 109","weight":1.0},{"source":"lib_protection_getcombinedstate","target":"lib_protection_protectionstate","relation":"references","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 447","weight":1.0},{"source":"lib_protection_getcombinedstate","target":"lib_protection_cooldownstate","relation":"references","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 447","weight":1.0},{"source":"lib_protection_isalllayerson","target":"concept_protection_layers","relation":"conceptually_related_to","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 524","weight":1.0},{"source":"hooks_usechatrealtime_dmrealtime","target":"concept_supabase_realtime","relation":"implements","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/useChatRealtime.ts","source_location":"line 11","weight":1.0},{"source":"hooks_usechatrealtime_roomrealtime","target":"concept_supabase_realtime","relation":"implements","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/useChatRealtime.ts","source_location":"line 99","weight":1.0},{"source":"hooks_usecommunityrealtime_hook","target":"concept_supabase_realtime","relation":"implements","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/useCommunityRealtime.ts","source_location":"line 17","weight":1.0},{"source":"hooks_usecommunityrealtime_hook","target":"hooks_usecommunityrealtime_patchfn","relation":"calls","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/useCommunityRealtime.ts","source_location":"line 52","weight":1.0},{"source":"hooks_usepushtokenregistration_hook","target":"hooks_usepushtokenregistration_registerfn","relation":"calls","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/usePushTokenRegistration.ts","source_location":"line 113","weight":1.0},{"source":"hooks_usepushtokenregistration_hook","target":"concept_push_notifications","relation":"implements","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/usePushTokenRegistration.ts","source_location":"line 108","weight":1.0},{"source":"hooks_usepushtokenregistration_registerfn","target":"concept_push_notifications","relation":"implements","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/usePushTokenRegistration.ts","source_location":"line 23","weight":1.0},{"source":"hooks_usechatrealtime_dmrealtime","target":"hooks_usechatrealtime_roomrealtime","relation":"semantically_similar_to","confidence":"INFERRED","confidence_score":0.85,"source_file":"apps/rebreak-native/hooks/useChatRealtime.ts","source_location":null,"weight":0.85},{"source":"hooks_usemailstats_hook","target":"hooks_usemailstats_connectionstats","relation":"semantically_similar_to","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/hooks/useMailStats.ts","source_location":null,"weight":0.9},{"source":"android_mainactivity","target":"android_mainapplication","relation":"references","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/android/app/src/main/java/org/rebreak/app/MainActivity.kt","source_location":"line 1","weight":1.0},{"source":"android_appbuildgradle","target":"android_mainactivity","relation":"references","confidence":"INFERRED","confidence_score":0.85,"source_file":"apps/rebreak-native/android/app/build.gradle","source_location":"line 99","weight":0.85},{"source":"android_appbuildgradle","target":"android_mainapplication","relation":"references","confidence":"INFERRED","confidence_score":0.85,"source_file":"apps/rebreak-native/android/app/build.gradle","source_location":"line 99","weight":0.85},{"source":"scripts_playsubmit","target":"android_appbuildgradle","relation":"references","confidence":"INFERRED","confidence_score":0.85,"source_file":"apps/rebreak-native/scripts/play-submit.mjs","source_location":"line 12","weight":0.85},{"source":"lib_protection_familycontrolsflag","target":"lib_protection","relation":"rationale_for","confidence":"EXTRACTED","confidence_score":1.0,"source_file":"apps/rebreak-native/lib/protection.ts","source_location":"line 37","weight":1.0},{"source":"hooks_usemailinterval_hook","target":"hooks_usemailstats_hook","relation":"shares_data_with","confidence":"INFERRED","confidence_score":0.75,"source_file":"apps/rebreak-native/hooks/useMailInterval.ts","source_location":null,"weight":0.75},{"source":"scripts_buildiosclean","target":"scripts_playsubmit","relation":"conceptually_related_to","confidence":"INFERRED","confidence_score":0.65,"source_file":"apps/rebreak-native/scripts/build-ios-clean.sh","source_location":null,"weight":0.65}],"hyperedges":[],"input_tokens":0,"output_tokens":0}