@@ -79,8 +79,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
79
79
side
80
80
@click.stop="handleDeleteSavedView(item)"
81
81
>
82
- <q-icon name="delete"
83
- color="grey" size="xs" />
82
+ <q-icon name="delete" color="grey" size="xs" />
84
83
</q-item-section>
85
84
</q-item>
86
85
</div>
@@ -192,8 +191,7 @@ color="grey" size="xs" />
192
191
</q-item-section>
193
192
</q-item>
194
193
<q-separator />
195
- <q-item class="q-pa-sm saved-view-item"
196
- clickable v-close-popup>
194
+ <q-item class="q-pa-sm saved-view-item" clickable v-close-popup>
197
195
<q-item-section
198
196
@click.stop="toggleCustomDownloadDialog"
199
197
v-close-popup
@@ -647,6 +645,7 @@ import useSqlSuggestions from "@/composables/useSuggestions";
647
645
import { mergeDeep, b64DecodeUnicode, getImageURL } from "@/utils/zincutils";
648
646
import savedviewsService from "@/services/saved_views";
649
647
import ConfirmDialog from "@/components/ConfirmDialog.vue";
648
+ import { cloneDeep } from "lodash-es";
650
649
651
650
const defaultValue: any = () => {
652
651
return {
@@ -775,6 +774,7 @@ export default defineComponent({
775
774
generateURLQuery,
776
775
buildSearch,
777
776
resetStreamData,
777
+ loadStreamLists,
778
778
} = useLogs();
779
779
const queryEditorRef = ref(null);
780
780
@@ -955,7 +955,6 @@ export default defineComponent({
955
955
};
956
956
957
957
const downloadLogs = (data) => {
958
- console.log(data);
959
958
const filename = "logs-data.csv";
960
959
const dataobj = jsonToCsv(data);
961
960
const file = new File([dataobj], filename, {
@@ -1408,7 +1407,68 @@ export default defineComponent({
1408
1407
await updatedLocalLogFilterField();
1409
1408
await getStreams("logs", true);
1410
1409
} else {
1410
+ // ----- Here we are explicitly handling stream change -----
1411
1411
resetStreamData();
1412
+ searchObj.data.stream.streamType =
1413
+ extractedObj.data.stream.streamType;
1414
+ // Here copying selected stream object, as in loadStreamLists() we are setting selected stream object to empty object
1415
+ // After loading stream list, we are setting selected stream object to copied object
1416
+ const selectedStream = cloneDeep(
1417
+ extractedObj.data.stream.selectedStream
1418
+ );
1419
+
1420
+ extractedObj.data.transforms = searchObj.data.transforms;
1421
+ extractedObj.data.histogram = {
1422
+ xData: [],
1423
+ yData: [],
1424
+ chartParams: {},
1425
+ };
1426
+ extractedObj.data.savedViews = searchObj.data.savedViews;
1427
+ extractedObj.data.queryResults = [];
1428
+ extractedObj.meta.scrollInfo = {};
1429
+
1430
+ searchObj.value = mergeDeep(searchObj, extractedObj);
1431
+ searchObj.data.streamResults = {};
1432
+
1433
+ const streamData = await getStreams(
1434
+ searchObj.data.stream.streamType,
1435
+ true
1436
+ );
1437
+ searchObj.data.streamResults = streamData;
1438
+ await loadStreamLists();
1439
+ searchObj.data.stream.selectedStream = selectedStream;
1440
+ // searchObj.value = mergeDeep(searchObj, extractedObj);
1441
+
1442
+ await nextTick();
1443
+ if (extractedObj.data.tempFunctionContent != "") {
1444
+ populateFunctionImplementation(
1445
+ {
1446
+ name: "",
1447
+ function: searchObj.data.tempFunctionContent,
1448
+ },
1449
+ false
1450
+ );
1451
+ searchObj.data.tempFunctionContent =
1452
+ extractedObj.data.tempFunctionContent;
1453
+ searchObj.meta.functionEditorPlaceholderFlag = false;
1454
+ } else {
1455
+ populateFunctionImplementation(
1456
+ {
1457
+ name: "",
1458
+ function: "",
1459
+ },
1460
+ false
1461
+ );
1462
+ searchObj.data.tempFunctionContent = "";
1463
+ searchObj.meta.functionEditorPlaceholderFlag = true;
1464
+ }
1465
+ dateTimeRef.value.setSavedDate(searchObj.data.datetime);
1466
+ if (searchObj.meta.refreshInterval != "0") {
1467
+ onRefreshIntervalUpdate();
1468
+ } else {
1469
+ clearInterval(store.state.refreshIntervalID);
1470
+ }
1471
+ await updatedLocalLogFilterField();
1412
1472
}
1413
1473
$q.notify({
1414
1474
message: `${item.view_name} view applied successfully.`,
@@ -1417,10 +1477,14 @@ export default defineComponent({
1417
1477
timeout: 1000,
1418
1478
});
1419
1479
setTimeout(async () => {
1420
- searchObj.loading = true;
1421
- await getQueryData();
1422
- store.dispatch("setSavedViewFlag", false);
1423
- updateUrlQueryParams();
1480
+ try {
1481
+ searchObj.loading = true;
1482
+ await getQueryData();
1483
+ store.dispatch("setSavedViewFlag", false);
1484
+ updateUrlQueryParams();
1485
+ } catch (e) {
1486
+ console.log(e);
1487
+ }
1424
1488
}, 1000);
1425
1489
1426
1490
// } else {
0 commit comments