Add files using upload-large-folder tool
Browse files- clean_git_repo/.ipynb_checkpoints/Untitled-checkpoint.ipynb +6 -0
- clean_git_repo/UI/safespace/.dart_tool/package_config.json +184 -0
- clean_git_repo/UI/safespace/.dart_tool/package_graph.json +238 -0
- clean_git_repo/UI/safespace/.dart_tool/version +1 -0
- clean_git_repo/UI/safespace/.gitignore +37 -0
- clean_git_repo/UI/safespace/.metadata +45 -0
- clean_git_repo/UI/safespace/README.md +17 -0
- clean_git_repo/UI/safespace/analysis_options.yaml +28 -0
- clean_git_repo/UI/safespace/android/.gitignore +14 -0
- clean_git_repo/UI/safespace/android/build.gradle.kts +24 -0
- clean_git_repo/UI/safespace/android/gradle.properties +2 -0
- clean_git_repo/UI/safespace/android/local.properties +2 -0
- clean_git_repo/UI/safespace/android/settings.gradle.kts +26 -0
- clean_git_repo/UI/safespace/pubspec.lock +221 -0
- clean_git_repo/UI/safespace/pubspec.yaml +21 -0
- clean_git_repo/mental_xlmr_final/checkpoint-3670 +1 -0
- clean_git_repo/mental_xlmr_final/config.json +40 -0
- clean_git_repo/mental_xlmr_final/tokenizer_config.json +14 -0
- updated_backend/seed_db.py +102 -0
- updated_backend/test_db.py +58 -0
clean_git_repo/.ipynb_checkpoints/Untitled-checkpoint.ipynb
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"cells": [],
|
| 3 |
+
"metadata": {},
|
| 4 |
+
"nbformat": 4,
|
| 5 |
+
"nbformat_minor": 5
|
| 6 |
+
}
|
clean_git_repo/UI/safespace/.dart_tool/package_config.json
ADDED
|
@@ -0,0 +1,184 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"configVersion": 2,
|
| 3 |
+
"packages": [
|
| 4 |
+
{
|
| 5 |
+
"name": "async",
|
| 6 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/async-2.13.1",
|
| 7 |
+
"packageUri": "lib/",
|
| 8 |
+
"languageVersion": "3.4"
|
| 9 |
+
},
|
| 10 |
+
{
|
| 11 |
+
"name": "boolean_selector",
|
| 12 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/boolean_selector-2.1.2",
|
| 13 |
+
"packageUri": "lib/",
|
| 14 |
+
"languageVersion": "3.1"
|
| 15 |
+
},
|
| 16 |
+
{
|
| 17 |
+
"name": "characters",
|
| 18 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/characters-1.4.1",
|
| 19 |
+
"packageUri": "lib/",
|
| 20 |
+
"languageVersion": "3.4"
|
| 21 |
+
},
|
| 22 |
+
{
|
| 23 |
+
"name": "clock",
|
| 24 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/clock-1.1.2",
|
| 25 |
+
"packageUri": "lib/",
|
| 26 |
+
"languageVersion": "3.4"
|
| 27 |
+
},
|
| 28 |
+
{
|
| 29 |
+
"name": "collection",
|
| 30 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/collection-1.19.1",
|
| 31 |
+
"packageUri": "lib/",
|
| 32 |
+
"languageVersion": "3.4"
|
| 33 |
+
},
|
| 34 |
+
{
|
| 35 |
+
"name": "cupertino_icons",
|
| 36 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/cupertino_icons-1.0.9",
|
| 37 |
+
"packageUri": "lib/",
|
| 38 |
+
"languageVersion": "3.9"
|
| 39 |
+
},
|
| 40 |
+
{
|
| 41 |
+
"name": "fake_async",
|
| 42 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/fake_async-1.3.3",
|
| 43 |
+
"packageUri": "lib/",
|
| 44 |
+
"languageVersion": "3.3"
|
| 45 |
+
},
|
| 46 |
+
{
|
| 47 |
+
"name": "flutter",
|
| 48 |
+
"rootUri": "file:///C:/flutter/packages/flutter",
|
| 49 |
+
"packageUri": "lib/",
|
| 50 |
+
"languageVersion": "3.9"
|
| 51 |
+
},
|
| 52 |
+
{
|
| 53 |
+
"name": "flutter_lints",
|
| 54 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/flutter_lints-3.0.2",
|
| 55 |
+
"packageUri": "lib/",
|
| 56 |
+
"languageVersion": "3.1"
|
| 57 |
+
},
|
| 58 |
+
{
|
| 59 |
+
"name": "flutter_test",
|
| 60 |
+
"rootUri": "file:///C:/flutter/packages/flutter_test",
|
| 61 |
+
"packageUri": "lib/",
|
| 62 |
+
"languageVersion": "3.9"
|
| 63 |
+
},
|
| 64 |
+
{
|
| 65 |
+
"name": "intl_phone_field",
|
| 66 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/intl_phone_field-3.2.0",
|
| 67 |
+
"packageUri": "lib/",
|
| 68 |
+
"languageVersion": "2.12"
|
| 69 |
+
},
|
| 70 |
+
{
|
| 71 |
+
"name": "leak_tracker",
|
| 72 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/leak_tracker-11.0.2",
|
| 73 |
+
"packageUri": "lib/",
|
| 74 |
+
"languageVersion": "3.2"
|
| 75 |
+
},
|
| 76 |
+
{
|
| 77 |
+
"name": "leak_tracker_flutter_testing",
|
| 78 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/leak_tracker_flutter_testing-3.0.10",
|
| 79 |
+
"packageUri": "lib/",
|
| 80 |
+
"languageVersion": "3.2"
|
| 81 |
+
},
|
| 82 |
+
{
|
| 83 |
+
"name": "leak_tracker_testing",
|
| 84 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/leak_tracker_testing-3.0.2",
|
| 85 |
+
"packageUri": "lib/",
|
| 86 |
+
"languageVersion": "3.2"
|
| 87 |
+
},
|
| 88 |
+
{
|
| 89 |
+
"name": "lints",
|
| 90 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/lints-3.0.0",
|
| 91 |
+
"packageUri": "lib/",
|
| 92 |
+
"languageVersion": "3.0"
|
| 93 |
+
},
|
| 94 |
+
{
|
| 95 |
+
"name": "matcher",
|
| 96 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/matcher-0.12.19",
|
| 97 |
+
"packageUri": "lib/",
|
| 98 |
+
"languageVersion": "3.7"
|
| 99 |
+
},
|
| 100 |
+
{
|
| 101 |
+
"name": "material_color_utilities",
|
| 102 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/material_color_utilities-0.13.0",
|
| 103 |
+
"packageUri": "lib/",
|
| 104 |
+
"languageVersion": "3.5"
|
| 105 |
+
},
|
| 106 |
+
{
|
| 107 |
+
"name": "meta",
|
| 108 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/meta-1.17.0",
|
| 109 |
+
"packageUri": "lib/",
|
| 110 |
+
"languageVersion": "3.5"
|
| 111 |
+
},
|
| 112 |
+
{
|
| 113 |
+
"name": "path",
|
| 114 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/path-1.9.1",
|
| 115 |
+
"packageUri": "lib/",
|
| 116 |
+
"languageVersion": "3.4"
|
| 117 |
+
},
|
| 118 |
+
{
|
| 119 |
+
"name": "sky_engine",
|
| 120 |
+
"rootUri": "file:///C:/flutter/bin/cache/pkg/sky_engine",
|
| 121 |
+
"packageUri": "lib/",
|
| 122 |
+
"languageVersion": "3.9"
|
| 123 |
+
},
|
| 124 |
+
{
|
| 125 |
+
"name": "source_span",
|
| 126 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/source_span-1.10.2",
|
| 127 |
+
"packageUri": "lib/",
|
| 128 |
+
"languageVersion": "3.1"
|
| 129 |
+
},
|
| 130 |
+
{
|
| 131 |
+
"name": "stack_trace",
|
| 132 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/stack_trace-1.12.1",
|
| 133 |
+
"packageUri": "lib/",
|
| 134 |
+
"languageVersion": "3.4"
|
| 135 |
+
},
|
| 136 |
+
{
|
| 137 |
+
"name": "stream_channel",
|
| 138 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/stream_channel-2.1.4",
|
| 139 |
+
"packageUri": "lib/",
|
| 140 |
+
"languageVersion": "3.3"
|
| 141 |
+
},
|
| 142 |
+
{
|
| 143 |
+
"name": "string_scanner",
|
| 144 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/string_scanner-1.4.1",
|
| 145 |
+
"packageUri": "lib/",
|
| 146 |
+
"languageVersion": "3.1"
|
| 147 |
+
},
|
| 148 |
+
{
|
| 149 |
+
"name": "term_glyph",
|
| 150 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/term_glyph-1.2.2",
|
| 151 |
+
"packageUri": "lib/",
|
| 152 |
+
"languageVersion": "3.1"
|
| 153 |
+
},
|
| 154 |
+
{
|
| 155 |
+
"name": "test_api",
|
| 156 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/test_api-0.7.10",
|
| 157 |
+
"packageUri": "lib/",
|
| 158 |
+
"languageVersion": "3.7"
|
| 159 |
+
},
|
| 160 |
+
{
|
| 161 |
+
"name": "vector_math",
|
| 162 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/vector_math-2.2.0",
|
| 163 |
+
"packageUri": "lib/",
|
| 164 |
+
"languageVersion": "3.1"
|
| 165 |
+
},
|
| 166 |
+
{
|
| 167 |
+
"name": "vm_service",
|
| 168 |
+
"rootUri": "file:///C:/Users/alisa/AppData/Local/Pub/Cache/hosted/pub.dev/vm_service-15.1.0",
|
| 169 |
+
"packageUri": "lib/",
|
| 170 |
+
"languageVersion": "3.5"
|
| 171 |
+
},
|
| 172 |
+
{
|
| 173 |
+
"name": "safespace",
|
| 174 |
+
"rootUri": "../",
|
| 175 |
+
"packageUri": "lib/",
|
| 176 |
+
"languageVersion": "3.0"
|
| 177 |
+
}
|
| 178 |
+
],
|
| 179 |
+
"generator": "pub",
|
| 180 |
+
"generatorVersion": "3.11.1",
|
| 181 |
+
"flutterRoot": "file:///C:/flutter",
|
| 182 |
+
"flutterVersion": "3.41.4",
|
| 183 |
+
"pubCache": "file:///C:/Users/alisa/AppData/Local/Pub/Cache"
|
| 184 |
+
}
|
clean_git_repo/UI/safespace/.dart_tool/package_graph.json
ADDED
|
@@ -0,0 +1,238 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"roots": [
|
| 3 |
+
"safespace"
|
| 4 |
+
],
|
| 5 |
+
"packages": [
|
| 6 |
+
{
|
| 7 |
+
"name": "safespace",
|
| 8 |
+
"version": "1.0.0+1",
|
| 9 |
+
"dependencies": [
|
| 10 |
+
"cupertino_icons",
|
| 11 |
+
"flutter",
|
| 12 |
+
"intl_phone_field"
|
| 13 |
+
],
|
| 14 |
+
"devDependencies": [
|
| 15 |
+
"flutter_lints",
|
| 16 |
+
"flutter_test"
|
| 17 |
+
]
|
| 18 |
+
},
|
| 19 |
+
{
|
| 20 |
+
"name": "flutter_lints",
|
| 21 |
+
"version": "3.0.2",
|
| 22 |
+
"dependencies": [
|
| 23 |
+
"lints"
|
| 24 |
+
]
|
| 25 |
+
},
|
| 26 |
+
{
|
| 27 |
+
"name": "flutter_test",
|
| 28 |
+
"version": "0.0.0",
|
| 29 |
+
"dependencies": [
|
| 30 |
+
"clock",
|
| 31 |
+
"collection",
|
| 32 |
+
"fake_async",
|
| 33 |
+
"flutter",
|
| 34 |
+
"leak_tracker_flutter_testing",
|
| 35 |
+
"matcher",
|
| 36 |
+
"meta",
|
| 37 |
+
"path",
|
| 38 |
+
"stack_trace",
|
| 39 |
+
"stream_channel",
|
| 40 |
+
"test_api",
|
| 41 |
+
"vector_math"
|
| 42 |
+
]
|
| 43 |
+
},
|
| 44 |
+
{
|
| 45 |
+
"name": "intl_phone_field",
|
| 46 |
+
"version": "3.2.0",
|
| 47 |
+
"dependencies": [
|
| 48 |
+
"flutter"
|
| 49 |
+
]
|
| 50 |
+
},
|
| 51 |
+
{
|
| 52 |
+
"name": "cupertino_icons",
|
| 53 |
+
"version": "1.0.9",
|
| 54 |
+
"dependencies": []
|
| 55 |
+
},
|
| 56 |
+
{
|
| 57 |
+
"name": "flutter",
|
| 58 |
+
"version": "0.0.0",
|
| 59 |
+
"dependencies": [
|
| 60 |
+
"characters",
|
| 61 |
+
"collection",
|
| 62 |
+
"material_color_utilities",
|
| 63 |
+
"meta",
|
| 64 |
+
"sky_engine",
|
| 65 |
+
"vector_math"
|
| 66 |
+
]
|
| 67 |
+
},
|
| 68 |
+
{
|
| 69 |
+
"name": "lints",
|
| 70 |
+
"version": "3.0.0",
|
| 71 |
+
"dependencies": []
|
| 72 |
+
},
|
| 73 |
+
{
|
| 74 |
+
"name": "stream_channel",
|
| 75 |
+
"version": "2.1.4",
|
| 76 |
+
"dependencies": [
|
| 77 |
+
"async"
|
| 78 |
+
]
|
| 79 |
+
},
|
| 80 |
+
{
|
| 81 |
+
"name": "meta",
|
| 82 |
+
"version": "1.17.0",
|
| 83 |
+
"dependencies": []
|
| 84 |
+
},
|
| 85 |
+
{
|
| 86 |
+
"name": "collection",
|
| 87 |
+
"version": "1.19.1",
|
| 88 |
+
"dependencies": []
|
| 89 |
+
},
|
| 90 |
+
{
|
| 91 |
+
"name": "leak_tracker_flutter_testing",
|
| 92 |
+
"version": "3.0.10",
|
| 93 |
+
"dependencies": [
|
| 94 |
+
"flutter",
|
| 95 |
+
"leak_tracker",
|
| 96 |
+
"leak_tracker_testing",
|
| 97 |
+
"matcher",
|
| 98 |
+
"meta"
|
| 99 |
+
]
|
| 100 |
+
},
|
| 101 |
+
{
|
| 102 |
+
"name": "vector_math",
|
| 103 |
+
"version": "2.2.0",
|
| 104 |
+
"dependencies": []
|
| 105 |
+
},
|
| 106 |
+
{
|
| 107 |
+
"name": "stack_trace",
|
| 108 |
+
"version": "1.12.1",
|
| 109 |
+
"dependencies": [
|
| 110 |
+
"path"
|
| 111 |
+
]
|
| 112 |
+
},
|
| 113 |
+
{
|
| 114 |
+
"name": "clock",
|
| 115 |
+
"version": "1.1.2",
|
| 116 |
+
"dependencies": []
|
| 117 |
+
},
|
| 118 |
+
{
|
| 119 |
+
"name": "fake_async",
|
| 120 |
+
"version": "1.3.3",
|
| 121 |
+
"dependencies": [
|
| 122 |
+
"clock",
|
| 123 |
+
"collection"
|
| 124 |
+
]
|
| 125 |
+
},
|
| 126 |
+
{
|
| 127 |
+
"name": "path",
|
| 128 |
+
"version": "1.9.1",
|
| 129 |
+
"dependencies": []
|
| 130 |
+
},
|
| 131 |
+
{
|
| 132 |
+
"name": "matcher",
|
| 133 |
+
"version": "0.12.19",
|
| 134 |
+
"dependencies": [
|
| 135 |
+
"async",
|
| 136 |
+
"meta",
|
| 137 |
+
"stack_trace",
|
| 138 |
+
"term_glyph",
|
| 139 |
+
"test_api"
|
| 140 |
+
]
|
| 141 |
+
},
|
| 142 |
+
{
|
| 143 |
+
"name": "test_api",
|
| 144 |
+
"version": "0.7.10",
|
| 145 |
+
"dependencies": [
|
| 146 |
+
"async",
|
| 147 |
+
"boolean_selector",
|
| 148 |
+
"collection",
|
| 149 |
+
"meta",
|
| 150 |
+
"source_span",
|
| 151 |
+
"stack_trace",
|
| 152 |
+
"stream_channel",
|
| 153 |
+
"string_scanner",
|
| 154 |
+
"term_glyph"
|
| 155 |
+
]
|
| 156 |
+
},
|
| 157 |
+
{
|
| 158 |
+
"name": "sky_engine",
|
| 159 |
+
"version": "0.0.0",
|
| 160 |
+
"dependencies": []
|
| 161 |
+
},
|
| 162 |
+
{
|
| 163 |
+
"name": "material_color_utilities",
|
| 164 |
+
"version": "0.13.0",
|
| 165 |
+
"dependencies": [
|
| 166 |
+
"collection"
|
| 167 |
+
]
|
| 168 |
+
},
|
| 169 |
+
{
|
| 170 |
+
"name": "characters",
|
| 171 |
+
"version": "1.4.1",
|
| 172 |
+
"dependencies": []
|
| 173 |
+
},
|
| 174 |
+
{
|
| 175 |
+
"name": "async",
|
| 176 |
+
"version": "2.13.1",
|
| 177 |
+
"dependencies": [
|
| 178 |
+
"collection",
|
| 179 |
+
"meta"
|
| 180 |
+
]
|
| 181 |
+
},
|
| 182 |
+
{
|
| 183 |
+
"name": "leak_tracker_testing",
|
| 184 |
+
"version": "3.0.2",
|
| 185 |
+
"dependencies": [
|
| 186 |
+
"leak_tracker",
|
| 187 |
+
"matcher",
|
| 188 |
+
"meta"
|
| 189 |
+
]
|
| 190 |
+
},
|
| 191 |
+
{
|
| 192 |
+
"name": "leak_tracker",
|
| 193 |
+
"version": "11.0.2",
|
| 194 |
+
"dependencies": [
|
| 195 |
+
"clock",
|
| 196 |
+
"collection",
|
| 197 |
+
"meta",
|
| 198 |
+
"path",
|
| 199 |
+
"vm_service"
|
| 200 |
+
]
|
| 201 |
+
},
|
| 202 |
+
{
|
| 203 |
+
"name": "term_glyph",
|
| 204 |
+
"version": "1.2.2",
|
| 205 |
+
"dependencies": []
|
| 206 |
+
},
|
| 207 |
+
{
|
| 208 |
+
"name": "string_scanner",
|
| 209 |
+
"version": "1.4.1",
|
| 210 |
+
"dependencies": [
|
| 211 |
+
"source_span"
|
| 212 |
+
]
|
| 213 |
+
},
|
| 214 |
+
{
|
| 215 |
+
"name": "source_span",
|
| 216 |
+
"version": "1.10.2",
|
| 217 |
+
"dependencies": [
|
| 218 |
+
"collection",
|
| 219 |
+
"path",
|
| 220 |
+
"term_glyph"
|
| 221 |
+
]
|
| 222 |
+
},
|
| 223 |
+
{
|
| 224 |
+
"name": "boolean_selector",
|
| 225 |
+
"version": "2.1.2",
|
| 226 |
+
"dependencies": [
|
| 227 |
+
"source_span",
|
| 228 |
+
"string_scanner"
|
| 229 |
+
]
|
| 230 |
+
},
|
| 231 |
+
{
|
| 232 |
+
"name": "vm_service",
|
| 233 |
+
"version": "15.1.0",
|
| 234 |
+
"dependencies": []
|
| 235 |
+
}
|
| 236 |
+
],
|
| 237 |
+
"configVersion": 1
|
| 238 |
+
}
|
clean_git_repo/UI/safespace/.dart_tool/version
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
3.41.4
|
clean_git_repo/UI/safespace/.gitignore
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Flutter/Dart
|
| 2 |
+
.dart_tool/
|
| 3 |
+
.flutter-plugins
|
| 4 |
+
.flutter-plugins-dependencies
|
| 5 |
+
.packages
|
| 6 |
+
.pub-cache/
|
| 7 |
+
.pub/
|
| 8 |
+
/build/
|
| 9 |
+
|
| 10 |
+
# Android
|
| 11 |
+
.gradle/
|
| 12 |
+
local.properties
|
| 13 |
+
*.kwks
|
| 14 |
+
*.keystore
|
| 15 |
+
/android/app/key.properties
|
| 16 |
+
|
| 17 |
+
# iOS/macOS
|
| 18 |
+
*.mode1v3
|
| 19 |
+
*.mode2v3
|
| 20 |
+
*.perspectivev3
|
| 21 |
+
/ios/Flutter/Generated.xcconfig
|
| 22 |
+
/ios/Flutter/flutter_export_environment.sh
|
| 23 |
+
/ios/ServiceDefinitions.json
|
| 24 |
+
/ios/Runner/GeneratedPluginRegistrant.h
|
| 25 |
+
/ios/Runner/GeneratedPluginRegistrant.m
|
| 26 |
+
|
| 27 |
+
# IDEs
|
| 28 |
+
.idea/
|
| 29 |
+
.vscode/
|
| 30 |
+
*.iml
|
| 31 |
+
*.iws
|
| 32 |
+
*.swp
|
| 33 |
+
*.swo
|
| 34 |
+
|
| 35 |
+
# OS
|
| 36 |
+
.DS_Store
|
| 37 |
+
Thumbs.db
|
clean_git_repo/UI/safespace/.metadata
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# This file tracks properties of this Flutter project.
|
| 2 |
+
# Used by Flutter tool to assess capabilities and perform upgrades etc.
|
| 3 |
+
#
|
| 4 |
+
# This file should be version controlled and should not be manually edited.
|
| 5 |
+
|
| 6 |
+
version:
|
| 7 |
+
revision: "db50e20168db8fee486b9abf32fc912de3bc5b6a"
|
| 8 |
+
channel: "stable"
|
| 9 |
+
|
| 10 |
+
project_type: app
|
| 11 |
+
|
| 12 |
+
# Tracks metadata for the flutter migrate command
|
| 13 |
+
migration:
|
| 14 |
+
platforms:
|
| 15 |
+
- platform: root
|
| 16 |
+
create_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 17 |
+
base_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 18 |
+
- platform: android
|
| 19 |
+
create_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 20 |
+
base_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 21 |
+
- platform: ios
|
| 22 |
+
create_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 23 |
+
base_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 24 |
+
- platform: linux
|
| 25 |
+
create_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 26 |
+
base_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 27 |
+
- platform: macos
|
| 28 |
+
create_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 29 |
+
base_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 30 |
+
- platform: web
|
| 31 |
+
create_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 32 |
+
base_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 33 |
+
- platform: windows
|
| 34 |
+
create_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 35 |
+
base_revision: db50e20168db8fee486b9abf32fc912de3bc5b6a
|
| 36 |
+
|
| 37 |
+
# User provided section
|
| 38 |
+
|
| 39 |
+
# List of Local paths (relative to this file) that should be
|
| 40 |
+
# ignored by the migrate tool.
|
| 41 |
+
#
|
| 42 |
+
# Files that are not part of the templates will be ignored by default.
|
| 43 |
+
unmanaged_files:
|
| 44 |
+
- 'lib/main.dart'
|
| 45 |
+
- 'ios/Runner.xcodeproj/project.pbxproj'
|
clean_git_repo/UI/safespace/README.md
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# safespace
|
| 2 |
+
|
| 3 |
+
A new Flutter project.
|
| 4 |
+
|
| 5 |
+
## Getting Started
|
| 6 |
+
|
| 7 |
+
This project is a starting point for a Flutter application.
|
| 8 |
+
|
| 9 |
+
A few resources to get you started if this is your first Flutter project:
|
| 10 |
+
|
| 11 |
+
- [Learn Flutter](https://docs.flutter.dev/get-started/learn-flutter)
|
| 12 |
+
- [Write your first Flutter app](https://docs.flutter.dev/get-started/codelab)
|
| 13 |
+
- [Flutter learning resources](https://docs.flutter.dev/reference/learning-resources)
|
| 14 |
+
|
| 15 |
+
For help getting started with Flutter development, view the
|
| 16 |
+
[online documentation](https://docs.flutter.dev/), which offers tutorials,
|
| 17 |
+
samples, guidance on mobile development, and a full API reference.
|
clean_git_repo/UI/safespace/analysis_options.yaml
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# This file configures the analyzer, which statically analyzes Dart code to
|
| 2 |
+
# check for errors, warnings, and lints.
|
| 3 |
+
#
|
| 4 |
+
# The issues identified by the analyzer are surfaced in the UI of Dart-enabled
|
| 5 |
+
# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be
|
| 6 |
+
# invoked from the command line by running `flutter analyze`.
|
| 7 |
+
|
| 8 |
+
# The following line activates a set of recommended lints for Flutter apps,
|
| 9 |
+
# packages, and plugins designed to encourage good coding practices.
|
| 10 |
+
include: package:flutter_lints/flutter.yaml
|
| 11 |
+
|
| 12 |
+
linter:
|
| 13 |
+
# The lint rules applied to this project can be customized in the
|
| 14 |
+
# section below to disable rules from the `package:flutter_lints/flutter.yaml`
|
| 15 |
+
# included above or to enable additional rules. A list of all available lints
|
| 16 |
+
# and their documentation is published at https://dart.dev/lints.
|
| 17 |
+
#
|
| 18 |
+
# Instead of disabling a lint rule for the entire project in the
|
| 19 |
+
# section below, it can also be suppressed for a single line of code
|
| 20 |
+
# or a specific dart file by using the `// ignore: name_of_lint` and
|
| 21 |
+
# `// ignore_for_file: name_of_lint` syntax on the line or in the file
|
| 22 |
+
# producing the lint.
|
| 23 |
+
rules:
|
| 24 |
+
# avoid_print: false # Uncomment to disable the `avoid_print` rule
|
| 25 |
+
# prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule
|
| 26 |
+
|
| 27 |
+
# Additional information about this file can be found at
|
| 28 |
+
# https://dart.dev/guides/language/analysis-options
|
clean_git_repo/UI/safespace/android/.gitignore
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
gradle-wrapper.jar
|
| 2 |
+
/.gradle
|
| 3 |
+
/captures/
|
| 4 |
+
/gradlew
|
| 5 |
+
/gradlew.bat
|
| 6 |
+
/local.properties
|
| 7 |
+
GeneratedPluginRegistrant.java
|
| 8 |
+
.cxx/
|
| 9 |
+
|
| 10 |
+
# Remember to never publicly share your keystore.
|
| 11 |
+
# See https://flutter.dev/to/reference-keystore
|
| 12 |
+
key.properties
|
| 13 |
+
**/*.keystore
|
| 14 |
+
**/*.jks
|
clean_git_repo/UI/safespace/android/build.gradle.kts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
allprojects {
|
| 2 |
+
repositories {
|
| 3 |
+
google()
|
| 4 |
+
mavenCentral()
|
| 5 |
+
}
|
| 6 |
+
}
|
| 7 |
+
|
| 8 |
+
val newBuildDir: Directory =
|
| 9 |
+
rootProject.layout.buildDirectory
|
| 10 |
+
.dir("../../build")
|
| 11 |
+
.get()
|
| 12 |
+
rootProject.layout.buildDirectory.value(newBuildDir)
|
| 13 |
+
|
| 14 |
+
subprojects {
|
| 15 |
+
val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name)
|
| 16 |
+
project.layout.buildDirectory.value(newSubprojectBuildDir)
|
| 17 |
+
}
|
| 18 |
+
subprojects {
|
| 19 |
+
project.evaluationDependsOn(":app")
|
| 20 |
+
}
|
| 21 |
+
|
| 22 |
+
tasks.register<Delete>("clean") {
|
| 23 |
+
delete(rootProject.layout.buildDirectory)
|
| 24 |
+
}
|
clean_git_repo/UI/safespace/android/gradle.properties
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError
|
| 2 |
+
android.useAndroidX=true
|
clean_git_repo/UI/safespace/android/local.properties
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
sdk.dir=C:\\Users\\alisa\\AppData\\Local\\Android\\sdk
|
| 2 |
+
flutter.sdk=C:\\flutter
|
clean_git_repo/UI/safespace/android/settings.gradle.kts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
pluginManagement {
|
| 2 |
+
val flutterSdkPath =
|
| 3 |
+
run {
|
| 4 |
+
val properties = java.util.Properties()
|
| 5 |
+
file("local.properties").inputStream().use { properties.load(it) }
|
| 6 |
+
val flutterSdkPath = properties.getProperty("flutter.sdk")
|
| 7 |
+
require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" }
|
| 8 |
+
flutterSdkPath
|
| 9 |
+
}
|
| 10 |
+
|
| 11 |
+
includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
|
| 12 |
+
|
| 13 |
+
repositories {
|
| 14 |
+
google()
|
| 15 |
+
mavenCentral()
|
| 16 |
+
gradlePluginPortal()
|
| 17 |
+
}
|
| 18 |
+
}
|
| 19 |
+
|
| 20 |
+
plugins {
|
| 21 |
+
id("dev.flutter.flutter-plugin-loader") version "1.0.0"
|
| 22 |
+
id("com.android.application") version "8.11.1" apply false
|
| 23 |
+
id("org.jetbrains.kotlin.android") version "2.2.20" apply false
|
| 24 |
+
}
|
| 25 |
+
|
| 26 |
+
include(":app")
|
clean_git_repo/UI/safespace/pubspec.lock
ADDED
|
@@ -0,0 +1,221 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Generated by pub
|
| 2 |
+
# See https://dart.dev/tools/pub/glossary#lockfile
|
| 3 |
+
packages:
|
| 4 |
+
async:
|
| 5 |
+
dependency: transitive
|
| 6 |
+
description:
|
| 7 |
+
name: async
|
| 8 |
+
sha256: e2eb0491ba5ddb6177742d2da23904574082139b07c1e33b8503b9f46f3e1a37
|
| 9 |
+
url: "https://pub.dev"
|
| 10 |
+
source: hosted
|
| 11 |
+
version: "2.13.1"
|
| 12 |
+
boolean_selector:
|
| 13 |
+
dependency: transitive
|
| 14 |
+
description:
|
| 15 |
+
name: boolean_selector
|
| 16 |
+
sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea"
|
| 17 |
+
url: "https://pub.dev"
|
| 18 |
+
source: hosted
|
| 19 |
+
version: "2.1.2"
|
| 20 |
+
characters:
|
| 21 |
+
dependency: transitive
|
| 22 |
+
description:
|
| 23 |
+
name: characters
|
| 24 |
+
sha256: faf38497bda5ead2a8c7615f4f7939df04333478bf32e4173fcb06d428b5716b
|
| 25 |
+
url: "https://pub.dev"
|
| 26 |
+
source: hosted
|
| 27 |
+
version: "1.4.1"
|
| 28 |
+
clock:
|
| 29 |
+
dependency: transitive
|
| 30 |
+
description:
|
| 31 |
+
name: clock
|
| 32 |
+
sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b
|
| 33 |
+
url: "https://pub.dev"
|
| 34 |
+
source: hosted
|
| 35 |
+
version: "1.1.2"
|
| 36 |
+
collection:
|
| 37 |
+
dependency: transitive
|
| 38 |
+
description:
|
| 39 |
+
name: collection
|
| 40 |
+
sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76"
|
| 41 |
+
url: "https://pub.dev"
|
| 42 |
+
source: hosted
|
| 43 |
+
version: "1.19.1"
|
| 44 |
+
cupertino_icons:
|
| 45 |
+
dependency: "direct main"
|
| 46 |
+
description:
|
| 47 |
+
name: cupertino_icons
|
| 48 |
+
sha256: "41e005c33bd814be4d3096aff55b1908d419fde52ca656c8c47719ec745873cd"
|
| 49 |
+
url: "https://pub.dev"
|
| 50 |
+
source: hosted
|
| 51 |
+
version: "1.0.9"
|
| 52 |
+
fake_async:
|
| 53 |
+
dependency: transitive
|
| 54 |
+
description:
|
| 55 |
+
name: fake_async
|
| 56 |
+
sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44"
|
| 57 |
+
url: "https://pub.dev"
|
| 58 |
+
source: hosted
|
| 59 |
+
version: "1.3.3"
|
| 60 |
+
flutter:
|
| 61 |
+
dependency: "direct main"
|
| 62 |
+
description: flutter
|
| 63 |
+
source: sdk
|
| 64 |
+
version: "0.0.0"
|
| 65 |
+
flutter_lints:
|
| 66 |
+
dependency: "direct dev"
|
| 67 |
+
description:
|
| 68 |
+
name: flutter_lints
|
| 69 |
+
sha256: "9e8c3858111da373efc5aa341de011d9bd23e2c5c5e0c62bccf32438e192d7b1"
|
| 70 |
+
url: "https://pub.dev"
|
| 71 |
+
source: hosted
|
| 72 |
+
version: "3.0.2"
|
| 73 |
+
flutter_test:
|
| 74 |
+
dependency: "direct dev"
|
| 75 |
+
description: flutter
|
| 76 |
+
source: sdk
|
| 77 |
+
version: "0.0.0"
|
| 78 |
+
intl_phone_field:
|
| 79 |
+
dependency: "direct main"
|
| 80 |
+
description:
|
| 81 |
+
name: intl_phone_field
|
| 82 |
+
sha256: "73819d3dfcb68d2c85663606f6842597c3ddf6688ac777f051b17814fe767bbf"
|
| 83 |
+
url: "https://pub.dev"
|
| 84 |
+
source: hosted
|
| 85 |
+
version: "3.2.0"
|
| 86 |
+
leak_tracker:
|
| 87 |
+
dependency: transitive
|
| 88 |
+
description:
|
| 89 |
+
name: leak_tracker
|
| 90 |
+
sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de"
|
| 91 |
+
url: "https://pub.dev"
|
| 92 |
+
source: hosted
|
| 93 |
+
version: "11.0.2"
|
| 94 |
+
leak_tracker_flutter_testing:
|
| 95 |
+
dependency: transitive
|
| 96 |
+
description:
|
| 97 |
+
name: leak_tracker_flutter_testing
|
| 98 |
+
sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1"
|
| 99 |
+
url: "https://pub.dev"
|
| 100 |
+
source: hosted
|
| 101 |
+
version: "3.0.10"
|
| 102 |
+
leak_tracker_testing:
|
| 103 |
+
dependency: transitive
|
| 104 |
+
description:
|
| 105 |
+
name: leak_tracker_testing
|
| 106 |
+
sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1"
|
| 107 |
+
url: "https://pub.dev"
|
| 108 |
+
source: hosted
|
| 109 |
+
version: "3.0.2"
|
| 110 |
+
lints:
|
| 111 |
+
dependency: transitive
|
| 112 |
+
description:
|
| 113 |
+
name: lints
|
| 114 |
+
sha256: cbf8d4b858bb0134ef3ef87841abdf8d63bfc255c266b7bf6b39daa1085c4290
|
| 115 |
+
url: "https://pub.dev"
|
| 116 |
+
source: hosted
|
| 117 |
+
version: "3.0.0"
|
| 118 |
+
matcher:
|
| 119 |
+
dependency: transitive
|
| 120 |
+
description:
|
| 121 |
+
name: matcher
|
| 122 |
+
sha256: dc0b7dc7651697ea4ff3e69ef44b0407ea32c487a39fff6a4004fa585e901861
|
| 123 |
+
url: "https://pub.dev"
|
| 124 |
+
source: hosted
|
| 125 |
+
version: "0.12.19"
|
| 126 |
+
material_color_utilities:
|
| 127 |
+
dependency: transitive
|
| 128 |
+
description:
|
| 129 |
+
name: material_color_utilities
|
| 130 |
+
sha256: "9c337007e82b1889149c82ed242ed1cb24a66044e30979c44912381e9be4c48b"
|
| 131 |
+
url: "https://pub.dev"
|
| 132 |
+
source: hosted
|
| 133 |
+
version: "0.13.0"
|
| 134 |
+
meta:
|
| 135 |
+
dependency: transitive
|
| 136 |
+
description:
|
| 137 |
+
name: meta
|
| 138 |
+
sha256: "23f08335362185a5ea2ad3a4e597f1375e78bce8a040df5c600c8d3552ef2394"
|
| 139 |
+
url: "https://pub.dev"
|
| 140 |
+
source: hosted
|
| 141 |
+
version: "1.17.0"
|
| 142 |
+
path:
|
| 143 |
+
dependency: transitive
|
| 144 |
+
description:
|
| 145 |
+
name: path
|
| 146 |
+
sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5"
|
| 147 |
+
url: "https://pub.dev"
|
| 148 |
+
source: hosted
|
| 149 |
+
version: "1.9.1"
|
| 150 |
+
sky_engine:
|
| 151 |
+
dependency: transitive
|
| 152 |
+
description: flutter
|
| 153 |
+
source: sdk
|
| 154 |
+
version: "0.0.0"
|
| 155 |
+
source_span:
|
| 156 |
+
dependency: transitive
|
| 157 |
+
description:
|
| 158 |
+
name: source_span
|
| 159 |
+
sha256: "56a02f1f4cd1a2d96303c0144c93bd6d909eea6bee6bf5a0e0b685edbd4c47ab"
|
| 160 |
+
url: "https://pub.dev"
|
| 161 |
+
source: hosted
|
| 162 |
+
version: "1.10.2"
|
| 163 |
+
stack_trace:
|
| 164 |
+
dependency: transitive
|
| 165 |
+
description:
|
| 166 |
+
name: stack_trace
|
| 167 |
+
sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1"
|
| 168 |
+
url: "https://pub.dev"
|
| 169 |
+
source: hosted
|
| 170 |
+
version: "1.12.1"
|
| 171 |
+
stream_channel:
|
| 172 |
+
dependency: transitive
|
| 173 |
+
description:
|
| 174 |
+
name: stream_channel
|
| 175 |
+
sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d"
|
| 176 |
+
url: "https://pub.dev"
|
| 177 |
+
source: hosted
|
| 178 |
+
version: "2.1.4"
|
| 179 |
+
string_scanner:
|
| 180 |
+
dependency: transitive
|
| 181 |
+
description:
|
| 182 |
+
name: string_scanner
|
| 183 |
+
sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43"
|
| 184 |
+
url: "https://pub.dev"
|
| 185 |
+
source: hosted
|
| 186 |
+
version: "1.4.1"
|
| 187 |
+
term_glyph:
|
| 188 |
+
dependency: transitive
|
| 189 |
+
description:
|
| 190 |
+
name: term_glyph
|
| 191 |
+
sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e"
|
| 192 |
+
url: "https://pub.dev"
|
| 193 |
+
source: hosted
|
| 194 |
+
version: "1.2.2"
|
| 195 |
+
test_api:
|
| 196 |
+
dependency: transitive
|
| 197 |
+
description:
|
| 198 |
+
name: test_api
|
| 199 |
+
sha256: "8161c84903fd860b26bfdefb7963b3f0b68fee7adea0f59ef805ecca346f0c7a"
|
| 200 |
+
url: "https://pub.dev"
|
| 201 |
+
source: hosted
|
| 202 |
+
version: "0.7.10"
|
| 203 |
+
vector_math:
|
| 204 |
+
dependency: transitive
|
| 205 |
+
description:
|
| 206 |
+
name: vector_math
|
| 207 |
+
sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b
|
| 208 |
+
url: "https://pub.dev"
|
| 209 |
+
source: hosted
|
| 210 |
+
version: "2.2.0"
|
| 211 |
+
vm_service:
|
| 212 |
+
dependency: transitive
|
| 213 |
+
description:
|
| 214 |
+
name: vm_service
|
| 215 |
+
sha256: "046d3928e16fa4dc46e8350415661755ab759d9fc97fc21b5ab295f71e4f0499"
|
| 216 |
+
url: "https://pub.dev"
|
| 217 |
+
source: hosted
|
| 218 |
+
version: "15.1.0"
|
| 219 |
+
sdks:
|
| 220 |
+
dart: ">=3.9.0 <4.0.0"
|
| 221 |
+
flutter: ">=3.18.0-18.0.pre.54"
|
clean_git_repo/UI/safespace/pubspec.yaml
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
name: safespace
|
| 2 |
+
description: A mental wellness Flutter app.
|
| 3 |
+
publish_to: 'none'
|
| 4 |
+
version: 1.0.0+1
|
| 5 |
+
|
| 6 |
+
environment:
|
| 7 |
+
sdk: '>=3.0.0 <4.0.0'
|
| 8 |
+
|
| 9 |
+
dependencies:
|
| 10 |
+
flutter:
|
| 11 |
+
sdk: flutter
|
| 12 |
+
cupertino_icons: ^1.0.6
|
| 13 |
+
intl_phone_field: ^3.2.0
|
| 14 |
+
|
| 15 |
+
dev_dependencies:
|
| 16 |
+
flutter_test:
|
| 17 |
+
sdk: flutter
|
| 18 |
+
flutter_lints: ^3.0.0
|
| 19 |
+
|
| 20 |
+
flutter:
|
| 21 |
+
uses-material-design: true
|
clean_git_repo/mental_xlmr_final/checkpoint-3670
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
|
clean_git_repo/mental_xlmr_final/config.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"add_cross_attention": false,
|
| 3 |
+
"architectures": [
|
| 4 |
+
"XLMRobertaForSequenceClassification"
|
| 5 |
+
],
|
| 6 |
+
"attention_probs_dropout_prob": 0.1,
|
| 7 |
+
"bos_token_id": 0,
|
| 8 |
+
"classifier_dropout": null,
|
| 9 |
+
"dtype": "float32",
|
| 10 |
+
"eos_token_id": 2,
|
| 11 |
+
"hidden_act": "gelu",
|
| 12 |
+
"hidden_dropout_prob": 0.1,
|
| 13 |
+
"hidden_size": 768,
|
| 14 |
+
"id2label": {
|
| 15 |
+
"0": "LABEL_0",
|
| 16 |
+
"1": "LABEL_1",
|
| 17 |
+
"2": "LABEL_2"
|
| 18 |
+
},
|
| 19 |
+
"initializer_range": 0.02,
|
| 20 |
+
"intermediate_size": 3072,
|
| 21 |
+
"is_decoder": false,
|
| 22 |
+
"label2id": {
|
| 23 |
+
"LABEL_0": 0,
|
| 24 |
+
"LABEL_1": 1,
|
| 25 |
+
"LABEL_2": 2
|
| 26 |
+
},
|
| 27 |
+
"layer_norm_eps": 1e-05,
|
| 28 |
+
"max_position_embeddings": 514,
|
| 29 |
+
"model_type": "xlm-roberta",
|
| 30 |
+
"num_attention_heads": 12,
|
| 31 |
+
"num_hidden_layers": 12,
|
| 32 |
+
"output_past": true,
|
| 33 |
+
"pad_token_id": 1,
|
| 34 |
+
"position_embedding_type": "absolute",
|
| 35 |
+
"tie_word_embeddings": true,
|
| 36 |
+
"transformers_version": "5.0.0",
|
| 37 |
+
"type_vocab_size": 1,
|
| 38 |
+
"use_cache": false,
|
| 39 |
+
"vocab_size": 250002
|
| 40 |
+
}
|
clean_git_repo/mental_xlmr_final/tokenizer_config.json
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"add_prefix_space": true,
|
| 3 |
+
"backend": "tokenizers",
|
| 4 |
+
"bos_token": "<s>",
|
| 5 |
+
"cls_token": "<s>",
|
| 6 |
+
"eos_token": "</s>",
|
| 7 |
+
"is_local": false,
|
| 8 |
+
"mask_token": "<mask>",
|
| 9 |
+
"model_max_length": 512,
|
| 10 |
+
"pad_token": "<pad>",
|
| 11 |
+
"sep_token": "</s>",
|
| 12 |
+
"tokenizer_class": "XLMRobertaTokenizer",
|
| 13 |
+
"unk_token": "<unk>"
|
| 14 |
+
}
|
updated_backend/seed_db.py
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import os
|
| 2 |
+
import random
|
| 3 |
+
from datetime import datetime, timedelta
|
| 4 |
+
from sqlalchemy import create_engine, Column, Integer, String, DateTime, JSON
|
| 5 |
+
from sqlalchemy.orm import declarative_base, sessionmaker
|
| 6 |
+
|
| 7 |
+
print("="*50)
|
| 8 |
+
print("SafeSpace MVP Database Seeder (45 Days)")
|
| 9 |
+
print("="*50)
|
| 10 |
+
|
| 11 |
+
DATABASE_URL = "REMOVED_SECRET"
|
| 12 |
+
|
| 13 |
+
try:
|
| 14 |
+
engine = create_engine(DATABASE_URL, connect_args={'connect_timeout': 10})
|
| 15 |
+
SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
|
| 16 |
+
Base = declarative_base()
|
| 17 |
+
|
| 18 |
+
class DBUser(Base):
|
| 19 |
+
__tablename__ = "users"
|
| 20 |
+
id = Column(Integer, primary_key=True, index=True)
|
| 21 |
+
email = Column(String, unique=True, index=True)
|
| 22 |
+
password = Column(String)
|
| 23 |
+
created_at = Column(DateTime, default=datetime.utcnow)
|
| 24 |
+
|
| 25 |
+
class DBAnalysis(Base):
|
| 26 |
+
__tablename__ = "analyses"
|
| 27 |
+
id = Column(Integer, primary_key=True, index=True)
|
| 28 |
+
user_id = Column(Integer, index=True, nullable=True)
|
| 29 |
+
primary_condition = Column(String)
|
| 30 |
+
clinical_scoring = Column(JSON)
|
| 31 |
+
created_at = Column(DateTime, default=datetime.utcnow)
|
| 32 |
+
|
| 33 |
+
print("\nConnecting to database and ensuring tables exist...")
|
| 34 |
+
Base.metadata.create_all(bind=engine)
|
| 35 |
+
db = SessionLocal()
|
| 36 |
+
|
| 37 |
+
print("Creating dummy user (test@example.com)...")
|
| 38 |
+
user = db.query(DBUser).filter_by(email="test@example.com").first()
|
| 39 |
+
if not user:
|
| 40 |
+
user = DBUser(email="test@example.com", password="hashed_password_123")
|
| 41 |
+
db.add(user)
|
| 42 |
+
db.commit()
|
| 43 |
+
db.refresh(user)
|
| 44 |
+
|
| 45 |
+
print("\nGenerating 45 days of realistic DASS-42 mood history...")
|
| 46 |
+
|
| 47 |
+
# Clear old dummy data for this user to avoid duplicates if run multiple times
|
| 48 |
+
db.query(DBAnalysis).filter(DBAnalysis.user_id == user.id).delete()
|
| 49 |
+
db.commit()
|
| 50 |
+
|
| 51 |
+
# Generate 45 days of data
|
| 52 |
+
# We will simulate a healing journey over 45 days, with occasional bad days.
|
| 53 |
+
scores_history = []
|
| 54 |
+
|
| 55 |
+
dep, anx, str_score = 30, 26, 34 # Start high (Severe)
|
| 56 |
+
|
| 57 |
+
for day in range(45):
|
| 58 |
+
# Gradual improvement (scores drop over time)
|
| 59 |
+
dep = max(2, dep - random.uniform(0, 1.2))
|
| 60 |
+
anx = max(2, anx - random.uniform(0, 1.0))
|
| 61 |
+
str_score = max(4, str_score - random.uniform(0, 1.4))
|
| 62 |
+
|
| 63 |
+
# Add random "bad days" spikes (e.g. panic attacks or stressful events)
|
| 64 |
+
if day in [12, 25, 38]:
|
| 65 |
+
dep += random.randint(4, 10)
|
| 66 |
+
anx += random.randint(8, 14)
|
| 67 |
+
str_score += random.randint(6, 12)
|
| 68 |
+
|
| 69 |
+
# Ensure scores don't exceed DASS-42 maximums (42)
|
| 70 |
+
dep = min(42, int(dep))
|
| 71 |
+
anx = min(42, int(anx))
|
| 72 |
+
str_score = min(42, int(str_score))
|
| 73 |
+
|
| 74 |
+
scores_history.append((dep, anx, str_score))
|
| 75 |
+
|
| 76 |
+
for i, (d, a, s) in enumerate(scores_history):
|
| 77 |
+
record_date = datetime.utcnow() - timedelta(days=44 - i)
|
| 78 |
+
|
| 79 |
+
max_score = max(d, a, s)
|
| 80 |
+
primary = "depression" if max_score == d else ("anxiety" if max_score == a else "stress")
|
| 81 |
+
|
| 82 |
+
clinical_data = {
|
| 83 |
+
"depression": {"score": d, "severity": "Moderate"},
|
| 84 |
+
"anxiety": {"score": a, "severity": "Mild"},
|
| 85 |
+
"stress": {"score": s, "severity": "Moderate"}
|
| 86 |
+
}
|
| 87 |
+
|
| 88 |
+
analysis = DBAnalysis(
|
| 89 |
+
user_id=user.id,
|
| 90 |
+
primary_condition=primary,
|
| 91 |
+
clinical_scoring=clinical_data,
|
| 92 |
+
created_at=record_date
|
| 93 |
+
)
|
| 94 |
+
db.add(analysis)
|
| 95 |
+
|
| 96 |
+
db.commit()
|
| 97 |
+
print("\nSuccessfully seeded the database! 45 days of data added.")
|
| 98 |
+
print("Refresh your Flutter app to see the beautiful new Mood Graph!")
|
| 99 |
+
db.close()
|
| 100 |
+
|
| 101 |
+
except Exception as e:
|
| 102 |
+
print(f"\nError connecting or seeding database: {e}")
|
updated_backend/test_db.py
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from sqlalchemy import create_engine, text
|
| 2 |
+
from datetime import datetime
|
| 3 |
+
|
| 4 |
+
DATABASE_URL = "REMOVED_SECRET"
|
| 5 |
+
|
| 6 |
+
print("="*50)
|
| 7 |
+
print("Database Connection Test (No AI)")
|
| 8 |
+
print("="*50)
|
| 9 |
+
|
| 10 |
+
try:
|
| 11 |
+
print("\n[1] Creating engine with 10s timeout...")
|
| 12 |
+
engine = create_engine(DATABASE_URL, connect_args={'connect_timeout': 10})
|
| 13 |
+
|
| 14 |
+
print("[2] Attempting connection...")
|
| 15 |
+
with engine.connect() as conn:
|
| 16 |
+
# Test basic connectivity
|
| 17 |
+
result = conn.execute(text("SELECT 1"))
|
| 18 |
+
print("[3] SELECT 1 = OK")
|
| 19 |
+
|
| 20 |
+
# Check what tables exist
|
| 21 |
+
tables = conn.execute(text(
|
| 22 |
+
"SELECT table_name FROM information_schema.tables WHERE table_schema = 'public'"
|
| 23 |
+
)).fetchall()
|
| 24 |
+
print(f"\n--- Tables in database ---")
|
| 25 |
+
for t in tables:
|
| 26 |
+
print(f" - {t[0]}")
|
| 27 |
+
|
| 28 |
+
# Count rows in each table
|
| 29 |
+
for t in tables:
|
| 30 |
+
count = conn.execute(text(f"SELECT COUNT(*) FROM {t[0]}")).scalar()
|
| 31 |
+
print(f" {t[0]}: {count} rows")
|
| 32 |
+
|
| 33 |
+
# Show last 5 analyses
|
| 34 |
+
try:
|
| 35 |
+
rows = conn.execute(text(
|
| 36 |
+
"SELECT id, primary_condition, created_at FROM analyses ORDER BY created_at DESC LIMIT 5"
|
| 37 |
+
)).fetchall()
|
| 38 |
+
print(f"\n--- Last 5 Analyses ---")
|
| 39 |
+
for r in rows:
|
| 40 |
+
print(f" ID={r[0]} condition={r[1]} date={r[2]}")
|
| 41 |
+
except Exception:
|
| 42 |
+
print(" (analyses table not found or empty)")
|
| 43 |
+
|
| 44 |
+
# Show users
|
| 45 |
+
try:
|
| 46 |
+
users = conn.execute(text("SELECT id, email, created_at FROM users")).fetchall()
|
| 47 |
+
print(f"\n--- Users ---")
|
| 48 |
+
for u in users:
|
| 49 |
+
print(f" ID={u[0]} email={u[1]} created={u[2]}")
|
| 50 |
+
except Exception:
|
| 51 |
+
print(" (users table not found or empty)")
|
| 52 |
+
|
| 53 |
+
print("\n" + "="*50)
|
| 54 |
+
print("CONNECTION SUCCESSFUL")
|
| 55 |
+
print("="*50)
|
| 56 |
+
|
| 57 |
+
except Exception as e:
|
| 58 |
+
print(f"\nCONNECTION FAILED: {e}")
|