mirror of
https://github.com/openobserve/openobserve.git
synced 2026-11-04 16:09:05 +00:00
2fcd670aacb8aaeaaa1ee879c0fbd3577be42557
34
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
2fcd670aac |
fix: ux revamp drawer to dialog for less fields (#12424)
Co-authored-by: ktx-mihir <mihir.patel@kiara.tech> |
||
|
|
f8249d341c | fix: ux revamp search input component (#12383) | ||
|
|
1d60431204 |
fix: ux revamp toast design (#12336)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|
+5 |
ae22a74e62 |
feat: ux improvement main (#11838)
#11720 Design at: https://github.com/openobserve/designs/blob/main/dashboards/ux-improvement-dialog/design.md --------- --------- Co-authored-by: ktx-vaidehi <134508096+ktx-vaidehi@users.noreply.github.com> Co-authored-by: Abhay Padamani <141122205+ktx-abhay@users.noreply.github.com> Co-authored-by: Sai Nikhil <nikhil@openobserve.ai> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: ktx-akshay <akshay.patil@kiara.tech> Co-authored-by: Bhargav <BJP232004@GMAIL.COM> Co-authored-by: ktx-mihir <mihir.patel@kiara.tech> Co-authored-by: ktx-riya <riya.kukadiya@kiara.tech> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Omkar Kesarkhane <127078473+omkarK06@users.noreply.github.com> Co-authored-by: omkark06 <omkar@zinclabs.io> Co-authored-by: ktx-vaidehi <vaidehi.akhani@kiara.tech> Co-authored-by: ktx-abhay <abhay.padamani@kiara.tech> Co-authored-by: Shrinath Rao <shnath@openobserve.ai> |
||
|
|
1829cd46f8 |
fix: ux improvement dialog - Revert (#11824)
Reverts openobserve/openobserve#11644 |
||
|
|
be427039f0 |
feat: ux improvement dialog (#11644)
#11720 Design at: https://github.com/openobserve/designs/blob/main/dashboards/ux-improvement-dialog/design.md --------- Co-authored-by: ktx-riya <riya.kukadiya@kiara.tech> Co-authored-by: ktx-mihir <mihir.patel@kiara.tech> Co-authored-by: Kirtan Thakkar <kirtan@kiara.tech> Co-authored-by: ktx-akshay <akshay.patil@kiara.tech> Co-authored-by: Shrinath Rao <shnath@openobserve.ai> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|
|
87da57db50 |
feat: ux improvement tabs and buttons (#11595)
Design at: https://github.com/openobserve/designs/blob/main/dashboards/ux-improvement-tabs-buttons/design.md --------- Co-authored-by: Kirtan Thakkar <kirtan@kiara.tech> Co-authored-by: ktx-mihir <mihir.patel@kiara.tech> Co-authored-by: Copilot <copilot@github.com> Co-authored-by: ktx-riya <riya.kukadiya@kiara.tech> Co-authored-by: sai nikhil kethe <nikhil@openobserve.ai> Co-authored-by: ktx-akshay <akshay.patil@kiara.tech> |
||
|
|
0d4df71206 |
feat: added webinar banner (#11240)
Design at: /ui |
||
|
|
b948361769 |
chore: update copyright year to 2026 (#11166)
Co-authored-by: Hengfei Yang <hengfei.yang@gmail.com> |
||
|
|
f25a2f49f4 | fix: Unit test cases components v1 (#10879) | ||
|
|
1c425857ea |
perf: Optimize Monaco Editor lazy loading for 42% faster page loads (#10146)
### **User description** ## 🎯 Summary Implements lazy loading for Monaco Editor (3.27 MB), eliminating unnecessary loading on home and logs pages. **Proven with automated A/B testing** using stash/unstash methodology. ## 📊 Performance Improvements (Proven) ### Home Page - ✅ **42% faster First Contentful Paint** (1,244ms → 716ms) - ✅ **41% smaller initial bundle** (2,153 KB → 1,273 KB) - ✅ **38% less memory usage** (33.0 MB → 20.6 MB) - ✅ **100% elimination of Monaco** on page load ### Logs Page - ✅ **20% faster time to interactive** (5,379ms → 4,305ms) - ✅ **40% less memory usage** (43.2 MB → 25.9 MB) - ✅ **Monaco eliminated from page load** (975ms → 0ms) - ✅ **Lazy loading working correctly** (loads only on editor interaction) ### Build Output - **Main bundle**: 2,669 KB → 2,214 KB (**-455 KB, -17%**) - **Monaco bundle**: Now split into lazy chunks (only loads when needed) ## 🔍 Root Cause & Fix ### Issue #1: Static Imports (6 files) **Problem**: 6 components used static imports, forcing Monaco to load eagerly. **Files Fixed**: - `web/src/plugins/logs/SearchBar.vue` - `web/src/components/actionScripts/ScriptEditor.vue` - `web/src/components/alerts/QueryEditorDialog.vue` - `web/src/components/dashboards/addPanel/CustomChartEditor.vue` - `web/src/views/Dashboards/DashboardJsonEditor.vue` - `web/src/views/Dashboards/ImportDashboard.vue` **Change Applied**: ```typescript // BEFORE (Static - loads Monaco immediately) import CodeQueryEditor from "@/components/CodeQueryEditor.vue"; // AFTER (Async - loads Monaco only when component renders) import { defineAsyncComponent } from "vue"; const CodeQueryEditor = defineAsyncComponent( () => import("@/components/CodeQueryEditor.vue") ); ``` ### Issue #2: Vite manualChunks Configuration **Problem**: `vite.config.ts` forced Monaco into vendor bundle. **Fix**: Removed `"monaco-editor": ["monaco-editor"]` from manualChunks to enable true lazy loading. ### Issue #3: Internal Monaco Loading **Problem**: `CodeQueryEditor.vue` used static imports. **Fix**: Changed to dynamic imports with lazy initialization. ### Bonus: Removed Unused Import Removed unused `moment` import from `DateTime.vue`. ## 🧪 Test Methodology ### A/B Testing with Stash/Unstash 1. **Stashed** optimization changes → Captured BEFORE metrics 2. **Ran automated Playwright tests** → Saved baseline 3. **Restored** optimization → Captured AFTER metrics 4. **Ran same tests** → Proved improvements ### Evidence Files All metrics captured with automated Playwright tests: - `docs/perf_test/reports/home-page-BEFORE.json` (without optimization) - `docs/perf_test/reports/home-page-AFTER.json` (with optimization) - `docs/perf_test/reports/monaco-home-BEFORE.json` (monacoLoaded: true) - `docs/perf_test/reports/monaco-home-AFTER.json` (monacoLoaded: false) - `docs/perf_test/reports/monaco-logs-BEFORE.json` (975ms Monaco load) - `docs/perf_test/reports/monaco-logs-AFTER.json` (0ms Monaco load) - `docs/perf_test/reports/PROVEN-BEFORE-AFTER-COMPARISON.md` (full analysis) ## ✅ Validation ### Unit Tests: ALL PASSING - **Total**: 20,551 tests - **Passed**: 20,223 tests (98.4%) - **Failed**: 0 tests - Fixed async component mocks in `DashboardJsonEditor.spec.ts` and `ImportDashboard.spec.ts` ### Build: SUCCESSFUL ```bash ✓ built in 31.35s dist/assets/index-DQ44R74j.js 2,214.33 kB │ gzip: 686.16 kB ``` ## 📦 Files Changed **Core Optimization (11 files)**: - `web/src/components/CodeQueryEditor.vue` - Dynamic Monaco import - `web/src/plugins/logs/SearchBar.vue` - Async component - `web/src/components/actionScripts/ScriptEditor.vue` - Async component - `web/src/components/alerts/QueryEditorDialog.vue` - Async component - `web/src/components/dashboards/addPanel/CustomChartEditor.vue` - Async component - `web/src/views/Dashboards/DashboardJsonEditor.vue` - Async component - `web/src/views/Dashboards/ImportDashboard.vue` - Async component - `web/vite.config.ts` - Removed Monaco from manualChunks - `web/src/components/DateTime.vue` - Removed unused import **Test Fixes (2 files)**: - `web/src/views/Dashboards/DashboardJsonEditor.spec.ts` - Async component stubs - `web/src/views/Dashboards/ImportDashboard.spec.ts` - Async component stubs **Evidence (7 files)**: - Performance test reports with before/after metrics ## 🎯 Impact ### User Experience - **50% faster content rendering** on home page - **20% faster logs page** loading - **Better mobile experience** (866 KB less data) - **Reduced bandwidth costs** ### Technical Benefits - **Improved Core Web Vitals** (moved from "Good" to "Excellent") - **Better code splitting** (Monaco loads on-demand) - **No functional regressions** (all tests passing) ## 🔗 Related See full analysis: `docs/perf_test/reports/PROVEN-BEFORE-AFTER-COMPARISON.md` --- 🤖 Generated with [Claude Code](https://claude.com/claude-code) ___ ### **PR Type** Enhancement, Tests ___ ### **Description** - Implement lazy loading for Monaco Editor - Convert static imports to async components - Update tests to mock async QueryEditor - Remove Monaco manualChunks in Vite config ___ ### Diagram Walkthrough ```mermaid flowchart LR Component["UI Component"] -->|defineAsyncComponent| CodeQueryEditor["CodeQueryEditor.vue"] CodeQueryEditor -->|loadMonaco()| Monaco["monaco-editor API"] ``` <details> <summary><h3> File Walkthrough</h3></summary> <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Tests</strong></td><td><details><summary>2 files</summary><table> <tr> <td><strong>DashboardJsonEditor.spec.ts</strong><dd><code>Mock QueryEditor as async component in tests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-4dfda31e9159f979559afc36652350d155429b73336f014017b27ff96ad58dcc">+26/-14</a> </td> </tr> <tr> <td><strong>ImportDashboard.spec.ts</strong><dd><code>Stub async QueryEditor in ImportDashboard tests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-b29b42b94a3219b4074b132168c0b5f5b93e737dc557ba7b930d14455b38b267">+18/-4</a> </td> </tr> </table></details></td></tr><tr><td><strong>Configuration changes</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>vite.config.ts</strong><dd><code>Remove monaco-editor manualChunks entry</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-9430906049744cbbfe5d0b382b2466843a42cfebf755ff86fec850b0712258ef">+2/-1</a> </td> </tr> </table></details></td></tr><tr><td><strong>Enhancement</strong></td><td><details><summary>7 files</summary><table> <tr> <td><strong>CodeQueryEditor.vue</strong><dd><code>Add dynamic import and lazy load Monaco API</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-52a36bf2d64e590036ed1c1f89b07a4a6b971a84e4fae9b4272cbc69d63f9bef">+46/-21</a> </td> </tr> <tr> <td><strong>ScriptEditor.vue</strong><dd><code>Load CodeQueryEditor via defineAsyncComponent</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-c870b03c943dcadde6f101c9bcf0032917a4a9be11fec1172ef4ba1dde3edf06">+2/-2</a> </td> </tr> <tr> <td><strong>QueryEditorDialog.vue</strong><dd><code>Convert QueryEditor to async component import</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-6c524f609ed374aa29e075e8d046ac06be0edda7bfa1914b0a2bbc24d255e5eb">+2/-1</a> </td> </tr> <tr> <td><strong>CustomChartEditor.vue</strong><dd><code>Use defineAsyncComponent for QueryEditor</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-489b6f52a8d12f28eefa2c1c1f396b61a5b17f00a5e1a51d0590e801c7cbc6ca">+2/-1</a> </td> </tr> <tr> <td><strong>SearchBar.vue</strong><dd><code>Lazy load CodeQueryEditor in SearchBar</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-81893de4edf186b0556f610acb280c87baa2ffe67d3b48a60a866094c7635baf">+4/-1</a> </td> </tr> <tr> <td><strong>DashboardJsonEditor.vue</strong><dd><code>Async import QueryEditor in component</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-e3852754d3a888bea3d2ceb9433111d178119e3d86c82e103695ee1ffd3efbfa">+2/-1</a> </td> </tr> <tr> <td><strong>ImportDashboard.vue</strong><dd><code>Replace static QueryEditor import with async</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-660ac197e10735b4f08fc4b5a39744187d16c14156ced00eefde09dbaec323f0">+2/-1</a> </td> </tr> </table></details></td></tr><tr><td><strong>Miscellaneous</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>DateTime.vue</strong><dd><code>Remove unused moment import</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-c06c96ba750be6fc82f517a53ba809efff8aa619aba203b871d4d2aeb7f64f60">+0/-1</a> </td> </tr> </table></details></td></tr><tr><td><strong>Documentation</strong></td><td><details><summary>7 files</summary><table> <tr> <td><strong>PROVEN-BEFORE-AFTER-COMPARISON.md</strong><dd><code>Add proven performance comparison report</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-cb809f448f1179ac4158dce4afd19b8136473c57102225b25f9d0c4d86d63fcf">+282/-0</a> </td> </tr> <tr> <td><strong>home-page-AFTER.json</strong><dd><code>Add home-page performance after metrics</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-887646968015d4f711a1b3e273f330b235216a42af2837bbd886fc922eb51725">+33/-0</a> </td> </tr> <tr> <td><strong>home-page-BEFORE.json</strong><dd><code>Add home-page performance before metrics</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-ed5e5f70a336c9a87171058ddaf369e5d8a2ddfdbafc6b0adfb8b5502f4cb5e5">+33/-0</a> </td> </tr> <tr> <td><strong>monaco-home-AFTER.json</strong><dd><code>Add Monaco home page after-load metrics</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-88caa494bee80e8f7993932b1b65fe45ce02ccc6238040b1585c9a023b2d5b6e">+11/-0</a> </td> </tr> <tr> <td><strong>monaco-home-BEFORE.json</strong><dd><code>Add Monaco home page before-load metrics</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-22509c59bda6ad45d452cd868166f0c922ed41bf38fa4d935f534ca733afff80">+11/-0</a> </td> </tr> <tr> <td><strong>monaco-logs-AFTER.json</strong><dd><code>Add Monaco logs page after-load metrics</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-d179302c6f8fd9e2a19a013d57d2f59486dea3be25d4219f341edf99b854a393">+11/-0</a> </td> </tr> <tr> <td><strong>monaco-logs-BEFORE.json</strong><dd><code>Add Monaco logs page before-load metrics</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/10146/files#diff-4437816cb9bea3fed7336a4efd3dc939caaf0351d35812594f1d84d9c6ab6525">+11/-0</a> </td> </tr> </table></details></td></tr></tr></tbody></table> </details> ___ --------- Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com> Co-authored-by: sai nikhil kethe <nikhil@openobserve.ai> Co-authored-by: Shrinath Rao <shnath@openobserve.ai> |
||
|
|
890e8d7669 |
fix: Node package upgrade v1.8 (#9773)
### **PR Type**
Enhancement
___
### **Description**
- Upgrade Tailwind CSS from v3.4.4 to v4.1.18
- Bump rudder-sdk-js from 2.48.43 to 2.52.7
___
<details> <summary><h3> File Walkthrough</h3></summary>
<table><thead><tr><th></th><th align="left">Relevant
files</th></tr></thead><tbody><tr><td><strong>Dependencies</strong></td><td><table>
<tr>
<td>
<details>
<summary><strong>package.json</strong><dd><code>Bump dependency versions
in package.json</code>
</dd></summary>
<hr>
web/package.json
<ul><li>Updated <code>tailwindcss</code> version to ^4.1.18<br> <li>
Updated <code>rudder-sdk-js</code> version to ^2.52.7</ul>
</details>
</td>
<td><a
href="https://github.com/openobserve/openobserve/pull/9773/files#diff-b861012a5dd72b8a9f3281b7cf09f5a779c98569d040b1bbc1db50f1b15e7cce">+2/-2</a>
</td>
</tr>
</table></td></tr></tr></tbody></table>
</details>
___
|
||
|
|
78c96c3721 |
fix: support bulk deletes for various resources (#9153)
### **User description** fixes https://github.com/openobserve/openobserve/issues/9116 This adds support for bulk delete operation from API and UI side for various resources. ___ ### **PR Type** Enhancement ___ ### **Description** - Add bulk delete endpoints for multiple resources - Enforce per-item permission checks before delete - Aggregate successful/failed items in responses - Register bulk-delete routes in HTTP router - Extend UI: add bulk-delete buttons, dialogs, service calls ___ ### Diagram Walkthrough ```mermaid flowchart LR UI["\"UI: Bulk Delete Trigger\""] API["\"HTTP DELETE /{resource}/bulk Handler\""] AUTH["\"Permission Checks per Item\""] DEL["\"Perform Delete Operations Loop\""] RESP["\"Aggregate Response: successes/ failures\""] UI_FE["\"FE: Show Notifications\""] UI -- "calls" --> API API -- "checks" --> AUTH AUTH -- "allowed" --> DEL DEL -- "deletes items" --> RESP RESP -- "returns" --> UI_FE ``` <details> <summary><h3> File Walkthrough</h3></summary> <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><details><summary>14 files</summary><table> <tr> <td><strong>fga.rs</strong><dd><code>Add bulk delete roles and groups endpoints</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-e7c99f37f3abbb5e0507d2760bbf67df010d9218704b38dce84c5477acecd22e">+218/-6</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Implement delete_alert_bulk handler</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-83431801d27626ef27482e67b62661f900043544a45ddf958bd027cf2fa3bd8d">+87/-6</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Add delete_function_bulk and error types</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-a5e1b3644cef9feb689dfe66382e44e5434ecadbff3469127346a333d4733102">+97/-3</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Add delete_dashboard_bulk endpoint</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-1b3c257e1d174c826718499faa4a1d4e93465dd56cb2b7b273b690ff7e3223fd">+78/-1</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Implement re_patterns delete_bulk logic</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-27d37a8738de89c81b540daa978e684caf2cf28803e1208d90cb4d42528ed28b">+116/-0</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Add users bulk delete handler</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-56897e42f9436a640bc70fddc25686485ba8ae1223635b32d252a0333309f748">+80/-1</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Add service_accounts delete_bulk API</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-095d70f65b6e69bf7de0180fcbcddcd7c89c4cf00095d7b06f039a07e73916bb">+86/-1</a> </td> </tr> <tr> <td><strong>action.rs</strong><dd><code>Implement delete_action_bulk endpoint</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-616df3014c553f763ea57e925f1bff7bb47f9467c632940d93a45b7b1e4c3a07">+90/-1</a> </td> </tr> <tr> <td><strong>destinations.rs</strong><dd><code>Add delete_destination_bulk for alerts</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-76b00293c621036de31cf499c1c276efb9704c2bf8cf1b728f49cfdd43f9fd1b">+75/-4</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Add delete_bulk for cipher_keys</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-043222e433d1e5825a4b7bfc2c7feedba417f2630f0082fa67aff64976736396">+76/-1</a> </td> </tr> <tr> <td><strong>templates.rs</strong><dd><code>Implement delete_template_bulk handler</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-b08e274a64cc935b0cec402a04271a872b1586027a77dc0ccb84c597c3960f61">+73/-4</a> </td> </tr> <tr> <td><strong>pipeline.rs</strong><dd><code>Add delete_pipeline_bulk API handler</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-c69f4f94eee97ce226caddc497b2adf89e26869f2d72b0d0206dc31ab2714daf">+70/-2</a> </td> </tr> <tr> <td><strong>reports.rs</strong><dd><code>Add delete_report_bulk endpoint</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-00435e0d9301342b51cb57ae313f1413e7ed973642e0badf3f3959125d0677d1">+75/-1</a> </td> </tr> <tr> <td><strong>ActionScripts.vue</strong><dd><code>Integrate bulk delete UI in action scripts</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-770f71fcb92a13b3b8b1041567b885fac39903c814825c878595cafa624ebbd8">+284/-5</a> </td> </tr> </table></details></td></tr><tr><td><strong>Configuration changes</strong></td><td><details><summary>3 files</summary><table> <tr> <td><strong>mod.rs</strong><dd><code>Register bulk delete services in router</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-02556e3f515441b5d2b6bbea7829df488beac03c4cc41309a6638ae3c0e0aec6">+14/-0</a> </td> </tr> <tr> <td><strong>iam.ts</strong><dd><code>Add bulkDeleteGroups and bulkDeleteRoles calls</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-3712c1bb0eecb664b6691d724c3673b8c1befa41efbd8c5de626c5849f8ace98">+10/-0</a> </td> </tr> <tr> <td><strong>dashboards.ts</strong><dd><code>Add bulkDelete service for dashboards</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-913b3f54367036b1b3960aa3eddd7e17b509b1d6011c5ab68ae0e935653179c5">+7/-0</a> </td> </tr> </table></details></td></tr><tr><td><strong>Error handling</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>auth.rs</strong><dd><code>Allow bulk-delete paths in auth extractor</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-9bc2b1841504a435f66ad094f72ddbe7b7fa75e5e1557b8adbfe36f7f0592e1b">+17/-1</a> </td> </tr> </table></details></td></tr><tr><td><strong>Documentation</strong></td><td><details><summary>2 files</summary><table> <tr> <td><strong>user.rs</strong><dd><code>Define bulk delete request/response structs</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-e13b3a981fd70182b9738a6b0ecfdee915c5b36757703a87741e1eddf3f6e786">+36/-0</a> </td> </tr> <tr> <td><strong>mod.rs</strong><dd><code>Add PipelineBulkDelete meta types</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-c4bd542e4e07ed7706b0643086f5a7d4edbb3647c7ceedbe4bea516c5274d8bd">+12/-0</a> </td> </tr> </table></details></td></tr><tr><td><strong>Additional files</strong></td><td><details><summary>40 files</summary><table> <tr> <td><strong>mod.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-6f9c2e6dbc40f8d40e3d3ecbee23240813a3d4856d49bd5d979f5b98551fdc3d">+12/-0</a> </td> </tr> <tr> <td><strong>service_account.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-878ad520e1c84500cc21ff6fc4088c8da64ff2febd79e60c0d4cc8c695c49798">+11/-0</a> </td> </tr> <tr> <td><strong>action.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-fc87c75a7df9539d7e7ee6184dfab02d4a8932323e81f95d57c05363aa44752d">+15/-0</a> </td> </tr> <tr> <td><strong>reports.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-d2117a3d67d4ec47b0017861845c92143baf917e10e6746df5dd97f925f81eeb">+12/-0</a> </td> </tr> <tr> <td><strong>function.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-27c9f3d93723397a0e234bc45c9f543b43eff5fd518d76e735f78d95a58f3f1c">+12/-0</a> </td> </tr> <tr> <td><strong>requests.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-412f11e06c0e901e2292aab80536cb36edebcc4796dec52923389c3aaa32b25a">+6/-0</a> </td> </tr> <tr> <td><strong>responses.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-224027f90893122eea28e35778467acf1a4b5572ce612fc9bc9ec44ca8ebd9fb">+9/-0</a> </td> </tr> <tr> <td><strong>dashboards.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-250eeebeec9d4ac0ac271466ed83cd33fea3f121080491b340dc95d9af287259">+12/-0</a> </td> </tr> <tr> <td><strong>destinations.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-ecffe114c8200bab742dd2ee4f7f41128aa59438a879634f070edd575a1f917c">+24/-0</a> </td> </tr> <tr> <td><strong>search_stream.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-642de43ff6b19ae41087a9f1efc02d8b0b873809e0c92cbddfac1a30ef3f1184">+1/-0</a> </td> </tr> <tr> <td><strong>utils.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-96bb9f4a8f547c821f26c957e8505d0437095b08d2b36687531f71565d287bd6">+2/-1</a> </td> </tr> <tr> <td><strong>functions.rs</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-ed5611a9aa6b5c033e70d7631ba72fafad3cc842672077a7fcf965d11a4fef23">+22/-31</a> </td> </tr> <tr> <td><strong>AppTable.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-efcf66a9e913b5d3a7c2eea800b7f4e54d9e5268307131482fd40f32e2074d8e">+72/-16</a> </td> </tr> <tr> <td><strong>AlertList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-be3e41b823e163b226ffc270d95cc4981e59c600851e4e0d10ee5e4ee994ac8e">+123/-2</a> </td> </tr> <tr> <td><strong>AlertsDestinationList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-e9d05ba6c071c0e2f5d9ef7acdef757f79910abd6897b29e27b069a10d4ba8de">+142/-5</a> </td> </tr> <tr> <td><strong>PipelinesDestinationList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-088c66f5a34e73a5350a794a772e5d905262277337c937dd36f4295072203ebf">+163/-28</a></td> </tr> <tr> <td><strong>TemplateList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-7df66364d7d69a26cfa25cbc555d0e090c2f73e51c8386d9b0435bae4412564c">+116/-27</a></td> </tr> <tr> <td><strong>EnrichmentTableList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-6a29e253f59405d3c0f756dba36afd7483f10ad86927cbbc3348ede6372c3077">+124/-13</a></td> </tr> <tr> <td><strong>FunctionList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-6ff9af50a1597504b7f0dca91e61cf30c800b4a17b4be2ed2c3a4f7a7b2d7068">+143/-6</a> </td> </tr> <tr> <td><strong>AppGroups.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-402fb2a5338e60fdc3da489f4d50b5cf52f06b4e884a6fe7b82441c9fa5ea22c">+86/-1</a> </td> </tr> <tr> <td><strong>AppRoles.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-191634ef09436199f91f442968110a01f54ae46b5ceee67476f52613ad796db4">+86/-1</a> </td> </tr> <tr> <td><strong>EditRole.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-263b6bc7d29fdf8358c8437cd637f1350aa3733cc2706eae8ff00028686cc0f5">+20/-0</a> </td> </tr> <tr> <td><strong>ServiceAccountsList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-3afe835bcfbec3fda2e9550850c29581092ee0717e7dd8de8888e774a0048d24">+114/-1</a> </td> </tr> <tr> <td><strong>User.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-e973c2a665f9b27b94673ba64cc5b23650300836a727a2e07673c8e26305aee5">+133/-3</a> </td> </tr> <tr> <td><strong>PipelinesList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-85e3ef322f3eea0fc6d74d89431ba338a1153cb82ee06bef0f7c5f439c04267d">+108/-2</a> </td> </tr> <tr> <td><strong>ReportList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-f7d700f7e67fbaba3c58ab5d2c614925db743101828214445ce9dae35dc29067">+157/-5</a> </td> </tr> <tr> <td><strong>CipherKeys.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-950b715cff2c964d8542512692030c370733b57d698abf40e1dcb3cce2cfaf7a">+104/-13</a></td> </tr> <tr> <td><strong>RegexPatternList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-524927acd9f5bb07b71bfac489e747470108574e21a6dde63ea7c1f219cea853">+109/-14</a></td> </tr> <tr> <td><strong>action_scripts.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-6c1a011ac23290134801b22feb2b50c2b19cabf2a009f37a62b4dd9ca6e415e3">+3/-0</a> </td> </tr> <tr> <td><strong>alert_destination.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-377d28822e9ad4e9e80327ecc2d09bf1981c7997c5f1c1de120c6179eef19c6e">+3/-0</a> </td> </tr> <tr> <td><strong>alert_templates.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-fd8c4260abc3df601e4331d36b0c211eca568ee70139ad90c87247bc552fe4e2">+3/-0</a> </td> </tr> <tr> <td><strong>alerts.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-7a62782cceacac92b787e058219b3c53ea7406d4be5780def899943a01f500c1">+7/-0</a> </td> </tr> <tr> <td><strong>cipher_keys.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-0a0ef3a63c29b2a74b7f904c54c3fb32bee421608474aa32334b7c55133ab1ef">+3/-0</a> </td> </tr> <tr> <td><strong>jstransform.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-301add2528e0f32323ca4c503bd7d460ab15ca6b9a9537192a02c5e52fd82926">+3/-0</a> </td> </tr> <tr> <td><strong>pipelines.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-e8626670bb4e46e073f9858ade6b3dc77eaadf39d6721d9c0006eccc1b430612">+8/-0</a> </td> </tr> <tr> <td><strong>regex_pattern.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-2a0b0828141d39ab0385e0941314ead1cdd2ec3ec7b3baf5fd0c42f8f010728a">+3/-0</a> </td> </tr> <tr> <td><strong>reports.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-32d3299b2b21dc57c39d01080baba03765d853bd05c82d6158834b54713ae825">+3/-0</a> </td> </tr> <tr> <td><strong>service_accounts.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-4038191b0dc0cad335f3d8f7f703505df905ad843fe950096aefb8abbd139a1e">+4/-1</a> </td> </tr> <tr> <td><strong>users.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-a334d8d570d9bdcaa3d4c8c2a993eff009a1ec8eb499c8a3d1a292d9224159d0">+3/-0</a> </td> </tr> <tr> <td><strong>Dashboards.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/9153/files#diff-8da3187db8ce3d795d0f196ede6b2290221ffa3e27b15dcc2b645e44dd196213">+122/-6</a> </td> </tr> </table></details></td></tr></tr></tbody></table> </details> ___ --------- Signed-off-by: Yashodhan Joshi <yjdoc2@gmail.com> Co-authored-by: Yashodhan Joshi <yjdoc2@gmail.com> Co-authored-by: sai nikhil kethe <nikhil@openobserve.ai> |
||
|
|
1cb57a32b7 |
fix: upgrade batch 7 npm packages (#9768)
### **User description**
- cron-parser: 4.9.0 → 5.4.0
- vue-tsc: 2.2.0 → 3.2.1
Type check and unit tests passed successfully.
___
### **PR Type**
Enhancement
___
### **Description**
- Upgrade `cron-parser` to ^5.4.0
- Upgrade `vue-tsc` to ^3.2.1
___
<details> <summary><h3> File Walkthrough</h3></summary>
<table><thead><tr><th></th><th align="left">Relevant
files</th></tr></thead><tbody><tr><td><strong>Dependencies</strong></td><td><table>
<tr>
<td>
<details>
<summary><strong>package.json</strong><dd><code>Bump cron-parser and
vue-tsc versions</code>
</dd></summary>
<hr>
web/package.json
<ul><li>Upgraded <code>cron-parser</code> from ^4.9.0 to ^5.4.0<br> <li>
Upgraded <code>vue-tsc</code> from ^2.2.0 to ^3.2.1</ul>
</details>
</td>
<td><a
href="https://github.com/openobserve/openobserve/pull/9768/files#diff-b861012a5dd72b8a9f3281b7cf09f5a779c98569d040b1bbc1db50f1b15e7cce">+2/-2</a>
</td>
</tr>
</table></td></tr></tr></tbody></table>
</details>
___
|
||
|
|
8e8db702ed |
fix: change primary buttons text (#9189)
1. Now we will have Add module name we will change it to New module name at module level and also in sidebars |
||
|
|
17880bce24 | fix: actions unit test cases (#9128) | ||
|
|
77c74a4af3 |
fix: pagination sync issue in list page (#9041)
1. This PR fixed the sync issue on all listing pages alerts , piplines , actions , reports , iam pages , destinations , templates , sensitive data redaction list , cipher keys |
||
|
|
db7f947089 |
fix: UI design implementation (#8841)
Co-authored-by: sai nikhil kethe <nikhil@openobserve.ai> Co-authored-by: omkark06 <omkar@zinclabs.io> Co-authored-by: ktx-vaidehi <vaidehi.akhani@kiara.tech> Co-authored-by: ktx-abhay <abhay.padamani@kiara.tech> Co-authored-by: ktx-akshay <akshay.patil@kiara.tech> |
||
|
|
52e11d3ee7 |
fix: o2 UI table improvements (#8033)
### **User description** This PR improves the following `Fix: checkboxes as per design for alert list Fix: general setting, platform settings modified as per design Fix: numeric input in general settings as per design Fix: introduced all variables according to design Fix: secondary button, primary button, tabs, search input added Fix: another major change related to tabs, sticky header and footer table Fix: light mode q-toggle redesign done for both lg and small Fix: pipeline list as per new design Fix: added removed padding at the child level for pipeline editor Fix: function list table as per design changed Fix: made filtering rows based upon filter query this is done to avoid the issue of the table showing some height when the filter is applied and there are no results Fix: enrichment table list updated with latest design Fix: added border to the last row when having less rows when filter is applied or not applied Fix: function list bottom header to take functions Fix: function list header as per design Fix: stream list table as per design Fix: report list table as per new design Fix: users list table changed as per design Fix: added filter check for height so to avoid the issue of the table showing some height when the filter is applied and there are no results Fix: service account list table changed as per design Fix: organization list table updated as per design Fix: user groups as per design with app table additional props Fix: app roles tables list updated as per design Fix: made group roles virtual scroll to false Fix: group users, roles, service accounts tables as per new design system Fix: search icon in IAM tables as per design Fix: search history table update as per new design Fix: search scheduler list table updated as per design Fix: space between app tabs and search in log stream page Fix: pagination logic modified due to pagination component introduced Fix: aggregation to streaming aggregation label change in management page Fix: change sub text for streaming aggregation in management page Fix: q-toggle for dark mode Fix: report list added additional checks Fix: alert destination table as per design Fix: destination list, template list tables updated as per design Fix: cipher keys table as per design Fix: regex pattern list updated as per design Fix: search input placeholder text fixed Fix: per page options consistent with streams page Fix: import and pipeline editor buttons changed as per design Fix: added primary and secondary buttons in all listing pages Fix: increased pipeline editor height Fix: add stream in pipeline should not have more space in x direction Fix: secondary, primary, and delete buttons modified in pipeline nodes Fix: IAM add pages in sync Fix: introduce toggle button in the entire application Fix: alert folder list made sticky top title and search input Fix: import alert primary and secondary button changed Fix: action scripts table modified as per design Fix: add action script file changed Fix: add enrichment table submit and cancel at start Fix: add stream submit and cancel buttons at start Fix: create report changed as per new design Fix: real user monitoring get started button Fix: data source page reset rum token, reset token to primary button Fix: add destination button position changed Fix: add cipher key UI modified according to add report Fix: organization settings toggle changed Fix: home view layout spacing fixed Fix: remove negative bg for delete button` ___ ### **PR Type** Enhancement ___ ### **Description** - Adopt new design system across tables - Introduce uniform sticky headers/footers - Replace filters with tabs and styled inputs - Improve pagination, per-page options ___ ### Diagram Walkthrough ```mermaid flowchart LR design["New design tokens/components"] tables["Tables (Lists across app)"] headers["Sticky headers/footers"] filters["Tabs + styled search"] pagination["Unified pagination options"] ux["Consistent UX across themes"] design -- applied to --> tables tables -- enable --> headers tables -- replace --> filters tables -- standardize --> pagination tables -- results in --> ux ``` <details> <summary><h3> File Walkthrough</h3></summary> <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><details><summary>19 files</summary><table> <tr> <td><strong>LogStream.vue</strong><dd><code>Header redesign, tabs, sticky table, pagination</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-56f4223b74568c10bc305741cc9fc3a8830184a251b4eaa6a2649033bc6200e3">+82/-95</a> </td> </tr> <tr> <td><strong>AlertList.vue</strong><dd><code>Header styling, search/toggle redesign, sticky table</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-be3e41b823e163b226ffc270d95cc4981e59c600851e4e0d10ee5e4ee994ac8e">+59/-62</a> </td> </tr> <tr> <td><strong>ActionScipts.vue</strong><dd><code>Styled header/search, computed filtering, sticky table</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-6cfeff0b8dbbaba52b13ba67d6f4f8fdc3c58996eccdfae2ad0db2e7aee20f08">+71/-65</a> </td> </tr> <tr> <td><strong>User.vue</strong><dd><code>New header/search, client filtering, footer pagination</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-e973c2a665f9b27b94673ba64cc5b23650300836a727a2e07673c8e26305aee5">+63/-53</a> </td> </tr> <tr> <td><strong>HomeView.vue</strong><dd><code>Card layout spacing and grouping tweaks</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-9af441af191d3254ef5f9db603dca75486de7638cda41a3c050e7b3c33d68280">+110/-109</a></td> </tr> <tr> <td><strong>ServiceAccountsList.vue</strong><dd><code>New header/search, client filter, sticky table/footer</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-3afe835bcfbec3fda2e9550850c29581092ee0717e7dd8de8888e774a0048d24">+63/-59</a> </td> </tr> <tr> <td><strong>General.vue</strong><dd><code>Platform settings UX revamp with GroupHeader</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-a191d0eb2843df5efa7f18d411a216e86558b49f7b6cdfa9501d69414b933fc3">+144/-63</a></td> </tr> <tr> <td><strong>PipelinesList.vue</strong><dd><code>Header/tabs/search restyle, sticky table, export button</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-85e3ef322f3eea0fc6d74d89431ba338a1153cb82ee06bef0f7c5f439c04267d">+52/-31</a> </td> </tr> <tr> <td><strong>EnrichmentTableList.vue</strong><dd><code>Header/search restyle, client filtering, sticky table</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-6a29e253f59405d3c0f756dba36afd7483f10ad86927cbbc3348ede6372c3077">+45/-38</a> </td> </tr> <tr> <td><strong>TemplateList.vue</strong><dd><code>Header/search/buttons restyle, sticky table/footer</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-7df66364d7d69a26cfa25cbc555d0e090c2f73e51c8386d9b0435bae4412564c">+43/-43</a> </td> </tr> <tr> <td><strong>FunctionList.vue</strong><dd><code>Header/search restyle, client filtering, sticky table</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-6ff9af50a1597504b7f0dca91e61cf30c800b4a17b4be2ed2c3a4f7a7b2d7068">+49/-39</a> </td> </tr> <tr> <td><strong>ReportList.vue</strong><dd><code>Header/tabs/search restyle, sticky table/footer, filters</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-f7d700f7e67fbaba3c58ab5d2c614925db743101828214445ce9dae35dc29067">+38/-32</a> </td> </tr> <tr> <td><strong>ExternalDestination.vue</strong><dd><code>Form controls restyle, large toggles, delete node dialog</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-7ed6a9ef676d7d6db5440d4157512f731bad58716c351ca39015125a8a9d2df5">+74/-15</a> </td> </tr> <tr> <td><strong>AlertsDestinationList.vue</strong><dd><code>Header/search/buttons restyle, sticky table/footer</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-e9d05ba6c071c0e2f5d9ef7acdef757f79910abd6897b29e27b069a10d4ba8de">+43/-41</a> </td> </tr> <tr> <td><strong>GroupHeader.vue</strong><dd><code>New shared section header component</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-63133a31279f4f8d5631b5d33f5b12927f9dc6616b714e8c0ffc727696abbc2b">+64/-0</a> </td> </tr> <tr> <td><strong>_variables.scss</strong><dd><code>Introduce/adjust design tokens and variables</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-b3e37ee00c17b89ad1177c5592504277aa645b374095c065ea8b3782df5e89a2">+289/-0</a> </td> </tr> <tr> <td><strong>RegexPatternList.vue</strong><dd><code>Apply unified table/header/search styles</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-524927acd9f5bb07b71bfac489e747470108574e21a6dde63ea7c1f219cea853">+62/-56</a> </td> </tr> <tr> <td><strong>CipherKeys.vue</strong><dd><code>Apply unified table/header/search styles</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-950b715cff2c964d8542512692030c370733b57d698abf40e1dcb3cce2cfaf7a">+45/-45</a> </td> </tr> <tr> <td><strong>PipelinesDestinationList.vue</strong><dd><code>Apply unified table/header/search styles</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-088c66f5a34e73a5350a794a772e5d905262277337c937dd36f4295072203ebf">+41/-39</a> </td> </tr> </table></details></td></tr><tr><td><strong>Tests</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>TemplateList.spec.ts</strong><dd><code>Update tests to match new UI structure</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-83d9701e7e491fb1ac667d1e1833ec58153c04ad844560778d06d50b85bd4bc6">+0/-20</a> </td> </tr> </table></details></td></tr><tr><td><strong>Additional files</strong></td><td><details><summary>54 files</summary><table> <tr> <td><strong>alertTemplatesPage.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-f4ebd248b2140051e74dbbbd1aabe344f01c80704ce5857e9c28a04350e018f3">+17/-17</a> </td> </tr> <tr> <td><strong>alertsPage.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-79ee01d6d7f145f19207b93b87143b545a1188cfc6a82bc8c45fecfbf68f8a1d">+5/-5</a> </td> </tr> <tr> <td><strong>dashboard-chart.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-573a312576fce62d8e14f2bbb5f9b7d9a552d746304dce3d79862edddd24de76">+3/-0</a> </td> </tr> <tr> <td><strong>AppTable.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-efcf66a9e913b5d3a7c2eea800b7f4e54d9e5268307131482fd40f32e2074d8e">+30/-13</a> </td> </tr> <tr> <td><strong>EditScript.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-bf406d8f31f66d50e11b2c41f5ec13daabb4bb2e4f4612c5ff44675817ed2eca">+37/-34</a> </td> </tr> <tr> <td><strong>AddAlert.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-7b426bb23e9ed0250c3877d6d97b099c42b2d20e22ddf4459915381b2233a0a8">+12/-10</a> </td> </tr> <tr> <td><strong>AddDestination.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-61b295458e13049a538f5014124855d58dce664dfbd644b57a964a37a07b7a3f">+15/-12</a> </td> </tr> <tr> <td><strong>AddTemplate.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-2508a43827e6b35c07f3222deebd9945101ca6bc32b9dc592e6253ab99908bba">+11/-11</a> </td> </tr> <tr> <td><strong>ImportAlert.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-0f40dbf2757672e39ad16b86dddc59b568ca2e6ca36850420cd7be617da12d38">+6/-6</a> </td> </tr> <tr> <td><strong>ImportDestination.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-814b8ef1dbb4eebca9dfab72452d9a90d5f3fa5886dea8e82ac0bde44f66b445">+6/-6</a> </td> </tr> <tr> <td><strong>ImportTemplate.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-d22684c5142a49b8925a9dba1ef67631128caa95de66e71ba2a5b8120a0b91c6">+7/-6</a> </td> </tr> <tr> <td><strong>ScheduledAlert.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-5e143a17ab0fa5d7817f6d9301667fb5597236f27184248c7a71728e85b8d999">+6/-4</a> </td> </tr> <tr> <td><strong>VariablesInput.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-23a647aa1acfc95bc726629f0daa54005e3da1ed5b16482ceccef0649f680a74">+8/-11</a> </td> </tr> <tr> <td><strong>AddCipherKey.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-ff5ae3a9b070fe2b3650f177ced0d87e9449ae7375a0b117ee299238293df110">+27/-15</a> </td> </tr> <tr> <td><strong>AddFolder.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-41d2f8fac44084c004d8386ea4cc32e9c5d3e33266c4009cc855e57fb00a41af">+12/-14</a> </td> </tr> <tr> <td><strong>FolderList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-b97284b1720dfb524e425f49acd70f1a4e59da3d493eb2d4b3de8551b2da7141">+47/-22</a> </td> </tr> <tr> <td><strong>AddEnrichmentTable.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-9aad551dbc051edfdb3994a664506ed6d5e27dcb64f9c2fa917b02e51a35d86e">+12/-10</a> </td> </tr> <tr> <td><strong>FunctionsToolbar.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-8283d2ff9c4a66b4b59eac306672aca2d54655a462e2ddb88e14e039d79dcdaf">+18/-18</a> </td> </tr> <tr> <td><strong>AddGroup.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-dd49436305aadc01990cd6d9ea0abf97b964195920a1b49e64e8868fcc8afa6c">+19/-23</a> </td> </tr> <tr> <td><strong>AppGroups.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-402fb2a5338e60fdc3da489f4d50b5cf52f06b4e884a6fe7b82441c9fa5ea22c">+33/-22</a> </td> </tr> <tr> <td><strong>EditGroup.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-6be040722d1492644adbf65250d44d28be37614d34600a73f74c816138727a40">+2/-2</a> </td> </tr> <tr> <td><strong>GroupRoles.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-d7d1d9ec26ff77175b0e961e3e53e7ced45c9211eae8a0c00f7ac1cdac88ae14">+21/-8</a> </td> </tr> <tr> <td><strong>GroupServiceAccounts.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-b7afafc6b850c2d6edc2b855e78ff51d95d101937ec001a5790d130f4fb60695">+18/-7</a> </td> </tr> <tr> <td><strong>GroupUsers.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-114c767db76d4a09278c765d8aba39a1936c861488f39e7f0f6b3883499a3c40">+17/-6</a> </td> </tr> <tr> <td><strong>AddUpdateOrganization.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-bca5bebfa6d5f435715dc5fa948876de02fef95a84e3e663e5c7922d601b4b9d">+19/-20</a> </td> </tr> <tr> <td><strong>ListOrganizations.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-572ed99323d3e36d126074eccc10b68f6eef983d92f89d06b205fef0925c93a3">+30/-37</a> </td> </tr> <tr> <td><strong>Quota.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-30293eb5cb924f95356d5abd4588ce0f03765ac9d4446cf5b8cbacba23c6f979">+13/-9</a> </td> </tr> <tr> <td><strong>AddRole.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-fca7dd7f91da83de52bfc40e82451a8756001af43974d592de2e03a815b21c9b">+14/-14</a> </td> </tr> <tr> <td><strong>AppRoles.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-191634ef09436199f91f442968110a01f54ae46b5ceee67476f52613ad796db4">+27/-17</a> </td> </tr> <tr> <td><strong>EditRole.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-263b6bc7d29fdf8358c8437cd637f1350aa3733cc2706eae8ff00028686cc0f5">+3/-3</a> </td> </tr> <tr> <td><strong>AddServiceAccount.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-4e6840978e90be9195797d1b73b6cd1545ddac45cef84aa08701a9d66013c61b">+26/-28</a> </td> </tr> <tr> <td><strong>AddUser.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-47543c0488c8cb5bcf77e2bb4af9d0a5dd249993cd9577c4852f7950c7aaec91">+18/-26</a> </td> </tr> <tr> <td><strong>AddStream.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-78b8c84a558e60d942bacffee365633d074042e464be465eb6984b0ee5df82b9">+11/-12</a> </td> </tr> <tr> <td><strong>ImportPipeline.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-d57fa41169daa44551a181f21ca33882004b29ab74e3040e4c56a8c849078670">+10/-12</a> </td> </tr> <tr> <td><strong>AssociateFunction.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-24a5b2df69327a6477227ea674939dea19dd6d393b4bfcf807089d71e6391152">+25/-18</a> </td> </tr> <tr> <td><strong>Condition.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-4c3e624233c9e0355c7ded3b26dc74971b867be63e24f92a5e639284f60639dd">+20/-17</a> </td> </tr> <tr> <td><strong>ScheduledPipeline.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-63d8f838bb880356e7804b4a57fd9223d4f2c189de7aadc7cf33cba723b29aaf">+21/-19</a> </td> </tr> <tr> <td><strong>Stream.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-1a17ced9dc89022502cab0a6f9b97b413c2a2c4f8219733d063fc0180d361739">+26/-21</a> </td> </tr> <tr> <td><strong>PipelineEditor.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-68c21f647336067eb79737ce9aca2d49632f2fa1c0878bcfdae55607e3473a15">+21/-19</a> </td> </tr> <tr> <td><strong>StreamSelection.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-461440be35cc15b6b78700c8a61747ea9fb601a750af5292fa2d04b6fc96d595">+10/-10</a> </td> </tr> <tr> <td><strong>CreateReport.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-cf2258c64249d4f28b2a103558bce3af1c87f0b2f23fe0652b458b8c20bb9c64">+28/-30</a> </td> </tr> <tr> <td><strong>AddRegexPattern.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-a3783cfbdd32609bfff45ecfa23542854cad7ae60c3d29fedb832312a4de03dc">+9/-12</a> </td> </tr> <tr> <td><strong>ImportRegexPattern.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-e8e1bcb5a02311504d7d571090eab27a270aaa71cae185ad2703023e2e70a31e">+6/-6</a> </td> </tr> <tr> <td><strong>OrganizationManagement.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-21e2431538cb6b76e5ef5b367c6df8fc02ad8f6c1294f438be9937c7481ea9ff">+16/-2</a> </td> </tr> <tr> <td><strong>OrganizationSettings.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-54860a5d84362fe3ade0c3a50d7bacb02af3d21e1012517a0140e21f9ddabfc1">+11/-13</a> </td> </tr> <tr> <td><strong>FilterCreatorPopup.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-7fa80f0424ed3b2e60b0e3ba77493b0e5d3ef98ddcf40cd103fe433d326221d7">+16/-2</a> </td> </tr> <tr> <td><strong>en.json</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-892aa3d75ab6e129ef9116aa21bec1b9a15ba69ce5366d2a19128078c690d824">+5/-3</a> </td> </tr> <tr> <td><strong>SearchHistory.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-9dd167bd5e272b2057f53c16b905047eec00655a3552daad240a964d67a6f56d">+30/-18</a> </td> </tr> <tr> <td><strong>SearchSchedulersList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-0c0a4097c53f07712d35562b1336602bf24faddedab77a9f5717f5582dcac2f1">+53/-27</a> </td> </tr> <tr> <td><strong>app.scss</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-5703d12504b0395cbfbbfad02a592bc391496026e5f03743102ce06c210ea05f">+414/-8</a> </td> </tr> <tr> <td><strong>Functions.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-ad825ec1b8d58aec9bf5d2553ea09394a30b22ac59d708bcf9e56168ca1daaf6">+1/-2</a> </td> </tr> <tr> <td><strong>IdentityAccessManagement.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-60b63024c98ee8927e12f9ebec93e99ba7ff419038cfe1cc57d49de1f6f342d6">+1/-1</a> </td> </tr> <tr> <td><strong>Ingestion.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-97b8e8ed2a1260a39442563c7447d4f6d4830a37d47258920d6f94a292cd2d77">+9/-9</a> </td> </tr> <tr> <td><strong>RealUserMonitoring.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8033/files#diff-dd099485ccafdabc8f9e63bf1610e7044680f3b7ae19a9e9c5645b351c7a8701">+3/-1</a> </td> </tr> </table></details></td></tr></tr></tbody></table> </details> ___ --------- Co-authored-by: Shrinath Rao <shnath@openobserve.ai> Co-authored-by: ktx-akshay <akshay.patil@kiara.tech> |
||
|
|
ecfb6db33d |
fix: introduce reo dot dev (#8279)
### **User description** 1. This PR introduces reo dot dev in the application ___ ### **PR Type** Enhancement, Tests ___ ### **Description** - Integrate Reo.dev analytics SDK - Add route meta titles across app - Track key button clicks and pages - Set dynamic document titles ___ ### Diagram Walkthrough ```mermaid flowchart LR main["App bootstrap (main.ts)"] -- "init + setup titles" --> reo["Reo Analytics Service"] router["Vue Router"] -- "meta.title -> document.title" --> dom["Document Title"] router -- "afterEach" --> reo views["Views & Components"] -- "useReo().track/identify" --> reo config["aws-exports.ts"] -- "REO_CLIENT_KEY + flags" --> reo pkg["package.json"] -- "add dependency" --> reo ``` <details> <summary><h3> File Walkthrough</h3></summary> <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Configuration changes</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>aws-exports.ts</strong><dd><code>Add Reo.dev client key to config</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-74d362ad26d23cf7e76c13e3daeb72d37923a335074d512a543d0f5bfa6a30d2">+1/-0</a> </td> </tr> </table></details></td></tr><tr><td><strong>Enhancement</strong></td><td><details><summary>37 files</summary><table> <tr> <td><strong>router.ts</strong><dd><code>Add meta titles for primary routes</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-a1827956e5a817edc7efb5f4516e7cc4d453e15ea9e9d970aafb8360b09fc78e">+43/-5</a> </td> </tr> <tr> <td><strong>useEnterpriseRoutes.ts</strong><dd><code>Add meta titles for enterprise routes</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-962367ed3d329e73232da2c262cf10c60b14820dd43e95e94302cdcb2f080cbe">+28/-1</a> </td> </tr> <tr> <td><strong>useManagementRoutes.ts</strong><dd><code>Add meta titles for management routes</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-b71a1d39b1fab0749f0668d5f16382536fbda6e2f0c92c56a972fb5d8b5835f5">+22/-0</a> </td> </tr> <tr> <td><strong>main.ts</strong><dd><code>Initialize Reo analytics and page titles</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-37b29c5a3b76595194070205d9a0cdedcd717bf7c4367022d1e2667395962f2e">+9/-0</a> </td> </tr> <tr> <td><strong>index.ts</strong><dd><code>Set document title from route meta</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-8d302fe8581dca01e60aaf346dfdb0f8e24731551e7e5f91e5da9fc64250f7d2">+7/-0</a> </td> </tr> <tr> <td><strong>reodotdev_analytics.ts</strong><dd><code>New Reo.dev analytics service with queueing</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-1df83f0fa6b7599b6cd3ad863ff77d8abc4351b651932ad4d0359690148e1180">+168/-0</a> </td> </tr> <tr> <td><strong>ActionScipts.vue</strong><dd><code>Track add action scripts button click</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-6cfeff0b8dbbaba52b13ba67d6f4f8fdc3c58996eccdfae2ad0db2e7aee20f08">+6/-0</a> </td> </tr> <tr> <td><strong>AddAlert.vue</strong><dd><code>Track alert save/update button clicks</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-7b426bb23e9ed0250c3877d6d97b099c42b2d20e22ddf4459915381b2233a0a8">+13/-1</a> </td> </tr> <tr> <td><strong>AddDestination.vue</strong><dd><code>Track destination save actions</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-61b295458e13049a538f5014124855d58dce664dfbd644b57a964a37a07b7a3f">+10/-0</a> </td> </tr> <tr> <td><strong>AddTemplate.vue</strong><dd><code>Track template save actions</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-2508a43827e6b35c07f3222deebd9945101ca6bc32b9dc592e6253ab99908bba">+10/-0</a> </td> </tr> <tr> <td><strong>AlertList.vue</strong><dd><code>Track alert add/hide form button actions</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-be3e41b823e163b226ffc270d95cc4981e59c600851e4e0d10ee5e4ee994ac8e">+10/-0</a> </td> </tr> <tr> <td><strong>AlertsDestinationList.vue</strong><dd><code>Track add destination action</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-e9d05ba6c071c0e2f5d9ef7acdef757f79910abd6897b29e27b069a10d4ba8de">+8/-0</a> </td> </tr> <tr> <td><strong>PipelinesDestinationList.vue</strong><dd><code>Track add pipeline destination action</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-088c66f5a34e73a5350a794a772e5d905262277337c937dd36f4295072203ebf">+8/-0</a> </td> </tr> <tr> <td><strong>TemplateList.vue</strong><dd><code>Track add template action</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-7df66364d7d69a26cfa25cbc555d0e090c2f73e51c8386d9b0435bae4412564c">+8/-0</a> </td> </tr> <tr> <td><strong>AddFolder.vue</strong><dd><code>Track save new folder action</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-41d2f8fac44084c004d8386ea4cc32e9c5d3e33266c4009cc855e57fb00a41af">+6/-0</a> </td> </tr> <tr> <td><strong>FolderList.vue</strong><dd><code>Track add folder button click</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-b97284b1720dfb524e425f49acd70f1a4e59da3d493eb2d4b3de8551b2da7141">+6/-0</a> </td> </tr> <tr> <td><strong>AddFolder.vue</strong><dd><code>Track dashboard folder saving</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-3bd1ba28ba29b71469aac901fd8000480c3db6c0f2dbc86ea55221787ae3ffd2">+6/-0</a> </td> </tr> <tr> <td><strong>AddEnrichmentTable.vue</strong><dd><code>Track save enrichment table</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-9aad551dbc051edfdb3994a664506ed6d5e27dcb64f9c2fa917b02e51a35d86e">+6/-0</a> </td> </tr> <tr> <td><strong>AddFunction.vue</strong><dd><code>Track save/cancel function actions</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-ebfd6c538f3cd3ecb9ab17550fd76e2e89e7a1abccc83a7505077e4af3eee110">+10/-1</a> </td> </tr> <tr> <td><strong>EnrichmentTableList.vue</strong><dd><code>Track add/update enrichment table</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-6a29e253f59405d3c0f756dba36afd7483f10ad86927cbbc3348ede6372c3077">+10/-0</a> </td> </tr> <tr> <td><strong>FunctionList.vue</strong><dd><code>Track add/update function actions</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-6ff9af50a1597504b7f0dca91e61cf30c800b4a17b4be2ed2c3a4f7a7b2d7068">+10/-0</a> </td> </tr> <tr> <td><strong>AddGroup.vue</strong><dd><code>Track save group action</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-dd49436305aadc01990cd6d9ea0abf97b964195920a1b49e64e8868fcc8afa6c">+7/-0</a> </td> </tr> <tr> <td><strong>AppGroups.vue</strong><dd><code>Track add group action</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-402fb2a5338e60fdc3da489f4d50b5cf52f06b4e884a6fe7b82441c9fa5ea22c">+7/-0</a> </td> </tr> <tr> <td><strong>AddUpdateOrganization.vue</strong><dd><code>Track save organization action</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-bca5bebfa6d5f435715dc5fa948876de02fef95a84e3e663e5c7922d601b4b9d">+7/-0</a> </td> </tr> <tr> <td><strong>AddRole.vue</strong><dd><code>Track save role action</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-fca7dd7f91da83de52bfc40e82451a8756001af43974d592de2e03a815b21c9b">+7/-0</a> </td> </tr> <tr> <td><strong>AppRoles.vue</strong><dd><code>Track add role button click</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-191634ef09436199f91f442968110a01f54ae46b5ceee67476f52613ad796db4">+7/-0</a> </td> </tr> <tr> <td><strong>AddServiceAccount.vue</strong><dd><code>Track create/update service account</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-4e6840978e90be9195797d1b73b6cd1545ddac45cef84aa08701a9d66013c61b">+28/-17</a> </td> </tr> <tr> <td><strong>ServiceAccountsList.vue</strong><dd><code>Track add service account action</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-3afe835bcfbec3fda2e9550850c29581092ee0717e7dd8de8888e774a0048d24">+6/-0</a> </td> </tr> <tr> <td><strong>AddUser.vue</strong><dd><code>Track create/update user actions</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-47543c0488c8cb5bcf77e2bb4af9d0a5dd249993cd9577c4852f7950c7aaec91">+18/-5</a> </td> </tr> <tr> <td><strong>Login.vue</strong><dd><code>Identify user on login; delayed redirect</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-4c2da0196f97e92fff1a813ce1337a4e94f6592b054e0f5c326ee137657003ff">+11/-3</a> </td> </tr> <tr> <td><strong>AddStream.vue</strong><dd><code>Track save stream action</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-78b8c84a558e60d942bacffee365633d074042e464be465eb6984b0ee5df82b9">+8/-0</a> </td> </tr> <tr> <td><strong>PipelineEditor.vue</strong><dd><code>Track node additions and save/cancel</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-68c21f647336067eb79737ce9aca2d49632f2fa1c0878bcfdae55607e3473a15">+48/-0</a> </td> </tr> <tr> <td><strong>CreateReport.vue</strong><dd><code>Track save/cancel report actions</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-cf2258c64249d4f28b2a103558bce3af1c87f0b2f23fe0652b458b8c20bb9c64">+11/-0</a> </td> </tr> <tr> <td><strong>ReportList.vue</strong><dd><code>Track add report navigation</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-f7d700f7e67fbaba3c58ab5d2c614925db743101828214445ce9dae35dc29067">+7/-0</a> </td> </tr> <tr> <td><strong>Dashboards.vue</strong><dd><code>Track add dashboard/folder actions</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-8da3187db8ce3d795d0f196ede6b2290221ffa3e27b15dcc2b645e44dd196213">+10/-0</a> </td> </tr> <tr> <td><strong>LogStream.vue</strong><dd><code>Track add stream button click</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-56f4223b74568c10bc305741cc9fc3a8830184a251b4eaa6a2649033bc6200e3">+9/-1</a> </td> </tr> <tr> <td><strong>Login.vue</strong><dd><code>Identify user after SSO; delayed redirect</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-a135c379ef6ac8f92199ea5f7ff19a227971a9b0a87ccccf87c0268740522c2c">+11/-2</a> </td> </tr> </table></details></td></tr><tr><td><strong>Dependencies</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>package.json</strong><dd><code>Add Reo.dev dependency</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8279/files#diff-b861012a5dd72b8a9f3281b7cf09f5a779c98569d040b1bbc1db50f1b15e7cce">+1/-0</a> </td> </tr> </table></details></td></tr></tr></tbody></table> </details> ___ |
||
|
|
4ef004011f | fix: search scheduler issue (#8181) | ||
|
|
f78f5d79c8 |
fix: added unit test cases (#8121)
### **User description** with this PR the coverage is -----------------------------------------------|---------|----------|---------|---------|------------------------------------------------------------------------------------- File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s -----------------------------------------------|---------|----------|---------|---------|------------------------------------------------------------------------------------- All files | 48.05 | 82.25 | 50.81 | 48.05 | ___ ### **PR Type** Enhancement, Tests, Bug fix ___ ### **Description** - Add comprehensive unit tests across modules - Expose component internals for testability - Safely access org identifier with optional chaining - Minor exports to composables for testing ___ ### Diagram Walkthrough ```mermaid flowchart LR components["Vue components"] expose["Expose methods/refs via defineExpose"] specs["New/expanded unit tests"] fixOrg["Optional chaining for org identifier"] composables["Composables export additions"] components -- "defineExpose, returns additions" --> expose expose -- "enables" --> specs components -- "query params use ?.identifier" --> fixOrg composables -- "export more helpers" --> specs ``` <details> <summary><h3> File Walkthrough</h3></summary> <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>index.vue</strong><dd><code>Use optional chaining for org identifier in routes</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-699c63979f851c48ad440a078e93282fd797a18fc065e5331b2e41122ddb8b69">+15/-13</a> </td> </tr> </table></details></td></tr><tr><td><strong>Tests</strong></td><td><details><summary>39 files</summary><table> <tr> <td><strong>Stream.vue</strong><dd><code>Expose stream form methods and state for tests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-1a17ced9dc89022502cab0a6f9b97b413c2a2c4f8219733d063fc0180d361739">+33/-0</a> </td> </tr> <tr> <td><strong>RealTimeAlert.vue</strong><dd><code>Expose alert editor methods/data for tests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-c3ae6b47832eb33f9ca877cc7165d079de14850e5c5d43a227102ba40326b9d8">+19/-0</a> </td> </tr> <tr> <td><strong>ExternalDestination.vue</strong><dd><code>Expose destination form functions and state</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-7ed6a9ef676d7d6db5440d4157512f731bad58716c351ca39015125a8a9d2df5">+22/-0</a> </td> </tr> <tr> <td><strong>PerformanceSummary.vue</strong><dd><code>Export additional helpers and imports for tests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-fdf59594c111c1af03772c9deef4ba07cf2c2d00c9609737a0ea3e3c76fb1c1b">+3/-1</a> </td> </tr> <tr> <td><strong>StreamFieldInputs.vue</strong><dd><code>Expose field input handlers and state</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-c8173413939f320f197b0f8790e619da18666f79009345f72b3325e89bbb7566">+17/-0</a> </td> </tr> <tr> <td><strong>FilterGroup.vue</strong><dd><code>Expose group manipulation helpers for testing</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-8d5a73bea3aa0b5c86d48cda4a61ee3e30f27797ac2a5add1ee8bd66c75bef23">+17/-0</a> </td> </tr> <tr> <td><strong>ImportDestination.vue</strong><dd><code>Expose validation and helper functions</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-814b8ef1dbb4eebca9dfab72452d9a90d5f3fa5886dea8e82ac0bde44f66b445">+7/-0</a> </td> </tr> <tr> <td><strong>PipelinesDestinationList.vue</strong><dd><code>Expose list helper functions and selectedPerPage</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-088c66f5a34e73a5350a794a772e5d905262277337c937dd36f4295072203ebf">+6/-0</a> </td> </tr> <tr> <td><strong>SearchBar.vue</strong><dd><code>Expose additional editor and action handlers</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-81893de4edf186b0556f610acb280c87baa2ffe67d3b48a60a866094c7635baf">+11/-0</a> </td> </tr> <tr> <td><strong>ImportTemplate.vue</strong><dd><code>Expose template validation and helpers</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-d22684c5142a49b8925a9dba1ef67631128caa95de66e71ba2a5b8120a0b91c6">+6/-0</a> </td> </tr> <tr> <td><strong>IndexList.vue</strong><dd><code>Expose websocket/search helper functions</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-08f058f883b659e713e606991a7ea37ae1ff016b7cccef970489ab5840dc3d09">+11/-0</a> </td> </tr> <tr> <td><strong>ImportAlert.vue</strong><dd><code>Expose alert validation helpers</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-0f40dbf2757672e39ad16b86dddc59b568ca2e6ca36850420cd7be617da12d38">+4/-0</a> </td> </tr> <tr> <td><strong>AlertsDestinationList.vue</strong><dd><code>Expose destination list helpers for tests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-e9d05ba6c071c0e2f5d9ef7acdef757f79910abd6897b29e27b069a10d4ba8de">+7/-0</a> </td> </tr> <tr> <td><strong>SysLog.vue</strong><dd><code>Expose syslog route helpers and state</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-2f538c29fd1d51aa470edad915666faca1deade7413645f033f2a67354b3726c">+9/-0</a> </td> </tr> <tr> <td><strong>TelegrafConfig.vue</strong><dd><code>Expose ingestionURL in setup for tests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-f934fcfd5f71fff85e099f5ddf133a1cdd2a02aa3ade339dee73d54474480acf">+2/-0</a> </td> </tr> <tr> <td><strong>schema.vue</strong><dd><code>Expose schema helpers and formatters</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-9196be2ccae4054a00b0b1aa9d1e87b366c10920d6eaf9ef8c6e6293d50bcf46">+7/-0</a> </td> </tr> <tr> <td><strong>AssociatedRegexPatterns.vue</strong><dd><code>Expose pattern state/check helpers</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-c6fce5e1c83798991b6ff19effb23c67af59f38fac0b9e56dcab7a09d139f550">+6/-1</a> </td> </tr> <tr> <td><strong>AddFolder.vue</strong><dd><code>Return defaultValue for tests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-41d2f8fac44084c004d8386ea4cc32e9c5d3e33266c4009cc855e57fb00a41af">+1/-0</a> </td> </tr> <tr> <td><strong>ImportRegexPattern.vue</strong><dd><code>Expose regex pattern validation and helpers</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-e8e1bcb5a02311504d7d571090eab27a270aaa71cae185ad2703023e2e70a31e">+4/-0</a> </td> </tr> <tr> <td><strong>SearchSchedulersList.vue</strong><dd><code>Expose date helpers and router</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-0c0a4097c53f07712d35562b1336602bf24faddedab77a9f5717f5582dcac2f1">+5/-0</a> </td> </tr> <tr> <td><strong>MoveAcrossFolders.vue</strong><dd><code>Expose getModuleName from setup</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-3826ffbf7e4cbae5b621527c9df856e1bd3b349b78d4a6c514b6967636d04237">+1/-0</a> </td> </tr> <tr> <td><strong>SearchResult.vue</strong><dd><code>Expose row/partition helpers and column sizes</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-5e65533aa4754bb6d0074fda18ffc1ecacded3b9ca6bc28a161c3f6b12f20195">+5/-0</a> </td> </tr> <tr> <td><strong>AddUpdateTicket.vue</strong><dd><code>Expose validation/upload methods via expose</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-bd6f97ffe635a2127610e0bbc94b1c9fe40a6ca1dff98e72efc4a449116c59db">+2/-0</a> </td> </tr> <tr> <td><strong>usage.vue</strong><dd><code>Expose getUsage and router</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-87c1e1d75e488a25773db68ada1e49913ad50be7971fbb588939941a3ea6302b">+2/-0</a> </td> </tr> <tr> <td><strong>Databricks.vue</strong><dd><code>Expose database config state</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-2ff8f0c23b75de8b87f86d00af9de4f6c8ceb335ade6cbef227cb37f26d42ae6">+4/-0</a> </td> </tr> <tr> <td><strong>SqlServer.vue</strong><dd><code>Expose database config state</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-23653eb1e4b5fa9fc519ac44cdf06b01e645d61c86340e59fcf58eb11702008f">+5/-0</a> </td> </tr> <tr> <td><strong>JsonPreview.vue</strong><dd><code>Expose getTracesStreams function</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-3985073134d35ff074742944b114d0905524038b42e6d2ac887fef2c8436fb16">+1/-0</a> </td> </tr> <tr> <td><strong>VisualizeLogsQuery.vue</strong><dd><code>Expose hovered series and metadata</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-979b01d943d58c5d70faeeac5948b7f02f0b2392a12b84ef07ba7f7393ab0261">+2/-0</a> </td> </tr> <tr> <td><strong>FrontendRumConfig.vue</strong><dd><code>Expose defaultConfig for tests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-a90414833508a6d5f76b245c65f2a2ff067ada5e1c5c09b1b53598a4881e2676">+1/-0</a> </td> </tr> <tr> <td><strong>OpenTelemetry.vue</strong><dd><code>Expose ingestionURL in setup</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-45be3e74a543860331e1cbb11c299a81d5f2e49030bcc3eab03dd6db09f93c5b">+1/-0</a> </td> </tr> <tr> <td><strong>Index.vue</strong><dd><code>Expose ingestRoutes for tests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-a8ce6281b41747a4c58b111d6c31a57f8597b2c33f79d9b236af548d5683b200">+1/-0</a> </td> </tr> <tr> <td><strong>PipelineFlow.vue</strong><dd><code>Expose store and setViewport</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-9c7475a54f0c895dd49eb0c5b53fe0a76ceff0520f667a9cb065b364557ced50">+2/-0</a> </td> </tr> <tr> <td><strong>MessageQueues.vue</strong><dd><code>Expose messageQueueTabs</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-ab520bb9b203fc532d2544ba60b140600cbc0efb9773e000c1867076275780bc">+1/-0</a> </td> </tr> <tr> <td><strong>Database.vue</strong><dd><code>Expose databaseTabs</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-9f043be1b81e96e163d333d8fac934fbd8cf9009076eeaaf2bd8ee360a3e913c">+1/-0</a> </td> </tr> <tr> <td><strong>Languages.vue</strong><dd><code>Expose languagesTabs</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-5ac446e8fed967883b402dfe4ff686717138a76f0333c2416a6b6f955a0086fc">+1/-0</a> </td> </tr> <tr> <td><strong>Networking.vue</strong><dd><code>Expose networkingTabs</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-ca61b8331afde2b46c0a193e0cc31e2b6b8a915aad1841fbbda229450af02726">+1/-0</a> </td> </tr> <tr> <td><strong>Recommended.vue</strong><dd><code>Expose recommendedTabs</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-d52f7f52bf8f6d3d639e5d0a550bed82223cd4fbd3eee3c257b7f80e0b8ee6d2">+1/-0</a> </td> </tr> <tr> <td><strong>SearchBar.spec.ts</strong><dd><code>Rewrite and expand SearchBar unit tests</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-63ac75d3fe278dad233e7dd7c51b3b33076d54a776b89ae05190d8522130c78b">+1058/-1118</a></td> </tr> <tr> <td><strong>GCPConfig.spec.ts</strong><dd><code>Add unit tests for GCP config logic</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-76e896e96fdae254b7b569e0d3afdea55b05c7777d6eda2da0374fe782d74457">+533/-0</a> </td> </tr> </table></details></td></tr><tr><td><strong>Enhancement</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>usePromqlSuggestions.ts</strong><dd><code>Export additional suggestion helpers/state</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-250bf4b2d8cb3845005f72188d73ab954359f841e15c4f217708beac1493e83a">+4/-0</a> </td> </tr> </table></details></td></tr><tr><td><strong>Additional files</strong></td><td><details><summary>101 files</summary><table> <tr> <td><strong>App.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-e5d10660c09127e3b4234cd8fe18303e53db38e43a1c5a6edb13032afbebe28f">+291/-0</a> </td> </tr> <tr> <td><strong>AutoRefreshInterval.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-4fae96431d981a4338e96dd393820e3497ed56382adc77fab6024f6efd15bd4c">+320/-0</a> </td> </tr> <tr> <td><strong>ConfirmDialog.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-16ffba01e15b66513827b99a68c002b567e65bd1124f9bcf7c4db8db5795df8a">+61/-0</a> </td> </tr> <tr> <td><strong>CopyContent.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-a09160ad7355806c5f4f5b0194a6026ed7c24a77f3de0bce58ffa67c4e97de4d">+348/-0</a> </td> </tr> <tr> <td><strong>CustomDateTimePicker.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-f3c4dc21e87d485ae2d167b1f4e993ffc00b941b207a664ea504468842f4d428">+338/-0</a> </td> </tr> <tr> <td><strong>DateTime.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-ee6ae1a77af32afb0b0410cbe812d546c8639815748908e716d48a189695d8ec">+543/-0</a> </td> </tr> <tr> <td><strong>MenuLink.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-bd04ff500fc31583a430993830eed36cdf6254c2ce1a52b8a58a07b89bb9f825">+56/-4</a> </td> </tr> <tr> <td><strong>PendingSubscriptionWarning.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-a38d050077b70a4e16ed3fa89df6978e0d15284b824fc1840ed3d0f10403f9f8">+301/-0</a> </td> </tr> <tr> <td><strong>ResumePipelineDialog.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-ca982d78b8c120585dcf75837fbc09426c3fa2dd7e0f3a8d6cdbf9954aee6027">+136/-0</a> </td> </tr> <tr> <td><strong>RouteTabs.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-f4940a707bb9a1790b34d87c2588bb957876214edbfaf0072b2519afe230d077">+400/-0</a> </td> </tr> <tr> <td><strong>SanitizedHtmlRenderer.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-b45de775a1fc42af052b7af7b5c0b40512fab530db228a548e5bbe0510e774de">+350/-0</a> </td> </tr> <tr> <td><strong>FileItem.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-189b4998b9446d2b44aa820117eb54f555e15fb5d12dbd5bf61b4722fbc85b4e">+395/-0</a> </td> </tr> <tr> <td><strong>ScriptEditor.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-7989b3c2125f44e258f2e1e12dbb6e0608c2cfd6165619815501c8a4548b641c">+408/-0</a> </td> </tr> <tr> <td><strong>ScriptToolbar.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-5057edcc2e7f7f2bd115d1ad3b00bb668607662edee60131ba04fd078e41eaef">+412/-0</a> </td> </tr> <tr> <td><strong>AddAlert.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-84362398fea8abd9acf30f4f40ba8d4cf27348677454017bd4e6f568d5176ac6">+5/-3</a> </td> </tr> <tr> <td><strong>AlertsDestinationList.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-796a77635e67bca70cc19a671e1862438f78a9391ede0e936763e2204bd7a876">+709/-0</a> </td> </tr> <tr> <td><strong>FilterCondition.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-d09ca687da324598f7c1f17610406dda5c47faba21b1eba5dd606ce8f5a2671e">+463/-0</a> </td> </tr> <tr> <td><strong>FilterGroup.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-1628547d4b6650b1e87817989b84ffb25895c64ad789457b094860fcd7f13447">+1405/-0</a></td> </tr> <tr> <td><strong>ImportAlert.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-553f61b4cb949550d09d7016031a29361e4aaa22ad86f20781787bc4ccf43272">+951/-0</a> </td> </tr> <tr> <td><strong>ImportDestination.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-cf334a840c66788867f54f726f5d9431f8e1197637c641469a34e63facfcb180">+815/-0</a> </td> </tr> <tr> <td><strong>ImportTemplate.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-1a14d1b5cdc535c0fd982bcb6c02af07b647d5013922084df5d208c673eefaff">+875/-0</a> </td> </tr> <tr> <td><strong>PipelinesDestinationList.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-f749b2cdb5476b289a38418201bf27c69a7e9ab01237f6ffefc7b23392c3ff71">+529/-0</a> </td> </tr> <tr> <td><strong>RealTimeAlert.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-3b33541be3d07c04f1afd3b0a716e683b804b4f8adcba09b4fc5f3ddd0c14ef6">+693/-0</a> </td> </tr> <tr> <td><strong>ScheduledAlert.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-c85c209fe2d6eb3e8a223ddc1124e713f21ce3bbddf657be931cf8726f2e2934">+1197/-0</a></td> </tr> <tr> <td><strong>VariablesInput.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-1c6c211f8e8e49e12619c73ac450cfdc6f92f5ffc533bf09716477fa37154786">+353/-0</a> </td> </tr> <tr> <td><strong>AddCipherKey.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-1ae71f00dfb6f9424d2443856ca3a419aaf2ee0c08900f7ef2ca44e41c1982e9">+507/-467</a></td> </tr> <tr> <td><strong>AppDialog.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-28cde24b3e035186bbdf389f3c7560ba087588fd52d377c5615d50a6b5ad3dc7">+443/-0</a> </td> </tr> <tr> <td><strong>AppTabs.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-1a762da82b05a89aaea5cfac75315972be2fcc622d8dcabd9bb6e10a091a2e9d">+132/-0</a> </td> </tr> <tr> <td><strong>JsonEditor.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-be62ee12fe0b191ed850f0d8c6be49abc52596a06bfd10ac037ecc8f758d2660">+107/-0</a> </td> </tr> <tr> <td><strong>LoadingProgress.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-6096c465ac03fdbe599251405ff150d38ffc2f42be501d93723a6cc9f8eeae52">+153/-0</a> </td> </tr> <tr> <td><strong>RelativeTime.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-1ab920651a73975c32a1e00c0c6c0596866bf65b6aeec005e0d17f5084fddfef">+75/-0</a> </td> </tr> <tr> <td><strong>AddFolder.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-c47fb42fd03cf2b19f7c1da98ec484699730d00d2a5ae348002df727c6f009b4">+545/-0</a> </td> </tr> <tr> <td><strong>FieldList.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-b32e6b73a1268169f32fcd0a092350e543c3d4ffb00eef685aed4ba8c36ac6a1">+907/-0</a> </td> </tr> <tr> <td><strong>MoveAcrossFolders.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-4bce3286733956ade6e6f93cc65f471314a07e610b7e3f57a95050f683fc688a">+1385/-0</a></td> </tr> <tr> <td><strong>AddFunction.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-5bf8cf7b136d01ade73a969358f28642eca484ee1f93008f2787405bc928c0df">+883/-0</a> </td> </tr> <tr> <td><strong>EnrichmentSchema.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-020714ac53ba9e0397b5f0d7fa40bbb54638a30858d2e85693e117e3616c03d1">+394/-0</a> </td> </tr> <tr> <td><strong>FullViewContainer.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-498a7631461da0b1acbb272f4e1be20f999a28cdbf66f3e2f86b2f59b82841fd">+503/-0</a> </td> </tr> <tr> <td><strong>FunctionList.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-555eb5d72b94d73c66cc303b1e3cece61564b622f7b1010219a23761c21f4c55">+0/-618</a> </td> </tr> <tr> <td><strong>TestFunction.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-c1b26d908f381d548650300e436d7b2e22410ef4e3d6508287c951add6633f3c">+598/-0</a> </td> </tr> <tr> <td><strong>ServiceAccountsList.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-7b77b3425b30af8671b95b2c74702c89cf374669c2dc67a0b49ec182d30bedcd">+415/-99</a></td> </tr> <tr> <td><strong>AscSort.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-afc2d5fea4960d77d9f0487a89139f5409c9f55e34c3a58aedc8664cb9465c36">+200/-0</a> </td> </tr> <tr> <td><strong>DescSort.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-f6c074687e3f02ec34f0c398f64a100f5511baf1789e5dd280d48f999dfd8505">+231/-0</a> </td> </tr> <tr> <td><strong>FunctionIcon.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-5ce858f61f52bf2fdad1dc34d3ecdd852f38c66e329b6f71a4eb25f745530ada">+313/-0</a> </td> </tr> <tr> <td><strong>PipelineIcon.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-28fb2dcadc48a4bf7407fe99d2dddcd4993b430fe8398db23c786abd9cdad427">+340/-0</a> </td> </tr> <tr> <td><strong>Custom.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-75fb68bb0e3ab0416c7a6840bd615a0432026c0675b7b8db80cedd8a29f07d0f">+941/-0</a> </td> </tr> <tr> <td><strong>Database.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-890a9b5f5bde73f36522a300d5ada6f14fae2a94bdb3f061ac3e7d1d0cb9cd8e">+775/-0</a> </td> </tr> <tr> <td><strong>DevOps.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-8dbbccb5f29f0766ead95f3aea538f5f5b85ec3b2ff8fbedbaff50f0c5771ab4">+331/-0</a> </td> </tr> <tr> <td><strong>Languages.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-34642bc2e6238f98a78fe2185eadd4995749ae336204bfb6095620369268e7d1">+753/-0</a> </td> </tr> <tr> <td><strong>MessageQueues.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-eee646fcdd254e0be152dfb3f2c6749b1710b6ec6be272b8c5f865b83d2853df">+526/-0</a> </td> </tr> <tr> <td><strong>Networking.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-aff8de29d05af2b04cc0b83ab292896c79a6d68cfb3649c10ec517679b73e97e">+659/-0</a> </td> </tr> <tr> <td><strong>Others.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-56f4544b83413f5b8d87c5fec280204b75388a0686c388445b3eceaef523f10e">+493/-0</a> </td> </tr> <tr> <td><strong>Recommended.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-86de7fab5e678188cf1b96d463809fa645abd8d1a19d86cd3f2214b12fac3c43">+557/-0</a> </td> </tr> <tr> <td><strong>Security.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-952301dec9efb69bbdc3b82753e8a7c86d64a67e3cd544fcc50f118fcd1d017e">+623/-0</a> </td> </tr> <tr> <td><strong>Server.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-80a46b98c8aef2059b9d25de464c3450aa3310c02d1a4bbfcd32a706b5d0334c">+667/-0</a> </td> </tr> <tr> <td><strong>Databricks.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-0cc6f4230b08c6d1f888bae4c5d9f11169714506be5f3be77b371ced9d084936">+350/-0</a> </td> </tr> <tr> <td><strong>Postgres.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-046ae7ca570ff9960c83ec5fca8a95110a5158ceafda48549bdf47ccc5c71b71">+498/-0</a> </td> </tr> <tr> <td><strong>SqlServer.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-33abd49e96a5a6ecb0e07f76f3b55cb53a12674ddd450890ec185eb85e33fae3">+313/-0</a> </td> </tr> <tr> <td><strong>Curl.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-755d02153c11d74b259e12605ae3ad203b01507c4f778347616ed4c1ba542024">+374/-24</a></td> </tr> <tr> <td><strong>FileBeat.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-d4f433b57979c49407559afd1b9a35131cf823a29596882f46aca6aa8789a777">+389/-0</a> </td> </tr> <tr> <td><strong>FluentBit.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-9bb84df5402b65026cdf6fe4ead0937f825f129538f4e7e6291492a9b9ade289">+362/-27</a></td> </tr> <tr> <td><strong>Fluentd.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-b0d737e6ac8536493791c38acde3b0b339bae519b8ce58fb780f794bc31f62d1">+382/-23</a></td> </tr> <tr> <td><strong>LogstashDatasource.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-2cd019295a25886a037e6ede5cad795b52851a377f48beb46f3897bc6d64a20b">+522/-0</a> </td> </tr> <tr> <td><strong>SysLog.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-98526471b0f8a5a7547c205c9da6f8b4e62f20c6ee728b687225d4ee1c564758">+966/-0</a> </td> </tr> <tr> <td><strong>SyslogNg.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-c1afe13c4d7ccf6c9e360c4beff423e785f52c05b58340acf5d0e11fbc77bfc3">+787/-0</a> </td> </tr> <tr> <td><strong>Vector.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-35a48d805d8ded5b793d07c4dbb85cfafb759d073e597758cb999ed28eaf3f31">+571/-26</a></td> </tr> <tr> <td><strong>ingestionIndex.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-aa6c7d67f4885ef49f587f3dde7760ba3eabea6478e776aede5f86ab4ca76e75">+570/-0</a> </td> </tr> <tr> <td><strong>CloudWatchMetrics.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-d2e18e89f6400e04f77e4dff297030ffdf6306038d7cfe08315e0736cd0520f4">+615/-0</a> </td> </tr> <tr> <td><strong>PrometheusConfig.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-9026aa740243dc87d7be703fad5ad83e8ebdbb907b20b0f75a653ea3514dd6b4">+416/-0</a> </td> </tr> <tr> <td><strong>TelegrafConfig.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-9de7588766a4cc480d9b053d4c6dd34bad93c4e85c6580c2d8f04073f8f0fa25">+350/-0</a> </td> </tr> <tr> <td><strong>AWSConfig.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-a40ad271f4e88e42c4e746b5ce54ef0dceca122bedf3f9fa1f0571765001c680">+500/-0</a> </td> </tr> <tr> <td><strong>FrontendRumConfig.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-28bda2968dbbe401bacf2ce4a95e566d4672d59dafdf309d9a66dd567734af9a">+945/-0</a> </td> </tr> <tr> <td><strong>OpenTelemetry.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-489085e78e204c6e2b6dfdf21f1e48fef86d4bc4dd6f36869f9a2164027b3b7b">+554/-0</a> </td> </tr> <tr> <td><strong>Login.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-746b43968d685362866c3f97bf2b5e0846bac7463fe1ecb080c1c7d962cb855b">+994/-0</a> </td> </tr> <tr> <td><strong>AssociatedRegexPatterns.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-4ca41bf14fd6a3c79a3877324a7c7520a25d1d33f97fe947b2f6dd4bbf6ca5b4">+1384/-0</a></td> </tr> <tr> <td><strong>Schema.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-27aac0c27d14c76ae7d02277822392d29777f07fb588bc4a19d93cc0379a25e6">+593/-677</a></td> </tr> <tr> <td><strong>StreamFieldInputs.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-a421936485eb26fe8b6c1a89cd0b40de202936fd57b49957e8ac1521a4641f57">+469/-0</a> </td> </tr> <tr> <td><strong>ExternalDestination.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-716d02dd388d827ba64d21320834f07a281242627dbce78a9d29fa84e2727a42">+0/-584</a> </td> </tr> <tr> <td><strong>ExternalDestination.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-a404d8244c3beb0122fbd403d2b8b410a934aacd3e498c73499204db85bc790e">+1029/-0</a></td> </tr> <tr> <td><strong>Query.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-28606cc9e509c3f1c132551ed29c46ef168444b4425cf5e81e0eff65302a9d16">+950/-0</a> </td> </tr> <tr> <td><strong>Stream.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-f0e36c3bdbe8da79becc97e236de086bec117c4272ef4a7691a3330835993e40">+232/-5</a> </td> </tr> <tr> <td><strong>PipelineView.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-f78a1273b1fb7f5696f364f509b6bd13a1536a160b4fd98260cc8e61750e96f9">+600/-0</a> </td> </tr> <tr> <td><strong>PipelinesList.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-afcaf75b1dd20ccf66bd61334ba262512135a3f85593310890a774421d50265e">+712/-0</a> </td> </tr> <tr> <td><strong>pipelineCommonValidation.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-820d4f4f076840724bd6f0e7b5a9da1cbacea4d074249f07c957120b6601ac38">+311/-0</a> </td> </tr> <tr> <td><strong>pipelineCommonValidation.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-b2c4c50027aace8991d17030333e880b7d4808ab04d96e9c372d82d424235ef5">+1/-1</a> </td> </tr> <tr> <td><strong>CreateReport.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-8a0f39751d08a258c4997c5e68edaf167ea01477528beee2295dd9f992310cc6">+0/-1854</a></td> </tr> <tr> <td><strong>PerformanceOverview.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-c37f87d6d7205b9688af8c24fa6d7847c77bf35c51d4d7d1e08e6f10f3af2942">[link]</a> </td> </tr> <tr> <td><strong>PerformanceSummary.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-a2a97a13f8d5caa69d38d883576678dacecd8728386886f76d105e376879d60e">+1582/-0</a></td> </tr> <tr> <td><strong>ImportRegexPattern.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-1111ec8ccc0c9b62d4791101f69855ac22baa856dedd54827970f993147c3aed">+811/-0</a> </td> </tr> <tr> <td><strong>RegexPatternList.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-df942239cac609f116dcb4aa61405a60fc718219c77af46258c34e8e86e44080">+1005/-0</a></td> </tr> <tr> <td><strong>settingsIndex.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-fc96fd3ae93a42ba09577ee2c27416e9e729f2729146f88e146e4a9473626da2">+774/-0</a> </td> </tr> <tr> <td><strong>FilterCreatorPopup.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-4167cd3f9eec0c9df78517b7514c39dcc2c0234810010d93e311879971bd552e">+439/-0</a> </td> </tr> <tr> <td><strong>NoData.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-e7f5be4faf7164f86bdfea69049db3aae0509a8d33b037bfcf799347b3a0ab0d">+335/-0</a> </td> </tr> <tr> <td><strong>NoOrganizationSelected.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-1338e495c82b9d07995c13a6b245c919588012974c0f08096c7b93b5e143606c">+88/-0</a> </td> </tr> <tr> <td><strong>Pagination.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-8846923daf3fe7a897ab5956098564aeb6d1748db90f637fc39f4ac8a30e1234">+110/-0</a> </td> </tr> <tr> <td><strong>AddUpdateTicket.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-8f7eb6b61a8dfdab68d5e2f73e1d2bc9580e03290d287bcfb35802331165d118">+531/-0</a> </td> </tr> <tr> <td><strong>usePermissions.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-83e050b2b1753f98e357db0e2f8a6a353b24857640c3a522a73d0d2609a0bced">+513/-0</a> </td> </tr> <tr> <td><strong>useActions.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-1bd297e5011b31dca1cb4edb6ff63a705e582dfe392e34b2e781c8051be5ee5e">+158/-0</a> </td> </tr> <tr> <td><strong>useIngestion.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-495d1e7e830eecd3e430e987a7056298d67df84282b31869bb27973aec8e4f06">+606/-0</a> </td> </tr> <tr> <td><strong>useIsMetaOrg.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-635f3965352f56c275b1309753a9f1421ffb0e8bd985b1286a012217df33eab5">+123/-0</a> </td> </tr> <tr> <td><strong>useLogs.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-1e4dd9056495ae6a0c1cf2b8c9e803d7372c2c1426918d848bb903b424103875">+2/-2</a> </td> </tr> <tr> <td><strong>Additional files not shown</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/8121/files#diff-2f328e4cd8dbe3ad193e49d92bcf045f47a6b72b1e9487d366f6b8288589b4ca"></a></td> </tr> </table></details></td></tr></tr></tbody></table> </details> ___ |
||
|
|
36c2320173 |
fix: fixed failed test cases (#8054)
### **PR Type**
Tests
___
### **Description**
Stabilize unit tests with reliable mocks
Prepopulate store and transform alert data
Reduce dataset sizes to prevent timeouts
Add timeouts and window.open mock
___
### Diagram Walkthrough
```mermaid
flowchart LR
AlertsSpec["AlertList.spec.ts tests"] -- "seed store + transform data" --> AlertsData["Deterministic alert dataset"]
AlertsSpec -- "mock services with Promise.resolve" --> StableAsync["Stable async behavior"]
AlertsSpec -- "mock window.open" --> BrowserSafe["No window errors"]
DomainIntSpec["DomainManagement.integration.spec.ts"] -- "reduce loops" --> FasterRuns["Prevent timeouts"]
DomainSpec["DomainManagement.spec.ts"] -- "reduce loops + add timeout" --> FasterRuns
```
<details> <summary><h3> File Walkthrough</h3></summary>
<table><thead><tr><th></th><th align="left">Relevant
files</th></tr></thead><tbody><tr><td><strong>Tests</strong></td><td><table>
<tr>
<td>
<details>
<summary><strong>AlertList.spec.ts</strong><dd><code>Stabilize AlertList
tests with seeded data and robust mocks</code></dd></summary>
<hr>
web/src/components/alerts/AlertList.spec.ts
<ul><li>Remove unused beforeAll import<br> <li> Mock window.open to
avoid browser errors<br> <li> Seed store and transform alerts for
tests<br> <li> Use Promise.resolve in service mocks<br> <li> Directly
set component data to skip API waits<br> <li> Add extra flushPromises
and test timeouts</ul>
</details>
</td>
<td><a
href="https://github.com/openobserve/openobserve/pull/8054/files#diff-d905f71e43a305b4d4212d64739bac53611207318fa96d6f146928c592849762">+81/-22</a>
</td>
</tr>
<tr>
<td>
<details>
<summary><strong>DomainManagement.integration.spec.ts</strong><dd><code>Speed
up integration test by reducing dataset</code>
</dd></summary>
<hr>
web/src/components/settings/DomainManagement.integration.spec.ts
<ul><li>Reduce domain loop from 100 to 30<br> <li> Adjust expected count
accordingly<br> <li> Add explicit test timeout</ul>
</details>
</td>
<td><a
href="https://github.com/openobserve/openobserve/pull/8054/files#diff-7713b54be0482775009fc5bec7c2d247e75e64800b4bd1bbf22372e0fbae4ac5">+4/-4</a>
</td>
</tr>
<tr>
<td>
<details>
<summary><strong>DomainManagement.spec.ts</strong><dd><code>Optimize
component tests to avoid timeouts</code>
</dd></summary>
<hr>
web/src/components/settings/DomainManagement.spec.ts
<ul><li>Reduce large dataset sizes (200 to 50; 100 to 30)<br> <li>
Update expected lengths to match reductions<br> <li> Add explicit test
timeouts</ul>
</details>
</td>
<td><a
href="https://github.com/openobserve/openobserve/pull/8054/files#diff-6a77be0b62c2140bb0aff6f14026a082e236c891f124d05f5be6e9fcbc81e090">+8/-8</a>
</td>
</tr>
</table></td></tr></tr></tbody></table>
</details>
___
|
||
|
|
5dab735d3e |
fix: removed unused code and warnings while in dev mode / build (#8026)
### **User description** 1. removed defineProps , defineEmits as they are not required to import while using <script setup> because they are built in compiler macros 2. removed unused imports 3. added tbody around tr td inside table which was throwing an error ___ ### **PR Type** Bug fix, Enhancement ___ ### **Description** - Wrap table rows with tbody in DateTime - Remove unused Vue imports and emits - Clean up dead code and variables - Minor formatting and consistency fixes ___ ### Diagram Walkthrough ```mermaid flowchart LR A["Vue components"] -- "remove unused imports/defines" --> B["Cleaner scripts"] A -- "table rows wrapped with tbody" --> C["Valid HTML structure"] C -- "prevents runtime/warning errors" --> D["Stabler UI"] ``` <details> <summary><h3> File Walkthrough</h3></summary> <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>DateTime.vue</strong><dd><code>Add tbody wrapper to table rows</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-c06c96ba750be6fc82f517a53ba809efff8aa619aba203b871d4d2aeb7f64f60">+78/-76</a> </td> </tr> </table></details></td></tr><tr><td><strong>Enhancement</strong></td><td><details><summary>21 files</summary><table> <tr> <td><strong>FileItem.vue</strong><dd><code>Drop unused defineProps/defineEmits imports</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-ba91340f65190fae07746a2877b42357f3c4b10eb9969e7fc6fe393655bc8752">+1/-1</a> </td> </tr> <tr> <td><strong>AddDestination.vue</strong><dd><code>Remove unused Vue APIs and service import</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-61b295458e13049a538f5014124855d58dce664dfbd644b57a964a37a07b7a3f">+0/-4</a> </td> </tr> <tr> <td><strong>AddTemplate.vue</strong><dd><code>Trim unused Vue composition imports</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-2508a43827e6b35c07f3222deebd9945101ca6bc32b9dc592e6253ab99908bba">+0/-4</a> </td> </tr> <tr> <td><strong>AlertsContainer.vue</strong><dd><code>Simplify imports to only computed</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-39b487d54970cff4a1ccdfbb49a4ccb38f7131bb9d30944ce1c6e86d3f818148">+1/-1</a> </td> </tr> <tr> <td><strong>FieldsInput.vue</strong><dd><code>Remove unused defineProps from imports</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-a2dcba327fb56cd4cb52efb06fccc256a71fd8a551b826c6c94e71dad75524f5">+1/-1</a> </td> </tr> <tr> <td><strong>FilterCondition.vue</strong><dd><code>Drop unused defineProps import</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-53916e2402d0ee094fcd63f0ec0c99ceffde4fa042f9001203d2e2e1b7709e10">+1/-1</a> </td> </tr> <tr> <td><strong>VariablesInput.vue</strong><dd><code>Remove unused defineProps import line</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-23a647aa1acfc95bc726629f0daa54005e3da1ed5b16482ceccef0649f680a74">+0/-1</a> </td> </tr> <tr> <td><strong>AddCipherKey.vue</strong><dd><code>Remove unused defineEmits from imports</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-ff5ae3a9b070fe2b3650f177ced0d87e9449ae7375a0b117ee299238293df110">+1/-1</a> </td> </tr> <tr> <td><strong>AppTabs.vue</strong><dd><code>Remove unused defineProps from import</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-f69ae88c0f2018ea808724a0eaee5bd008fd1608c52f7ca20215fc6033f00573">+1/-1</a> </td> </tr> <tr> <td><strong>FunctionsToolbar.vue</strong><dd><code>Prune unused composition API imports</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-8283d2ff9c4a66b4b59eac306672aca2d54655a462e2ddb88e14e039d79dcdaf">+0/-4</a> </td> </tr> <tr> <td><strong>EntityPermissionTable.vue</strong><dd><code>Remove unused defineEmits/defineProps imports</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-07b373cc19e7893c8a8a29f5e6d10b8c74d15d6ad3a4d04f5c06b55d0d8de395">+1/-2</a> </td> </tr> <tr> <td><strong>PermissionsTable.vue</strong><dd><code>Remove unused defineEmits import</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-609d4d7245b7309cf30cc45c22c996c6b068ebc042a9673e75ee3bbd2aa00a2a">+0/-1</a> </td> </tr> <tr> <td><strong>AssociateFunction.vue</strong><dd><code>Remove unused emits and lifecycle imports</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-24a5b2df69327a6477227ea674939dea19dd6d393b4bfcf807089d71e6391152">+0/-2</a> </td> </tr> <tr> <td><strong>ExternalDestination.vue</strong><dd><code>Remove unused Vue/imports and reactive</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-7ed6a9ef676d7d6db5440d4157512f731bad58716c351ca39015125a8a9d2df5">+0/-3</a> </td> </tr> <tr> <td><strong>Stream.vue</strong><dd><code>Drop unused imports and services</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-1a17ced9dc89022502cab0a6f9b97b413c2a2c4f8219733d063fc0180d361739">+1/-2</a> </td> </tr> <tr> <td><strong>PipelineEditor.vue</strong><dd><code>Remove unused defineEmits import</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-68c21f647336067eb79737ce9aca2d49632f2fa1c0878bcfdae55607e3473a15">+0/-1</a> </td> </tr> <tr> <td><strong>StreamSelection.vue</strong><dd><code>Remove unused defineEmits import</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-461440be35cc15b6b78700c8a61747ea9fb601a750af5292fa2d04b6fc96d595">+1/-1</a> </td> </tr> <tr> <td><strong>TenstackTable.vue</strong><dd><code>Remove unused defineEmits import</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-bc3c669f5ab65a42ae378df1f7d6b35014c9c220790bdcc72b47f55d1385dc22">+0/-1</a> </td> </tr> <tr> <td><strong>CellActions.vue</strong><dd><code>Remove unused imports and helpers</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-de54e5b8cd9503c53f3f802ac7bc7e3d25846f1657c77cd99534d9f60673992e">+1/-2</a> </td> </tr> <tr> <td><strong>CustomNode.vue</strong><dd><code>Remove unused refs and image vars</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-b9d83cd503b6d3470b238accaaea0b4decf567add8ad4727c63c9e583725f408">+1/-5</a> </td> </tr> <tr> <td><strong>AdvancedValuesFilter.vue</strong><dd><code>Remove unused defineEmits import</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/8026/files#diff-19f84276e3e0eebf0af0707cc9480e2dd7434c8e77be13456a1c0607860af3b2">+1/-1</a> </td> </tr> </table></details></td></tr></tr></tbody></table> </details> ___ |
||
|
|
174e90e1e2 |
fix: all the list tables should have same style (#7510)
### **User description** 1. all the tables that are there in the application should be having the same style ___ ### **PR Type** Enhancement ___ ### **Description** - Unify header layout across list pages - Apply `o2-quasar-table` classes globally - Standardize column widths and sticky actions - Introduce dark/light table theme CSS ___ ### **Changes diagram** ```mermaid flowchart LR Pages["List Pages"] -- "use" --> Header["Header Bar Component"] Header -- "wraps" --> Table["q-table with header slot"] Table -- "applies" --> Styles["Global table CSS"] ``` ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><details><summary>18 files</summary><table> <tr> <td><strong>PipelinesList.vue</strong><dd><code>Refactor pipeline list header & table styling</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-85e3ef322f3eea0fc6d74d89431ba338a1153cb82ee06bef0f7c5f439c04267d">+243/-232</a></td> </tr> <tr> <td><strong>AlertList.vue</strong><dd><code>Update alerts list table header and styling</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-be3e41b823e163b226ffc270d95cc4981e59c600851e4e0d10ee5e4ee994ac8e">+147/-154</a></td> </tr> <tr> <td><strong>LogStream.vue</strong><dd><code>Enhance log stream header & table style</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-56f4223b74568c10bc305741cc9fc3a8830184a251b4eaa6a2649033bc6200e3">+140/-135</a></td> </tr> <tr> <td><strong>EnrichmentTableList.vue</strong><dd><code>Unify enrichment tables header & styling</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-6a29e253f59405d3c0f756dba36afd7483f10ad86927cbbc3348ede6372c3077">+54/-34</a> </td> </tr> <tr> <td><strong>AlertsDestinationList.vue</strong><dd><code>Revamp alert destinations list layout</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-e9d05ba6c071c0e2f5d9ef7acdef757f79910abd6897b29e27b069a10d4ba8de">+66/-39</a> </td> </tr> <tr> <td><strong>ServiceAccountsList.vue</strong><dd><code>Style service accounts list header & table</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-3afe835bcfbec3fda2e9550850c29581092ee0717e7dd8de8888e774a0048d24">+55/-61</a> </td> </tr> <tr> <td><strong>User.vue</strong><dd><code>Revise users table header and styling</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-e973c2a665f9b27b94673ba64cc5b23650300836a727a2e07673c8e26305aee5">+51/-45</a> </td> </tr> <tr> <td><strong>ReportList.vue</strong><dd><code>Format report list header & table</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-f7d700f7e67fbaba3c58ab5d2c614925db743101828214445ce9dae35dc29067">+64/-39</a> </td> </tr> <tr> <td><strong>CipherKeys.vue</strong><dd><code>Style cipher keys list header & table</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-950b715cff2c964d8542512692030c370733b57d698abf40e1dcb3cce2cfaf7a">+56/-34</a> </td> </tr> <tr> <td><strong>TemplateList.vue</strong><dd><code>Rework alert templates list styling</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-7df66364d7d69a26cfa25cbc555d0e090c2f73e51c8386d9b0435bae4412564c">+59/-36</a> </td> </tr> <tr> <td><strong>PipelinesDestinationList.vue</strong><dd><code>Enhance pipeline destinations list UI</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-088c66f5a34e73a5350a794a772e5d905262277337c937dd36f4295072203ebf">+52/-28</a> </td> </tr> <tr> <td><strong>FunctionList.vue</strong><dd><code>Uniform function list header & styling</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-6ff9af50a1597504b7f0dca91e61cf30c800b4a17b4be2ed2c3a4f7a7b2d7068">+50/-33</a> </td> </tr> <tr> <td><strong>ListOrganizations.vue</strong><dd><code>Refine organizations list header & table</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-572ed99323d3e36d126074eccc10b68f6eef983d92f89d06b205fef0925c93a3">+41/-36</a> </td> </tr> <tr> <td><strong>AppRoles.vue</strong><dd><code>Style IAM roles table header & actions</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-191634ef09436199f91f442968110a01f54ae46b5ceee67476f52613ad796db4">+42/-42</a> </td> </tr> <tr> <td><strong>AppGroups.vue</strong><dd><code>Style IAM groups header & table actions</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-402fb2a5338e60fdc3da489f4d50b5cf52f06b4e884a6fe7b82441c9fa5ea22c">+14/-17</a> </td> </tr> <tr> <td><strong>AppTable.vue</strong><dd><code>Add header slot & table styling support</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-efcf66a9e913b5d3a7c2eea800b7f4e54d9e5268307131482fd40f32e2074d8e">+7/-8</a> </td> </tr> <tr> <td><strong>GroupUsers.vue</strong><dd><code>Enhance group users selection table styling</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-114c767db76d4a09278c765d8aba39a1936c861488f39e7f0f6b3883499a3c40">+6/-15</a> </td> </tr> <tr> <td><strong>GroupServiceAccounts.vue</strong><dd><code>Style group service-accounts selection table</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-b7afafc6b850c2d6edc2b855e78ff51d95d101937ec001a5790d130f4fb60695">+5/-14</a> </td> </tr> </table></details></td></tr><tr><td><strong>Formatting</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>index.vue</strong><dd><code>Adjust settings page title spacing</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-699c63979f851c48ad440a078e93282fd797a18fc065e5331b2e41122ddb8b69">+2/-2</a> </td> </tr> </table></details></td></tr><tr><td><strong>Configuration changes</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>app.scss</strong><dd><code>Add global table styling definitions</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-5703d12504b0395cbfbbfad02a592bc391496026e5f03743102ce06c210ea05f">+128/-1</a> </td> </tr> </table></details></td></tr><tr><td><strong>Additional files</strong></td><td><details><summary>3 files</summary><table> <tr> <td><strong>GroupRoles.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-d7d1d9ec26ff77175b0e961e3e53e7ced45c9211eae8a0c00f7ac1cdac88ae14">+3/-8</a> </td> </tr> <tr> <td><strong>EditRole.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-263b6bc7d29fdf8358c8437cd637f1350aa3733cc2706eae8ff00028686cc0f5">+0/-14</a> </td> </tr> <tr> <td><strong>PermissionsTable.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7510/files#diff-609d4d7245b7309cf30cc45c22c996c6b068ebc042a9673e75ee3bbd2aa00a2a">+7/-1</a> </td> </tr> </table></details></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> |
||
|
+1 |
79498b2c3e |
fix: UI performance optimisation (#7254) (#7415)
### **User description** - Replaced Monaco Editor with CodeMirror v6 in web/src/components/CodeQueryEditor.vue for a lighter-weight implementation - Migrated stream state management from local reactive objects to centralized Vuex store modules in web/src/stores/streams.ts - Enhanced memory management in QueryEditor with proper cleanup of editor resources - Simplified page container in web/src/layouts/MainLayout.vue by removing conditional rendering and keep-alive functionality - Added error handling to deepCopy function in web/src/utils/zincutils.ts to prevent crashes from circular references --------- ___ ### **PR Type** Enhancement, Bug fix ___ ### **Description** - Refactor Quota.vue: async components, confirm dialogs - Replace SqlQueryEditor with CodeQueryEditor - Add SQL auto-complete suggestions in query editor - Reset parser and logs init in PanelSchemaRenderer ___ ### **Changes walkthrough** 📝 <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Enhancement</strong></td><td><details><summary>3 files</summary><table> <tr> <td><strong>Quota.vue</strong><dd><code>Refactor and enhance Quota component</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-30293eb5cb924f95356d5abd4588ce0f03765ac9d4446cf5b8cbacba23c6f979">+1526/-1363</a></td> </tr> <tr> <td><strong>DashboardQueryEditor.vue</strong><dd><code>Replace SqlQueryEditor with CodeQueryEditor</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-68bf1b319223d103f1b99e0b681764e4eb76942399397779c81c2cd18f6485ff">+98/-84</a> </td> </tr> <tr> <td><strong>TestFunction.vue</strong><dd><code>Async load CodeQueryEditor, format JSON events</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-b9af9a2d1bf04d23422c26a13e6a763c6953c8713357a2f64ed8073ce6c926a3">+22/-12</a> </td> </tr> </table></details></td></tr><tr><td><strong>Bug fix</strong></td><td><details><summary>1 files</summary><table> <tr> <td><strong>PanelSchemaRenderer.vue</strong><dd><code>Reset parser and log initialization on unmount</code> </dd></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-e5376e7e77bf3aaf6590c2522d8c2dbffcc95a8006ae0d6dc0040a37825367d6">+3/-0</a> </td> </tr> </table></details></td></tr><tr><td><strong>Additional files</strong></td><td><details><summary>89 files</summary><table> <tr> <td><strong>commands.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-7ed08e69ca91e6bd5233bc45e862113207bfcac657b88d4d1e42e32605166433">+2/-2</a> </td> </tr> <tr> <td><strong>alertsPage.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-c5fc79c6d2dcc83e20d69c46fdcf69449dade50c3e7cd5bf65d88369f5083cce">+207/-0</a> </td> </tr> <tr> <td><strong>dashboardPage.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-05afd11e29f85654b337086bafd33ff6185ee44ad369f61bb8fa478821e6c472">+8/-4</a> </td> </tr> <tr> <td><strong>logsPage.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-6af0f73f0523e6fccd38532cb454dc58c4ef1fe4ef5bc5a135ef3f0ee5371ef6">+10/-15</a> </td> </tr> <tr> <td><strong>pipelinePage.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-324393930b7e946cbbd5a9babc217b50a379217ff3348eb8b76ab70817a492f0">+1/-1</a> </td> </tr> <tr> <td><strong>alerts.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-a51e6bab2ebb7ff9069a707fd7da5bb3e0948db8013765b4a934ba594c1bcf57">+224/-0</a> </td> </tr> <tr> <td><strong>alertsfolders.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-8fe0cba8c6c487d2a0cf8309769adaebddcfc1932080d4cbb4a448902d14123a">+312/-0</a> </td> </tr> <tr> <td><strong>custom-charts.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-bb0672bd78ba9a59df96a08374f5fd77f52a47792ad409921fd25457bcf0a9e2">+3/-2</a> </td> </tr> <tr> <td><strong>dashboard-import.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-4d23d07530d81a854e1e5f91ffbdcbbf5ff33eecf73a1e13819e3194b324a930">+6/-5</a> </td> </tr> <tr> <td><strong>dashboard-transpose.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-da631007cea76a4bc59e4acd1195b59ae4131cd5208d21a9c1f94d3913911dc4">+10/-7</a> </td> </tr> <tr> <td><strong>dashboard.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-d0fa0042783dc109334b05266edce228bad97adcb568dd1e447920596238e9b4">+12/-8</a> </td> </tr> <tr> <td><strong>visualization-vrl.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-4bfe28b08994ca0333edbe51bc99d3ddf05525387e90932d88681028e1947db4">+38/-11</a> </td> </tr> <tr> <td><strong>visualize.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-d144f23552ec150db375c89e52c3a53ede9ff3fa5dcd6092694fbe0a308d22ec">+6/-6</a> </td> </tr> <tr> <td><strong>enrichment.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-1c26b9ac51f49e25aa8fe1ad6ae5376da50d27be032579c4194b62e5e798a76b">+3/-3</a> </td> </tr> <tr> <td><strong>indexquery.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-0fdb3410e34d127b97b20feda5f1c5f244f23af2d2d88c331ab753a1f434d3b1">+3/-1</a> </td> </tr> <tr> <td><strong>logspage.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-950a38f6d66dbcf4f7cb39dc366ab25f533044718edee8199d7f819c5b06efe3">+17/-17</a> </td> </tr> <tr> <td><strong>logsqueries.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-aee28776157572aac692a692c53f8d5aebfe8d01d1a7addf14f3a3f92c35b3a5">+5/-7</a> </td> </tr> <tr> <td><strong>logsquickmode.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-e9af1bd193f255ad6740e261d2d9ec1d9f3290a8eabe7e99818c702ef8d67277">+1/-1</a> </td> </tr> <tr> <td><strong>multiselect-stream.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-e2eb0d6de0ad04a42b73cce92a1c86e68213fed79bd7507ea00abfe18a2633c7">+2/-2</a> </td> </tr> <tr> <td><strong>pipelines.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-9b48f5edc53f2413789549b189d4a80f134a320dd5beebf96d738069eb43033a">+17/-12</a> </td> </tr> <tr> <td><strong>remotepipeline.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-3b5a97115bd312e7490580fa00af21077ea5050915995bd133a7f5fd913e5394">+4/-8</a> </td> </tr> <tr> <td><strong>sanity.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-53b3ede269fef5199fbaea935f79134b50ba4db51edc517e4b1701f2cbcc5130">+17/-16</a> </td> </tr> <tr> <td><strong>sanity2.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-f1ab4c6d536ebc3b8ea7ff17d2954d86ef56b660dcfaa1bb39f8213a5bf92e22">+1/-3</a> </td> </tr> <tr> <td><strong>schema.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-1212ad9c33ea14a5a660923b20c162380c9d8c27ffa64993ddfc827e4d82a208">+3/-2</a> </td> </tr> <tr> <td><strong>schemaload.spec.js</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-768d758450ec41815b1330503394239673698045f5c29e46fc05d7b475c037ea">+1/-1</a> </td> </tr> <tr> <td><strong>package.json</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-b861012a5dd72b8a9f3281b7cf09f5a779c98569d040b1bbc1db50f1b15e7cce">+21/-4</a> </td> </tr> <tr> <td><strong>CodeQueryEditor.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-52a36bf2d64e590036ed1c1f89b07a4a6b971a84e4fae9b4272cbc69d63f9bef">+1188/-0</a></td> </tr> <tr> <td><strong>CodeQueryEditorDarkTheme.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-4ee0166b549a9a7d6a91e72d546dffd2d031b0ad6015ef5f735b67742e13c66d">+230/-0</a> </td> </tr> <tr> <td><strong>CodeQueryEditorLightTheme.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-4e80117fff859d80b9dde6898e8026f2c2514c43244e48e2b639527409d38682">+246/-0</a> </td> </tr> <tr> <td><strong>QueryEditor.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-b949ab08f913cc89fb6db9d9929dab88b1ea6d671537ed95401b721b95d1a43c">+0/-584</a> </td> </tr> <tr> <td><strong>ScriptEditor.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-c870b03c943dcadde6f101c9bcf0032917a4a9be11fec1172ef4ba1dde3edf06">+1/-1</a> </td> </tr> <tr> <td><strong>AddAlert.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-7b426bb23e9ed0250c3877d6d97b099c42b2d20e22ddf4459915381b2233a0a8">+0/-4</a> </td> </tr> <tr> <td><strong>AddTemplate.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-2508a43827e6b35c07f3222deebd9945101ca6bc32b9dc592e6253ab99908bba">+10/-2</a> </td> </tr> <tr> <td><strong>ImportAlert.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-0f40dbf2757672e39ad16b86dddc59b568ca2e6ca36850420cd7be617da12d38">+212/-154</a></td> </tr> <tr> <td><strong>ImportDestination.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-814b8ef1dbb4eebca9dfab72452d9a90d5f3fa5886dea8e82ac0bde44f66b445">+4/-3</a> </td> </tr> <tr> <td><strong>ImportTemplate.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-d22684c5142a49b8925a9dba1ef67631128caa95de66e71ba2a5b8120a0b91c6">+35/-12</a> </td> </tr> <tr> <td><strong>ScheduledAlert.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-5e143a17ab0fa5d7817f6d9301667fb5597236f27184248c7a71728e85b8d999">+3/-3</a> </td> </tr> <tr> <td><strong>QueryEditor.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-571498e285d4dfa487f980ce085fbac19b5045b0e201ed02f6eb45a4da5fba6e">+0/-571</a> </td> </tr> <tr> <td><strong>CustomChartEditor.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-489b6f52a8d12f28eefa2c1c1f396b61a5b17f00a5e1a51d0590e801c7cbc6ca">+7/-22</a> </td> </tr> <tr> <td><strong>CustomHTMLEditor.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-66cb3b43f79787a9b8d99b8c1d0f2f89aacd82055ff9ddbd4a4e5c96ec6b61ca">+7/-5</a> </td> </tr> <tr> <td><strong>CustomMarkdownEditor.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-6f1e425e1dc7a287070fbad1713679c729dc7ee61fa3b31781ed6b285ae3d279">+6/-5</a> </td> </tr> <tr> <td><strong>DrilldownPopUp.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-9fdb8c9d3953179dbd311c7e4d2250683af9b51e7706122a505c5c6a708c2a55">+1/-1</a> </td> </tr> <tr> <td><strong>MonacoHTMLEditor.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-ceffb7bda954a9e66f97c1bf28b92ba4ce00bc650f1b24b50997f9745b3ddc5c">+0/-186</a> </td> </tr> <tr> <td><strong>MonacoMarkdownEditor.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-387421c070b513acdb939e69b2ba73a47b990a0a10b00a937fa4dc06f984a3dc">+0/-186</a> </td> </tr> <tr> <td><strong>ViewPanel.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-e7b26fbbfe7ae57f50377c0f002155df17109ea54708b0f134dd2005356b2930">+1/-0</a> </td> </tr> <tr> <td><strong>AddFunction.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-ebfd6c538f3cd3ecb9ab17550fd76e2e89e7a1abccc83a7505077e4af3eee110">+4/-2</a> </td> </tr> <tr> <td><strong>EnrichmentTableList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-6a29e253f59405d3c0f756dba36afd7483f10ad86927cbbc3348ede6372c3077">+21/-11</a> </td> </tr> <tr> <td><strong>EditRole.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-263b6bc7d29fdf8358c8437cd637f1350aa3733cc2706eae8ff00028686cc0f5">+15/-4</a> </td> </tr> <tr> <td><strong>SearchBar.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-2024fb4414454d05e6335ebbd54b067cf0af41bbc184d6652452d492a64cba31">+4/-4</a> </td> </tr> <tr> <td><strong>schema.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-9196be2ccae4054a00b0b1aa9d1e87b366c10920d6eaf9ef8c6e6293d50bcf46">+7/-3</a> </td> </tr> <tr> <td><strong>ImportPipeline.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-d57fa41169daa44551a181f21ca33882004b29ab74e3040e4c56a8c849078670">+1429/-1168</a></td> </tr> <tr> <td><strong>ScheduledPipeline.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-63d8f838bb880356e7804b4a57fd9223d4f2c189de7aadc7cf33cba723b29aaf">+1/-1</a> </td> </tr> <tr> <td><strong>ReportList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-f7d700f7e67fbaba3c58ab5d2c614925db743101828214445ce9dae35dc29067">+44/-34</a> </td> </tr> <tr> <td><strong>SearchBar.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-d20c6ba53e6a9adfe67b2f83fe76357fb541b2764dd40cb16627599e0c80e63f">+13/-3</a> </td> </tr> <tr> <td><strong>VideoPlayer.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-5cb7c9f5d73672eaaabf9214cfeb949f533772e87780829664fac444e3c6fa35">+8/-7</a> </td> </tr> <tr> <td><strong>router.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-a1827956e5a817edc7efb5f4516e7cc4d453e15ea9e9d970aafb8360b09fc78e">+3/-3</a> </td> </tr> <tr> <td><strong>useDashboardPanel.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-fbba1700750053b9eaf38ddd30dab84531bc44131c795ebb713811e4930cd7cb">+5/-1</a> </td> </tr> <tr> <td><strong>useLogs.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-1040f61354f92711e0e77ed4e9bfa15586d45a94c7e2ab06cc37372068030e7b">+150/-66</a></td> </tr> <tr> <td><strong>usePromqlSuggestions.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-250bf4b2d8cb3845005f72188d73ab954359f841e15c4f217708beac1493e83a">+9/-13</a> </td> </tr> <tr> <td><strong>useQuery.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-fe0bf52b216893c6a31f2923aab979e0d817c742b0cfd75e524e60db75b1d3e8">+5/-1</a> </td> </tr> <tr> <td><strong>useStreamingSearch.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-8fce3e25a161cd458e734bd9b1f98aadefe3482da7b6529a5b1f4fa20ec115e2">+34/-4</a> </td> </tr> <tr> <td><strong>useStreams.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-a083369344f022cdf8d4f536719179b1d920369e33e2e26234e70dd36d151a7c">+194/-97</a></td> </tr> <tr> <td><strong>useSuggestions.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-6d2ecd5b90970ea8c8f5d35c5928a2cf8bf0ed14af700db0202759158bfbbf9d">+142/-133</a></td> </tr> <tr> <td><strong>MainLayout.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-91e4134141264c4624d4eb4cfa987b33ed31eb6f551e089c0b26f2610dd54362">+6/-33</a> </td> </tr> <tr> <td><strong>main.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-37b29c5a3b76595194070205d9a0cdedcd717bf7c4367022d1e2667395962f2e">+1/-2</a> </td> </tr> <tr> <td><strong>Index.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-0323c3da69b369843c5d72bf4df5b00ca6b5147192a213baf331659ecf92af62">+122/-75</a></td> </tr> <tr> <td><strong>IndexList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-08f058f883b659e713e606991a7ea37ae1ff016b7cccef970489ab5840dc3d09">+25/-29</a> </td> </tr> <tr> <td><strong>JsonPreview.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-3985073134d35ff074742944b114d0905524038b42e6d2ac887fef2c8436fb16">+74/-71</a> </td> </tr> <tr> <td><strong>QueryEditor.spec.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-cb1820565e2f5b8dd976cc486cf62ab3b756b5ceb6f73d6b203407aa6e6e1721">+1/-1</a> </td> </tr> <tr> <td><strong>SearchBar.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-81893de4edf186b0556f610acb280c87baa2ffe67d3b48a60a866094c7635baf">+85/-57</a> </td> </tr> <tr> <td><strong>SearchHistory.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-9dd167bd5e272b2057f53c16b905047eec00655a3552daad240a964d67a6f56d">+609/-581</a></td> </tr> <tr> <td><strong>SearchSchedulersList.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-0c0a4097c53f07712d35562b1336602bf24faddedab77a9f5717f5582dcac2f1">+125/-114</a></td> </tr> <tr> <td><strong>TenstackTable.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-bc3c669f5ab65a42ae378df1f7d6b35014c9c220790bdcc72b47f55d1385dc22">+29/-16</a> </td> </tr> <tr> <td><strong>SearchBar.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-43405981dab6359bdfba1ef176d74d3c557fc349f98cf6b1662fd4a021448eb1">+3/-3</a> </td> </tr> <tr> <td><strong>TraceBlock.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-3ee60afe01a0ce46d117de0e158e14d24134d8a8b5c4496b3eb79ab0015e67a7">+5/-1</a> </td> </tr> <tr> <td><strong>index.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-955a15c7ee060f1545e82be22911dd0c14307dee5a70071a394e9fd583bd2c55">+6/-1</a> </td> </tr> <tr> <td><strong>logs.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-ad599dbc6a05f72f09340ca9417380cdb279110e7feae6ced910a5dad6408918">+38/-0</a> </td> </tr> <tr> <td><strong>streams.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-440c093277fd2be53228c096ef3a408c393754f10ae8ab275e6b0fe5eb063ad7">+105/-0</a> </td> </tr> <tr> <td><strong>commons.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-17cb74f8142984fc46bbfecdeaacccc118fd5d4ab7f040a55695caaa309d104f">+2/-0</a> </td> </tr> <tr> <td><strong>convertPromQLData.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-68d70ba6c622911d48cdb567940dc404a4a6468b86c6d24fb54e5f1d8aa5ca2a">+2/-0</a> </td> </tr> <tr> <td><strong>vrlLanguage.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-d8baadeb1ccdabd0e424d3f335476417990ae5f680645db52ba03a94b75afd7a">+147/-0</a> </td> </tr> <tr> <td><strong>zincutils.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-d3d59688cccdcc6c84ebe88b698c6910030abecc3125f4c0ef81b0df023699ba">+11/-3</a> </td> </tr> <tr> <td><strong>DashboardJsonEditor.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-e3852754d3a888bea3d2ceb9433111d178119e3d86c82e103695ee1ffd3efbfa">+1/-1</a> </td> </tr> <tr> <td><strong>ImportDashboard.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-660ac197e10735b4f08fc4b5a39744187d16c14156ced00eefde09dbaec323f0">+1/-1</a> </td> </tr> <tr> <td><strong>LogStream.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-56f4223b74568c10bc305741cc9fc3a8830184a251b4eaa6a2649033bc6200e3">+71/-32</a> </td> </tr> <tr> <td><strong>AppErrors.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-edad7593714ebb348007aa179f10555b5185d45c9f5f80efee772d407a20b3d0">+4/-4</a> </td> </tr> <tr> <td><strong>AppSessions.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-08359708ae507d81dcdc60e3c05ba4f56a40f4a61718074cd6019bf2ceb87575">+7/-7</a> </td> </tr> <tr> <td><strong>StreamExplorer.vue</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-2c90a38c4ff744a3824c1b112ac4522a7d55912b03aef6f280a5f338fe51e20a">+2/-2</a> </td> </tr> <tr> <td><strong>vite.config.ts</strong></td> <td><a href="https://github.com/openobserve/openobserve/pull/7415/files#diff-9430906049744cbbfe5d0b382b2466843a42cfebf755ff86fec850b0712258ef">+24/-25</a> </td> </tr> </table></details></td></tr></tr></tbody></table> ___ > <details> <summary> Need help?</summary><li>Type <code>/help how to ...</code> in the comments thread for any questions about PR-Agent usage.</li><li>Check out the <a href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a> for more information.</li></details> --------- Co-authored-by: Omkar Kesarkhane <127078473+omkarK06@users.noreply.github.com> Co-authored-by: ktx-abhay <abhay.padamani@kiara.tech> Co-authored-by: sai nikhil kethe <nikhil@openobserve.ai> Co-authored-by: Kirtan Thakkar <kirtan@kiara.tech> Co-authored-by: ktx-vaidehi <vaidehi.akhani@kiara.tech> Co-authored-by: ShyamOOAI <shyam@openobserve.ai> Co-authored-by: ktx-akshay <akshay.patil@kiara.tech> Co-authored-by: omkark06 <omkar@zinclabs.io> Co-authored-by: Hengfei Yang <hengfei.yang@gmail.com> Co-authored-by: Shrinath Rao <shnath@openobserve.ai> |
||
|
|
f18f265e12 | fix: Updated actions execution type label (#6374) | ||
|
|
b7af94f487 |
fix: Actions UI improvements (#6372)
1. Remove action_id from Histogram and Page-count search payload 2. Rename Action type `Service` to `Real Time` 3. Added validation for service account selection while creating action |
||
|
|
ab0b3a64f8 |
fix: added errors when actions are not enabled while creating destination (#6342)
1. If actions are disabled and user tries to import action in destination, Unknown Error was shown instead of 'Action type not supported' |
||
|
|
28106fc564 |
fix: Actions UI issues (#6325)
1. Action Issues 2. #6288 --------- Co-authored-by: udev <uddhavdave1@gmail.com> |
||
|
|
bb4f30f21d |
feat: Actions in Logs and Alert Destinations (#6129)
Co-authored-by: udev <uddhavdave1@gmail.com> |
||
|
|
c4a29e3863 |
fix: changes action script schedule types to lowercase (#6081)
Co-authored-by: udev <uddhav@openobserve.ai> |
||
|
|
dc8e673357 |
fix: added support for minimum auto refresh interval (#5696)
#5463 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Release Notes - **New Features** - Enhanced auto-refresh interval configuration across multiple components. - Added minimum refresh interval support with configurable restrictions. - Introduced new error handling and validation mechanisms for report creation. - Added new utility functions for validating frequency intervals. - **Improvements** - Introduced dynamic minimum refresh interval settings. - Added user feedback mechanisms for refresh interval constraints. - Improved error handling for alert creation and updates. - Enhanced clarity and maintainability of code through formatting adjustments. - Updated frequency input logic to dynamically calculate minimum values. - Added validation for refresh intervals during data refresh and URL query restoration. - **Configuration** - Added new props for minimum refresh interval and related messages. - Implemented dynamic minimum value calculations for frequency inputs. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
4ac3481bb8 | feat: Action Scripts (#5694) |