Commit Graph

161 Commits

Author SHA1 Message Date
Ville Brofeldt
3f6bd1e4a4 feat: add generic type to column payload (#14547)
* feat: add generic type to column payload

* feat: add generic type to column payload

* xit flaky test
2021-05-13 09:36:09 +03:00
Michael S. Molina
331eb10fb9 refactor: Bootstrap to AntD - Form - iteration 4 (#14546) 2021-05-12 23:01:43 -07:00
Grace Guo
ada380982b fix: bring back dashboard perf logger (#14584)
* fix: bring back dashboard perf logger

* add test
2021-05-12 08:25:46 -07:00
Ville Brofeldt
680c96ec54 feat(explore): collapse time section if no ts columns (#14493)
* feat(explore): collapse time section if no ts columns

* fix viz change bug

* fix test
2021-05-07 11:55:54 +03:00
Michael S. Molina
331310db9b refactor: Bootstrap to AntD - Form - iteration 2 (#14379) 2021-05-05 22:00:37 -07:00
Elizabeth Thompson
9b42eec064 feat: db modal split (#14470)
* refactor: split db modal file (#14436)

* split db modal file

* fix tests

* fix extra options

* update database id methodology
2021-05-05 19:03:19 -04:00
Ville Brofeldt
40fb94dcca feat(native-filters): add optional sort metric to select filter (#14346)
* feat(native-filters): add optional sort metric to select filter

* use verbose name when defined

* fixes

* lint

* disable flaky test

* disable flaky test

* disable flaky test
2021-04-27 20:28:38 +03:00
simcha90
7e5440a359 test(native-filters): Filter config modal test (#14245)
* test: add tests for filter bar

* test: merge filter bar tests with master

* test: add test for filter set

* test: filter set tests

* test: merge with master

* test: fix tests for filter bar

* test: filter config modal

* test: add select filter

* feat: filter config modal

* lint: fix lint

* lint: fix TS

* test: test testWithId
2021-04-20 14:07:08 +03:00
simcha90
d386e66f59 test(native-filters): add integration tests for filter bar (#14098)
* test: add tests for filter bar

* test: merge filter bar tests with master

* test: add test for filter set

* test: filter set tests

* test: merge with master

* test: fix tests for filter bar

* fix: fix CR notes

* fix: fix CR notes
2021-04-20 12:24:12 +03:00
krsnik93
ef1f048d81 feat: add Echarts gauge chart (#14072)
* feat: echarts gauge chart

* fix

* change plugin order

Co-authored-by: root <root@superset.ikrsnik.devonly.net>
2021-04-14 09:25:26 -07:00
Michael S. Molina
c8a794368d refactor: Bootstrap to AntD - ListGroup (#13996)
* refactor: Bootstrap to AntD - ListGroup

* Improves theme handling on touched files
2021-04-13 15:26:02 -07:00
Phillip Kelley-Dotson
4bb29b6f04 chore(spa refactor): refactoring dashboard to use api's instead of bootstrapdata (#13306)
* add hook for future async api calls

* test to see conflict

* add async middleware and update reducers

* working async dashboard load

* implement getcharts api

* add user permissions to explore and dashboard bootstrap data

* integrate api calls with getinitial state

* update namings

* accept an id or a slug in the dashboard charts api

* add permissions function

* fix merge

* update state

* get dashboard charts by id or slug

* fix undefined states

* variable names

* stop using some more bootstrap data

* fix metadata reference

* remove unused bootstrap from the template

* add errorboundry to dashboard

* refactoring, fixing

* update permissions

* add just roles

* id is supposed to be a string

* unused vars

* get datasources from api

* make onError optional

* use resource hooks, better error boundary

* add loading state for dashboardroute

* remove console

* add conditional

* more conditionals

* testing out a possible fix for cypress

* convert edit/standalone test to cypress

* remove bootstrappy assertions

* lint

* fix dashboard edit history issue

* rename stuff

* address recent native filters schema change

* remove unused getInitialState

* remove .only from test

* hooksy redux usage

* Revert "more conditionals"

This reverts commit 25c8ed61b4.

* cleanup

* undo unnecessary change

* actually need conditions here

* certainty

* Revert "certainty"

This reverts commit 77dea1915b.

* more permutations (untested yolo)

* Update superset-frontend/src/chart/chartReducer.ts

Co-authored-by: Evan Rusackas <evan@preset.io>

* import style

* comment

* cleaner dashboardInfo

* remove debug code

* use memo for getPermissions

* fix lint

* adjust name/location of DashboardPage

* move logic for REMOVE_SLICE_LEVEL_LABEL_COLORS to DAO

* stop using full_data()

* remove unused (and now useless) json=true query param

Co-authored-by: David Aaron Suddjian <aasuddjian@gmail.com>
Co-authored-by: David Aaron Suddjian <1858430+suddjian@users.noreply.github.com>
Co-authored-by: Evan Rusackas <evan@preset.io>
2021-04-12 16:10:29 -07:00
Hugh A. Miles II
d006178c03 refactor: move CTAS/CVAS field II (#13877)
Co-authored-by: lyndsiWilliams <kcatgirl@gmail.com>
2021-04-05 16:57:40 -04:00
Jesse Yang
65940770ac feat(explore): adhoc column formatting for Table chart (#13758) 2021-04-01 23:28:42 -07:00
David Aaron Suddjian
db1d598f50 fix(cypress): avoid referencing detached dom nodes (#13825) 2021-03-26 14:46:31 -07:00
David Aaron Suddjian
a45a5e1060 chore(cypress): Make the e2e tests more behavior-driven (#13784)
* chore(cypress): make the load dashboard test behavior driven

* remove bootstrap usage from controls test, + new utils

* fix save test to not use bootstrap dat

* remove bootstrap usage from the filter test

* fix race condition

* remove bootstrap from url params test

* fix lint

* remove unused const

* add chart specs for the tab test

* attempt removing bootstrap data from tabs tests

* fix cypress async/sync confusion

* remove redundant assertions

* attempt fixing tab test

* attempt fixing tabs test

* cleanup commented code

* better aliases so you can tell what they are in the logs

* remove unused imports

* get the line chart alias before clicking the tab

* simplify getChartGridComponent

* wait for all the charts before force refresh

* fix tabs test

* one more time with the tabs test

* another edit to tabs test

* fix flaky test

Co-authored-by: Phillip Kelley-Dotson <pkelleydotson@yahoo.com>
2021-03-26 09:20:13 -07:00
Jesse Yang
bd1d6acb0c fix(query): order by adhoc metrics should trigger group by (#13434)
* fix(query): properly select adhoc metrics in orderby

* Throw error when sql is empty

* Allow `metrics` to be None

* Always use alias in orderby for metrics

* Bump table chart version and migrate histogram to typescript

* Fix Histogram without groupby

* Fix Presto birth names test

* Raw records mode should not aggregate
2021-03-16 21:00:03 -07:00
Ville Brofeldt
901acd936f feat(native-filters): add sort option to select filter (#13569)
* feat(native-filters): add sort option to select filter

* remove from useEffect

* disable flaky cypress tests
2021-03-11 16:49:01 -08:00
Jesse Yang
3c62069bbb refactor(explore): convert ControlPanelsContainer to typescript (#13221) 2021-02-28 10:10:15 -08:00
Mayur
6954114f84 feat: add Echarts Graph chart (#13111)
* update preset file

* migration added

* bug fix

* lint

* Update superset/migrations/versions/1412ec1e5a7b_legacy_force_directed_to_echart.py

Co-authored-by: Jesse Yang <jesse.yang@airbnb.com>

* version bump

* bummp dependency

* add package.lock

* merge migrations

* add integration test

* lint

* remove unnecessary params from test

* check key existance in migrations

* test to typescript

* Update graph.test.ts

* fix migration downstream head

* Upgrade to lockfileversion 2

Co-authored-by: Jesse Yang <jesse.yang@airbnb.com>
2021-02-23 16:47:20 -08:00
Michael S. Molina
42ab57850d Migrate Bootstrap Alert to AntD (#12101) (#12122) 2021-02-21 20:50:18 -08:00
Michael S. Molina
9335b9c983 Migrates DropdownButton component from Bootstrap to AntD (#13002) 2021-02-18 10:14:21 -08:00
Michael S. Molina
ad4ca2223e feat: one-click copy chart and dashboard URL (#13037)
Closes #10328
2021-02-17 14:14:08 -08:00
Michael S. Molina
d5e6190998 Refresh dashboard list after bulk delete (#12945) 2021-02-08 16:49:23 -08:00
adam-stasiak-polidea
3235d918aa test: Added some Cypress tests for Native Filters (#12180) 2021-02-04 22:54:00 -08:00
Jesse Yang
9982fdebd8 test: fix table chart sort order E2E tests (#12936)
* test: fix table chart sort order E2E tests

* Upgrade npm packages
2021-02-04 13:27:45 +02:00
Michael S. Molina
2adfb85597 Migrates Label component from Bootstrap to AntD. (#12774) 2021-02-01 22:15:07 -08:00
Jesse Yang
e3db935c62 refactor: migrate table chart to new API (#10270)
* refactor: migrate table chart to new API

* chore: bump superset-ui to 0.17.0

* Fix Cypress tests

* Apply soft-conversion to numeric metrics

Fix time column formatting test

* Add translation to chart does not exist error

* Bump to 0.17.1
2021-01-29 13:12:09 +02:00
Jesse Yang
29ad78e11a chore: upgrade Cypress to 6.2.1 (#12605) 2021-01-25 15:05:43 -08:00
Geido
1b2611c211 refactor(explore): Enhance Dataset and Control panel Collapse components (#12218) 2021-01-25 15:05:19 -08:00
Michael S. Molina
5d3265b6db Apply capitalization guidelines - iteration 3 (#12343) (#12449) 2021-01-22 10:11:28 -08:00
Michael S. Molina
7838f035ae Apply capitalization guidelines - iteration 9 (#12343) (#12455) 2021-01-21 21:46:29 -08:00
Michael S. Molina
217034e990 Apply capitalization guidelines - iteration 8 (#12343) (#12454) 2021-01-21 21:46:18 -08:00
Kamil Gabryjelski
853d34beba fix(explore): Disable saved metric name edit in Metric popover (#12582) 2021-01-19 12:28:55 -08:00
Ville Brofeldt
78baf46eb2 ci(cypress): disable failing test (#12523) 2021-01-14 19:40:28 +02:00
Karol Kostrzewa
241f380e2e test: World bank examples (#12161)
* add world bank data fixture

* fix fixture cleanup, add fixture to dashboard_tests

* apply world bank fixtures, fix tests

* fix fixture typo, dashboard ids

* fix export dashboard metadata

* fix test_export_dashboard_command_key_order

* fix export dash tests, not add row when no orphans

* debug timeout

* fixes after merge

* fix lint

* run pre-commit

* comment test for debug

* fix save.test.js

Co-authored-by: Karol Kostrzewa <karol.kostrzewa@polidea.com>
2021-01-13 14:20:05 -08:00
Beto Dealmeida
8f83afcf49 feat: new Slack dashboard (#12415)
* feat: new Slack dashboard

* Add ASL license

* Fix test
2021-01-12 15:24:44 -08:00
Michael S. Molina
75f927b9eb Fixes control panel fields styling (#12236) (#12326) 2021-01-11 16:47:10 -08:00
Jesse Yang
9acf48fd1e chore: upgrade eslint, babel, and prettier (#12393) 2021-01-10 17:26:35 -08:00
Jesse Yang
2210015aab test: rename column names for birth_names dataset (#12082) 2021-01-08 14:13:20 -08:00
Elizabeth Thompson
466a7c8693 fix: south pane scrolling issues (#12318)
* remove extra scrollbars

* fix sql lab south pane bottom margin

* Update superset-frontend/src/SqlLab/components/SouthPane.jsx

Co-authored-by: Evan Rusackas <evan@preset.io>

* Update superset-frontend/src/SqlLab/components/SouthPane.jsx

Co-authored-by: Evan Rusackas <evan@preset.io>

* move styles to component

Co-authored-by: Evan Rusackas <evan@preset.io>
2021-01-08 09:52:33 -08:00
Beto Dealmeida
f83afb44c8 feat: new COVID vaccination dashboard (#12338) 2021-01-07 17:48:10 -08:00
Yongjie Zhao
1f8347228e fix(explore): timepicker show human readable string in pill (#12300)
* fix(explore): timepicker show human readable string in pill

* fix lint
2021-01-06 22:37:35 +08:00
Yongjie Zhao
b349edef29 feat(explore): Time picker enhancement follow up (#12208)
* refactor layout

* WIP

* fix typing

* styling

* fix lint

* frontend IT

* rename variable

* added quarter

* typos

* refine code structure
2021-01-04 18:29:17 -08:00
Beto Dealmeida
3acfd826de feat: add new dashboard with FCC data (#12163) 2020-12-23 14:54:50 -08:00
Jesse Yang
d2da25a621 refactor: remove queryFields in QueryObject and update chart control configs (#12091)
* Clean up queryFields

* Clean up unused vars

* Bump chart plugins

* Bringing changes in #12147
2020-12-22 17:10:19 -08:00
Nikola Gigić
a52031a55e chore: Change chart_is_fav to chart_is_favorite (#12075)
* Change chart_is_fav to chart_is_favorite

* Trigger cypress tests

* Retrigger cypress tests

* Retrigger all tests

* Dashboard

* Additions
2020-12-22 10:03:26 -08:00
Jesse Yang
e2f676445b test(dashboard): fix flaky Cypress test (#12151) 2020-12-21 20:40:33 -08:00
David Aaron Suddjian
b5dd0f32cc feat: Dynamically imported viz plugins (#10288)
* first attempts at dynamic plugin loading

* dynamic import working for explore

* memoize appropriately

* add a backend for dynamic plugins

* hack at getting dynamic plugins working with dashboards

* more work on making it work, + feature flag

* lint

* actions to fix explore state when plugins load

* handle dynamic control panel, functionify ExploreViewContainer

* fix: rearrange migrations branch

* fix: name and key as strings with length 50

* bundle url length 2000

* bundle url to text
for some reason not supported on my sql

* fix: too long varchart

* fix: pre-commit typing

* fix: licenses

* fix: add slice container was not initing feature flags

* fix: undo linting issue

* fix: adjust down revision again

* fix: adjust down revision again

* isort

* pylint

* god damn linters

* remove unnecessary(?) loading message

* only log non-standard errors

* testing

* python is terrible

* see above commit message

* fix imports in DynamicPluginProvider

* fix

* shift migration forward

* lint

* fix form data calculations to handle missing control config

* temp commit - waiting for superset-ui changes and crud fixes

* remove unnecessary todo

* use new superset-ui shared module function

* fetch the plugins instead of hardcoding the test one

* migration sort

* remove duplicated import statement

* format

* try moving the import 🙄

* copy

* fix frontend tests

* safe access

* comment out dead code

* isort

* disable pylint on necessary lines

* use @superset-ui/logging instead of console

* remove temp code

* rearrange some code

* try triggering mouseover in cypress before click

* use loading spinner instead of text

* trying to fix cypress

* attempt cypress fix

* customize permissions

* update package lock

* only admins can write to plugins by default

* better copy

* disable flaky tests

* use makeApi

* flaky tests

* cleanup code

* flaaaakkkyyyyyy

* dry

Co-authored-by: amitNielsen <amit.miran@nielsen.com>
2020-12-19 07:06:11 -08:00
Evan Rusackas
4a471b8c71 feat: Native filters fast-follow (#12138)
* wip: filter create modal

* add a feature flag

* automatic changes to package lock

* wip

* filter sidebar and basic state management

* move create button to the sidebar

* first step for edit filterconfig

* partially fix tests...

* edits to types and comments

* respect feature flag on the filter sidebar

* add filterconfig form

* get input state working

* feat: tree filter scopes UI

* fix: turn on flag

* sticky filter bar

* stop preferring default export

* feat: finish filter scoping

* fix: under toggle

* fix: title

* fix: add licence

* refactor: update TS

* fix: fix on reopen modal + validation

* new filter bar menu

* adding, but commenting out, bulk scoping action

* adding some placeholder buttons and styles therefor

* feat: add filter chart

* add relative path to package.json

* update modal

* a little input styling... just getting warmed up

* Revert "feat: add filter chart"

This reverts commit b1302d35b6.

* Revert "add relative path to package.json"

This reverts commit 26a7b40e18.

* https package lock idk

* feat: add filter chart

* add relative path to package.json

* flexboxes all the way down

* dynamically generate groupby and datasource in select control

* big wip

* fix target column name

* no importing nonexistent things

* styles and name editing

* Add hook for retrieval of all filter states

* start with a new filter when clicking add filter

* handle removed filters gracefully

* fix incorrect default filter configuration

* add fields to useAllFilterState

* add redux for filterconfigs

* add support for native_filters

* remove consoles

* improve filter removal

* unbreak infinite loop

* basic sidebar toggling working!

* collapsing and menu working more smoothly

* linting

* make dataset and column inputs work

* save filter values properly

* add dashboard event for filter updates

* guarded

* apply filters properly

* fix schema

* making New Filter button a link

* gridunits ftw

* centering modal

* tis not a button anymore! nixing type.

* plus and collapse buttons instead of "more" menu

* updating full size filter icons

* adding icons to filter collapsing/expanding

* turning off animation, but leaving class-based animation css

* fix linting error

* fix native filters for legacy charts

* updates test

* no individual apply buttons

* fix bugs with filter config modal

* remove redundant code

* switch to the filter with validation errors on submit

* separate form validation

* switch config button from add to edit

* switch to the filter with validation errors on submit

* separate form validation

* switch config button from add to edit

* update tests

* oops forgot to add the fancy new useChangeEffect hook

* comments and code reorganization

* rename native_filters to extr_form_data and move hook

* disable native filters in viz selector

* add cascading

* implement new extra form data api

* cleanup

* updates tests

* bump npm packages

* fix bad merge on package.json + lock

* lint

* replace in and not in with uppercase

* lint

* lint

* lint

* lint

* bulk test fix

* Sort select input alphabetically

* Change type for sorting elements

* sleeker filter removal UX

* fix rest of unit tests

* make filter operators all uppercase

* Hide Filter bar when there are no filters

* Show edit button for dashboard owners only

* Add visible argument to filters toggle function to avoid future regression

* Improve Toggle filters bar function

* lint

* fix js lint + set createNewOnOpen

* Handle setting extra form data in Filter Bar instead of Filter Control

* Add Handle apply filter function to Apply button

* Allow applying changes instantly

* Fix types

* remove console logs

* fix package

* Add Error Boundary component to Filter bar and Filter Config Modal

* fix jest tests

* update native filters tests to pass

* reset cypress baseUrl

* remove unnecessary field

* Add Parent Filter input field to Config Modal

* Create Cascade Filter & display children filters

* Add Cascade Popover

* Display Filter value both in Filter Bar and in Cascade Popover

* Display the youngest filter value label in the Filter bar

* Add styles to Cascade Popover and filters

* Force to apply changes instantly for parent filters and refactor styles

* Show error for no cyclical hierarchy and refactor

* Add validation for parent filter to be applied instantly

* Add Error Boundary to Filter Config Modal

* cleanup: remove unused state fields

* move unrelated types to an appropriate location

* remove misplaced resource fetch error logic

* fix cascadeParentIds error

* fix cypress password

* initial attempt at fixing scope issue

* fix bad merge

* fix lint

* trying out makeApi for saving filters

* remove unused import

* fix test

* silence bad test

* Improve styling of Filter Config Modal

* Improve styles for whole native filters feature

* Add styles for active filter tab

* Fix text for scoping

* Clean up Filter Bar and Config Modal styles

* Remove fractional gridUnits. Change name for CheckboxFormItem. Add placeholder to Parent Filter select.

* Remove unnecessary button size for Config Modal

* add native-filter feat flag config

* oops fix here

* remove space

* Update superset-frontend/src/common/components/index.tsx

Co-authored-by: Evan Rusackas <evan@preset.io>

* Update superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts

Co-authored-by: Evan Rusackas <evan@preset.io>

* Add Cache Wrapper helper to avoid datasets requests deduplication

* Add license to new Cache Wrapper helper

* Add Cache Wrapper tests

* Fix expanding Filter Bar

* use styledMount in tests

* comment

Co-authored-by: Evan Rusackas <evan@preset.io>

* Update superset-frontend/src/dashboard/components/nativeFilters/FilterBar.tsx

Co-authored-by: Evan Rusackas <evan@preset.io>

* Update superset-frontend/src/dashboard/components/nativeFilters/FilterConfigForm.tsx

Co-authored-by: Evan Rusackas <evan@preset.io>

* Update superset-frontend/src/dashboard/components/nativeFilters/FilterConfigModal.tsx

Co-authored-by: Evan Rusackas <evan@preset.io>

* Update superset-frontend/src/dashboard/components/nativeFilters/FilterConfigurationLink.tsx

Co-authored-by: Evan Rusackas <evan@preset.io>

* address PR feedback

* fix package lock

* null guards

* Fix charts resizing

* removing emotion/react and going old school on css animation

* fxing css glitch on scoping disclaimer

* src paths.

* using gridUnits

* nixing unnecessary diamonds

* linting

* fix type errors

* Inverting collapsed icons... closer to data src selector design

* restoring feature flag to proper default setting

* missing condition

* fix tests

* patching test

* just a button

* flaky tests

Co-authored-by: David Aaron Suddjian <aasuddjian@gmail.com>
Co-authored-by: Phillip Kelley-Dotson <pkelleydotson@yahoo.com>
Co-authored-by: Simcha Shats <simcha.shats@nielsen.com>
Co-authored-by: amitNielsen <amit.miran@nielsen.com>
Co-authored-by: Ville Brofeldt <ville.v.brofeldt@gmail.com>
Co-authored-by: David Aaron Suddjian <1858430+suddjian@users.noreply.github.com>
Co-authored-by: Agata Stawarz-Pastewska <agata.stawarz-pastewska@polidea.com>
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
2020-12-19 01:57:06 -08:00