Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: validation db modal #14832

Merged
merged 3 commits into from Jun 1, 2021

Conversation

eschutho
Copy link
Member

@eschutho eschutho commented May 26, 2021

SUMMARY

This PR uses the validation api and the new LabeledErrorBoundInput component to validate a person's db connection as they are filling out the form. The validation happens on blur.

We plan to add some client side validation on types such as checking that hostnames don't have spaces and port is a number, etc. That will come in a separate PR. For now, all of this work is not visible to the user.

BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

Screen.Recording.2021-05-25.mov

I left the network requests tab open so that we can evaluate how many requests are made during this flow, to see if it needs to be optimized. We could evaluate if anything changed on blur if needed.

TESTING INSTRUCTIONS

For now, let's make sure that this code doesn't break anything existing. Try creating a database and editing one.

Because of how RTL tests visually and we can't access this feature unless by hard-coding a param, we'll add more tests in a future PR before making this visible.

ADDITIONAL INFORMATION

  • Has associated issue:
  • Changes UI
  • Includes DB Migration (follow approval process in SIP-59)
    • Migration is atomic, supports rollback & is backwards-compatible
    • Confirm DB migration upgrade and downgrade tested
    • Runtime estimates and downtime expectations provided
  • Introduces new feature or API
  • Removes existing feature or API

