Commit Graph

860 Commits

Author SHA1 Message Date
Vijay Prasanna
76dc3ed100 console: pro console build fails
https://github.com/hasura/graphql-engine-mono/pull/1928

Co-authored-by: Sooraj <8408875+soorajshankar@users.noreply.github.com>
GitOrigin-RevId: e80c247840e4e29d66efc17631580b833ee0efe7
2021-07-29 06:25:48 +00:00
Sooraj
af9dfd3554 console: show error message on inconsistent objects table
https://github.com/hasura/graphql-engine-mono/pull/1886

GitOrigin-RevId: 074b1f54b6ed3505892b5db3466592333ba1207a
2021-07-27 06:56:52 +00:00
Ikechukwu Eze
ac10c32381 console: make specifying unique params for rate limits optional
### Description
Make the unique parameters to be an optional field in the form.

### Changelog
- [x] `CHANGELOG.md` is updated with user-facing content relevant to this PR. If no changelog is required, then add the `no-changelog-required` label.

### Affected components
- [x] Console

### Related Issues
Based on internal discussion: https://hasurahq.slack.com/archives/C01SQFJ7SHX/p1626948719012400

Closes #1890

### Solution and Design
This is more of adhoc solution for the unique parameters not being a required field: Using a checkbox to enable the additional unique params - if the user has not checked it, then the payload is sent without the unique params attribute.

When the additional unique parameters are not selected -

![Screenshot 2021-07-26 at 2 40 57 PM](https://user-images.githubusercontent.com/11921040/126964312-bb12b146-2644-432f-a790-88f23fb322ce.png)

When the additional unique parameters are picked -

![Screenshot 2021-07-26 at 2 42 03 PM](https://user-images.githubusercontent.com/11921040/126964545-89f41e43-c855-4290-8b15-75f03c44101e.png)

https://github.com/hasura/graphql-engine-mono/pull/1885

GitOrigin-RevId: dd16812c1c548147a47830a8a8af27c1e39a5689
2021-07-26 15:01:15 +00:00
Nicolas Beaussart
71adc6431b console: add schema sharnig template version check
https://github.com/hasura/graphql-engine-mono/pull/1893

GitOrigin-RevId: 1fcb07a937ef067e4b370e49e9aade26efd90035
2021-07-26 13:50:37 +00:00
Ikechukwu Eze
760406b851 console: fix issues with replacing invalid graphql identifiers in table and column names
>
This PR  replaces all occurrences of invalid graphql identifiers in table and column names when tracking a table from the console.

### Description
>

### Changelog

- [x] `CHANGELOG.md` is updated with user-facing content relevant to this PR. If no changelog is required, then add the `no-changelog-required` label.

### Affected components

- [x] Console

### Related Issues
Closes [7239](https://github.com/hasura/graphql-engine/issues/7239)

https://github.com/hasura/graphql-engine-mono/pull/1888

GitOrigin-RevId: b6f719b0f1c270908a8717b08564a97c44d8c5bf
2021-07-23 16:36:06 +00:00
Abhijeet Khangarot
76d1430703 console: use escape string constants for text fields
https://github.com/hasura/graphql-engine-mono/pull/1797

GitOrigin-RevId: 1d0cb1e95206c444fb3bc91ddc9a3210045d29c5
2021-07-23 10:35:33 +00:00
Aleksandra Sikora
eb967e6df9 console: enable bigquery in connect db form for cloud console
https://github.com/hasura/graphql-engine-mono/pull/1410

GitOrigin-RevId: 8853ec4904e8d47a05e821fefc38eeffebfbb3ba
2021-07-22 11:48:12 +00:00
hasura-bot
2814934cf7 console: add pagination on rawsql results page
GITHUB_PR_NUMBER: 5629
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/5629

https://github.com/hasura/graphql-engine-mono/pull/1665

Co-authored-by: Sooraj <8408875+soorajshankar@users.noreply.github.com>
GitOrigin-RevId: 9bf8c6f9068fc04160e9e9ebce2600b30e523a90
2021-07-22 09:58:24 +00:00
Vijay Prasanna
6323f4f7b1 pro-console: fix error message alignment on api limits form
https://github.com/hasura/graphql-engine-mono/pull/1871

GitOrigin-RevId: 54bad11061c330554193ab0e81a66a61d92d2d73
2021-07-22 09:16:26 +00:00
Vijay Prasanna
32202e90d3 pro-console/bug: fixes broken form layout
https://github.com/hasura/graphql-engine-mono/pull/1870

GitOrigin-RevId: 89d0407331dbe35a569afe746ff30d9c51d6b364
2021-07-22 05:47:02 +00:00
Vijay Prasanna
89e7f26c55 pro-console/security-features: add ability to enable/disable GraphQL introspection per role
https://github.com/hasura/graphql-engine-mono/pull/1678

Co-authored-by: Ikechukwu Eze <22247592+iykekings@users.noreply.github.com>
GitOrigin-RevId: 9bfd8a20dfe499b2852e5809471d73ad50b1a48b
2021-07-20 16:10:15 +00:00
Abhijeet Khangarot
fe1f50d0f1 console: add/remove database persist in metadata
https://github.com/hasura/graphql-engine-mono/pull/1721

GitOrigin-RevId: 15ce3b966db26a88357922e45af742474a8abe19
2021-07-20 12:40:03 +00:00
Varun Choudhary
7bd32c7bb8 pro-console: fix runtime error when expanding pending/processed scheduled events
closes: https://github.com/hasura/graphql-engine/issues/7168

### Description

On expanding the pending and processed event on `one-off scheduled event` on pro we are getting an error because we are not passing the auth header to API request. In this PR we are passing `includeAdminHeaders` to API as `true` to fetch events.
`keyframes` imported from `styled-components` is supported on V3 only and we are using V5.0.1. So, instead of importing spinner from UIKit which we are not using anymore, we are importing spinner form other place.

### Affected components

- [x] Console

https://github.com/hasura/graphql-engine-mono/pull/1754

Co-authored-by: Sooraj <8408875+soorajshankar@users.noreply.github.com>
GitOrigin-RevId: 7550d544b2d7f4f98a793895368c964d17d0e362
2021-07-19 06:55:48 +00:00
Sooraj
08847566d8 console: support global_select_limit for bigquery sources
https://github.com/hasura/graphql-engine-mono/pull/1812

GitOrigin-RevId: 55785579523fcd3500486139431c4d9b3c1ace19
2021-07-16 15:05:28 +00:00
Ikechukwu Eze
175b1a86ca console: fix issue with changing table's column name and graphQL field name simultaneously
This PR fixes the following errors when column name and graphql field name are modified:

    1. Metadata out-of-date error -> when graphql field name is removed (set to empty on the console UI)
    2. Inconsistent state error -> due to old column name used in modifying graphql field name

### Changelog
- [x] `CHANGELOG.md` is updated with user-facing content relevant to this PR.

### Affected components
- [x] Console

### Related Issues
Closes [7221](https://github.com/hasura/graphql-engine/issues/7221)

### Solution and Design
1. Use exportMetadata function after column name rename has been completed, passing the function to rename graphql field name
2. Use new column name, instead of old column name when renaming graphql field name

### Steps to test and verify
1. Go to data tab
2. Create a table if none
3. click the table name by the side-menu and when it has loaded, click on the modify tab.
4. Then edit any column of the table:
     - Change column name and graphql field name, it should work successfully without an error
     - Change column name and remove graphql field name, it should work successfully without metadata out-of-date error

Does this PR add a new Metadata feature?
- [x] No

#### GraphQL
- [x] No new GraphQL schema is generated

#### Breaking changes
- [x] No Breaking changes

https://github.com/hasura/graphql-engine-mono/pull/1778

GitOrigin-RevId: edfd795fb804df71a4e07e0373ca0714ff45fda9
2021-07-14 09:46:37 +00:00
Varun Choudhary
b1013e8d6c console: add reload all databases checkbox to the metadata settings page
Closes: https://github.com/hasura/graphql-engine/issues/7146

### Description

This PR adds a `reload all databases` check box along `with` the `reload metadata` check box to reload all databases (inconsistent databases also).

![Screenshot from 2021-07-07 16-51-49](https://user-images.githubusercontent.com/68095256/124750932-af31a000-df43-11eb-88d9-b6585214a188.png)

### Affected components

- [x] Console

### Steps to test and verify

Use this for your docker image: https://235669-308610159-gh.circle-artifacts.com/0/server/image.tar

1. Go to the metadata setting page
2. If `reload all databases` check box is checked: It reloads everything by sending * in the API
3. If `reloading all databases` check box is not checked: It reloads inconsistent DB and if no inconsistent then it passes an empty string

https://github.com/hasura/graphql-engine-mono/pull/1703

GitOrigin-RevId: 2b6f029a17d40a43f5bce3680d5681c97433d78c
2021-07-14 06:16:00 +00:00
Nicolas Beaussart
cdfb71c1da console: add a feature flag for schema sharing
https://github.com/hasura/graphql-engine-mono/pull/1786

GitOrigin-RevId: a35dfa98508a8ef1ea92fe8588e79fc6f8479a2d
2021-07-13 16:57:04 +00:00
Ikechukwu Eze
701f3fd304 pro-console/security features: add support for api limits
https://github.com/hasura/graphql-engine-mono/pull/1541

Co-authored-by: Vijay Prasanna <11921040+vijayprasanna13@users.noreply.github.com>
GitOrigin-RevId: 83f0f20a45f0f396002c53a716dd3541e82b83e1
2021-07-13 11:18:06 +00:00
Sooraj
effb221d97 console: fix test_oss_console ci errors
https://github.com/hasura/graphql-engine-mono/pull/1726

GitOrigin-RevId: ae87ca45a111fcdb25ba9c53c1bfd8650e1be78c
2021-07-12 10:40:50 +00:00
Nicolas Beaussart
e3e078fa42 console: add schema sharing
https://github.com/hasura/graphql-engine-mono/pull/1512

Co-authored-by: Varun Choudhary <68095256+Varun-Choudhary@users.noreply.github.com>
GitOrigin-RevId: 71efbb2a5a577f765b83b1fd9ee9254a292d361d
2021-07-08 08:18:25 +00:00
hasura-bot
2c2ce3972e console: fix incorrect down migration comment blocks
GITHUB_PR_NUMBER: 6956
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/6956

https://github.com/hasura/graphql-engine-mono/pull/1392

Co-authored-by: Bob Ippolito <26596+etrepum@users.noreply.github.com>
GitOrigin-RevId: de652b37f13d0c38d497610de1c270d0b8d18160
2021-07-05 10:30:56 +00:00
Varun Choudhary
a1f25506f2 console: fix empty table list on create event triggers form
Closes: https://github.com/hasura/graphql-engine/issues/6903

Description:

This PR adds `Select schema` as a default text in schema drop down box on events triggers.
![Screenshot from 2021-05-12 15-39-09](https://user-images.githubusercontent.com/68095256/117958025-3d204e80-b338-11eb-9169-ec529db0bf6f.png)

Affected Components:

- [x] Console

https://github.com/hasura/graphql-engine-mono/pull/1348

GitOrigin-RevId: 28b6054addf8fcb11b80ae357cfcbe8b71a470bc
2021-07-05 08:32:19 +00:00
Varun Choudhary
2af583beb1 console: show trigger names by execution order on table's modify page
Closes: https://github.com/hasura/graphql-engine/issues/6737

Product Design link: https://hasura.github.io/product-design/62-console-trigger-design/v2-triggers.html

Description:

This PR
1. Group all triggers based on the `action_timing` and `event_manipulation`. (BEFORE INSERT, BEFORE UPDATE, ...)
2. Sort the names of the triggers within each of the groups
On admin panel.
![Screenshot from 2021-05-07 12-55-53](https://user-images.githubusercontent.com/68095256/117413420-943ab380-af33-11eb-9127-86c0dd789274.png)

Affected Components:

- [x] Console

https://github.com/hasura/graphql-engine-mono/pull/1311

GitOrigin-RevId: 1709dd82ce44886e1d53505d94e1e289dab73aaf
2021-07-02 15:14:36 +00:00
Sooraj
97505cf251 console: hide incorrect table comments for mssql table
https://github.com/hasura/graphql-engine-mono/pull/1699

GitOrigin-RevId: 0e253fd3b15f199f138413533f36d248470b99c1
2021-07-02 08:15:47 +00:00
Varun Choudhary
2b2655665c console: show frequently used columns button on add new column view
closes: https://github.com/hasura/graphql-engine/issues/7148

### Description

This PR add `Frequently used columns` on modify page while adding a column to existing table.

![frequently](https://user-images.githubusercontent.com/68095256/123812895-16cb6800-d912-11eb-977e-a3247ec15525.png)

### Affected components

- [x] Console

https://github.com/hasura/graphql-engine-mono/pull/1695

GitOrigin-RevId: 1e8fa354281458dd9c7eacb963c4d54391d975a0
2021-07-02 07:30:18 +00:00
Abhijeet Khangarot
efd934f5c1 console/remote-schemas: fixes 404 errors while adding/modifying/removing remote schemas
https://github.com/hasura/graphql-engine-mono/pull/1674

GitOrigin-RevId: 4775830d97307fd960fc6d0857ec6431f707c68b
2021-06-28 12:20:55 +00:00
Vijay Prasanna
193ab5de44 console: update current source and schema in redux after importing metadata
https://github.com/hasura/graphql-engine-mono/pull/1557

GitOrigin-RevId: 3bb34f64bb4762e73f967643675b291fb6530785
2021-06-23 13:01:13 +00:00
Varun Choudhary
c2dd51b6c7 console: pass correct table name when cloning permission
Closes: https://github.com/hasura/graphql-engine/issues/6969

Description:

To reproduce the issue please visit the issue link.
This is happening because the request payload is using the current table name while cloning permission. This PR change makes the payload use the correct table name.

- [ ] `CHANGELOG.md` is updated with user-facing content relevant to this PR. If no changelog is required, then add the `no-changelog-required` label.

### Affected components

- [x] Console
- [x] CLI

https://github.com/hasura/graphql-engine-mono/pull/1505

GitOrigin-RevId: bfd8a67ccb55261a1bf47a9ede18e3e1cf3bff2c
2021-06-22 18:23:04 +00:00
Abhijeet Khangarot
c0fde4d1d5 console: hide postgres system schemas by default
>

### Description
We want to hide postgres system schemas like `pg_toast` and `pg_temp` and their variations (ex. `pg_toast_temp_35`) from showing up in console.
>

### Changelog

- [x] `CHANGELOG.md` is updated with user-facing content relevant to this PR. If no changelog is required, then add the `no-changelog-required` label.

### Affected components

- [x] Console

### Related Issues
->
https://github.com/hasura/graphql-engine/issues/6954

### Solution and Design
>
We can achieve this by updating the `schemaListSql` query for postgres datasources to filter out postgres system schemas.

### Steps to test and verify
>

1. Add a postgres datasource containing some system schemas
2. The system schemas should not show up in console

https://github.com/hasura/graphql-engine-mono/pull/1499

Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: 6a179b9d5cd4d061ae9fda17bf3824321cf7e96e
2021-06-22 15:24:20 +00:00
Abhijeet Khangarot
9255fcf173 console: wrap table name in quotes in add comment sql
>
Adding a table with a capital letter and a comment was causing SQL error, this PR fixes that issue. (in postgres and citus dbs)

### Description
>

### Changelog

- [x] `CHANGELOG.md` is updated with user-facing content relevant to this PR. If no changelog is required, then add the `no-changelog-required` label.

### Affected components

- [x] Console

https://github.com/hasura/graphql-engine-mono/pull/1617

GitOrigin-RevId: b8e911206af7ce950b5432dab98723e52992b905
2021-06-22 14:45:24 +00:00
Sameer Kolhar
608e4fbb20 server, console, docs: add update_remote_schema API
https://github.com/hasura/graphql-engine-mono/pull/1546

GitOrigin-RevId: 142b0d0e0ffc35b2679c91c411868c45a8b8e221
2021-06-21 17:42:40 +00:00
Sooraj
03ecd0398b console: improve console with read-only database
https://github.com/hasura/graphql-engine-mono/pull/1619

GitOrigin-RevId: 26da5b0d1b48d2158642c7efb5f1e99933a37624
2021-06-21 15:17:24 +00:00
Ikechukwu Eze
6bb8df6a26 console: add citus support
### Description
Add console support for Citus DB

### Changelist
- [x] Add/Remove Citus Datasource
- [x] Track/Untrack tables
- [x] Create Relationships + Tracking suggested relationships
- [x] Permissions
- [x] Browse Rows (minimal)
- [x] Insert Row (using Mutations)
- [x] Filtering Shards and Partitions (partition details are not present in Modify tab, it should work once https://github.com/hasura/graphql-engine-mono/pull/1164 is merged)
- [x] Create Table
- [x] Fixes issue https://github.com/hasura/graphql-engine/issues/6926 for Citus.

### Known Issues
- Unable to create Functions from Raw SQL, server returns 400.
- Unable to run `ALTER` SQL commands, server returns 400.

### Screenshots

![Screenshot 2021-04-21 at 7 53 23 PM](https://user-images.githubusercontent.com/11921040/115569900-468b3d80-a2db-11eb-8374-e06d5d61b2e4.png)

### Setting up a Citus Source
- Link to [docker compose](https://github.com/citusdata/docker/blob/master/docker-compose.yml)
- Create an `.envfile` and add the following
```env
COORDINATOR_EXTERNAL_PORT=<port to expose citus master>
COMPOSE_PROJECT_NAME=test
```
- run `docker-compose --file docker-compose.yml --env-file .envfile up --scale worker=2 -d`. `worker` controls the number of citus worker nodes.
- Link to [sample data](http://docs.citusdata.com/en/v10.0/get_started/tutorial_multi_tenant.html#data-model-and-sample-data)

### Changelog
- [x] console: add citus support

https://github.com/hasura/graphql-engine-mono/pull/1184

Co-authored-by: Vijay Prasanna <11921040+vijayprasanna13@users.noreply.github.com>
GitOrigin-RevId: 2500a5d5f996a2904fe8b5c656d6f3f2db707db6
2021-06-21 06:47:18 +00:00
Vijay Prasanna
fdcdc14c01 console: add default selected reference option to create table's foreign key editor
https://github.com/hasura/graphql-engine-mono/pull/1472

GitOrigin-RevId: e44f6bc6d819d049edd042ecd1e4e951a45f4ab8
2021-06-18 09:53:51 +00:00
Sooraj
12045a827c console/fix: changing primary key removes the existing PK when failing to create PK
https://github.com/hasura/graphql-engine-mono/pull/1509

GitOrigin-RevId: b4fec58f399b21125dcacf8083b01148778f97b0
2021-06-17 16:04:02 +00:00
hasura-bot
bad2d4190d console: catch api error, fix console getting stuck on loading screen (close #5774)
GITHUB_PR_NUMBER: 5837
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/5837

https://github.com/hasura/graphql-engine-mono/pull/856

Co-authored-by: Abhijeet Khangarot <26903230+abhi40308@users.noreply.github.com>
GitOrigin-RevId: 2a878ea9de0b21cf998b7a49dbfc6d99c143168e
2021-06-17 11:03:24 +00:00
Abhijeet Khangarot
240738cf60 console: fix routes for hasura cloud console
https://github.com/hasura/graphql-engine-mono/pull/1560

GitOrigin-RevId: 83d1825ad7ee74fd7a941376925d7e26c788baf5
2021-06-17 09:34:13 +00:00
Nicolas Beaussart
ad2f48c534 console: add testing to core requestAction
https://github.com/hasura/graphql-engine-mono/pull/1563

GitOrigin-RevId: 1bbd107e81a9965d0be9d35c581ca261935bfc83
2021-06-15 05:43:48 +00:00
Sooraj
8e6a8ee8c5 console: merge duplicate unit test folders (#1561)
https://github.com/hasura/graphql-engine-mono/pull/1561

GitOrigin-RevId: 635a185e456c1860fb7e596a2247657135213391
2021-06-14 10:19:59 +00:00
Varun Choudhary
a7ef558b41 console: add modify functionality on columns, primary keys & unique keys to MS SQL Server tables
Modify page for mssql.
Column edit, add and delete
Pk add and delete
unique key add and delete

> Known Issues
> It is not because of this PR, but evident after implementing this changes.
> Table comments section is not only showing table comments but also anything that has `SYS.EXTENDED_PROPERTIES` with the table id, we may need to fix this by adding more conditions while fetching the table comments
> issue: https://github.com/hasura/graphql-engine-mono/issues/1486

Update
> Found a common issue while testing this PR, and it happens for PG tables too, so keeping it as a different issue
https://github.com/hasura/graphql-engine/issues/7018

GitOrigin-RevId: f7883a797ce8d25034824ae35668b1f830e59c70
2021-06-10 09:09:33 +00:00
Nicolas Beaussart
651d8ce190 console: upgrade redux and add redux toolkit
GitOrigin-RevId: 328e28f521f6e5fa20489aaeea2be1f1cc456d56
2021-06-10 07:20:23 +00:00
Abhijeet Khangarot
75f37f69d3 console: allow input object presets in remote schema permissions
GitOrigin-RevId: 6a535a5b9adb0a80d8f57682618aa7dd406236b0
2021-06-09 08:52:22 +00:00
Varun Choudhary
3f19e8a3a8 console: allow tracking of custom SQL functions having composite type (rowtype) input arguments
Closes: https://github.com/hasura/graphql-engine/issues/6858

Description:

Following two things are done:

1. Show compatible functions in the Untracked custom functions list (i.e. even those with ROWTYPE arg)
![Screenshot from 2021-05-11 16-13-21](https://user-images.githubusercontent.com/68095256/117803100-dd606f80-b273-11eb-8d02-1ea55b31863d.png)
2. When a function with ROWTYPE argument is tracked, a confirmatory dialogue box is shown. The text reads `This function can be added as a root field or a computed field inside a table` and the buttons reflect the options: `Add as root field`, `Add as computed field` (this will take the user to the Modify -> Add a computed field section of the first-row type argument)
![Screenshot from 2021-06-03 17-28-28](https://user-images.githubusercontent.com/68095256/120641377-28dff500-c491-11eb-80ea-cc60e6f37f23.png)

Affected Component:

- [x] Console

Co-authored-by: Vijay Prasanna <11921040+vijayprasanna13@users.noreply.github.com>
Co-authored-by: Abhijeet Khangarot <26903230+abhi40308@users.noreply.github.com>
GitOrigin-RevId: 089944aadba73f7a77e220a49489846ff1cb9540
2021-06-08 15:22:24 +00:00
Vijay Prasanna
75fb945019 console/big-query: fixes broken console (browse rows) when selecting relationships
GitOrigin-RevId: f6871bd3abd0c85ffc35cd5884efa4b1ab5a9068
2021-06-08 11:07:56 +00:00
Vijay Prasanna
bf629db930 console: fix result parsing error in raw sql page
### Description
The `statementTimeout` on RawSQL is not reset after changing a datasource. This causes an error when running SQL  and parsing the results for DBs that don't support statement timeout property on the console.

![timeout](https://user-images.githubusercontent.com/11921040/120473505-b6094800-c3c4-11eb-8b00-e43d9ebcb207.gif)

### Affected components
- [x] Console

### Steps to test and verify
- Open /data/manage
- Click on any SQL Server DB.
- Go to Raw SQL
- Run any query
- Verify correct result

GitOrigin-RevId: 8a0adaf308d14db17126953286173da7ef1afc1c
2021-06-07 10:54:37 +00:00
Abhijeet Khangarot
83e1f51d2c console: bug fix cannot read property unique_constraints of undefined
GitOrigin-RevId: a8eec2a8dd1ca16a453f9ec90b956032cf123398
2021-06-04 15:30:21 +00:00
Varun Choudhary
f3643f26ad console/mssql: support CRUD operations for foreign keys
adds foreign key functionality to mssql tables under Modify Tab.

Steps to test:
1. Connect an MSSQL data source.
2. Create a table
3. go to modify page
4. make sure the `Add foreign key `button is visible
5. click on `Add foreign key`, and try to add FK
6. after adding the FK, we will see the `edit` and `remove` button, try to edit and remove the FK

Co-authored-by: Vijay Prasanna <11921040+vijayprasanna13@users.noreply.github.com>
GitOrigin-RevId: 63be7c4ef909503ac05096a64c686b72f7c47307
2021-06-03 11:49:21 +00:00
hasura-bot
c1381d38e0 console: show error notification for table and cloumn names exceeding 63 characters and trim migration names exceeding 255 characters
GITHUB_PR_NUMBER: 5785
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/5785

Co-authored-by: Abhijeet Khangarot <26903230+abhi40308@users.noreply.github.com>
GitOrigin-RevId: b12a729cfb708ff0622805f247473cb16b44ae0a
2021-06-02 10:23:58 +00:00
Ikechukwu Eze
9b42a52637 console: allow renaming data source
Before: on edit source page, changing data source name was not allowed and the input disabled.
Now: data source name can be changed on edit source page.

Note:
- ~When only the data source name is changed, a  request is sent for renaming and another for updating data source even when other values of the data source configuration weren't changed.~
- This has been fixed and should be tested thus:
    - run `npm run jest`
    - on edit source UI, change only data source name and confirm that only `rename_source` request is being sent through network tab in dev tools
    - change any other fields but the source name, and confirm that only `add_source` with `replace_configuration: true` is sent.
    - change both source name and any other field in the form and confirm that both request are sent (in this order: rename request before add request) and export_metadata request only sent once after that.
    - Try with bigquery, mssql and postgres

Possible Refactor:
  - consider if `renameDataSource` and `addDataSource`, can be refactored or left as is

Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: cbb041ac8362fd94de5aa19bfa61c0cde8703459
2021-05-28 07:59:47 +00:00
Aleksandra Sikora
1b37008a0e console: fix connect db notes content
GitOrigin-RevId: 75cc16950d7be7ad5b52cf266c6c010cb54d53ec
2021-05-28 06:57:55 +00:00
Sooraj
c3d7a7634f console: add drop table functionality to ms sql server tables
GitOrigin-RevId: a79c864263ebdde4a9a7e1ce1354a3ac17be4098
2021-05-27 21:26:50 +00:00
Abhijeet Khangarot
9a68cb51c9 console: update connect database form with SSL certificates
GitOrigin-RevId: b8da60cbe1220c8f4f8ec180fd3967e326b7f3a8
2021-05-27 16:00:01 +00:00
Vijay Prasanna
1c79bb4b80 console: add create table view for mssql schemas
### Description
This PR adds `Create Table` view for MSSQL server schemas.

### Changelist
* [x] Add basic `create table` form view on navigating from Schema's create table action.
* [x] Hide frequently selected columns button.
* [x] Allow the user to manually add column types for now: convert `select` for columns to a `text` input .
* [x] Remove `Restrict` radio selection for foreign key constraints.
* [x] Add SQL query for Create table in MSSQL.
### Screenshot
![Screenshot 2021-03-09 at 5 22 03 PM](https://user-images.githubusercontent.com/11921040/110467030-82d45700-80fc-11eb-84af-dd228d84b135.png)

### Changelog
- [x] CHANGELOG.md is updated with user-facing content relevant to this PR. If no changelog is required, then add the no-changelog-required label.

### Modified components
 - Console

Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: a783b5940198ecf582d1cd6ad4d4224efabf59fc
2021-05-26 15:28:32 +00:00
Aleksandra Sikora
455b5a9fd6 console/mssql: add comment and check constraints to modify page
GitOrigin-RevId: 0fcc9741d031ec7a74efff5437e676ea7f744922
2021-05-26 14:27:42 +00:00
Vijay Prasanna
7dbee42f64 console: add regex to highlight item in data tab nav tree
Adding regex expression to test `view`, `table` and `function` routes.
Fixes no highlight issue when clicking on functions in the data tab navigation tree.

GitOrigin-RevId: f278998ec1c98c98e0bfc9cd72d63d673cd74012
2021-05-26 09:43:31 +00:00
Vijay Prasanna
3acfd35d4e console/bigquery: fix showing empty dataset name when the dataset is from a non-US region
Fixes [issue](https://github.com/hasura/graphql-engine/issues/6937)

### Description
The problem lies with the `schemaListSql` for Big Query.  Without a region qualifier prefixed, the SQL result contains datasets only US regions, as described in the [docs](https://cloud.google.com/bigquery/docs/information-schema-datasets).
```
If you do not specify a regional qualifier, metadata is retrieved from the us multi-region.
```

The alternative way is to get a list of all available publicly available regions (which is `us` and `europe` atm), for example for europe -
```
SELECT * FROM region-europe.INFORMATION_SCHEMA.SCHEMATA;
```
and then perform `UNION ALL` of the results. This is approached is ditched in favour of the reason that Big Query is read-only on Hasura and new datasets cannot be added from the console (other than by modifying the metadata), we can return the datasets available in the Big Query source's metadata as the possible values of datasets needed by the console to render the data nav tree, thereby avoiding an extra API call in the process.

GitOrigin-RevId: 8117d5698dcc4e7d932362b7cf2e7c8ef34d106a
2021-05-25 18:21:48 +00:00
Abhijeet Khangarot
d0a66e5172 console: add new connection params to connect database form
GitOrigin-RevId: 073d30e50a196e265cd8dfb7cfb3c9af00c3fc0e
2021-05-25 13:03:08 +00:00
Aleksandra Sikora
a5ce316a96 console/mssql: simplify sql query for fetching schemas list
GitOrigin-RevId: 0d70973991c61b8f06efe61032bcfbfe05a89ded
2021-05-25 09:36:24 +00:00
Anon Ray
53beef47ea server, console, docs: fix untrack_function metadata query bug
Co-authored-by: Sameer Kolhar <6604943+kolharsam@users.noreply.github.com>
GitOrigin-RevId: a68a6f8b5c5243372332bfec7d9cdcd3011c001f
2021-05-24 15:57:26 +00:00
Abhijeet Khangarot
82e2e382f1 console: rearrange connect database form and add prepared statements
GitOrigin-RevId: 2cb84e3feabc72875c6b3f5368b55fa893ba72a9
2021-05-24 15:09:55 +00:00
Vijay Prasanna
31465c5bba console/postgres: fix broken table view when clicking on inherited tables
### Description
- Fixes https://github.com/hasura/graphql-engine/issues/6926
- This is to resolve the issue where inherited tables get listed into the array that's used to filter off partitions.
- In the check, we compare if the partition's parent is a "partitioned table" or not before adding to the filter array.

### Steps to verify
- Create the following tables on a postgres db
```SQL
CREATE TABLE cities (
id SERIAL PRIMARY KEY,
name       text,
population real,
elevation  int     -- (in ft)
);

CREATE TABLE capitals (
state      char(2) UNIQUE NOT NULL
) INHERITS (cities);
```
- Navigate to the data tab, and click on the datasource > schema, and verify that both `cities` and `capitals` are present.
- Click on `capitals` and see if it loads properly.
- Create the following table and its partitions
```sql
CREATE TABLE measurement (
    city_id         int not null,
    logdate         date not null,
    peaktemp        int,
    unitsales       int
) PARTITION BY RANGE (logdate);

CREATE TABLE measurement_y2006m02 PARTITION OF measurement
    FOR VALUES FROM ('2006-02-01') TO ('2006-03-01');

CREATE TABLE measurement_y2006m03 PARTITION OF measurement
    FOR VALUES FROM ('2006-03-01') TO ('2006-04-01');
```
- Verify that the data tab nav does not show `measurement_y2006m02` and `measurement_y2006m03`

GitOrigin-RevId: 1cc988fff03f289e6ea36d0b1e9f8e54b8741be9
2021-05-24 11:56:28 +00:00
Ikechukwu Eze
f347d746f6 console: quote column name when updating the column
This fixes `column "column_name" named in key does not exist"`,
when changing editing a column to be unique in column editor. resolves [6734](https://github.com/hasura/graphql-engine/issues/6734)

GitOrigin-RevId: 5c8f9523d6c022245cd4c1bb5d0d4a3340c455cf
2021-05-24 10:13:12 +00:00
hasura-bot
e093399305 console: don't automatically set track this checkbox for commented sql
GITHUB_PR_NUMBER: 5815
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/5815

Co-authored-by: Abhijeet Khangarot <26903230+abhi40308@users.noreply.github.com>
GitOrigin-RevId: 7225d01eef40065a7b7ef617cd763988ef1e018d
2021-05-21 10:39:22 +00:00
Aleksandra Sikora
e7b4ad85c9 console: consistent naming for MS SQL Server, add (beta) for bigquery
GitOrigin-RevId: a1434cd32757c4a17b8619b2f03476350a002abc
2021-05-21 09:59:47 +00:00
Sooraj
e6b5b66edf console: add pagination on event logs & fix data mismatch on event logs table
GitOrigin-RevId: 5643a0357dd11963cde53a148911844e4c754510
2021-05-21 09:07:33 +00:00
Aleksandra Sikora
ad0ecc7363 console: filter out nonsupported databases
GitOrigin-RevId: 151cde9843310e069d81d1690666100bfa77c37f
2021-05-19 20:19:16 +00:00
Abhijeet Khangarot
95d1ab78e1 console: add one-to-one relationships support
Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: 6177c63a0e8ac86085441cbd4ad1aab179052434
2021-05-19 12:42:45 +00:00
Nithin
62423a66da console: update cron trigger tooltip
Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: 644447c39a553f72e471b6fcf3650e6c75686d89
2021-05-19 12:04:20 +00:00
Ikechukwu Eze
a7639145fe console: allow editing sources configuration
This adds the feature to edit data sources to the console

Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
Co-authored-by: Rakesh Emmadi <12475069+rakeshkky@users.noreply.github.com>
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
Co-authored-by: Martin Mark <74692114+martin-hasura@users.noreply.github.com>
GitOrigin-RevId: 40f97a362620e9cebe97a2267cb9fb143c32af5d
2021-05-19 04:16:38 +00:00
Abhijeet Khangarot
8da98c00ba console: show db version in manage db page and remove from about page
GitOrigin-RevId: 482121bb4dd29d36b87f472ec14c966d04daab2c
2021-05-19 03:36:18 +00:00
Abhijeet Singh Khangarot
f24caef627 console: add union types to remote schema permissions
GitOrigin-RevId: a2a8311bfee98d1d1285fe869ed2a5963f84440d
2021-05-12 16:19:22 +00:00
Ikechukwu Eze
726c3e07b3 console: fix browse rows sections failing on a table with custom name
Fixes browse rows sections failing on a table with custom name and also not exposing a table with custom name to GraphQL API
Resolves [#6849](https://github.com/hasura/graphql-engine/issues/6849) and  also [#6647](https://github.com/hasura/graphql-engine/issues/6647)

GitOrigin-RevId: 00be15c766a457efd75e15801f91d9f793450131
2021-05-12 09:21:41 +00:00
Aleksandra Sikora
8c21ca5d21 console: revert improve data/relationships e2e tests
The changes turned out to be flaky — tests were failing from time to time, and blocking other PRs from being merged.

Reverts hasura/graphql-engine-mono#1037

GitOrigin-RevId: 97d95156e8d348f2e89ec33e06ffaac9bf75a2f9
2021-05-12 07:37:45 +00:00
Abhijeet Singh Khangarot
ad461d9285 console: hide bigquery from connect db form dropdown in cloud console
GitOrigin-RevId: e71b33ce2154e0584a773de49fa41c4e0c153d13
2021-05-10 23:19:35 +00:00
Aleksandra Sikora
c46b256fff console/mssql: fix fetching information about primary key and unique key columns
GitOrigin-RevId: b2796d12223c60374c553f580acc08a02df71a88
2021-05-07 14:07:28 +00:00
Ikechukwu Eze
d3887071af console: improve data/relationships e2e tests
This is the first step in making our cypress test faster.
Will clean the comments up in the coming days
Running time imporves from ~7mins to ~83secs

GitOrigin-RevId: d8d2b23c5a46789a3828dac1c6652034bd0bfc1c
2021-05-06 10:20:44 +00:00
Sameer Kolhar
2b0b4ec3a4 console: improve functions permissions messages in case of missing table's select permissions
Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: 52007786113622c15bd719cbea6b041c27ebd675
2021-05-05 14:55:35 +00:00
Aleksandra Sikora
dffe785543 console: read-only modify page for mssql
Co-authored-by: Sooraj <8408875+soorajshankar@users.noreply.github.com>
Co-authored-by: Vijay Prasanna <11921040+vijayprasanna13@users.noreply.github.com>
GitOrigin-RevId: f3fe2e313b39310bac95e3118e6e14f645627769
2021-05-04 14:41:54 +00:00
Vamshi Surabhi
3dfc50e3ac console/mssql: do not use deprecated sysusers to fetch schema list
On certain MSSQL sources (Azure serverless databases), `sysusers` is not supported.

From [MSSQL docs](https://docs.microsoft.com/en-us/sql/relational-databases/system-compatibility-views/sys-sysusers-transact-sql?view=sql-server-ver15):
> This SQL Server 2000 system table is included as a view for backward compatibility. We recommend that you use the current SQL Server system views instead

Co-authored-by: Ikechukwu Eze <22247592+iykekings@users.noreply.github.com>
GitOrigin-RevId: 6d8a91afa66569cc30b7b83a0c7813a3850c4c9a
2021-05-04 12:41:40 +00:00
Ikechukwu Eze
512c3008b6 console: filter out partitions from track table list and display partition info
### Description
Resolves #1128

### Changelist
- [x] Removed partitions from list of untracked tables (clean up awaits)
- [x] Display table definition at modify table like that of `psql \d+ tableName`
- [x] Fix broken console error when reloading console on `Modify` and `Relationships` tab for any other schema than default redirect schema.
- [x] Fetch table partition info only at /table/modify

### Screenshots
<img width="700" alt="Screenshot 2021-05-04 at 12 57 30" src="https://user-images.githubusercontent.com/9019397/116993856-4c6c2000-acd8-11eb-8a61-cd2b45d6e7ac.png">

### Changelog
- [x] Console

Co-authored-by: Vijay Prasanna <11921040+vijayprasanna13@users.noreply.github.com>
Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: 3a6e527839daf52af101c2ce1803eefba600d29e
2021-05-04 11:20:31 +00:00
Vijay Prasanna
f015234ef6 console: fix allSourcesSchemas mapping when there are sources with no tables
**How to repro this bug:**
1. Create another source, in addition the existing `default source`
2. this new source has one or more tables while the `default` has none.
3. If you check the Redux State object, the `allSourcesSchemas` attribute has the wrong mapping of objects
```JSON
allSourcesSchemas:
default: {}
```

This results in the table_types not being mapped properly.

For example in the below screenshot, I have 2 db objects, one is a view and the other is a table. Since the `allSourcesSchemas` is not mapped properly, the table_type is not available to `DataSubSidebar.js`
![Screenshot 2021-05-04 at 11 22 27 AM](https://user-images.githubusercontent.com/11921040/116965274-065c8f80-accb-11eb-9a4f-c1fedced8e6a.png)

GitOrigin-RevId: d728f08306ce7a8770d7d08a6236b76cd379f140
2021-05-04 09:54:19 +00:00
Aleksandra Sikora
99ec0aeab6 console: fix missing headers for get_event_invocations request
GitOrigin-RevId: 19d344d6b8b4a407c7f8fa787b95bc210b5bf84f
2021-04-29 17:54:26 +00:00
Abhijeet Singh Khangarot
65097131ff console: add error notification on invalid query / mutation in rest endpoints
Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: 9e1d8fb5250ceadfb5ec698f224f764b11a1e67d
2021-04-26 13:49:18 +00:00
hasura-bot
3fbc4c3b63 console: quote postgres table name when creating one with a comment
GITHUB_PR_NUMBER: 6761
GITHUB_PR_URL: https://github.com/hasura/graphql-engine/pull/6761

Co-authored-by: Ross Gardiner <565371+rossng@users.noreply.github.com>
GitOrigin-RevId: 9fbe6d53724028329b639441b98dff685e5e067e
2021-04-23 15:02:29 +00:00
Sooraj
c1e3829365 console: optimise init queries
GitOrigin-RevId: fdfff1857733d5fb247d9e698ea6ccfc9e3853a2
2021-04-21 12:53:36 +00:00
Abhijeet Singh Khangarot
ff2bd82623 console: update metadata in console's store after new metadata import
GitOrigin-RevId: 26e6cddec51d2a42f5a7ec6bac82a2b7e1611d2f
2021-04-21 11:39:37 +00:00
Ikechukwu Eze
c82d4de0cb console: column comparison feature
This PR changes column operators to be an array of strings that follows what was specified in this [RFC](https://github.com/hasura/graphql-engine-mono/blob/rfc/column-comparison-improvements/rfcs/column-comparison-improvements.md)
The RFC also provides a good schema for testing this feature.

The server PR for this is at https://github.com/hasura/graphql-engine-mono/pull/504

---

### Preview

#### Before
![comparison-before](https://user-images.githubusercontent.com/22247592/112810281-c45c8000-9072-11eb-9bab-9e2f3b85c547.gif)

#### After
![column](https://user-images.githubusercontent.com/22247592/113628210-77713e80-965c-11eb-9da3-474773f1d8b0.gif)

#### Todo

- [x] Refactoring and cleanup
- [x] Find and fix errors

Co-authored-by: Karthikeyan Chinnakonda <15602904+codingkarthik@users.noreply.github.com>
Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: 22d35c1d886f8b40b1ae7ad7bf214eefd50bbe6e
2021-04-19 19:26:00 +00:00
Vijay Prasanna
e3fd4d395a console: bigquery support
Co-authored-by: Abhijeet Singh Khangarot <26903230+abhi40308@users.noreply.github.com>
Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: 177f57bde4694ab22798e2afd97d489af875e6f7
2021-04-16 17:22:07 +00:00
Vijay Prasanna
7f17b2683d console: redirect to default schema
Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: 4ac0243b8ff6fd8a64d54c46f742778d0a5605cd
2021-04-16 14:59:41 +00:00
Sameer Kolhar
b03aeb673a console: add live preview for rest endpoints
Co-authored-by: Abhijeet Singh Khangarot <26903230+abhi40308@users.noreply.github.com>
Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: 918b9f76492085e8ded68070c90eaaae4d424476
2021-04-13 16:21:53 +00:00
Aleksandra Sikora
e1195fc55e console: misc fixes
1. closes https://github.com/hasura/graphql-engine/issues/6693
2. Fixes insert/edit row input types

GitOrigin-RevId: 2474cb179c485bad240a4e5dbea2779cec2acc6e
2021-04-13 14:58:22 +00:00
Vishnu Bharathi
7821b34a2c ci,console,pro-console: build pro console using local oss console
Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: f9a918422a0d22bc1775fabedb603c3311673afb
2021-04-12 18:50:02 +00:00
Abhijeet Singh Khangarot
0f7c273873 console: remote schema permissions add default values for input object
GitOrigin-RevId: 52f9bc30150f9ff932e40001bd5d492bad431f95
2021-04-09 08:22:57 +00:00
Varun Choudhary
8a77bac164 console: add details button to the success notification to see inserted row
Closes: https://github.com/hasura/graphql-engine/issues/6362

Description:

Add a `detail` button on the success notification while inserting row. We can see row added on clicking `detail` button.
![Screenshot from 2021-03-26 17-37-45](https://user-images.githubusercontent.com/68095256/112629281-1c6c6a00-8e5a-11eb-962a-42143d9501fe.png)

<img width="1051" alt="Screenshot 2021-04-08 at 14 14 10" src="https://user-images.githubusercontent.com/9019397/114024775-bda0ea80-9874-11eb-9ae7-f3ce90e4492e.png">

Effected components:

[x] - Console

Co-authored-by: Aleksandra Sikora <9019397+beerose@users.noreply.github.com>
GitOrigin-RevId: 88257687a2c989369b62115c238aa318ea9780ca
2021-04-08 20:41:29 +00:00
Abhijeet Singh Khangarot
ac4c4d53d1 console: pass information about table type for mssql
Co-authored-by: Vijay Prasanna <11921040+vijayprasanna13@users.noreply.github.com>
GitOrigin-RevId: b757f999687f716cc5312d1b73548f237efc06f4
2021-04-08 18:02:58 +00:00
hasura-bot
96ee013179 console: use details and summary html tags for CollapsibleToggle component
This PR was migrated from https://github.com/hasura/graphql-engine/pull/6416

Co-authored-by: alex argunov <10955264+troglotit@users.noreply.github.com>
GitOrigin-RevId: 59a2391900d7aa4a612d596bb61165185f51cd53
2021-04-08 17:22:13 +00:00
Varun Choudhary
c52bf1728c console: update the heading and tooltip message for actions
Closes: https://github.com/hasura/graphql-engine/issues/6142

Description:

This PR updates the heading and tool-tip message of derived action

Affected component:

[x] - Console

GitOrigin-RevId: ce7709379fb7b1cc29e6518e1f8e357e8df2cc06
2021-04-08 16:39:32 +00:00
Vijay Prasanna
706f51c0b1 console: add webpack plugin to enforce case sensitivity on import paths
Fixes issue #578

GitOrigin-RevId: 0e4a3f4d5b93b88978984830558ef50d43eb53c3
2021-04-08 15:49:51 +00:00
Aleksandra Sikora
88a60325b7 console: support metadata resource version
This change is backwards compatible.

Server PR: https://github.com/hasura/graphql-engine-mono/pull/474

<img width="448" alt="Screenshot 2021-04-08 at 12 35 23" src="https://user-images.githubusercontent.com/9019397/114014360-d2778100-9868-11eb-9b74-e574b5f40168.png">

https://user-images.githubusercontent.com/9019397/114014868-5df11200-9869-11eb-8fac-baf42723fca1.mp4

GitOrigin-RevId: ef7c02eb1fe2d41507b458166f7e8bf2be5ce6d5
2021-04-08 13:30:43 +00:00
Abhijeet Singh Khangarot
834c324d47 console: update sidebar loading state after table rename error
GitOrigin-RevId: 4b837af9ca0bc09823170611234c0e15fd22c344
2021-04-08 12:01:15 +00:00