Commit Graph
489 Commits
Author SHA1 Message Date
Isaac Janzen c31d33a50c DEV: Use angle bracket syntax (#246) 2023-05-26 14:27:40 -05:00
Canapin 6e8aeff437 UX: fix parameters inputs spacing (#245)
* UX: fix parameters inputs spacing

* trying to fix the linting errror 😬
2023-05-25 22:59:59 +02:00
Jan Cernik 2144e7b3ba FIX: Show "false" and "0" in query result (#244) 2023-05-04 19:45:43 -03:00
Discourse Translator Bot f99b3af7ed Update translations (#242) 2023-04-25 17:21:59 +02:00
David Taylor 412333c25c DEV: Resolve add_to_serializer deprecations (#243)
https://github.com/discourse/discourse/commit/26b7f8a63bfdb6505b605077a4beb962a9be7b97
2023-04-24 15:45:36 +01:00
Penar Musaraj 3907c49263 FIX: Reduce issues when debouncing schema search (#241)
Previously the debounced value was both setting the filter value and
updating the input's text value. This causes visible UI issues, because
the debounce updating the input's text value would sometimes reset it,
especially if/when typing quickly.

This PR also uses sticky positioning for the search form, so that it
stays visible even when scrolling the list of schema tables.
2023-04-18 10:33:25 -04:00
Joffrey JAFFEUX 97d60de92a FIX: ensures explorer is using default values when provided (#240) 2023-04-17 09:06:27 -05:00
Canapin 98e96fccc2 [FIX] The user_list parameter returned user objects instead of their IDs (#239) 2023-04-15 22:02:32 +01:00
Discourse Translator Bot b565d70dd5 Update translations (#237) 2023-04-05 09:13:13 +02:00
Ted Johansson bc02d030b6 DEV: Add configurable rate limit for Data Explorer API query runs (#238)
Data Explorer can run arbitrary SQL queries which can be costly for us if over-used. Because of that we want to add the ability to rate limit the query run endpoint, in particular when requested programmatically using API.

This commit introduces a rate limit to the `QueryController#run` endpoint. It heavily leans on the existing `RateLimiter` implementation, and the ability of `ApplicationController` to turn rate limit exceptions into nicely formatted JSON responses.

The rate limit (per 10 seconds) can be configured through the global setting `max_data_explorer_api_reqs_per_10_seconds`, and defaults to 2.

Handling can be configured through `max_data_explorer_api_req_mode`, and can be set to warn, block, or both warn and block. We will default to warn for now and monitor the logs for a while.
2023-04-03 13:46:35 +08:00
Isaac Janzen a208c1b054 FIX: Reset results on query redirect (#236)
# Problem

When switching group reports it was possible to have the `results` from a previous run (of a query) pass over to the rendering of a different query.

# Fix

Set the controllers `results` to `null` when first rendering the query

https://user-images.githubusercontent.com/50783505/228050384-5231f004-1dc2-4867-8d57-9db7706bb65f.mov
2023-03-28 11:01:47 -05:00
David Battersby f589864ce1 FIX: Flaky test fix for Data Explorer Automated PM Feature (#235) 2023-03-27 15:57:33 +08:00
Alan Guo Xiang Tan 2c418e7484 DEV: Skip flaky test (#234) 2023-03-27 12:37:19 +11:00
David Battersby 705753216c FEATURE: Allow data explorer query result to be sent as recurring PM (#233)
This feature enables admins to create reports automatically based on a recurring schedule.

It introduces a new automation script that includes the new email_group_user field added to discourse-automation, along with a query_id and query_params to pass in parameters to the existing data explorer query.

The output of the report will be sent via pm (as a markdown table) to the recipients entered within the automation script.

The automation (supports individual users, email addresses and groups).
2023-03-24 16:38:42 +08:00
Bianca Nenciu 206d937a78 DEV: Update plugin to match latest guidelines (#229)
This commit updates the plugin to the latest guidelines, as shown in
discourse-plugin-skeleton, which involves moving a lot of the code to
dedicated files, use proper namespaces, use the autoloader as much as
possible, etc.
2023-03-22 23:29:08 +02:00
Isaac Janzen 075a508e52 FIX: Special attributes not working (#232)
# Context
Data explorer gives you the ability to use special attributes such as 👇 

> SELECT TIMESTAMP 'yesterday' as reltime$time

# Problem
During the upgrade to ember octane these were neglected and did not work. This PR updates them to working condition.

# Additional
- Drop unused action of `saveDefaults`
2023-03-10 11:41:59 -06:00
Martin Brennan 389b8e15c9 DEV: Fix broken plugin specs because of bookmarkable changes (#231)
Followup to 360d0dde650704a0f01fd6d8b525e933b1d7fcf2,
this causes other plugin tests to fail because
`DiscoursePluginRegistry.reset!` is
a shotgun. We can use the more surgical version
`DiscoursePluginRegistry.reset_register!(:bookmarkables)`
instead.
2023-03-08 10:39:43 +08:00
Martin Brennan a684897468 DEV: Change bookmarkable registration to use new plugin API (#230)
Relies on core PR https://github.com/discourse/discourse/pull/20556
to be merged first.
2023-03-08 10:39:20 +10:00
Bianca Nenciu 0f6b30c2d8 Revert "DEV: Update plugin to match latest guidelines (#227)" (#228)
This reverts commit 9210cf6fa2.
2023-02-23 19:10:46 +02:00
Bianca Nenciu 9210cf6fa2 DEV: Update plugin to match latest guidelines (#227)
- Define extension modules
- Use different files instead of plugin.rb
- Make sure plugin is disabled according to the setting
2023-02-23 15:29:13 +02:00
Krzysztof Kotlarek 466d4bb00c FIX: clear state when reports are changed (#226)
When show report page is left, results should be cleared to not interfere with next report.
2023-02-22 16:25:33 +11:00
Discourse Translator Bot d7a1b255fb Update translations (#225) 2023-02-21 17:12:04 +01:00
Discourse Translator Bot c4d715b7c2 Update translations (#224) 2023-02-15 10:50:54 +01:00
Isaac Janzen 556d12ac50 FIX: Maintain editing state after saving query changes (#223)
In the widget version of the data-explorer we would maintain the `editing` state after saving query changes. This was lost in upgrade to glimmer. 

# Current State
https://user-images.githubusercontent.com/50783505/217622464-79adaab6-84ed-4b64-93ae-c889aa8fb1bd.mp4

# Updated State
https://user-images.githubusercontent.com/50783505/217623475-1998fab6-0b70-42d2-923d-574efb9d5601.mov

# Other Changes
- `createProperties` was added back to the `query` model as it is being utilized in the creation of a new data explorer query. This was accidentally removed and was causing errors when trying to create a new query.
- Add new-query test
2023-02-08 13:40:53 -06:00
Isaac Janzen 04b2177749 DEV: Upgrade query model to Octane (#221)
- Upgrade `query` model to Octane
- Update `assets/javascripts/discourse/templates/admin/plugins-explorer.hbs` to access values via `this.`
2023-02-07 12:44:38 -06:00
Isaac Janzen 29cfa6383c DEV: Convert raw-hbs to view only components (#222)
- Convert raw.hbs files to co-located view only components
2023-02-07 12:26:47 -06:00
Isaac Janzen 332ae394e8 DEV: Upgrade group-reports to Octane (#218) 2023-02-06 11:20:03 -06:00
Canapin d6b94706a0 UX: Reduce the table height (#220)
Prevent the table to have a fixed 1000px height with the horizontal scrollbar at the bottom of a mostly blank section when we have only a few results.
This change doesn't interfere with the sticky header.
2023-02-06 18:05:17 +01:00
Isaac Janzen 5a65c15463 DEV: Upgrade admin-plugins-explorer to Octane (#219) 2023-02-06 10:21:58 -06:00
Discourse Translator Bot f51bc050a2 Update translations (#217) 2023-01-18 11:42:21 +01:00
Isaac Janzen 910b95bef8 FIX: Opening and closing of schema columns (#215)
Per: https://meta.discourse.org/t/cant-select-a-column-name-as-releasing-the-mouse-click-will-close-the-current-table-dropdown/250715/3

Fixed column toggling where columns should open and close when clicking column name, and not when clicking the column body.
2023-01-10 14:03:15 -06:00
Discourse Translator Bot 2b2e351331 Update translations (#214) 2023-01-10 20:54:37 +01:00
discoursebotanddiscoursebuild e9f132b0d7 DEV: Update CI workflows (#216)
Co-authored-by: discoursebuild <[email protected]>
2023-01-10 18:11:40 +00:00
Isaac Janzen 4d26cf78f0 DEV: Upgrade admin-plugins-explorer to Octane (#209)
- Drop `explorer-container` and move its logic to `admin-plugin-explorer` container
- Convert resizing of the query edit pane from jquery -> draggable modifier
2023-01-05 09:27:10 -06:00
David Taylor b1df914549 DEV: Update eslint-config-discourse, use prettier for hbs (#212) 2023-01-04 13:36:14 +01:00
Isaac Janzen 27b30b5efb FIX: Group reports downloads (#213)
We were not passing the correct arguments through in the group reports template causing the download url to default to an admin route. This made downloads unavailable to non-admin users. Fixed by passing the correct values through.
2022-12-30 10:26:14 -06:00
Isaac Janzen f5cd03a451 FIX: Downloading query results (#211)
We were not passing the correct value from the `query-results-wrapper` to the `query-result` component causing downloads to fail.
2022-12-29 14:47:18 -06:00
dependabot[bot] 974be7d591 Build(deps): Bump json5 from 2.2.1 to 2.2.2 (#210)
Bumps [json5](https://github.com/json5/json5) from 2.2.1 to 2.2.2.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.1...v2.2.2)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-29 12:22:49 -05:00
David Taylor 148d6c32a3 DEV: Introduce syntax_tree for ruby formatting (#208) 2022-12-29 13:31:29 +01:00
Isaac Janzen ac6b0467a1 DEV: Update params for group reports (#207)
During the upgrade to Octane group reports did not have the necessary 'updateParams' function added to have the param input changes bubble up to the parent. This PR adds the missing function as well as a small test to check that params can be inputted as expected (inserting a param would error previously).
2022-12-28 09:50:55 -06:00
Isaac Janzen 3e7605d8a0 DEV: Update params to use previously ran values on reload (#206)
After running a query with a non-default query param (inserting the new param into the url) we want to have the same params available after reloading the page. To do this we need to pass the updated params back up to the parent due to Octane's one direction data stream. I went over this with @pmusaraj and we both agreed this was extremely difficult to test due to needing to reload the page in a test, so we opted to move forward without one. A system test could be helpful in this case... I will investigate in a follow up PR.

- Move param-input tests to a dedicated file
2022-12-27 12:10:29 -06:00
Isaac Janzen 85c88c5d80 DEV: Better handling of no results (#205)
When there were no query results it would throw an error due to `this.resultCount` always passing as it is in the format of

```
"INTEGER - results returned"
```

so we need to grab the first index of the string and check if the integer is great than 0
2022-12-20 16:55:11 -06:00
Isaac Janzen 4c70cfa100 Upgrade query-result to Octane (#204)
* Upgrade query-result to Octane
2022-12-20 12:09:37 -06:00
Isaac Janzen cf365f7df2 Upgrade explorer-schema onetable/enum to Octane (#203)
* Upgrade explorer-schema onetable/enum to Octane
2022-12-20 10:30:43 -06:00
Isaac Janzen 147bfec207 Upgrade data-explorer-bar-chart to Octane (#201)
* Upgrade `data-explorer-bar-chart` to Octane
2022-12-16 11:52:00 -06:00
Isaac Janzen 7d1a9d487d Upgrade explorer-schema to Octane (#202)
* Upgrade `explorer-schema` to Octane
2022-12-16 11:51:36 -06:00
Isaac Janzen 8028b9f16a Upgrade param-input to Octane (#196)
* Convert `param-input` to glimmer components
2022-12-16 11:41:03 -06:00
Isaac Janzen bd602b02a0 Add test for category result (#200) 2022-12-15 11:35:18 -06:00
Isaac Janzen 9025646dc9 Hotfix category_id lookup (#199)
https://github.com/discourse/discourse-data-explorer/blob/74dfc39530201ea2afc9b7bb8e43d109e5752514/assets/javascripts/discourse/components/query-row-content.js#L34-L35

needed to pass the site object to 'lookup' parent functions and was erroring on category lookup.
2022-12-15 08:26:40 -06:00
Isaac Janzen 479d51faf0 Add followup test for displaying post in query results (#198) 2022-12-14 12:09:25 -06:00