<div css={formScrollableStyles}>
<div
// @ts-ignore
css={(theme: SupersetTheme) => [
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we have to look into why this isn't using InterpolationWithTheme from @emotion/core and picking up Interpolation from @emotion/react instead. It seems to only happen this way with regular html elements. AntD components use InterpolationWithTheme.

@@ -90,7 +92,7 @@ def run(self) -> None:

# try to connect
sqlalchemy_uri = engine_spec.build_sqlalchemy_uri(
self._properties["parameters"], # type: ignore
self._properties.get("parameters", None), # type: ignore
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@betodealmeida I put some guards here against null values. Not sure if you want to catch them in an earlier validation or not. I also made a similar note about passing in port as a string that needs to be validated.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We do validate the payload here: https://github.com/apache/superset/blob/master/superset/databases/api.py#L1006

But we don't validate the parameters' schema, since they are dynamic (though we could, it's just more complicated). And even if we did, adding a guard here is great!

@@ -307,6 +307,12 @@ class DatabaseValidateParametersSchema(Schema):
allow_none=True,
validate=server_cert_validator,
)
configuration_method = EnumField(
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think @AAfghahi is going to add in a Meta class with unknown = EXCLUDE in this validation schema class. In that case, we can remove this.

@@ -1427,7 +1427,7 @@ def validate_parameters(
)
return errors

port = parameters["port"]
port = parameters.get("port", None)
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@betodealmeida a few more guards against 500 errors if these values are null.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome!

@eschutho eschutho force-pushed the elizabeth/validation-db-modal branch from e764072 to 7cb4098 Compare May 26, 2021 01:46
@codecov
Copy link

codecov bot commented May 26, 2021

Codecov Report

Merging #14832 (7cb4098) into master (252c64b) will increase coverage by 0.48%.
The diff coverage is 52.77%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master   #14832      +/-   ##
==========================================
+ Coverage   77.39%   77.88%   +0.48%     
==========================================
  Files         962      965       +3     
  Lines       49154    51692    +2538     
  Branches     6183     6861     +678     
==========================================
+ Hits        38044    40260    +2216     
- Misses      10907    11210     +303     
- Partials      203      222      +19     
Flag Coverage Δ
hive 81.81% <100.00%> (?)
javascript 72.57% <46.87%> (+0.11%) ⬆️
mysql 82.11% <100.00%> (+0.48%) ⬆️
postgres 82.13% <100.00%> (+0.47%) ⬆️
presto 81.73% <100.00%> (?)
python 82.67% <100.00%> (+0.93%) ⬆️
sqlite 81.75% <100.00%> (+0.48%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
...set-frontend/src/views/CRUD/data/database/types.ts 100.00% <ø> (ø)
superset-frontend/src/views/CRUD/hooks.ts 50.85% <21.05%> (-2.64%) ⬇️
.../database/DatabaseModal/DatabaseConnectionForm.tsx 48.48% <40.90%> (-6.07%) ⬇️
...c/views/CRUD/data/database/DatabaseModal/index.tsx 75.32% <50.00%> (-0.81%) ⬇️
...end/src/components/Form/LabeledErrorBoundInput.tsx 100.00% <100.00%> (ø)
...tend/src/views/CRUD/data/database/DatabaseList.tsx 80.37% <100.00%> (ø)
...c/views/CRUD/data/database/DatabaseModal/styles.ts 97.11% <100.00%> (-0.26%) ⬇️
superset/databases/commands/validate.py 75.00% <100.00%> (ø)
superset/databases/schemas.py 98.89% <100.00%> (+0.18%) ⬆️
superset/db_engine_specs/base.py 88.91% <100.00%> (+1.00%) ⬆️
... and 62 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 252c64b...7cb4098. Read the comment docs.

@eschutho eschutho changed the title Elizabeth/validation db modal Feat: validation db modal May 26, 2021
@betodealmeida betodealmeida self-requested a review May 26, 2021 05:37
@betodealmeida betodealmeida changed the title Feat: validation db modal feat: validation db modal May 26, 2021
getValidation: () => void;
}

const hostField = ({
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: can we move this to a separate files in the next iteration

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes for sure

@eschutho
Copy link
Member Author

@hughhhh or @betodealmeida can you add an ephemeral environment so that we can test before merging? Thank you!

@eschutho
Copy link
Member Author

🏷 hold:testing!

@betodealmeida
Copy link
Member

/testenv up

@github-actions
Copy link
Contributor

@betodealmeida Ephemeral environment spinning up at http://52.13.184.168:8080. Credentials are admin/admin. Please allow several minutes for bootstrapping and startup.

@eschutho
Copy link
Member Author

I did some visual testing. It's difficult to test all edge cases because we can't actually create or edit databases in the ephemeral environments, but it all looked good.

@eschutho
Copy link
Member Author

@hughhhh some of these tests were cancelled. Do you mind restarting? Thank you!

@hughhhh hughhhh closed this Jun 1, 2021
@hughhhh hughhhh reopened this Jun 1, 2021
@github-actions
Copy link
Contributor

github-actions bot commented Jun 1, 2021

Ephemeral environment shutdown and build artifacts deleted.

@hughhhh
Copy link
Member

hughhhh commented Jun 1, 2021

/testenv up

1 similar comment
@hughhhh
Copy link
Member

hughhhh commented Jun 1, 2021

/testenv up

@github-actions
Copy link
Contributor

github-actions bot commented Jun 1, 2021

@hughhhh Container image not yet published for this PR. Please try again when build is complete.

@github-actions
Copy link
Contributor

github-actions bot commented Jun 1, 2021

@hughhhh Ephemeral environment creation failed. Please check the Actions logs for details.

@github-actions
Copy link
Contributor

github-actions bot commented Jun 1, 2021

@hughhhh Container image not yet published for this PR. Please try again when build is complete.

@github-actions
Copy link
Contributor

github-actions bot commented Jun 1, 2021

@hughhhh Ephemeral environment creation failed. Please check the Actions logs for details.

@hughhhh hughhhh merged commit 8cc97e4 into apache:master Jun 1, 2021
hughhhh pushed a commit that referenced this pull request Jun 2, 2021
# This is the 1st commit message:

feat: validation db modal (#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (#14945)


# This is the commit message #6:

hook up available databases
hughhhh pushed a commit that referenced this pull request Jun 3, 2021
# This is the 1st commit message:

feat: validation db modal (#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (#14945)


# This is the commit message #6:

hook up available databases
hughhhh added a commit that referenced this pull request Jun 3, 2021
* split db modal file

* split db modal file

* hook up available databases

* add comment

* split db modal file

* hook up available databases

* use new validation component

* first draft

* use new validation component

* get tests passing

* split db modal file

* hook up available databases

* use new validation component

* feat(db-connection-ui): Allow users to pick engine (#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* revisions

* fix package-lock.json

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (#14945)


# This is the commit message #6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* more revisions

* used db.backend

* added engine to model

* elizabeth revisions

* elizabeth revisions

Co-authored-by: Elizabeth Thompson <eschutho@gmail.com>
Co-authored-by: hughhhh <hughmil3s@gmail.com>
hughhhh pushed a commit that referenced this pull request Jun 4, 2021
# This is the 1st commit message:

feat: validation db modal (#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (#14945)


# This is the commit message #6:

hook up available databases
hughhhh added a commit that referenced this pull request Jul 2, 2021
* split db modal file

* split db modal file

* hook up available databases

* add comment

* split db modal file

* hook up available databases

* use new validation component

* first draft

* use new validation component

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* get tests passing

* Removed logo from test

* split db modal file

* hook up available databases

* use new validation component

* feat(db-connection-ui): Allow users to pick engine (#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* saving for now

* revisions

* fix package-lock.json

* update styles

* save

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (#14945)


# This is the commit message #6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* more revisions

* create 1 function for setting the DB

* add function to preferred section

* small refactor and added styling

* used db.backend

* add new footer buttons

* add finsh buttong

* refactor db modal render

* fix comments issue

* added engine to model

* elizabeth revisions

* add header

* add bottom footer to sqlalchemy form

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (#14945)


# This is the commit message #6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* elizabeth revisions

* add back headers

* add step

* feat: Dynamic Form for edit DB Modal (#14845)

* split db modal file

* split db modal file

* hook up available databases

* add comment

* split db modal file

* hook up available databases

* use new validation component

* first draft

* use new validation component

* get tests passing

* split db modal file

* hook up available databases

* use new validation component

* feat(db-connection-ui): Allow users to pick engine (#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* revisions

* fix package-lock.json

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (#14945)


# This is the commit message #6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* more revisions

* used db.backend

* added engine to model

* elizabeth revisions

* elizabeth revisions

Co-authored-by: Elizabeth Thompson <eschutho@gmail.com>
Co-authored-by: hughhhh <hughmil3s@gmail.com>

* address comments

* oops

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (#14945)


# This is the commit message #6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* remove merge conflicts

* small fix on blocking creating

* feat(db-connection-ui): Big Query Add Database Form (#14829)

* fix(native-filters): Manage default value of filters by superset (#14785)

* fix:fix get permission function

* feat: manage default value in superset

* fix(native-filters): loop bug by simplify state handling (#14788)

* fix: set table name width to not hide icons when name is too long (#14489)

* fix: set table name width to now hide icons when name is too long

* fix: table style

Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>

* feat(explore): Remove default for time range filter and Metrics (#14661)

* feat(explore): Remove default for time range filter and Metrics

* Merge errors with same messages

* Fix e2e test

* Rename a variable

* Bump packages

* Fix unit tests

* feat: chart gallery search improvement (#14484)

* feat: chart gallery search improvement

* test: adding unit test for VizTypeControl

* fix: lint errors

Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>

* Update schemas.py

* Update bigquery.py

* Fix tests

* big query form is appearing on the screen

* add name to allow for actions to get picked up

* working post for saving db via paste

* working file upload

* switch to textare

* better styles

* add delete buttong

* save formating

* wrap encrypted_extra

* formatting component

* clear out file input before reloading

* remove default driver

* address comments

* fix things off rebase

* small refactore

* more patches

* checkout space file

* fix variable ref

Co-authored-by: simcha90 <56388545+simcha90@users.noreply.github.com>
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
Co-authored-by: Einat Bertenthal <einatbar@users.noreply.github.com>
Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>
Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com>
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>

* feat: adding SSL Toggle to Create Database Modal (#14976)

* first draft of SSL Toggle

* added payload data

* Update superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm.tsx

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>

* changed tooltips based on stephen advice

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
Co-authored-by: Hugh A. Miles II <hughmil3s@gmail.com>

* feat(database-connection-ui) Allow configuration of Database Images from SupersetText (#15023)

* saving this for now

* fix some styles

* add database images

* fix

* enforce only numbers

* add default iamge

* fix bug

* additional params to the DatabaseConnectionForm (#15071)

* additional params to the DatabaseConnectionForm

* save passing params up to api

* feat: Added Steps and centralized Headers (#15041)

* fix superset_text issue (#15095)

* fix edit issue by returning parameters properly (#15101)

* feat: added alerts (#15103)

* added alerts

* revisions

* fix: add icons (#15122)

* added alerts

* revisions

* added icon

* Update superset-frontend/src/views/CRUD/data/database/DatabaseModal/index.tsx

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>

* fix: fixing api tests for database connections (#15124)

* fixing api tests

* added test for no config method on create

* added config method to validation tests

* fix(db-connection-ui): Additional Query Parameters render (#15150)

* working query params

* move condition out before update or create

* fix type script issues

* feat(db-connection-ui): Move fields from Extra section and split engine and metadata (#15143)

* working edit extra options

* acquired most of json

* recontruct json

* add schema array

* add proper styles

* fix tslint issues

* remove console.log

* this is working

* style: Database connect UI Polish - Step 1 (#15119)

* save avg

* Styled step 1

* Remove Alert

* Finished styling, added ellipsis library to IconButton

* Fixed text margin

Co-authored-by: hughhhh <hughmil3s@gmail.com>

* fix app from merge

* fix tslint issues

* fix all tslint issue on feature branch

* catch errors for dialects with no driver set

* fix dremio issue

* fix dialect issue without driver attr

* Styled step 3 (#15187)

* feat: adding server-side validation and unmasked password on create (#15151)

* fix: add icons (#15122)

* added alerts

* revisions

* added icon

* validation and password masking

* revisions and validation range

* revisions

* added beto revisions

* added tests for port range

* added config to available

* testing, rtl

* made tests always pass

* feat: add Close/Finish buttons to DBModal on Edit (#15199)

* fix(db-connection-ui): Allow Dynamic Big Query Edits (#15185)

* working big query edits

* fix big stoping users from moving to next step

* fix default

* save defaults

* fix tslint

* remove object

* fix styling

* fix: Connect on DB Connection wasn't working (#15201)

* fix: add icons (#15122)

* added alerts

* revisions

* added icon

* fixed the connect button

* make available alphabetically sort

* make available alphabetically sort II

* fix selection

* remove console.log

* fix styling

* fix: fix api_test and typeScript error (#15202)

* fix big query issue

* allow for query params

* feat: Added Dynamic form link to SQL Alchemy Form (#15208)

* fix: add icons (#15122)

* added alerts

* revisions

* added icon

* added dynamic form link

* fix: fix api tests for test_available (#15210)

* fix: add icons (#15122)

* added alerts

* revisions

* added icon

* fixes api tests

* feat: added Spinner to DB Modal (#15229)

* fix: add icons (#15122)

* added alerts

* revisions

* added icon

* spinner

* Made header sticky (#15204)

* fix: make Edit DB modal look similar to create Modal (#15231)

* fix: add icons (#15122)

* added alerts

* revisions

* added icon

* spinner

* changed edit

* fix: DB Connection UI R2 Fixes (#15232)

* fix display name refill

* fix order of additional params to always be at the bottom

* remove schema check on validation

* make encryption last

* fix json file upload

* fix additional params issue

* remove comments

* add back validation

* small fixes on bigquery edit

* only wrap encrypted with bigquery

* specific conditions for wrapping big query items

* dix additional params

* fix allow display name in sqlalchemy form

* backend before engine

* fix: do not use Marshmallow validation in partial params validation (#15236)

* fix: do not use Marshmallow validation in partial params validation

* Fix lint

* Update test

* make display name required

* reset validation errors onClose (#15243)

* fix: Edit for all dynamic forms (#15244)

* fix edit for dynamic forms

* fix linting

* fix edit on sqlalchemy forms

* fix big query reference

* remove extra if

* wrap configuration method (#15274)

* add more specific engine elastic search (#15287)

* do a deep copy of obj before POST (#15298)

* feat: add Back button to extra options (#15300)

* fix: add icons (#15122)

* added alerts

* revisions

* added icon

* spinner

* first draft

* working

* added back button to create modal

* revisions and testing

* chore: Add tooltips and button to Connect Postgresql DB Modal Form (#15179)

* Added tooltips. Still need to place in the right spot.

* Revert to where I started.

* Added 3 tooltips, 1 Button(need link config). BigQuery not added yet.

* Added tooltip BigOuery modal. `span` above upload btn missing `*`

* Added tooltip to `Host` field. Alignment needs to be fixed.

* Stuck trying to add conditional render of tooltip to LabeledErrorBoundInput

* Clean commit for review

* Dynamic tooltip componet created. Needs alignment of SVG still.

* Fixed typo.

* Added line spacing back in

* Changed required props to optional/Remove comment

* Fixed alignment of tooltips & moved 2tooltips outside of Btn

* Added one more line space back in

* Removed Typo

* Removed another typo

* Flixed linter error

* Created test for tooltip.

* Added expectation for visible tooltipIcon

Co-authored-by: andrewbastian <andrewbastian@hosaka-deck.lan>

* style: Database Modal UI Polish (#15234)

* Corrected polishing tasks from Clubhouse ticket

* More UI polish

* Added more polish

* Moved encryption field and created constant value for viewBox in InfoToolTip

* feat: allow editing (#15308)

* fix: add icons (#15122)

* added alerts

* revisions

* added icon

* spinner

* elizabeth fixed the edit issue

* feat: Added error alert for DB connection Modal  (#15242)

* fix: add icons (#15122)

* added alerts

* revisions

* added icon

* spinner

* added errorAlert

* added revisions

* current work

* revisions

* fix: validation on edit (#15310)

* fix: Big Query Error messaging (#15334)

* remove validation check

* remove validation check

* fix error messaging

* stop validation on big query

* add condition for skipping specific engines for validation

* if no params

* update styles

* feat: big Query using back button (#15338)

* fix: password errors on validation (#15372)

* filter out password supply for validation

* filter password

* feat: updated Error Alert (#15377)

* Updated styling (#15379)

* fix password error filter

* feat: Arash/password field error (#15388)

* fix: Back Button on Create for DB conncetion (#15389)

* fix: add icons (#15122)

* added alerts

* revisions

* added icon

* spinner

* fixing backButton on Create

* fix doc (#15393)

* style: Database Connection Modal UI Polish R5 (#15412)

* Fixed inconsistent header spacing in step 1

* Touched up tooltips

* Added red *s to BigQuery form

* Centered modal window

* make alerts configurable (#15404)

* fix: Allow users to override database connection docs (#15434)

* allow users to override docs

* fix linting issue

* fix: Error Icon not showing up on  errored input fieds on validation (#15431)

* Fixed now-show error icon

Signed-off-by: andrewbastian <andrew.bastian@gmail.com>

* Changed `%` to `px`

* Fixed lint error

* Changed units to `theme.gridUnit`

* test: RTL testing on DatabaseModal (#15394)

* RTL testing on DatabaseModal

* Continued RTL testing on DatabaseModal

* Code cleanup

* Removed a comment that missed my radar

* test: Add e2e testing (#15376)

* create boilerplate for cypress test

* added 1 more test

* add more test cases

* saving this for development

* lit

* remove name

* update pass

* remove unused test

* fix merge conflicts

* Fixed "connetion" typo (#15458)

* fix: Database connection modal touch up (#15463)

* Removed unnecessary TODO and named the remaining ones

* Added translation functionality

* Fixed typo in Database Modal RTL test

* Update modal.test.ts

* fix: Showing errors for SQLA forms (#15462)

* fix documentation links

* fix sqlalchemy onCreate

* Fixing SQLA error messaging

* fix logic for extra save

* fix this issue

* fix: Update Invalid Port SIP-40 Reference (#15464)

* Fixed jumpy header text

* fix: Edit Modal not saving properly (#15468)

* Aligned info icons on dynamic form

* fix: merge conflict (#15479)

* chore: simplify errors and issue codes (#15437)

* Fix issue number

* Fix test

* Fixed line-height in header, also fixed translation functions in BigQuery

* Updated placeholder text in additional params field

* Fixed padding in edit form

* Corrected placeholder text in BigQuery > Service Account field

* Make linter happy

Co-authored-by: Elizabeth Thompson <eschutho@gmail.com>
Co-authored-by: Arash <arash.afghahi@gmail.com>
Co-authored-by: hughhhh <hughmil3s@gmail.com>
Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: simcha90 <56388545+simcha90@users.noreply.github.com>
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
Co-authored-by: Einat Bertenthal <einatbar@users.noreply.github.com>
Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>
Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com>
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
Co-authored-by: Andrew Bastian <50464395+andrewbastian@users.noreply.github.com>
Co-authored-by: andrewbastian <andrewbastian@hosaka-deck.lan>
@eschutho eschutho deleted the elizabeth/validation-db-modal branch July 19, 2021 18:55
cccs-RyanS pushed a commit to CybercentreCanada/superset that referenced this pull request Dec 17, 2021
* split db modal file

* hook up available databases

* use new validation component
cccs-RyanS pushed a commit to CybercentreCanada/superset that referenced this pull request Dec 17, 2021
* split db modal file

* split db modal file

* hook up available databases

* add comment

* split db modal file

* hook up available databases

* use new validation component

* first draft

* use new validation component

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* get tests passing

* Removed logo from test

* split db modal file

* hook up available databases

* use new validation component

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* saving for now

* revisions

* fix package-lock.json

* update styles

* save

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (apache#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (apache#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (apache#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (apache#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (apache#14945)


# This is the commit message #6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* more revisions

* create 1 function for setting the DB

* add function to preferred section

* small refactor and added styling

* used db.backend

* add new footer buttons

* add finsh buttong

* refactor db modal render

* fix comments issue

* added engine to model

* elizabeth revisions

* add header

* add bottom footer to sqlalchemy form

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (apache#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (apache#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (apache#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (apache#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (apache#14945)


# This is the commit message #6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* elizabeth revisions

* add back headers

* add step

* feat: Dynamic Form for edit DB Modal (apache#14845)

* split db modal file

* split db modal file

* hook up available databases

* add comment

* split db modal file

* hook up available databases

* use new validation component

* first draft

* use new validation component

* get tests passing

* split db modal file

* hook up available databases

* use new validation component

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* revisions

* fix package-lock.json

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (apache#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (apache#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (apache#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (apache#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (apache#14945)


# This is the commit message #6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* more revisions

* used db.backend

* added engine to model

* elizabeth revisions

* elizabeth revisions

Co-authored-by: Elizabeth Thompson <eschutho@gmail.com>
Co-authored-by: hughhhh <hughmil3s@gmail.com>

* address comments

* oops

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (apache#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (apache#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (apache#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (apache#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (apache#14945)


# This is the commit message #6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* remove merge conflicts

* small fix on blocking creating

* feat(db-connection-ui): Big Query Add Database Form (apache#14829)

* fix(native-filters): Manage default value of filters by superset (apache#14785)

* fix:fix get permission function

* feat: manage default value in superset

* fix(native-filters): loop bug by simplify state handling (apache#14788)

* fix: set table name width to not hide icons when name is too long (apache#14489)

* fix: set table name width to now hide icons when name is too long

* fix: table style

Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>

* feat(explore): Remove default for time range filter and Metrics (apache#14661)

* feat(explore): Remove default for time range filter and Metrics

* Merge errors with same messages

* Fix e2e test

* Rename a variable

* Bump packages

* Fix unit tests

* feat: chart gallery search improvement (apache#14484)

* feat: chart gallery search improvement

* test: adding unit test for VizTypeControl

* fix: lint errors

Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>

* Update schemas.py

* Update bigquery.py

* Fix tests

* big query form is appearing on the screen

* add name to allow for actions to get picked up

* working post for saving db via paste

* working file upload

* switch to textare

* better styles

* add delete buttong

* save formating

* wrap encrypted_extra

* formatting component

* clear out file input before reloading

* remove default driver

* address comments

* fix things off rebase

* small refactore

* more patches

* checkout space file

* fix variable ref

Co-authored-by: simcha90 <56388545+simcha90@users.noreply.github.com>
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
Co-authored-by: Einat Bertenthal <einatbar@users.noreply.github.com>
Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>
Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com>
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>

* feat: adding SSL Toggle to Create Database Modal (apache#14976)

* first draft of SSL Toggle

* added payload data

* Update superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm.tsx

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>

* changed tooltips based on stephen advice

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
Co-authored-by: Hugh A. Miles II <hughmil3s@gmail.com>

* feat(database-connection-ui) Allow configuration of Database Images from SupersetText (apache#15023)

* saving this for now

* fix some styles

* add database images

* fix

* enforce only numbers

* add default iamge

* fix bug

* additional params to the DatabaseConnectionForm (apache#15071)

* additional params to the DatabaseConnectionForm

* save passing params up to api

* feat: Added Steps and centralized Headers (apache#15041)

* fix superset_text issue (apache#15095)

* fix edit issue by returning parameters properly (apache#15101)

* feat: added alerts (apache#15103)

* added alerts

* revisions

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* Update superset-frontend/src/views/CRUD/data/database/DatabaseModal/index.tsx

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>

* fix: fixing api tests for database connections (apache#15124)

* fixing api tests

* added test for no config method on create

* added config method to validation tests

* fix(db-connection-ui): Additional Query Parameters render (apache#15150)

* working query params

* move condition out before update or create

* fix type script issues

* feat(db-connection-ui): Move fields from Extra section and split engine and metadata (apache#15143)

* working edit extra options

* acquired most of json

* recontruct json

* add schema array

* add proper styles

* fix tslint issues

* remove console.log

* this is working

* style: Database connect UI Polish - Step 1 (apache#15119)

* save avg

* Styled step 1

* Remove Alert

* Finished styling, added ellipsis library to IconButton

* Fixed text margin

Co-authored-by: hughhhh <hughmil3s@gmail.com>

* fix app from merge

* fix tslint issues

* fix all tslint issue on feature branch

* catch errors for dialects with no driver set

* fix dremio issue

* fix dialect issue without driver attr

* Styled step 3 (apache#15187)

* feat: adding server-side validation and unmasked password on create (apache#15151)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* validation and password masking

* revisions and validation range

* revisions

* added beto revisions

* added tests for port range

* added config to available

* testing, rtl

* made tests always pass

* feat: add Close/Finish buttons to DBModal on Edit (apache#15199)

* fix(db-connection-ui): Allow Dynamic Big Query Edits (apache#15185)

* working big query edits

* fix big stoping users from moving to next step

* fix default

* save defaults

* fix tslint

* remove object

* fix styling

* fix: Connect on DB Connection wasn't working (apache#15201)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* fixed the connect button

* make available alphabetically sort

* make available alphabetically sort II

* fix selection

* remove console.log

* fix styling

* fix: fix api_test and typeScript error (apache#15202)

* fix big query issue

* allow for query params

* feat: Added Dynamic form link to SQL Alchemy Form (apache#15208)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* added dynamic form link

* fix: fix api tests for test_available (apache#15210)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* fixes api tests

* feat: added Spinner to DB Modal (apache#15229)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* Made header sticky (apache#15204)

* fix: make Edit DB modal look similar to create Modal (apache#15231)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* changed edit

* fix: DB Connection UI R2 Fixes (apache#15232)

* fix display name refill

* fix order of additional params to always be at the bottom

* remove schema check on validation

* make encryption last

* fix json file upload

* fix additional params issue

* remove comments

* add back validation

* small fixes on bigquery edit

* only wrap encrypted with bigquery

* specific conditions for wrapping big query items

* dix additional params

* fix allow display name in sqlalchemy form

* backend before engine

* fix: do not use Marshmallow validation in partial params validation (apache#15236)

* fix: do not use Marshmallow validation in partial params validation

* Fix lint

* Update test

* make display name required

* reset validation errors onClose (apache#15243)

* fix: Edit for all dynamic forms (apache#15244)

* fix edit for dynamic forms

* fix linting

* fix edit on sqlalchemy forms

* fix big query reference

* remove extra if

* wrap configuration method (apache#15274)

* add more specific engine elastic search (apache#15287)

* do a deep copy of obj before POST (apache#15298)

* feat: add Back button to extra options (apache#15300)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* first draft

* working

* added back button to create modal

* revisions and testing

* chore: Add tooltips and button to Connect Postgresql DB Modal Form (apache#15179)

* Added tooltips. Still need to place in the right spot.

* Revert to where I started.

* Added 3 tooltips, 1 Button(need link config). BigQuery not added yet.

* Added tooltip BigOuery modal. `span` above upload btn missing `*`

* Added tooltip to `Host` field. Alignment needs to be fixed.

* Stuck trying to add conditional render of tooltip to LabeledErrorBoundInput

* Clean commit for review

* Dynamic tooltip componet created. Needs alignment of SVG still.

* Fixed typo.

* Added line spacing back in

* Changed required props to optional/Remove comment

* Fixed alignment of tooltips & moved 2tooltips outside of Btn

* Added one more line space back in

* Removed Typo

* Removed another typo

* Flixed linter error

* Created test for tooltip.

* Added expectation for visible tooltipIcon

Co-authored-by: andrewbastian <andrewbastian@hosaka-deck.lan>

* style: Database Modal UI Polish (apache#15234)

* Corrected polishing tasks from Clubhouse ticket

* More UI polish

* Added more polish

* Moved encryption field and created constant value for viewBox in InfoToolTip

* feat: allow editing (apache#15308)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* elizabeth fixed the edit issue

* feat: Added error alert for DB connection Modal  (apache#15242)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* added errorAlert

* added revisions

* current work

* revisions

* fix: validation on edit (apache#15310)

* fix: Big Query Error messaging (apache#15334)

* remove validation check

* remove validation check

* fix error messaging

* stop validation on big query

* add condition for skipping specific engines for validation

* if no params

* update styles

* feat: big Query using back button (apache#15338)

* fix: password errors on validation (apache#15372)

* filter out password supply for validation

* filter password

* feat: updated Error Alert (apache#15377)

* Updated styling (apache#15379)

* fix password error filter

* feat: Arash/password field error (apache#15388)

* fix: Back Button on Create for DB conncetion (apache#15389)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* fixing backButton on Create

* fix doc (apache#15393)

* style: Database Connection Modal UI Polish R5 (apache#15412)

* Fixed inconsistent header spacing in step 1

* Touched up tooltips

* Added red *s to BigQuery form

* Centered modal window

* make alerts configurable (apache#15404)

* fix: Allow users to override database connection docs (apache#15434)

* allow users to override docs

* fix linting issue

* fix: Error Icon not showing up on  errored input fieds on validation (apache#15431)

* Fixed now-show error icon

Signed-off-by: andrewbastian <andrew.bastian@gmail.com>

* Changed `%` to `px`

* Fixed lint error

* Changed units to `theme.gridUnit`

* test: RTL testing on DatabaseModal (apache#15394)

* RTL testing on DatabaseModal

* Continued RTL testing on DatabaseModal

* Code cleanup

* Removed a comment that missed my radar

* test: Add e2e testing (apache#15376)

* create boilerplate for cypress test

* added 1 more test

* add more test cases

* saving this for development

* lit

* remove name

* update pass

* remove unused test

* fix merge conflicts

* Fixed "connetion" typo (apache#15458)

* fix: Database connection modal touch up (apache#15463)

* Removed unnecessary TODO and named the remaining ones

* Added translation functionality

* Fixed typo in Database Modal RTL test

* Update modal.test.ts

* fix: Showing errors for SQLA forms (apache#15462)

* fix documentation links

* fix sqlalchemy onCreate

* Fixing SQLA error messaging

* fix logic for extra save

* fix this issue

* fix: Update Invalid Port SIP-40 Reference (apache#15464)

* Fixed jumpy header text

* fix: Edit Modal not saving properly (apache#15468)

* Aligned info icons on dynamic form

* fix: merge conflict (apache#15479)

* chore: simplify errors and issue codes (apache#15437)

* Fix issue number

* Fix test

* Fixed line-height in header, also fixed translation functions in BigQuery

* Updated placeholder text in additional params field

* Fixed padding in edit form

* Corrected placeholder text in BigQuery > Service Account field

* Make linter happy

Co-authored-by: Elizabeth Thompson <eschutho@gmail.com>
Co-authored-by: Arash <arash.afghahi@gmail.com>
Co-authored-by: hughhhh <hughmil3s@gmail.com>
Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: simcha90 <56388545+simcha90@users.noreply.github.com>
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
Co-authored-by: Einat Bertenthal <einatbar@users.noreply.github.com>
Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>
Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com>
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
Co-authored-by: Andrew Bastian <50464395+andrewbastian@users.noreply.github.com>
Co-authored-by: andrewbastian <andrewbastian@hosaka-deck.lan>
QAlexBall pushed a commit to QAlexBall/superset that referenced this pull request Dec 29, 2021
* split db modal file

* hook up available databases

* use new validation component
QAlexBall pushed a commit to QAlexBall/superset that referenced this pull request Dec 29, 2021
* split db modal file

* split db modal file

* hook up available databases

* add comment

* split db modal file

* hook up available databases

* use new validation component

* first draft

* use new validation component

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* get tests passing

* Removed logo from test

* split db modal file

* hook up available databases

* use new validation component

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* saving for now

* revisions

* fix package-lock.json

* update styles

* save

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (apache#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message Powerarena-Limited#2:

feat: Icon Button (apache#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message Powerarena-Limited#3:

chore: Improves the native filters UI/UX - iteration 6 (apache#14932)


# This is the commit message Powerarena-Limited#4:

fix: is_temporal should overwrite is_dttm (apache#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message Powerarena-Limited#5:

fix: time parser truncate to first day of year/month (apache#14945)


# This is the commit message Powerarena-Limited#6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* more revisions

* create 1 function for setting the DB

* add function to preferred section

* small refactor and added styling

* used db.backend

* add new footer buttons

* add finsh buttong

* refactor db modal render

* fix comments issue

* added engine to model

* elizabeth revisions

* add header

* add bottom footer to sqlalchemy form

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (apache#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message Powerarena-Limited#2:

feat: Icon Button (apache#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message Powerarena-Limited#3:

chore: Improves the native filters UI/UX - iteration 6 (apache#14932)


# This is the commit message Powerarena-Limited#4:

fix: is_temporal should overwrite is_dttm (apache#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message Powerarena-Limited#5:

fix: time parser truncate to first day of year/month (apache#14945)


# This is the commit message Powerarena-Limited#6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* elizabeth revisions

* add back headers

* add step

* feat: Dynamic Form for edit DB Modal (apache#14845)

* split db modal file

* split db modal file

* hook up available databases

* add comment

* split db modal file

* hook up available databases

* use new validation component

* first draft

* use new validation component

* get tests passing

* split db modal file

* hook up available databases

* use new validation component

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* revisions

* fix package-lock.json

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (apache#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message Powerarena-Limited#2:

feat: Icon Button (apache#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message Powerarena-Limited#3:

chore: Improves the native filters UI/UX - iteration 6 (apache#14932)


# This is the commit message Powerarena-Limited#4:

fix: is_temporal should overwrite is_dttm (apache#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message Powerarena-Limited#5:

fix: time parser truncate to first day of year/month (apache#14945)


# This is the commit message Powerarena-Limited#6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* more revisions

* used db.backend

* added engine to model

* elizabeth revisions

* elizabeth revisions

Co-authored-by: Elizabeth Thompson <eschutho@gmail.com>
Co-authored-by: hughhhh <hughmil3s@gmail.com>

* address comments

* oops

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (apache#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message Powerarena-Limited#2:

feat: Icon Button (apache#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message Powerarena-Limited#3:

chore: Improves the native filters UI/UX - iteration 6 (apache#14932)


# This is the commit message Powerarena-Limited#4:

fix: is_temporal should overwrite is_dttm (apache#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message Powerarena-Limited#5:

fix: time parser truncate to first day of year/month (apache#14945)


# This is the commit message Powerarena-Limited#6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* remove merge conflicts

* small fix on blocking creating

* feat(db-connection-ui): Big Query Add Database Form (apache#14829)

* fix(native-filters): Manage default value of filters by superset (apache#14785)

* fix:fix get permission function

* feat: manage default value in superset

* fix(native-filters): loop bug by simplify state handling (apache#14788)

* fix: set table name width to not hide icons when name is too long (apache#14489)

* fix: set table name width to now hide icons when name is too long

* fix: table style

Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>

* feat(explore): Remove default for time range filter and Metrics (apache#14661)

* feat(explore): Remove default for time range filter and Metrics

* Merge errors with same messages

* Fix e2e test

* Rename a variable

* Bump packages

* Fix unit tests

* feat: chart gallery search improvement (apache#14484)

* feat: chart gallery search improvement

* test: adding unit test for VizTypeControl

* fix: lint errors

Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>

* Update schemas.py

* Update bigquery.py

* Fix tests

* big query form is appearing on the screen

* add name to allow for actions to get picked up

* working post for saving db via paste

* working file upload

* switch to textare

* better styles

* add delete buttong

* save formating

* wrap encrypted_extra

* formatting component

* clear out file input before reloading

* remove default driver

* address comments

* fix things off rebase

* small refactore

* more patches

* checkout space file

* fix variable ref

Co-authored-by: simcha90 <56388545+simcha90@users.noreply.github.com>
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
Co-authored-by: Einat Bertenthal <einatbar@users.noreply.github.com>
Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>
Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com>
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>

* feat: adding SSL Toggle to Create Database Modal (apache#14976)

* first draft of SSL Toggle

* added payload data

* Update superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm.tsx

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>

* changed tooltips based on stephen advice

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
Co-authored-by: Hugh A. Miles II <hughmil3s@gmail.com>

* feat(database-connection-ui) Allow configuration of Database Images from SupersetText (apache#15023)

* saving this for now

* fix some styles

* add database images

* fix

* enforce only numbers

* add default iamge

* fix bug

* additional params to the DatabaseConnectionForm (apache#15071)

* additional params to the DatabaseConnectionForm

* save passing params up to api

* feat: Added Steps and centralized Headers (apache#15041)

* fix superset_text issue (apache#15095)

* fix edit issue by returning parameters properly (apache#15101)

* feat: added alerts (apache#15103)

* added alerts

* revisions

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* Update superset-frontend/src/views/CRUD/data/database/DatabaseModal/index.tsx

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>

* fix: fixing api tests for database connections (apache#15124)

* fixing api tests

* added test for no config method on create

* added config method to validation tests

* fix(db-connection-ui): Additional Query Parameters render (apache#15150)

* working query params

* move condition out before update or create

* fix type script issues

* feat(db-connection-ui): Move fields from Extra section and split engine and metadata (apache#15143)

* working edit extra options

* acquired most of json

* recontruct json

* add schema array

* add proper styles

* fix tslint issues

* remove console.log

* this is working

* style: Database connect UI Polish - Step 1 (apache#15119)

* save avg

* Styled step 1

* Remove Alert

* Finished styling, added ellipsis library to IconButton

* Fixed text margin

Co-authored-by: hughhhh <hughmil3s@gmail.com>

* fix app from merge

* fix tslint issues

* fix all tslint issue on feature branch

* catch errors for dialects with no driver set

* fix dremio issue

* fix dialect issue without driver attr

* Styled step 3 (apache#15187)

* feat: adding server-side validation and unmasked password on create (apache#15151)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* validation and password masking

* revisions and validation range

* revisions

* added beto revisions

* added tests for port range

* added config to available

* testing, rtl

* made tests always pass

* feat: add Close/Finish buttons to DBModal on Edit (apache#15199)

* fix(db-connection-ui): Allow Dynamic Big Query Edits (apache#15185)

* working big query edits

* fix big stoping users from moving to next step

* fix default

* save defaults

* fix tslint

* remove object

* fix styling

* fix: Connect on DB Connection wasn't working (apache#15201)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* fixed the connect button

* make available alphabetically sort

* make available alphabetically sort II

* fix selection

* remove console.log

* fix styling

* fix: fix api_test and typeScript error (apache#15202)

* fix big query issue

* allow for query params

* feat: Added Dynamic form link to SQL Alchemy Form (apache#15208)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* added dynamic form link

* fix: fix api tests for test_available (apache#15210)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* fixes api tests

* feat: added Spinner to DB Modal (apache#15229)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* Made header sticky (apache#15204)

* fix: make Edit DB modal look similar to create Modal (apache#15231)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* changed edit

* fix: DB Connection UI R2 Fixes (apache#15232)

* fix display name refill

* fix order of additional params to always be at the bottom

* remove schema check on validation

* make encryption last

* fix json file upload

* fix additional params issue

* remove comments

* add back validation

* small fixes on bigquery edit

* only wrap encrypted with bigquery

* specific conditions for wrapping big query items

* dix additional params

* fix allow display name in sqlalchemy form

* backend before engine

* fix: do not use Marshmallow validation in partial params validation (apache#15236)

* fix: do not use Marshmallow validation in partial params validation

* Fix lint

* Update test

* make display name required

* reset validation errors onClose (apache#15243)

* fix: Edit for all dynamic forms (apache#15244)

* fix edit for dynamic forms

* fix linting

* fix edit on sqlalchemy forms

* fix big query reference

* remove extra if

* wrap configuration method (apache#15274)

* add more specific engine elastic search (apache#15287)

* do a deep copy of obj before POST (apache#15298)

* feat: add Back button to extra options (apache#15300)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* first draft

* working

* added back button to create modal

* revisions and testing

* chore: Add tooltips and button to Connect Postgresql DB Modal Form (apache#15179)

* Added tooltips. Still need to place in the right spot.

* Revert to where I started.

* Added 3 tooltips, 1 Button(need link config). BigQuery not added yet.

* Added tooltip BigOuery modal. `span` above upload btn missing `*`

* Added tooltip to `Host` field. Alignment needs to be fixed.

* Stuck trying to add conditional render of tooltip to LabeledErrorBoundInput

* Clean commit for review

* Dynamic tooltip componet created. Needs alignment of SVG still.

* Fixed typo.

* Added line spacing back in

* Changed required props to optional/Remove comment

* Fixed alignment of tooltips & moved 2tooltips outside of Btn

* Added one more line space back in

* Removed Typo

* Removed another typo

* Flixed linter error

* Created test for tooltip.

* Added expectation for visible tooltipIcon

Co-authored-by: andrewbastian <andrewbastian@hosaka-deck.lan>

* style: Database Modal UI Polish (apache#15234)

* Corrected polishing tasks from Clubhouse ticket

* More UI polish

* Added more polish

* Moved encryption field and created constant value for viewBox in InfoToolTip

* feat: allow editing (apache#15308)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* elizabeth fixed the edit issue

* feat: Added error alert for DB connection Modal  (apache#15242)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* added errorAlert

* added revisions

* current work

* revisions

* fix: validation on edit (apache#15310)

* fix: Big Query Error messaging (apache#15334)

* remove validation check

* remove validation check

* fix error messaging

* stop validation on big query

* add condition for skipping specific engines for validation

* if no params

* update styles

* feat: big Query using back button (apache#15338)

* fix: password errors on validation (apache#15372)

* filter out password supply for validation

* filter password

* feat: updated Error Alert (apache#15377)

* Updated styling (apache#15379)

* fix password error filter

* feat: Arash/password field error (apache#15388)

* fix: Back Button on Create for DB conncetion (apache#15389)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* fixing backButton on Create

* fix doc (apache#15393)

* style: Database Connection Modal UI Polish R5 (apache#15412)

* Fixed inconsistent header spacing in step 1

* Touched up tooltips

* Added red *s to BigQuery form

* Centered modal window

* make alerts configurable (apache#15404)

* fix: Allow users to override database connection docs (apache#15434)

* allow users to override docs

* fix linting issue

* fix: Error Icon not showing up on  errored input fieds on validation (apache#15431)

* Fixed now-show error icon

Signed-off-by: andrewbastian <andrew.bastian@gmail.com>

* Changed `%` to `px`

* Fixed lint error

* Changed units to `theme.gridUnit`

* test: RTL testing on DatabaseModal (apache#15394)

* RTL testing on DatabaseModal

* Continued RTL testing on DatabaseModal

* Code cleanup

* Removed a comment that missed my radar

* test: Add e2e testing (apache#15376)

* create boilerplate for cypress test

* added 1 more test

* add more test cases

* saving this for development

* lit

* remove name

* update pass

* remove unused test

* fix merge conflicts

* Fixed "connetion" typo (apache#15458)

* fix: Database connection modal touch up (apache#15463)

* Removed unnecessary TODO and named the remaining ones

* Added translation functionality

* Fixed typo in Database Modal RTL test

* Update modal.test.ts

* fix: Showing errors for SQLA forms (apache#15462)

* fix documentation links

* fix sqlalchemy onCreate

* Fixing SQLA error messaging

* fix logic for extra save

* fix this issue

* fix: Update Invalid Port SIP-40 Reference (apache#15464)

* Fixed jumpy header text

* fix: Edit Modal not saving properly (apache#15468)

* Aligned info icons on dynamic form

* fix: merge conflict (apache#15479)

* chore: simplify errors and issue codes (apache#15437)

* Fix issue number

* Fix test

* Fixed line-height in header, also fixed translation functions in BigQuery

* Updated placeholder text in additional params field

* Fixed padding in edit form

* Corrected placeholder text in BigQuery > Service Account field

* Make linter happy

Co-authored-by: Elizabeth Thompson <eschutho@gmail.com>
Co-authored-by: Arash <arash.afghahi@gmail.com>
Co-authored-by: hughhhh <hughmil3s@gmail.com>
Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: simcha90 <56388545+simcha90@users.noreply.github.com>
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
Co-authored-by: Einat Bertenthal <einatbar@users.noreply.github.com>
Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>
Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com>
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
Co-authored-by: Andrew Bastian <50464395+andrewbastian@users.noreply.github.com>
Co-authored-by: andrewbastian <andrewbastian@hosaka-deck.lan>
cccs-rc pushed a commit to CybercentreCanada/superset that referenced this pull request Mar 6, 2024
* split db modal file

* hook up available databases

* use new validation component
cccs-rc pushed a commit to CybercentreCanada/superset that referenced this pull request Mar 6, 2024
* split db modal file

* split db modal file

* hook up available databases

* add comment

* split db modal file

* hook up available databases

* use new validation component

* first draft

* use new validation component

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* get tests passing

* Removed logo from test

* split db modal file

* hook up available databases

* use new validation component

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* saving for now

* revisions

* fix package-lock.json

* update styles

* save

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (apache#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (apache#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (apache#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (apache#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (apache#14945)


# This is the commit message #6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* more revisions

* create 1 function for setting the DB

* add function to preferred section

* small refactor and added styling

* used db.backend

* add new footer buttons

* add finsh buttong

* refactor db modal render

* fix comments issue

* added engine to model

* elizabeth revisions

* add header

* add bottom footer to sqlalchemy form

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (apache#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (apache#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (apache#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (apache#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (apache#14945)


# This is the commit message #6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* elizabeth revisions

* add back headers

* add step

* feat: Dynamic Form for edit DB Modal (apache#14845)

* split db modal file

* split db modal file

* hook up available databases

* add comment

* split db modal file

* hook up available databases

* use new validation component

* first draft

* use new validation component

* get tests passing

* split db modal file

* hook up available databases

* use new validation component

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* revisions

* fix package-lock.json

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (apache#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (apache#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (apache#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (apache#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (apache#14945)


# This is the commit message #6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* more revisions

* used db.backend

* added engine to model

* elizabeth revisions

* elizabeth revisions

Co-authored-by: Elizabeth Thompson <eschutho@gmail.com>
Co-authored-by: hughhhh <hughmil3s@gmail.com>

* address comments

* oops

* # This is a combination of 6 commits.
# This is the 1st commit message:

feat: validation db modal (apache#14832)

* split db modal file

* hook up available databases

* use new validation component
# This is the commit message #2:

feat: Icon Button (apache#14818)

* Creating IconButton

* Changed naming: logo is now icon

* Hard-coded inset values for ellipses

* Removed default SVG

* Fixed test

* Removed logo from test
# This is the commit message #3:

chore: Improves the native filters UI/UX - iteration 6 (apache#14932)


# This is the commit message #4:

fix: is_temporal should overwrite is_dttm (apache#14894)

* fix: is_temporal should overwrite is_dttm

* move up
# This is the commit message #5:

fix: time parser truncate to first day of year/month (apache#14945)


# This is the commit message #6:

hook up available databases

* fix test for db modal

* feat(db-connection-ui): Allow users to pick engine (apache#14884)

* poc picker for db selection

* working select

* setup is loading for available dbs and step1 view

* fix on close

* update on fetch

* remove unneeded code

* add some styls

* remove merge conflicts

* small fix on blocking creating

* feat(db-connection-ui): Big Query Add Database Form (apache#14829)

* fix(native-filters): Manage default value of filters by superset (apache#14785)

* fix:fix get permission function

* feat: manage default value in superset

* fix(native-filters): loop bug by simplify state handling (apache#14788)

* fix: set table name width to not hide icons when name is too long (apache#14489)

* fix: set table name width to now hide icons when name is too long

* fix: table style

Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>

* feat(explore): Remove default for time range filter and Metrics (apache#14661)

* feat(explore): Remove default for time range filter and Metrics

* Merge errors with same messages

* Fix e2e test

* Rename a variable

* Bump packages

* Fix unit tests

* feat: chart gallery search improvement (apache#14484)

* feat: chart gallery search improvement

* test: adding unit test for VizTypeControl

* fix: lint errors

Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>

* Update schemas.py

* Update bigquery.py

* Fix tests

* big query form is appearing on the screen

* add name to allow for actions to get picked up

* working post for saving db via paste

* working file upload

* switch to textare

* better styles

* add delete buttong

* save formating

* wrap encrypted_extra

* formatting component

* clear out file input before reloading

* remove default driver

* address comments

* fix things off rebase

* small refactore

* more patches

* checkout space file

* fix variable ref

Co-authored-by: simcha90 <56388545+simcha90@users.noreply.github.com>
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
Co-authored-by: Einat Bertenthal <einatbar@users.noreply.github.com>
Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>
Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com>
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>

* feat: adding SSL Toggle to Create Database Modal (apache#14976)

* first draft of SSL Toggle

* added payload data

* Update superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm.tsx

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>

* changed tooltips based on stephen advice

Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
Co-authored-by: Hugh A. Miles II <hughmil3s@gmail.com>

* feat(database-connection-ui) Allow configuration of Database Images from SupersetText (apache#15023)

* saving this for now

* fix some styles

* add database images

* fix

* enforce only numbers

* add default iamge

* fix bug

* additional params to the DatabaseConnectionForm (apache#15071)

* additional params to the DatabaseConnectionForm

* save passing params up to api

* feat: Added Steps and centralized Headers (apache#15041)

* fix superset_text issue (apache#15095)

* fix edit issue by returning parameters properly (apache#15101)

* feat: added alerts (apache#15103)

* added alerts

* revisions

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* Update superset-frontend/src/views/CRUD/data/database/DatabaseModal/index.tsx

Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>

* fix: fixing api tests for database connections (apache#15124)

* fixing api tests

* added test for no config method on create

* added config method to validation tests

* fix(db-connection-ui): Additional Query Parameters render (apache#15150)

* working query params

* move condition out before update or create

* fix type script issues

* feat(db-connection-ui): Move fields from Extra section and split engine and metadata (apache#15143)

* working edit extra options

* acquired most of json

* recontruct json

* add schema array

* add proper styles

* fix tslint issues

* remove console.log

* this is working

* style: Database connect UI Polish - Step 1 (apache#15119)

* save avg

* Styled step 1

* Remove Alert

* Finished styling, added ellipsis library to IconButton

* Fixed text margin

Co-authored-by: hughhhh <hughmil3s@gmail.com>

* fix app from merge

* fix tslint issues

* fix all tslint issue on feature branch

* catch errors for dialects with no driver set

* fix dremio issue

* fix dialect issue without driver attr

* Styled step 3 (apache#15187)

* feat: adding server-side validation and unmasked password on create (apache#15151)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* validation and password masking

* revisions and validation range

* revisions

* added beto revisions

* added tests for port range

* added config to available

* testing, rtl

* made tests always pass

* feat: add Close/Finish buttons to DBModal on Edit (apache#15199)

* fix(db-connection-ui): Allow Dynamic Big Query Edits (apache#15185)

* working big query edits

* fix big stoping users from moving to next step

* fix default

* save defaults

* fix tslint

* remove object

* fix styling

* fix: Connect on DB Connection wasn't working (apache#15201)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* fixed the connect button

* make available alphabetically sort

* make available alphabetically sort II

* fix selection

* remove console.log

* fix styling

* fix: fix api_test and typeScript error (apache#15202)

* fix big query issue

* allow for query params

* feat: Added Dynamic form link to SQL Alchemy Form (apache#15208)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* added dynamic form link

* fix: fix api tests for test_available (apache#15210)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* fixes api tests

* feat: added Spinner to DB Modal (apache#15229)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* Made header sticky (apache#15204)

* fix: make Edit DB modal look similar to create Modal (apache#15231)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* changed edit

* fix: DB Connection UI R2 Fixes (apache#15232)

* fix display name refill

* fix order of additional params to always be at the bottom

* remove schema check on validation

* make encryption last

* fix json file upload

* fix additional params issue

* remove comments

* add back validation

* small fixes on bigquery edit

* only wrap encrypted with bigquery

* specific conditions for wrapping big query items

* dix additional params

* fix allow display name in sqlalchemy form

* backend before engine

* fix: do not use Marshmallow validation in partial params validation (apache#15236)

* fix: do not use Marshmallow validation in partial params validation

* Fix lint

* Update test

* make display name required

* reset validation errors onClose (apache#15243)

* fix: Edit for all dynamic forms (apache#15244)

* fix edit for dynamic forms

* fix linting

* fix edit on sqlalchemy forms

* fix big query reference

* remove extra if

* wrap configuration method (apache#15274)

* add more specific engine elastic search (apache#15287)

* do a deep copy of obj before POST (apache#15298)

* feat: add Back button to extra options (apache#15300)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* first draft

* working

* added back button to create modal

* revisions and testing

* chore: Add tooltips and button to Connect Postgresql DB Modal Form (apache#15179)

* Added tooltips. Still need to place in the right spot.

* Revert to where I started.

* Added 3 tooltips, 1 Button(need link config). BigQuery not added yet.

* Added tooltip BigOuery modal. `span` above upload btn missing `*`

* Added tooltip to `Host` field. Alignment needs to be fixed.

* Stuck trying to add conditional render of tooltip to LabeledErrorBoundInput

* Clean commit for review

* Dynamic tooltip componet created. Needs alignment of SVG still.

* Fixed typo.

* Added line spacing back in

* Changed required props to optional/Remove comment

* Fixed alignment of tooltips & moved 2tooltips outside of Btn

* Added one more line space back in

* Removed Typo

* Removed another typo

* Flixed linter error

* Created test for tooltip.

* Added expectation for visible tooltipIcon

Co-authored-by: andrewbastian <andrewbastian@hosaka-deck.lan>

* style: Database Modal UI Polish (apache#15234)

* Corrected polishing tasks from Clubhouse ticket

* More UI polish

* Added more polish

* Moved encryption field and created constant value for viewBox in InfoToolTip

* feat: allow editing (apache#15308)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* elizabeth fixed the edit issue

* feat: Added error alert for DB connection Modal  (apache#15242)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* added errorAlert

* added revisions

* current work

* revisions

* fix: validation on edit (apache#15310)

* fix: Big Query Error messaging (apache#15334)

* remove validation check

* remove validation check

* fix error messaging

* stop validation on big query

* add condition for skipping specific engines for validation

* if no params

* update styles

* feat: big Query using back button (apache#15338)

* fix: password errors on validation (apache#15372)

* filter out password supply for validation

* filter password

* feat: updated Error Alert (apache#15377)

* Updated styling (apache#15379)

* fix password error filter

* feat: Arash/password field error (apache#15388)

* fix: Back Button on Create for DB conncetion (apache#15389)

* fix: add icons (apache#15122)

* added alerts

* revisions

* added icon

* spinner

* fixing backButton on Create

* fix doc (apache#15393)

* style: Database Connection Modal UI Polish R5 (apache#15412)

* Fixed inconsistent header spacing in step 1

* Touched up tooltips

* Added red *s to BigQuery form

* Centered modal window

* make alerts configurable (apache#15404)

* fix: Allow users to override database connection docs (apache#15434)

* allow users to override docs

* fix linting issue

* fix: Error Icon not showing up on  errored input fieds on validation (apache#15431)

* Fixed now-show error icon

Signed-off-by: andrewbastian <andrew.bastian@gmail.com>

* Changed `%` to `px`

* Fixed lint error

* Changed units to `theme.gridUnit`

* test: RTL testing on DatabaseModal (apache#15394)

* RTL testing on DatabaseModal

* Continued RTL testing on DatabaseModal

* Code cleanup

* Removed a comment that missed my radar

* test: Add e2e testing (apache#15376)

* create boilerplate for cypress test

* added 1 more test

* add more test cases

* saving this for development

* lit

* remove name

* update pass

* remove unused test

* fix merge conflicts

* Fixed "connetion" typo (apache#15458)

* fix: Database connection modal touch up (apache#15463)

* Removed unnecessary TODO and named the remaining ones

* Added translation functionality

* Fixed typo in Database Modal RTL test

* Update modal.test.ts

* fix: Showing errors for SQLA forms (apache#15462)

* fix documentation links

* fix sqlalchemy onCreate

* Fixing SQLA error messaging

* fix logic for extra save

* fix this issue

* fix: Update Invalid Port SIP-40 Reference (apache#15464)

* Fixed jumpy header text

* fix: Edit Modal not saving properly (apache#15468)

* Aligned info icons on dynamic form

* fix: merge conflict (apache#15479)

* chore: simplify errors and issue codes (apache#15437)

* Fix issue number

* Fix test

* Fixed line-height in header, also fixed translation functions in BigQuery

* Updated placeholder text in additional params field

* Fixed padding in edit form

* Corrected placeholder text in BigQuery > Service Account field

* Make linter happy

Co-authored-by: Elizabeth Thompson <eschutho@gmail.com>
Co-authored-by: Arash <arash.afghahi@gmail.com>
Co-authored-by: hughhhh <hughmil3s@gmail.com>
Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
Co-authored-by: simcha90 <56388545+simcha90@users.noreply.github.com>
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
Co-authored-by: Einat Bertenthal <einatbar@users.noreply.github.com>
Co-authored-by: einatnielsen <einat.bertenthal@nielsen.com>
Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com>
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
Co-authored-by: Andrew Bastian <50464395+andrewbastian@users.noreply.github.com>
Co-authored-by: andrewbastian <andrewbastian@hosaka-deck.lan>
@mistercrunch mistercrunch added 🏷️ bot A label used by `supersetbot` to keep track of which PR where auto-tagged with release labels 🚢 1.3.0 labels Mar 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🏷️ bot A label used by `supersetbot` to keep track of which PR where auto-tagged with release labels preset-io size/L 🚢 1.3.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants