local-deep-research 0.1.0__py3-none-any.whl → 0.1.12__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- local_deep_research/defaults/main.toml +5 -0
- local_deep_research/search_system.py +98 -38
- local_deep_research/web/app.py +721 -169
- local_deep_research/web/static/css/styles.css +270 -5
- local_deep_research/web/static/js/app.js +2247 -562
- local_deep_research/web/templates/index.html +37 -1
- local_deep_research/web_search_engines/engines/search_engine_searxng.py +454 -0
- local_deep_research/web_search_engines/search_engine_factory.py +20 -1
- {local_deep_research-0.1.0.dist-info → local_deep_research-0.1.12.dist-info}/METADATA +24 -6
- {local_deep_research-0.1.0.dist-info → local_deep_research-0.1.12.dist-info}/RECORD +14 -13
- {local_deep_research-0.1.0.dist-info → local_deep_research-0.1.12.dist-info}/WHEEL +1 -1
- {local_deep_research-0.1.0.dist-info → local_deep_research-0.1.12.dist-info}/entry_points.txt +0 -0
- {local_deep_research-0.1.0.dist-info → local_deep_research-0.1.12.dist-info/licenses}/LICENSE +0 -0
- {local_deep_research-0.1.0.dist-info → local_deep_research-0.1.12.dist-info}/top_level.txt +0 -0
@@ -132,6 +132,12 @@ a:hover {
|
|
132
132
|
width: calc(100% - 240px);
|
133
133
|
}
|
134
134
|
|
135
|
+
/* Add padding to bottom of main content when log panel is visible */
|
136
|
+
.page#research-progress.active ~ .main-content,
|
137
|
+
.page#research-results.active ~ .main-content {
|
138
|
+
padding-bottom: 42vh; /* Log panel max height + some extra */
|
139
|
+
}
|
140
|
+
|
135
141
|
.page {
|
136
142
|
display: none;
|
137
143
|
}
|
@@ -422,8 +428,9 @@ textarea:focus, input[type="text"]:focus {
|
|
422
428
|
}
|
423
429
|
|
424
430
|
.status-in-progress {
|
425
|
-
background-color: rgba(
|
426
|
-
color: var(--
|
431
|
+
background-color: rgba(64, 191, 255, 0.15);
|
432
|
+
color: var(--accent-tertiary);
|
433
|
+
animation: pulse 2s infinite;
|
427
434
|
}
|
428
435
|
|
429
436
|
.status-failed {
|
@@ -432,7 +439,8 @@ textarea:focus, input[type="text"]:focus {
|
|
432
439
|
}
|
433
440
|
|
434
441
|
.status-suspended {
|
435
|
-
color:
|
442
|
+
background-color: rgba(243, 156, 18, 0.15);
|
443
|
+
color: #ffc107;
|
436
444
|
}
|
437
445
|
|
438
446
|
.status-terminating {
|
@@ -925,10 +933,15 @@ textarea:focus, input[type="text"]:focus {
|
|
925
933
|
}
|
926
934
|
|
927
935
|
.main-content {
|
928
|
-
padding: 1rem;
|
929
|
-
padding-bottom: 70px; /* Add padding for the tab bar */
|
930
936
|
margin-left: 0;
|
931
937
|
width: 100%;
|
938
|
+
padding-bottom: 70px; /* Account for mobile tab bar */
|
939
|
+
}
|
940
|
+
|
941
|
+
/* Adjust padding for mobile when log panel is visible */
|
942
|
+
.page#research-progress.active ~ .main-content,
|
943
|
+
.page#research-results.active ~ .main-content {
|
944
|
+
padding-bottom: calc(42vh + 60px); /* Log panel + mobile tab bar */
|
932
945
|
}
|
933
946
|
|
934
947
|
.sidebar {
|
@@ -982,6 +995,7 @@ textarea:focus, input[type="text"]:focus {
|
|
982
995
|
margin-top: 1rem;
|
983
996
|
}
|
984
997
|
|
998
|
+
/* File path styling from the first version */
|
985
999
|
.file-path {
|
986
1000
|
background-color: #1a1a1a;
|
987
1001
|
padding: 10px;
|
@@ -1005,4 +1019,255 @@ textarea:focus, input[type="text"]:focus {
|
|
1005
1019
|
|
1006
1020
|
.mt-4 {
|
1007
1021
|
margin-top: 20px;
|
1022
|
+
}
|
1023
|
+
|
1024
|
+
/* Try again button styling from the second version */
|
1025
|
+
#try-again-btn {
|
1026
|
+
margin-top: 15px;
|
1027
|
+
display: flex;
|
1028
|
+
align-items: center;
|
1029
|
+
justify-content: center;
|
1030
|
+
gap: 8px;
|
1031
|
+
padding: 8px 16px;
|
1032
|
+
background-color: #3498db;
|
1033
|
+
color: white;
|
1034
|
+
border: none;
|
1035
|
+
border-radius: 4px;
|
1036
|
+
cursor: pointer;
|
1037
|
+
transition: background-color 0.2s;
|
1038
|
+
}
|
1039
|
+
|
1040
|
+
#try-again-btn:hover {
|
1041
|
+
background-color: #2980b9;
|
1042
|
+
}
|
1043
|
+
|
1044
|
+
#try-again-btn i {
|
1045
|
+
margin-right: 5px;
|
1046
|
+
}
|
1047
|
+
|
1048
|
+
/* Collapsible Log Panel styles from the third version */
|
1049
|
+
.collapsible-log-panel {
|
1050
|
+
padding: 1.5rem;
|
1051
|
+
border: 1px solid var(--border-color);
|
1052
|
+
border-radius: 8px;
|
1053
|
+
background-color: var(--bg-tertiary);
|
1054
|
+
display: flex;
|
1055
|
+
flex-direction: column;
|
1056
|
+
max-height: 40vh; /* Maximum height of 40% of viewport */
|
1057
|
+
box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.2);
|
1058
|
+
padding: 0;
|
1059
|
+
margin: 0;
|
1060
|
+
/* Hide by default, only show on research-progress and research-results pages */
|
1061
|
+
display: none;
|
1062
|
+
}
|
1063
|
+
|
1064
|
+
/* Only show log panel on research-progress and relevant pages */
|
1065
|
+
.page#research-progress.active ~ .collapsible-log-panel,
|
1066
|
+
.page#research-results.active ~ .collapsible-log-panel {
|
1067
|
+
display: flex;
|
1068
|
+
}
|
1069
|
+
|
1070
|
+
/* Adjust for smaller screens */
|
1071
|
+
@media (max-width: 991px) {
|
1072
|
+
.collapsible-log-panel {
|
1073
|
+
left: 60px; /* Adjust for collapsed sidebar */
|
1074
|
+
}
|
1075
|
+
}
|
1076
|
+
|
1077
|
+
@media (max-width: 767px) {
|
1078
|
+
.collapsible-log-panel {
|
1079
|
+
left: 0; /* Full width on mobile */
|
1080
|
+
bottom: 60px; /* Account for mobile tab bar */
|
1081
|
+
}
|
1082
|
+
}
|
1083
|
+
|
1084
|
+
.log-panel-header {
|
1085
|
+
display: flex;
|
1086
|
+
align-items: center;
|
1087
|
+
padding: 0.75rem 1rem;
|
1088
|
+
background: var(--gradient-bg);
|
1089
|
+
cursor: pointer;
|
1090
|
+
user-select: none;
|
1091
|
+
transition: background-color 0.2s;
|
1092
|
+
z-index: 101;
|
1093
|
+
border-radius: 8px 8px 0 0;
|
1094
|
+
}
|
1095
|
+
|
1096
|
+
.log-panel-header:hover {
|
1097
|
+
background-color: var(--bg-secondary);
|
1098
|
+
}
|
1099
|
+
|
1100
|
+
.log-panel-header .toggle-icon {
|
1101
|
+
margin-right: 0.75rem;
|
1102
|
+
transition: transform 0.3s ease;
|
1103
|
+
}
|
1104
|
+
|
1105
|
+
.log-panel-header.collapsed .toggle-icon {
|
1106
|
+
transform: rotate(-90deg);
|
1107
|
+
}
|
1108
|
+
|
1109
|
+
.log-indicator {
|
1110
|
+
margin-left: auto;
|
1111
|
+
background-color: var(--accent-primary);
|
1112
|
+
color: white;
|
1113
|
+
border-radius: 12px;
|
1114
|
+
padding: 0.1rem 0.5rem;
|
1115
|
+
font-size: 0.75rem;
|
1116
|
+
min-width: 1.5rem;
|
1117
|
+
text-align: center;
|
1118
|
+
}
|
1119
|
+
|
1120
|
+
.log-panel-content {
|
1121
|
+
display: flex;
|
1122
|
+
flex-direction: column;
|
1123
|
+
overflow: hidden;
|
1124
|
+
height: calc(40vh - 40px); /* Viewport height minus header */
|
1125
|
+
transition: height 0.3s ease;
|
1126
|
+
}
|
1127
|
+
|
1128
|
+
.log-panel-content.collapsed {
|
1129
|
+
height: 0 !important;
|
1130
|
+
overflow: hidden;
|
1131
|
+
padding: 0;
|
1132
|
+
margin: 0;
|
1133
|
+
border: none;
|
1134
|
+
}
|
1135
|
+
|
1136
|
+
.log-controls {
|
1137
|
+
display: flex;
|
1138
|
+
justify-content: space-between;
|
1139
|
+
align-items: center;
|
1140
|
+
padding: 0.5rem 1rem;
|
1141
|
+
border-bottom: 1px solid var(--border-color);
|
1142
|
+
background-color: rgba(0, 0, 0, 0.2);
|
1143
|
+
}
|
1144
|
+
|
1145
|
+
.log-filter {
|
1146
|
+
display: flex;
|
1147
|
+
align-items: center;
|
1148
|
+
gap: 0.5rem;
|
1149
|
+
}
|
1150
|
+
|
1151
|
+
.log-filter select {
|
1152
|
+
background-color: var(--bg-secondary);
|
1153
|
+
color: var(--text-primary);
|
1154
|
+
border: 1px solid var(--border-color);
|
1155
|
+
padding: 0.25rem 0.5rem;
|
1156
|
+
border-radius: 4px;
|
1157
|
+
}
|
1158
|
+
|
1159
|
+
.console-log {
|
1160
|
+
padding: 0.5rem;
|
1161
|
+
font-family: 'Consolas', 'Monaco', monospace;
|
1162
|
+
font-size: 0.85rem;
|
1163
|
+
line-height: 1.4;
|
1164
|
+
overflow-y: auto;
|
1165
|
+
height: 100%;
|
1166
|
+
}
|
1167
|
+
|
1168
|
+
.console-log-entry {
|
1169
|
+
padding: 0.5rem;
|
1170
|
+
display: flex;
|
1171
|
+
align-items: flex-start;
|
1172
|
+
border-bottom: 1px solid rgba(255, 255, 255, 0.05);
|
1173
|
+
}
|
1174
|
+
|
1175
|
+
.console-log-entry:hover {
|
1176
|
+
background-color: rgba(0, 0, 0, 0.2);
|
1177
|
+
}
|
1178
|
+
|
1179
|
+
.console-log-entry .log-timestamp {
|
1180
|
+
color: var(--text-muted);
|
1181
|
+
min-width: 4.5rem;
|
1182
|
+
margin-right: 0.5rem;
|
1183
|
+
font-size: 0.75rem;
|
1184
|
+
}
|
1185
|
+
|
1186
|
+
.console-log-entry .log-badge {
|
1187
|
+
display: inline-block;
|
1188
|
+
padding: 0 0.4rem;
|
1189
|
+
margin-right: 0.5rem;
|
1190
|
+
border-radius: 3px;
|
1191
|
+
font-size: 0.7rem;
|
1192
|
+
text-transform: uppercase;
|
1193
|
+
font-weight: bold;
|
1194
|
+
line-height: 1.4;
|
1195
|
+
}
|
1196
|
+
|
1197
|
+
.console-log-entry .log-message {
|
1198
|
+
flex: 1;
|
1199
|
+
word-break: break-word;
|
1200
|
+
padding-right: 0.5rem;
|
1201
|
+
padding-left: 0.5rem;
|
1202
|
+
}
|
1203
|
+
|
1204
|
+
.console-log-entry.log-milestone .log-badge {
|
1205
|
+
background-color: var(--accent-primary);
|
1206
|
+
color: white;
|
1207
|
+
}
|
1208
|
+
|
1209
|
+
.console-log-entry.log-error .log-badge {
|
1210
|
+
background-color: var(--error-color);
|
1211
|
+
color: white;
|
1212
|
+
}
|
1213
|
+
|
1214
|
+
.console-log-entry.log-info .log-badge {
|
1215
|
+
background-color: var(--accent-tertiary);
|
1216
|
+
color: white;
|
1217
|
+
}
|
1218
|
+
|
1219
|
+
.empty-log-message {
|
1220
|
+
color: var(--text-muted);
|
1221
|
+
padding: 1rem;
|
1222
|
+
text-align: center;
|
1223
|
+
font-style: italic;
|
1224
|
+
}
|
1225
|
+
|
1226
|
+
/* Add warning message styling */
|
1227
|
+
.warning-message {
|
1228
|
+
background-color: rgba(255, 193, 7, 0.1);
|
1229
|
+
color: #ffc107;
|
1230
|
+
border-color: rgba(255, 193, 7, 0.2);
|
1231
|
+
}
|
1232
|
+
|
1233
|
+
/* Update existing error message styling if needed */
|
1234
|
+
.error-message {
|
1235
|
+
display: none;
|
1236
|
+
margin: 15px 0;
|
1237
|
+
padding: 10px 15px;
|
1238
|
+
border-radius: 4px;
|
1239
|
+
border-left: 4px solid;
|
1240
|
+
background-color: rgba(220, 53, 69, 0.1);
|
1241
|
+
color: #dc3545;
|
1242
|
+
border-color: rgba(220, 53, 69, 0.2);
|
1243
|
+
font-weight: 500;
|
1244
|
+
}
|
1245
|
+
|
1246
|
+
.filter-buttons {
|
1247
|
+
display: flex;
|
1248
|
+
gap: 4px;
|
1249
|
+
justify-content: flex-start;
|
1250
|
+
margin-top: 0;
|
1251
|
+
}
|
1252
|
+
|
1253
|
+
.small-btn {
|
1254
|
+
font-size: 0.75rem;
|
1255
|
+
padding: 4px 8px;
|
1256
|
+
background-color: var(--bg-secondary);
|
1257
|
+
color: var(--text-secondary);
|
1258
|
+
border: 1px solid var(--border-color);
|
1259
|
+
border-radius: 4px;
|
1260
|
+
cursor: pointer;
|
1261
|
+
transition: all 0.2s;
|
1262
|
+
}
|
1263
|
+
|
1264
|
+
.small-btn:hover {
|
1265
|
+
background-color: rgba(110, 79, 246, 0.2);
|
1266
|
+
color: var(--text-primary);
|
1267
|
+
}
|
1268
|
+
|
1269
|
+
.small-btn.selected {
|
1270
|
+
background-color: var(--accent-primary);
|
1271
|
+
color: white;
|
1272
|
+
border-color: var(--accent-primary);
|
1008
1273
|
}
|